| |
| # 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;/.*;;; s; ;;g' |
| |
| # the gnu rules will mess up bsd but not vice versa, |
| # hence the gnu rules come first. |
| |
| include Make.$(SYSNAME)-$(OBJTYPE) |
| |
| PREFIX=/usr/local |
| |
| NUKEFILES= |
| |
| TGZFILES= |
| |
| LIB=libregexp9.a |
| VERSION=2.0 |
| PORTPLACE=devel/libregexp9 |
| NAME=libregexp9 |
| |
| OFILES=\ |
| regcomp.$O\ |
| regerror.$O\ |
| regexec.$O\ |
| regsub.$O\ |
| regaux.$O\ |
| rregsub.$O\ |
| rregaux.$O\ |
| rregexec.$O\ |
| |
| HFILES=\ |
| regexp9.h\ |
| regcomp.h\ |
| |
| all: $(LIB) |
| |
| install: $(LIB) |
| test -d $(PREFIX)/man/man3 || mkdir $(PREFIX)/man/man3 |
| test -d $(PREFIX)/man/man7 || mkdir $(PREFIX)/man/man7 |
| install -m 0644 regexp9.3 $(PREFIX)/man/man3/regexp9.3 |
| install -m 0644 regexp9.7 $(PREFIX)/man/man7/regexp9.7 |
| install -m 0644 $(LIB) $(PREFIX)/lib/$(LIB) |
| install -m 0644 regexp9.h $(PREFIX)/include/regexp9.h |
| |
| test: test.$O $(LIB) |
| $(CC) -o test test.$O $(LIB) -L/usr/local/lib -lfmt -lutf |
| |
| test2: test2.$O $(LIB) |
| $(CC) -o test2 test2.$O $(LIB) -L/usr/local/lib -lfmt -lutf |
| |
| $(LIB): $(OFILES) |
| $(AR) $(ARFLAGS) $(LIB) $(OFILES) |
| |
| NUKEFILES+=$(LIB) |
| .c.$O: |
| $(CC) $(CFLAGS) -I$(PREFIX)/include $*.c |
| |
| %.$O: %.c |
| $(CC) $(CFLAGS) -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) |
| |
| 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 |