120 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
			
		
		
	
	
			120 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
 | 
						|
# this works in gnu make
 | 
						|
SYSNAME:=${shell uname}
 | 
						|
OBJTYPE:=${shell uname -m | sed 's;i.86;386;; s;/.*;;; s; ;;g'}
 | 
						|
 | 
						|
# this works in bsd make
 | 
						|
SYSNAME!=uname
 | 
						|
OBJTYPE!=uname -m | sed 's;i.86;386;; s;amd64;x864_64;; s;/.*;;; s; ;;g'
 | 
						|
 | 
						|
# the gnu rules will mess up bsd but not vice versa,
 | 
						|
# hence the gnu rules come first.
 | 
						|
 | 
						|
RANLIB=true
 | 
						|
 | 
						|
include Make.$(SYSNAME)-$(OBJTYPE)
 | 
						|
 | 
						|
PREFIX=/usr/local
 | 
						|
 | 
						|
NUKEFILES=
 | 
						|
 | 
						|
TGZFILES=
 | 
						|
 | 
						|
CLEANFILES=
 | 
						|
 | 
						|
LIB=libutf.a
 | 
						|
VERSION=2.0
 | 
						|
PORTPLACE=devel/libutf
 | 
						|
NAME=libutf
 | 
						|
 | 
						|
OFILES=\
 | 
						|
	rune.$O\
 | 
						|
	runestrcat.$O\
 | 
						|
	runestrchr.$O\
 | 
						|
	runestrcmp.$O\
 | 
						|
	runestrcpy.$O\
 | 
						|
	runestrdup.$O\
 | 
						|
	runestrlen.$O\
 | 
						|
	runestrecpy.$O\
 | 
						|
	runestrncat.$O\
 | 
						|
	runestrncmp.$O\
 | 
						|
	runestrncpy.$O\
 | 
						|
	runestrrchr.$O\
 | 
						|
	runestrstr.$O\
 | 
						|
	runetype.$O\
 | 
						|
	utfecpy.$O\
 | 
						|
	utflen.$O\
 | 
						|
	utfnlen.$O\
 | 
						|
	utfrrune.$O\
 | 
						|
	utfrune.$O\
 | 
						|
	utfutf.$O\
 | 
						|
 | 
						|
HFILES=\
 | 
						|
	utf.h\
 | 
						|
 | 
						|
all: $(LIB)
 | 
						|
 | 
						|
install: $(LIB)
 | 
						|
	mkdir -p $(PREFIX)/share/man/man3 $(PREFIX)/man/man7
 | 
						|
	install -c -m 0644 isalpharune.3 $(PREFIX)/share/man/man3/isalpharune.3
 | 
						|
	install -c -m 0644 utf.7 $(PREFIX)/man/man7/utf.7
 | 
						|
	install -c -m 0644 rune.3 $(PREFIX)/share/man/man3/rune.3
 | 
						|
	install -c -m 0644 runestrcat.3 $(PREFIX)/share/man/man3/runestrcat.3
 | 
						|
	mkdir -p $(PREFIX)/include
 | 
						|
	install -c -m 0644 utf.h $(PREFIX)/include/utf.h
 | 
						|
	mkdir -p $(PREFIX)/lib
 | 
						|
	install -c -m 0644 $(LIB) $(PREFIX)/lib/$(LIB)
 | 
						|
 | 
						|
$(LIB): $(OFILES)
 | 
						|
	$(AR) $(ARFLAGS) $(LIB) $(OFILES)
 | 
						|
	$(RANLIB) $(LIB)
 | 
						|
 | 
						|
NUKEFILES+=$(LIB)
 | 
						|
.c.$O:
 | 
						|
	$(CC) $(CFLAGS) -I../libutf -I../libfmt -I../libbio -I../libregexp -I$(PREFIX)/include $*.c
 | 
						|
 | 
						|
%.$O: %.c
 | 
						|
	$(CC) $(CFLAGS) -I../libutf -I../libfmt -I../libbio -I../libregexp -I$(PREFIX)/include $*.c
 | 
						|
 | 
						|
 | 
						|
$(OFILES): $(HFILES)
 | 
						|
 | 
						|
tgz:
 | 
						|
	rm -rf $(NAME)-$(VERSION)
 | 
						|
	mkdir $(NAME)-$(VERSION)
 | 
						|
	cp Makefile Make.* README LICENSE NOTICE *.[ch137] rpm.spec bundle.ports $(TGZFILES) $(NAME)-$(VERSION)
 | 
						|
	tar cf - $(NAME)-$(VERSION) | gzip >$(NAME)-$(VERSION).tgz
 | 
						|
	rm -rf $(NAME)-$(VERSION)
 | 
						|
 | 
						|
clean:
 | 
						|
	rm -f $(OFILES) $(LIB) $(CLEANFILES)
 | 
						|
 | 
						|
nuke:
 | 
						|
	rm -f $(OFILES) *.tgz *.rpm $(NUKEFILES)
 | 
						|
 | 
						|
rpm:
 | 
						|
	make tgz
 | 
						|
	cp $(NAME)-$(VERSION).tgz /usr/src/RPM/SOURCES
 | 
						|
	rpm -ba rpm.spec
 | 
						|
	cp /usr/src/RPM/SRPMS/$(NAME)-$(VERSION)-1.src.rpm .
 | 
						|
	cp /usr/src/RPM/RPMS/i586/$(NAME)-$(VERSION)-1.i586.rpm .
 | 
						|
	scp *.rpm rsc@amsterdam.lcs.mit.edu:public_html/software
 | 
						|
 | 
						|
PORTDIR=/usr/ports/$(PORTPLACE)
 | 
						|
 | 
						|
ports:
 | 
						|
	make tgz
 | 
						|
	rm -rf $(PORTDIR)
 | 
						|
	mkdir $(PORTDIR)
 | 
						|
	cp $(NAME)-$(VERSION).tgz /usr/ports/distfiles
 | 
						|
	cat bundle.ports | (cd $(PORTDIR) && awk '$$1=="---" && $$3=="---" { ofile=$$2; next} {if(ofile) print >ofile}')
 | 
						|
	(cd $(PORTDIR); make makesum)
 | 
						|
	(cd $(PORTDIR); make)
 | 
						|
	(cd $(PORTDIR); /usr/local/bin/portlint)
 | 
						|
	rm -rf $(PORTDIR)/work
 | 
						|
	shar `find $(PORTDIR)` > ports.shar
 | 
						|
	(cd $(PORTDIR); tar cf - *) | gzip >$(NAME)-$(VERSION)-ports.tgz
 | 
						|
	scp *.tgz rsc@amsterdam.lcs.mit.edu:public_html/software
 | 
						|
 | 
						|
.phony: all clean nuke install tgz rpm ports
 |