summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorSteve Langasek <vorlon@debian.org>2003-07-13 18:41:04 +0000
committerSteve Langasek <vorlon@debian.org>2003-07-13 18:41:04 +0000
commit2f36c829822a4b016ba075575c720ad9cb3c6463 (patch)
tree51b4a20becbd7b9d92b6bc0d73565a438525265d /modules
parenteaffa5288f918a542c5322b79975793efc1b3a10 (diff)
Relevant BUGIDs: 643357
Purpose of commit: bugfix Commit summary: --------------- Patch from Sam Hartman to fix handling of module linking on Linux: modules should be linked against libpam if they call any functions from the library, since not all platforms will correctly resolve symbol references otherwise. Also, make sure we use gcc, not ld, when linking, since there's additional linker glue that gcc will pull in for us.
Diffstat (limited to 'modules')
-rw-r--r--modules/Simple.Rules2
-rw-r--r--modules/pam_access/Makefile3
-rw-r--r--modules/pam_limits/Makefile3
-rw-r--r--modules/pam_tally/Makefile2
-rw-r--r--modules/pam_unix/Makefile2
5 files changed, 9 insertions, 3 deletions
diff --git a/modules/Simple.Rules b/modules/Simple.Rules
index 2d79b00c..bb16e48d 100644
--- a/modules/Simple.Rules
+++ b/modules/Simple.Rules
@@ -19,7 +19,7 @@ LIBOBJ = $(addsuffix .o,$(LIBFILES))
LIBOBJD = $(addprefix dynamic/,$(LIBOBJ))
LIBOBJS = $(addprefix static/,$(LIBOBJ))
-LINK_PAMMODUTILS = -L../pammodutil -lpammodutil
+LINK_PAMMODUTILS = -L../pammodutil -lpammodutil -L../../libpam -lpam
INCLUDE_PAMMODUTILS = -I../pammodutil/include
ifdef DYNAMIC
diff --git a/modules/pam_access/Makefile b/modules/pam_access/Makefile
index d93c9f40..87b2b3e6 100644
--- a/modules/pam_access/Makefile
+++ b/modules/pam_access/Makefile
@@ -10,6 +10,9 @@ include ../../Make.Rules
TITLE=pam_access
LOCAL_CONFILE=./access.conf
INSTALLED_CONFILE=$(SCONFIGD)/access.conf
+ifeq ($(HAVE_LIBNSL),yes)
+MODULE_SIMPLE_EXTRALIBS=-lnsl
+endif
DEFS=-DDEFAULT_CONF_FILE=\"$(INSTALLED_CONFILE)\"
CFLAGS += $(DEFS)
diff --git a/modules/pam_limits/Makefile b/modules/pam_limits/Makefile
index 9473d915..0a481fe8 100644
--- a/modules/pam_limits/Makefile
+++ b/modules/pam_limits/Makefile
@@ -21,6 +21,9 @@ CFLAGS += $(DEFS)
MODULE_SIMPLE_INSTALL=bash -f ../install_conf "$(FAKEROOT)" "$(SCONFIGD)" "$(INSTALLED_CONFILE)" "$(TITLE)" "$(LOCAL_CONFILE)"
MODULE_SIMPLE_REMOVE=rm -f $(FAKEROOT)$(INSTALLED_CONFILE)
MODULE_SIMPLE_CLEAN=rm -f ./.ignore_age
+ifeq ($(HAVE_LIBCAP),yes)
+MODULE_SIMPLE_EXTRALIBS=-lcap
+endif
include ../Simple.Rules
diff --git a/modules/pam_tally/Makefile b/modules/pam_tally/Makefile
index 1c5106e3..c39970dd 100644
--- a/modules/pam_tally/Makefile
+++ b/modules/pam_tally/Makefile
@@ -65,7 +65,7 @@ ifdef DYNAMIC
$(LIBOBJD): $(LIBSRC)
$(LIBSHARED): $(LIBOBJD)
- $(LD_D) -o $@ $(LIBOBJD)
+ $(LD_D) -o $@ $(LIBOBJD) -L../../libpam -lpam $(NEED_LINK_LIB_C)
$(APPLICATION): $(APPOBJD) $(TITLE).c
$(CC) $(CFLAGS) -o $@ $(APPOBJD) $(LOADLIBES)
diff --git a/modules/pam_unix/Makefile b/modules/pam_unix/Makefile
index 0cab34bc..61c4beaa 100644
--- a/modules/pam_unix/Makefile
+++ b/modules/pam_unix/Makefile
@@ -109,7 +109,7 @@ ifdef DYNAMIC
$(LIBOBJD): $(LIBSRC)
$(LIBSHARED): $(LIBOBJD)
- $(LD_D) -o $@ $(LIBOBJD) $(PLUS) $(CRACKLIB) $(LDLIBS) $(LIBNSL) $(LIBCRYPT)
+ $(LD_D) -o $@ $(LIBOBJD) $(PLUS) $(CRACKLIB) $(LDLIBS) $(LIBNSL) $(LIBCRYPT) $(NEED_LINK_LIB_C) -L../../libpam -lpam
endif
ifdef STATIC