From 93101699f5e1190184c00c99ab7b6e9717e5019a Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Wed, 24 Jul 2019 11:11:35 +0200 Subject: [PATCH] Add dynamic static ldflags Forward-ported from 2.02.178 to 2.03.05 Signed-off-by: Lars Wendler --- configure.ac | 2 ++ daemons/dmeventd/Makefile.in | 2 +- make.tmpl.in | 1 + tools/Makefile.in | 2 +- 4 files changed, 5 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 1e45c0edcb..cc2625294a 100644 --- a/configure.ac +++ b/configure.ac @@ -33,6 +33,7 @@ case "$host_os" in CLDFLAGS="${CLDFLAGS:"$LDFLAGS"} -Wl,--version-script,.export.sym" # equivalent to -rdynamic ELDFLAGS="-Wl,--export-dynamic" + STATIC_LDFLAGS="-Wl,--no-export-dynamic" # FIXME Generate list and use --dynamic-list=.dlopen.sym CLDWHOLEARCHIVE="-Wl,-whole-archive" CLDNOWHOLEARCHIVE="-Wl,-no-whole-archive" @@ -1758,6 +1759,7 @@ AC_SUBST(SYSCONFDIR) AC_SUBST(SYSTEMD_LIBS) AC_SUBST(SNAPSHOTS) AC_SUBST(STATICDIR) +AC_SUBST(STATIC_LDFLAGS) AC_SUBST(STATIC_LINK) AC_SUBST(TESTSUITE_DATA) AC_SUBST(THIN) diff --git a/daemons/dmeventd/Makefile.in b/daemons/dmeventd/Makefile.in index 6bd36d0325..a3c30ec1a0 100644 --- a/daemons/dmeventd/Makefile.in +++ b/daemons/dmeventd/Makefile.in @@ -66,7 +66,7 @@ dmeventd: $(LIB_SHARED) dmeventd.o dmeventd.static: $(LIB_STATIC) dmeventd.o @echo " [CC] $@" - $(Q) $(CC) $(CFLAGS) $(LDFLAGS) -static -L. -L$(interfacebuilddir) dmeventd.o \ + $(Q) $(CC) $(CFLAGS) $(LDFLAGS) $(STATIC_LDFLAGS) -static -L. -L$(interfacebuilddir) dmeventd.o \ -o $@ $(DL_LIBS) $(DMEVENT_LIBS) $(LIBS) $(STATIC_LIBS) ifeq ("@PKGCONFIG@", "yes") diff --git a/make.tmpl.in b/make.tmpl.in index f3332e91c1..1489c2afad 100644 --- a/make.tmpl.in +++ b/make.tmpl.in @@ -68,6 +68,7 @@ DEFS += @DEFS@ # FIXME set this only where it's needed, not globally? CFLAGS ?= @COPTIMISE_FLAG@ @CFLAGS@ LDFLAGS ?= @LDFLAGS@ +STATIC_LDFLAGS += @STATIC_LDFLAGS@ CLDFLAGS += @CLDFLAGS@ ELDFLAGS += @ELDFLAGS@ LDDEPS += @LDDEPS@ diff --git a/tools/Makefile.in b/tools/Makefile.in index 2620daa17c..e5fc9c4ae4 100644 --- a/tools/Makefile.in +++ b/tools/Makefile.in @@ -136,7 +136,7 @@ man-generator: man-generator.o lvm.static: $(OBJECTS) lvm-static.o $(LVMINTERNAL_LIBS) @echo " [CC] $@" - $(Q) $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) -o $@ $+ \ + $(Q) $(CC) $(CFLAGS) $(LDFLAGS) $(STATIC_LDFLAGS) -static -L$(interfacebuilddir) -o $@ $+ \ $(DMEVENT_LIBS) $(STATIC_LIBS) $(LVMLIBS) liblvm2cmd.a: $(top_builddir)/lib/liblvm-internal.a $(OBJECTS) lvmcmdlib.o lvm2cmd.o -- 2.22.0