openssl: Support multi-threaded applications
[openwrt.git] / package / libs / openssl / Makefile
index 049aad4..f289837 100644 (file)
@@ -9,7 +9,10 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=openssl
 PKG_VERSION:=1.0.1e
-PKG_RELEASE:=1
+PKG_RELEASE:=2
+PKG_USE_MIPS16:=0
+
+PKG_BUILD_PARALLEL:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://www.openssl.org/source/ \
@@ -20,7 +23,8 @@ PKG_MD5SUM:=66bf6f10f060d561929de96f9dfe5b8c
 PKG_LICENSE:=SSLEAY OPENSSL
 PKG_LICENSE_FILES:=LICENSE
 PKG_BUILD_DEPENDS:=ocf-crypto-headers
-PKG_CONFIG_DEPENDS:=CONFIG_OPENSSL_ENGINE_CRYPTO CONFIG_OPENSSL_ENGINE_DIGEST
+PKG_CONFIG_DEPENDS:=CONFIG_OPENSSL_ENGINE_CRYPTO CONFIG_OPENSSL_ENGINE_DIGEST \
+       OPENSSL_WITH_EC OPENSSL_WITH_EC2M
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -74,8 +78,8 @@ endef
 
 
 OPENSSL_NO_CIPHERS:= no-idea no-md2 no-mdc2 no-rc5 no-sha0 no-smime \
-       no-rmd160 no-aes192 no-ripemd no-camellia no-ans1 no-krb5
-OPENSSL_OPTIONS:= shared no-ec no-err no-hw no-threads zlib-dynamic no-sse2
+       no-aes192 no-camellia no-ans1 no-krb5
+OPENSSL_OPTIONS:= shared no-err no-hw zlib-dynamic no-sse2
 
 ifdef CONFIG_OPENSSL_ENGINE_CRYPTO
   OPENSSL_OPTIONS += -DHAVE_CRYPTODEV
@@ -86,6 +90,14 @@ else
   OPENSSL_OPTIONS += no-engines
 endif
 
+ifndef CONFIG_OPENSSL_WITH_EC
+  OPENSSL_OPTIONS += no-ec
+endif
+
+ifndef CONFIG_OPENSSL_WITH_EC2M
+  OPENSSL_OPTIONS += no-ec2m
+endif
+
 ifeq ($(CONFIG_x86_64),y)
   OPENSSL_TARGET:=linux-x86_64
 else
@@ -117,12 +129,12 @@ define Build/Compile
        # XXX: OpenSSL "make depend" will look for installed headers before its own,
        # so remove installed stuff first
        -$(SUBMAKE) -j1 clean-staging
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                MAKEDEPPROG="$(TARGET_CROSS)gcc" \
                OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
                $(OPENSSL_MAKEFLAGS) \
                depend
-       $(_SINGLE)$(MAKE) -C $(PKG_BUILD_DIR) \
+       +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                CC="$(TARGET_CC)" \
                ASFLAGS="$(TARGET_ASFLAGS) -c" \
                AR="$(TARGET_CROSS)ar r" \
@@ -130,7 +142,7 @@ define Build/Compile
                OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
                $(OPENSSL_MAKEFLAGS) \
                all
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                CC="$(TARGET_CC)" \
                ASFLAGS="$(TARGET_ASFLAGS) -c" \
                AR="$(TARGET_CROSS)ar r" \
@@ -140,7 +152,7 @@ define Build/Compile
                build-shared
        # Work around openssl build bug to link libssl.so with libcrypto.so.
        -rm $(PKG_BUILD_DIR)/libssl.so.*.*.*
-       $(MAKE) -C $(PKG_BUILD_DIR) \
+       +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
                CC="$(TARGET_CC)" \
                OPENWRT_OPTIMIZATION_FLAGS="$(TARGET_CFLAGS)" \
                $(OPENSSL_MAKEFLAGS) \