Makefile: add missing libraries to LDLIBS
Static build with CONFIG_PAM fails on Debian Jessie due to undefined references to libdl and libaudit. Static build without pam, but with libcrypt required fails as well due to undefined references to libpthread. Fix these two cases by adding the missing libraries to LDLIBS when appropriate. Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
718e228adc
commit
bb2fd67d0b
@ -121,20 +121,20 @@ endif
|
|||||||
# fall back to using a temp file:
|
# fall back to using a temp file:
|
||||||
CRYPT_AVAILABLE := $(shell echo 'int main(void){return 0;}' >crypttest.c; $(CC) $(CFLAGS) -lcrypt -o /dev/null crypttest.c >/dev/null 2>&1 && echo "y"; rm crypttest.c)
|
CRYPT_AVAILABLE := $(shell echo 'int main(void){return 0;}' >crypttest.c; $(CC) $(CFLAGS) -lcrypt -o /dev/null crypttest.c >/dev/null 2>&1 && echo "y"; rm crypttest.c)
|
||||||
ifeq ($(CRYPT_AVAILABLE),y)
|
ifeq ($(CRYPT_AVAILABLE),y)
|
||||||
LDLIBS += m crypt
|
LDLIBS += m crypt pthread
|
||||||
else
|
else
|
||||||
LDLIBS += m
|
LDLIBS += m
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_PAM),y)
|
ifeq ($(CONFIG_PAM),y)
|
||||||
# libpam uses libpthread, so for static builds busybox must be linked to
|
# libpam uses libpthread, libdl and libaudit, so for static builds busybox
|
||||||
# libpthread. On some platforms that requires an explicit -lpthread, so
|
# must be linked to libpthread, libdl and libaudit. On some platforms that
|
||||||
# it should be in LDLIBS. For non-static builds, scripts/trylink will
|
# requires an explicit -lpthread, -ldl and -laudit, so it should be in
|
||||||
# take care of removing -lpthread if possible. (Not bothering to check
|
# LDLIBS. For non-static builds, scripts/trylink will take care of removing
|
||||||
# CONFIG_STATIC because even in a non-static build it could be that the
|
# these flags if possible. (Not bothering to check CONFIG_STATIC because
|
||||||
# only libpam available is libpam.a, so -lpthread could still be
|
# even in a non-static build it could be that the only libpam available is
|
||||||
# needed.)
|
# libpam.a, so -lpthread & Co. could still be needed.)
|
||||||
LDLIBS += pam pam_misc pthread
|
LDLIBS += pam pam_misc pthread dl audit
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_SELINUX),y)
|
ifeq ($(CONFIG_SELINUX),y)
|
||||||
|
Loading…
Reference in New Issue
Block a user