-
-
Save dulacp/25dbe620422c07e0253e to your computer and use it in GitHub Desktop.
# Builds a Libjpeg framework for the iPhone and the iPhone Simulator. | |
# Creates a set of universal libraries that can be used on an iPhone and in the | |
# iPhone simulator. Then creates a pseudo-framework to make using libjpeg in Xcode | |
# less painful. | |
# | |
# To configure the script, define: | |
# IPHONE_SDKVERSION: iPhone SDK version (e.g. 8.1) | |
# | |
# Then go get the source tar.bz of the libjpeg you want to build, shove it in the | |
# same directory as this script, and run "./libjpeg.sh". Grab a cuppa. And voila. | |
#=============================================================================== | |
: ${LIB_VERSION:=8d} | |
# Current iPhone SDK | |
: ${IPHONE_SDKVERSION:=`xcodebuild -showsdks | grep iphoneos | egrep "[[:digit:]]+\.[[:digit:]]+" -o | tail -1`} | |
# Specific iPhone SDK | |
# : ${IPHONE_SDKVERSION:=8.1} | |
: ${XCODE_ROOT:=`xcode-select -print-path`} | |
: ${TARBALLDIR:=`pwd`} | |
: ${SRCDIR:=`pwd`/src} | |
: ${IOSBUILDDIR:=`pwd`/ios/build} | |
: ${OSXBUILDDIR:=`pwd`/osx/build} | |
: ${PREFIXDIR:=`pwd`/ios/prefix} | |
: ${IOSFRAMEWORKDIR:=`pwd`/ios/framework} | |
: ${OSXFRAMEWORKDIR:=`pwd`/osx/framework} | |
LIB_TARBALL=$TARBALLDIR/jpegsrc.v$LIB_VERSION.tar.gz | |
LIB_SRC=$SRCDIR/jpeg-${LIB_VERSION} | |
#=============================================================================== | |
ARM_DEV_CMD="xcrun --sdk iphoneos" | |
SIM_DEV_CMD="xcrun --sdk iphonesimulator" | |
#=============================================================================== | |
# Functions | |
#=============================================================================== | |
abort() | |
{ | |
echo | |
echo "Aborted: $@" | |
exit 1 | |
} | |
doneSection() | |
{ | |
echo | |
echo "=================================================================" | |
echo "Done" | |
echo | |
} | |
#=============================================================================== | |
cleanEverythingReadyToStart() | |
{ | |
echo Cleaning everything before we start to build... | |
rm -rf iphone-build iphonesim-build | |
rm -rf $IOSBUILDDIR | |
rm -rf $PREFIXDIR | |
rm -rf $IOSFRAMEWORKDIR/$FRAMEWORK_NAME.framework | |
doneSection | |
} | |
#=============================================================================== | |
downloadLibjpeg() | |
{ | |
if [ ! -s $LIB_TARBALL ]; then | |
echo "Downloading libjpeg ${LIB_VERSION}" | |
curl -L -o $LIB_TARBALL http://www.ijg.org/files/jpegsrc.v${LIB_VERSION}.tar.gz | |
fi | |
doneSection | |
} | |
#=============================================================================== | |
unpackLibjpeg() | |
{ | |
[ -f "$LIB_TARBALL" ] || abort "Source tarball missing." | |
echo Unpacking libjpeg into $SRCDIR... | |
[ -d $SRCDIR ] || mkdir -p $SRCDIR | |
[ -d $LIB_SRC ] || ( cd $SRCDIR; tar xfj $LIB_TARBALL ) | |
[ -d $LIB_SRC ] && echo " ...unpacked as $LIB_SRC" | |
doneSection | |
} | |
#=============================================================================== | |
buildLibjpegForIPhoneOS() | |
{ | |
export CC=$XCODE_ROOT/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang | |
export CC_BASENAME=clang | |
export CXX=$XCODE_ROOT/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ | |
export CXX_BASENAME=clang++ | |
echo Building Libjpeg for iPhoneSimulator | |
mkdir -p $LIB_SRC/iphonesim-build | |
cd $LIB_SRC/iphonesim-build | |
export CFLAGS="-O3 -arch i386 -arch x86_64 -isysroot $XCODE_ROOT/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator${IPHONE_SDKVERSION}.sdk -mios-simulator-version-min=${IPHONE_SDKVERSION} -Wno-error-implicit-function-declaration" | |
../configure --prefix=$PREFIXDIR/iphonesim-build --disable-dependency-tracking --enable-static=yes --enable-shared=no | |
make | |
make install | |
doneSection | |
echo Building Libjpeg for iPhone | |
mkdir -p $LIB_SRC/iphone-build | |
cd $LIB_SRC/iphone-build | |
export CFLAGS="-O3 -arch armv7 -arch armv7s -arch arm64 -isysroot $XCODE_ROOT/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS${IPHONE_SDKVERSION}.sdk -mios-version-min=${IPHONE_SDKVERSION}" | |
../configure --host=arm-apple-darwin --prefix=$PREFIXDIR/iphone-build --disable-dependency-tracking --enable-static=yes --enable-shared=no | |
make | |
make install | |
doneSection | |
} | |
#=============================================================================== | |
scrunchAllLibsTogetherInOneLibPerPlatform() | |
{ | |
cd $PREFIXDIR | |
# iOS Device | |
mkdir -p $IOSBUILDDIR/armv7 | |
mkdir -p $IOSBUILDDIR/armv7s | |
mkdir -p $IOSBUILDDIR/arm64 | |
# iOS Simulator | |
mkdir -p $IOSBUILDDIR/i386 | |
mkdir -p $IOSBUILDDIR/x86_64 | |
echo Splitting all existing fat binaries... | |
$ARM_DEV_CMD lipo "iphone-build/lib/libjpeg.a" -thin armv7 -o $IOSBUILDDIR/armv7/libjpeg.a | |
$ARM_DEV_CMD lipo "iphone-build/lib/libjpeg.a" -thin armv7s -o $IOSBUILDDIR/armv7s/libjpeg.a | |
$ARM_DEV_CMD lipo "iphone-build/lib/libjpeg.a" -thin arm64 -o $IOSBUILDDIR/arm64/libjpeg.a | |
$SIM_DEV_CMD lipo "iphonesim-build/lib/libjpeg.a" -thin i386 -o $IOSBUILDDIR/i386/libjpeg.a | |
$SIM_DEV_CMD lipo "iphonesim-build/lib/libjpeg.a" -thin x86_64 -o $IOSBUILDDIR/x86_64/libjpeg.a | |
} | |
#=============================================================================== | |
buildFramework() | |
{ | |
: ${1:?} | |
FRAMEWORKDIR=$1 | |
BUILDDIR=$2 | |
VERSION_TYPE=Alpha | |
FRAMEWORK_NAME=libjpeg | |
FRAMEWORK_VERSION=A | |
FRAMEWORK_CURRENT_VERSION=$LIB_VERSION | |
FRAMEWORK_COMPATIBILITY_VERSION=$LIB_VERSION | |
FRAMEWORK_BUNDLE=$FRAMEWORKDIR/$FRAMEWORK_NAME.framework | |
echo "Framework: Building $FRAMEWORK_BUNDLE from $BUILDDIR..." | |
rm -rf $FRAMEWORK_BUNDLE | |
echo "Framework: Setting up directories..." | |
mkdir -p $FRAMEWORK_BUNDLE | |
mkdir -p $FRAMEWORK_BUNDLE/Versions | |
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION | |
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/Resources | |
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/Headers | |
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/Documentation | |
echo "Framework: Creating symlinks..." | |
ln -s $FRAMEWORK_VERSION $FRAMEWORK_BUNDLE/Versions/Current | |
ln -s Versions/Current/Headers $FRAMEWORK_BUNDLE/Headers | |
ln -s Versions/Current/Resources $FRAMEWORK_BUNDLE/Resources | |
ln -s Versions/Current/Documentation $FRAMEWORK_BUNDLE/Documentation | |
ln -s Versions/Current/$FRAMEWORK_NAME $FRAMEWORK_BUNDLE/$FRAMEWORK_NAME | |
FRAMEWORK_INSTALL_NAME=$FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/$FRAMEWORK_NAME | |
echo "Lipoing library into $FRAMEWORK_INSTALL_NAME..." | |
$ARM_DEV_CMD lipo -create $BUILDDIR/*/libjpeg.a -o "$FRAMEWORK_INSTALL_NAME" || abort "Lipo $1 failed" | |
echo "Framework: Copying includes..." | |
cp -r $PREFIXDIR/include/libjpeg/* $FRAMEWORK_BUNDLE/Headers/ | |
echo "Framework: Creating plist..." | |
cat > $FRAMEWORK_BUNDLE/Resources/Info.plist <<EOF | |
<?xml version="1.0" encoding="UTF-8"?> | |
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
<plist version="1.0"> | |
<dict> | |
<key>CFBundleDevelopmentRegion</key> | |
<string>English</string> | |
<key>CFBundleExecutable</key> | |
<string>${FRAMEWORK_NAME}</string> | |
<key>CFBundleIdentifier</key> | |
<string>org.libjpeg</string> | |
<key>CFBundleInfoDictionaryVersion</key> | |
<string>6.0</string> | |
<key>CFBundlePackageType</key> | |
<string>FMWK</string> | |
<key>CFBundleSignature</key> | |
<string>????</string> | |
<key>CFBundleVersion</key> | |
<string>${FRAMEWORK_CURRENT_VERSION}</string> | |
</dict> | |
</plist> | |
EOF | |
doneSection | |
} | |
#=============================================================================== | |
# Execution starts here | |
#=============================================================================== | |
mkdir -p $IOSBUILDDIR | |
# cleanEverythingReadyToStart #may want to comment if repeatedly running during dev | |
echo "LIB_VERSION: $LIB_VERSION" | |
echo "LIB_SRC: $LIB_SRC" | |
echo "IOSBUILDDIR: $IOSBUILDDIR" | |
echo "PREFIXDIR: $PREFIXDIR" | |
echo "IOSFRAMEWORKDIR: $IOSFRAMEWORKDIR" | |
echo "IPHONE_SDKVERSION: $IPHONE_SDKVERSION" | |
echo "XCODE_ROOT: $XCODE_ROOT" | |
echo | |
downloadLibjpeg | |
unpackLibjpeg | |
buildLibjpegForIPhoneOS | |
scrunchAllLibsTogetherInOneLibPerPlatform | |
buildFramework $IOSFRAMEWORKDIR $IOSBUILDDIR | |
echo "Completed successfully" | |
#=============================================================================== |
I try to compile the Jpeg-9b in MacX 10.12.4, xcode 8.3 for ios. It always meet the following the error.
Building Libjpeg for iPhoneSimulator
checking build system type... x86_64-apple-darwin16.5.0
checking host system type... x86_64-apple-darwin16.5.0
checking target system type... x86_64-apple-darwin16.5.0
checking for a BSD-compatible install... /opt/local/bin/ginstall -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /opt/local/bin/gmkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... configure: error: in /Users/aiquantong/Desktop/jpeg9b/libjpegSh/src/jpeg-9b/iphonesim-build': configure: error: cannot run C compiled programs. If you meant to cross compile, use
--host'.
So I change the code as the following to add the --host for iphoneSim
export CFLAGS="-O3 -arch i386 -arch x86_64 -isysroot
../configure --host=x86_64-apple-darwin --prefix=$PREFIXDIR/iphonesim-build --disable-dependency-tracking --enable-static=yes --enable-shared=no
Please Pay attend to it.
I've fixed this bug, simply add a host to make configure think it is cross compile and it works as expected
https://gist.github.com/eminarcissus/108c2ac0c7c9124b65709b44edabd424
Thx for the code, how could I fork it to OS X version?
I am using OSX 10.12.6 and XCode 9.0.1.
When I run the script, I see errors:
Building Libjpeg for iPhone
configure: WARNING: if you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used
checking build system type... x86_64-apple-darwin16.7.0
checking host system type... arm-apple-darwin
checking target system type... arm-apple-darwin
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for arm-apple-darwin-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... .././install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for arm-apple-darwin-gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
checking whether the C compiler works... no
configure: error: in `/Users/xungong/Developer/Library/jpeg-9b/src/jpeg-8d/iphone-build':
configure: error: C compiler cannot create executables
Do you know why my C compiler doesn't work?
I had the same error. In my config.log it was saying -mios-simulator-version-min=11.4, ios 10 is the maximum deployment target for 32-bit targets. So I changed the minimum version to 7.0 and it worked. 7.0 was just my preference, I guess you can set it to 10.
Apple is making it difficult for you to compile 32-bit outputs. Better just compile for 64-bit. Also, i've the files are no more 'fat' so removed (commented) lipo related code. Here is my file:
# Builds a Libjpeg framework for the iPhone and the iPhone Simulator.
# Creates a set of universal libraries that can be used on an iPhone and in the
# iPhone simulator. Then creates a pseudo-framework to make using libjpeg in Xcode
# less painful.
#
# To configure the script, define:
# IPHONE_SDKVERSION: iPhone SDK version (e.g. 8.1)
#
# Then go get the source tar.bz of the libjpeg you want to build, shove it in the
# same directory as this script, and run "./libjpeg.sh". Grab a cuppa. And voila.
#===============================================================================
: ${LIB_VERSION:=8d}
# Current iPhone SDK
: ${IPHONE_SDKVERSION:=`xcodebuild -showsdks | grep iphoneos | egrep "[[:digit:]]+\.[[:digit:]]+" -o | tail -1`}
# Specific iPhone SDK
# : ${IPHONE_SDKVERSION:=8.1}
: ${XCODE_ROOT:=`xcode-select -print-path`}
: ${TARBALLDIR:=`pwd`}
: ${SRCDIR:=`pwd`/src}
: ${IOSBUILDDIR:=`pwd`/ios/build}
: ${OSXBUILDDIR:=`pwd`/osx/build}
: ${PREFIXDIR:=`pwd`/ios/prefix}
: ${IOSFRAMEWORKDIR:=`pwd`/ios/framework}
: ${OSXFRAMEWORKDIR:=`pwd`/osx/framework}
LIB_TARBALL=$TARBALLDIR/jpegsrc.v$LIB_VERSION.tar.gz
LIB_SRC=$SRCDIR/jpeg-${LIB_VERSION}
#===============================================================================
ARM_DEV_CMD="xcrun --sdk iphoneos"
SIM_DEV_CMD="xcrun --sdk iphonesimulator"
#===============================================================================
# Functions
#===============================================================================
abort()
{
echo
echo "Aborted: $@"
exit 1
}
doneSection()
{
echo
echo "================================================================="
echo "Done"
echo
}
#===============================================================================
cleanEverythingReadyToStart()
{
echo Cleaning everything before we start to build...
rm -rf iphone-build iphonesim-build
rm -rf $IOSBUILDDIR
rm -rf $PREFIXDIR
rm -rf $IOSFRAMEWORKDIR/$FRAMEWORK_NAME.framework
doneSection
}
#===============================================================================
downloadLibjpeg()
{
if [ ! -s $LIB_TARBALL ]; then
echo "Downloading libjpeg ${LIB_VERSION}"
curl -L -o $LIB_TARBALL http://www.ijg.org/files/jpegsrc.v${LIB_VERSION}.tar.gz
fi
doneSection
}
#===============================================================================
unpackLibjpeg()
{
[ -f "$LIB_TARBALL" ] || abort "Source tarball missing."
echo Unpacking libjpeg into $SRCDIR...
[ -d $SRCDIR ] || mkdir -p $SRCDIR
[ -d $LIB_SRC ] || ( cd $SRCDIR; tar xfj $LIB_TARBALL )
[ -d $LIB_SRC ] && echo " ...unpacked as $LIB_SRC"
doneSection
}
#===============================================================================
buildLibjpegForIPhoneOS()
{
export CC=$XCODE_ROOT/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
export CC_BASENAME=clang
export CXX=$XCODE_ROOT/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
export CXX_BASENAME=clang++
echo Building Libjpeg for iPhoneSimulator
mkdir -p $LIB_SRC/iphonesim-build
cd $LIB_SRC/iphonesim-build
export CFLAGS="-O3 -arch x86_64 -isysroot $XCODE_ROOT/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator${IPHONE_SDKVERSION}.sdk -mios-simulator-version-min=${IPHONE_SDKVERSION} -Wno-error-implicit-function-declaration"
../configure --prefix=$PREFIXDIR/iphonesim-build --disable-dependency-tracking --enable-static=yes --enable-shared=no --host=i686-pc-none
make
make install
doneSection
echo Building Libjpeg for iPhone
mkdir -p $LIB_SRC/iphone-build
cd $LIB_SRC/iphone-build
export CFLAGS="-O3 -arch arm64 -isysroot $XCODE_ROOT/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS${IPHONE_SDKVERSION}.sdk -mios-version-min=${IPHONE_SDKVERSION}"
../configure --host=arm-apple-darwin --prefix=$PREFIXDIR/iphone-build --disable-dependency-tracking --enable-static=yes --enable-shared=no
make
make install
doneSection
}
#===============================================================================
scrunchAllLibsTogetherInOneLibPerPlatform()
{
cd $PREFIXDIR
# iOS Device
#mkdir -p $IOSBUILDDIR/armv7
#mkdir -p $IOSBUILDDIR/armv7s
mkdir -p $IOSBUILDDIR/arm64
# iOS Simulator
#mkdir -p $IOSBUILDDIR/i386
mkdir -p $IOSBUILDDIR/x86_64
echo Splitting all existing fat binaries...
#$ARM_DEV_CMD lipo "iphone-build/lib/libjpeg.a" -thin armv7 -o $IOSBUILDDIR/armv7/libjpeg.a
#$ARM_DEV_CMD lipo "iphone-build/lib/libjpeg.a" -thin armv7s -o $IOSBUILDDIR/armv7s/libjpeg.a
#$ARM_DEV_CMD lipo "iphone-build/lib/libjpeg.a" -thin arm64 -o $IOSBUILDDIR/arm64/libjpeg.a
$ARM_DEV_CMD cp "iphone-build/lib/libjpeg.a" $IOSBUILDDIR/arm64/libjpeg.a
#$SIM_DEV_CMD lipo "iphonesim-build/lib/libjpeg.a" -thin i386 -o $IOSBUILDDIR/i386/libjpeg.a
#$SIM_DEV_CMD lipo "iphonesim-build/lib/libjpeg.a" -thin x86_64 -o $IOSBUILDDIR/x86_64/libjpeg.a
$SIM_DEV_CMD cp "iphonesim-build/lib/libjpeg.a" $IOSBUILDDIR/x86_64/libjpeg.a
}
#===============================================================================
buildFramework()
{
: ${1:?}
FRAMEWORKDIR=$1
BUILDDIR=$2
VERSION_TYPE=Alpha
FRAMEWORK_NAME=libjpeg
FRAMEWORK_VERSION=A
FRAMEWORK_CURRENT_VERSION=$LIB_VERSION
FRAMEWORK_COMPATIBILITY_VERSION=$LIB_VERSION
FRAMEWORK_BUNDLE=$FRAMEWORKDIR/$FRAMEWORK_NAME.framework
echo "Framework: Building $FRAMEWORK_BUNDLE from $BUILDDIR..."
rm -rf $FRAMEWORK_BUNDLE
echo "Framework: Setting up directories..."
mkdir -p $FRAMEWORK_BUNDLE
mkdir -p $FRAMEWORK_BUNDLE/Versions
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/Resources
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/Headers
mkdir -p $FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/Documentation
echo "Framework: Creating symlinks..."
ln -s $FRAMEWORK_VERSION $FRAMEWORK_BUNDLE/Versions/Current
ln -s Versions/Current/Headers $FRAMEWORK_BUNDLE/Headers
ln -s Versions/Current/Resources $FRAMEWORK_BUNDLE/Resources
ln -s Versions/Current/Documentation $FRAMEWORK_BUNDLE/Documentation
ln -s Versions/Current/$FRAMEWORK_NAME $FRAMEWORK_BUNDLE/$FRAMEWORK_NAME
FRAMEWORK_INSTALL_NAME=$FRAMEWORK_BUNDLE/Versions/$FRAMEWORK_VERSION/$FRAMEWORK_NAME
echo "Lipoing library into $FRAMEWORK_INSTALL_NAME..."
$ARM_DEV_CMD lipo -create $BUILDDIR/*/libjpeg.a -o "$FRAMEWORK_INSTALL_NAME" || abort "Lipo $1 failed"
echo "Framework: Copying includes..."
cp -r $PREFIXDIR/include/libjpeg/* $FRAMEWORK_BUNDLE/Headers/
echo "Framework: Creating plist..."
cat > $FRAMEWORK_BUNDLE/Resources/Info.plist <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>${FRAMEWORK_NAME}</string>
<key>CFBundleIdentifier</key>
<string>org.libjpeg</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>${FRAMEWORK_CURRENT_VERSION}</string>
</dict>
</plist>
EOF
doneSection
}
#===============================================================================
# Execution starts here
#===============================================================================
mkdir -p $IOSBUILDDIR
# cleanEverythingReadyToStart #may want to comment if repeatedly running during dev
echo "LIB_VERSION: $LIB_VERSION"
echo "LIB_SRC: $LIB_SRC"
echo "IOSBUILDDIR: $IOSBUILDDIR"
echo "PREFIXDIR: $PREFIXDIR"
echo "IOSFRAMEWORKDIR: $IOSFRAMEWORKDIR"
echo "IPHONE_SDKVERSION: $IPHONE_SDKVERSION"
echo "XCODE_ROOT: $XCODE_ROOT"
echo
downloadLibjpeg
unpackLibjpeg
buildLibjpegForIPhoneOS
scrunchAllLibsTogetherInOneLibPerPlatform
buildFramework $IOSFRAMEWORKDIR $IOSBUILDDIR
echo "Completed successfully"
#===============================================================================
Excellent piece of code! It worked out of the box for me. The only edit I needed to make was changing lib's version to 9b.