openssl: disable apps for NOMMU
authorGustavo Zacarias <gustavo@zacarias.com.ar>
Mon, 22 Oct 2012 05:42:08 +0000 (05:42 +0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Mon, 22 Oct 2012 18:53:15 +0000 (20:53 +0200)
The openssl binary uses fork() so disable the option and build for !MMU.
Fixes
http://autobuild.buildroot.net/results/45a9b84c16caadbf77b6fc43d7a0001c981a4c87/build-end.log

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
package/openssl/Config.in
package/openssl/openssl.mk

index 6ba644a98590cf1db1451defaf62195f440f1d4c..2187023e614470b3bc06bc5cb17be8e69f0b4e4d 100644 (file)
@@ -12,6 +12,8 @@ config BR2_PACKAGE_OPENSSL
 config BR2_PACKAGE_OPENSSL_BIN
        bool "openssl binary"
        depends on BR2_PACKAGE_OPENSSL
+       # uses fork()
+       depends on BR2_USE_MMU
        help
          Install the openssl binary to the target file system. This is a
          command line tool for doing various crypthographic stuff.
index 0917344afa9a8a3181d003785f41cbb70c76ffc9..265a4fbe8af0f6852b4638448ff244b0d4c8f16e 100644 (file)
@@ -13,6 +13,15 @@ OPENSSL_DEPENDENCIES = zlib
 OPENSSL_TARGET_ARCH = generic32
 OPENSSL_CFLAGS = $(TARGET_CFLAGS)
 
+ifeq ($(BR2_PACKAGE_OPENSSL_BIN),)
+define OPENSSL_DISABLE_APPS
+       $(SED) '/^build_apps/! s/build_apps//' $(@D)/Makefile.org
+       $(SED) '/^DIRS=/ s/apps//' $(@D)/Makefile.org
+endef
+endif
+
+OPENSSL_PRE_CONFIGURE_HOOKS += OPENSSL_DISABLE_APPS
+
 ifeq ($(BR2_PACKAGE_OPENSSL_OCF),y)
        OPENSSL_CFLAGS += -DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS
        OPENSSL_DEPENDENCIES += ocf-linux
@@ -84,14 +93,6 @@ ifneq ($(BR2_HAVE_DEVFILES),y)
 OPENSSL_POST_INSTALL_TARGET_HOOKS += OPENSSL_REMOVE_DEV_FILES
 endif
 
-define OPENSSL_REMOVE_OPENSSL_BIN
-       rm -f $(TARGET_DIR)/usr/bin/openssl
-endef
-
-ifneq ($(BR2_PACKAGE_OPENSSL_BIN),y)
-OPENSSL_POST_INSTALL_TARGET_HOOKS += OPENSSL_REMOVE_OPENSSL_BIN
-endif
-
 define OPENSSL_INSTALL_FIXUPS
        rm -f $(TARGET_DIR)/usr/bin/c_rehash
 endef