Skip to content
This repository was archived by the owner on Mar 2, 2023. It is now read-only.

Commit 0bdb7b0

Browse files
Applying @Frugghi enhancements to the 1.0.109 podspec
1 parent 037f773 commit 0bdb7b0

File tree

1 file changed

+27
-26
lines changed

1 file changed

+27
-26
lines changed

1.0.109/OpenSSL.podspec

Lines changed: 27 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -7,36 +7,27 @@ Pod::Spec.new do |s|
77
s.homepage = "https://github.com/FredericJacobs/OpenSSL-Pod"
88
s.license = 'BSD-style Open Source'
99
s.source = { :http => "https://www.openssl.org/source/openssl-1.0.1i.tar.gz", :sha1 => "74eed314fa2c93006df8d26cd9fc630a101abd76"}
10-
s.preserve_paths = "file.tgz", "opensslIncludes/*"
11-
s.source_files = "opensslIncludes/*.h", "**/*.h"
10+
s.source_files = "opensslIncludes/openssl/*.h"
1211
s.header_dir = "openssl"
1312
s.license = { :type => 'OpenSSL (OpenSSL/SSLeay)', :file => 'LICENSE' }
1413

1514
s.prepare_command = <<-CMD
1615
VERSION="1.0.1i"
17-
SDKVERSION=`/usr/bin/xcodebuild -version -sdk 2> /dev/null | grep SDKVersion | tail -n 1 | awk '{ print $2 }'`
16+
SDKVERSION=`xcrun --sdk iphoneos --show-sdk-version 2> /dev/null`
1817
19-
CURRENTPATH=`pwd`
18+
BASEPATH="${PWD}"
19+
CURRENTPATH="/tmp/openssl"
2020
ARCHS="i386 x86_64 armv7 armv7s arm64"
2121
DEVELOPER=`xcode-select -print-path`
2222
23+
mkdir -p "${CURRENTPATH}"
2324
mkdir -p "${CURRENTPATH}/bin"
24-
mkdir -p "${CURRENTPATH}/lib"
25-
mkdir -p "${CURRENTPATH}/opensslIncludes"
26-
mkdir -p "${CURRENTPATH}/opensslIncludes/openssl"
2725
26+
cp "file.tgz" "${CURRENTPATH}/file.tgz"
27+
cd "${CURRENTPATH}"
2828
tar -xzf file.tgz
29+
cd "openssl-${VERSION}"
2930
30-
cd openssl-${VERSION}
31-
cd include/openssl
32-
33-
for link in $(find . -type l)
34-
do
35-
dir=$(readlink $link)
36-
cp $dir ../../../opensslIncludes/openssl
37-
done
38-
39-
cd ../..
4031
for ARCH in ${ARCHS}
4132
do
4233
CONFIGURE_FOR="iphoneos-cross"
@@ -63,32 +54,42 @@ Pod::Spec.new do |s|
6354
mkdir -p "${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk"
6455
LOG="${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/build-openssl-${VERSION}.log"
6556
57+
LIPO_LIBSSL="${LIPO_LIBSSL} ${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/lib/libssl.a"
58+
LIPO_LIBCRYPTO="${LIPO_LIBCRYPTO} ${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/lib/libcrypto.a"
59+
6660
./Configure ${CONFIGURE_FOR} --openssldir="${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk" > "${LOG}" 2>&1
6761
sed -ie "s!^CFLAG=!CFLAG=-isysroot ${CROSS_TOP}/SDKs/${CROSS_SDK} !" "Makefile"
6862
6963
make >> "${LOG}" 2>&1
70-
make install >> "${LOG}" 2>&1
64+
make all install_sw >> "${LOG}" 2>&1
7165
make clean >> "${LOG}" 2>&1
7266
done
7367
7468
7569
echo "Build library..."
76-
lipo -create ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-i386.sdk/lib/libssl.a ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-x86_64.sdk/lib/libssl.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7.sdk/lib/libssl.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7s.sdk/lib/libssl.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-arm64.sdk/lib/libssl.a -output ${CURRENTPATH}/lib/libssl.a
77-
lipo -create ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-i386.sdk/lib/libcrypto.a ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-x86_64.sdk/lib/libcrypto.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7.sdk/lib/libcrypto.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7s.sdk/lib/libcrypto.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-arm64.sdk/lib/libcrypto.a -output ${CURRENTPATH}/lib/libcrypto.a
70+
rm -rf "${BASEPATH}/lib/"
71+
mkdir -p "${BASEPATH}/lib/"
72+
lipo -create ${LIPO_LIBSSL} -output "${BASEPATH}/lib/libssl.a"
73+
lipo -create ${LIPO_LIBCRYPTO} -output "${BASEPATH}/lib/libcrypto.a"
74+
75+
echo "Copying headers..."
76+
rm -rf "${BASEPATH}/opensslIncludes/"
77+
mkdir -p "${BASEPATH}/opensslIncludes/"
78+
cp -RL "${CURRENTPATH}/openssl-${VERSION}/include/openssl" "${BASEPATH}/opensslIncludes/"
7879
80+
cd "${BASEPATH}"
7981
echo "Building done."
82+
8083
echo "Cleaning up..."
81-
rm -rf ${CURRENTPATH}/openssl-${VERSION}
82-
rm -R ${CURRENTPATH}/bin
83-
rm -rf file.tgz
84+
rm -rf "${CURRENTPATH}"
8485
echo "Done."
8586
CMD
8687

8788
s.ios.platform = :ios
88-
s.ios.public_header_files = "opensslIncludes/*.h"
89+
s.ios.public_header_files = "opensslIncludes/openssl/*.h"
8990
s.ios.vendored_libraries = "lib/libcrypto.a", "lib/libssl.a"
9091

91-
s.libraries = 'crypto', 'ssl'
92-
s.requires_arc = false
92+
s.libraries = 'crypto', 'ssl'
93+
s.requires_arc = false
9394

9495
end

0 commit comments

Comments
 (0)