diff options
author | dcommander <dcommander@632fc199-4ca6-4c93-a231-07263d6284db> | 2014-12-19 18:28:00 +0000 |
---|---|---|
committer | dcommander <dcommander@632fc199-4ca6-4c93-a231-07263d6284db> | 2014-12-19 18:28:00 +0000 |
commit | b82eb85957af9710ce2d434b5e058c82606c972f (patch) | |
tree | f1f6eef43828bf6a9ba62ad58387566431c91ad6 /release | |
parent | 551c99f492c50793a258e725fbf077cbc98bca81 (diff) |
Include ARMv8 binaries when generating a combined OS X/iOS package using 'make iosdmg'
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1458 632fc199-4ca6-4c93-a231-07263d6284db
Diffstat (limited to 'release')
-rw-r--r-- | release/makemacpkg.in | 184 |
1 files changed, 133 insertions, 51 deletions
diff --git a/release/makemacpkg.in b/release/makemacpkg.in index d0edecb..7163757 100644 --- a/release/makemacpkg.in +++ b/release/makemacpkg.in @@ -17,7 +17,7 @@ onexit() usage() { - echo "$0 [-build32 [32-bit build dir]] [-buildarmv6 [ARM v6 build dir]] [-buildarmv7 [ARM v7 build dir]] [-buildarmv7s [ARM v7s build dir]]" + echo "$0 [-build32 [32-bit build dir]] [-buildarmv6 [ARMv6 build dir]] [-buildarmv7 [ARMv7 build dir]] [-buildarmv7s [ARMv7s build dir] [-buildarmv8 [ARMv8 build dir]] [-lipo [path to lipo]]" exit 1 } @@ -33,7 +33,10 @@ BUILDDIRARMV7=@abs_top_srcdir@/iosarmv7 BUILDARMV7=0 BUILDDIRARMV7S=@abs_top_srcdir@/iosarmv7s BUILDARMV7S=0 +BUILDDIRARMV8=@abs_top_srcdir@/iosarmv8 +BUILDARMV8=0 WITH_JAVA=@WITH_JAVA@ +LIPO=lipo PREFIX=%{__prefix} BINDIR=%{__bindir} @@ -75,6 +78,21 @@ while [ $# -gt 0 ]; do fi fi ;; + -buildarmv8) + BUILDARMV8=1 + if [ $# -gt 1 ]; then + if [[ ! "$2" =~ -.* ]]; then + BUILDDIRARMV8=$2; shift + fi + fi + ;; + -lipo) + if [ $# -gt 1 ]; then + if [[ ! "$2" =~ -.* ]]; then + LIPO=$2; shift + fi + fi + ;; esac shift done @@ -110,50 +128,50 @@ if [ $BUILD32 = 1 ]; then popd if [ ! -h $TMPDIR/dist.x86/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -arch x86_64 $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib elif [ ! -h $TMPDIR/dist.x86/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -arch x86_64 $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib fi - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$LIBDIR/libjpeg.a \ -arch x86_64 $PKGROOT/$LIBDIR/libjpeg.a \ -output $PKGROOT/$LIBDIR/libjpeg.a - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$LIBDIR/libturbojpeg.0.dylib \ -arch x86_64 $PKGROOT/$LIBDIR/libturbojpeg.0.dylib \ -output $PKGROOT/$LIBDIR/libturbojpeg.0.dylib - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$LIBDIR/libturbojpeg.a \ -arch x86_64 $PKGROOT/$LIBDIR/libturbojpeg.a \ -output $PKGROOT/$LIBDIR/libturbojpeg.a - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$BINDIR/cjpeg \ -arch x86_64 $PKGROOT/$BINDIR/cjpeg \ -output $PKGROOT/$BINDIR/cjpeg - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$BINDIR/djpeg \ -arch x86_64 $PKGROOT/$BINDIR/djpeg \ -output $PKGROOT/$BINDIR/djpeg - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$BINDIR/jpegtran \ -arch x86_64 $PKGROOT/$BINDIR/jpegtran \ -output $PKGROOT/$BINDIR/jpegtran - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$BINDIR/tjbench \ -arch x86_64 $PKGROOT/$BINDIR/tjbench \ -output $PKGROOT/$BINDIR/tjbench - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$BINDIR/rdjpgcom \ -arch x86_64 $PKGROOT/$BINDIR/rdjpgcom \ -output $PKGROOT/$BINDIR/rdjpgcom - lipo -create \ + $LIPO -create \ -arch i386 $TMPDIR/dist.x86/$BINDIR/wrjpgcom \ -arch x86_64 $PKGROOT/$BINDIR/wrjpgcom \ -output $PKGROOT/$BINDIR/wrjpgcom @@ -162,11 +180,11 @@ fi if [ $BUILDARMV6 = 1 ]; then if [ ! -d $BUILDDIRARMV6 ]; then - echo ERROR: ARM v6 build directory $BUILDDIRARMV6 does not exist + echo ERROR: ARMv6 build directory $BUILDDIRARMV6 does not exist exit 1 fi if [ ! -f $BUILDDIRARMV6/Makefile ]; then - echo ERROR: ARM v6 build directory $BUILDDIRARMV6 is not configured + echo ERROR: ARMv6 build directory $BUILDDIRARMV6 is not configured exit 1 fi mkdir -p $TMPDIR/dist.armv6 @@ -175,50 +193,50 @@ if [ $BUILDARMV6 = 1 ]; then popd if [ ! -h $TMPDIR/dist.armv6/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -arch arm $TMPDIR/dist.armv6/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib elif [ ! -h $TMPDIR/dist.armv6/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -arch arm $TMPDIR/dist.armv6/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib fi - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.a \ -arch arm $TMPDIR/dist.armv6/$LIBDIR/libjpeg.a \ -output $PKGROOT/$LIBDIR/libjpeg.a - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libturbojpeg.0.dylib \ -arch arm $TMPDIR/dist.armv6/$LIBDIR/libturbojpeg.0.dylib \ -output $PKGROOT/$LIBDIR/libturbojpeg.0.dylib - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libturbojpeg.a \ -arch arm $TMPDIR/dist.armv6/$LIBDIR/libturbojpeg.a \ -output $PKGROOT/$LIBDIR/libturbojpeg.a - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/cjpeg \ -arch arm $TMPDIR/dist.armv6/$BINDIR/cjpeg \ -output $PKGROOT/$BINDIR/cjpeg - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/djpeg \ -arch arm $TMPDIR/dist.armv6/$BINDIR/djpeg \ -output $PKGROOT/$BINDIR/djpeg - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/jpegtran \ -arch arm $TMPDIR/dist.armv6/$BINDIR/jpegtran \ -output $PKGROOT/$BINDIR/jpegtran - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/tjbench \ -arch arm $TMPDIR/dist.armv6/$BINDIR/tjbench \ -output $PKGROOT/$BINDIR/tjbench - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/rdjpgcom \ -arch arm $TMPDIR/dist.armv6/$BINDIR/rdjpgcom \ -output $PKGROOT/$BINDIR/rdjpgcom - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/wrjpgcom \ -arch arm $TMPDIR/dist.armv6/$BINDIR/wrjpgcom \ -output $PKGROOT/$BINDIR/wrjpgcom @@ -226,11 +244,11 @@ fi if [ $BUILDARMV7 = 1 ]; then if [ ! -d $BUILDDIRARMV7 ]; then - echo ERROR: ARM v7 build directory $BUILDDIRARMV7 does not exist + echo ERROR: ARMv7 build directory $BUILDDIRARMV7 does not exist exit 1 fi if [ ! -f $BUILDDIRARMV7/Makefile ]; then - echo ERROR: ARM v7 build directory $BUILDDIRARMV7 is not configured + echo ERROR: ARMv7 build directory $BUILDDIRARMV7 is not configured exit 1 fi mkdir -p $TMPDIR/dist.armv7 @@ -239,50 +257,50 @@ if [ $BUILDARMV7 = 1 ]; then popd if [ ! -h $TMPDIR/dist.armv7/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -arch arm $TMPDIR/dist.armv7/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib elif [ ! -h $TMPDIR/dist.armv7/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -arch arm $TMPDIR/dist.armv7/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib fi - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.a \ -arch arm $TMPDIR/dist.armv7/$LIBDIR/libjpeg.a \ -output $PKGROOT/$LIBDIR/libjpeg.a - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libturbojpeg.0.dylib \ -arch arm $TMPDIR/dist.armv7/$LIBDIR/libturbojpeg.0.dylib \ -output $PKGROOT/$LIBDIR/libturbojpeg.0.dylib - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libturbojpeg.a \ -arch arm $TMPDIR/dist.armv7/$LIBDIR/libturbojpeg.a \ -output $PKGROOT/$LIBDIR/libturbojpeg.a - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/cjpeg \ -arch arm $TMPDIR/dist.armv7/$BINDIR/cjpeg \ -output $PKGROOT/$BINDIR/cjpeg - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/djpeg \ -arch arm $TMPDIR/dist.armv7/$BINDIR/djpeg \ -output $PKGROOT/$BINDIR/djpeg - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/jpegtran \ -arch arm $TMPDIR/dist.armv7/$BINDIR/jpegtran \ -output $PKGROOT/$BINDIR/jpegtran - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/tjbench \ -arch arm $TMPDIR/dist.armv7/$BINDIR/tjbench \ -output $PKGROOT/$BINDIR/tjbench - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/rdjpgcom \ -arch arm $TMPDIR/dist.armv7/$BINDIR/rdjpgcom \ -output $PKGROOT/$BINDIR/rdjpgcom - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/wrjpgcom \ -arch arm $TMPDIR/dist.armv7/$BINDIR/wrjpgcom \ -output $PKGROOT/$BINDIR/wrjpgcom @@ -290,11 +308,11 @@ fi if [ $BUILDARMV7S = 1 ]; then if [ ! -d $BUILDDIRARMV7S ]; then - echo ERROR: ARM v7s build directory $BUILDDIRARMV7S does not exist + echo ERROR: ARMv7s build directory $BUILDDIRARMV7S does not exist exit 1 fi if [ ! -f $BUILDDIRARMV7S/Makefile ]; then - echo ERROR: ARM v7s build directory $BUILDDIRARMV7S is not configured + echo ERROR: ARMv7s build directory $BUILDDIRARMV7S is not configured exit 1 fi mkdir -p $TMPDIR/dist.armv7s @@ -303,55 +321,119 @@ if [ $BUILDARMV7S = 1 ]; then popd if [ ! -h $TMPDIR/dist.armv7s/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -arch arm $TMPDIR/dist.armv7s/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib elif [ ! -h $TMPDIR/dist.armv7s/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib -a \ ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib ]; then - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -arch arm $TMPDIR/dist.armv7s/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib fi - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libjpeg.a \ -arch arm $TMPDIR/dist.armv7s/$LIBDIR/libjpeg.a \ -output $PKGROOT/$LIBDIR/libjpeg.a - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libturbojpeg.0.dylib \ -arch arm $TMPDIR/dist.armv7s/$LIBDIR/libturbojpeg.0.dylib \ -output $PKGROOT/$LIBDIR/libturbojpeg.0.dylib - lipo -create \ + $LIPO -create \ $PKGROOT/$LIBDIR/libturbojpeg.a \ -arch arm $TMPDIR/dist.armv7s/$LIBDIR/libturbojpeg.a \ -output $PKGROOT/$LIBDIR/libturbojpeg.a - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/cjpeg \ -arch arm $TMPDIR/dist.armv7s/$BINDIR/cjpeg \ -output $PKGROOT/$BINDIR/cjpeg - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/djpeg \ -arch arm $TMPDIR/dist.armv7s/$BINDIR/djpeg \ -output $PKGROOT/$BINDIR/djpeg - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/jpegtran \ -arch arm $TMPDIR/dist.armv7s/$BINDIR/jpegtran \ -output $PKGROOT/$BINDIR/jpegtran - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/tjbench \ -arch arm $TMPDIR/dist.armv7s/$BINDIR/tjbench \ -output $PKGROOT/$BINDIR/tjbench - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/rdjpgcom \ -arch arm $TMPDIR/dist.armv7s/$BINDIR/rdjpgcom \ -output $PKGROOT/$BINDIR/rdjpgcom - lipo -create \ + $LIPO -create \ $PKGROOT/$BINDIR/wrjpgcom \ -arch arm $TMPDIR/dist.armv7s/$BINDIR/wrjpgcom \ -output $PKGROOT/$BINDIR/wrjpgcom fi +if [ $BUILDARMV8 = 1 ]; then + if [ ! -d $BUILDDIRARMV8 ]; then + echo ERROR: ARMv8 build directory $BUILDDIRARMV8 does not exist + exit 1 + fi + if [ ! -f $BUILDDIRARMV8/Makefile ]; then + echo ERROR: ARMv8 build directory $BUILDDIRARMV8 is not configured + exit 1 + fi + mkdir -p $TMPDIR/dist.armv8 + pushd $BUILDDIRARMV8 + make install DESTDIR=$TMPDIR/dist.armv8 + popd + if [ ! -h $TMPDIR/dist.armv8/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib -a \ + ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib ]; then + $LIPO -create \ + $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ + -arch arm64 $TMPDIR/dist.armv8/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib \ + -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib + elif [ ! -h $TMPDIR/dist.armv8/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib -a \ + ! -h $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib ]; then + $LIPO -create \ + $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ + -arch arm64 $TMPDIR/dist.armv8/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib \ + -output $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.0.@SO_MINOR_VERSION@.dylib + fi + $LIPO -create \ + $PKGROOT/$LIBDIR/libjpeg.a \ + -arch arm64 $TMPDIR/dist.armv8/$LIBDIR/libjpeg.a \ + -output $PKGROOT/$LIBDIR/libjpeg.a + $LIPO -create \ + $PKGROOT/$LIBDIR/libturbojpeg.0.dylib \ + -arch arm64 $TMPDIR/dist.armv8/$LIBDIR/libturbojpeg.0.dylib \ + -output $PKGROOT/$LIBDIR/libturbojpeg.0.dylib + $LIPO -create \ + $PKGROOT/$LIBDIR/libturbojpeg.a \ + -arch arm64 $TMPDIR/dist.armv8/$LIBDIR/libturbojpeg.a \ + -output $PKGROOT/$LIBDIR/libturbojpeg.a + $LIPO -create \ + $PKGROOT/$BINDIR/cjpeg \ + -arch arm64 $TMPDIR/dist.armv8/$BINDIR/cjpeg \ + -output $PKGROOT/$BINDIR/cjpeg + $LIPO -create \ + $PKGROOT/$BINDIR/djpeg \ + -arch arm64 $TMPDIR/dist.armv8/$BINDIR/djpeg \ + -output $PKGROOT/$BINDIR/djpeg + $LIPO -create \ + $PKGROOT/$BINDIR/jpegtran \ + -arch arm64 $TMPDIR/dist.armv8/$BINDIR/jpegtran \ + -output $PKGROOT/$BINDIR/jpegtran + $LIPO -create \ + $PKGROOT/$BINDIR/tjbench \ + -arch arm64 $TMPDIR/dist.armv8/$BINDIR/tjbench \ + -output $PKGROOT/$BINDIR/tjbench + $LIPO -create \ + $PKGROOT/$BINDIR/rdjpgcom \ + -arch arm64 $TMPDIR/dist.armv8/$BINDIR/rdjpgcom \ + -output $PKGROOT/$BINDIR/rdjpgcom + $LIPO -create \ + $PKGROOT/$BINDIR/wrjpgcom \ + -arch arm64 $TMPDIR/dist.armv8/$BINDIR/wrjpgcom \ + -output $PKGROOT/$BINDIR/wrjpgcom +fi + install_name_tool -id $LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib $PKGROOT/$LIBDIR/libjpeg.@SO_MAJOR_VERSION@.dylib install_name_tool -id $LIBDIR/libturbojpeg.0.dylib $PKGROOT/$LIBDIR/libturbojpeg.0.dylib |