diff options
| author | cgd <cgd@NetBSD.org> | 1993-04-10 15:51:24 +0000 |
|---|---|---|
| committer | cgd <cgd@NetBSD.org> | 1993-04-10 15:51:24 +0000 |
| commit | 439d2fb46cfec58a16c4a9856cc00ea4a2ee6de3 (patch) | |
| tree | dd34836a974bf8d23a53a2773f34394576710d12 /gnu/usr.bin/bc/Makefile.gnu | |
| parent | a3960efdef82d52889d981e42c8e404f99470203 (diff) | |
gnu bc. necessary to compile the distribution
Diffstat (limited to 'gnu/usr.bin/bc/Makefile.gnu')
| -rw-r--r-- | gnu/usr.bin/bc/Makefile.gnu | 190 |
1 files changed, 190 insertions, 0 deletions
diff --git a/gnu/usr.bin/bc/Makefile.gnu b/gnu/usr.bin/bc/Makefile.gnu new file mode 100644 index 00000000000..f33a9863015 --- /dev/null +++ b/gnu/usr.bin/bc/Makefile.gnu @@ -0,0 +1,190 @@ +# +# A makefile for bc. This is part of the bc/sbc distribution. +# +# +# Make sure these have the correct directories for your machine. +# +# LIBDIR and BINDIR are where bc and libmath.b will be put. +# +PREFIX = /usr/local +LIBDIR = $(PREFIX)/lib +BINDIR = $(PREFIX)/bin +MANDIR = $(PREFIX)/man/man1 +# +# INCLUDE is the directory from where header files are included. +# +INCLUDE = /usr/include +# +# This is the name of the library file, if needed. This definition should +# not be deleted. +# +LIBFILE = $(LIBDIR)/libmath.b +# +# Programs definitions for use by make. +# +SHELL = /bin/sh +YACC = yacc +#YACC = bison -y +LEX = flex -I8 +#LEX = lex +CC = cc +UUENCODE = uue +MAKE = make +# +# The following are the standard definitions. For MINIX PC, you need to +# comment these out and select one of the MINIX PC definition sets. +# Other configuration defines are generated automatically. See the +# README file for more details. +# +O=o +CFLAGS = -O -D_POSIX_SOURCE +LDFLAGS = +# +# For the PC version of MINIX (K&R compiler), use the following lines. +# +#O=s +#CFLAGS = -O -D_POSIX_SOURCE +#LDFLAGS = -i +# +# For the PC version of MINIX (ANSI compiler), use the following lines: +# +#O=o +#CFLAGS = -m -D_POSIX_SOURCE +#LDFLAGS = -i +# +# +OFILES = scan.$O util.$O main.$O number.$O storage.$O load.$O execute.$O +# +DISTFILES = COPYING Makefile Install bc.y bcdefs.h const.h version.h \ + execute.c global.c global.h load.c main.c number.c storage.c \ + number.h proto.h scan.l util.c vfprintf.c README bc.1 sbc.y \ + fix_math.h math.h libmath.b configure ChangeLog +# +SUBDIRS = Examples Test +# +EXTRAFILES = bc.c.dist scan.c.dist y.tab.h.dist +# + + +all: bc +bc: $& config.h bc.$O $(OFILES) global.$O + $(CC) -o bc $(LDFLAGS) bc.$O $(OFILES) global.$O + +sbc: sbc.$O $(OFILES) global.$O + $(CC) -o sbc $(LDFLAGS) sbc.$O $(OFILES) global.$O + +config.h: + ./configure $(INCLUDE) $(LIBFILE) $(CC) + +math.h: libmath.b + $(MAKE) fbc + ./fbc -c libmath.b </dev/null >math.h + ./fix_math.h + rm -f ./fbc + +fbc: $(OFILES) bc.$O + echo \"\" > math.h + $(CC) -c $(CFLAGS) global.c + $(CC) -o fbc $(LDFLAGS) bc.$O $(OFILES) global.$O + +install : bc libmath.b config.h + rm -f $(BINDIR)/bc + cp bc $(BINDIR) + chmod 555 $(BINDIR)/bc + if grep -s BC_MATH_FILE config.h; then rm -f $(LIBDIR)/libmath.b; \ + cp libmath.b $(LIBDIR); chmod 444 $(LIBDIR)/libmath.b; else true; fi + cp bc.1 $(MANDIR) + +dist: $(EXTRAFILES) + OF=`sed -n 's/.*\([0-9][0-9]*\.[0-9][0-9]*\).*/bc-\1/p' version.h` \ + ; rm -rf $$OF \ + ; mkdir $$OF \ + ; cd $$OF \ + ; for file in $(DISTFILES) $(EXTRAFILES); do ln ../$$file; done \ + ; mkdir $(SUBDIRS) \ + ; for dir in $(SUBDIRS); do cp ../$$dir/* $$dir; done \ + ; cd .. \ + ; tar cf $$OF.tar $$OF \ + ; compress $$OF.tar \ + ; rm -rf $$OF + +shars: dist + OF=`sed -n 's/.*\([0-9][0-9]*\.[0-9][0-9]*\).*/bc-\1/p' version.h` \ + ; $(UUENCODE) $$OF.tar.Z - > $$OF.uue \ + ; split -775 $$OF.uue $$OF-u. \ + ; for file in $$OF-u.a?; do shar $$file > $$file.sh; done + +minixdist: $(EXTRAFILES) + OF=`sed -n 's/.*\([0-9][0-9]*\.[0-9][0-9]*\).*/bc-\1/p' version.h` \ + ; rm -rf $$OF \ + ; mkdir $$OF \ + ; cd $$OF \ + ; for file in $(DISTFILES) $(EXTRAFILES); do ln ../$$file; done \ + ; cd .. \ + ; tar cf $$OF.tar $$OF \ + ; compress -b13 $$OF.tar \ + ; rm -rf $$OF + +minixshars: minixdist + OF=`sed -n 's/.*\([0-9][0-9]*\.[0-9][0-9]*\).*/bc-\1/p' version.h` \ + ; $(UUENCODE) $$OF.tar.Z - > $$OF.uue \ + ; split -775 $$OF.uue $$OF-u. \ + ; for file in $$OF-u.a?; do shar $$file > $$file.sh; done + +csrshars: $(EXTRAFILES) + findsrc -dy $(DISTFILES) $(EXTRAFILES) $(SUBDIRS) | \ + makekit -npart -oMANIFEST + +bc.c.dist: bc.c + cp bc.c bc.c.dist + +scan.c.dist: scan.c + cp scan.c scan.c.dist + +y.tab.h.dist: y.tab.h + cp y.tab.h y.tab.h.dist + +extra: $(EXTRAFILES) + +# assumes that the extra files exist! +derived: + cp bc.c.dist bc.c + cp scan.c.dist scan.c + cp y.tab.h.dist y.tab.h + +clean: + rm -f *.$O core ERRS *~ *.bak *.Z + +distclean: clean + rm -f scan.c y.tab.h bc.c sbc.c bc sbc bc-dist* config.h bc-*.* \ + part?? MANIFEST* + +realclean: distclean + rm -rf *.dist + +scan.c: scan.l + $(LEX) scan.l + mv lex.yy.c scan.c + +y.tab.h bc.c: bc.y + @echo "expect 1 shift/reduce conflict" + $(YACC) -d bc.y + mv y.tab.c bc.c + +sbc.c: sbc.y + $(YACC) -d sbc.y + mv y.tab.c sbc.c + +global.$O: bcdefs.h global.h math.h +bc.$O: bcdefs.h global.h +execute.$O: bcdefs.h global.h +load.$O: bcdefs.h global.h +main.$O: bcdefs.h global.h version.h +number.$O: bcdefs.h Makefile +sbc.$O: bcdefs.h global.h +scan.$O: y.tab.h bcdefs.h global.h +storage.$O: bcdefs.h global.h +util.$O: bcdefs.h global.h version.h + +bcdefs.h: number.h const.h config.h + touch bcdefs.h |
