summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordcommander <dcommander@3789f03b-4d11-0410-bbf8-ca57d06f2519>2012-02-10 01:07:59 +0000
committerdcommander <dcommander@3789f03b-4d11-0410-bbf8-ca57d06f2519>2012-02-10 01:07:59 +0000
commitbecf383445f7dbd5aa351da6376e3619d661f945 (patch)
tree6be63fe963d6dfa567736674d56b17a13f1a734a
parentac83c1bb29ca700270bcee062600d47808eff041 (diff)
Clean up the iOS packaging mechanism so that ARM architectures can be added to i386-only builds as well.
git-svn-id: https://libjpeg-turbo.svn.sourceforge.net/svnroot/libjpeg-turbo@791 3789f03b-4d11-0410-bbf8-ca57d06f2519
-rw-r--r--trunk/Makefile.am13
-rw-r--r--trunk/release/makemacpkg.in138
2 files changed, 83 insertions, 68 deletions
diff --git a/trunk/Makefile.am b/trunk/Makefile.am
index 9af4cde..c6f7769 100644
--- a/trunk/Makefile.am
+++ b/trunk/Makefile.am
@@ -288,13 +288,22 @@ srpm: dist-gzip
deb: all
sh pkgscripts/makedpkg
+BUILDDIR32=@abs_top_srcdir@/osxx86
+BUILDDIRARMV6=@abs_top_srcdir@/iosarmv6
+BUILDDIRARMV7=@abs_top_srcdir@/iosarmv7
+
if X86_64
udmg: all
- sh pkgscripts/makemacpkg universal ${BUILDDIR32}
+ sh pkgscripts/makemacpkg -builddir32 ${BUILDDIR32}
+
+iosdmg: all
+ sh pkgscripts/makemacpkg -builddir32 ${BUILDDIR32} -builddirarmv6 ${BUILDDIRARMV6} -builddirarmv7 ${BUILDDIRARMV7}
+
+else
iosdmg: all
- sh pkgscripts/makemacpkg ios ${BUILDDIR32} ${BUILDDIRARMV6} ${BUILDDIRARMV7}
+ sh pkgscripts/makemacpkg -builddirarmv6 ${BUILDDIRARMV6} -builddirarmv7 ${BUILDDIRARMV7}
endif
diff --git a/trunk/release/makemacpkg.in b/trunk/release/makemacpkg.in
index 3a1f800..2c4f77b 100644
--- a/trunk/release/makemacpkg.in
+++ b/trunk/release/makemacpkg.in
@@ -15,30 +15,29 @@ onexit()
fi
}
-UNIVERSAL=0
-IOS=0
+usage()
+{
+ echo "$0 [-builddir32 [32-bit build dir]] [-builddirarmv6 [ARM v6 build dir]] [-builddirarmv7 [ARM v7 build dir]]"
+ exit 1
+}
PACKAGE_NAME=@PACKAGE_NAME@
VERSION=@VERSION@
BUILD=@BUILD@
SRCDIR=@abs_top_srcdir@
-BUILDDIR32=@abs_top_srcdir@/osxx86
-BUILDDIRARMV6=@abs_top_srcdir@/iosarmv6
-BUILDDIRARMV7=@abs_top_srcdir@/iosarmv7
+BUILDDIR32=
+BUILDDIRARMV6=
+BUILDDIRARMV7=
WITH_JAVA=@WITH_JAVA@
-if [ $# -gt 0 ]; then
- if [ "$1" = "universal" ]; then
- UNIVERSAL=1
- if [ $# -gt 1 ]; then BUILDDIR32=$2; fi
- fi
- if [ "$1" = "ios" ]; then
- UNIVERSAL=1
- IOS=1
- if [ $# -gt 1 ]; then BUILDDIR32=$2; fi
- if [ $# -gt 2 ]; then BUILDDIRARMV6=$3; fi
- if [ $# -gt 3 ]; then BUILDDIRARMV7=$4; fi
- fi
-fi
+while [ $# -gt 0 ]; do
+ case $1 in
+ -h*) usage 0 ;;
+ -builddir32) BUILDDIR32=$2; shift ;;
+ -builddirarmv6) BUILDDIRARMV6=$2; shift ;;
+ -builddirarmv7) BUILDDIRARMV7=$2; shift ;;
+ esac
+ shift
+done
PACKAGEMAKER=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker
if [ -f $PACKAGE_NAME-$VERSION.dmg ]; then
@@ -57,7 +56,7 @@ mv $PKGROOT/opt/$PACKAGE_NAME/lib/libturbojpeg.* $PKGROOT/usr/lib
mkdir -p $PKGROOT/usr/include
mv $PKGROOT/opt/$PACKAGE_NAME/include/turbojpeg.h $PKGROOT/usr/include
-if [ $UNIVERSAL = 1 ]; then
+if [ ! "$BUILDDIR32" = "" ]; then
if [ ! -d $BUILDDIR32 ]; then
echo ERROR: 32-bit build directory $BUILDDIR32 does not exist
exit 1
@@ -83,58 +82,19 @@ if [ $UNIVERSAL = 1 ]; then
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \
-output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib
fi
- if [ $IOS = 1 ]; then
- if [ ! -d $BUILDDIRARMV6 ]; then
- echo ERROR: ARM v6 build directory $BUILDDIRARMV6 does not exist
- exit 1
- fi
- if [ ! -f $BUILDDIRARMV6/Makefile ]; then
- echo ERROR: ARM v6 build directory $BUILDDIRARMV6 is not configured
- exit 1
- fi
- mkdir -p $TMPDIR/dist.armv6
- pushd $BUILDDIRARMV6
- make install DESTDIR=$TMPDIR/dist.armv6
- popd
- if [ ! -d $BUILDDIRARMV7 ]; then
- echo ERROR: ARM v7 build directory $BUILDDIRARMV7 does not exist
- exit 1
- fi
- if [ ! -f $BUILDDIRARMV7/Makefile ]; then
- echo ERROR: ARM v7 build directory $BUILDDIRARMV7 is not configured
- exit 1
- fi
- mkdir -p $TMPDIR/dist.armv7
- pushd $BUILDDIRARMV7
- make install DESTDIR=$TMPDIR/dist.armv7
- popd
- lipo -create \
- -arch arm $TMPDIR/dist.armv6/opt/$PACKAGE_NAME/lib/libjpeg.a \
- -arch arm $TMPDIR/dist.armv7/opt/$PACKAGE_NAME/lib/libjpeg.a \
- -arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.a \
- -arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a \
- -output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a
- lipo -create \
- -arch arm $TMPDIR/dist.armv6/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
- -arch arm $TMPDIR/dist.armv7/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
- -arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
- -arch x86_64 $PKGROOT/usr/lib/libturbojpeg.a \
- -output $PKGROOT/usr/lib/libturbojpeg.a
- else
- lipo -create \
- -arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.a \
- -arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a \
- -output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a
- lipo -create \
- -arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
- -arch x86_64 $PKGROOT/usr/lib/libturbojpeg.a \
- -output $PKGROOT/usr/lib/libturbojpeg.a
- fi
+ lipo -create \
+ -arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libjpeg.a \
+ -arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a \
+ -output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a
lipo -create \
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libturbojpeg.dylib \
-arch x86_64 $PKGROOT/usr/lib/libturbojpeg.dylib \
-output $PKGROOT/usr/lib/libturbojpeg.dylib
lipo -create \
+ -arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
+ -arch x86_64 $PKGROOT/usr/lib/libturbojpeg.a \
+ -output $PKGROOT/usr/lib/libturbojpeg.a
+ lipo -create \
-arch i386 $TMPDIR/dist.x86/opt/$PACKAGE_NAME/bin/cjpeg \
-arch x86_64 $PKGROOT/opt/$PACKAGE_NAME/bin/cjpeg \
-output $PKGROOT/opt/$PACKAGE_NAME/bin/cjpeg
@@ -161,6 +121,52 @@ if [ $UNIVERSAL = 1 ]; then
fi
+if [ ! "$BUILDDIRARMV6" = "" ]; then
+ if [ ! -d $BUILDDIRARMV6 ]; then
+ echo ERROR: ARM v6 build directory $BUILDDIRARMV6 does not exist
+ exit 1
+ fi
+ if [ ! -f $BUILDDIRARMV6/Makefile ]; then
+ echo ERROR: ARM v6 build directory $BUILDDIRARMV6 is not configured
+ exit 1
+ fi
+ mkdir -p $TMPDIR/dist.armv6
+ pushd $BUILDDIRARMV6
+ make install DESTDIR=$TMPDIR/dist.armv6
+ popd
+ lipo -create \
+ $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a \
+ -arch arm $TMPDIR/dist.armv6/opt/$PACKAGE_NAME/lib/libjpeg.a \
+ -output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a
+ lipo -create \
+ $PKGROOT/usr/lib/libturbojpeg.a \
+ -arch arm $TMPDIR/dist.armv6/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
+ -output $PKGROOT/usr/lib/libturbojpeg.a
+fi
+
+if [ ! "$BUILDDIRARMV7" = "" ]; then
+ if [ ! -d $BUILDDIRARMV7 ]; then
+ echo ERROR: ARM v7 build directory $BUILDDIRARMV7 does not exist
+ exit 1
+ fi
+ if [ ! -f $BUILDDIRARMV7/Makefile ]; then
+ echo ERROR: ARM v7 build directory $BUILDDIRARMV7 is not configured
+ exit 1
+ fi
+ mkdir -p $TMPDIR/dist.armv7
+ pushd $BUILDDIRARMV7
+ make install DESTDIR=$TMPDIR/dist.armv7
+ popd
+ lipo -create \
+ $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a \
+ -arch arm $TMPDIR/dist.armv7/opt/$PACKAGE_NAME/lib/libjpeg.a \
+ -output $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.a
+ lipo -create \
+ $PKGROOT/usr/lib/libturbojpeg.a \
+ -arch arm $TMPDIR/dist.armv7/opt/$PACKAGE_NAME/lib/libturbojpeg.a \
+ -output $PKGROOT/usr/lib/libturbojpeg.a
+fi
+
install_name_tool -id /opt/$PACKAGE_NAME/lib/libjpeg.@SO_MAJOR_VERSION@.dylib $PKGROOT/opt/$PACKAGE_NAME/lib/libjpeg.@SO_MAJOR_VERSION@.dylib
install_name_tool -id libturbojpeg.dylib $PKGROOT/usr/lib/libturbojpeg.dylib