sysvinit: make sure to link against libcrypt
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sun, 22 Aug 2010 06:28:02 +0000 (08:28 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 24 Aug 2010 13:05:20 +0000 (15:05 +0200)
sysvinit Makefile checks if /usr/lib/libcrypt.a exists to determine
whether it should link against libcrypt or not. This test fails on
distributions such as Fedora, in which /usr/lib/libcrypt.a does not
exist (it is in /usr/lib64), but where libcrypt is available on the
target. As libcrypt is available in both uClibc and gclibc, we just
force sysvinit to link against libcrypt.

Fixes bug #2401.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/sysvinit/sysvinit.mk

index 0b827e615220732e728c1bce1c03ce9531159828..09aaf741f010b1c4c6017231114876e97a42c01a 100644 (file)
@@ -21,7 +21,9 @@ $(SYSVINIT_DIR)/.unpacked: $(DL_DIR)/$(SYSVINIT_SOURCE)
        touch $@
 
 $(SYSVINIT_DIR)/$(SYSVINIT_BINARY): $(SYSVINIT_DIR)/.unpacked
-       CFLAGS="$(TARGET_CFLAGS)" $(MAKE) CC="$(TARGET_CC)" -C $(SYSVINIT_DIR)/src
+       # Force sysvinit to link against libcrypt as it otherwise
+       # use an incorrect test to see if it's available
+       CFLAGS="$(TARGET_CFLAGS)" $(MAKE) CC="$(TARGET_CC)" LCRYPT="-lcrypt" -C $(SYSVINIT_DIR)/src
 
 $(TARGET_DIR)/$(SYSVINIT_TARGET_BINARY): $(SYSVINIT_DIR)/$(SYSVINIT_BINARY)
        for x in halt init shutdown; do \