View difference between Paste ID: q0RYrwna and Pgiy3rYJ
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!"