summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>1996-02-01 03:43:49 +0000
committerJim Meyering <jim@meyering.net>1996-02-01 03:43:49 +0000
commit5d1619329428fdd0b8a1df7b86b1ba5b08d68506 (patch)
tree9f0cfa14a7bb7dc6c5b609912806f27a77e78495 /lib
parent61b305d30dffa7ae817402b4205a189593ddedb8 (diff)
downloadcoreutils-5d1619329428fdd0b8a1df7b86b1ba5b08d68506.tar.xz
(getdate.c, posixtm.c): Add rules for building these.
Diffstat (limited to 'lib')
-rw-r--r--lib/Makefile.am32
1 files changed, 25 insertions, 7 deletions
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 45d2bcccd..b6d4ec1fa 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -6,18 +6,36 @@ posixtm.y rename.c rmdir.c stpcpy.c strdup.c strstr.c strtol.c strtoul.c
INCLUDES = -I.. -I$(srcdir)
+fu_SOURCES = getdate.c posixtm.c argmatch.c backupfile.c basename.c \
+dirname.c error.c fileblocks.c filemode.c \
+full-write.c getopt.c getopt1.c getversion.c group-member.c idcache.c \
+isdir.c long-options.c makepath.c modechange.c obstack.c \
+safe-read.c save-cwd.c savedir.c stripslash.c userspec.c xgetcwd.c \
+xmalloc.c xstrdup.c xstrtol.c xstrtoul.c yesno.c
+
fu_LIBADD = @LIBOBJS@ @ALLOCA@
HEADERS = argmatch.h backupfile.h error.h fnmatch.h fsusage.h getopt.h \
group-member.h long-options.h makepath.h modechange.h mountlist.h \
obstack.h pathmax.h save-cwd.h xstrtol.h xstrtoul.h
-BUILT_SOURCES = posixtm.c getdate.c
CONFIG_HEADER = ../config.h
+BUILT_SOURCES = getdate.c posixtm.c
-fu_SOURCES = getdate.c posixtm.c argmatch.c backupfile.c basename.c \
-dirname.c error.c fileblocks.c filemode.c \
-full-write.c getopt.c getopt1.c getversion.c group-member.c idcache.c \
-isdir.c long-options.c makepath.c modechange.c obstack.c \
-safe-read.c save-cwd.c savedir.c stripslash.c userspec.c xgetcwd.c \
-xmalloc.c xstrdup.c xstrtol.c xstrtoul.c yesno.c
+# 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 10 shift/reduce conflicts
+ $(YACC) $(srcdir)/getdate.y
+ mv y.tab.c getdate.c
+
+# Make the rename atomic, in case sed is interrupted and later rerun.
+# 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