diff --git a/.gitignore b/.gitignore index 3aeefbafe9..33387c5bc4 100644 --- a/.gitignore +++ b/.gitignore @@ -122,6 +122,7 @@ translations/*.qm translations/*_untranslated.ts qrc_*.cpp +src/concurrent/qtconcurrentversion.h src/corelib/qtcoreversion.h src/dbus/qtdbusversion.h src/gui/qtguiversion.h diff --git a/bin/syncqt b/bin/syncqt index 9129de053a..581233a162 100755 --- a/bin/syncqt +++ b/bin/syncqt @@ -351,7 +351,7 @@ sub syncHeader { #write it my $iheader_out = fixPaths($iheader, $header_dir); - open HEADER, ">$header" || die "Could not open $header for writing!\n"; + open(HEADER, ">$header") || die "Could not open $header for writing: $!\n"; print HEADER "#include \"$iheader_out\"\n"; close HEADER; if(defined($ts)) { @@ -1133,7 +1133,7 @@ foreach my $lib (@modules_to_sync) { my $header_dir = dirname($header_path); make_path($header_dir, $lib, $verbose_level); - open HEADER, ">$header_path" || die "Could not open $header_path for writing!\n"; + open(HEADER, ">$header_path") || die "Could not open $header_path for writing: $!\n"; print HEADER "#ifndef $guard\n"; print HEADER "#define $guard\n"; my $warning = "Header <$lib/"; diff --git a/config.tests/qws/ahi/ahi.pro b/config.tests/qws/ahi/ahi.pro deleted file mode 100644 index 532a565bc4..0000000000 --- a/config.tests/qws/ahi/ahi.pro +++ /dev/null @@ -1,3 +0,0 @@ -SOURCES = ahi.cpp -CONFIG -= qt -LIBS += -lahi -lahioem diff --git a/config.tests/qws/directfb/directfb.pro b/config.tests/qws/directfb/directfb.pro deleted file mode 100644 index db14d3ba48..0000000000 --- a/config.tests/qws/directfb/directfb.pro +++ /dev/null @@ -1,5 +0,0 @@ -SOURCES = directfb.cpp -CONFIG -= qt - -QMAKE_CXXFLAGS += $$QT_CFLAGS_DIRECTFB -LIBS += $$QT_LIBS_DIRECTFB diff --git a/config.tests/qws/sound/sound.pro b/config.tests/qws/sound/sound.pro deleted file mode 100644 index 4ad3376dca..0000000000 --- a/config.tests/qws/sound/sound.pro +++ /dev/null @@ -1,2 +0,0 @@ -SOURCES = sound.cpp -CONFIG -= qt diff --git a/config.tests/qws/svgalib/svgalib.pro b/config.tests/qws/svgalib/svgalib.pro deleted file mode 100644 index 169065239b..0000000000 --- a/config.tests/qws/svgalib/svgalib.pro +++ /dev/null @@ -1,3 +0,0 @@ -SOURCES = svgalib.cpp -CONFIG -= qt -LIBS += -lvgagl -lvga diff --git a/config.tests/unix/endian.test b/config.tests/unix/endian.test index 6c5c311888..a662011a27 100755 --- a/config.tests/unix/endian.test +++ b/config.tests/unix/endian.test @@ -41,7 +41,11 @@ elif strings - $binary | grep MostSignificantByteFirst >/dev/null 2>&1; then fi # make clean as this tests is compiled for both the host and the target -$MAKE distclean +if [ "$VERBOSE" = "yes" ]; then + $MAKE distclean +else + $MAKE distclean >/dev/null 2>&1 +fi # done if [ "$ENDIAN" = "LITTLE" ]; then diff --git a/configure b/configure index 20df77f395..8b8fc7d008 100755 --- a/configure +++ b/configure @@ -127,16 +127,76 @@ getQMakeConf1() esac; done < "$1" } +getQMakeConf2() +{ + $AWK ' +BEGIN { + values["LITERAL_WHITESPACE"] = " " + values["LITERAL_DOLLAR"] = "$" +} +/^[_A-Z0-9.]+[ \t]*\+?=/ { + valStart = index($0, "=") + 1 + + append = 0 + if (substr($0, valStart - 2, 1) == "+") { + append = 1 + } + + variable = substr($0, 0, valStart - 2 - append) + value = substr($0, valStart) + gsub("[ \t]+", "", variable) + gsub("^[ \t]+", "", value) + gsub("[ \t]+$", "", value) + + ovalue = "" + while (match(value, /\$\$(\{[_A-Z0-9.]+\}|[_A-Z0-9.]+)/)) { + ovalue = ovalue substr(value, 1, RSTART - 1) + var = substr(value, RSTART + 2, RLENGTH - 2) + value = substr(value, RSTART + RLENGTH) + if (var ~ /^{/) { + var = substr(var, 2, length(var) - 2) + } + ovalue = ovalue values[var] + } + ovalue = ovalue value + + combinedValue = values[variable] + if (append == 1 && length(combinedValue) > 0) { + combinedValue = combinedValue " " ovalue + } else { + combinedValue = ovalue + } + values[variable] = combinedValue +} +END { + for (var in values) { + print var "=" values[var] + } +} +' +} + +getQMakeConf3() +{ + echo "$2" | $AWK "/^($1)=/ { print substr(\$0, index(\$0, \"=\") + 1) }" +} # relies on $QMAKESPEC being set correctly. parses include statements in # qmake.conf and prints out the expanded file getQMakeConf() { - tmpSPEC="$QMAKESPEC" - if [ -n "$1" ]; then - tmpSPEC="$1" + if [ -z "$specvals" ]; then + specvals=`getQMakeConf1 "$QMAKESPEC/qmake.conf" | getQMakeConf2` fi - getQMakeConf1 "$tmpSPEC/qmake.conf" + getQMakeConf3 "$1" "$specvals" +} + +getXQMakeConf() +{ + if [ -z "$xspecvals" ]; then + xspecvals=`getQMakeConf1 "$XQMAKESPEC/qmake.conf" | getQMakeConf2` + fi + getQMakeConf3 "$1" "$xspecvals" } # relies on $TEST_COMPILER being set correctly @@ -185,7 +245,6 @@ fi #------------------------------------------------------------------------------- PLATFORM_X11=no -PLATFORM_QWS=no PLATFORM_QPA=yes BUILD_ON_MAC=no PLATFORM_MAC=no @@ -230,7 +289,6 @@ fi #------------------------------------------------------------------------------- COMMERCIAL_USER=ask CFG_DEV=no -CFG_EMBEDDED=no CFG_RTOS_ENABLED=yes EditionString=Commercial @@ -258,16 +316,6 @@ earlyArgParse() VAR=`echo $1 | sed "s,^--no-\(.*\),\1,"` VAL=no ;; - -embedded) - VAR=embedded - # this option may or may not be followed by an argument - if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then - VAL=auto - else - shift; - VAL=$1 - fi - ;; -embedded-lite|-qpa) VAR=qpa # this option may or may not be followed by an argument @@ -307,25 +355,15 @@ earlyArgParse() UNKNOWN_OPT=no case "$VAR" in - embedded) - CFG_EMBEDDED="$VAL" - PLATFORM_X11=no - PLATFORM_MAC=no - PLATFORM_QWS=yes - PLATFORM_QPA=no - ;; qpa) - CFG_EMBEDDED="no" if [ "$PLATFORM_QPA" != "no" ]; then if [ "$PLATFORM_QPA" = "maybe" ]; then PLATFORM_X11=no PLATFORM_MAC=no - PLATFORM_QWS=no PLATFORM_QPA=yes fi else echo "No license exists to enable Qt QPA. Disabling." - CFG_EMBEDDED=no fi ;; developer-build) @@ -376,7 +414,6 @@ elif [ $COMMERCIAL_USER = "yes" ]; then # one of commercial editions [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes [ "$PLATFORM_QPA" = "maybe" ] && PLATFORM_QPA=no - [ "$PLATFORM_QWS" = "maybe" ] && PLATFORM_QWS=no # read in the license file if [ -f "$LICENSE_FILE" ]; then @@ -489,7 +526,6 @@ elif [ $COMMERCIAL_USER = "yes" ]; then *) Platform=Linux/X11 [ "$PLATFORM_MAC" = "yes" ] && Platform='Mac OS X' - [ "$PLATFORM_QWS" = "yes" ] && Platform='Embedded Linux' echo echo "You are not licensed for the $Platform platform." echo @@ -659,7 +695,6 @@ CFG_EGL=no CFG_EGL_GLES_INCLUDES=no CFG_SSE=auto CFG_FONTCONFIG=auto -CFG_QWS_FREETYPE=auto CFG_LIBFREETYPE=auto CFG_SQL_AVAILABLE= QT_DEFAULT_BUILD_PARTS="libs examples tests" @@ -681,17 +716,6 @@ CFG_KBD_ON="tty" #default, see QMakeVar above CFG_MOUSE_AVAILABLE="pc linuxtp linuxinput tslib qvfb" CFG_MOUSE_ON="pc linuxtp" #default, see QMakeVar above -if [ -f "$relpath/src/gui/embedded/qscreenqnx_qws.cpp" ]; then - CFG_KBD_AVAILABLE="${CFG_KBD_AVAILABLE} qnx" - CFG_MOUSE_AVAILABLE="${CFG_MOUSE_AVAILABLE} qnx" - CFG_GFX_AVAILABLE="${CFG_GFX_AVAILABLE} qnx" -fi -if [ -f "$relpath/src/gui/embedded/qscreenintegrityfb_qws.cpp" ]; then - CFG_KBD_AVAILABLE="${CFG_KBD_AVAILABLE} integrity" - CFG_MOUSE_AVAILABLE="${CFG_MOUSE_AVAILABLE} integrity" - CFG_GFX_AVAILABLE="${CFG_GFX_AVAILABLE} integrityfb" -fi - CFG_ARCH= CFG_HOST_ARCH= CFG_KBD_PLUGIN_AVAILABLE= @@ -739,7 +763,6 @@ CFG_SSE4_2=auto CFG_AVX=auto CFG_REDUCE_RELOCATIONS=auto CFG_NAS=no -CFG_QWS_DEPTHS=all CFG_ACCESSIBILITY=auto CFG_ENDIAN=auto CFG_HOST_ENDIAN=auto @@ -945,7 +968,7 @@ while [ "$#" -gt 0 ]; do ;; #Qt style options that pass an argument -qconfig) - if [ "$PLATFORM_QWS" != "yes" -a "$PLATFORM_QPA" != "yes" ]; then + if [ "$PLATFORM_QPA" != "yes" ]; then echo echo "WARNING: -qconfig is only tested and supported on Qt for Embedded Linux." echo @@ -975,16 +998,6 @@ while [ "$#" -gt 0 ]; do VAR=fatal_error VAL=no ;; - -embedded) - VAR=embedded - # this option may or may not be followed by an argument - if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then - VAL=auto - else - shift; - VAL=$1 - fi - ;; -embedded-lite|-qpa) VAR=qpa # this option may or may not be followed by an argument @@ -1207,18 +1220,9 @@ while [ "$#" -gt 0 ]; do sxe) CFG_SXE="$VAL" ;; - embedded) - CFG_EMBEDDED="$VAL" - PLATFORM_X11=no - PLATFORM_MAC=no - PLATFORM_QWS=yes - PLATFORM_QPA=no - ;; embedded-lite|qpa) - CFG_EMBEDDED="no" PLATFORM_X11=no PLATFORM_MAC=no - PLATFORM_QWS=no PLATFORM_QPA=yes ;; sse) @@ -1253,9 +1257,6 @@ while [ "$#" -gt 0 ]; do UNKNOWN_OPT=yes fi ;; - depths) - CFG_QWS_DEPTHS="$VAL" - ;; opengl) if [ "$VAL" = "auto" ] || [ "$VAL" = "desktop" ] || [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || @@ -1301,7 +1302,6 @@ while [ "$#" -gt 0 ]; do x11) PLATFORM_QPA=no PLATFORM_MAC=no - PLATFORM_QWS=no PLATFORM_X11=yes ;; sdk) @@ -1682,14 +1682,6 @@ while [ "$#" -gt 0 ]; do UNKNOWN_OPT=yes fi ;; - freetype) - [ "$VAL" = "qt" ] && VAL=yes - if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then - CFG_QWS_FREETYPE="$VAL" - else - UNKNOWN_OPT=yes - fi - ;; zlib) [ "$VAL" = "qt" ] && VAL=yes if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then @@ -2233,7 +2225,7 @@ if [ "$OPT_SHADOW" = "yes" ]; then [ "$OPT_VERBOSE" = "yes" ] && echo "Performing shadow build..." fi -if [ "$PLATFORM_X11" = "yes" -o "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ] && [ "$CFG_DEBUG_RELEASE" = "yes" ]; then +if [ "$PLATFORM_X11" = "yes" -o "$PLATFORM_QPA" = "yes" ] && [ "$CFG_DEBUG_RELEASE" = "yes" ]; then echo echo "WARNING: -debug-and-release is not supported anymore on Qt/X11 and Qt for Embedded Linux" echo "Qt can be built in release mode with separate debug information, so" @@ -2329,7 +2321,7 @@ if [ "$OPT_SHADOW" = "yes" ]; then fi # symlink fonts to be able to run application from build directory -if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ] && [ ! -d "${outpath}/lib/fonts" ]; then +if [ "$PLATFORM_QPA" = "yes" ] && [ ! -d "${outpath}/lib/fonts" ]; then if [ "$PLATFORM" = "$XPLATFORM" ]; then mkdir -p "${outpath}/lib" ln -s "${relpath}/lib/fonts" "${outpath}/lib/fonts" @@ -2368,85 +2360,6 @@ fi ### help # auto-detect all that hasn't been specified in the arguments #------------------------------------------------------------------------------- -[ "$PLATFORM_QWS" = "yes" -a "$CFG_EMBEDDED" = "no" ] && CFG_EMBEDDED=auto -if [ "$CFG_EMBEDDED" != "no" ]; then - case "$UNAME_SYSTEM:$UNAME_RELEASE" in - Darwin:*) - [ -z "$PLATFORM" ] && PLATFORM=qws/macx-generic-g++ - if [ -z "$XPLATFORM" ]; then - [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic - XPLATFORM="qws/macx-$CFG_EMBEDDED-g++" - fi - ;; - FreeBSD:*) - [ -z "$PLATFORM" ] && PLATFORM=qws/freebsd-generic-g++ - if [ -z "$XPLATFORM" ]; then - [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic - XPLATFORM="qws/freebsd-$CFG_EMBEDDED-g++" - fi - ;; - SunOS:5*) - [ -z "$PLATFORM" ] && PLATFORM=qws/solaris-generic-g++ - if [ -z "$XPLATFORM" ]; then - [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic - XPLATFORM="qws/solaris-$CFG_EMBEDDED-g++" - fi - ;; - Linux:*) - if [ -z "$PLATFORM" ]; then - case "$UNAME_MACHINE" in - *86) - PLATFORM=qws/linux-x86-g++ - ;; - *86_64) - PLATFORM=qws/linux-x86_64-g++ - ;; - *) - PLATFORM=qws/linux-generic-g++ - ;; - esac - fi - if [ -z "$XPLATFORM" ]; then - if [ "$CFG_EMBEDDED" = "auto" ]; then - if [ -n "$CFG_ARCH" ]; then - CFG_EMBEDDED=$CFG_ARCH - else - case "$UNAME_MACHINE" in - *86) - CFG_EMBEDDED=x86 - ;; - *86_64) - CFG_EMBEDDED=x86_64 - ;; - *) - CFG_EMBEDDED=generic - ;; - esac - fi - fi - XPLATFORM="qws/linux-$CFG_EMBEDDED-g++" - fi - ;; - QNX:*) - [ -z "$PLATFORM" ] && PLATFORM=unsupported/qws/qnx-generic-g++ - if [ -z "$XPLATFORM" ]; then - [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic - XPLATFORM="unsupported/qws/qnx-$CFG_EMBEDDED-g++" - fi - ;; - CYGWIN*:*) - if [ -z "$XPLATFORM" ]; then - CFG_EMBEDDED=x86 - fi - ;; - *) - echo "Qt for Embedded Linux is not supported on this platform. Disabling." - CFG_EMBEDDED=no - PLATFORM_QWS=no - PLATFORM_QPA=no - ;; - esac -fi if [ -z "$PLATFORM" ]; then PLATFORM_NOTES= case "$UNAME_SYSTEM:$UNAME_RELEASE" in @@ -2625,12 +2538,7 @@ if [ -z "$PLATFORM" ]; then esac fi -if [ "$PLATFORM_QWS" = "yes" ]; then - CFG_SM=no - PLATFORMS=`find "$relpath/mkspecs/qws" | sed "s,$relpath/mkspecs/qws/,,"` -else - PLATFORMS=`find "$relpath/mkspecs/" -type f | grep -v qws | sed "s,$relpath/mkspecs/qws/,,"` -fi +PLATFORMS=`find "$relpath/mkspecs/" -type f | grep -v qws | sed "s,$relpath/mkspecs/qws/,,"` [ -z "$XPLATFORM" ] && XPLATFORM="$PLATFORM" @@ -2697,8 +2605,8 @@ if [ '!' -f "${XQMAKESPEC}/qplatformdefs.h" ]; then fi # now look at the configs and figure out what platform we are config'd for -[ "$CFG_EMBEDDED" = "no" ] && [ "$PLATFORM_QPA" != "yes" ] \ - && [ '!' -z "`getQMakeConf \"$XQMAKESPEC\" | grep QMAKE_LIBS_X11 | awk '{print $3;}'`" ] \ +[ "$PLATFORM_QPA" != "yes" ] \ + && [ -n "`getXQMakeConf QMAKE_LIBS_X11`" ] \ && PLATFORM_X11=yes ### echo "$XQMAKESPEC" | grep mkspecs/qws >/dev/null 2>&1 && PLATFORM_QWS=yes @@ -2717,17 +2625,6 @@ if [ "$OPT_VERBOSE" = "yes" ]; then echo "Determining system architecture... ($UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_MACHINE)" fi -if [ "$CFG_EMBEDDED" != "no" -a "$CFG_EMBEDDED" != "auto" ] && [ -n "$CFG_ARCH" ]; then - if [ "$CFG_ARCH" != "$CFG_EMBEDDED" ]; then - echo "" - echo "You have specified a target architecture with -embedded and -arch." - echo "The two architectures you have specified are different, so we can" - echo "not proceed. Either set both to be the same, or only use -embedded." - echo "" - exit 1 - fi -fi - if [ "$CFG_RTOS_ENABLED" = "no" ]; then case `basename "$XPLATFORM"` in qnx-* | vxworks-*) @@ -2866,38 +2763,7 @@ if [ -z "${CFG_HOST_ARCH}" ]; then esac fi -if [ "$PLATFORM" != "$XPLATFORM" -a "$CFG_EMBEDDED" != "no" ]; then - if [ -n "$CFG_ARCH" ]; then - CFG_EMBEDDED=$CFG_ARCH - fi - - case "$CFG_EMBEDDED" in - x86) - CFG_ARCH=i386 - ;; - x86_64) - CFG_ARCH=x86_64 - ;; - ipaq|sharp) - CFG_ARCH=arm - ;; - dm7000) - CFG_ARCH=powerpc - ;; - dm800) - CFG_ARCH=mips - ;; - sh4al) - CFG_ARCH=sh4a - ;; - arm*) - CFG_ARCH=arm - ;; - *) - CFG_ARCH="$CFG_EMBEDDED" - ;; - esac -elif [ "$XPLATFORM_MINGW" = "yes" ]; then +if [ "$XPLATFORM_MINGW" = "yes" ]; then [ -z "$CFG_ARCH" ] && CFG_ARCH="windows" elif [ "$PLATFORM_MAC" = "yes" ] || [ -z "$CFG_ARCH" ]; then CFG_ARCH=$CFG_HOST_ARCH @@ -2915,7 +2781,7 @@ esac if [ "$OPT_VERBOSE" = "yes" ]; then echo "System architecture: '$CFG_ARCH'" - if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then + if [ "$PLATFORM_QPA" = "yes" ]; then echo "Host architecture: '$CFG_HOST_ARCH'" fi fi @@ -2943,7 +2809,7 @@ fi if [ -z "$PKG_CONFIG" ]; then # See if PKG_CONFIG is set in the mkspec: - PKG_CONFIG=`getQMakeConf "$XQMAKESPEC" | sed -n -e 's%PKG_CONFIG[^_].*=%%p' | tr '\n' ' '` + PKG_CONFIG=`getXQMakeConf PKG_CONFIG` fi if [ -z "$PKG_CONFIG" ]; then PKG_CONFIG=`"$WHICH" pkg-config 2>/dev/null` @@ -3004,7 +2870,7 @@ else CFG_FRAMEWORK=no fi -QMAKE_CONF_COMPILER=`getQMakeConf "$XQMAKESPEC" | grep "^QMAKE_CXX[^_A-Z0-9]" | sed "s,.* *= *\(.*\)$,\1," | tail -1` +QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX` TEST_COMPILER=$QMAKE_CONF_COMPILER if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then @@ -3052,9 +2918,9 @@ fi # auto-detect support for separate debug info in objcopy if [ "$CFG_SEPARATE_DEBUG_INFO" != "no" ] && [ "$CFG_SHARED" = "yes" ]; then - TEST_COMPILER_CFLAGS=`getQMakeConf "$XQMAKESPEC" | sed -n -e 's%QMAKE_CFLAGS[^_=]*[+*]*=%%p' | tr '\n' ' '` - TEST_COMPILER_CXXFLAGS=`getQMakeConf "$XQMAKESPEC" | sed -n -e 's%QMAKE_CXXFLAGS[^_=]*[+*]*=%%p' | tr '\n' ' '` - TEST_OBJCOPY=`getQMakeConf "$XQMAKESPEC" | grep "^QMAKE_OBJCOPY" | sed "s%.* *= *\(.*\)$%\1%" | tail -1` + TEST_COMPILER_CFLAGS=`getXQMakeConf QMAKE_CFLAGS` + TEST_COMPILER_CXXFLAGS=`getXQMakeConf QMAKE_CXXFLAGS` + TEST_OBJCOPY=`getXQMakeConf QMAKE_OBJCOPY` COMPILER_WITH_FLAGS="$TEST_COMPILER $TEST_COMPILER_CXXFLAGS" COMPILER_WITH_FLAGS=`echo "$COMPILER_WITH_FLAGS" | sed -e "s%\\$\\$QMAKE_CFLAGS%$TEST_COMPILER_CFLAGS%g"` if "$unixtests/objcopy.test" "$COMPILER_WITH_FLAGS" "$TEST_OBJCOPY" "$OPT_VERBOSE"; then @@ -3095,11 +2961,6 @@ if [ "$CFG_USE_GNUMAKE" = "auto" ] && "$MAKE" -v | grep "GNU Make" >/dev/null 2> CFG_USE_GNUMAKE=yes fi -# If -opengl wasn't specified, don't try to auto-detect -if [ "$PLATFORM_QWS" = "yes" ] && [ "$CFG_OPENGL" = "auto" ]; then - CFG_OPENGL=no -fi - # find the default framework value if [ "$BUILD_ON_MAC" = "yes" ]; then if [ "$CFG_FRAMEWORK" = "auto" ]; then @@ -3366,7 +3227,7 @@ Installation options: -prefix