diff options
author | Karl Berry <karl@freefriends.org> | 2021-07-25 17:24:28 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2021-07-25 17:24:28 +0000 |
commit | 4605c296898dc8fa29423271a085e2b6ed97eb77 (patch) | |
tree | e344178930afd256c3695be15086f33f589117fd /Build | |
parent | fdd1cdfaad879053afd699ff95858bd349a8ceb5 (diff) |
(lib/lib.a): explicitly list lib/*.c minus texmfmp.c as dependencies
git-svn-id: svn://tug.org/texlive/trunk@60055 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/texk/web2c/ChangeLog | 6 | ||||
-rw-r--r-- | Build/source/texk/web2c/Makefile.am | 28 | ||||
-rw-r--r-- | Build/source/texk/web2c/Makefile.in | 29 |
3 files changed, 59 insertions, 4 deletions
diff --git a/Build/source/texk/web2c/ChangeLog b/Build/source/texk/web2c/ChangeLog index e024dfb56c9..f982b880aea 100644 --- a/Build/source/texk/web2c/ChangeLog +++ b/Build/source/texk/web2c/ChangeLog @@ -1,3 +1,9 @@ +2021-07-25 Karl Berry <karl@freefriends.org> + + * Makefile.am (proglib_sources): laboriously list all of lib/*.c + except texmfmp.c as dependencies, since texmfmp.c is not a + dependency of lib.a. + 2021-07-25 Petr Olsak <petr@olsak.net> and Karl Berry <karl@freefriends.org> and Hironori Kitagawa <h_kitagawa2001@yahoo.co.jp> diff --git a/Build/source/texk/web2c/Makefile.am b/Build/source/texk/web2c/Makefile.am index aaee85a7d1c..0ad8e4db3ab 100644 --- a/Build/source/texk/web2c/Makefile.am +++ b/Build/source/texk/web2c/Makefile.am @@ -78,8 +78,32 @@ web2c/stamp-web2c: $(web2c_common) ${srcdir}/web2c/*.[chly] web2c/stamp-makecpool: $(web2c_common) ${srcdir}/web2c/makecpool.c cd web2c && $(MAKE) $(AM_MAKEFLAGS) stamp-makecpool -# Rebuild $(proglib) -$(proglib): ${srcdir}/lib/*.c +# Rebuild $(proglib). We have to list all the sources, +# not use *.c, because texmfmp.c is not part of lib.a. +# Otherwise make will think that lib.a will need to be remade when +# texmfmp.c is changed, even though it doesn't. The result is that we +# will see the ctangle calls for every cweb program, since ctangleboot +# depends on lib.a, but isn't getting remade. So this ad hoc variable is +# a copy of lib_a_SOURCES in lib/Makefile.am, with "${srcdir}/lib/" prepended. +proglib_sources = \ + ${srcdir}/lib/basechsuffix.c \ + ${srcdir}/lib/chartostring.c \ + ${srcdir}/lib/coredump.c \ + ${srcdir}/lib/eofeoln.c \ + ${srcdir}/lib/fprintreal.c \ + ${srcdir}/lib/inputint.c \ + ${srcdir}/lib/input2int.c \ + ${srcdir}/lib/lib.h \ + ${srcdir}/lib/main.c \ + ${srcdir}/lib/openclose.c \ + ${srcdir}/lib/printversion.c \ + ${srcdir}/lib/setupvar.c \ + ${srcdir}/lib/uexit.c \ + ${srcdir}/lib/usage.c \ + ${srcdir}/lib/version.c \ + ${srcdir}/lib/zround.c + +$(proglib): $(proglib_sources) cd lib && $(MAKE) $(AM_MAKEFLAGS) lib.a ## Rebuild libkpathsea @KPATHSEA_RULE@ diff --git a/Build/source/texk/web2c/Makefile.in b/Build/source/texk/web2c/Makefile.in index 28b692d962f..1b9d4a28e0e 100644 --- a/Build/source/texk/web2c/Makefile.in +++ b/Build/source/texk/web2c/Makefile.in @@ -3647,6 +3647,32 @@ LDADD = $(proglib) $(KPATHSEA_LIBS) # programs that do not depend on tangle or ctangle. default_dependencies = $(proglib) $(KPATHSEA_DEPEND) +# Rebuild $(proglib). We have to list all the sources, +# not use *.c, because texmfmp.c is not part of lib.a. +# Otherwise make will think that lib.a will need to be remade when +# texmfmp.c is changed, even though it doesn't. The result is that we +# will see the ctangle calls for every cweb program, since ctangleboot +# depends on lib.a, but isn't getting remade. So this ad hoc variable is +# a copy of lib_a_SOURCES in lib/Makefile.am, with "${srcdir}/lib/" prepended. +proglib_sources = \ + ${srcdir}/lib/basechsuffix.c \ + ${srcdir}/lib/chartostring.c \ + ${srcdir}/lib/coredump.c \ + ${srcdir}/lib/eofeoln.c \ + ${srcdir}/lib/fprintreal.c \ + ${srcdir}/lib/inputint.c \ + ${srcdir}/lib/input2int.c \ + ${srcdir}/lib/lib.h \ + ${srcdir}/lib/main.c \ + ${srcdir}/lib/openclose.c \ + ${srcdir}/lib/printversion.c \ + ${srcdir}/lib/setupvar.c \ + ${srcdir}/lib/uexit.c \ + ${srcdir}/lib/usage.c \ + ${srcdir}/lib/version.c \ + ${srcdir}/lib/zround.c + + # The environment for building. buildenv = TEXMFCNF=$(srcdir)/../kpathsea @@ -21007,8 +21033,7 @@ web2c/stamp-web2c: $(web2c_common) ${srcdir}/web2c/*.[chly] web2c/stamp-makecpool: $(web2c_common) ${srcdir}/web2c/makecpool.c cd web2c && $(MAKE) $(AM_MAKEFLAGS) stamp-makecpool -# Rebuild $(proglib) -$(proglib): ${srcdir}/lib/*.c +$(proglib): $(proglib_sources) cd lib && $(MAKE) $(AM_MAKEFLAGS) lib.a @KPATHSEA_RULE@ @PTEXENC_RULE@ |