summaryrefslogtreecommitdiff
authorzecke <zecke>2002-03-01 19:22:02 (UTC)
committer zecke <zecke>2002-03-01 19:22:02 (UTC)
commitd81f7934384adf5c06dddc1998e01d474419c7b0 (patch) (side-by-side diff)
treef937d4d2996f0a4d144cc3f29bea330c49d81105
parentbd8f5f09dbb80570372f81e2030973146d1f9198 (diff)
downloadopie-d81f7934384adf5c06dddc1998e01d474419c7b0.zip
opie-d81f7934384adf5c06dddc1998e01d474419c7b0.tar.gz
opie-d81f7934384adf5c06dddc1998e01d474419c7b0.tar.bz2
CVS_SILENT
Diffstat (more/less context) (ignore whitespace changes)
-rwxr-xr-xconfigure11
1 files changed, 11 insertions, 0 deletions
diff --git a/configure b/configure
index 3b474c6..1652527 100755
--- a/configure
+++ b/configure
@@ -1,223 +1,234 @@
#!/bin/sh
#
# Configures to build the Qtopia Environment
#
# Copyright 1999-2000 Trolltech AS. All rights reserved.
#
PLATFORM=generic
SHARING=shared
DEBUG=
QCONFIGARG=
touch .test.qpe.
if [ '!' -f ${OPIEDIR}/.test.qpe. ];
then
rm .test.qpe.
echo
echo
echo ' The environment variable $OPIEDIR is not set correctly. It is currently'
echo ' set to "'$OPIEDIR'", but it should be set to this directory,'
echo ' which is "'`pwd`'".'
echo
echo ' Please read the INSTALL file for instructions on how to set $OPIEDIR'
echo ' correctly. If you have set $OPIEDIR in your .profile or .login, you '
echo ' will need to log out and log in again to make the setting effective.'
echo
echo
exit 1
fi
rm .test.qpe.
+if [ '!' -f $TMAKEPATH/tmake.conf ]
+then
+ # You have tmake. We'll regenerate the file for you...
+ echo ' The environment variable $TMAKEPATH is not set correclty. '
+ echo ' It should be set to the tmake path'
+ echo
+ echo ' Please read the INSTALL file for instructions on how to set $TMAKEPATH'
+ echo ' to the environment variable correctly.'
+ exit 1
+fi
+
VERSION_MAJ=$(sed -n -e 's/.*QPE_VERSION "\([0-9]*\)\.[0-9]*\.[0-9]*.*".*/\1/p' <library/version.h)
VERSION_MIN=$(sed -n -e 's/.*QPE_VERSION "[0-9]*\.\([0-9]\)\.[0-9]*.*".*/\1/p' <library/version.h)
VERSION_PAT=$(sed -n -e 's/.*QPE_VERSION "[0-9]*\.[0-9]*\.\([0-9]*\).*".*/\1/p' <library/version.h)
TOMAKE=
if grep -q 'VERSION_STR.*"3' $QTDIR/include/qglobal.h
then
QT3=yes
else
QT3=no
fi
# Parse the arguments, setting things to "yes" or "no".
while [ -n "$1" ]; do
case $1 in
-platform|-xplatform) # No difference since we don't need to build moc, etc.
shift; PLATFORM=$1
;;
-release)
DEBUG=
;;
-debug)
DEBUG=-debug
;;
-shared)
SHARING=shared
;;
-static)
SHARING=static
;;
-qconfig)
# optional way to specify the qconfig-qpe.h is to pass -qconfig qpe
shift; QCONFIGARG=DEFINES+=QCONFIG='\"'$1'\"' # Don't quote me on that.
;;
-make)
shift; TOMAKE="$TOMAKE $1"
;;
-qt3)
QT3=yes
;;
*)
HELP=yes;;
esac
shift
done
TARGET=configs/$PLATFORM-$SHARING$DEBUG
if [ '!' -f $TARGET ]
then
if [ -f configs/linux-$PLATFORM-g++-$SHARING$DEBUG ]
then
TARGET=configs/linux-$PLATFORM-g++-$SHARING$DEBUG
else
echo
echo ' The specified platform/compiler not supported: ' $TARGET
echo
exit 2
fi
fi
# Next, emit a usage message if something failed.
if [ "$HELP" = "yes" ]; then
cat <<EOF
Usage: $0 [-debug] [-release] [-shared] [-static] [-qt3] [-platform ...]
The defaults (*) are usually acceptable. Here is a short explanation of
each option:
* -release ........... Compile and link Qt with debugging turned off.
-debug ............. Compile and link Qt with debugging turned on.
* -shared ............ Create and use a shared Qt library (libqt.so)
-static ............ Create and use a static Qt library (libqt.a)
-qt3 ............... Configure for use with Qt 3.x
-platform target ... The platform you are building on ($PLATFORM)
EOF
exit 0;
fi
if [ -f library/custom-$PLATFORM.h ]
then
rm -f library/custom.h
ln -s custom-$PLATFORM.h library/custom.h
fi
mkdir -p include/qpe
( cd include/qpe && rm -f *.h; ln -s ../../library/*.h .; ln -s ../../library/backend/*.h .; rm -f *_p.h; )
echo Creating makefiles...
sed -e 's/^\(VERSION.*= \).*/\1'$VERSION_MAJ.$VERSION_MIN.$VERSION_PAT/ <library/library.pro >library/library.pro-v
mv library/library.pro-v library/library.pro
if [ "$QT3" = yes ]
then
VCONFIG="CONFIG+=qt3"
else
VCONFIG="CONFIG+=qt2"
fi
if [ -f $TMAKEPATH/tmake.conf ]
then
# You have tmake. We'll regenerate the file for you...
echo "Makefiles will be regenerated."
fi
H=`pwd`
if [ -z "$TOMAKE" ]
then
TOMAKE=`make showcomponents`
fi
for a in $TOMAKE ; do
N=$a/Makefile
M=$a/Makefile.in
O=$a/Makefile.add
f=`basename $a`
if [ -f $TMAKEPATH/tmake.conf -a -f $a/$f.pro ]
then
( cd $a;
TMAKEPATH=$QTDIR/tmake:$TMAKEPATH \
tmake $QCONFIGARG CONFIG+=embedded $VCONFIG \
-t $H/qt/tmake/propagate.t $f.pro |
sed -e "s|$QTDIR|\$(QTDIR)|g" -e "s|$OPIEDIR|\$(OPIEDIR)|g" >Makefile.in;
)
echo -n "."
appname=`grep '^TARGET' $a/$f.pro | sed 's/^TARGET.*=//' | sed 's/ //g'`
translation=`grep '^TRANSLATION' $a/$f.pro | sed 's,^TRANSL.*=.*i18n\/.*\/,,' | sed 's/ //g' | sed 's,\.ts.*,,' | sed 's,^lib,,' `
if [ -n "$translation" -a -n "$appname" ]
then
if [ $appname != $translation ]
then
echo
echo "Warning: translation and appname disagree in $a/$f.pro"
fi
fi
fi
cat > $N <<EOF
#############################################################################
# Automatically generated from $M
# Build options from $1
#############################################################################
EOF
SED=
PLATFORM_CFLAGS=
if [ "$f" = "embeddedkonsole" ]
then
case $PLATFORM in
*x86*|*generic*|*ipaq*)
SED="$SED /^LIBS.*=/s/\$/ -lutil/;"
PLATFORM_CFLAGS="-DHAVE_OPENPTY"
;; *)
SED=
esac
elif [ "$f" = "libmpeg3" ]
then
# Patch our Makefile.in file with the platform specifics for the libmpeg3 library
# Use the C++ compiler to compile the .c files (because the fixed-point classes are C++ code)
SED='s/\$(CC)/\$(CXX)/;'
case $PLATFORM
in
# For x86 turn on using floating point, compile mmx and css code
*x86*)
# "-funroll-loops -fomit-frame-pointer -malign-loops=2 -malign-jumps=2 -malign-functions=2 -march=i486"
PLATFORM_CFLAGS="-DHAVE_MMX -DHAVE_CSS"
SED="$SED /SOURCES.*=/s/=/= video\\/mmxidct.S video\\/reconmmx.s\ /;"
# For generic turn on using floating point
;; *generic*)
PLATFORM_CFLAGS=""
# For the ipaq use fixed point maths, don't compile the mmx or css code
;; *ipaq*)
PLATFORM_CFLAGS="-DUSE_FIXED_POINT"
;; *)
# For 'other platforms', turn off optimizations and use fixed point
PLATFORM_CFLAGS="-O -DUSE_FIXED_POINT"
esac
elif [ "$f" = "libmad" ]
then
# Patch our Makefile.in file with the platform specifics for the libmad library
case $PLATFORM