diff options
-rwxr-xr-x | configure | 308 | ||||
-rw-r--r-- | doc/src/snippets/code/doc_src_installation.qdoc | 4 | ||||
-rw-r--r-- | mkspecs/common/symbian/symbian.conf | 1 | ||||
-rw-r--r-- | mkspecs/features/sis_targets.prf | 2 | ||||
-rw-r--r-- | mkspecs/features/symbian/run_on_phone.prf | 2 | ||||
-rw-r--r-- | src/3rdparty/webkit/WebCore/WebCore.pro | 12 | ||||
-rw-r--r-- | src/corelib/tools/qstring.cpp | 4 | ||||
-rw-r--r-- | src/gui/text/text.pri | 2 | ||||
-rw-r--r-- | src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pri | 38 | ||||
-rw-r--r-- | src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pro | 2 | ||||
-rw-r--r-- | src/sql/drivers/sqlite/qsql_sqlite.pri | 2 |
11 files changed, 246 insertions, 131 deletions
@@ -728,7 +728,7 @@ CFG_GLIB=auto CFG_GSTREAMER=auto CFG_QGTKSTYLE=auto CFG_QS60STYLE=auto -CFG_LARGEFILE=yes +CFG_LARGEFILE=auto CFG_OPENSSL=auto CFG_PTMALLOC=no CFG_STL=auto @@ -2935,6 +2935,8 @@ if [ "$PLATFORM" != "$XPLATFORM" -a "$CFG_EMBEDDED" != "no" ]; then esac elif [ "$XPLATFORM_MINGW" = "yes" ]; then [ -z "$CFG_ARCH" ] && CFG_ARCH="windows" +elif echo "$XPLATFORM" | grep symbian > /dev/null; then + CFG_ARCH=symbian elif [ "$PLATFORM_MAC" = "yes" ] || [ -z "$CFG_ARCH" ]; then CFG_ARCH=$CFG_HOST_ARCH fi @@ -3059,12 +3061,17 @@ fi QMAKE_CONF_COMPILER=`getQMakeConf "$XQMAKESPEC" | grep "^QMAKE_CXX[^_A-Z0-9]" | sed "s,.* *= *\(.*\)$,\1," | tail -1` TEST_COMPILER="$CXX" + [ -z "$TEST_COMPILER" ] && TEST_COMPILER=$QMAKE_CONF_COMPILER -if [ -z "$TEST_COMPILER" ]; then - echo "ERROR: Cannot set the compiler for the configuration tests" - exit 1 +if [ "$XPLATFORM" != "symbian-sbsv2" ]; then + #for Symbian we don't need this checking + if [ -z "$TEST_COMPILER" ]; then + echo "ERROR: Cannot set the compiler for the configuration tests" + exit 1 + fi fi + # auto-detect precompiled header support if [ "$CFG_PRECOMPILE" = "auto" ]; then if [ `echo "$CFG_MAC_ARCHS" | wc -w` -gt 1 ]; then @@ -3216,145 +3223,156 @@ fi #prefix if [ -z "$QT_INSTALL_PREFIX" ]; then - if [ -d "$EPOCROOT" ]; then + if [ "$CFG_DEV" = "yes" ]; then + QT_INSTALL_PREFIX="$outpath" # In Development, we use sandboxed builds by default + elif [ "$PLATFORM_QWS" = "yes" ]; then + QT_INSTALL_PREFIX="/usr/local/Trolltech/QtEmbedded-${QT_VERSION}" + if [ "$PLATFORM" != "$XPLATFORM" ]; then + QT_INSTALL_PREFIX="${QT_INSTALL_PREFIX}-${CFG_ARCH}" + fi + elif [ -d "$EPOCROOT" ]; then case "$XPLATFORM" in *symbian*) QT_INSTALL_PREFIX="$EPOCROOT/epoc32/" QT_INSTALL_LIBS="$EPOCROOT/epoc32/release/armv5/lib/" ;; esac - fi - - if [ -z "$QT_INSTALL_PREFIX" ]; then # still empty - if [ "$CFG_DEV" = "yes" ]; then - QT_INSTALL_PREFIX="$outpath" # In Development, we use sandboxed builds by default - elif [ "$PLATFORM_QWS" = "yes" ]; then - QT_INSTALL_PREFIX="/usr/local/Trolltech/QtEmbedded-${QT_VERSION}" - if [ "$PLATFORM" != "$XPLATFORM" ]; then - QT_INSTALL_PREFIX="${QT_INSTALL_PREFIX}-${CFG_ARCH}" - fi - else - QT_INSTALL_PREFIX="/usr/local/Trolltech/Qt-${QT_VERSION}" # the default install prefix is /usr/local/Trolltech/Qt-$QT_VERSION - fi + else + QT_INSTALL_PREFIX="/usr/local/Trolltech/Qt-${QT_VERSION}" # the default install prefix is /usr/local/Trolltech/Qt-$QT_VERSION fi fi QT_INSTALL_PREFIX=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_PREFIX"` -#docs -if [ -z "$QT_INSTALL_DOCS" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - QT_INSTALL_DOCS="/Developer/Documentation/Qt" +if echo $XPLATFORM | grep symbian > /dev/null; then + [ -z "$QT_HOST_PREFIX" ] && QT_HOST_PREFIX="$QT_INSTALL_PREFIX" + [ -z "$QT_INSTALL_DOCS" ] && QT_INSTALL_DOCS= + [ -z "$QT_INSTALL_HEADERS" ] && QT_INSTALL_HEADERS= + [ -z "$QT_INSTALL_LIBS" ] && QT_INSTALL_LIBS= + [ -z "$QT_INSTALL_BINS" ] && QT_INSTALL_BINS= + [ -z "$QT_INSTALL_PLUGINS" ] && QT_INSTALL_PLUGINS="\\\\resource\\\\qt$QT_LIBINFIX\\\\plugins" + [ -z "$QT_INSTALL_IMPORTS" ] && QT_INSTALL_IMPORTS="\\\\resource\\\\qt$QT_LIBINFIX\\\\imports" + [ -z "$QT_INSTALL_DATA" ] && QT_INSTALL_DATA= + [ -z "$QT_INSTALL_TRANSLATIONS" ] && QT_INSTALL_TRANSLATIONS="\\\\resource\\\\qt$QT_LIBINFIX\\\\translations" + [ -z "$QT_INSTALL_SETTINGS" ] && QT_INSTALL_SETTINGS= + [ -z "$QT_INSTALL_EXAMPLES" ] && QT_INSTALL_EXAMPLES= + [ -z "$QT_INSTALL_DEMOS" ] && QT_INSTALL_DEMOS= +else + #docs + if [ -z "$QT_INSTALL_DOCS" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + QT_INSTALL_DOCS="/Developer/Documentation/Qt" + fi fi - fi - [ -z "$QT_INSTALL_DOCS" ] && QT_INSTALL_DOCS="$QT_INSTALL_PREFIX/doc" #fallback + [ -z "$QT_INSTALL_DOCS" ] && QT_INSTALL_DOCS="$QT_INSTALL_PREFIX/doc" #fallback -fi -QT_INSTALL_DOCS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DOCS"` + fi + QT_INSTALL_DOCS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DOCS"` -#headers -if [ -z "$QT_INSTALL_HEADERS" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - if [ "$CFG_FRAMEWORK" = "yes" ]; then - QT_INSTALL_HEADERS= + #headers + if [ -z "$QT_INSTALL_HEADERS" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + if [ "$CFG_FRAMEWORK" = "yes" ]; then + QT_INSTALL_HEADERS= + fi fi fi - fi - [ -z "$QT_INSTALL_HEADERS" ] && QT_INSTALL_HEADERS="$QT_INSTALL_PREFIX/include" + [ -z "$QT_INSTALL_HEADERS" ] && QT_INSTALL_HEADERS="$QT_INSTALL_PREFIX/include" -fi -QT_INSTALL_HEADERS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_HEADERS"` + fi + QT_INSTALL_HEADERS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_HEADERS"` -#libs -if [ -z "$QT_INSTALL_LIBS" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - if [ "$CFG_FRAMEWORK" = "yes" ]; then - QT_INSTALL_LIBS="/Libraries/Frameworks" + #libs + if [ -z "$QT_INSTALL_LIBS" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + if [ "$CFG_FRAMEWORK" = "yes" ]; then + QT_INSTALL_LIBS="/Libraries/Frameworks" + fi fi fi + [ -z "$QT_INSTALL_LIBS" ] && QT_INSTALL_LIBS="$QT_INSTALL_PREFIX/lib" #fallback fi - [ -z "$QT_INSTALL_LIBS" ] && QT_INSTALL_LIBS="$QT_INSTALL_PREFIX/lib" #fallback -fi -QT_INSTALL_LIBS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_LIBS"` + QT_INSTALL_LIBS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_LIBS"` -#bins -if [ -z "$QT_INSTALL_BINS" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - QT_INSTALL_BINS="/Developer/Applications/Qt" + #bins + if [ -z "$QT_INSTALL_BINS" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + QT_INSTALL_BINS="/Developer/Applications/Qt" + fi fi - fi - [ -z "$QT_INSTALL_BINS" ] && QT_INSTALL_BINS="$QT_INSTALL_PREFIX/bin" #fallback + [ -z "$QT_INSTALL_BINS" ] && QT_INSTALL_BINS="$QT_INSTALL_PREFIX/bin" #fallback -fi -QT_INSTALL_BINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_BINS"` + fi + QT_INSTALL_BINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_BINS"` -#plugins -if [ -z "$QT_INSTALL_PLUGINS" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - QT_INSTALL_PLUGINS="/Developer/Applications/Qt/plugins" + #plugins + if [ -z "$QT_INSTALL_PLUGINS" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + QT_INSTALL_PLUGINS="/Developer/Applications/Qt/plugins" + fi fi + [ -z "$QT_INSTALL_PLUGINS" ] && QT_INSTALL_PLUGINS="$QT_INSTALL_PREFIX/plugins" #fallback fi - [ -z "$QT_INSTALL_PLUGINS" ] && QT_INSTALL_PLUGINS="$QT_INSTALL_PREFIX/plugins" #fallback -fi -QT_INSTALL_PLUGINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_PLUGINS"` + QT_INSTALL_PLUGINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_PLUGINS"` -#imports -if [ -z "$QT_INSTALL_IMPORTS" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - QT_INSTALL_IMPORTS="/Developer/Applications/Qt/imports" + #imports + if [ -z "$QT_INSTALL_IMPORTS" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + QT_INSTALL_IMPORTS="/Developer/Applications/Qt/imports" + fi fi + [ -z "$QT_INSTALL_IMPORTS" ] && QT_INSTALL_IMPORTS="$QT_INSTALL_PREFIX/imports" #fallback fi - [ -z "$QT_INSTALL_IMPORTS" ] && QT_INSTALL_IMPORTS="$QT_INSTALL_PREFIX/imports" #fallback -fi -QT_INSTALL_IMPORTS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_IMPORTS"` + QT_INSTALL_IMPORTS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_IMPORTS"` -#data -if [ -z "$QT_INSTALL_DATA" ]; then #default - QT_INSTALL_DATA="$QT_INSTALL_PREFIX" -fi -QT_INSTALL_DATA=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DATA"` + #data + if [ -z "$QT_INSTALL_DATA" ]; then #default + QT_INSTALL_DATA="$QT_INSTALL_PREFIX" + fi + QT_INSTALL_DATA=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DATA"` -#translations -if [ -z "$QT_INSTALL_TRANSLATIONS" ]; then #default - QT_INSTALL_TRANSLATIONS="$QT_INSTALL_PREFIX/translations" -fi -QT_INSTALL_TRANSLATIONS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_TRANSLATIONS"` + #translations + if [ -z "$QT_INSTALL_TRANSLATIONS" ]; then #default + QT_INSTALL_TRANSLATIONS="$QT_INSTALL_PREFIX/translations" + fi + QT_INSTALL_TRANSLATIONS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_TRANSLATIONS"` -#settings -if [ -z "$QT_INSTALL_SETTINGS" ]; then #default - if [ "$PLATFORM_MAC" = "yes" ]; then - QT_INSTALL_SETTINGS=/Library/Preferences/Qt - else - QT_INSTALL_SETTINGS=/etc/xdg + #settings + if [ -z "$QT_INSTALL_SETTINGS" ]; then #default + if [ "$PLATFORM_MAC" = "yes" ]; then + QT_INSTALL_SETTINGS=/Library/Preferences/Qt + else + QT_INSTALL_SETTINGS=/etc/xdg + fi fi -fi -QT_INSTALL_SETTINGS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_SETTINGS"` + QT_INSTALL_SETTINGS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_SETTINGS"` -#examples -if [ -z "$QT_INSTALL_EXAMPLES" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - QT_INSTALL_EXAMPLES="/Developer/Examples/Qt" + #examples + if [ -z "$QT_INSTALL_EXAMPLES" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + QT_INSTALL_EXAMPLES="/Developer/Examples/Qt" + fi fi + [ -z "$QT_INSTALL_EXAMPLES" ] && QT_INSTALL_EXAMPLES="$QT_INSTALL_PREFIX/examples" #fallback fi - [ -z "$QT_INSTALL_EXAMPLES" ] && QT_INSTALL_EXAMPLES="$QT_INSTALL_PREFIX/examples" #fallback -fi -QT_INSTALL_EXAMPLES=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_EXAMPLES"` + QT_INSTALL_EXAMPLES=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_EXAMPLES"` -#demos -if [ -z "$QT_INSTALL_DEMOS" ]; then #default - if [ "$CFG_PREFIX_INSTALL" = "no" ]; then - if [ "$PLATFORM_MAC" = "yes" ]; then - QT_INSTALL_DEMOS="/Developer/Examples/Qt/Demos" + #demos + if [ -z "$QT_INSTALL_DEMOS" ]; then #default + if [ "$CFG_PREFIX_INSTALL" = "no" ]; then + if [ "$PLATFORM_MAC" = "yes" ]; then + QT_INSTALL_DEMOS="/Developer/Examples/Qt/Demos" + fi fi + [ -z "$QT_INSTALL_DEMOS" ] && QT_INSTALL_DEMOS="$QT_INSTALL_PREFIX/demos" fi - [ -z "$QT_INSTALL_DEMOS" ] && QT_INSTALL_DEMOS="$QT_INSTALL_PREFIX/demos" + QT_INSTALL_DEMOS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DEMOS"` fi -QT_INSTALL_DEMOS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DEMOS"` #------------------------------------------------------------------------------- # help - interactive parts of the script _after_ this section please @@ -4483,8 +4501,13 @@ if true; then ###[ '!' -f "$outpath/bin/qmake" ]; mv -f "$QMAKE_QCONFIG_H" "$QCONFIG_H" #mkspecs/default is used as a (gasp!) default mkspec so QMAKESPEC needn't be set once configured - rm -f mkspecs/default - ln -s `echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"` mkspecs/default + rm -rf mkspecs/default + if echo "$XPLATFORM" | grep "symbian-sbsv2" > /dev/null ; then +#Link is not supported for Symbian build system + cp -a mkspecs/`echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"` mkspecs/default + else + ln -s `echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"` mkspecs/default + fi # fix makefiles for mkfile in GNUmakefile Makefile; do EXTRA_LFLAGS= @@ -4714,6 +4737,10 @@ case "$XPLATFORM" in *symbian*) QMakeVar set styles "windows s60" #overwrite previous default CFG_LIBFREETYPE=no + if [ "$CFG_LARGEFILE" = auto ]; then + CFG_LARGEFILE=no + fi + if test -z "$EPOCROOT"; then echo "Please export EPOCROOT. It should point to the sdk install dir" exit 1 @@ -4738,15 +4765,24 @@ case "$XPLATFORM" in *symbian*) ) # 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." - echo "Fatal error; Rerun configure with -verbose to get more details." - exit 1; + if ! echo $XPLATFORM | grep symbian-sbsv2 > /dev/null; then + # Raptor does not support configure tests. + 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." + echo "Fatal error; Rerun configure with -verbose to get more details." + exit 1; + fi fi ;; esac +if [ "$CFG_LARGEFILE" = "auto" ]; then + #Large files should be enabled for all Linux systems + CFG_LARGEFILE=yes +fi + + if [ "$CFG_S60" = "auto" ]; then if echo "$XPLATFORM" | grep symbian > /dev/null; then CFG_S60=yes @@ -5062,8 +5098,11 @@ for _SQLDR in $CFG_SQL_AVAILABLE; do if [ "$CFG_SQL_sqlite" = "auto" ]; then # the default case "$XPLATFORM" in symbian*) - # sqlite on symbian is typically not build in Qt but deployed as a pre-existing sis file. - CFG_SQL_sqlite=no + # sqlite on symbian is typically not build in Qt but deployed as a pre-existing sis file and should be marked as driver. + # Configuration parameters should be set + CFG_SQL_sqlite=qt + QT_LFLAGS_SQLITE=-lsqlite3 + QMAKE_CONFIG="$QMAKE_CONFIG system-sqlite" ;; esac fi @@ -6069,7 +6108,10 @@ fi # find if the platform supports IPv6 if [ "$CFG_IPV6" != "no" ]; then - if "$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 + if [ "$XPLATFORM" = "symbian-sbsv2" ]; then + #IPV6 should always be enabled for Symbian release + CFG_IPV6=yes + 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 if [ "$CFG_IPV6" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then @@ -6182,7 +6224,7 @@ if [ "$CFG_GETIFADDRS" != "no" ]; then fi # detect OpenSSL -if [ "$CFG_OPENSSL" != "no" ]; then +if [ "$CFG_OPENSSL" != "no" ] && [ "$XPLATFORM" != "symbian-sbsv2" ]; then if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/openssl "OpenSSL" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then if [ "$CFG_OPENSSL" = "auto" ]; then CFG_OPENSSL=yes @@ -6198,6 +6240,11 @@ if [ "$CFG_OPENSSL" != "no" ]; then CFG_OPENSSL=no fi fi +else + if [ "$CFG_OPENSSL" = "auto" ] && [ "$XPLATFORM" = "symbian-sbsv2" ]; then + #OpenSSl should be enabled for Symbian release + CFG_OPENSSL=yes + fi fi # detect OpenVG support @@ -6253,12 +6300,15 @@ if [ "$CFG_PTMALLOC" != "no" ]; then QMakeVar add QMAKE_LFLAGS "$outpath/lib/libptmalloc3.a" fi -if [ "$CFG_ALSA" = "auto" ]; then +if [ "$CFG_ALSA" = "auto" ] && [ "$XPLATFORM" != "symbian-sbsv2" ]; then if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/alsa "alsa" $L_FLAGS $I_FLAGS $l_FLAGS; then CFG_ALSA=yes else CFG_ALSA=no fi +elif [ "$XPLATFORM" = "symbian-sbsv2" ]; then + # Disabled for Symbian release + CFG_ALSA=no fi if [ "$CFG_JAVASCRIPTCORE_JIT" = "yes" ] || [ "$CFG_JAVASCRIPTCORE_JIT" = "auto" ]; then @@ -6278,7 +6328,9 @@ fi if [ "$CFG_AUDIO_BACKEND" = "auto" ]; then if echo "$XPLATFORM" | grep symbian > /dev/null 2>&1; then - "$symbiantests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/symbian/audio "audio" $L_FLAGS $I_FLAGS $l_FLAGS + if "$symbiantests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/symbian/audio "audio" $L_FLAGS $I_FLAGS $l_FLAGS ; then + CFG_AUDIO_BACKEND=yes + fi else CFG_AUDIO_BACKEND=yes fi @@ -6287,6 +6339,9 @@ fi if [ "$CFG_LARGEFILE" != "yes" ] && [ "$XPLATFORM_MINGW" = "yes" ]; then echo "Warning: largefile support cannot be disabled for win32." CFG_LARGEFILE="yes" +elif [ "$CFG_LARGEFILE" != "no" ] && echo "$XPLATFORM" | grep "symbian" > /dev/null; then + echo "Warning: largefile support cannot be enabled for symbian." + CFG_LARGEFILE="no" fi #------------------------------------------------------------------------------- @@ -6633,6 +6688,7 @@ elif [ "$CFG_TIFF" = "yes" ]; then fi if [ "$CFG_LIBFREETYPE" = "no" ]; then QT_CONFIG="$QT_CONFIG no-freetype" + QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_FREETYPE" elif [ "$CFG_LIBFREETYPE" = "system" ]; then QT_CONFIG="$QT_CONFIG system-freetype" else @@ -6664,9 +6720,9 @@ if [ "$CFG_S60" = "yes" ]; then fi if [ "$CFG_SYMBIAN_DEFFILES" = "yes" ]; then - QMAKE_CONFIG="$QMAKE_CONFIG def_files" + QTCONFIG_CONFIG="$QTCONFIG_CONFIG def_files" else - QMAKE_CONFIG="$QMAKE_CONFIG def_files_disabled" + QTCONFIG_CONFIG="$QTCONFIG_CONFIG def_files_disabled" fi [ "$CFG_NIS" = "yes" ] && QT_CONFIG="$QT_CONFIG nis" @@ -7637,12 +7693,14 @@ else mv "$outpath/src/corelib/global/qconfig.h.new" "$outpath/src/corelib/global/qconfig.h" chmod -w "$outpath/src/corelib/global/qconfig.h" for conf in "$outpath/include/QtCore/qconfig.h" "$outpath/include/Qt/qconfig.h"; do - if [ '!' -f "$conf" ]; then + if echo "$XPLATFORM" | grep "symbian-sbsv2" > /dev/null 2>&1 ; then + [ -e "$conf" ] && rm -rf "$conf" + cp -a "$outpath/src/corelib/global/qconfig.h" "$conf" + elif [ '!' -f "$conf" ]; then ln -s "$outpath/src/corelib/global/qconfig.h" "$conf" fi done fi - #------------------------------------------------------------------------------- # save configuration into qconfig.pri #------------------------------------------------------------------------------- @@ -7712,6 +7770,10 @@ if [ -n "$QT_GCC_MAJOR_VERSION" ]; then echo "QT_GCC_MINOR_VERSION = $QT_GCC_MINOR_VERSION" >> "$QTCONFIG.tmp" echo "QT_GCC_PATCH_VERSION = $QT_GCC_PATCH_VERSION" >> "$QTCONFIG.tmp" fi +if echo "$XPLATFORM" | grep "symbian-sbsv2" > /dev/null 2>&1; then + echo "#Qt for symbian FPU settings" >> "$QTCONFIG.tmp" + echo "MMP_RULES += \"ARMFPU softvfp\"" >> "$QTCONFIG.tmp" +fi # replace qconfig.pri if it differs from the newly created temp file if cmp -s "$QTCONFIG.tmp" "$QTCONFIG"; then rm -f "$QTCONFIG.tmp" @@ -8286,7 +8348,9 @@ for file in .projects .projects.3; do *winmain/winmain.pro) [ "$XPLATFORM_MINGW" = "yes" ] || continue SPEC=$XQMAKESPEC ;; - *s60main/s60main.pro) continue ;; + *s60main/s60main.pro) if [ -z "`echo "$XPLATFORM" | grep "symbian" >/dev/null`"]; then + continue + fi;; *examples/activeqt/*) continue ;; */qmake/qmake.pro) continue ;; *tools/bootstrap*|*tools/moc*|*tools/rcc*|*tools/uic*|*linguist/lrelease*) SPEC=$QMAKESPEC ;; diff --git a/doc/src/snippets/code/doc_src_installation.qdoc b/doc/src/snippets/code/doc_src_installation.qdoc index c46159c..0593567 100644 --- a/doc/src/snippets/code/doc_src_installation.qdoc +++ b/doc/src/snippets/code/doc_src_installation.qdoc @@ -250,12 +250,12 @@ export PATH //! [38] cd /home/user/qt/%VERSION% -./configure -platform linux-g++ -xplatform symbian/linux-armcc -arch symbian +./configure -platform linux-g++ -xplatform symbian/linux-armcc //! [38] //! [39] cd /home/user/qt/%VERSION% -./configure -platform linux-g++ -xplatform symbian/linux-gcce -arch symbian -no-webkit +./configure -platform linux-g++ -xplatform symbian/linux-gcce -no-webkit //! [39] //! [40] diff --git a/mkspecs/common/symbian/symbian.conf b/mkspecs/common/symbian/symbian.conf index c1b31e5..7ec5c6c 100644 --- a/mkspecs/common/symbian/symbian.conf +++ b/mkspecs/common/symbian/symbian.conf @@ -105,6 +105,7 @@ QMAKE_IDL = midl QMAKE_LIB = ar -ru QMAKE_RC = windres QMAKE_ZIP = zip -r -9 +QMAKE_UNZIP = unzip -o QMAKE_TAR = tar -cf QMAKE_GZIP = gzip -9f diff --git a/mkspecs/features/sis_targets.prf b/mkspecs/features/sis_targets.prf index 19972d7..615bbe5 100644 --- a/mkspecs/features/sis_targets.prf +++ b/mkspecs/features/sis_targets.prf @@ -4,7 +4,7 @@ GENERATE_SIS_TARGETS = false contains(TEMPLATE, app): GENERATE_SIS_TARGETS = true else:!equals(DEPLOYMENT, default_deployment) { for(dep_item, $$list($$DEPLOYMENT)) { - dep_item_sources = $$eval($${dep_item}.sources) + eval(dep_item_sources = $${dep_item}.sources) !isEmpty(dep_item_sources): GENERATE_SIS_TARGETS = true } } diff --git a/mkspecs/features/symbian/run_on_phone.prf b/mkspecs/features/symbian/run_on_phone.prf index 818151a..6fd400a 100644 --- a/mkspecs/features/symbian/run_on_phone.prf +++ b/mkspecs/features/symbian/run_on_phone.prf @@ -5,7 +5,7 @@ GENERATE_RUN_TARGETS = false contains(TEMPLATE, app): GENERATE_RUN_TARGETS = true else:!equals(DEPLOYMENT, default_deployment) { for(dep_item, $$list($$DEPLOYMENT)) { - dep_item_sources = $$eval($${dep_item}.sources) + eval(dep_item_sources = $${dep_item}.sources) !isEmpty(dep_item_sources): GENERATE_RUN_TARGETS = true } } diff --git a/src/3rdparty/webkit/WebCore/WebCore.pro b/src/3rdparty/webkit/WebCore/WebCore.pro index c1661a4..2047143 100644 --- a/src/3rdparty/webkit/WebCore/WebCore.pro +++ b/src/3rdparty/webkit/WebCore/WebCore.pro @@ -117,8 +117,16 @@ win32-g++* { QMAKE_LIBDIR_POST += $$split(TMPPATH,";") } -# Assume that symbian OS always comes with sqlite -symbian:!CONFIG(QTDIR_build): CONFIG += system-sqlite +symbian { + !CONFIG(QTDIR_build) { + # Test if symbian OS comes with sqlite + exists($${EPOCROOT}epoc32/release/armv5/lib/sqlite3.dso):CONFIG *= system-sqlite + } else:!symbian-abld:!symbian-sbsv2 { + # When bundled with Qt, all Symbian build systems extract their own sqlite files if + # necessary, but on non-mmp based ones we need to specify this ourselves. + include($$QT_SOURCE_TREE/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pri) + } +} diff --git a/src/corelib/tools/qstring.cpp b/src/corelib/tools/qstring.cpp index b5651de..d6ab5da 100644 --- a/src/corelib/tools/qstring.cpp +++ b/src/corelib/tools/qstring.cpp @@ -69,6 +69,10 @@ #include <winnls.h> #endif +#ifdef Q_OS_SYMBIAN +#include <e32cmn.h> +#endif + #include <limits.h> #include <string.h> #include <stdlib.h> diff --git a/src/gui/text/text.pri b/src/gui/text/text.pri index 34311a9..af8daa5 100644 --- a/src/gui/text/text.pri +++ b/src/gui/text/text.pri @@ -197,8 +197,6 @@ contains(QT_CONFIG, freetype) { # pull in the proper freetype2 include directory include($$QT_SOURCE_TREE/config.tests/unix/freetype/freetype.pri) LIBS_PRIVATE += -lfreetype -} else { - DEFINES *= QT_NO_FREETYPE } contains(QT_CONFIG, fontconfig) { diff --git a/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pri b/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pri new file mode 100644 index 0000000..ab8d846 --- /dev/null +++ b/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pri @@ -0,0 +1,38 @@ +# We just want to include the sqlite3 binaries for Symbian for platforms that do not have them. +!symbian-abld:!symbian-sbsv2 { + !symbian_no_export_sqlite:!exists($${EPOCROOT}epoc32/release/armv5/lib/sqlite3.dso) { + symbian_sqlite3_zip_file = $$PWD/SQLite3_v9.2.zip + + # The QMAKE_COPY section is to update timestamp on the file. + symbian_sqlite3_header.input = symbian_sqlite3_zip_file + symbian_sqlite3_header.output = sqlite3.h + !isEmpty(MOC_DIR):symbian_sqlite3_header.output = $$MOC_DIR/$$symbian_sqlite3_header.output + symbian_sqlite3_header.CONFIG = combine no_link + symbian_sqlite3_header.dependency_type = TYPE_C + symbian_sqlite3_header.commands = $$QMAKE_UNZIP -j ${QMAKE_FILE_NAME} epoc32/include/stdapis/${QMAKE_FILE_OUT_BASE}.h \ + && $$QMAKE_COPY ${QMAKE_FILE_OUT_BASE}.h ${QMAKE_FILE_OUT}.tmp \ + && $$QMAKE_DEL_FILE ${QMAKE_FILE_OUT_BASE}.h \ + && $$QMAKE_MOVE ${QMAKE_FILE_OUT}.tmp ${QMAKE_FILE_OUT} + QMAKE_EXTRA_COMPILERS += symbian_sqlite3_header + + # The QMAKE_COPY section is to update timestamp on the file. + symbian_sqlite3_dso.input = symbian_sqlite3_zip_file + symbian_sqlite3_dso.output = sqlite3.dso + !isEmpty(OBJECTS_DIR):symbian_sqlite3_dso.output = $$OBJECTS_DIR/$$symbian_sqlite3_dso.output + symbian_sqlite3_dso.CONFIG = combine no_link target_predeps + symbian_sqlite3_dso.commands = $$QMAKE_UNZIP -j ${QMAKE_FILE_NAME} epoc32/release/armv5/lib/${QMAKE_FILE_OUT_BASE}.dso \ + && $$QMAKE_COPY ${QMAKE_FILE_OUT_BASE}.dso ${QMAKE_FILE_OUT}.tmp \ + && $$QMAKE_DEL_FILE ${QMAKE_FILE_OUT_BASE}.dso \ + && $$QMAKE_MOVE ${QMAKE_FILE_OUT}.tmp ${QMAKE_FILE_OUT} + QMAKE_EXTRA_COMPILERS += symbian_sqlite3_dso + + symbian_sqlite3_ver_dso.input = symbian_sqlite3_zip_file + symbian_sqlite3_ver_dso.output = sqlite3{00060003}.dso + !isEmpty(OBJECTS_DIR):symbian_sqlite3_ver_dso.output = $$OBJECTS_DIR/$$symbian_sqlite3_ver_dso.output + symbian_sqlite3_ver_dso.CONFIG = $$symbian_sqlite3_dso.CONFIG + symbian_sqlite3_ver_dso.commands = $$symbian_sqlite3_dso.commands + QMAKE_EXTRA_COMPILERS += symbian_sqlite3_ver_dso + + QMAKE_LIBDIR *= $$OBJECTS_DIR + } +} diff --git a/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pro b/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pro index 691cce1..0d233e6 100644 --- a/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pro +++ b/src/plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pro @@ -2,7 +2,7 @@ TEMPLATE = subdirs # We just want to export the sqlite3 binaries for Symbian for platforms that do not have them. -symbian { +symbian-abld|symbian-sbsv2 { !symbian_no_export_sqlite:!exists($${EPOCROOT}epoc32/release/armv5/lib/sqlite3.dso) { BLD_INF_RULES.prj_exports += ":zip SQLite3_v9.2.zip" } diff --git a/src/sql/drivers/sqlite/qsql_sqlite.pri b/src/sql/drivers/sqlite/qsql_sqlite.pri index 7ad5936..3560c64 100644 --- a/src/sql/drivers/sqlite/qsql_sqlite.pri +++ b/src/sql/drivers/sqlite/qsql_sqlite.pri @@ -1,6 +1,8 @@ HEADERS += $$PWD/qsql_sqlite.h SOURCES += $$PWD/qsql_sqlite.cpp +symbian:include(../../plugins/sqldrivers/sqlite_symbian/sqlite_symbian.pri) + !system-sqlite:!contains(LIBS, .*sqlite3.*) { include($$PWD/../../../3rdparty/sqlite.pri) } else { |