Browse Source

Build shared libraries

Marcin Krzyżanowski 10 years ago
parent
commit
6059ee3fda

+ 14 - 5
build.sh

@@ -57,29 +57,29 @@ build()
          # Simulator
          export CROSS_TOP="${IPHONESIMULATOR_PLATFORM}/Developer"
          export CROSS_SDK="iPhoneSimulator${IOS_SDK_VERSION}.sdk"
-         ./Configure darwin64-x86_64-cc --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
+         ./Configure darwin64-x86_64-cc --shared --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
          sed -ie "s!^CFLAG=!CFLAG=-isysroot ${CROSS_TOP}/SDKs/${CROSS_SDK} -miphoneos-version-min=${IOS_DEPLOYMENT_VERSION} !" "Makefile"
       elif [ "$ARCH" == "i386" ]; then
          # Simulator
          export CROSS_TOP="${IPHONESIMULATOR_PLATFORM}/Developer"
          export CROSS_SDK="iPhoneSimulator${IOS_SDK_VERSION}.sdk"
-         ./Configure iphoneos-cross --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
+         ./Configure iphoneos-cross --shared --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
          sed -ie "s!^CFLAG=!CFLAG=-isysroot ${CROSS_TOP}/SDKs/${CROSS_SDK} -miphoneos-version-min=${IOS_DEPLOYMENT_VERSION} !" "Makefile"
       else
          # iOS
          export CROSS_TOP="${IPHONEOS_PLATFORM}/Developer"
          export CROSS_SDK="iPhoneOS${IOS_SDK_VERSION}.sdk"
-         ./Configure iphoneos-cross --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
+         ./Configure iphoneos-cross --shared --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
          perl -i -pe 's|static volatile sig_atomic_t intr_signal|static volatile int intr_signal|' crypto/ui/ui_openssl.c
          sed -ie "s!^CFLAG=!CFLAG=-isysroot ${CROSS_TOP}/SDKs/${CROSS_SDK} -miphoneos-version-min=${IOS_DEPLOYMENT_VERSION} !" "Makefile"
       fi
    else
       #OSX
       if [ "$ARCH" == "x86_64" ]; then
-         ./Configure darwin64-x86_64-cc --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
+         ./Configure darwin64-x86_64-cc --shared --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
          sed -ie "s!^CFLAG=!CFLAG=-isysroot ${SDK} -mmacosx-version-min=${OSX_DEPLOYMENT_VERSION} !" "Makefile"
       elif [ "$ARCH" == "i386" ]; then
-         ./Configure darwin-i386-cc --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
+         ./Configure darwin-i386-cc --shared --openssldir="/tmp/openssl-${OPENSSL_VERSION}-${ARCH}" &> "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}.log"
          sed -ie "s!^CFLAG=!CFLAG=-isysroot ${SDK} -mmacosx-version-min=${OSX_DEPLOYMENT_VERSION} !" "Makefile"
       fi
    fi
@@ -90,6 +90,14 @@ build()
    rm -rf "openssl-${OPENSSL_VERSION}"
 
    # Add arch to library
+   if [ -f "lib-${TYPE}/libcrypto.1.0.0.dylib" ]; then
+      xcrun lipo "lib-${TYPE}/libcrypto.1.0.0.dylib" "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libcrypto.1.0.0.dylib" -create -output "lib-${TYPE}/libcrypto.1.0.0.dylib"
+      xcrun lipo "lib-${TYPE}/libssl.1.0.0.dylib" "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libssl.1.0.0.dylib" -create -output "lib-${TYPE}/libssl.1.0.0.dylib"
+   else
+      cp "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libcrypto.1.0.0.dylib" "lib-${TYPE}/libcrypto.1.0.0.dylib"
+      cp "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libssl.1.0.0.dylib" "lib-${TYPE}/libssl.1.0.0.dylib"
+   fi
+
    if [ -f "lib-${TYPE}/libcrypto.a" ]; then
       xcrun lipo "lib-${TYPE}/libcrypto.a" "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libcrypto.a" -create -output "lib-${TYPE}/libcrypto.a"
       xcrun lipo "lib-${TYPE}/libssl.a" "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libssl.a" -create -output "lib-${TYPE}/libssl.a"
@@ -97,6 +105,7 @@ build()
       cp "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libcrypto.a" "lib-${TYPE}/libcrypto.a"
       cp "/tmp/openssl-${OPENSSL_VERSION}-${ARCH}/lib/libssl.a" "lib-${TYPE}/libssl.a"
    fi
+
 }
 
 build "armv7" "${IPHONEOS_SDK}" "ios"

+ 2 - 2
include-ios/openssl/opensslconf.h

@@ -41,8 +41,8 @@
 #ifndef OPENSSL_THREADS
 # define OPENSSL_THREADS
 #endif
-#ifndef OPENSSL_NO_DYNAMIC_ENGINE
-# define OPENSSL_NO_DYNAMIC_ENGINE
+#ifndef OPENSSL_NO_STATIC_ENGINE
+# define OPENSSL_NO_STATIC_ENGINE
 #endif
 
 /* The OPENSSL_NO_* macros are also defined as NO_* if the application

+ 2 - 2
include-osx/openssl/opensslconf.h

@@ -41,8 +41,8 @@
 #ifndef OPENSSL_THREADS
 # define OPENSSL_THREADS
 #endif
-#ifndef OPENSSL_NO_DYNAMIC_ENGINE
-# define OPENSSL_NO_DYNAMIC_ENGINE
+#ifndef OPENSSL_NO_STATIC_ENGINE
+# define OPENSSL_NO_STATIC_ENGINE
 #endif
 
 /* The OPENSSL_NO_* macros are also defined as NO_* if the application

BIN
lib-ios/libcrypto.1.0.0.dylib


BIN
lib-ios/libcrypto.a


BIN
lib-ios/libssl.1.0.0.dylib


BIN
lib-ios/libssl.a


BIN
lib-osx/libcrypto.1.0.0.dylib


BIN
lib-osx/libcrypto.a


BIN
lib-osx/libssl.1.0.0.dylib


BIN
lib-osx/libssl.a