--- a/configure Fri Sep 17 08:34:18 2010 +0300
+++ b/configure Mon Oct 04 01:19:32 2010 +0300
@@ -794,6 +794,7 @@
OPT_HELP=
CFG_SILENT=no
CFG_GRAPHICS_SYSTEM=default
+CFG_RUNTIME_SYSTEM=
CFG_ALSA=auto
CFG_PULSEAUDIO=auto
CFG_COREWLAN=auto
@@ -824,6 +825,7 @@
QT_CFLAGS_SQLITE=
QT_LFLAGS_SQLITE=
QT_LFLAGS_ODBC="-lodbc"
+QT_LFLAGS_TDS=
# flags for libdbus-1
QT_CFLAGS_DBUS=
@@ -837,9 +839,9 @@
QT_CFLAGS_GSTREAMER=
QT_LIBS_GSTREAMER=
-# flags for icd (Maemo Internet Connection Daemon)
-QT_CFLAGS_ICD=
-QT_LIBS_ICD=
+# flags for libconnsettings0 (used for Maemo ICD bearer management plugin)
+QT_CFLAGS_CONNSETTINGS=
+QT_LIBS_CONNSETTINGS=
#-------------------------------------------------------------------------------
# check SQL drivers, mouse drivers and decorations available in this package
@@ -1037,6 +1039,11 @@
shift
VAL=$1
;;
+ -runtimegraphicssystem)
+ VAR="runtimegraphicssystem"
+ shift
+ VAL=$1
+ ;;
-qtlibinfix)
VAR="qtlibinfix"
shift
@@ -1281,11 +1288,18 @@
CFG_GRAPHICS_SYSTEM="openvg"
elif [ "$VAL" = "raster" ]; then
CFG_GRAPHICS_SYSTEM="raster"
+ elif [ "$VAL" = "runtime" ]; then
+ CFG_GRAPHICS_SYSTEM="runtime"
else
UNKNOWN_OPT=yes
fi
fi
;;
+ runtimegraphicssystem)
+ if [ "$VAL" != "runtime" ]; then
+ CFG_RUNTIME_SYSTEM="$VAL"
+ fi
+ ;;
qvfb) # left for commandline compatibility, not documented
if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
@@ -2088,7 +2102,7 @@
[ "$VAR" = "decoration" ] && QMakeVar del "${VAR}s" "$VAL"
[ "$VAR" = "decoration" ] && CFG_DECORATION_ON=`echo "${CFG_DECORATION_ON} " | sed "s,${VAL} ,,g"` && CFG_DECORATION_PLUGIN="$CFG_DECORATION_PLUGIN ${VAL}"
[ "$VAR" = "kbd" ] && QMakeVar del "${VAR}s" "$VAL"
- [ "$VAR" = "kbd" ] && CFG_KBD_ON=`echo "${CFG_MOUSE_ON} " | sed "s,${VAL} ,,g"` && CFG_KBD_PLUGIN="$CFG_KBD_PLUGIN ${VAL}"
+ [ "$VAR" = "kbd" ] && CFG_KBD_ON=`echo "${CFG_KBD_ON} " | sed "s,${VAL} ,,g"` && CFG_KBD_PLUGIN="$CFG_KBD_PLUGIN ${VAL}"
[ "$VAR" = "mouse" ] && QMakeVar del "${VAR}s" "$VAL"
[ "$VAR" = "mouse" ] && CFG_MOUSE_ON=`echo "${CFG_MOUSE_ON} " | sed "s,${VAL} ,,g"` && CFG_MOUSE_PLUGIN="$CFG_MOUSE_PLUGIN ${VAL}"
[ "$VAR" = "gfx" ] && QMakeVar del "${VAR}s" "$VAL"
@@ -2321,7 +2335,7 @@
# detect build style
if [ "$CFG_DEBUG" = "auto" ]; then
- if [ "$PLATFORM_MAC" = "yes" ]; then
+ if [ "$PLATFORM_MAC" = "yes" -o "$XPLATFORM_MINGW" = "yes" ]; then
CFG_DEBUG_RELEASE=yes
CFG_DEBUG=yes
elif [ "$CFG_DEV" = "yes" ]; then
@@ -2400,10 +2414,31 @@
# symlink the mkspecs directory
mkdir -p "$outpath/mkspecs"
- rm -f "$outpath"/mkspecs/*
+ rm -rf "$outpath"/mkspecs/*
ln -s "$relpath"/mkspecs/* "$outpath/mkspecs"
rm -f "$outpath/mkspecs/default"
+ ShadowMkspecs()
+ {
+ rm -rf "$outpath/mkspecs/$1"
+ if [ "$UNAME_SYSTEM" = "Linux" ]; then
+ # This works with GNU coreutils, and is needed for ScratchBox
+ cp -rs "$relpath/mkspecs/$1" "$outpath/mkspecs/$1"
+ else
+ # A simple "cp -rs" doesn't work on Mac. :(
+ find "$relpath/mkspecs/$1" -type d | sed "s,^$relpath,$outpath," | xargs mkdir -p
+ find "$relpath/mkspecs/$1" -type f | sed "s,^$relpath/,," | xargs -n 1 -I % ln -s "$relpath/%" "$outpath/%"
+ fi
+ }
+
+ # Special case for mkspecs/features directory.
+ # To be able to place .prf files into a shadow build directory,
+ # we're creating links for files only. The directory structure is reproduced.
+ ShadowMkspecs features
+
+ # The modules dir is special, too.
+ ShadowMkspecs modules
+
# symlink the doc directory
rm -rf "$outpath/doc"
ln -s "$relpath/doc" "$outpath/doc"
@@ -3675,8 +3710,8 @@
-no-scripttools .... Do not build the QtScriptTools module.
+ -scripttools ....... Build the QtScriptTools module.
- + -no-declarative .....Do not build the declarative module.
- -declarative ....... Build the declarative module.
+ -no-declarative .....Do not build the declarative module.
+ + -declarative ....... Build the declarative module.
-platform target ... The operating system and compiler you are building
on ($PLATFORM).
@@ -3689,6 +3724,8 @@
-graphicssystem <sys> Sets an alternate graphics system. Available options are:
raster - Software rasterizer
opengl - Rendering via OpenGL, Experimental!
+ openvg - Rendering via OpenVG, Experimental!
+
EOF
fi
cat << EOF
@@ -4877,23 +4914,24 @@
exit 1
fi
- # the main commands needed to compile;
- (cd config.tests/symbian
- mkdir -p rcomp
- cd rcomp
- rm -f rcomp_test.rsg
- touch rcomp_test.rpp rcomp_test.rsc rcomp_test.rss
- rcomp -u -m045,046,047 -s./rcomp_test.rpp -o./rcomp_test.rsc -h./rcomp_test.rsg -i./rcomp_test.rss 2>&1 > /dev/null
- if test ! -f rcomp_test.rsg; then
- echo "Finding a working rcomp in your PATH failed."
- echo "Fatal error. Make sure you have the epoc tools working and in your PATH";
- exit 1;
- fi
- )
-
- # compile a simple main that uses printf
if ! echo $XPLATFORM | grep symbian-sbsv2 > /dev/null; then
# Raptor does not support configure tests.
+
+ # the main commands needed to compile;
+ (cd config.tests/symbian
+ mkdir -p rcomp
+ cd rcomp
+ rm -f rcomp_test.rsg
+ touch rcomp_test.rpp rcomp_test.rsc rcomp_test.rss
+ rcomp -u -m045,046,047 -s./rcomp_test.rpp -o./rcomp_test.rsc -h./rcomp_test.rsg -i./rcomp_test.rss 2>&1 > /dev/null
+ if test ! -f rcomp_test.rsg; then
+ echo "Finding a working rcomp in your PATH failed."
+ echo "Fatal error. Make sure you have the epoc tools working and in your PATH";
+ exit 1;
+ fi
+ )
+
+ # compile a simple main that uses printf
if ! "$symbiantests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/symbian/simple "simple" $L_FLAGS $I_FLAGS $l_FLAGS
then
echo "Testing your compiler failed. Could not compile a simple application."
@@ -5147,7 +5185,9 @@
;;
tds)
if [ "$CFG_SQL_tds" != "no" ]; then
- if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/tds "TDS" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
+ [ -z "$SYBASE" ] || QT_LFLAGS_TDS="-L$SYBASE/lib"
+ [ -z "$SYBASE_LIBS" ] || QT_LFLAGS_TDS="$QT_LFLAGS_TDS $SYBASE_LIBS"
+ if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/tds "TDS" $QT_LFLAGS_TDS $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
if [ "$CFG_SQL_tds" = "auto" ]; then
CFG_SQL_tds=plugin
fi
@@ -5416,7 +5456,7 @@
fi
fi
- # Auto-detect GStreamer support (needed for both Phonon & QtMultimedia)
+ # Auto-detect GStreamer support (needed for Phonon)
if [ "$CFG_PHONON" != "no" ]; then
if [ "$CFG_GLIB" = "yes" -a "$CFG_GSTREAMER" != "no" ]; then
if [ -n "$PKG_CONFIG" ]; then
@@ -5467,49 +5507,21 @@
# auto-detect icd support
if [ "$CFG_GLIB" = "yes" -a "$CFG_ICD" != "no" ]; then
- # ICD support has a cyclic dependency on Qt.
if [ -n "$PKG_CONFIG" ]; then
- QT_CFLAGS_ICD=`$PKG_CONFIG --cflags osso-ic conninet 2>/dev/null`
- QT_LIBS_ICD=`$PKG_CONFIG --libs osso-ic conninet 2>/dev/null`
- QT_CFLAGS_QTNETWORK=`$PKG_CONFIG --cflags QtNetwork 2>/dev/null`
- QT_LIBS_QTNETWORK=`$PKG_CONFIG --libs QtNetwork 2>/dev/null`
- else
- QT_CFLAGS_QTNETWORK=
- QT_LIBS_QTNETWORK=
- fi
- if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/icd "ICD" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_ICD $QT_LIBS_ICD $QT_CFLAGS_QTNETWORK $QT_LIBS_QTNETWORK; then
+ QT_CFLAGS_CONNSETTINGS=`$PKG_CONFIG --cflags connsettings 2>/dev/null`
+ QT_LIBS_CONNSETTINGS=`$PKG_CONFIG --libs connsettings 2>/dev/null`
+ fi
+ if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/icd "ICD" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_CONNSETTINGS $QT_LIBS_CONNSETTINGS; then
[ "$CFG_ICD" = "auto" ] && CFG_ICD=yes
- # remove system Qt includes and libraries
- QT_CFLAGS_ICD_TRIMMED=
- for i in $QT_CFLAGS_ICD; do
- case $i in
- *qt*)
- ;;
- *)
- QT_CFLAGS_ICD_TRIMMED="$QT_CFLAGS_ICD_TRIMMED $i"
- ;;
- esac
- done
- QT_LIBS_ICD_TRIMMED=
- for i in $QT_LIBS_ICD; do
- case $i in
- *qt*|-lQt*)
- ;;
- *)
- QT_LIBS_ICD_TRIMMED="$QT_LIBS_ICD_TRIMMED $i"
- ;;
- esac
- done
-
- QMakeVar set QT_CFLAGS_ICD "$QT_CFLAGS_ICD_TRIMMED"
- QMakeVar set QT_LIBS_ICD "$QT_LIBS_ICD_TRIMMED"
+ QMakeVar set QT_CFLAGS_CONNSETTINGS "$QT_CFLAGS_CONNSETTINGS"
+ QMakeVar set QT_LIBS_CONNSETTINGS "$QT_LIBS_CONNSETTINGS"
else
if [ "$CFG_ICD" = "auto" ]; then
CFG_ICD=no
elif [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
# CFG_ICD is "yes"
- echo "The ICD Bearer Management plugin cannot be enabled because osso-ic or conninet was not found."
+ echo "The ICD Bearer Management plugin cannot be enabled because connsettings was not found."
echo " Turn on verbose messaging (-v) to $0 to see the final report."
echo " If you believe this message is in error you may use the continue"
echo " switch (-continue) to $0 to continue."
@@ -6241,9 +6253,13 @@
# find if the platform supports IPv6
if [ "$CFG_IPV6" != "no" ]; then
- if [ "$XPLATFORM" = "symbian-sbsv2" ]; then
- #IPV6 should always be enabled for Symbian release
- CFG_IPV6=yes
+ #
+ # We accidently enabled IPv6 for Qt Symbian in 4.6.x. However the underlying OpenC does not fully support IPV6.
+ # Therefore for 4.7.1 and following we disable it until OpenC either supports it or we have the native Qt
+ # symbian socket engine.
+ #
+ if echo "$XPLATFORM" | grep symbian > /dev/null; then
+ CFG_IPV6=no
elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/ipv6 "IPv6" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
CFG_IPV6=yes
else
@@ -6424,6 +6440,11 @@
CFG_GRAPHICS_SYSTEM=default
fi
+if [ -n "$CFG_RUNTIME_SYSTEM" -a "$CFG_GRAPHICS_SYSTEM" != "runtime" ] || [ "$CFG_RUNTIME_SYSTEM" = "runtime" ]; then
+ echo "Argument to -runtimegraphicssystem is invalid so ignoring..."
+ CFG_RUNTIME_SYSTEM=
+fi
+
if [ "$CFG_PTMALLOC" != "no" ]; then
# build ptmalloc, copy .a file to lib/
echo "Building ptmalloc. Please wait..."
@@ -6715,7 +6736,11 @@
QT_CONFIG="$QT_CONFIG embedded"
rm -f "src/.moc/$QMAKE_OUTDIR/allmoc.cpp" # needs remaking if config changes
fi
-QMakeVar set PRECOMPILED_DIR ".pch/$QMAKE_OUTDIR"
+if [ "$XPLATFORM_MINGW" != "yes" ]; then
+ # Do not set this here for Windows. Let qmake do it so
+ # debug and release precompiled headers are kept separate.
+ QMakeVar set PRECOMPILED_DIR ".pch/$QMAKE_OUTDIR"
+fi
QMakeVar set OBJECTS_DIR ".obj/$QMAKE_OUTDIR"
QMakeVar set MOC_DIR ".moc/$QMAKE_OUTDIR"
QMakeVar set RCC_DIR ".rcc/$QMAKE_OUTDIR"
@@ -6971,6 +6996,8 @@
# turn off exceptions for the compilers that support it
if [ "$PLATFORM_QWS" = "yes" ]; then
COMPILER=`echo $XPLATFORM | cut -f 3- -d-`
+elif [ "$XPLATFORM" != "$PLATFORM" ]; then
+ COMPILER=`echo $XPLATFORM | cut -f 2- -d-`
else
COMPILER=`echo $PLATFORM | cut -f 2- -d-`
fi
@@ -7194,7 +7221,8 @@
fi
if [ "$CFG_WEBKIT" = "yes" ]; then
- QT_CONFIG="$QT_CONFIG webkit"
+ # This include takes care of adding "webkit" to QT_CONFIG.
+ cp -f "$relpath/src/3rdparty/webkit/WebKit/qt/qt_webkit_version.pri" "$outpath/mkspecs/modules/qt_webkit_version.pri"
# The reason we set CFG_WEBKIT, is such that the printed overview of what will be enabled, shows correctly.
CFG_WEBKIT="yes"
else
@@ -7308,6 +7336,7 @@
# some compilers generate binary incompatible code between different versions,
# so we need to generate a build key that is different between these compilers
+COMPAT_COMPILER=
case "$COMPILER" in
g++*)
# GNU C++
@@ -7341,6 +7370,22 @@
esac
[ '!' -z "$COMPILER_VERSION" ] && COMPILER="g++-${COMPILER_VERSION}"
;;
+icc*)
+ # The Intel CC compiler on Unix systems matches the ABI of the g++
+ # that is found on PATH
+ COMPILER="icc"
+ COMPAT_COMPILER="g++-4"
+ case "`g++ -dumpversion` 2>/dev/null" in
+ 2.95.*)
+ COMPAT_COMPILER="g++-2.95.*"
+ ;;
+ 3.*)
+ COMPAT_COMPILER="g++-3.*"
+ ;;
+ *)
+ ;;
+ esac
+ ;;
*)
#
;;
@@ -7449,9 +7494,17 @@
BUILD_OPTIONS="$BUILD_CONFIG $BUILD_OPTIONS"
# extract the operating system from the XPLATFORM
TARGET_OPERATING_SYSTEM=`echo $XPLATFORM | cut -f 2- -d/ | cut -f -1 -d-`
+case "$XPLATFORM" in
+symbian*)
+ QT_BUILD_KEY_SYSTEM_PART="Symbian"
+ ;;
+*)
+ QT_BUILD_KEY_SYSTEM_PART="$CFG_ARCH $TARGET_OPERATING_SYSTEM $COMPILER"
+ ;;
+esac
# when cross-compiling, don't include build-host information (build key is target specific)
-QT_BUILD_KEY="$CFG_USER_BUILD_KEY $CFG_ARCH $TARGET_OPERATING_SYSTEM $COMPILER $BUILD_OPTIONS"
+QT_BUILD_KEY="$CFG_USER_BUILD_KEY $QT_BUILD_KEY_SYSTEM_PART $BUILD_OPTIONS"
if [ -n "$QT_NAMESPACE" ]; then
QT_BUILD_KEY="$QT_BUILD_KEY $QT_NAMESPACE"
fi
@@ -7475,9 +7528,20 @@
QT_BUILD_KEY_COMPAT="$QT_BUILD_KEY_COMPAT $QT_NAMESPACE"
fi
fi
+
+# is this compiler compatible with some other "standard" build key
+QT_BUILD_KEY_COMPAT_COMPILER=
+if [ ! -z "$COMPAT_COMPILER" ]; then
+ QT_BUILD_KEY_COMPAT_COMPILER="$CFG_USER_BUILD_KEY $CFG_ARCH $TARGET_OPERATING_SYSTEM $COMPAT_COMPILER $BUILD_OPTIONS"
+ if [ -n "$QT_NAMESPACE" ]; then
+ QT_BUILD_KEY_COMPAT_COMPILER="$QT_BUILD_KEY_COMPAT_COMPILER $QT_NAMESPACE"
+ fi
+fi
+
# strip out leading/trailing/extra whitespace
QT_BUILD_KEY=`echo $QT_BUILD_KEY | sed -e "s, *, ,g" -e "s,^ *,," -e "s, *$,,"`
QT_BUILD_KEY_COMPAT=`echo $QT_BUILD_KEY_COMPAT | sed -e "s, *, ,g" -e "s,^ *,," -e "s, *$,,"`
+QT_BUILD_KEY_COMPAT_COMPILER=`echo $QT_BUILD_KEY_COMPAT_COMPILER | sed -e "s, *, ,g" -e "s,^ *,," -e "s, *$,,"`
#-------------------------------------------------------------------------------
# part of configuration information goes into qconfig.h
@@ -7526,6 +7590,10 @@
echo "#define QT_BUILD_KEY_COMPAT \"$QT_BUILD_KEY_COMPAT\"" \
>> "$outpath/src/corelib/global/qconfig.h.new"
fi
+if [ -n "$QT_BUILD_KEY_COMPAT_COMPILER" ]; then
+ echo "#define QT_BUILD_KEY_COMPAT2 \"$QT_BUILD_KEY_COMPAT_COMPILER\"" \
+ >> "$outpath/src/corelib/global/qconfig.h.new"
+fi
echo "" >>"$outpath/src/corelib/global/qconfig.h.new"
echo "#ifdef QT_BOOTSTRAPPED" >>"$outpath/src/corelib/global/qconfig.h.new"
@@ -7717,6 +7785,7 @@
[ "$CFG_GRAPHICS_SYSTEM" = "raster" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_RASTER"
[ "$CFG_GRAPHICS_SYSTEM" = "opengl" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_OPENGL"
[ "$CFG_GRAPHICS_SYSTEM" = "openvg" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_OPENVG"
+ [ "$CFG_GRAPHICS_SYSTEM" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_RUNTIME"
fi
# X11/Unix/Mac only configs
@@ -7830,6 +7899,13 @@
EOF
fi
+if [ -n "$CFG_RUNTIME_SYSTEM" ]; then
+cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
+#define QT_DEFAULT_RUNTIME_SYSTEM "$CFG_RUNTIME_SYSTEM"
+
+EOF
+fi
+
# avoid unecessary rebuilds by copying only if qconfig.h has changed
if cmp -s "$outpath/src/corelib/global/qconfig.h" "$outpath/src/corelib/global/qconfig.h.new"; then
rm -f "$outpath/src/corelib/global/qconfig.h.new"
@@ -7906,9 +7982,6 @@
QT_NAMESPACE = $QT_NAMESPACE
QT_NAMESPACE_MAC_CRC = $QT_NAMESPACE_MAC_CRC
-#modules
-for(mod,\$\$list(\$\$files(\$\$[QMAKE_MKSPECS]/modules/qt_*.pri))):include(\$\$mod)
-
EOF
if [ "$CFG_RPATH" = "yes" ]; then
echo "QMAKE_RPATHDIR += \"$QT_INSTALL_LIBS\"" >> "$QTCONFIG.tmp"
@@ -7980,6 +8053,9 @@
if [ -n "$QT_LFLAGS_ODBC" ]; then
echo "QT_LFLAGS_ODBC = $QT_LFLAGS_ODBC" >> "$CACHEFILE.tmp"
fi
+if [ -n "$QT_LFLAGS_TDS" ]; then
+ echo "QT_LFLAGS_TDS = $QT_LFLAGS_TDS" >> "$CACHEFILE.tmp"
+fi
if [ "$QT_EDITION" != "QT_EDITION_OPENSOURCE" ]; then
echo "DEFINES *= QT_EDITION=QT_EDITION_DESKTOP" >> "$CACHEFILE.tmp"