SHOW:
|
|
- or go back to the newest paste.
| 1 | #!/bin/sh | |
| 2 | # build.sh | |
| 3 | ||
| 4 | GLOBAL_OUTDIR="`pwd`/dependencies" | |
| 5 | LOCAL_OUTDIR="./outdir" | |
| 6 | TIFF_LIB="`pwd`/tiff-3.9.6" | |
| 7 | ||
| 8 | IOS_BASE_SDK="6.1" | |
| 9 | IOS_DEPLOY_TGT="6.1" | |
| 10 | ||
| 11 | setenv_all() | |
| 12 | {
| |
| 13 | # Add internal libs | |
| 14 | export CFLAGS="-O2 $CFLAGS -I$GLOBAL_OUTDIR/include -L$GLOBAL_OUTDIR/lib" | |
| 15 | ||
| 16 | export CXX="$DEVROOT/usr/bin/llvm-g++" | |
| 17 | export CC="$DEVROOT/usr/bin/llvm-gcc" | |
| 18 | ||
| 19 | export LD=$DEVROOT/usr/bin/ld | |
| 20 | export AR=$DEVROOT/usr/bin/ar | |
| 21 | export AS=$DEVROOT/usr/bin/as | |
| 22 | export NM=$DEVROOT/usr/bin/nm | |
| 23 | export RANLIB=$DEVROOT/usr/bin/ranlib | |
| 24 | - | export LDFLAGS="-L$SDKROOT/usr/lib/" |
| 24 | + | export LDFLAGS="-L$SDKROOT/usr/lib/ -L$GLOBAL_OUTDIR/lib -lz" |
| 25 | ||
| 26 | export CPPFLAGS=$CFLAGS | |
| 27 | export CXXFLAGS=$CFLAGS | |
| 28 | } | |
| 29 | ||
| 30 | setenv_armv7() | |
| 31 | {
| |
| 32 | unset DEVROOT SDKROOT CFLAGS CC LD CPP CXX AR AS NM CXXCPP RANLIB LDFLAGS CPPFLAGS CXXFLAGS | |
| 33 | ||
| 34 | export DEVROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer | |
| 35 | export SDKROOT=$DEVROOT/SDKs/iPhoneOS$IOS_BASE_SDK.sdk | |
| 36 | ||
| 37 | export CFLAGS="-arch armv7 -pipe -no-cpp-precomp -isysroot $SDKROOT -miphoneos-version-min=$IOS_DEPLOY_TGT -I$SDKROOT/usr/include/" | |
| 38 | ||
| 39 | setenv_all | |
| 40 | } | |
| 41 | ||
| 42 | setenv_i386() | |
| 43 | {
| |
| 44 | unset DEVROOT SDKROOT CFLAGS CC LD CPP CXX AR AS NM CXXCPP RANLIB LDFLAGS CPPFLAGS CXXFLAGS | |
| 45 | ||
| 46 | export DEVROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer | |
| 47 | export SDKROOT=$DEVROOT/SDKs/iPhoneSimulator$IOS_BASE_SDK.sdk | |
| 48 | ||
| 49 | export CFLAGS="-arch i386 -pipe -no-cpp-precomp -isysroot $SDKROOT -miphoneos-version-min=$IOS_DEPLOY_TGT" | |
| 50 | ||
| 51 | setenv_all | |
| 52 | } | |
| 53 | ||
| 54 | create_outdir_lipo() | |
| 55 | {
| |
| 56 | for lib_i386 in `find $LOCAL_OUTDIR/i386 -name "lib*\.a"`; do | |
| 57 | lib_armv7=`echo $lib_i386 | sed "s/i386/armv7/g"` | |
| 58 | lib=`echo $lib_i386 | sed "s/i386//g"` | |
| 59 | lipo -arch armv7 $lib_armv7 -arch i386 $lib_i386 -create -output $lib | |
| 60 | done | |
| 61 | } | |
| 62 | ||
| 63 | ####################### | |
| 64 | # LIBTIFF | |
| 65 | ####################### | |
| 66 | ||
| 67 | cd $TIFF_LIB | |
| 68 | rm -rf $LOCAL_OUTDIR | |
| 69 | mkdir -p $LOCAL_OUTDIR/armv7 $LOCAL_OUTDIR/i386 | |
| 70 | ||
| 71 | make clean 2> /dev/null | |
| 72 | make distclean 2> /dev/null | |
| 73 | echo "SETENV_i386" | |
| 74 | setenv_i386 | |
| 75 | echo "CONFIGURE" | |
| 76 | ./configure --enable-shared=no --prefix=`pwd`/$LOCAL_OUTDIR/i386 | |
| 77 | echo "MAKE" | |
| 78 | make -j4 | |
| 79 | echo "MAKE INSTALL" | |
| 80 | make install | |
| 81 | ||
| 82 | make clean 2> /dev/null | |
| 83 | make distclean 2> /dev/null | |
| 84 | echo "SETENV_ARMV7" | |
| 85 | setenv_armv7 | |
| 86 | echo "CONFIGURE" | |
| 87 | ./configure --host=arm-apple-darwin7 --enable-shared=no --prefix=`pwd`/$LOCAL_OUTDIR/armv7 | |
| 88 | echo "MAKE" | |
| 89 | make -j4 | |
| 90 | echo "MAKE INSTALL" | |
| 91 | make install | |
| 92 | ||
| 93 | # since we're installing the libraries into LOCAL_OUTDIR/<arch>/lib | |
| 94 | # create_outdir_lipo will try to put them in LOCAL_OUTDIR/lib | |
| 95 | mkdir -p $LOCAL_OUTDIR/lib | |
| 96 | create_outdir_lipo | |
| 97 | mkdir -p $GLOBAL_OUTDIR/include | |
| 98 | cp -rvf $LOCAL_OUTDIR/i386/include/*.h $GLOBAL_OUTDIR/include | |
| 99 | mkdir -p $GLOBAL_OUTDIR/lib | |
| 100 | cp -rvf $LOCAL_OUTDIR/lib/lib*.a $GLOBAL_OUTDIR/lib | |
| 101 | cd .. | |
| 102 | ||
| 103 | echo "Finished!" |