]> git.draconx.ca Git - cdecl99.git/commitdiff
Fix regressions caused by symbol renaming changes.
authorNick Bowler <nbowler@draconx.ca>
Sat, 19 Feb 2022 23:07:59 +0000 (18:07 -0500)
committerNick Bowler <nbowler@draconx.ca>
Sat, 19 Feb 2022 23:23:48 +0000 (18:23 -0500)
A bug in dxcommon was causing VPATH builds to continue to apply symbol
renaming to all gnulib sources.  Fixing this revealed that dependency
tracking was broken for the non-renamed objects (distcheck noticed that
the dependency products were not being cleaned).

To fix dependency tracking Automake needs to be aware of all the source
files going into the statically-linked version of the library.

Unfortunately, Automake complains if we just add the same sources to a
non-libtool library, even though there is no real conflict since only
one will actually be built.  The issue can be worked around by using
Automake's object renaming facilities, which complicates things slightly
but is straightforward enough to implement.

Makefile.am
common
configure.ac

index 0248f6d7e3ff1a5caddcf36f6ddfb0ece6a88500..6a85baed2411e1261a6c1f40a5015220cc6b6531 100644 (file)
@@ -54,7 +54,11 @@ endif
 
 EXTRA_LIBRARIES = libgnu.a
 libgnu_a_SOURCES =
+libgnu_a_SHORTNAME = s
+libgnu_a_CFLAGS = $(AM_CFLAGS)
 libgnu_a_LIBADD = $(static_gl_objects)
+EXTRA_libgnu_a_SOURCES = $(libgnu_la_SOURCES) $(EXTRA_libgnu_la_SOURCES)
+
 EXTRA_libgnu_a_DEPENDENCIES = $(static_gl_objects)
 dummy $(static_gl_objects): $(gnulib_headers)
 
diff --git a/common b/common
index e7d29006d05055ab5b7af44078668c1915d35262..6a6059f779c9ebb39f6011c2285afa93365139ea 160000 (submodule)
--- a/common
+++ b/common
@@ -1 +1 @@
-Subproject commit e7d29006d05055ab5b7af44078668c1915d35262
+Subproject commit 6a6059f779c9ebb39f6011c2285afa93365139ea
index d2b02d4892872eaebfc336eec2fb118eecdea5d0..66e9bc6f30db9c431d1c0f71e8017bc7e39a88b3 100644 (file)
@@ -53,7 +53,7 @@ AS_IF([test x"$dx_cv_rl_add_history" = x"yes"],
 
 m4_include([lib/gnulib.mk])
 DX_GLSYM_PREFIX([cdecl__gl_])
-DX_GNULIB_SYMFILES([lib/symfiles])
+DX_GNULIB_SYMFILES([lib/symfiles], [s])
 AM_CONDITIONAL([BUILD_STATIC], [test x"$enable_static" = x"yes"])
 
 dnl We provide our own makefile rules for gettext.  Disable tracing of