Merge pull request #2 from danielt3/master
[BennuGD.git] / build-caanoo.sh
blob8afb5fb1fa94883140842ed6e948bffecdf49383
1 #!/bin/sh
3 ## -- CAANOO USER SETTINGS
5 ## CAANOO - This should point to the root of your tool-chain {i.e. folder above the BIN dir}
7 CAANOO=/opt/caanoo/gcc-4.2.4-glibc-2.7-eabi/arm-gph-linux-gnueabi
9 ## HOST and TARGET - These should be the canonical tool names of your tool.
10 ## For the sake of this script HOST and TARGET should be the same.
11 ## Defaults would be 'arm-gph-linux-gnueabi' for a normal Caanoo tool-chain.
13 HOST=arm-gph-linux-gnueabi
14 TARGET=arm-gph-linux-gnueabi
15 BUILD=`uname -m`
16 PKG_CONFIG_PATH=${CAANOO}/lib/pkgconfig
18 ## -- END CAANOO USER SETTINGS
20 export CAANOO
21 export HOST
22 export TARGET
23 export PKG_CONFIG_PATH
25 PREFIX=$CAANOO
26 export PREFIX
28 PATH=$CAANOO/bin:$PATH
29 export PATH
31 #ln -s `whereis -b pkg-config | sed 's/pkg-config\: //g'` /opt/caanoo/gcc-4.2.4-glibc-2.7-eabi/arm-gph-linux-gnueabil/bin/pkg-config
33 # Do not edit below here
34 CC="${CAANOO}/../bin/${HOST}-gcc"
35 CXX="${CAANOO}/../bin/${HOST}-g++"
36 AR="${CAANOO}/../bin/${HOST}-ar"
37 STRIP="${CAANOO}/../bin/${HOST}-strip"
38 RANLIB="${CAANOO}/../bin/${HOST}-ranlib"
40 #CFLAGS="-DTARGET_CAANOO -O2 -ffast-math -fomit-frame-pointer -mcpu=arm920t -DARM -D_ARM_ASSEM_ -I${CAANOO}/include -I${CAANOO}/include/libxml2 -I${CAANOO}/include/SDL"
41 #CFLAGS="-DTARGET_CAANOO -mcpu=arm926ej-s -mtune=arm926ej-s -fsigned-char -O3 -msoft-float -fomit-frame-pointer -fstrict-aliasing -mstructure-size-boundary=32 -fexpensive-optimizations -fweb -frename-registers -falign-functions=16 -falign-loops -falign-labels -falign-jumps -finline -finline-functions -fno-common -fno-builtin -fsingle-precision-constant -DARM -D_ARM_ASSEM_ -I${CAANOO}/include -I${CAANOO}/include/libxml2 -I${CAANOO}/include/SDL"
42 CFLAGS="-DTARGET_CAANOO -mcpu=arm926ej-s -mtune=arm926ej-s -O3 -DARM -D_ARM_ASSEM_ -I${CAANOO}/include -I${CAANOO}/include/libxml2 -I${CAANOO}/include/SDL"
43 LDFLAGS="-L${CAANOO}/lib"
44 #PKG_CONFIG="${CAANOO}/bin/pkg-config"
46 export CC
47 export CXX
48 export AR
49 export STRIP
50 export RANLIB
51 export CFLAGS
52 export LDFLAGS
53 export PKG_CONFIG
55 echo Current settings.
56 echo
57 echo Install root/Working dir = $CAANOO
58 echo Tool locations = $CAANOO/bin
59 echo Host/Target = $HOST / $TARGET
60 echo
62 echo CC = $CC
63 echo CXX = $CXX
64 echo AR = $AR
65 echo STRIP = $STRIP
66 echo RANLIB = $RANLIB
68 echo CFLAGS = $CFLAGS
69 echo LDFLAGS = $LDFLAGS
70 echo PKG_CONFIG = $PKG_CONFIG
72 echo "### Building 3rd party software ###"
73 cd 3rdparty/des-4.04b
74 case $1 in
75 release)
76 make clean && make
80 make
82 esac
83 if [ $? -ne 0 ]; then
84 echo "*** ABORT ***"
85 exit 1
87 cd -
89 echo "### Building BennuGD Core ###"
91 cd core
92 case $1 in
93 release)
94 ./configure --prefix=${PREFIX} --target=${TARGET} --host=${HOST} --build=${BUILD} --enable-shared PKG_CONFIG_LIBDIR=${PKG_CONFIG_PATH} && make clean && make
98 make
100 esac
101 if [ $? -ne 0 ]; then
102 echo "*** ABORT ***"
103 exit 1
105 cd -
107 echo "### Building BennuGD Modules ###"
109 cd modules
110 case $1 in
111 release)
112 ./configure --prefix=${PREFIX} --target=${TARGET} --host=${HOST} --build=${BUILD} --enable-shared PKG_CONFIG_LIBDIR=${PKG_CONFIG_PATH} && make clean && make
116 make
118 esac
119 if [ $? -ne 0 ]; then
120 echo "*** ABORT ***"
121 exit 1
123 cd -
125 echo "### Building BennuGD Tools ###"
127 cd tools/moddesc
128 case $1 in
129 release)
130 ./configure --prefix=${PREFIX} --target=${TARGET} --host=${HOST} --build=${BUILD} --enable-shared PKG_CONFIG_LIBDIR=${PKG_CONFIG_PATH} && make clean && make
134 make
136 esac
137 if [ $? -ne 0 ]; then
138 echo "*** ABORT ***"
139 exit 1
141 cd -
143 echo "### Copying files to bin folder ###"
145 mkdir -p bin/$TARGET 2>/dev/null
146 cp 3rdparty/des-4.04b/libdes.so bin/$TARGET
147 cp core/bgdi/src/.libs/bgdi bin/$TARGET
148 cp core/bgdc/src/bgdc bin/$TARGET
149 cp core/bgdrtm/src/.libs/libbgdrtm.so bin/$TARGET
150 cp $(find modules -name '*.so') bin/$TARGET
151 cp tools/moddesc/moddesc bin/$TARGET
153 echo "### Build done! ###"
155 exit 0