summaryrefslogtreecommitdiff
authorsandman <sandman>2002-06-09 23:29:50 (UTC)
committer sandman <sandman>2002-06-09 23:29:50 (UTC)
commitbb2f23307a6797c4b338b4504de39fdde3678893 (patch) (unidiff)
treeb18a5466dcada9251c5406d4ba0f1cd4a80fc766
parentb59a64c90deba66180e3a778d411296e984f64ea (diff)
downloadopie-bb2f23307a6797c4b338b4504de39fdde3678893.zip
opie-bb2f23307a6797c4b338b4504de39fdde3678893.tar.gz
opie-bb2f23307a6797c4b338b4504de39fdde3678893.tar.bz2
Fix a bug regarding the custom.h file linking
Diffstat (more/less context) (ignore whitespace changes)
-rwxr-xr-xconfigure6
1 files changed, 4 insertions, 2 deletions
diff --git a/configure b/configure
index 0241adf..299e867 100755
--- a/configure
+++ b/configure
@@ -1,291 +1,293 @@
1#!/bin/sh 1#!/bin/sh
2# 2#
3# Configures to build the Qtopia Environment 3# Configures to build the Qtopia Environment
4# 4#
5# Copyright 1999-2000 Trolltech AS. All rights reserved. 5# Copyright 1999-2000 Trolltech AS. All rights reserved.
6# 6#
7 7
8PLATFORM=generic 8PLATFORM=generic
9SHARING=shared 9SHARING=shared
10DEBUG= 10DEBUG=
11QCONFIGARG= 11QCONFIGARG=
12 12
13touch .test.qpe. 13touch .test.qpe.
14if [ '!' -f ${OPIEDIR}/.test.qpe. ]; 14if [ '!' -f ${OPIEDIR}/.test.qpe. ];
15then 15then
16 rm .test.qpe. 16 rm .test.qpe.
17 echo 17 echo
18 echo 18 echo
19 echo ' The environment variable $OPIEDIR is not set correctly. It is currently' 19 echo ' The environment variable $OPIEDIR is not set correctly. It is currently'
20 echo ' set to "'$OPIEDIR'", but it should be set to this directory,' 20 echo ' set to "'$OPIEDIR'", but it should be set to this directory,'
21 echo ' which is "'`pwd`'".' 21 echo ' which is "'`pwd`'".'
22 echo 22 echo
23 echo ' Please read the INSTALL file for instructions on how to set $OPIEDIR' 23 echo ' Please read the INSTALL file for instructions on how to set $OPIEDIR'
24 echo ' correctly. If you have set $OPIEDIR in your .profile or .login, you ' 24 echo ' correctly. If you have set $OPIEDIR in your .profile or .login, you '
25 echo ' will need to log out and log in again to make the setting effective.' 25 echo ' will need to log out and log in again to make the setting effective.'
26 echo 26 echo
27 echo 27 echo
28 exit 1 28 exit 1
29fi 29fi
30rm .test.qpe. 30rm .test.qpe.
31 31
32if [ '!' -f $TMAKEPATH/tmake.conf ] 32if [ '!' -f $TMAKEPATH/tmake.conf ]
33then 33then
34 # You have tmake. We'll regenerate the file for you... 34 # You have tmake. We'll regenerate the file for you...
35 echo ' The environment variable $TMAKEPATH is not set correclty. ' 35 echo ' The environment variable $TMAKEPATH is not set correclty. '
36 echo ' It should be set to the tmake path' 36 echo ' It should be set to the tmake path'
37 echo 37 echo
38 echo ' Please read the INSTALL file for instructions on how to set $TMAKEPATH' 38 echo ' Please read the INSTALL file for instructions on how to set $TMAKEPATH'
39 echo ' to the environment variable correctly.' 39 echo ' to the environment variable correctly.'
40 exit 1 40 exit 1
41fi 41fi
42 42
43VERSION_MAJ=$(sed -n -e 's/.*QPE_VERSION "\([0-9]*\)\.[0-9]*\.[0-9]*.*".*/\1/p' <library/version.h) 43VERSION_MAJ=$(sed -n -e 's/.*QPE_VERSION "\([0-9]*\)\.[0-9]*\.[0-9]*.*".*/\1/p' <library/version.h)
44VERSION_MIN=$(sed -n -e 's/.*QPE_VERSION "[0-9]*\.\([0-9]\)\.[0-9]*.*".*/\1/p' <library/version.h) 44VERSION_MIN=$(sed -n -e 's/.*QPE_VERSION "[0-9]*\.\([0-9]\)\.[0-9]*.*".*/\1/p' <library/version.h)
45VERSION_PAT=$(sed -n -e 's/.*QPE_VERSION "[0-9]*\.[0-9]*\.\([0-9]*\).*".*/\1/p' <library/version.h) 45VERSION_PAT=$(sed -n -e 's/.*QPE_VERSION "[0-9]*\.[0-9]*\.\([0-9]*\).*".*/\1/p' <library/version.h)
46 46
47TOMAKE= 47TOMAKE=
48 48
49if grep -q 'VERSION_STR.*"3' $QTDIR/include/qglobal.h 49if grep -q 'VERSION_STR.*"3' $QTDIR/include/qglobal.h
50then 50then
51 QT3=yes 51 QT3=yes
52else 52else
53 QT3=no 53 QT3=no
54fi 54fi
55 55
56# Parse the arguments, setting things to "yes" or "no". 56# Parse the arguments, setting things to "yes" or "no".
57 57
58while [ -n "$1" ]; do 58while [ -n "$1" ]; do
59 case $1 in 59 case $1 in
60 -platform|-xplatform) # No difference since we don't need to build moc, etc. 60 -platform|-xplatform) # No difference since we don't need to build moc, etc.
61 shift; PLATFORM=$1 61 shift; PLATFORM=$1
62 ;; 62 ;;
63 -release) 63 -release)
64 DEBUG= 64 DEBUG=
65 ;; 65 ;;
66 -debug) 66 -debug)
67 DEBUG=-debug 67 DEBUG=-debug
68 ;; 68 ;;
69 -shared) 69 -shared)
70 SHARING=shared 70 SHARING=shared
71 ;; 71 ;;
72 -static) 72 -static)
73 SHARING=static 73 SHARING=static
74 ;; 74 ;;
75 -qconfig) 75 -qconfig)
76 # optional way to specify the qconfig-qpe.h is to pass -qconfig qpe 76 # optional way to specify the qconfig-qpe.h is to pass -qconfig qpe
77 shift; QCONFIGARG=DEFINES+=QCONFIG='\"'$1'\"' # Don't quote me on that. 77 shift; QCONFIGARG=DEFINES+=QCONFIG='\"'$1'\"' # Don't quote me on that.
78 ;; 78 ;;
79 -make) 79 -make)
80 shift; TOMAKE="$TOMAKE $1" 80 shift; TOMAKE="$TOMAKE $1"
81 ;; 81 ;;
82 -qt3) 82 -qt3)
83 QT3=yes 83 QT3=yes
84 ;; 84 ;;
85 *) 85 *)
86 HELP=yes;; 86 HELP=yes;;
87 esac 87 esac
88 shift 88 shift
89done 89done
90 90
91TARGET=configs/$PLATFORM-$SHARING$DEBUG 91TARGET=configs/$PLATFORM-$SHARING$DEBUG
92 92
93if [ '!' -f $TARGET ] 93if [ '!' -f $TARGET ]
94then 94then
95 if [ -f configs/linux-$PLATFORM-g++-$SHARING$DEBUG ] 95 if [ -f configs/linux-$PLATFORM-g++-$SHARING$DEBUG ]
96 then 96 then
97 TARGET=configs/linux-$PLATFORM-g++-$SHARING$DEBUG 97 TARGET=configs/linux-$PLATFORM-g++-$SHARING$DEBUG
98 else 98 else
99 echo 99 echo
100 echo ' The specified platform/compiler not supported: ' $TARGET 100 echo ' The specified platform/compiler not supported: ' $TARGET
101 echo 101 echo
102 exit 2 102 exit 2
103 fi 103 fi
104fi 104fi
105 105
106# Next, emit a usage message if something failed. 106# Next, emit a usage message if something failed.
107 107
108if [ "$HELP" = "yes" ]; then 108if [ "$HELP" = "yes" ]; then
109 cat <<EOF 109 cat <<EOF
110Usage: $0 [-debug] [-release] [-shared] [-static] [-qt3] [-platform ...] 110Usage: $0 [-debug] [-release] [-shared] [-static] [-qt3] [-platform ...]
111 111
112The defaults (*) are usually acceptable. Here is a short explanation of 112The defaults (*) are usually acceptable. Here is a short explanation of
113each option: 113each option:
114 114
115 * -release ........... Compile and link Qt with debugging turned off. 115 * -release ........... Compile and link Qt with debugging turned off.
116 -debug ............. Compile and link Qt with debugging turned on. 116 -debug ............. Compile and link Qt with debugging turned on.
117 117
118 * -shared ............ Create and use a shared Qt library (libqt.so) 118 * -shared ............ Create and use a shared Qt library (libqt.so)
119 -static ............ Create and use a static Qt library (libqt.a) 119 -static ............ Create and use a static Qt library (libqt.a)
120 120
121 -qt3 ............... Configure for use with Qt 3.x 121 -qt3 ............... Configure for use with Qt 3.x
122 122
123 -platform target ... The platform you are building on ($PLATFORM) 123 -platform target ... The platform you are building on ($PLATFORM)
124EOF 124EOF
125 exit 0; 125 exit 0;
126fi 126fi
127 127
128if [ -f library/custom-$PLATFORM.h ] 128CUSTOM=`echo $PLATFORM | sed -n -e "s/.*-\(.*\)-.*/\1/p"`
129
130if [ -f library/custom-$CUSTOM.h ]
129then 131then
130 rm -f library/custom.h 132 rm -f library/custom.h
131 ln -s custom-$PLATFORM.h library/custom.h 133 ln -s custom-$CUSTOM.h library/custom.h
132fi 134fi
133 135
134mkdir -p include/qpe 136mkdir -p include/qpe
135( cd include/qpe && rm -f *.h; ln -s ../../library/*.h .; ln -s ../../library/backend/*.h .; rm -f *_p.h; ) 137( cd include/qpe && rm -f *.h; ln -s ../../library/*.h .; ln -s ../../library/backend/*.h .; rm -f *_p.h; )
136 138
137mkdir -p include/opie 139mkdir -p include/opie
138( cd include/opie && rm -f *.h; ln -s ../../libopie/*.h .; rm -f *_p.h; ) 140( cd include/opie && rm -f *.h; ln -s ../../libopie/*.h .; rm -f *_p.h; )
139 141
140 142
141echo Creating makefiles... 143echo Creating makefiles...
142 144
143sed -e 's/^\(VERSION.*= \).*/\1'$VERSION_MAJ.$VERSION_MIN.$VERSION_PAT/ <library/library.pro >library/library.pro-v 145sed -e 's/^\(VERSION.*= \).*/\1'$VERSION_MAJ.$VERSION_MIN.$VERSION_PAT/ <library/library.pro >library/library.pro-v
144mv library/library.pro-v library/library.pro 146mv library/library.pro-v library/library.pro
145 147
146if [ "$QT3" = yes ] 148if [ "$QT3" = yes ]
147then 149then
148 VCONFIG="CONFIG+=qt3" 150 VCONFIG="CONFIG+=qt3"
149else 151else
150 VCONFIG="CONFIG+=qt2" 152 VCONFIG="CONFIG+=qt2"
151fi 153fi
152 154
153if [ -f $TMAKEPATH/tmake.conf ] 155if [ -f $TMAKEPATH/tmake.conf ]
154then 156then
155 # You have tmake. We'll regenerate the file for you... 157 # You have tmake. We'll regenerate the file for you...
156 echo "Makefiles will be regenerated." 158 echo "Makefiles will be regenerated."
157fi 159fi
158 160
159H=`pwd` 161H=`pwd`
160if [ -z "$TOMAKE" ] 162if [ -z "$TOMAKE" ]
161then 163then
162 TOMAKE=`make showcomponents` 164 TOMAKE=`make showcomponents`
163fi 165fi
164 166
165for a in $TOMAKE ; do 167for a in $TOMAKE ; do
166 N=$a/Makefile 168 N=$a/Makefile
167 M=$a/Makefile.in 169 M=$a/Makefile.in
168 O=$a/Makefile.add 170 O=$a/Makefile.add
169 f=`basename $a` 171 f=`basename $a`
170 172
171 if [ -f $TMAKEPATH/tmake.conf -a -f $a/$f.pro ] 173 if [ -f $TMAKEPATH/tmake.conf -a -f $a/$f.pro ]
172 then 174 then
173 ( cd $a; 175 ( cd $a;
174 TMAKEPATH=$QTDIR/tmake:$TMAKEPATH \ 176 TMAKEPATH=$QTDIR/tmake:$TMAKEPATH \
175 tmake $QCONFIGARG CONFIG+=embedded $VCONFIG \ 177 tmake $QCONFIGARG CONFIG+=embedded $VCONFIG \
176 -t $H/qt/tmake/propagate.t $f.pro | 178 -t $H/qt/tmake/propagate.t $f.pro |
177 sed -e "s|$QTDIR|\$(QTDIR)|g" -e "s|$OPIEDIR|\$(OPIEDIR)|g" >Makefile.in; 179 sed -e "s|$QTDIR|\$(QTDIR)|g" -e "s|$OPIEDIR|\$(OPIEDIR)|g" >Makefile.in;
178 ) 180 )
179 echo -n "." 181 echo -n "."
180 #echo Building $N.. 182 #echo Building $N..
181 appname=`grep '^TARGET' $a/$f.pro | sed 's/^TARGET.*=//' | sed 's/ //g'` 183 appname=`grep '^TARGET' $a/$f.pro | sed 's/^TARGET.*=//' | sed 's/ //g'`
182 translation=`grep '^TRANSLATION.*[^+]=.*' $a/$f.pro | sed 's,^TRANSL.*=.*i18n\/.*\/,,' | sed 's/ //g' | sed 's,\.ts.*,,' | sed 's,^lib,,' ` 184 translation=`grep '^TRANSLATION.*[^+]=.*' $a/$f.pro | sed 's,^TRANSL.*=.*i18n\/.*\/,,' | sed 's/ //g' | sed 's,\.ts.*,,' | sed 's,^lib,,' `
183 if [ -n "$translation" -a -n "$appname" ] 185 if [ -n "$translation" -a -n "$appname" ]
184 then 186 then
185 if [ $appname != $translation ] 187 if [ $appname != $translation ]
186 then 188 then
187 echo 189 echo
188 echo "Warning: translation and appname disagree in $a/$f.pro" 190 echo "Warning: translation and appname disagree in $a/$f.pro"
189 fi 191 fi
190 fi 192 fi
191 193
192 fi 194 fi
193 195
194 cat > $N <<EOF 196 cat > $N <<EOF
195############################################################################# 197#############################################################################
196# Automatically generated from $M 198# Automatically generated from $M
197# Build options from $1 199# Build options from $1
198############################################################################# 200#############################################################################
199 201
200EOF 202EOF
201 203
202 SED= 204 SED=
203 PLATFORM_CFLAGS= 205 PLATFORM_CFLAGS=
204 206
205 if [ "$f" = "embeddedkonsole" ] 207 if [ "$f" = "embeddedkonsole" ]
206 then 208 then
207 case $PLATFORM in 209 case $PLATFORM in
208 *x86*|*generic*|*ipaq*|*sharp*) 210 *x86*|*generic*|*ipaq*|*sharp*)
209 SED="$SED /^LIBS.*=/s/\$/ -lutil/;" 211 SED="$SED /^LIBS.*=/s/\$/ -lutil/;"
210 PLATFORM_CFLAGS="-DHAVE_OPENPTY" 212 PLATFORM_CFLAGS="-DHAVE_OPENPTY"
211 ;; *) 213 ;; *)
212 SED= 214 SED=
213 esac 215 esac
214 elif [ "$f" = "libmpeg3" ] 216 elif [ "$f" = "libmpeg3" ]
215 then 217 then
216 # Patch our Makefile.in file with the platform specifics for the libmpeg3 library 218 # Patch our Makefile.in file with the platform specifics for the libmpeg3 library
217 # Use the C++ compiler to compile the .c files (because the fixed-point classes are C++ code) 219 # Use the C++ compiler to compile the .c files (because the fixed-point classes are C++ code)
218 SED='s/\$(CC)/\$(CXX)/;' 220 SED='s/\$(CC)/\$(CXX)/;'
219 case $PLATFORM 221 case $PLATFORM
220 in 222 in
221 # For x86 turn on using floating point, compile mmx and css code 223 # For x86 turn on using floating point, compile mmx and css code
222 *x86*) 224 *x86*)
223 # "-funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -march=i486" 225 # "-funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -march=i486"
224 PLATFORM_CFLAGS="-DHAVE_MMX -DHAVE_CSS" 226 PLATFORM_CFLAGS="-DHAVE_MMX -DHAVE_CSS"
225 SED="$SED /SOURCES.*=/s/=/= video\\/mmxidct.S video\\/reconmmx.s\ /;" 227 SED="$SED /SOURCES.*=/s/=/= video\\/mmxidct.S video\\/reconmmx.s\ /;"
226 # For generic turn on using floating point 228 # For generic turn on using floating point
227 ;; *generic*) 229 ;; *generic*)
228 PLATFORM_CFLAGS="" 230 PLATFORM_CFLAGS=""
229 # For the ipaq use fixed point maths, don't compile the mmx or css code 231 # For the ipaq use fixed point maths, don't compile the mmx or css code
230 ;; *ipaq*|*sharp*) 232 ;; *ipaq*|*sharp*)
231 PLATFORM_CFLAGS="-DUSE_FIXED_POINT" 233 PLATFORM_CFLAGS="-DUSE_FIXED_POINT"
232 ;; *) 234 ;; *)
233 # For 'other platforms', turn off optimizations and use fixed point 235 # For 'other platforms', turn off optimizations and use fixed point
234 PLATFORM_CFLAGS="-O -DUSE_FIXED_POINT" 236 PLATFORM_CFLAGS="-O -DUSE_FIXED_POINT"
235 esac 237 esac
236 elif [ "$f" = "libmad" ] 238 elif [ "$f" = "libmad" ]
237 then 239 then
238 # Patch our Makefile.in file with the platform specifics for the libmad library 240 # Patch our Makefile.in file with the platform specifics for the libmad library
239 case $PLATFORM 241 case $PLATFORM
240 in 242 in
241 # For x86 use intel optimizations 243 # For x86 use intel optimizations
242 *x86*) 244 *x86*)
243 PLATFORM_CFLAGS="-DFPM_INTEL" 245 PLATFORM_CFLAGS="-DFPM_INTEL"
244 # For the ipaq use ARM asm optimizations 246 # For the ipaq use ARM asm optimizations
245 ;; *ipaq*|*sharp*) 247 ;; *ipaq*|*sharp*)
246 PLATFORM_CFLAGS="-DFPM_ARM" 248 PLATFORM_CFLAGS="-DFPM_ARM"
247 SED="$SED /SOURCES.*=/s/=/= idmt_arm.S /;" 249 SED="$SED /SOURCES.*=/s/=/= idmt_arm.S /;"
248 # For generic platforms use the C 64-bit implementation 250 # For generic platforms use the C 64-bit implementation
249 ;; *generic*) 251 ;; *generic*)
250 PLATFORM_CFLAGS="-DFPM_64BIT" 252 PLATFORM_CFLAGS="-DFPM_64BIT"
251 # For 'other platforms' use the ARM code 253 # For 'other platforms' use the ARM code
252 ;; *) 254 ;; *)
253 PLATFORM_CFLAGS="-DFPM_ARM" 255 PLATFORM_CFLAGS="-DFPM_ARM"
254 SED="$SED /SOURCES.*=/s/=/= idmt_arm.S /;" 256 SED="$SED /SOURCES.*=/s/=/= idmt_arm.S /;"
255 esac 257 esac
256 fi 258 fi
257 if [ -n "$PLATFORM_CFLAGS" ] 259 if [ -n "$PLATFORM_CFLAGS" ]
258 then 260 then
259 # Append the addition c-flags we have defined 261 # Append the addition c-flags we have defined
260 SED="$SED /CFLAGS.*=.*/s/\$/ $PLATFORM_CFLAGS/;" 262 SED="$SED /CFLAGS.*=.*/s/\$/ $PLATFORM_CFLAGS/;"
261 SED="$SED /CXXFLAGS.*=.*/s/\$/ $PLATFORM_CFLAGS/;" 263 SED="$SED /CXXFLAGS.*=.*/s/\$/ $PLATFORM_CFLAGS/;"
262 fi 264 fi
263 cat $TARGET >> $N 265 cat $TARGET >> $N
264 if [ -n "$SED" ] 266 if [ -n "$SED" ]
265 then 267 then
266 sed -e "$SED" $M >> $N 268 sed -e "$SED" $M >> $N
267 else 269 else
268 cat $M >> $N 270 cat $M >> $N
269 fi 271 fi
270 272
271 cat >> $N <<EOF 273 cat >> $N <<EOF
272 274
273lupdate: 275lupdate:
274 lupdate $f.pro 276 lupdate $f.pro
275 277
276lrelease: 278lrelease:
277 lrelease $f.pro 279 lrelease $f.pro
278 280
279EOF 281EOF
280 if [ -f "$O" ] 282 if [ -f "$O" ]
281 then 283 then
282 cat >> $N $O 284 cat >> $N $O
283 fi 285 fi
284 286
285done 287done
286 288
287MAKE=make 289MAKE=make
288echo 290echo
289echo "QPE is now configured for building. Just run $MAKE (or $MAKE single)." 291echo "QPE is now configured for building. Just run $MAKE (or $MAKE single)."
290echo "To reconfigure, run $MAKE clean and configure." 292echo "To reconfigure, run $MAKE clean and configure."
291echo 293echo