X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2FMakefile.in;h=3a71cac2b678b76f43807910e947cdcfc3c06996;hb=d49260b109750904af0f17a1b44530a56eeed71d;hp=fb21e13dc431ce60788a00d984f54a6974c0e3b4;hpb=00c3a8127a329b1e56c702e147d9a1d6c3351f0e;p=gnulib.git diff --git a/lib/Makefile.in b/lib/Makefile.in index fb21e13dc..3a71cac2b 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -1,6 +1,5 @@ # Makefile for library files used by GNU fileutils. -# Do not use this makefile directly, but only from `../Makefile'. -# Copyright (C) 1990, 1991, 1992 Free Software Foundation, Inc. +# Copyright (C) 1990, 1991, 1992, 1993 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -21,21 +20,28 @@ SHELL = /bin/sh srcdir = @srcdir@ VPATH = @srcdir@ -SOURCES = argmatch.c backupfile.c basename.c dirname.c eaccess.c \ +CC = @CC@ +AR = ar +RANLIB = @RANLIB@ +DEFS = @DEFS@ +CFLAGS = -g + +SOURCES = getdate.y posixtm.y \ +argmatch.c backupfile.c basename.c dirname.c eaccess.c \ error.c filemode.c fsusage.c getopt.c getopt1.c \ getversion.c idcache.c isdir.c makepath.c \ modechange.c mountlist.c savedir.c \ stripslash.c xgetcwd.c xmalloc.c xstrdup.c userspec.c yesno.c \ -getdate.y posixtm.y \ fileblocks.c fnmatch.c ftruncate.c mkdir.c mktime.c rename.c stpcpy.c \ strdup.c strstr.c alloca.c -OBJECTS = argmatch.o backupfile.o basename.o dirname.o eaccess.o \ +OBJECTS = getdate.o posixtm.o \ +argmatch.o backupfile.o basename.o dirname.o eaccess.o \ error.o filemode.o getopt.o getopt1.o \ getversion.o idcache.o isdir.o makepath.o \ modechange.o savedir.o \ stripslash.o xgetcwd.o xmalloc.o xstrdup.o userspec.o yesno.o \ -getdate.o posixtm.o @LIBOBJS@ @ALLOCA@ +@LIBOBJS@ @ALLOCA@ DISTFILES = Makefile.in backupfile.h getopt.h modechange.h \ fnmatch.h fsusage.h mountlist.h pathmax.h system.h $(SOURCES) @@ -43,7 +49,7 @@ fnmatch.h fsusage.h mountlist.h pathmax.h system.h $(SOURCES) all: libfu.a .c.o: - $(CC) -c $(CFLAGS) $(CPPFLAGS) $(DEFS) -I$(srcdir) $< + $(CC) -c $(CPPFLAGS) $(DEFS) -I$(srcdir) $(CFLAGS) $< install: all @@ -52,6 +58,8 @@ uninstall: TAGS: $(SOURCES) etags $(SOURCES) +check: + clean: rm -f *.a *.o @@ -66,7 +74,7 @@ realclean: distclean dist: for file in $(DISTFILES); do \ ln $$file ../`cat ../.fname`/lib \ - || cp $$file ../`cat ../.fname`/lib; \ + || cp -p $$file ../`cat ../.fname`/lib; \ done libfu.a: $(OBJECTS) @@ -74,17 +82,20 @@ libfu.a: $(OBJECTS) $(AR) cr $@ $(OBJECTS) -$(RANLIB) $@ -# Since this directory contains two parsers, using bison without -y -# is the only way to reliably do a parallel make. +# Since this directory contains two parsers, we have to be careful to avoid +# running two $(YACC)s during parallel makes. See below. getdate.c: getdate.y @echo expect 9 shift/reduce conflicts - -bison -o getdate.c $(srcdir)/getdate.y || yacc $(srcdir)/getdate.y - test ! -f y.tab.c || mv y.tab.c getdate.c + $(YACC) $(srcdir)/getdate.y + mv y.tab.c getdate.c # Make the rename atomic, in case sed is interrupted and later rerun. -posixtm.c: posixtm.y - -bison -o posixtm.tab.c $(srcdir)/posixtm.y || yacc $(srcdir)/posixtm.y - test ! -f y.tab.c || mv y.tab.c posixtm.tab.c +# The artificial dependency on getdate.c keeps the two parsers from being +# built in parallel. Enforcing this little bit of sequentiality lets +# everyone (even those without bison) still run mostly parallel builds. +posixtm.c: posixtm.y getdate.c + $(YACC) $(srcdir)/posixtm.y + mv y.tab.c posixtm.tab.c sed -e 's/yy/zz/g' posixtm.tab.c > tposixtm.c mv tposixtm.c posixtm.c rm -f posixtm.tab.c @@ -97,5 +108,6 @@ modechange.o: modechange.h mountlist.o: mountlist.h xgetcwd.o: pathmax.h -# Prevent GNU make v3 from overflowing arg limit on SysV. +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: