Overview
Comment: | Add script to build universal iOS lib + framework |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
5a311cc1bfda65d14e2e66034fd53ce8 |
User & Date: | js on 2017-10-15 22:06:59 |
Other Links: | manifest | tags |
Context
2017-10-15
| ||
22:20 | bridge: Symbols to force references to categories check-in: 07e85b7edb user: js tags: trunk | |
22:06 | Add script to build universal iOS lib + framework check-in: 5a311cc1bf user: js tags: trunk | |
20:55 | bridge: Use @import ObjFW when using modules check-in: fc64538f06 user: js tags: trunk | |
Changes
Added scripts/build_ios.sh version [65fb800552].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 | #!/bin/sh set -e if test x"$1" = x""; then echo "Usage: $0 destination" exit 1 fi cd .. prefix="$1" export IPHONEOS_DEPLOYMENT_TARGET="9.0" msg() { tput setaf 6 tput bold echo "$@" tput sgr0 } msg "This could take a while - you should probably grab a coffee." msg "Running autogen.sh" ./autogen.sh build() { objc="$(xcrun -f clang) --sysroot $(xcode-select -p)" objc="$objc/Platforms/$3.platform/Developer/SDKs/$3.sdk" msg "make distclean" test -f buildsys.mk && make distclean msg "Configuring for $1" ./configure \ --host=$2 \ --prefix=$prefix/$1 \ --enable-static \ OBJC="$objc -arch $1" msg "Building for $1" make -C src libobjfw.a ObjFW.framework make -C src/bridge libobjfw_bridge.a ObjFW_Bridge.framework make -C src install mkdir -p $prefix/$1/Frameworks cp -R src/ObjFW.framework src/bridge/ObjFW_Bridge.framework \ $prefix/$1/Frameworks make distclean } build armv7 arm-apple-darwin iPhoneOS build arm64 arm64-apple-darwin iPhoneOS build x86_64 x86_64-apple-darwin iPhoneSimulator msg "Sanity checking" diff -Nru $prefix/armv7/include $prefix/arm64/include diff -Nru $prefix/armv7/Frameworks/ObjFW.framework/Headers \ $prefix/arm64/Frameworks/ObjFW.framework/Headers diff -Nru $prefix/armv7/Frameworks/ObjFW_Bridge.framework/Headers \ $prefix/arm64/Frameworks/ObjFW_Bridge.framework/Headers mv $prefix/armv7/include $prefix/ mkdir -p \ $prefix/lib \ $prefix/Frameworks/ObjFW.framework \ $prefix/Frameworks/ObjFW_Bridge.framework combine() { msg "Combining $1" lipo \ $prefix/armv7/$1 \ $prefix/arm64/$1 \ $prefix/x86_64/$1 \ -create -output $prefix/$1 } combine lib/libobjfw.a combine lib/libobjfw_bridge.a combine Frameworks/ObjFW.framework/ObjFW combine Frameworks/ObjFW_Bridge.framework/ObjFW_Bridge rm $prefix/armv7/Frameworks/ObjFW.framework/ObjFW mv $prefix/armv7/Frameworks/ObjFW.framework/* \ $prefix/Frameworks/ObjFW.framework/ rm $prefix/armv7/Frameworks/ObjFW_Bridge.framework/ObjFW_Bridge mv $prefix/armv7/Frameworks/ObjFW_Bridge.framework/* \ $prefix/Frameworks/ObjFW_Bridge.framework/ msg "Cleaning up" rm -fr $prefix/armv7 $prefix/arm64 $prefix/x86_64 |