sssd/sssd-ldflags.diff

212 lines
6.3 KiB
Diff

From c9b13c7e032fde96cf07c7d298bb7fa65fad220b Mon Sep 17 00:00:00 2001
From: Jan Engelhardt <jengelh@inai.de>
Date: Fri, 1 Nov 2013 23:01:09 +0100
Subject: [PATCH] build: fix ordering of linker flags
Libraries MUST be specified in LDADD/LIBADD, not LDFLAGS, because
LDFLAGS appear earlier in the command line and library order is
significant.
---
Makefile.am | 66 ++++++++++++++++++++++++++++++------------------------------
1 file changed, 34 insertions(+), 32 deletions(-)
Index: sssd-1.11.2/Makefile.am
===================================================================
--- sssd-1.11.2.orig/Makefile.am
+++ sssd-1.11.2/Makefile.am
@@ -600,9 +600,10 @@ dist_pkgconfig_DATA += src/providers/ipa
libipa_hbac_la_SOURCES = \
src/providers/ipa/hbac_evaluator.c \
src/util/sss_utf8.c
-libipa_hbac_la_LDFLAGS = \
- -version-info 0:1:0 \
+libipa_hbac_la_LIBADD = \
$(UNICODE_LIBS)
+libipa_hbac_la_LDFLAGS = \
+ -version-info 0:1:0
dist_pkgconfig_DATA += src/lib/idmap/sss_idmap.pc
libsss_idmap_la_SOURCES = \
@@ -617,8 +618,9 @@ libsss_nss_idmap_la_SOURCES = \
src/sss_client/idmap/sss_nss_idmap.c \
src/sss_client/common.c \
src/util/strtonum.c
+libsss_nss_idmap_la_LIBADD = \
+ $(CLIENT_LIBS)
libsss_nss_idmap_la_LDFLAGS = \
- $(CLIENT_LIBS) \
-version-info 0:1:0
include_HEADERS = \
@@ -771,10 +773,9 @@ sss_userdel_SOURCES = \
$(SSSD_LCL_TOOLS_OBJ)
sss_userdel_LDADD = \
$(TOOLS_LIBS) \
- $(SSSD_INTERNAL_LTLIBS)
-sss_userdel_CFLAGS = $(AM_CFLAGS)
-sss_userdel_LDFLAGS = \
+ $(SSSD_INTERNAL_LTLIBS) \
$(CLIENT_LIBS)
+sss_userdel_CFLAGS = $(AM_CFLAGS)
sss_groupadd_SOURCES = \
src/tools/sss_groupadd.c \
@@ -788,30 +789,27 @@ sss_groupdel_SOURCES = \
$(SSSD_LCL_TOOLS_OBJ)
sss_groupdel_LDADD = \
$(TOOLS_LIBS) \
- $(SSSD_INTERNAL_LTLIBS)
-sss_groupdel_CFLAGS = $(AM_CFLAGS)
-sss_groupdel_LDFLAGS = \
+ $(SSSD_INTERNAL_LTLIBS) \
$(CLIENT_LIBS)
+sss_groupdel_CFLAGS = $(AM_CFLAGS)
sss_usermod_SOURCES = \
src/tools/sss_usermod.c \
$(SSSD_LCL_TOOLS_OBJ)
sss_usermod_LDADD = \
$(TOOLS_LIBS) \
- $(SSSD_INTERNAL_LTLIBS)
-sss_usermod_CFLAGS = $(AM_CFLAGS)
-sss_usermod_LDFLAGS = \
+ $(SSSD_INTERNAL_LTLIBS) \
$(CLIENT_LIBS)
+sss_usermod_CFLAGS = $(AM_CFLAGS)
sss_groupmod_SOURCES = \
src/tools/sss_groupmod.c \
$(SSSD_LCL_TOOLS_OBJ)
sss_groupmod_LDADD = \
$(TOOLS_LIBS) \
- $(SSSD_INTERNAL_LTLIBS)
-sss_groupmod_CFLAGS = $(AM_CFLAGS)
-sss_groupmod_LDFLAGS = \
+ $(SSSD_INTERNAL_LTLIBS) \
$(CLIENT_LIBS)
+sss_groupmod_CFLAGS = $(AM_CFLAGS)
sss_groupshow_SOURCES = \
src/tools/sss_groupshow.c \
@@ -825,10 +823,9 @@ sss_cache_SOURCES = \
$(SSSD_LCL_TOOLS_OBJ)
sss_cache_LDADD = \
$(TOOLS_LIBS) \
- $(SSSD_INTERNAL_LTLIBS)
-sss_cache_CFLAGS = $(AM_CFLAGS)
-sss_cache_LDFLAGS = \
+ $(SSSD_INTERNAL_LTLIBS) \
$(CLIENT_LIBS)
+sss_cache_CFLAGS = $(AM_CFLAGS)
sss_debuglevel_SOURCES = \
src/tools/sss_debuglevel.c \
@@ -851,7 +848,7 @@ sss_sudo_cli_SOURCES = \
src/sss_client/sudo/sss_sudo_response.c \
src/sss_client/sudo_testcli/sudo_testcli.c
sss_sudo_cli_CFLAGS = $(AM_CFLAGS)
-sss_sudo_cli_LDFLAGS = $(CLIENT_LIBS)
+sss_sudo_cli_LDADD = $(CLIENT_LIBS)
endif
if BUILD_SSH
@@ -861,8 +858,8 @@ sss_ssh_authorizedkeys_SOURCES = \
src/sss_client/ssh/sss_ssh_authorizedkeys.c
sss_ssh_authorizedkeys_CFLAGS = $(AM_CFLAGS)
sss_ssh_authorizedkeys_LDADD = \
- $(SSSD_INTERNAL_LTLIBS)
-sss_ssh_authorizedkeys_LDFLAGS = $(CLIENT_LIBS) $(TALLOC_LIBS) $(POPT_LIBS)
+ $(SSSD_INTERNAL_LTLIBS) \
+ $(CLIENT_LIBS) $(TALLOC_LIBS) $(POPT_LIBS)
sss_ssh_knownhostsproxy_SOURCES = \
src/sss_client/common.c \
@@ -870,8 +867,8 @@ sss_ssh_knownhostsproxy_SOURCES = \
src/sss_client/ssh/sss_ssh_knownhostsproxy.c
sss_ssh_knownhostsproxy_CFLAGS = $(AM_CFLAGS)
sss_ssh_knownhostsproxy_LDADD = \
- $(SSSD_INTERNAL_LTLIBS)
-sss_ssh_knownhostsproxy_LDFLAGS = $(CLIENT_LIBS) $(TALLOC_LIBS) $(POPT_LIBS)
+ $(SSSD_INTERNAL_LTLIBS) \
+ $(CLIENT_LIBS) $(TALLOC_LIBS) $(POPT_LIBS)
endif
#################
@@ -1402,7 +1399,7 @@ noinst_PROGRAMS += autofs_test_client
endif
pam_test_client_SOURCES = src/sss_client/pam_test_client.c
-pam_test_client_LDFLAGS = -lpam -lpam_misc
+pam_test_client_LDADD = -lpam -lpam_misc
if BUILD_AUTOFS
autofs_test_client_SOURCES = \
@@ -1410,7 +1407,7 @@ autofs_test_client_SOURCES = \
src/sss_client/autofs/sss_autofs.c \
src/sss_client/common.c
autofs_test_client_CFLAGS = $(AM_CFLAGS)
-autofs_test_client_LDFLAGS = -lpopt $(CLIENT_LIBS)
+autofs_test_client_LDADD = -lpopt $(CLIENT_LIBS)
endif
####################
@@ -1432,8 +1429,9 @@ libnss_sss_la_SOURCES = \
src/sss_client/nss_mc_passwd.c \
src/sss_client/nss_mc_group.c \
src/sss_client/nss_mc.h
+libnss_sss_la_LIBADD = \
+ $(CLIENT_LIBS)
libnss_sss_la_LDFLAGS = \
- $(CLIENT_LIBS) \
-module \
-version-info 2:0:0 \
-Wl,--version-script,$(srcdir)/src/sss_client/sss_nss.exports
@@ -1446,9 +1444,10 @@ pam_sss_la_SOURCES = \
src/util/atomic_io.c \
src/sss_client/sss_pam_macros.h
-pam_sss_la_LDFLAGS = \
+pam_sss_la_LIBADD = \
$(CLIENT_LIBS) \
- -lpam \
+ -lpam
+pam_sss_la_LDFLAGS = \
-module \
-avoid-version \
-Wl,--version-script,$(srcdir)/src/sss_client/sss_pam.exports
@@ -1462,8 +1461,9 @@ libsss_sudo_la_SOURCES = \
src/sss_client/sudo/sss_sudo.c \
src/sss_client/sudo/sss_sudo.h \
src/sss_client/sudo/sss_sudo_private.h
+libsss_sudo_la_LIBADD = \
+ $(CLIENT_LIBS)
libsss_sudo_la_LDFLAGS = \
- $(CLIENT_LIBS) \
-Wl,--version-script,$(srcdir)/src/sss_client/sss_sudo.exports \
-module \
-avoid-version
@@ -1480,8 +1480,9 @@ libsss_autofs_la_SOURCES = \
src/sss_client/autofs/sss_autofs.c \
src/sss_client/autofs/sss_autofs_private.h
+libsss_autofs_la_LIBADD = \
+ $(CLIENT_LIBS)
libsss_autofs_la_LDFLAGS = \
- $(CLIENT_LIBS) \
-module \
-avoid-version \
-Wl,--version-script,$(srcdir)/src/sss_client/autofs/sss_autofs.exports
@@ -1831,9 +1832,10 @@ sssd_pac_plugin_la_SOURCES = \
sssd_pac_plugin_la_CFLAGS = \
$(AM_CFLAGS) \
$(KRB5_CFLAGS)
-sssd_pac_plugin_la_LDFLAGS = \
+sssd_pac_plugin_la_LIBADD = \
$(CLIENT_LIBS) \
- -lkrb5 \
+ -lkrb5
+sssd_pac_plugin_la_LDFLAGS = \
-avoid-version \
-module