Home | History | Annotate | Download | only in libutf
      1 
      2 # this works in gnu make
      3 SYSNAME:=${shell uname}
      4 OBJTYPE:=${shell uname -m | sed 's;i.86;386;; s;/.*;;; s; ;;g'}
      5 
      6 # this works in bsd make
      7 SYSNAME!=uname
      8 OBJTYPE!=uname -m | sed 's;i.86;386;; s;amd64;x864_64;; s;/.*;;; s; ;;g'
      9 
     10 # the gnu rules will mess up bsd but not vice versa,
     11 # hence the gnu rules come first.
     12 
     13 RANLIB=true
     14 
     15 include Make.$(SYSNAME)-$(OBJTYPE)
     16 
     17 PREFIX=/usr/local
     18 
     19 NUKEFILES=
     20 
     21 TGZFILES=
     22 
     23 CLEANFILES=
     24 
     25 LIB=libutf.a
     26 VERSION=2.0
     27 PORTPLACE=devel/libutf
     28 NAME=libutf
     29 
     30 OFILES=\
     31 	rune.$O\
     32 	runestrcat.$O\
     33 	runestrchr.$O\
     34 	runestrcmp.$O\
     35 	runestrcpy.$O\
     36 	runestrdup.$O\
     37 	runestrlen.$O\
     38 	runestrecpy.$O\
     39 	runestrncat.$O\
     40 	runestrncmp.$O\
     41 	runestrncpy.$O\
     42 	runestrrchr.$O\
     43 	runestrstr.$O\
     44 	runetype.$O\
     45 	utfecpy.$O\
     46 	utflen.$O\
     47 	utfnlen.$O\
     48 	utfrrune.$O\
     49 	utfrune.$O\
     50 	utfutf.$O\
     51 
     52 HFILES=\
     53 	utf.h\
     54 
     55 all: $(LIB)
     56 
     57 install: $(LIB)
     58 	mkdir -p $(PREFIX)/share/man/man3 $(PREFIX)/man/man7
     59 	install -c -m 0644 isalpharune.3 $(PREFIX)/share/man/man3/isalpharune.3
     60 	install -c -m 0644 utf.7 $(PREFIX)/man/man7/utf.7
     61 	install -c -m 0644 rune.3 $(PREFIX)/share/man/man3/rune.3
     62 	install -c -m 0644 runestrcat.3 $(PREFIX)/share/man/man3/runestrcat.3
     63 	mkdir -p $(PREFIX)/include
     64 	install -c -m 0644 utf.h $(PREFIX)/include/utf.h
     65 	mkdir -p $(PREFIX)/lib
     66 	install -c -m 0644 $(LIB) $(PREFIX)/lib/$(LIB)
     67 
     68 $(LIB): $(OFILES)
     69 	$(AR) $(ARFLAGS) $(LIB) $(OFILES)
     70 	$(RANLIB) $(LIB)
     71 
     72 NUKEFILES+=$(LIB)
     73 .c.$O:
     74 	$(CC) $(CFLAGS) -I../libutf -I../libfmt -I../libbio -I../libregexp -I$(PREFIX)/include $*.c
     75 
     76 %.$O: %.c
     77 	$(CC) $(CFLAGS) -I../libutf -I../libfmt -I../libbio -I../libregexp -I$(PREFIX)/include $*.c
     78 
     79 
     80 $(OFILES): $(HFILES)
     81 
     82 tgz:
     83 	rm -rf $(NAME)-$(VERSION)
     84 	mkdir $(NAME)-$(VERSION)
     85 	cp Makefile Make.* README LICENSE NOTICE *.[ch137] rpm.spec bundle.ports $(TGZFILES) $(NAME)-$(VERSION)
     86 	tar cf - $(NAME)-$(VERSION) | gzip >$(NAME)-$(VERSION).tgz
     87 	rm -rf $(NAME)-$(VERSION)
     88 
     89 clean:
     90 	rm -f $(OFILES) $(LIB) $(CLEANFILES)
     91 
     92 nuke:
     93 	rm -f $(OFILES) *.tgz *.rpm $(NUKEFILES)
     94 
     95 rpm:
     96 	make tgz
     97 	cp $(NAME)-$(VERSION).tgz /usr/src/RPM/SOURCES
     98 	rpm -ba rpm.spec
     99 	cp /usr/src/RPM/SRPMS/$(NAME)-$(VERSION)-1.src.rpm .
    100 	cp /usr/src/RPM/RPMS/i586/$(NAME)-$(VERSION)-1.i586.rpm .
    101 	scp *.rpm rsc@amsterdam.lcs.mit.edu:public_html/software
    102 
    103 PORTDIR=/usr/ports/$(PORTPLACE)
    104 
    105 ports:
    106 	make tgz
    107 	rm -rf $(PORTDIR)
    108 	mkdir $(PORTDIR)
    109 	cp $(NAME)-$(VERSION).tgz /usr/ports/distfiles
    110 	cat bundle.ports | (cd $(PORTDIR) && awk '$$1=="---" && $$3=="---" { ofile=$$2; next} {if(ofile) print >ofile}')
    111 	(cd $(PORTDIR); make makesum)
    112 	(cd $(PORTDIR); make)
    113 	(cd $(PORTDIR); /usr/local/bin/portlint)
    114 	rm -rf $(PORTDIR)/work
    115 	shar `find $(PORTDIR)` > ports.shar
    116 	(cd $(PORTDIR); tar cf - *) | gzip >$(NAME)-$(VERSION)-ports.tgz
    117 	scp *.tgz rsc@amsterdam.lcs.mit.edu:public_html/software
    118 
    119 .phony: all clean nuke install tgz rpm ports
    120