summaryrefslogtreecommitdiff
path: root/bindings/objc/build_sword/build_mac_sword.sh
diff options
context:
space:
mode:
Diffstat (limited to 'bindings/objc/build_sword/build_mac_sword.sh')
-rwxr-xr-xbindings/objc/build_sword/build_mac_sword.sh159
1 files changed, 107 insertions, 52 deletions
diff --git a/bindings/objc/build_sword/build_mac_sword.sh b/bindings/objc/build_sword/build_mac_sword.sh
index e7665ee..77cfff9 100755
--- a/bindings/objc/build_sword/build_mac_sword.sh
+++ b/bindings/objc/build_sword/build_mac_sword.sh
@@ -3,49 +3,92 @@
#
APP=sword
-VERS=1.6.1
+VERS=1.6.2
BDIR=`pwd`
+SWORDPATH="$BDIR/../../../"
+ICUPATH="$BDIR/../dependencies/icu"
+PPCCLUCENEPATH="$BDIR/../build_clucene/build/ppc_inst"
+INTELCLUCENEPATH="$BDIR/../build_clucene/build/intel_inst"
+INTEL64CLUCENEPATH="$BDIR/../build_clucene/build/intel64_inst"
+
+usage() {
+cat << EOF
+usage: $0 options
+
+OPTIONS:
+ -d Buildtype debug version
+ -a Architecture [intel|intel64|ppc|fat]
+ -b Buildpath, default = "build"
+ -c With clucene
+ -s Path to SDK i.e. "/Developer/SDKs/MacOSX10.5.sdk"
+ -t Deplyoment target i.e. "10.5"
+EOF
+}
+
DEBUG=0
FAT=0
PPC=0
INTEL=0
+INTEL64=0
+USECLUCENE=0
+BUILDDIR=build
+SDKDIR=/Developer/SDKs/MacOSX10.5.sdk
+DTARGET=10.5
-SWORDPATH="$BDIR/../../../"
-ICUPATH="$BDIR/../dependencies/icu"
-PPCCLUCENEPATH="$BDIR/../clucene_build/build/ppc_inst"
-INTELCLUCENEPATH="$BDIR/../clucene_build/build/intel_inst"
-INTEL64CLUCENEPATH="$BDIR/../clucene_build/build/intel64_inst"
-
-# check commandline
-for arg in "$@"
+while getopts “da:b:s:t:c?” OPTION
do
- if [ "$arg" = "debug" ]; then
- DEBUG=1
- echo "building debug version"
- fi
- if [ "$arg" = "fat" ]; then
- FAT=1
- PPC=1
- INTEL=1
- echo "building fat version"
- fi
- if [ "$arg" = "ppc" ]; then
- PPC=1
- echo "building ppc version"
- else
- PPC=0
- fi
- if [ "$arg" = "intel" ]; then
- INTEL=1
- echo "building intel version"
- else
- INTEL=0
- fi
+ case $OPTION in
+ d)
+ DEBUG=1
+ echo "building debug version"
+ ;;
+ a)
+ if [ "$OPTARG" = "fat" ]; then
+ FAT=1
+ PPC=1
+ INTEL=1
+ INTEL64=1
+ echo "building fat version"
+ fi
+ if [ "$OPTARG" = "ppc" ]; then
+ PPC=1
+ echo "building ppc version"
+ fi
+ if [ "$OPTARG" = "intel" ]; then
+ INTEL=1
+ echo "building intel version"
+ fi
+ if [ "$OPTARG" = "intel64" ]; then
+ INTEL64=1
+ echo "building intel64 version"
+ fi
+ ;;
+ b)
+ BUILDDIR="$OPTARG"
+ echo "using builddir $BUILDDIR"
+ ;;
+ s)
+ SDKDIR="$OPTARG"
+ echo "using SDK at $SDKDIR"
+ ;;
+ t)
+ DTARGET="$OPTARG"
+ echo "using deployment target $DTARGET"
+ ;;
+ c)
+ USECLUCENE=1
+ echo "building with clucene"
+ ;;
+ ?)
+ usage
+ exit
+ ;;
+ esac
done
# using seperate build dirs and building in them doesn't work with sword
-BUILD=$BDIR/build
+BUILD=$BDIR/"$BUILDDIR"
PPCPREFIX=$BUILD/ppc_inst
INTELPREFIX=$BUILD/intel_inst
INTEL64PREFIX=$BUILD/intel64_inst
@@ -83,80 +126,91 @@ INTEL64_LIB_EXPORT=
if [ $PPC -eq 1 ] || [ $FAT -eq 1 ]; then
echo "building PPC version of library..."
cd $SWORDPATH
- make clean
echo 'autogen.sh ...'
./autogen.sh
echo 'autogen.sh ... done'
export CC=gcc
export CXX=g++
- export SDK=/Developer/SDKs/MacOSX10.5.sdk
+ export SDK=$SDKDIR
if [ $DEBUG -eq 1 ]; then
- export CFLAGS="-O0 -g -arch ppc -mmacosx-version-min=10.5 -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
+ export CFLAGS="-O0 -g -arch ppc -mmacosx-version-min=$DTARGET -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
else
- export CFLAGS="-O2 -g0 -arch ppc -mmacosx-version-min=10.5 -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
+ export CFLAGS="-O2 -g0 -arch ppc -mmacosx-version-min=$DTARGET -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
fi
export CXXFLAGS="$CFLAGS"
export LDFLAGS="-isysroot $SDK -Wl,-syslibroot,$SDK"
- ./configure --prefix=$PPCPREFIX --with-clucene=$PPCCLUCENEPATH --with-zlib --with-conf --with-icu --with-curl --disable-tests --disable-shared --enable-utilities
+ if [ $USECLUCENE -eq 1 ]; then
+ ./configure --prefix=$PPCPREFIX --with-clucene=$PPCCLUCENEPATH --with-zlib --with-conf --with-icu --with-curl --disable-tests --disable-shared
+ else
+ ./configure --prefix=$PPCPREFIX --without-clucene --with-zlib --with-conf --with-icu --with-curl --disable-tests --disable-shared --enable-utilities
+ fi
make all install
make clean
cd $BDIR
# copy to result dir
PPC_LIB_EXPORT="$RESULTPREFIX/lib/lib$APP-ppc.a"
cp $PPCPREFIX/lib/lib$APP.a $PPC_LIB_EXPORT
- echo "building PPC version of library...done"
+ echo "building PPC version of library...done"
fi
if [ $INTEL -eq 1 ] || [ $FAT -eq 1 ]; then
- echo "building INTEL version of library..."
+ echo "building INTEL version of library..."
cd $SWORDPATH
- make clean
echo 'autogen.sh ...'
./autogen.sh
echo 'autogen.sh ... done'
export CC=gcc
export CXX=g++
- export SDK=/Developer/SDKs/MacOSX10.5.sdk
+ export SDK=$SDKDIR
if [ $DEBUG -eq 1 ]; then
- export CFLAGS="-O0 -g -arch i686 -mmacosx-version-min=10.5 -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
+ export CFLAGS="-O0 -g -arch i686 -mmacosx-version-min=$DTARGET -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
else
- export CFLAGS="-O2 -g0 -arch i686 -mmacosx-version-min=10.5 -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
+ export CFLAGS="-O2 -g0 -arch i686 -mmacosx-version-min=$DTARGET -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
fi
export CXXFLAGS="$CFLAGS"
export LDFLAGS="-isysroot $SDK -Wl,-syslibroot,$SDK"
- ./configure --prefix=$INTELPREFIX --with-clucene=$INTELCLUCENEPATH --with-zlib --with-conf --with-icu --with-curl --enable-tests --disable-shared --enable-utilities
+ if [ $USECLUCENE -eq 1 ]; then
+ ./configure --prefix=$INTELPREFIX --with-clucene=$INTELCLUCENEPATH --with-zlib --with-conf --with-icu --with-curl --enable-tests --disable-shared
+ else
+ ./configure --prefix=$INTELPREFIX --without-clucene --with-zlib --with-conf --with-icu --with-curl --enable-tests --disable-shared --enable-utilities
+ fi
make all install
make clean
cd $BDIR
# copy to result dir
INTEL_LIB_EXPORT="$RESULTPREFIX/lib/lib$APP-intel.a"
cp $INTELPREFIX/lib/lib$APP.a $INTEL_LIB_EXPORT
- echo "building INTEL version of library...done"
+ echo "building INTEL version of library...done"
+fi
- echo "building INTEL64 version of library..."
+if [ $INTEL64 -eq 1 ] || [ $FAT -eq 1 ]; then
+ echo "building INTEL64 version of library..."
cd $SWORDPATH
- make clean
echo 'autogen.sh ...'
./autogen.sh
echo 'autogen.sh ... done'
export CC=gcc
export CXX=g++
- export SDK=/Developer/SDKs/MacOSX10.5.sdk
+ export SDK=$SDKDIR
if [ $DEBUG -eq 1 ]; then
- export CFLAGS="-O0 -g -arch x86_64 -mmacosx-version-min=10.5 -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
+ export CFLAGS="-O0 -g -arch x86_64 -mmacosx-version-min=$DTARGET -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
else
- export CFLAGS="-O2 -g0 -arch x86_64 -mmacosx-version-min=10.5 -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
+ export CFLAGS="-O2 -g0 -arch x86_64 -mmacosx-version-min=$DTARGET -isysroot $SDK -I$SDK/usr/include -I$ICUPATH/include"
fi
export CXXFLAGS="$CFLAGS"
export LDFLAGS="-isysroot $SDK -Wl,-syslibroot,$SDK"
- ./configure --prefix=$INTEL64PREFIX --with-clucene=$INTEL64CLUCENEPATH --with-zlib --with-conf --with-icu --with-curl --enable-tests --disable-shared --enable-utilities
+ if [ $USECLUCENE -eq 1 ]; then
+ ./configure --prefix=$INTEL64PREFIX --with-clucene=$INTEL64CLUCENEPATH --with-zlib --with-conf --with-icu --with-curl --enable-tests --disable-shared
+ else
+ ./configure --prefix=$INTEL64PREFIX --without-clucene --with-zlib --with-conf --with-icu --with-curl --enable-tests --disable-shared --enable-utilities
+ fi
make all install
make clean
cd $BDIR
# copy to result dir
INTEL64_LIB_EXPORT="$RESULTPREFIX/lib/lib$APP-intel64.a"
cp $INTEL64PREFIX/lib/lib$APP.a $INTEL64_LIB_EXPORT
- echo "building INTEL64 version of library...done"
+ echo "building INTEL64 version of library...done"
fi
# only for fat version
@@ -166,5 +220,6 @@ if [ $FAT -eq 1 ]; then
lipo -create $PPC_LIB_EXPORT $INTEL_LIB_EXPORT $INTEL64_LIB_EXPORT -output $RESULTPREFIX/lib/lib$APP-ub.a
fi
+
# run runlib to update the library content
#ranlib $RESULTPREFIX/lib/*