2 #############################################################################
4 ## Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
5 ## Contact: http://www.qt-project.org/
7 ## This file is the build configuration utility of the Qt Toolkit.
9 ## $QT_BEGIN_LICENSE:LGPL$
10 ## GNU Lesser General Public License Usage
11 ## This file may be used under the terms of the GNU Lesser General Public
12 ## License version 2.1 as published by the Free Software Foundation and
13 ## appearing in the file LICENSE.LGPL included in the packaging of this
14 ## file. Please review the following information to ensure the GNU Lesser
15 ## General Public License version 2.1 requirements will be met:
16 ## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
18 ## In addition, as a special exception, Nokia gives you certain additional
19 ## rights. These rights are described in the Nokia Qt LGPL Exception
20 ## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
22 ## GNU General Public License Usage
23 ## Alternatively, this file may be used under the terms of the GNU General
24 ## Public License version 3.0 as published by the Free Software Foundation
25 ## and appearing in the file LICENSE.GPL included in the packaging of this
26 ## file. Please review the following information to ensure the GNU General
27 ## Public License version 3.0 requirements will be met:
28 ## http://www.gnu.org/copyleft/gpl.html.
31 ## Alternatively, this file may be used in accordance with the terms and
32 ## conditions contained in a signed written agreement between you and Nokia.
41 #############################################################################
43 #-------------------------------------------------------------------------------
44 # script initialization
45 #-------------------------------------------------------------------------------
47 # the name of this script
49 # the directory of this script is the "source tree"
51 relpath=`(cd "$relpath"; /bin/pwd)`
52 # the current directory is the "build tree" or "object tree"
55 #license file location
56 LICENSE_FILE="$QT_LICENSE_FILE"
57 [ -z "$LICENSE_FILE" ] && LICENSE_FILE="$HOME/.qt-license"
58 if [ -f "$LICENSE_FILE" ]; then
59 tr -d '\r' <"$LICENSE_FILE" >"${LICENSE_FILE}.tmp"
60 diff "${LICENSE_FILE}.tmp" "${LICENSE_FILE}" >/dev/null 2>&1 || LICENSE_FILE="${LICENSE_FILE}.tmp"
63 # later cache the command line in config.status
64 OPT_CMDLINE=`echo $@ | sed "s,-v ,,g; s,-v$,,g"`
66 # initialize global variables
73 QMAKE_VARS_FILE=.qmake.vars
74 DEVICE_VARS_FILE=.device.vars
77 :> "$DEVICE_VARS_FILE"
79 #-------------------------------------------------------------------------------
81 #-------------------------------------------------------------------------------
85 echo "$@" | sed 's/ /\ /g'
88 # Adds a new qmake variable to the cache
89 # Usage: QMakeVar mode varname contents
90 # where mode is one of: set, add, del
104 echo >&2 "BUG: wrong command to QMakeVar: $1"
108 echo "$2" "$eq" "$3" >> "$QMAKE_VARS_FILE"
111 shellArgumentListToQMakeListHelper()
114 for arg in "$@"; do retval="$retval \"$arg\""; done
118 # Convert a string usable on a shell command line into word-by-word quoted
120 shellArgumentListToQMakeList()
122 # eval is needed for the shell to interpret the backslash escape sequences
123 eval shellArgumentListToQMakeListHelper "$@"
126 # Helper function for getQMakeConf. It parses include statements in
127 # qmake.conf and prints out the expanded file
130 while read line; do case "$line" in
132 inc_file=`echo "$line" | sed -n -e "/^include.*(.*)/s/include.*(\(.*\)).*$/\1/p"`
133 current_dir=`dirname "$1"`
134 conf_file="$current_dir/$inc_file"
135 if [ ! -f "$conf_file" ]; then
136 echo "WARNING: Unable to find file $conf_file" >&2
139 getQMakeConf1 "$conf_file"
141 *load\(device_config\)*)
142 conf_file="$DEVICE_VARS_FILE"
143 if [ ! -f "$conf_file" ]; then
144 echo "WARNING: Unable to find file $conf_file" >&2
147 getQMakeConf1 "$conf_file"
159 values["LITERAL_WHITESPACE"] = " "
160 values["LITERAL_DOLLAR"] = "$"
162 /^[_A-Z0-9.]+[ \t]*\+?=/ {
163 valStart = index($0, "=") + 1
166 if (substr($0, valStart - 2, 1) == "+") {
170 variable = substr($0, 0, valStart - 2 - append)
171 value = substr($0, valStart)
172 gsub("[ \t]+", "", variable)
173 gsub("^[ \t]+", "", value)
174 gsub("[ \t]+$", "", value)
177 while (match(value, /\$\$(\{[_A-Z0-9.]+\}|[_A-Z0-9.]+)/)) {
178 ovalue = ovalue substr(value, 1, RSTART - 1)
179 var = substr(value, RSTART + 2, RLENGTH - 2)
180 value = substr(value, RSTART + RLENGTH)
182 var = substr(var, 2, length(var) - 2)
184 ovalue = ovalue values[var]
186 ovalue = ovalue value
188 combinedValue = values[variable]
189 if (append == 1 && length(combinedValue) > 0) {
190 combinedValue = combinedValue " " ovalue
192 combinedValue = ovalue
194 values[variable] = combinedValue
197 for (var in values) {
198 print var "=" values[var]
206 echo "$2" | $AWK "/^($1)=/ { print substr(\$0, index(\$0, \"=\") + 1) }"
209 # relies on $QMAKESPEC being set correctly. parses include statements in
210 # qmake.conf and prints out the expanded file
213 if [ -z "$specvals" ]; then
214 specvals=`getQMakeConf1 "$QMAKESPEC/qmake.conf" | getQMakeConf2`
216 getQMakeConf3 "$1" "$specvals"
221 if [ -z "$xspecvals" ]; then
222 xspecvals=`getQMakeConf1 "$XQMAKESPEC/qmake.conf" | getQMakeConf2`
224 getQMakeConf3 "$1" "$xspecvals"
227 # relies on $TEST_COMPILER being set correctly
228 compilerSupportsFlag()
230 cat >conftest.cpp <<EOF
231 int main() { return 0; }
233 "$TEST_COMPILER" "$@" -o conftest.o conftest.cpp
235 rm -f conftest.cpp conftest.o
239 # relies on $TEST_COMPILER being set correctly
245 safe_flag=`shellEscape "$flag"`
246 lflags=$lflags,$safe_flag
248 compilerSupportsFlag "$lflags" >/dev/null 2>&1
251 #-------------------------------------------------------------------------------
253 #-------------------------------------------------------------------------------
261 echo >&2 "BUG: wrong command to QMakeVar: $1"
265 echo "$2" "$eq" "$3" >> "$DEVICE_VARS_FILE"
268 resolveDeviceMkspec()
270 result=$(find "$relpath/mkspecs/devices/" -type d -name "*$1*" | sed "s,^$relpath/mkspecs/,,")
271 match_count=$(echo "$result" | wc -w)
272 if [ "$match_count" -gt 1 ]; then
273 echo >&2 "Error: Multiple matches for device '$1'. Candidates are:"
274 tabbed_result=$(echo "$result" | sed "s,^, ,")
275 echo >&2 "$tabbed_result"
277 elif [ "$match_count" -eq 0 ]; then
278 echo >&2 "Error: No device matching '$1'"
285 #-------------------------------------------------------------------------------
286 # operating system detection
287 #-------------------------------------------------------------------------------
289 # need that throughout the script
290 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
291 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
292 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
293 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
295 # detect the "echo without newline" style. usage: echo $ECHO_N "<string>$ECHO_C"
296 if echo '\c' | grep '\c' >/dev/null; then
302 #-------------------------------------------------------------------------------
303 # window system detection
304 #-------------------------------------------------------------------------------
308 if [ -d /System/Library/Frameworks/Carbon.framework ]; then
313 #-----------------------------------------------------------------------------
314 # Qt version detection
315 #-----------------------------------------------------------------------------
316 QT_VERSION=`grep '^# *define *QT_VERSION_STR' "$relpath"/src/corelib/global/qglobal.h`
320 if [ -n "$QT_VERSION" ]; then
321 QT_VERSION=`echo $QT_VERSION | sed 's,^# *define *QT_VERSION_STR *"*\([^ ]*\)"$,\1,'`
322 MAJOR=`echo $QT_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\1,'`
323 if [ -n "$MAJOR" ]; then
324 MINOR=`echo $QT_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\2,'`
325 PATCH=`echo $QT_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\3,'`
326 QT_MAJOR_VERSION="$MAJOR"
327 [ -z "$MINOR" ] || QT_MINOR_VERSION="$MINOR"
328 [ -z "$PATCH" ] || QT_PATCH_VERSION="$PATCH"
331 if [ -z "$QT_MAJOR_VERSION" ]; then
332 echo "Cannot process version from qglobal.h: $QT_VERSION"
333 echo "Cannot proceed."
337 QT_PACKAGEDATE=`grep '^# *define *QT_PACKAGEDATE_STR' "$relpath"/src/corelib/global/qglobal.h | sed -e 's,^# *define *QT_PACKAGEDATE_STR *"\([^ ]*\)"$,\1,' -e s,-,,g`
338 if [ -z "$QT_PACKAGEDATE" ]; then
339 echo "Unable to determine package date from qglobal.h: '$QT_PACKAGEDATE'"
340 echo "Cannot proceed"
344 #-------------------------------------------------------------------------------
346 #-------------------------------------------------------------------------------
350 EditionString=Commercial
354 # parse the arguments, setting things to "yes" or "no"
355 while [ "$#" -gt 0 ]; do
359 #Autoconf style options
361 VAR=`echo $1 | sed "s,^--enable-\(.*\),\1,"`
365 VAR=`echo $1 | sed "s,^--disable-\(.*\),\1,"`
369 VAR=`echo $1 | sed "s,^--\(.*\)=.*,\1,"`
370 VAL=`echo $1 | sed "s,^--.*=\(.*\),\1,"`
373 VAR=`echo $1 | sed "s,^--no-\(.*\),\1,"`
376 -h|help|--help|-help)
377 if [ "$VAL" = "yes" ]; then
379 COMMERCIAL_USER="no" #doesn't matter we will display the help
382 COMMERCIAL_USER="no" #doesn't matter we will display the help
386 VAR=`echo $1 | sed "s,^--\(.*\),\1,"`
390 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
397 if [ "$UNKNOWN_ARG" = "yes" ]; then
409 COMMERCIAL_USER="yes"
423 if [ "$COMMERCIAL_USER" = "ask" ]; then
425 echo "Which edition of Qt do you want to use ?"
427 echo "Type 'c' if you want to use the Commercial Edition."
428 echo "Type 'o' if you want to use the Open Source Edition."
432 if [ "$commercial" = "c" ]; then
433 COMMERCIAL_USER="yes"
435 elif [ "$commercial" = "o" ]; then
442 if [ -f "$relpath"/LICENSE.PREVIEW.COMMERCIAL ] && [ $COMMERCIAL_USER = "yes" ]; then
443 # Commercial preview release
444 [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes
447 QT_EDITION="QT_EDITION_DESKTOP"
448 LicenseType="Technology Preview"
449 elif [ $COMMERCIAL_USER = "yes" ]; then
450 # one of commercial editions
451 [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes
453 # read in the license file
454 if [ -f "$LICENSE_FILE" ]; then
455 . "$LICENSE_FILE" >/dev/null 2>&1
456 if [ -z "$LicenseKeyExt" ]; then
458 echo "You are using an old license file."
460 echo "Please install the license file supplied by Nokia,"
461 echo "or install the Qt Open Source Edition if you intend to"
462 echo "develop free software."
465 if [ -z "$Licensee" ]; then
467 echo "Invalid license key. Please check the license key."
471 if [ -z "$LicenseKeyExt" ]; then
473 echo $ECHO_N "Please enter your license key: $ECHO_C"
475 Licensee="Unknown user"
480 echo "$LicenseKeyExt" | grep ".....*-....*-....*-....*-.....*-.....*-...." >/dev/null 2>&1 \
481 && LicenseValid="yes" \
483 if [ "$LicenseValid" != "yes" ]; then
485 echo "Invalid license key. Please check the license key."
488 ProductCode=`echo $LicenseKeyExt | cut -f 1 -d - | cut -b 1`
489 PlatformCode=`echo $LicenseKeyExt | cut -f 2 -d -`
490 LicenseTypeCode=`echo $LicenseKeyExt | cut -f 3 -d -`
491 LicenseFeatureCode=`echo $LicenseKeyExt | cut -f 4 -d - | cut -b 1`
493 # determine which edition we are licensed to use
494 case "$LicenseTypeCode" in
496 LicenseType="Commercial"
500 QT_EDITION="QT_EDITION_UNIVERSAL"
503 Edition="FullFramework"
504 EditionString="Full Framework"
505 QT_EDITION="QT_EDITION_DESKTOP"
508 Edition="GUIFramework"
509 EditionString="GUI Framework"
510 QT_EDITION="QT_EDITION_DESKTOPLIGHT"
515 LicenseType="Evaluation"
516 QMakeVar add DEFINES QT_EVAL
520 QT_EDITION="QT_EDITION_EVALUATION"
525 if [ -z "$LicenseType" -o -z "$Edition" -o -z "$QT_EDITION" ]; then
527 echo "Invalid license key. Please check the license key."
531 # verify that we are licensed to use Qt on this platform
533 case "$PlatformCode" in
536 PlatformCode=`echo "$PlatformCode" | sed 'h;y/8NPQRTZ/UCWX9M7/;x;G;s/\(.\)....\(.\)./\1\2/'`
540 PlatformCode=`echo "$PlatformCode" | sed 's/.$//'`
543 ### EMBEDDED_QPA logic missing ###
544 case "$PlatformCode,$PLATFORM_MAC" in
545 X9,* | XC,* | XU,* | XW,* | XM,*)
547 LICENSE_EXTENSION="-ALLOS"
549 8M,* | KM,* | S9,* | SC,* | SM,* | SU,* | SW,* | X9,* | XC,* | XU,* | XW,*)
550 # Qt for Embedded Linux
551 LICENSE_EXTENSION="-EMBEDDED"
553 6M,* | N7,* | N9,* | NX,*)
555 LICENSE_EXTENSION="-EMBEDDED"
557 FM,* | LM,yes | ZM,no)
559 LICENSE_EXTENSION="-DESKTOP"
563 [ "$PLATFORM_MAC" = "yes" ] && Platform='Mac OS X'
565 echo "You are not licensed for the $Platform platform."
567 echo "Please contact qt-info@nokia.com to upgrade your license to"
568 echo "include the $Platform platform, or install the Qt Open Source Edition"
569 echo "if you intend to develop free software."
574 if test -r "$relpath/.LICENSE"; then
575 # Generic, non-final license
577 line=`sed 'y/a-z/A-Z/;q' "$relpath"/.LICENSE`
582 *TECHNOLOGY?PREVIEW*)
589 echo >&2 "Invalid license files; cannot continue"
594 EditionString="$Edition"
595 QT_EDITION="QT_EDITION_DESKTOP"
598 case "$LicenseFeatureCode" in
601 case "$LicenseType" in
603 cp -f "$relpath/.LICENSE${LICENSE_EXTENSION}-US" "$outpath/LICENSE"
606 cp -f "$relpath/.LICENSE-EVALUATION-US" "$outpath/LICENSE"
612 case "$LicenseType" in
614 cp -f "$relpath/.LICENSE${LICENSE_EXTENSION}" "$outpath/LICENSE"
617 cp -f "$relpath/.LICENSE-EVALUATION" "$outpath/LICENSE"
623 echo "Invalid license key. Please check the license key."
627 case "$LicenseFeatureCode" in
635 if [ '!' -f "$outpath/LICENSE" ]; then
636 echo "The LICENSE, LICENSE.GPL3 LICENSE.LGPL file shipped with"
637 echo "this software has disappeared."
639 echo "Sorry, you are not licensed to use this software."
640 echo "Try re-installing."
644 elif [ $COMMERCIAL_USER = "no" ]; then
645 # Open Source edition - may only be used under the terms of the GPL or LGPL.
646 [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes
647 Licensee="Open Source"
649 EditionString="Open Source"
650 QT_EDITION="QT_EDITION_OPENSOURCE"
653 #-------------------------------------------------------------------------------
654 # initalize variables
655 #-------------------------------------------------------------------------------
657 SYSTEM_VARIABLES="RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS"
658 for varname in $SYSTEM_VARIABLES; do
659 qmakevarname="${varname}"
660 # use LDFLAGS for autoconf compat, but qmake uses QMAKE_LFLAGS
661 if [ "${varname}" = "LDFLAGS" ]; then
662 qmakevarname="LFLAGS"
663 elif [ "${varname}" = "LD" ]; then
667 'if [ -n "\$'${varname}'" ]; then
668 QMakeVar set QMAKE_'${qmakevarname}' "\$'${varname}'"
672 # Use CC/CXX to run config.tests
673 mkdir -p "$outpath/config.tests"
674 rm -f "$outpath/config.tests/.qmake.cache"
675 cp "$QMAKE_VARS_FILE" "$outpath/config.tests/.qmake.cache"
677 QMakeVar add styles "cde mac motif plastique cleanlooks windows"
679 # QTDIR may be set and point to an old or system-wide Qt installation
682 # the minimum version of libdbus-1 that we require:
683 MIN_DBUS_1_VERSION=0.93
685 # initalize internal variables
686 CFG_CONFIGURE_EXIT_ON_ERROR=yes
688 CFG_GUI=auto # (yes|no|auto)
714 CFG_OPENVG_LC_INCLUDES=no
715 CFG_OPENVG_SHIVA=auto
716 CFG_OPENVG_ON_OPENGL=auto
722 QT_DEFAULT_BUILD_PARTS="libs tools examples"
726 CFG_AUDIO_BACKEND=auto
729 CFG_JAVASCRIPTCORE_JIT=auto
732 # Target architecture
735 # Host architecture, same as CFG_ARCH when not cross-compiling
737 CFG_HOST_CPUFEATURES=
738 # Set when the -arch or -host-arch arguments are used
739 OPT_OBSOLETE_HOST_ARG=no
752 CFG_OBSOLETE_WAYLAND=no
764 CFG_SEPARATE_DEBUG_INFO=no
765 CFG_SEPARATE_DEBUG_INFO_NOCOPY=no
766 CFG_REDUCE_EXPORTS=auto
774 CFG_REDUCE_RELOCATIONS=auto
775 CFG_ACCESSIBILITY=auto
780 CFG_CLOCK_GETTIME=auto
781 CFG_CLOCK_MONOTONIC=auto
789 MAC_CONFIG_TEST_COMMANDLINE= # used to make the configure tests run with the correct arch's and SDK settings
791 CFG_PREFIX_INSTALL=yes
801 XPLATFORM= # This seems to be the QMAKESPEC, like "linux-g++"
802 XPLATFORM_MINGW=no # Whether target platform is MinGW (win32-g++*)
807 OPT_CONFIRM_LICENSE=no
820 QPA_PLATFORM_GUARD=yes
823 # initalize variables used for installation
832 QT_INSTALL_TRANSLATIONS=
841 #flags for SQL drivers
849 QT_LFLAGS_ODBC="-lodbc"
852 # flags for libdbus-1
856 # flags for Glib (X11 only)
860 # flags for GStreamer (X11 only)
864 # default qpa platform
865 QT_QPA_DEFAULT_PLATFORM=
867 #-------------------------------------------------------------------------------
868 # check SQL drivers available in this package
869 #-------------------------------------------------------------------------------
871 # opensource version removes some drivers, so force them to be off
877 if [ -d "$relpath/src/plugins/sqldrivers" ]; then
878 for a in "$relpath/src/plugins/sqldrivers/"*; do
880 base_a=`basename "$a"`
881 CFG_SQL_AVAILABLE="${CFG_SQL_AVAILABLE} ${base_a}"
882 eval "CFG_SQL_${base_a}=auto"
887 CFG_IMAGEFORMAT_PLUGIN_AVAILABLE=
888 if [ -d "$relpath/src/plugins/imageformats" ]; then
889 for a in "$relpath/src/plugins/imageformats/"*; do
891 base_a=`basename "$a"`
892 CFG_IMAGEFORMAT_PLUGIN_AVAILABLE="${CFG_IMAGEFORMAT_PLUGIN_AVAILABLE} ${base_a}"
897 #-------------------------------------------------------------------------------
898 # parse command line arguments
899 #-------------------------------------------------------------------------------
901 # parse the arguments, setting things to "yes" or "no"
902 while [ "$#" -gt 0 ]; do
906 #Autoconf style options
908 VAR=`echo $1 | sed "s,^--enable-\(.*\),\1,"`
912 VAR=`echo $1 | sed "s,^--disable-\(.*\),\1,"`
916 VAR=`echo $1 | sed "s,^--\(.*\)=.*,\1,"`
917 VAL=`echo $1 | sed "s,^--.*=\(.*\),\1,"`
920 VAR=`echo $1 | sed "s,^--no-\(.*\),\1,"`
924 VAR=`echo $1 | sed "s,^--\(.*\),\1,"`
928 -no-*-*|-plugin-*-*|-qt-*-*)
929 VAR=`echo $1 | sed "s,^-[^-]*-\(.*\),\1,"`
930 VAL=`echo $1 | sed "s,^-\([^-]*\).*,\1,"`
934 VAR=`echo $1 | sed "s,^-no-\(.*\),\1,"`
937 #Qt style options that pass an argument
938 -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-testsdir|-depths|-make|-nomake|-platform|-xplatform|-device|-device-option|-sdk|-arch|-host-arch|-mysql_config|-sysroot|-hostdatadir|-hostbindir|-qpa|-qconfig)
939 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
943 #Qt style complex options in one command
944 -enable-*|-disable-*)
945 VAR=`echo $1 | sed "s,^-\([^-]*\)-.*,\1,"`
946 VAL=`echo $1 | sed "s,^-[^-]*-\(.*\),\1,"`
948 #Qt Builtin/System style options
949 -no-*|-system-*|-qt-*)
950 VAR=`echo $1 | sed "s,^-[^-]*-\(.*\),\1,"`
951 VAL=`echo $1 | sed "s,^-\([^-]*\)-.*,\1,"`
953 #Options that cannot be generalized
960 # this option may or may not be followed by an argument
961 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
970 # this option may or may not be followed by an argument
971 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
979 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
980 # this option may or may not be followed by an argument
981 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1000 if [ "$1" = "-D" ]; then
1004 VAL=`echo $1 | sed 's,-D,,'`
1009 # this option may or may not be followed by an argument
1010 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1019 if [ "$1" = "-I" ]; then
1023 VAL=`echo $1 | sed 's,-I,,'`
1028 if [ "$1" = "-L" ]; then
1032 VAL=`echo $1 | sed 's,-L,,'`
1037 if [ "$1" = "-R" ]; then
1041 VAL=`echo $1 | sed 's,-R,,'`
1046 if [ "$1" = "-l" ]; then
1050 VAL=`echo $1 | sed 's,-l,,'`
1055 if [ "$1" = "-F" ]; then
1059 VAL=`echo $1 | sed 's,-F,,'`
1064 if [ "$1" = "-fw" ]; then
1068 VAL=`echo $1 | sed 's,-fw,,'`
1075 #General options, including Qt style yes options
1077 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
1084 if [ "$UNKNOWN_ARG" = "yes" ]; then
1085 echo "$1: unknown argument"
1096 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1097 CFG_ACCESSIBILITY="$VAL"
1106 CFG_USE_GNUMAKE="$VAL"
1109 CFG_MYSQL_CONFIG="$VAL"
1112 QT_INSTALL_PREFIX="$VAL"
1115 QT_HOST_PREFIX="$VAL"
1124 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1125 CFG_PKGCONFIG="$VAL"
1131 CFG_PKGCONFIG="force"
1134 QT_INSTALL_DOCS="$VAL"
1137 QT_INSTALL_HEADERS="$VAL"
1140 QT_INSTALL_PLUGINS="$VAL"
1143 QT_INSTALL_IMPORTS="$VAL"
1146 QT_INSTALL_DATA="$VAL"
1149 QT_INSTALL_LIBS="$VAL"
1158 QT_INSTALL_TRANSLATIONS="$VAL"
1160 sysconfdir|settingsdir)
1161 QT_INSTALL_SETTINGS="$VAL"
1164 QT_INSTALL_EXAMPLES="$VAL"
1167 QT_INSTALL_TESTS="$VAL"
1176 QT_INSTALL_BINS="$VAL"
1179 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1186 if [ "$VAL" = "auto" ] || [ "$VAL" = "desktop" ] ||
1187 [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] ||
1188 [ "$VAL" = "es2" ]; then
1195 if [ "$VAL" = "auto" ] || [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1202 CFG_NOBUILD_PARTS="$CFG_NOBUILD_PARTS $VAL"
1205 CFG_BUILD_PARTS="$CFG_BUILD_PARTS $VAL"
1208 if [ "$BUILD_ON_MAC" = "yes" ]; then
1215 OPT_OBSOLETE_HOST_ARG=yes
1218 if [ "$BUILD_ON_MAC" = "yes" ] && [ "$VAL" = "yes" ]; then
1219 CFG_MAC_HARFBUZZ="$VAL"
1226 if [ "$BUILD_ON_MAC" = "yes" ]; then
1227 CFG_FRAMEWORK="$VAL"
1233 if [ "$VAL" = "yes" ]; then
1235 QMakeVar add QMAKE_CFLAGS -pg
1236 QMakeVar add QMAKE_CXXFLAGS -pg
1237 QMakeVar add QMAKE_LFLAGS -pg
1238 QMAKE_VARS="$QMAKE_VARS CONFIG+=nostrip"
1244 if [ "$VAL" = "yes" ]; then
1245 QTCONFIG_CONFIG="$QTCONFIG_CONFIG testcocoon"
1250 # keep compatibility with old platform names
1256 PLATFORM=hpux-acc-o64
1259 PLATFORM=hpux-acc-64
1262 PLATFORM=hpux-acc-64
1274 PLATFORM=reliant-cds-64
1277 PLATFORM=solaris-cc-64
1280 PLATFORM=unixware-cc
1283 PLATFORM=unixware-g++
1286 PLATFORM=unixware-cc
1289 PLATFORM=unixware-g++
1295 i386) NATIVE_64_ARCH="x86_64" ;;
1296 powerpc) NATIVE_64_ARCH="ppc64" ;;
1297 *) echo "WARNING: Can't detect CPU architecture for macx-g++-64" ;;
1299 if [ ! -z "$NATIVE_64_ARCH" ]; then
1300 QTCONFIG_CONFIG="$QTCONFIG_CONFIG $NATIVE_64_ARCH"
1307 case `basename "$XPLATFORM"` in win32-g++*) XPLATFORM_MINGW=yes;; esac
1310 XPLATFORM=`resolveDeviceMkspec $VAL`
1311 [ "$XPLATFORM" = "undefined" ] && exit 101
1314 DEV_VAR=`echo $VAL | sed "s,^\(.*\)=.*,\1,"`
1315 DEV_VAL=`echo $VAL | sed "s,^.*=\(.*\),\1,"`
1316 DeviceVar set $DEV_VAR $DEV_VAL
1319 QT_QPA_DEFAULT_PLATFORM="$VAL"
1322 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1323 CFG_DEBUG_RELEASE="$VAL"
1329 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1330 CFG_RELEASE_QMAKE="$VAL"
1336 if [ "$VAL" = "yes" ]; then
1338 elif [ "$VAL" = "no" ]; then
1345 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1346 CFG_PREFIX_INSTALL="$VAL"
1354 developer-build|commercial|opensource)
1355 # These switches have been dealt with already
1358 if [ "$VAL" = "yes" ]; then
1360 elif [ "$VAL" = "no" ]; then
1367 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1368 CFG_CONFIGURE_EXIT_ON_ERROR="$VAL"
1374 FEATURE=`echo $VAR | sed "s,^[^-]*-\([^-]*\),\1," | tr 'abcdefghijklmnopqrstuvwxyz-' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`
1375 if [ "$VAL" = "no" ]; then
1376 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_$FEATURE"
1377 elif [ "$VAL" = "yes" ] || [ "$VAL" = "unknown" ]; then
1378 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_$FEATURE"
1384 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1391 if [ "$VAL" = "no" ]; then
1398 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1406 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1413 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1420 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1427 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1434 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1441 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1448 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1455 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1456 CFG_PRECOMPILE="$VAL"
1461 separate-debug-info)
1462 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1463 CFG_SEPARATE_DEBUG_INFO="$VAL"
1464 elif [ "$VAL" = "nocopy" ] ; then
1465 CFG_SEPARATE_DEBUG_INFO="yes"
1466 CFG_SEPARATE_DEBUG_INFO_NOCOPY="yes"
1472 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1473 CFG_REDUCE_EXPORTS="$VAL"
1479 if [ "$VAL" = "no" ]; then
1486 if [ "$VAL" = "no" ]; then
1493 if [ "$VAL" = "no" ]; then
1500 if [ "$VAL" = "no" ]; then
1507 if [ "$VAL" = "no" ]; then
1514 if [ "$VAL" = "no" ]; then
1521 if [ "$VAL" = "no" ]; then
1531 if [ "$VAL" = "no" ]; then
1538 if [ "$VAL" = "no" ]; then
1545 if [ "$VAL" = "no" ]; then
1546 CFG_MIPS_DSPR2="$VAL"
1552 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1553 CFG_REDUCE_RELOCATIONS="$VAL"
1559 [ "$VAL" = "qt" ] && VAL=yes
1560 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1565 # No longer supported:
1566 #[ "$VAL" = "no" ] && CFG_LIBPNG=no
1569 if [ "$VAL" = "system" ]; then
1576 [ "$VAL" = "yes" ] && VAL=qt
1577 if [ "$VAL" = "qt" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1584 [ "$VAL" = "yes" ] && VAL=qt
1585 if [ "$VAL" = "qt" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1592 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1599 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1606 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1613 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1620 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1627 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1628 CFG_FONTCONFIG="$VAL"
1634 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1641 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1648 CFG_OBSOLETE_WAYLAND=yes
1651 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1658 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1665 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1672 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1679 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1686 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1693 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1700 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1707 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1708 CFG_GSTREAMER="$VAL"
1714 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1715 CFG_QGTKSTYLE="$VAL"
1721 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ]; then
1724 if [ "$VAL" = "no" ]; then
1732 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ]; then
1734 elif [ "$VAL" = "no" ]; then
1741 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1742 QPA_PLATFORM_GUARD="$VAL"
1748 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "linked" ]; then
1750 elif [ "$VAL" = "runtime" ]; then
1757 if [ "$VAL" = "yes" ]; then
1764 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1771 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1772 CFG_LARGEFILE="$VAL"
1778 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1785 if [ "$VAL" = "yes" ]; then
1786 CFG_OPENSSL="linked"
1792 if [ "$VAL" = "yes" ]; then
1795 if [ "$VAL" = "no" ]; then
1803 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ] || [ "$VAL" = "no" ]; then
1804 CFG_JAVASCRIPTCORE_JIT="$VAL"
1810 if [ "$VAL" = "yes" ]; then
1811 OPT_CONFIRM_LICENSE="$VAL"
1817 if [ "$VAL" = "yes" ]; then
1823 sql-*|imageformat-*)
1824 # if Qt style options were used, $VAL can be "no", "qt", or "plugin"
1825 # if autoconf style options were used, $VAL can be "yes" or "no"
1826 [ "$VAL" = "yes" ] && VAL=qt
1827 # now $VAL should be "no", "qt", or "plugin"... double-check
1828 if [ "$VAL" != "no" ] && [ "$VAL" != "qt" ] && [ "$VAL" != "plugin" ]; then
1831 # now $VAL is "no", "qt", or "plugin"
1833 VAL=`echo $VAR | sed "s,^[^-]*-\([^-]*\).*,\1,"`
1834 VAR=`echo $VAR | sed "s,^\([^-]*\).*,\1,"`
1836 # Grab the available values
1839 avail="$CFG_SQL_AVAILABLE"
1842 avail="$CFG_IMAGEFORMAT_PLUGIN_AVAILABLE"
1843 if [ "$OPT" != "plugin" ]; then
1844 # png is always built in
1850 echo "BUG: Unhandled type $VAR used in $CURRENT_OPT"
1854 # Check that that user's value is available.
1857 if [ "$VAL" = "$d" ]; then
1862 [ "$found" = yes ] || ERROR=yes
1864 if [ "$VAR" = "sql" ]; then
1865 # set the CFG_SQL_driver
1866 eval "CFG_SQL_$VAL=\$OPT"
1868 elif [ "$VAR" = "imageformat" ]; then
1869 [ "$OPT" = "qt" ] && OPT=yes
1870 VAL="`echo $VAL |tr a-z A-Z`"
1871 eval "CFG_$VAL=$OPT"
1875 if [ "$OPT" = "plugin" ] || [ "$OPT" = "qt" ]; then
1876 if [ "$OPT" = "plugin" ]; then
1879 QMakeVar add "${VAR}s" "${VAL}"
1880 elif [ "$OPT" = "no" ]; then
1881 PLUG_VAR="${VAR}-plugin"
1883 QMakeVar del "${IN_VAR}s" "$VAL"
1884 QMakeVar del "${PLUG_VAR}s" "$VAL"
1886 if [ "$ERROR" = "yes" ]; then
1887 echo "$CURRENT_OPT: unknown argument"
1892 if [ "$VAL" = "yes" ]; then
1893 if [ "$OPT_VERBOSE" = "$VAL" ]; then # takes two verboses to turn on qmake debugs
1894 QMAKE_SWITCHES="$QMAKE_SWITCHES -d"
1898 elif [ "$VAL" = "no" ]; then
1899 if [ "$OPT_VERBOSE" = "$VAL" ] && echo "$QMAKE_SWITCHES" | grep ' -d' >/dev/null 2>&1; then
1900 QMAKE_SWITCHES=`echo $QMAKE_SWITCHES | sed "s, -d,,"`
1909 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1916 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1923 DEFINES="$DEFINES \"$VAL\""
1924 D_FLAGS="$D_FLAGS -D\"$VAL\""
1927 I_FLAGS="$I_FLAGS -I\"${VAL}\""
1930 L_FLAGS="$L_FLAGS -L\"${VAL}\""
1933 RPATH_FLAGS="$RPATH_FLAGS \"${VAL}\""
1936 l_FLAGS="$l_FLAGS -l\"${VAL}\""
1939 if [ "$BUILD_ON_MAC" = "yes" ]; then
1940 L_FLAGS="$L_FLAGS -F\"${VAL}\""
1941 I_FLAGS="$I_FLAGS -F\"${VAL}\""
1947 if [ "$BUILD_ON_MAC" = "yes" ]; then
1948 l_FLAGS="$l_FLAGS -framework \"${VAL}\""
1954 W_FLAGS="$W_FLAGS \"${VAL}\""
1960 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1961 CFG_PHONON_BACKEND="$VAL"
1973 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1974 CFG_AUDIO_BACKEND="$VAL"
1980 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1987 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1988 CFG_FORCE_ASSERTS="$VAL"
1994 if [ "$VAL" = "qt" ] || [ "$VAL" = "system" ]; then
2001 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2011 if [ "$UNKNOWN_OPT" = "yes" ]; then
2012 echo "${CURRENT_OPT}: invalid command-line switch"
2018 # update QT_CONFIG to show our current predefined configuration
2019 case "$CFG_QCONFIG" in
2020 minimal|small|medium|large|full)
2021 # these are a sequence of increasing functionality
2022 for c in minimal small medium large full; do
2023 QT_CONFIG="$QT_CONFIG $c-config"
2024 [ "$CFG_QCONFIG" = $c ] && break
2028 # not known to be sufficient for anything
2029 if [ '!' -f "$relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h" ] && [ '!' -f `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"` ]; then
2030 echo >&2 "Error: configuration file not found:"
2031 echo >&2 " $relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h"
2033 echo >&2 " `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"`"
2038 #-------------------------------------------------------------------------------
2039 # build tree initialization
2040 #-------------------------------------------------------------------------------
2042 # where to find which..
2043 unixtests="$relpath/config.tests/unix"
2044 mactests="$relpath/config.tests/mac"
2045 WHICH="$unixtests/which.test"
2047 PERL=`$WHICH perl 2>/dev/null`
2049 # find out which awk we want to use, prefer gawk, then nawk, then regular awk
2051 for e in gawk nawk awk; do
2052 if "$WHICH" $e >/dev/null 2>&1 && ( $e -f /dev/null /dev/null ) >/dev/null 2>&1; then
2059 PERL="/usr/bin/perl"
2060 if "$WHICH" perl >/dev/null 2>&1 && ( perl /dev/null ) >/dev/null 2>&1; then
2064 ### skip this if the user just needs help...
2065 if [ "$OPT_HELP" != "yes" ]; then
2067 # is this a shadow build?
2068 if [ "$OPT_SHADOW" = "maybe" ]; then
2070 if [ "$relpath" != "$outpath" ] && [ '!' -f "$outpath/configure" ]; then
2071 if [ -h "$outpath" ]; then
2072 [ "$relpath" -ef "$outpath" ] || OPT_SHADOW=yes
2078 if [ "$OPT_SHADOW" = "yes" ]; then
2079 if [ -f "$relpath/.qmake.cache" -o -f "$relpath/src/corelib/global/qconfig.h" -o -f "$relpath/src/corelib/global/qconfig.cpp" ]; then
2080 echo >&2 "You cannot make a shadow build from a source tree containing a previous build."
2081 echo >&2 "Cannot proceed."
2084 [ "$OPT_VERBOSE" = "yes" ] && echo "Performing shadow build..."
2087 if [ "$PLATFORM_MAC" = "no" -a "$CFG_DEBUG_RELEASE" = "yes" ]; then
2089 echo "WARNING: -debug-and-release is not supported outside of Mac OS X."
2090 echo "Qt can be built in release mode with separate debug information, so"
2091 echo "-debug-and-release is not necessary anymore"
2095 if [ "$CFG_SILENT" = "yes" ]; then
2096 QMAKE_CONFIG="$QMAKE_CONFIG silent"
2099 # if the source tree is different from the build tree,
2100 # symlink or copy part of the sources
2101 if [ "$OPT_SHADOW" = "yes" ]; then
2102 echo "Preparing build tree..."
2104 if [ -z "$PERL" ]; then
2106 echo "You need perl in your PATH to make a shadow build."
2107 echo "Cannot proceed."
2111 [ -d "$outpath/bin" ] || mkdir -p "$outpath/bin"
2113 # make a syncqt script that can be used in the shadow
2114 rm -f "$outpath/bin/syncqt"
2115 if [ -x "$relpath/bin/syncqt" ]; then
2116 mkdir -p "$outpath/bin"
2117 echo "#!/bin/sh" >"$outpath/bin/syncqt"
2118 echo "perl \"$relpath/bin/syncqt\" -qtdir \"$outpath\" \"\$@\"" >>"$outpath/bin/syncqt"
2119 chmod 755 "$outpath/bin/syncqt"
2122 for i in elf2e32_qtwrapper createpackage patch_capabilities qtmodule-configtests; do
2123 rm -f "$outpath/bin/$i"
2124 if [ -x "$relpath/bin/$i" ]; then
2125 mkdir -p "$outpath/bin"
2126 echo "#!/bin/sh" >"$outpath/bin/$i"
2127 echo "QTDIR=\"$relpath\"; export QTDIR" >>"$outpath/bin/$i"
2128 echo "\"$relpath/bin/$i\" \"\$@\"" >>"$outpath/bin/$i"
2129 chmod 755 "$outpath/bin/$i"
2133 # save a pre-existing mkspecs/modules dir
2134 test -d "$outpath/mkspecs/modules" && \
2135 mv "$outpath/mkspecs/modules" "$outpath/mkspecs-modules"
2136 # ditto for mkspecs/modules-inst
2137 test -d "$outpath/mkspecs/modules-inst" && \
2138 mv "$outpath/mkspecs/modules-inst" "$outpath/mkspecs-modules-inst"
2140 # symlink the mkspecs directory
2141 mkdir -p "$outpath/mkspecs"
2142 rm -rf "$outpath"/mkspecs/*
2143 ln -s "$relpath"/mkspecs/* "$outpath/mkspecs"
2144 rm -f "$outpath/mkspecs/default"
2148 rm -rf "$outpath/mkspecs/$1"
2149 find "$relpath/mkspecs/$1" -type d | sed "s,^$relpath,$outpath," | xargs mkdir -p
2150 find "$relpath/mkspecs/$1" -type f | sed "s,^$relpath/,," | while read f; do ln -s "$relpath/$f" "$outpath/$f"; done
2153 # Special case for mkspecs/features directory.
2154 # To be able to place .prf files into a shadow build directory,
2155 # we're creating links for files only. The directory structure is reproduced.
2156 ShadowMkspecs features
2158 # The modules dir is special, too.
2159 if test -d "$outpath/mkspecs-modules"; then
2160 rm -rf "$outpath/mkspecs/modules"
2161 mv "$outpath/mkspecs-modules" "$outpath/mkspecs/modules"
2163 ShadowMkspecs modules
2166 # The modules-inst dir is not quite as special, but still.
2167 if test -d "$outpath/mkspecs-modules-inst"; then
2168 rm -rf "$outpath/mkspecs/modules-inst"
2169 mv "$outpath/mkspecs-modules-inst" "$outpath/mkspecs/modules-inst"
2172 # symlink the doc directory
2173 rm -rf "$outpath/doc"
2174 ln -s "$relpath/doc" "$outpath/doc"
2177 # symlink fonts to be able to run application from build directory
2178 if [ ! -d "${outpath}/lib/fonts" ]; then
2179 if [ "$PLATFORM" = "$XPLATFORM" ]; then
2180 mkdir -p "${outpath}/lib"
2181 ln -s "${relpath}/lib/fonts" "${outpath}/lib/fonts"
2185 if [ "$OPT_FAST" = "auto" ]; then
2186 if [ '!' -z "$AWK" ] && [ "$CFG_DEV" = "yes" ]; then
2193 # find a make command
2194 if [ -z "$MAKE" ]; then
2196 for mk in gmake make; do
2197 if "$WHICH" $mk >/dev/null 2>&1; then
2202 if [ -z "$MAKE" ]; then
2203 echo >&2 "You don't seem to have 'make' or 'gmake' in your PATH."
2204 echo >&2 "Cannot proceed."
2207 # export MAKE, we need it later in the config.tests
2213 #-------------------------------------------------------------------------------
2214 # auto-detect all that hasn't been specified in the arguments
2215 #-------------------------------------------------------------------------------
2217 if [ -z "$PLATFORM" ]; then
2219 case "$UNAME_SYSTEM:$UNAME_RELEASE" in
2221 OSX_VERSION=`uname -r | cut -d. -f1`
2222 # Select compiler. Use g++ unless we find a usable Clang version
2224 if [ "$OSX_VERSION" -ge 12 ]; then
2225 # We're on Mountain Lion or above. Use Clang. Don't advertise gcc.
2227 elif [ "$OSX_VERSION" -eq 11 ]; then
2228 # We're on Lion. Check if we have a supported Clang version
2229 case "$(clang -v 2>&1 | grep -Po '(?<=version )\d[\d.]+')" in
2232 PLATFORM_NOTES="\n - Also available for Mac OS X: macx-g++\n"
2239 #PLATFORM=aix-g++-64
2241 #PLATFORM=aix-xlc-64
2243 - Also available for AIX: aix-g++ aix-g++-64 aix-xlc-64
2253 # PLATFORM=dynix-g++
2259 PLATFORM=freebsd-g++
2261 - Also available for FreeBSD: freebsd-icc
2265 PLATFORM=openbsd-g++
2276 #PLATFORM=irix-cc-64
2278 - Also available for IRIX: irix-g++ irix-cc-64
2282 case "$UNAME_MACHINE" in
2284 #PLATFORM=hpuxi-acc-32
2285 PLATFORM=hpuxi-acc-64
2287 - Also available for HP-UXi: hpuxi-acc-32
2293 #PLATFORM=hpux-acc-64
2295 #PLATFORM=hpux-acc-o64
2297 - Also available for HP-UX: hpux-g++ hpux-acc-64 hpux-acc-o64
2306 - Also available for Tru64: tru64-g++
2310 case "$UNAME_MACHINE" in
2312 PLATFORM=linux-g++-64
2319 - Also available for Linux: linux-kcc linux-icc linux-cxx
2323 if [ "$XPLATFORM_MINGW" = "yes" ]; then
2324 PLATFORM="solaris-g++"
2326 #PLATFORM=solaris-g++
2328 #PLATFORM=solaris-cc64
2331 - Also available for Solaris: solaris-g++ solaris-cc-64
2334 ReliantUNIX-*:*|SINIX-*:*)
2335 PLATFORM=reliant-cds
2336 #PLATFORM=reliant-cds-64
2338 - Also available for Reliant UNIX: reliant-cds-64
2348 #PLATFORM=unixware-g++
2349 PLATFORM=unixware-cc
2351 - Also available for OpenUNIX: unixware-g++
2355 #PLATFORM=unixware-g++
2356 PLATFORM=unixware-cc
2358 - Also available for UnixWare: unixware-g++
2365 - Also available for SCO OpenServer: sco-g++
2369 PLATFORM=unixware-g++
2372 PLATFORM=unsupported/qnx-g++
2375 if [ "$OPT_HELP" != "yes" ]; then
2377 echo " The build script does not currently recognize all" >&2
2378 echo " platforms supported by Qt." >&2
2379 echo " Rerun this script with a -platform option listed to" >&2
2380 echo " set the system/compiler combination you use." >&2
2387 [ -z "$XPLATFORM" ] && XPLATFORM="$PLATFORM"
2389 case `basename "$XPLATFORM"` in win32-g++*) XPLATFORM_MINGW=yes;; esac
2390 case "$XPLATFORM" in linux-g++-maemo) XPLATFORM_MAEMO=yes;; esac
2391 case "$XPLATFORM" in *qnx-*|*blackberry-*) XPLATFORM_QNX=yes;; esac
2393 if [ -d "$PLATFORM" ]; then
2394 QMAKESPEC="$PLATFORM"
2396 QMAKESPEC="$relpath/mkspecs/${PLATFORM}"
2398 if [ -d "$XPLATFORM" ]; then
2399 XQMAKESPEC="$XPLATFORM"
2401 XQMAKESPEC="$relpath/mkspecs/${XPLATFORM}"
2403 if [ "$PLATFORM" != "$XPLATFORM" ]; then
2404 QT_CROSS_COMPILE=yes
2405 QMAKE_CONFIG="$QMAKE_CONFIG cross_compile"
2406 QTCONFIG_CONFIG="$QTCONFIG_CONFIG cross_compile"
2409 if [ "$BUILD_ON_MAC" = "yes" ]; then
2410 if [ `basename $QMAKESPEC` = "macx-xcode" ] || [ `basename $XQMAKESPEC` = "macx-xcode" ]; then
2412 echo " Platform 'macx-xcode' should not be used when building Qt/Mac." >&2
2413 echo " Please build Qt/Mac with 'macx-g++', then if you would like to" >&2
2414 echo " use mac-xcode on your application code it can link to a Qt/Mac" >&2
2415 echo " built with 'macx-g++'" >&2
2421 # check specified platforms are supported
2422 if [ '!' -d "$QMAKESPEC" ]; then
2424 echo " The specified system/compiler is not supported:"
2428 echo " Please see the README file for a complete list."
2432 if [ '!' -d "$XQMAKESPEC" ]; then
2434 echo " The specified system/compiler is not supported:"
2438 echo " Please see the README file for a complete list."
2442 if [ '!' -f "${XQMAKESPEC}/qplatformdefs.h" ]; then
2444 echo " The specified system/compiler port is not complete:"
2446 echo " $XQMAKESPEC/qplatformdefs.h"
2448 echo " Please contact qt-info@nokia.com."
2453 if [ "$UNAME_SYSTEM" = "SunOS" ]; then
2454 # Solaris 2.5 and 2.6 have libposix4, which was renamed to librt for Solaris 7 and up
2455 if echo $UNAME_RELEASE | grep "^5\.[5|6]" >/dev/null 2>&1; then
2456 sed -e "s,-lrt,-lposix4," "$XQMAKESPEC/qmake.conf" > "$XQMAKESPEC/qmake.conf.new"
2457 mv "$XQMAKESPEC/qmake.conf.new" "$XQMAKESPEC/qmake.conf"
2461 if [ "$CFG_RTOS_ENABLED" = "no" ]; then
2462 case `basename "$XPLATFORM"` in
2465 echo "You are not licensed for Qt for `basename $XPLATFORM`."
2467 echo "Please contact qt-info@nokia.com to upgrade your license to"
2468 echo "include this platform, or install the Qt Open Source Edition"
2469 echo "if you intend to develop free software."
2475 #-------------------------------------------------------------------------------
2476 # tests that don't need qmake (must be run before displaying help)
2477 #-------------------------------------------------------------------------------
2479 # detect build style
2480 if [ "$CFG_DEBUG" = "auto" ]; then
2481 if [ "$PLATFORM_MAC" = "yes" -o "$XPLATFORM_MINGW" = "yes" ]; then
2482 CFG_DEBUG_RELEASE=yes
2484 elif [ "$CFG_DEV" = "yes" ]; then
2485 CFG_DEBUG_RELEASE=no
2488 CFG_DEBUG_RELEASE=no
2492 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
2493 QT_CONFIG="$QT_CONFIG build_all debug_and_release"
2496 # pass on $CFG_SDK to the configure tests.
2497 if [ '!' -z "$CFG_SDK" ]; then
2498 MAC_CONFIG_TEST_COMMANDLINE="$MAC_CONFIG_TEST_COMMANDLINE -sdk $CFG_SDK"
2501 # find the default framework value
2502 if [ "$BUILD_ON_MAC" = "yes" ]; then
2503 if [ "$CFG_FRAMEWORK" = "auto" ]; then
2504 CFG_FRAMEWORK="$CFG_SHARED"
2505 elif [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_SHARED" = "no" ]; then
2507 echo "WARNING: Using static linking will disable the use of Mac frameworks."
2515 QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`
2517 TEST_COMPILER=$QMAKE_CONF_COMPILER
2518 if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
2519 if [ -z "$TEST_COMPILER" ]; then
2520 echo "ERROR: Cannot set the compiler for the configuration tests"
2526 case "$TEST_COMPILER" in *g++) GCC_MACHINE_DUMP=$($TEST_COMPILER -dumpmachine);; esac
2527 if [ -n "$GCC_MACHINE_DUMP" ]; then
2528 DeviceVar set GCC_MACHINE_DUMP $($TEST_COMPILER -dumpmachine)
2531 if [ -n "$CFG_SYSROOT" ]; then
2532 SYSROOT_FLAG="--sysroot=$CFG_SYSROOT"
2536 export SYSROOT_FLAG # used by config.tests/unix/compile.test
2538 # auto-detect precompiled header support
2539 if [ "$CFG_PRECOMPILE" = "auto" ]; then
2540 if "$unixtests/precomp.test" "$TEST_COMPILER" "$OPT_VERBOSE"; then
2547 # auto-detect support for separate debug info in objcopy
2548 if [ "$CFG_SEPARATE_DEBUG_INFO" != "no" ] && [ "$CFG_SHARED" = "yes" ]; then
2549 TEST_COMPILER_CFLAGS=`getXQMakeConf QMAKE_CFLAGS`
2550 TEST_COMPILER_CXXFLAGS=`getXQMakeConf QMAKE_CXXFLAGS`
2551 TEST_OBJCOPY=`getXQMakeConf QMAKE_OBJCOPY`
2552 COMPILER_WITH_FLAGS="$TEST_COMPILER $TEST_COMPILER_CXXFLAGS"
2553 COMPILER_WITH_FLAGS=`echo "$COMPILER_WITH_FLAGS" | sed -e "s%\\$\\$QMAKE_CFLAGS%$TEST_COMPILER_CFLAGS%g"`
2554 if "$unixtests/objcopy.test" "$COMPILER_WITH_FLAGS" "$TEST_OBJCOPY" "$OPT_VERBOSE"; then
2555 CFG_SEPARATE_DEBUG_INFO=no
2559 # binutils on HP-UX is buggy; default to no.
2560 CFG_SEPARATE_DEBUG_INFO=no
2563 CFG_SEPARATE_DEBUG_INFO=yes
2569 # auto-detect -fvisibility support
2570 if [ "$CFG_REDUCE_EXPORTS" != "no" ]; then
2571 if "$unixtests/fvisibility.test" "$TEST_COMPILER" "$OPT_VERBOSE"; then
2572 if [ "$CFG_REDUCE_EXPORTS" = "yes" ]; then
2573 echo "-reduce-exports was requested but this compiler does not support it"
2574 echo "Re-run configure with -v for more information"
2577 CFG_REDUCE_EXPORTS=no
2579 CFG_REDUCE_EXPORTS=yes
2583 # detect the availability of the -Bsymbolic-functions linker optimization
2584 if [ "$CFG_REDUCE_RELOCATIONS" != "no" ]; then
2585 if "$unixtests/bsymbolic_functions.test" "$TEST_COMPILER" "$OPT_VERBOSE"; then
2586 if [ "$CFG_REDUCE_RELOCATIONS" = "yes" ]; then
2587 echo "-reduce-relocations was requested but this compiler does not support it"
2588 echo "Re-run configure with -v for more information"
2591 CFG_REDUCE_RELOCATIONS=no
2593 CFG_REDUCE_RELOCATIONS=yes
2597 # auto-detect GNU make support
2598 if [ "$CFG_USE_GNUMAKE" = "auto" ] && "$MAKE" -v | grep "GNU Make" >/dev/null 2>&1; then
2602 # find the default framework value
2603 if [ "$BUILD_ON_MAC" = "yes" ]; then
2604 if [ "$CFG_FRAMEWORK" = "auto" ]; then
2605 CFG_FRAMEWORK="$CFG_SHARED"
2606 elif [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_SHARED" = "no" ]; then
2608 echo "WARNING: Using static linking will disable the use of Mac frameworks."
2616 #setup the build parts
2617 if [ -z "$CFG_BUILD_PARTS" ]; then
2618 CFG_BUILD_PARTS="$QT_DEFAULT_BUILD_PARTS"
2620 # build tests by default, if a developer build
2621 if [ "$CFG_DEV" = "yes" ]; then
2622 CFG_BUILD_PARTS="$CFG_BUILD_PARTS tests"
2625 # don't build tools by default when cross-compiling
2626 if [ "$PLATFORM" != "$XPLATFORM" ]; then
2627 CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, tools,,g"`
2630 for nobuild in $CFG_NOBUILD_PARTS; do
2631 CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, $nobuild,,g"`
2633 if echo $CFG_BUILD_PARTS | grep -v libs >/dev/null 2>&1; then
2635 # echo "WARNING: libs is a required part of the build."
2637 CFG_BUILD_PARTS="$CFG_BUILD_PARTS libs"
2640 #-------------------------------------------------------------------------------
2641 # post process QT_INSTALL_* variables
2642 #-------------------------------------------------------------------------------
2644 if [ -z "$QT_INSTALL_PREFIX" ]; then
2645 if [ "$CFG_DEV" = "yes" ]; then
2646 QT_INSTALL_PREFIX="$outpath" # In Development, we use sandboxed builds by default
2648 QT_INSTALL_PREFIX="/usr/local/Qt-${QT_VERSION}" # the default install prefix is /usr/local/Qt-$QT_VERSION
2651 QT_INSTALL_PREFIX=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_PREFIX"`
2653 if [ -z "$QT_INSTALL_DOCS" ]; then #default
2654 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2655 if [ "$BUILD_ON_MAC" = "yes" ]; then
2656 QT_INSTALL_DOCS="/Developer/Documentation/Qt"
2659 [ -z "$QT_INSTALL_DOCS" ] && QT_INSTALL_DOCS="$QT_INSTALL_PREFIX/doc" #fallback
2662 QT_INSTALL_DOCS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DOCS"`
2664 if [ -z "$QT_INSTALL_HEADERS" ]; then #default
2665 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2666 if [ "$BUILD_ON_MAC" = "yes" ]; then
2667 if [ "$CFG_FRAMEWORK" = "yes" ]; then
2672 [ -z "$QT_INSTALL_HEADERS" ] && QT_INSTALL_HEADERS="$QT_INSTALL_PREFIX/include"
2675 QT_INSTALL_HEADERS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_HEADERS"`
2677 if [ -z "$QT_INSTALL_LIBS" ]; then #default
2678 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2679 if [ "$BUILD_ON_MAC" = "yes" ]; then
2680 if [ "$CFG_FRAMEWORK" = "yes" ]; then
2681 QT_INSTALL_LIBS="/Libraries/Frameworks"
2685 [ -z "$QT_INSTALL_LIBS" ] && QT_INSTALL_LIBS="$QT_INSTALL_PREFIX/lib" #fallback
2687 QT_INSTALL_LIBS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_LIBS"`
2689 if [ -z "$QT_INSTALL_BINS" ]; then #default
2690 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2691 if [ "$BUILD_ON_MAC" = "yes" ]; then
2692 QT_INSTALL_BINS="/Developer/Applications/Qt"
2695 [ -z "$QT_INSTALL_BINS" ] && QT_INSTALL_BINS="$QT_INSTALL_PREFIX/bin" #fallback
2697 QT_INSTALL_BINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_BINS"`
2699 if [ -z "$QT_INSTALL_PLUGINS" ]; then #default
2700 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2701 if [ "$BUILD_ON_MAC" = "yes" ]; then
2702 QT_INSTALL_PLUGINS="/Developer/Applications/Qt/plugins"
2705 [ -z "$QT_INSTALL_PLUGINS" ] && QT_INSTALL_PLUGINS="$QT_INSTALL_PREFIX/plugins" #fallback
2707 QT_INSTALL_PLUGINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_PLUGINS"`
2709 if [ -z "$QT_INSTALL_IMPORTS" ]; then #default
2710 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2711 if [ "$BUILD_ON_MAC" = "yes" ]; then
2712 QT_INSTALL_IMPORTS="/Developer/Applications/Qt/imports"
2715 [ -z "$QT_INSTALL_IMPORTS" ] && QT_INSTALL_IMPORTS="$QT_INSTALL_PREFIX/imports" #fallback
2717 QT_INSTALL_IMPORTS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_IMPORTS"`
2719 if [ -z "$QT_INSTALL_DATA" ]; then #default
2720 QT_INSTALL_DATA="$QT_INSTALL_PREFIX"
2722 QT_INSTALL_DATA=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DATA"`
2724 if [ -z "$QT_INSTALL_TRANSLATIONS" ]; then #default
2725 QT_INSTALL_TRANSLATIONS="$QT_INSTALL_PREFIX/translations"
2727 QT_INSTALL_TRANSLATIONS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_TRANSLATIONS"`
2729 if [ -z "$QT_INSTALL_SETTINGS" ]; then #default
2730 if [ "$BUILD_ON_MAC" = "yes" ]; then
2731 QT_INSTALL_SETTINGS=/Library/Preferences/Qt
2733 QT_INSTALL_SETTINGS=/etc/xdg
2736 QT_INSTALL_SETTINGS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_SETTINGS"`
2738 if [ -z "$QT_INSTALL_EXAMPLES" ]; then #default
2739 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2740 if [ "$BUILD_ON_MAC" = "yes" ]; then
2741 QT_INSTALL_EXAMPLES="/Developer/Examples/Qt"
2744 [ -z "$QT_INSTALL_EXAMPLES" ] && QT_INSTALL_EXAMPLES="$QT_INSTALL_PREFIX/examples" #fallback
2746 QT_INSTALL_EXAMPLES=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_EXAMPLES"`
2749 if [ -z "$QT_INSTALL_TESTS" ]; then #default
2750 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2751 if [ "$BUILD_ON_MAC" = "yes" ]; then
2752 QT_INSTALL_TESTS="/Developer/Tests/Qt"
2755 [ -z "$QT_INSTALL_TESTS" ] && QT_INSTALL_TESTS="$QT_INSTALL_PREFIX/tests" #fallback
2757 QT_INSTALL_TESTS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_TESTS"`
2759 #------- host paths --------
2761 if [ -z "$QT_HOST_PREFIX" ]; then
2762 QT_HOST_PREFIX=$QT_INSTALL_PREFIX
2765 QT_HOST_PREFIX=`"$relpath/config.tests/unix/makeabs" "$QT_HOST_PREFIX"`
2769 if [ -z "$QT_HOST_BINS" ]; then #default
2771 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
2772 if [ "$BUILD_ON_MAC" = "yes" ]; then
2773 QT_HOST_BINS="/Developer/Applications/Qt"
2776 [ -z "$QT_HOST_BINS" ] && QT_HOST_BINS="$QT_HOST_PREFIX/bin" #fallback
2778 QT_HOST_BINS="$QT_INSTALL_BINS"
2781 QT_HOST_BINS=`"$relpath/config.tests/unix/makeabs" "$QT_HOST_BINS"`
2783 if [ -z "$QT_HOST_DATA" ]; then #default
2785 QT_HOST_DATA="$QT_HOST_PREFIX"
2787 QT_HOST_DATA="$QT_INSTALL_DATA"
2790 QT_HOST_DATA=`"$relpath/config.tests/unix/makeabs" "$QT_HOST_DATA"`
2793 #-------------------------------------------------------------------------------
2794 # help - interactive parts of the script _after_ this section please
2795 #-------------------------------------------------------------------------------
2797 # next, emit a usage message if something failed.
2798 if [ "$OPT_HELP" = "yes" ]; then
2799 [ "x$ERROR" = "xyes" ] && echo
2800 if [ "$CFG_NIS" = "no" ]; then
2807 if [ "$CFG_CUPS" = "no" ]; then
2814 if [ "$CFG_ICONV" = "no" ]; then
2821 if [ "$CFG_LARGEFILE" = "no" ]; then
2828 if [ "$CFG_PRECOMPILE" = "auto" ] || [ "$CFG_PRECOMPILE" = "no" ]; then
2836 if [ "$CFG_XCB" = "no" ]; then
2844 if [ "$CFG_EGLFS" = "no" ]; then
2852 if [ "$CFG_DIRECTFB" = "no" ]; then
2860 if [ "$CFG_LINUXFB" = "no" ]; then
2868 if [ "$CFG_XINPUT2" = "no" ]; then
2876 if [ "$CFG_DBUS" = "no" ]; then
2884 if [ "$CFG_SEPARATE_DEBUG_INFO" = "no" ]; then
2892 if [ "$CFG_GLIB" = "no" ]; then
2901 Usage: $relconf [-h] [-prefix <dir>] [-prefix-install] [-bindir <dir>] [-libdir <dir>]
2902 [-docdir <dir>] [-headerdir <dir>] [-plugindir <dir> ] [-importdir <dir>] [-datadir <dir>]
2903 [-translationdir <dir>] [-sysconfdir <dir>] [-examplesdir <dir>] [-testsdir <dir>]
2904 [-release] [-debug] [-debug-and-release] [-c++11] [-no-c++11]
2905 [-developer-build] [-shared] [-static] [-no-fast] [-fast] [-no-largefile]
2906 [-largefile] [-no-accessibility] [-accessibility] [-no-sql-<driver>] [-sql-<driver>]
2907 [-plugin-sql-<driver>] [-system-sqlite]
2908 [-platform] [-D <string>] [-I <string>] [-L <string>] [-help]
2909 [-qt-zlib] [-system-zlib] [-no-gif] [-no-libpng] [-qt-libpng] [-system-libpng]
2910 [-no-libjpeg] [-qt-libjpeg] [-system-libjpeg] [-make <part>]
2911 [-nomake <part>] [-R <string>] [-l <string>] [-no-rpath] [-rpath] [-continue]
2912 [-verbose] [-v] [-silent] [-no-nis] [-nis] [-no-cups] [-cups] [-no-iconv]
2913 [-iconv] [-no-pch] [-pch] [-no-dbus] [-dbus] [-dbus-linked] [-no-gui]
2914 [-no-separate-debug-info] [-no-sse2]
2915 [-no-sse3] [-no-ssse3] [-no-sse4.1] [-no-sse4.2] [-no-avx] [-no-neon]
2916 [-qtnamespace <namespace>] [-qtlibinfix <infix>] [-separate-debug-info]
2917 [-no-phonon-backend] [-phonon-backend] [-no-media-backend] [-media-backend]
2918 [-no-audio-backend] [-audio-backend]
2919 [-no-javascript-jit] [-javascript-jit] [-no-qml-debug] [-qml-debug]
2920 [-no-optimized-qmake] [-optimized-qmake]
2921 [-no-openssl] [-openssl] [-openssl-linked]
2922 [-no-gtkstyle] [-gtkstyle]
2923 [-qt-pcre] [-system-pcre]
2924 [-device <name>] [-device-option <key=value>]
2925 [additional platform specific options (see below)]
2928 Installation options:
2930 These are optional, but you may specify install directories.
2932 -prefix <dir> ...... This will install everything relative to <dir>
2933 (default $QT_INSTALL_PREFIX)
2935 -hostprefix [dir] .. Tools and libraries needed when developing
2936 applications are installed in [dir]. If [dir] is
2937 not given, the current build directory will be used.
2940 * -prefix-install .... Force a sandboxed "local" installation of
2941 Qt. This will install into
2942 $QT_INSTALL_PREFIX, if this option is
2943 disabled then some platforms will attempt a
2944 "system" install by placing default values to
2945 be placed in a system location other than
2948 You may use these to separate different parts of the install:
2950 -bindir <dir> ......... Executables will be installed to <dir>
2951 (default PREFIX/bin)
2952 -libdir <dir> ......... Libraries will be installed to <dir>
2953 (default PREFIX/lib)
2954 -docdir <dir> ......... Documentation will be installed to <dir>
2955 (default PREFIX/doc)
2956 -headerdir <dir> ...... Headers will be installed to <dir>
2957 (default PREFIX/include)
2958 -plugindir <dir> ...... Plugins will be installed to <dir>
2959 (default PREFIX/plugins)
2960 -importdir <dir> ...... Imports for QML will be installed to <dir>
2961 (default PREFIX/imports)
2962 -datadir <dir> ........ Data used by Qt programs will be installed to <dir>
2964 -translationdir <dir> . Translations of Qt programs will be installed to <dir>
2965 (default PREFIX/translations)
2966 -sysconfdir <dir> ..... Settings used by Qt programs will be looked for in <dir>
2967 (default PREFIX/etc/settings)
2968 -examplesdir <dir> .... Examples will be installed to <dir>
2969 (default PREFIX/examples)
2970 -testsdir <dir> ....... Tests will be installed to <dir>
2971 (default PREFIX/tests)
2973 -hostbindir <dir> .. Host executables will be installed to <dir>
2974 (default HOSTPREFIX/bin)
2975 -hostdatadir <dir> . Data used by qmake will be installed to <dir>
2976 (default HOSTPREFIX)
2980 The defaults (*) are usually acceptable. A plus (+) denotes a default value
2981 that needs to be evaluated. If the evaluation succeeds, the feature is
2982 included. Here is a short explanation of each option:
2984 * -release ........... Compile and link Qt with debugging turned off.
2985 -debug ............. Compile and link Qt with debugging turned on.
2986 -debug-and-release . Compile and link two versions of Qt, with and without
2987 debugging turned on (Mac only).
2989 -developer-build ... Compile and link Qt with Qt developer options (including auto-tests exporting)
2991 -opensource ........ Compile and link the Open-Source Edition of Qt.
2992 -commercial ........ Compile and link the Commercial Edition of Qt.
2994 -no-c++11 .......... Do not compile Qt with C++11 support enabled.
2995 + -c++11 ............. Compile Qt with C++11 support enabled.
2997 * -shared ............ Create and use shared Qt libraries.
2998 -static ............ Create and use static Qt libraries.
3000 * -no-fast ........... Configure Qt normally by generating Makefiles for all
3002 -fast .............. Configure Qt quickly by generating Makefiles only for
3003 library and subdirectory targets. All other Makefiles
3004 are created as wrappers, which will in turn run qmake.
3006 -no-largefile ...... Disables large file support.
3007 + -largefile ......... Enables Qt to access files larger than 4 GB.
3009 -no-accessibility .. Do not compile Accessibility support.
3010 * -accessibility ..... Compile Accessibility support.
3012 -no-sql-<driver> ... Disable SQL <driver> entirely.
3013 -qt-sql-<driver> ... Enable a SQL <driver> in the QtSql library, by default
3015 -plugin-sql-<driver> Enable SQL <driver> as a plugin to be linked to
3018 Possible values for <driver>:
3019 [ $CFG_SQL_AVAILABLE ]
3021 -system-sqlite ..... Use sqlite from the operating system.
3023 -no-phonon-backend.. Do not build the platform phonon plugin.
3024 + -phonon-backend..... Build the platform phonon plugin.
3026 -no-javascript-jit . Do not build the JavaScriptCore JIT compiler.
3027 + -javascript-jit .... Build the JavaScriptCore JIT compiler.
3029 -no-qml-debug ...... Do not build the in-process QML debugging support.
3030 + -qml-debug ......... Build the QML debugging support.
3032 -platform target ... The operating system and compiler you are building
3035 See the README file for a list of supported
3036 operating systems and compilers.
3038 -no-sse2 ........... Do not compile with use of SSE2 instructions.
3039 -no-sse3 ........... Do not compile with use of SSE3 instructions.
3040 -no-ssse3 .......... Do not compile with use of SSSE3 instructions.
3041 -no-sse4.1.......... Do not compile with use of SSE4.1 instructions.
3042 -no-sse4.2.......... Do not compile with use of SSE4.2 instructions.
3043 -no-avx ............ Do not compile with use of AVX instructions.
3044 -no-avx2 ........... Do not compile with use of AVX2 instructions.
3045 -no-neon ........... Do not compile with use of NEON instructions.
3046 -no-mips_dsp ....... Do not compile with use of MIPS DSP instructions.
3047 -no-mips_dspr2 ..... Do not compile with use of MIPS DSP rev2 instructions.
3049 -qtnamespace <name> Wraps all Qt library code in 'namespace <name> {...}'.
3050 -qtlibinfix <infix> Renames all libQt*.so to libQt*<infix>.so.
3052 -testcocoon Instrument Qt with the TestCocoon code coverage tool.
3054 -D <string> ........ Add an explicit define to the preprocessor.
3055 -I <string> ........ Add an explicit include path.
3056 -L <string> ........ Add an explicit library path.
3058 + -pkg-config ........ Use pkg-config to detect include and library paths. By default,
3059 configure determines whether to use pkg-config or not with
3060 some heuristics such as checking the environment variables.
3061 -no-pkg-config ..... Disable use of pkg-config.
3062 -force-pkg-config .. Force usage of pkg-config (skips pkg-config usability
3063 detection heuristic).
3065 -help, -h .......... Display this information.
3067 Third Party Libraries:
3069 -qt-zlib ........... Use the zlib bundled with Qt.
3070 + -system-zlib ....... Use zlib from the operating system.
3071 See http://www.gzip.org/zlib
3073 -no-gif ............ Do not compile GIF reading support.
3075 -no-libpng ......... Do not compile PNG support.
3076 -qt-libpng ......... Use the libpng bundled with Qt.
3077 + -system-libpng ..... Use libpng from the operating system.
3078 See http://www.libpng.org/pub/png
3080 -no-libjpeg ........ Do not compile JPEG support.
3081 -qt-libjpeg ........ Use the libjpeg bundled with Qt.
3082 + -system-libjpeg .... Use libjpeg from the operating system.
3083 See http://www.ijg.org
3085 -no-openssl ........ Do not compile support for OpenSSL.
3086 + -openssl ........... Enable run-time OpenSSL support.
3087 -openssl-linked .... Enabled linked OpenSSL support.
3089 -qt-pcre ........... Use the PCRE library bundled with Qt.
3090 + -system-pcre ....... Use the PCRE library from the operating system.
3094 -make <part> ....... Add part to the list of parts to be built at make time.
3095 ($QT_DEFAULT_BUILD_PARTS)
3096 -nomake <part> ..... Exclude part from the list of parts to be built.
3098 -R <string> ........ Add an explicit runtime library path to the Qt
3100 -l <string> ........ Add an explicit library.
3102 -no-rpath .......... Do not use the library install path as a runtime
3104 + -rpath ............. Link Qt libraries and executables using the library
3105 install path as a runtime library path. Equivalent
3106 to -R install_libpath
3108 -continue .......... Continue as far as possible if an error occurs.
3110 -verbose, -v ....... Print verbose information about each step of the
3113 -silent ............ Reduce the build output so that warnings and errors
3114 can be seen more easily.
3116 * -no-optimized-qmake ... Do not build qmake optimized.
3117 -optimized-qmake ...... Build qmake optimized.
3119 -no-gui ............ Don't build the Qt GUI library
3121 $NSN -no-nis ............ Do not compile NIS support.
3122 $NSY -nis ............... Compile NIS support.
3124 $CUN -no-cups ........... Do not compile CUPS support.
3125 $CUY -cups .............. Compile CUPS support.
3126 Requires cups/cups.h and libcups.so.2.
3128 $CIN -no-iconv .......... Do not compile support for iconv(3).
3129 $CIY -iconv ............. Compile support for iconv(3).
3131 $PHN -no-pch ............ Do not use precompiled header support.
3132 $PHY -pch ............... Use precompiled header support.
3134 $DBN -no-dbus ........... Do not compile the QtDBus module.
3135 $DBY -dbus .............. Compile the QtDBus module and dynamically load libdbus-1.
3136 -dbus-linked ....... Compile the QtDBus module and link to libdbus-1.
3138 -reduce-relocations ..... Reduce relocations in the libraries through extra
3139 linker optimizations (Qt/X11 and Qt for Embedded Linux only;
3140 experimental; needs GNU ld >= 2.18).
3142 -force-asserts ........ Force Q_ASSERT to be enabled even in release builds.
3144 -device <name> ............... Cross-compile for device <name> (experimental)
3145 -device-option <key=value> ... Add device specific options for the device mkspec
3148 $SBN -no-separate-debug-info . Do not store debug information in a separate file.
3149 $SBY -separate-debug-info .... Strip debug information into a separate .debug file.
3151 $XCBN -no-xcb ............ Do not compile Xcb (X protocol C-language Binding) support.
3152 $XCBY -xcb ............... Compile Xcb support.
3154 $EGLFSN -no-eglfs .......... Do not compile EGLFS (EGL Full Screen/Single Surface) support.
3155 $EGLFSY -eglfs ............. Compile EGLFS support (Requires OpenGL ES 2 support).
3157 $DFBN -no-directfb ....... Do not compile DirectFB support.
3158 $DFBY -directfb .......... Compile DirectFB support.
3160 $LFBN -no-linuxfb ........ Do not compile Linux Framebuffer support.
3161 $LFBY -linuxfb ........... Compile Linux Framebuffer support.
3163 -qpa <name> ......... Sets the default QPA platform (e.g xcb, cocoa, windows).
3165 -xplatform target ... The target platform when cross-compiling.
3167 -sysroot <dir> ...... Sets <dir> as the target compiler's and qmake's sysroot.
3169 -no-feature-<feature> Do not compile in <feature>.
3170 -feature-<feature> .. Compile in <feature>. The available features
3171 are described in src/corelib/global/qfeatures.txt
3173 -no-freetype ........ Do not compile in Freetype2 support.
3174 -qt-freetype ........ Use the libfreetype bundled with Qt.
3175 * -system-freetype .... Use libfreetype from the operating system.
3176 See http://www.freetype.org/
3178 -qconfig local ...... Use src/corelib/global/qconfig-local.h rather than the
3179 default ($CFG_QCONFIG).
3181 -no-opengl .......... Do not support OpenGL.
3182 -opengl <api> ....... Enable OpenGL support
3183 With no parameter, this will attempt to auto-detect
3184 OpenGL ES 2, or regular desktop OpenGL.
3185 Use es2 for <api> to override auto-detection.
3187 $GBN -no-glib ........... Do not compile Glib support.
3188 $GBY -glib .............. Compile Glib support.
3191 if [ "$XPLATFORM_MAEMO" = "yes" ]; then
3194 $X2N -no-xinput2......... Do not compile XInput2 support.
3195 $X2Y -xinput2............ Compile XInput2 support.
3201 if [ "$BUILD_ON_MAC" = "yes" ]; then
3206 -Fstring ........... Add an explicit framework path.
3207 -fw string ......... Add an explicit framework.
3209 * -framework ......... Build Qt as a series of frameworks and
3210 link tools against those frameworks.
3211 -no-framework ...... Do not build Qt as a series of frameworks.
3213 -sdk <sdk> ......... Build Qt using Apple provided SDK <sdk>. This option requires gcc 4.
3214 To use a different SDK with gcc 3.3, set the SDKROOT environment variable.
3216 -harfbuzz .......... Use HarfBuzz to do text layout instead of Core Text when possible.
3217 * -no-harfbuzz ....... Disable HarfBuzz on Mac. It can still be enabled by setting
3218 QT_ENABLE_HARFBUZZ environment variable.
3223 [ "x$ERROR" = "xyes" ] && exit 1
3228 # -----------------------------------------------------------------------------
3229 # LICENSING, INTERACTIVE PART
3230 # -----------------------------------------------------------------------------
3233 echo "This is the Qt ${EditionString} Edition."
3236 if [ "$Edition" = "OpenSource" ]; then
3238 echo "You are licensed to use this software under the terms of"
3239 echo "the Lesser GNU General Public License (LGPL) versions 2.1."
3240 if [ -f "$relpath/LICENSE.GPL3" ]; then
3241 echo "You are also licensed to use this software under the terms of"
3242 echo "the GNU General Public License (GPL) versions 3."
3248 if [ "$OPT_CONFIRM_LICENSE" = "yes" ]; then
3249 echo "You have already accepted the terms of the $LicenseType license."
3252 if [ -f "$relpath/LICENSE.GPL3" ]; then
3253 echo "Type '3' to view the GNU General Public License version 3."
3255 echo "Type 'L' to view the Lesser GNU General Public License version 2.1."
3256 echo "Type 'yes' to accept this license offer."
3257 echo "Type 'no' to decline this license offer."
3259 echo $ECHO_N "Do you accept the terms of $affix license? $ECHO_C"
3263 if [ "$acceptance" = "yes" ] || [ "$acceptance" = "y" ]; then
3265 elif [ "$acceptance" = "no" ]; then
3266 echo "You are not licensed to use this software."
3269 elif [ "$acceptance" = "3" ]; then
3270 more "$relpath/LICENSE.GPL3"
3271 elif [ "$acceptance" = "L" ]; then
3272 more "$relpath/LICENSE.LGPL"
3275 elif [ "$Edition" = "Preview" ]; then
3276 TheLicense=`head -n 1 "$relpath/LICENSE.PREVIEW.COMMERCIAL"`
3279 if [ "$OPT_CONFIRM_LICENSE" = "yes" ]; then
3280 echo "You have already accepted the terms of the $LicenseType license."
3283 echo "You are licensed to use this software under the terms of"
3284 echo "the $TheLicense"
3286 echo "Type '?' to read the Preview License."
3287 echo "Type 'yes' to accept this license offer."
3288 echo "Type 'no' to decline this license offer."
3290 echo $ECHO_N "Do you accept the terms of the license? $ECHO_C"
3294 if [ "$acceptance" = "yes" ]; then
3296 elif [ "$acceptance" = "no" ] ;then
3297 echo "You are not licensed to use this software."
3300 elif [ "$acceptance" = "?" ]; then
3301 more "$relpath/LICENSE.PREVIEW.COMMERCIAL"
3304 elif [ "$Edition" != "OpenSource" ]; then
3305 if [ -n "$ExpiryDate" ]; then
3306 ExpiryDate=`echo $ExpiryDate | sed -e "s,-,,g" | tr -d "\n\r"`
3307 [ -z "$ExpiryDate" ] && ExpiryDate="0"
3308 Today=`date +%Y%m%d`
3309 if [ "$Today" -gt "$ExpiryDate" ]; then
3310 case "$LicenseType" in
3311 Commercial|Academic|Educational)
3312 if [ "$QT_PACKAGEDATE" -gt "$ExpiryDate" ]; then
3314 echo "NOTICE NOTICE NOTICE NOTICE"
3316 echo " Your support and upgrade period has expired."
3318 echo " You are no longer licensed to use this version of Qt."
3319 echo " Please contact qt-info@nokia.com to renew your support"
3320 echo " and upgrades for this license."
3322 echo "NOTICE NOTICE NOTICE NOTICE"
3327 echo "WARNING WARNING WARNING WARNING"
3329 echo " Your support and upgrade period has expired."
3331 echo " You may continue to use your last licensed release"
3332 echo " of Qt under the terms of your existing license"
3333 echo " agreement. But you are not entitled to technical"
3334 echo " support, nor are you entitled to use any more recent"
3335 echo " Qt releases."
3337 echo " Please contact qt-info@nokia.com to renew your"
3338 echo " support and upgrades for this license."
3340 echo "WARNING WARNING WARNING WARNING"
3347 echo "NOTICE NOTICE NOTICE NOTICE"
3349 echo " Your Evaluation license has expired."
3351 echo " You are no longer licensed to use this software. Please"
3352 echo " contact qt-info@nokia.com to purchase license, or install"
3353 echo " the Qt Open Source Edition if you intend to develop free"
3356 echo "NOTICE NOTICE NOTICE NOTICE"
3363 TheLicense=`head -n 1 "$outpath/LICENSE"`
3365 if [ "$OPT_CONFIRM_LICENSE" = "yes" ]; then
3366 echo "You have already accepted the terms of the $TheLicense."
3369 echo "You are licensed to use this software under the terms of"
3370 echo "the $TheLicense."
3372 echo "Type '?' to view the $TheLicense."
3373 echo "Type 'yes' to accept this license offer."
3374 echo "Type 'no' to decline this license offer."
3376 echo $ECHO_N "Do you accept the terms of the $TheLicense? $ECHO_C"
3380 if [ "$acceptance" = "yes" ]; then
3382 elif [ "$acceptance" = "no" ]; then
3383 echo "You are not licensed to use this software."
3386 else [ "$acceptance" = "?" ]
3387 more "$outpath/LICENSE"
3392 # this should be moved somewhere else
3395 AIX_VERSION=`uname -v`
3396 if [ "$AIX_VERSION" -lt "5" ]; then
3397 QMakeVar add QMAKE_LIBS_X11 -lbind
3404 #-------------------------------------------------------------------------------
3405 # generate qconfig.cpp
3406 #-------------------------------------------------------------------------------
3407 [ -d "$outpath/src/corelib/global" ] || mkdir -p "$outpath/src/corelib/global"
3409 cat > "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
3411 static const char qt_configure_licensee_str [256 + 12] = "qt_lcnsuser=$Licensee";
3412 static const char qt_configure_licensed_products_str [256 + 12] = "qt_lcnsprod=$Edition";
3414 /* Installation date */
3415 static const char qt_configure_installation [12+11] = "qt_instdate=`date +%Y-%m-%d`";
3417 /* Installation Info */
3418 static const char qt_configure_prefix_path_strs[][256 + 12] = {
3419 "qt_prfxpath=$QT_INSTALL_PREFIX",
3420 "qt_docspath=$QT_INSTALL_DOCS",
3421 "qt_hdrspath=$QT_INSTALL_HEADERS",
3422 "qt_libspath=$QT_INSTALL_LIBS",
3423 "qt_binspath=$QT_INSTALL_BINS",
3424 "qt_plugpath=$QT_INSTALL_PLUGINS",
3425 "qt_impspath=$QT_INSTALL_IMPORTS",
3426 "qt_datapath=$QT_INSTALL_DATA",
3427 "qt_trnspath=$QT_INSTALL_TRANSLATIONS",
3428 "qt_xmplpath=$QT_INSTALL_EXAMPLES",
3429 "qt_tstspath=$QT_INSTALL_TESTS",
3430 #ifdef QT_BUILD_QMAKE
3431 "qt_ssrtpath=$CFG_SYSROOT",
3432 "qt_hpfxpath=$QT_HOST_PREFIX",
3433 "qt_hbinpath=$QT_HOST_BINS",
3434 "qt_hdatpath=$QT_HOST_DATA",
3437 static const char qt_configure_settings_path_str[256 + 12] = "qt_stngpath=$QT_INSTALL_SETTINGS";
3440 cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
3442 /* strlen( "qt_lcnsxxxx" ) == 12 */
3443 #define QT_CONFIGURE_LICENSEE qt_configure_licensee_str + 12;
3444 #define QT_CONFIGURE_LICENSED_PRODUCTS qt_configure_licensed_products_str + 12;
3446 #define QT_CONFIGURE_SETTINGS_PATH qt_configure_settings_path_str + 12;
3449 # avoid unecessary rebuilds by copying only if qconfig.cpp has changed
3450 if cmp -s "$outpath/src/corelib/global/qconfig.cpp" "$outpath/src/corelib/global/qconfig.cpp.new"; then
3451 rm -f "$outpath/src/corelib/global/qconfig.cpp.new"
3453 [ -f "$outpath/src/corelib/global/qconfig.cpp" ] && chmod +w "$outpath/src/corelib/global/qconfig.cpp"
3454 mv "$outpath/src/corelib/global/qconfig.cpp.new" "$outpath/src/corelib/global/qconfig.cpp"
3455 chmod -w "$outpath/src/corelib/global/qconfig.cpp"
3458 # -----------------------------------------------------------------------------
3459 if [ "$LicenseType" = "Evaluation" ]; then
3460 EVALKEY=qt_qevalkey=$LicenseKeyExt
3461 elif echo "$DEFINES" | grep QT_EVAL >/dev/null 2>&1; then
3462 EVALKEY=qt_qevalkey=
3465 if [ -n "$EVALKEY" ]; then
3466 rm -f "$outpath/src/corelib/global/qconfig_eval.cpp"
3467 cat > "$outpath/src/corelib/global/qconfig_eval.cpp" <<EOF
3468 /* Evaluation license key */
3469 static const volatile char qt_eval_key_data [512 + 12] = "$EVALKEY";
3471 chmod -w "$outpath/src/corelib/global/qconfig_eval.cpp"
3475 # -----------------------------------------------------------------------------
3477 # -----------------------------------------------------------------------------
3480 if [ -n "$PERL" ] && [ -x "$relpath/bin/syncqt" ]; then
3482 [ "$CFG_DEV" = "yes" ] && SYNCQT_OPTS="$SYNCQT_OPTS -check-includes"
3483 if [ "$OPT_SHADOW" = "yes" ]; then
3484 "$outpath/bin/syncqt" $SYNCQT_OPTS "$relpath" || exit 1
3485 elif [ "$CFG_DEV" = "yes" ] || [ ! -d $relpath/include ] || [ -d $relpath/.git ]; then
3486 QTDIR="$relpath" perl "$outpath/bin/syncqt" $SYNCQT_OPTS || exit 1
3490 # $1: input variable name (awk regexp)
3491 # $2: optional output variable name
3492 # $3: optional value transformation (sed command)
3493 # relies on $QMAKESPEC, $COMPILER_CONF and $mkfile being set correctly, as the latter
3494 # is where the resulting variable is written to
3495 setBootstrapVariable()
3497 getQMakeConf "$1" | echo ${2-$1} = `if [ -n "$3" ]; then sed "$3"; else cat; fi` >> "$mkfile"
3501 if true; then ###[ '!' -f "$outpath/bin/qmake" ];
3502 echo "Creating qmake. Please wait..."
3505 QCONFIG_H="$outpath/src/corelib/global/qconfig.h"
3506 QMAKE_QCONFIG_H="${QCONFIG_H}.qmake"
3507 if [ -f "$QCONFIG_H" ]; then
3508 OLD_QCONFIG_H=$QCONFIG_H
3509 mv -f "$OLD_QCONFIG_H" "${OLD_QCONFIG_H}.old"
3512 # create temporary qconfig.h for compiling qmake, if it doesn't exist
3513 # when building qmake, we use #defines for the install paths,
3514 # however they are real functions in the library
3515 if [ '!' -f "$QMAKE_QCONFIG_H" ]; then
3516 mkdir -p "$outpath/src/corelib/global"
3517 [ -f "$QCONFIG_H" ] && chmod +w "$QCONFIG_H"
3518 echo "/* All features enabled while building qmake */" >"$QMAKE_QCONFIG_H"
3521 mv -f "$QMAKE_QCONFIG_H" "$QCONFIG_H"
3523 #mkspecs/default is used as a (gasp!) default mkspec so QMAKESPEC needn't be set once configured
3524 rm -rf mkspecs/default mkspecs/default-host
3525 ln -s `echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"` mkspecs/default
3526 ln -s `echo $QMAKESPEC | sed "s,^${relpath}/mkspecs/,,"` mkspecs/default-host
3527 mkdir -p "$outpath/qmake" || exit
3529 for mkfile in GNUmakefile Makefile; do
3532 in_mkfile="${mkfile}.in"
3533 if [ "$mkfile" = "Makefile" ]; then
3534 # if which qmake >/dev/null 2>&1 && [ -f qmake/qmake.pro ]; then
3535 # (cd qmake && qmake) >/dev/null 2>&1 && continue
3537 in_mkfile="${mkfile}.unix"
3539 in_mkfile="$relpath/qmake/$in_mkfile"
3540 mkfile="$outpath/qmake/$mkfile"
3541 if [ -f "$mkfile" ]; then
3542 [ "$CFG_DEV" = "yes" ] && "$WHICH" chflags >/dev/null 2>&1 && chflags nouchg "$mkfile"
3545 [ -f "$in_mkfile" ] || continue
3547 echo "########################################################################" > "$mkfile"
3548 echo "## This file was autogenerated by configure, all changes will be lost ##" >> "$mkfile"
3549 echo "########################################################################" >> "$mkfile"
3552 EXTRA_CFLAGS="\$(QMAKE_CFLAGS)"
3553 EXTRA_CXXFLAGS="\$(QMAKE_CXXFLAGS)"
3554 EXTRA_LFLAGS="\$(QMAKE_LFLAGS)"
3556 if [ "$PLATFORM" = "irix-cc" ] || [ "$PLATFORM" = "irix-cc-64" ]; then
3557 EXTRA_LFLAGS="$EXTRA_LFLAGS -lm"
3560 [ "$CFG_SILENT" = "yes" ] && CC_TRANSFORM='s,^,\@,' || CC_TRANSFORM=
3561 setBootstrapVariable QMAKE_CC CC "$CC_TRANSFORM"
3562 setBootstrapVariable QMAKE_CXX CXX "$CC_TRANSFORM"
3563 setBootstrapVariable QMAKE_CFLAGS
3564 setBootstrapVariable QMAKE_CXXFLAGS
3565 setBootstrapVariable QMAKE_LFLAGS
3567 if [ $QT_EDITION = "QT_EDITION_OPENSOURCE" ]; then
3568 EXTRA_CFLAGS="$EXTRA_CFLAGS -DQMAKE_OPENSOURCE_EDITION"
3569 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -DQMAKE_OPENSOURCE_EDITION"
3571 if [ "$CFG_RELEASE_QMAKE" = "yes" ]; then
3572 setBootstrapVariable QMAKE_CFLAGS_RELEASE
3573 setBootstrapVariable QMAKE_CXXFLAGS_RELEASE
3574 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(QMAKE_CFLAGS_RELEASE)"
3575 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(QMAKE_CXXFLAGS_RELEASE)"
3576 elif [ "$CFG_DEBUG" = "yes" ]; then
3577 setBootstrapVariable QMAKE_CFLAGS_DEBUG
3578 setBootstrapVariable QMAKE_CXXFLAGS_DEBUG
3579 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(QMAKE_CFLAGS_DEBUG)"
3580 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(QMAKE_CXXFLAGS_DEBUG)"
3583 if [ -n "$RPATH_FLAGS" ] && [ -n "`getQMakeConf 'QMAKE_(LFLAGS_)?RPATH'`" ]; then
3584 setBootstrapVariable "QMAKE_(LFLAGS_)?RPATH" QMAKE_LFLAGS_RPATH
3585 for rpath in $RPATH_FLAGS; do
3586 EXTRA_LFLAGS="\$(QMAKE_LFLAGS_RPATH)\"$rpath\" $EXTRA_LFLAGS"
3589 if [ "$BUILD_ON_MAC" = "yes" ]; then
3590 echo "export MACOSX_DEPLOYMENT_TARGET = 10.6" >> "$mkfile"
3591 echo "CARBON_LFLAGS =-framework ApplicationServices" >>"$mkfile"
3592 echo "CARBON_CFLAGS =-fconstant-cfstrings" >>"$mkfile"
3593 EXTRA_LFLAGS="$EXTRA_LFLAGS \$(CARBON_LFLAGS)"
3594 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(CARBON_CFLAGS)"
3595 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(CARBON_CFLAGS)"
3596 EXTRA_OBJS="qsettings_mac.o qcore_mac.o"
3597 EXTRA_SRCS="\"$relpath/src/corelib/io/qsettings_mac.cpp\" \"$relpath/src/corelib/kernel/qcore_mac.cpp\""
3598 if [ '!' -z "$CFG_SDK" ]; then
3599 echo "SDK_LFLAGS =-Wl,-syslibroot,$CFG_SDK" >>"$mkfile"
3600 echo "SDK_CFLAGS =-isysroot $CFG_SDK" >>"$mkfile"
3601 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(SDK_CFLAGS)"
3602 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(SDK_CFLAGS)"
3603 EXTRA_LFLAGS="$EXTRA_LFLAGS \$(SDK_LFLAGS)"
3606 if [ '!' -z "$D_FLAGS" ]; then
3607 EXTRA_CFLAGS="$EXTRA_CFLAGS $D_FLAGS"
3609 QMAKE_BIN_DIR="$QT_INSTALL_BINS"
3610 [ -z "$QMAKE_BIN_DIR" ] && QMAKE_BIN_DIR="${QT_INSTALL_PREFIX}/bin"
3611 QMAKE_DATA_DIR="$QT_INSTALL_DATA"
3612 [ -z "$QMAKE_DATA_DIR" ] && QMAKE_DATA_DIR="${QT_INSTALL_PREFIX}"
3614 adjrelpath=`echo "$relpath" | sed 's/ /\\\\\\\\ /g'`
3615 adjoutpath=`echo "$outpath" | sed 's/ /\\\\\\\\ /g'`
3616 adjqmakespec=`echo "$QMAKESPEC" | sed 's/ /\\\\\\\\ /g'`
3617 sed -e "s,@SOURCE_PATH@,$adjrelpath,g" -e "s,@BUILD_PATH@,$adjoutpath,g" \
3618 -e "s,@QMAKE_CFLAGS@,$EXTRA_CFLAGS,g" -e "s,@QMAKE_LFLAGS@,$EXTRA_LFLAGS,g" \
3619 -e "s,@QMAKE_CXXFLAGS@,$EXTRA_CXXFLAGS,g" \
3620 -e "s,@QT_INSTALL_BINS@,\$(INSTALL_ROOT)$QMAKE_BIN_DIR,g" \
3621 -e "s,@QT_INSTALL_DATA@,\$(INSTALL_ROOT)$QMAKE_DATA_DIR,g" \
3622 -e "s,@QMAKE_QTOBJS@,$EXTRA_OBJS,g" -e "s,@QMAKE_QTSRCS@,$EXTRA_SRCS,g" \
3623 -e "s,@QMAKESPEC@,$adjqmakespec,g" -e "s,@QT_VERSION@,$QT_VERSION,g" "$in_mkfile" >>"$mkfile"
3625 if "$WHICH" makedepend >/dev/null 2>&1 && grep 'depend:' "$mkfile" >/dev/null 2>&1; then
3626 (cd "$outpath/qmake" && "$MAKE" -f "$mkfile" depend) >/dev/null 2>&1
3627 sed "s,^.*/\([^/]*.o\):,\1:,g" "$mkfile" >"$mkfile.tmp"
3628 sed "s,$outpath,$adjoutpath,g" "$mkfile.tmp" >"$mkfile"
3633 QMAKE_BUILD_ERROR=no
3634 (cd "$outpath/qmake"; "$MAKE") || QMAKE_BUILD_ERROR=yes
3635 [ '!' -z "$QCONFIG_H" ] && mv -f "$QCONFIG_H" "$QMAKE_QCONFIG_H" #move qmake's qconfig.h to qconfig.h.qmake
3636 [ '!' -z "$OLD_QCONFIG_H" ] && mv -f "${OLD_QCONFIG_H}.old" "$OLD_QCONFIG_H" #put back qconfig.h
3637 [ "$QMAKE_BUILD_ERROR" = "yes" ] && exit 2
3640 #-------------------------------------------------------------------------------
3641 # create a qt.conf for the Qt build tree itself
3642 #-------------------------------------------------------------------------------
3644 QTCONFFILE="$outpath/bin/qt.conf"
3645 cat > "$QTCONFFILE" <<EOF
3650 #-------------------------------------------------------------------------------
3652 #-------------------------------------------------------------------------------
3653 if [ -z "$PKG_CONFIG" ]; then
3654 # See if PKG_CONFIG is set in the mkspec:
3655 PKG_CONFIG=`getXQMakeConf PKG_CONFIG`
3657 if [ -z "$PKG_CONFIG" ]; then
3658 PKG_CONFIG=`"$WHICH" pkg-config 2>/dev/null`
3661 if [ "$CFG_PKGCONFIG" = "no" ]; then
3663 elif [ "$CFG_PKGCONFIG" = "force" ]; then
3665 echo >&2 "You have asked to use pkg-config. Please make sure you have"
3666 echo >&2 "a correctly setup pkg-config environment!"
3668 elif [ -n "$PKG_CONFIG" ]; then
3669 # found a pkg-config
3670 if [ "$QT_CROSS_COMPILE" = "yes" ]; then
3671 # when xcompiling, check environment to see if it's actually usable
3672 if [ -z "$PKG_CONFIG_LIBDIR" ]; then
3673 if [ -n "$CFG_SYSROOT" ] && [ -d "$CFG_SYSROOT/usr/lib/pkgconfig" ]; then
3674 PKG_CONFIG_LIBDIR=$CFG_SYSROOT/usr/lib/pkgconfig:$CFG_SYSROOT/usr/share/pkgconfig
3675 if [ -n "$GCC_MACHINE_DUMP" ]; then
3676 PKG_CONFIG_LIBDIR=$PKG_CONFIG_LIBDIR:$CFG_SYSROOT/usr/lib/$GCC_MACHINE_DUMP/pkgconfig
3678 export PKG_CONFIG_LIBDIR
3679 echo >&2 "Note: PKG_CONFIG_LIBDIR automatically set to $PKG_CONFIG_LIBDIR"
3680 elif [ "$CFG_PKGCONFIG" = "yes" ]; then
3681 echo >&2 "Error: PKG_CONFIG_LIBDIR has not been set. This could mean"
3682 echo >&2 "the host's .pc files will be used (even if you set PKG_CONFIG_PATH)."
3683 echo >&2 "Set this variable to the directory that contains target .pc files"
3684 echo >&2 "for pkg-config to function correctly when cross-compiling or"
3685 echo >&2 "use -force-pkg-config to override this test."
3689 echo >&2 "Warning: Disabling pkg-config since PKG_CONFIG_LIBDIR is not set."
3692 if [ -z "$PKG_CONFIG_SYSROOT_DIR" ]; then
3693 if [ -n "$CFG_SYSROOT" ]; then
3694 PKG_CONFIG_SYSROOT_DIR=$CFG_SYSROOT
3695 export PKG_CONFIG_SYSROOT_DIR
3696 echo >&2 "Note: PKG_CONFIG_SYSROOT_DIR automatically set to $PKG_CONFIG_SYSROOT_DIR"
3697 elif [ "$CFG_PKGCONFIG" = "yes" ]; then
3698 echo >&2 "Error: PKG_CONFIG_SYSROOT_DIR has not been set. Set this variable"
3699 echo >&2 "to your sysroot for pkg-config to function correctly when cross-compiling"
3700 echo >&2 "or use -force-pkg-config to override this test."
3704 echo >&2 "Warning: Disabling pkg-config since PKG_CONFIG_SYSROOT_DIR is not set."
3708 elif [ "$CFG_PKGCONFIG" = "yes" ]; then
3709 echo >&2 "Could not detect pkg-config from mkspec or PATH."
3713 if [ -z "$PKG_CONFIG" ]; then
3714 QT_CONFIG="$QT_CONFIG no-pkg-config"
3717 #-------------------------------------------------------------------------------
3718 # write out device config before we run the test.
3719 #-------------------------------------------------------------------------------
3720 DEVICE_VARS_OUTFILE="$outpath/mkspecs/qdevice.pri"
3721 if cmp -s "$DEVICE_VARS_FILE" "$DEVICE_VARS_OUTFILE"; then
3722 rm -f "$DEVICE_VARS_FILE"
3724 mv -f $DEVICE_VARS_FILE "$DEVICE_VARS_OUTFILE"
3725 DEVICE_VARS_FILE="$DEVICE_VARS_OUTFILE"
3728 #-------------------------------------------------------------------------------
3729 # tests that need qmake
3730 #-------------------------------------------------------------------------------
3732 #-------------------------------------------------------------------------------
3733 # determine the target and host architectures
3734 #-------------------------------------------------------------------------------
3736 # Use config.tests/arch/arch.pro to has the compiler tell us what the target architecture is
3737 OUTFILE=$outpath/arch.result
3738 "$unixtests/arch.test" "$XQMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath" "$OUTFILE" "CFG"
3739 if [ $? -eq 0 ]; then
3740 eval `cat "$OUTFILE"`
3743 echo "Could not determine the target architecture!"
3744 echo "Turn on verbose messaging (-v) to see the final report."
3746 rm -f "$OUTFILE" 2>/dev/null
3747 [ -z "$CFG_ARCH" ] && CFG_ARCH="unknown"
3749 if [ "$QMAKESPEC" != "$XQMAKESPEC" ]; then
3750 # Do the same test again, using the host compiler
3751 SYSROOT_FLAG= "$unixtests/arch.test" "$QMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath" "$OUTFILE" "CFG_HOST"
3752 if [ $? -eq 0 ]; then
3753 eval `cat "$OUTFILE"`
3756 echo "Could not determine the host architecture!"
3757 echo "Turn on verbose messaging (-v) to see the final report."
3759 rm -f "$OUTFILE" 2>/dev/null
3760 [ -z "$CFG_HOST_ARCH" ] && CFG_HOST_ARCH="unknown"
3762 # not cross compiling, host == target
3763 CFG_HOST_ARCH="$CFG_ARCH"
3764 CFG_HOST_CPUFEATURES="$CFG_CPUFEATURES"
3768 if [ "$OPT_VERBOSE" = "yes" ]; then
3769 echo "System architecture: '$CFG_ARCH'"
3770 echo "Host architecture: '$CFG_HOST_ARCH'"
3773 #-------------------------------------------------------------------------------
3774 # functionality tests
3775 #-------------------------------------------------------------------------------
3777 # Detect C++11 support
3778 if [ "$CFG_CXX11" != "no" ]; then
3779 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/c++11 "C++11" $L_FLAGS $I_FLAGS $l_FLAGS; then
3781 elif [ "$CFG_CXX11" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
3782 echo "C++11 support cannot be enabled due to functionality tests!"
3783 echo " Turn on verbose messaging (-v) to $0 to see the final report."
3784 echo " If you believe this message is in error you may use the continue"
3785 echo " switch (-continue) to $0 to continue."
3792 # detect availability of float math.h functions
3793 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/floatmath "floatmath" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3794 CFG_USE_FLOATMATH=yes
3796 CFG_USE_FLOATMATH=no
3799 # detect sse2 support
3800 if [ "${CFG_SSE2}" = "auto" ]; then
3801 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/common/sse2 "sse2" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3808 # detect sse3 support
3809 if [ "${CFG_SSE3}" = "auto" ]; then
3810 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/common/sse3 "sse3" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3817 # detect ssse3 support
3818 if [ "${CFG_SSSE3}" = "auto" ]; then
3819 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/common/ssse3 "ssse3" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3826 # detect sse4.1 support
3827 if [ "${CFG_SSE4_1}" = "auto" ]; then
3828 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/common/sse4_1 "sse4_1" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3835 # detect sse4.2 support
3836 if [ "${CFG_SSE4_2}" = "auto" ]; then
3837 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/common/sse4_2 "sse4_2" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3844 # detect avx support
3845 if [ "${CFG_AVX}" = "auto" ]; then
3846 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/common/avx "avx" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3847 case "$XQMAKESPEC" in
3849 # Some clang versions produce internal compiler errors compiling Qt AVX code
3850 case `$TEST_COMPILER --version` in
3851 Apple\ clang\ version\ 2*|Apple\ clang\ version\ 3.0*)
3853 if [ "$OPT_VERBOSE" = "yes" ]; then
3854 echo 'AVX support disabled for blacklisted clang compiler'
3871 # detect avx2 support
3872 if [ "${CFG_AVX}" = "no" ]; then
3875 if [ "${CFG_AVX2}" = "auto" ]; then
3876 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/common/avx2 "avx2" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3883 # check iWMMXt support
3884 if [ "$CFG_IWMMXT" = "yes" ]; then
3885 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/iwmmxt "iwmmxt" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS
3886 if [ $? != "0" ]; then
3887 echo "The iWMMXt functionality test failed!"
3888 echo " Please make sure your compiler supports iWMMXt intrinsics!"
3893 # detect neon support
3894 if [ "$CFG_ARCH" = "arm" ] && [ "${CFG_NEON}" = "auto" ]; then
3895 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/neon "neon" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
3900 elif [ "$CFG_ARCH" != "arm" ]; then
3904 # detect mips_dsp support
3905 if [ "${CFG_ARCH}" = "mips" ] && [ "${CFG_MIPS_DSP}" = "yes" ]; then
3911 # detect mips_dspr2 support
3912 if [ "${CFG_ARCH}" = "mips" ] && [ "${CFG_MIPS_DSPR2}" = "yes" ]; then
3918 [ "$XPLATFORM_MINGW" = "yes" ] && QMakeVar add styles "windowsxp windowsvista"
3921 if [ "$CFG_ZLIB" = "no" ]; then
3922 # Note: Qt no longer support builds without zlib
3923 # So we force a "no" to be "auto" here.
3924 # If you REALLY really need no zlib support, you can still disable
3925 # it by doing the following:
3926 # add "no-zlib" to mkspecs/qconfig.pri
3927 # #define QT_NO_COMPRESS (probably by adding to src/corelib/global/qconfig.h)
3929 # There's no guarantee that Qt will build under those conditions
3934 if [ "$CFG_ZLIB" = "auto" ]; then
3935 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/zlib "zlib" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
3942 if [ "$CFG_LARGEFILE" = "auto" ]; then
3943 #Large files should be enabled for all Linux systems
3947 if [ "$CFG_GUI" = "no" ]; then
3948 QPA_PLATFORM_GUARD=no
3951 # detect how jpeg should be built
3952 if [ "$CFG_JPEG" = "auto" ]; then
3953 if [ "$CFG_SHARED" = "yes" ]; then
3960 if [ "$CFG_LIBJPEG" = "auto" ]; then
3961 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/libjpeg "libjpeg" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
3968 # detect how gif should be built
3969 if [ "$CFG_GIF" = "auto" ]; then
3970 if [ "$CFG_SHARED" = "yes" ]; then
3978 if [ "$CFG_LIBPNG" = "auto" ]; then
3979 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/libpng "libpng" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
3986 # detect accessibility
3987 if [ "$CFG_ACCESSIBILITY" = "auto" ]; then
3988 CFG_ACCESSIBILITY=yes
3991 if [ "$CFG_EGLFS" = "yes" ]; then
3992 if [ "$CFG_EGL" = "no" ]; then
3993 echo "The EGLFS plugin requires EGL support and cannot be built"
3996 if [ "$CFG_OPENGL" != "es2" ]; then
3997 echo "The EGLFS plugin requires OpenGL ES 2 support and cannot be built"
4004 # auto-detect SQL-modules support
4005 for _SQLDR in $CFG_SQL_AVAILABLE; do
4008 if [ "$CFG_SQL_mysql" != "no" ]; then
4009 [ -z "$CFG_MYSQL_CONFIG" ] && CFG_MYSQL_CONFIG=`"$WHICH" mysql_config`
4010 if [ -x "$CFG_MYSQL_CONFIG" ]; then
4011 QT_CFLAGS_MYSQL=`$CFG_MYSQL_CONFIG --include 2>/dev/null`
4012 QT_LFLAGS_MYSQL_R=`$CFG_MYSQL_CONFIG --libs_r 2>/dev/null`
4013 QT_LFLAGS_MYSQL=`$CFG_MYSQL_CONFIG --libs 2>/dev/null`
4014 QT_MYSQL_VERSION=`$CFG_MYSQL_CONFIG --version 2>/dev/null`
4015 QT_MYSQL_VERSION_MAJOR=`echo $QT_MYSQL_VERSION | cut -d . -f 1`
4017 if [ -n "$QT_MYSQL_VERSION" ] && [ "$QT_MYSQL_VERSION_MAJOR" -lt 4 ]; then
4018 if [ "$CFG_SQL_mysql" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4019 echo "This version of MySql is not supported ($QT_MYSQL_VERSION)."
4020 echo " You need MySql 4 or higher."
4021 echo " If you believe this message is in error you may use the continue"
4022 echo " switch (-continue) to $0 to continue."
4027 QT_LFLAGS_MYSQL_R=""
4031 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/mysql_r "MySQL (thread-safe)" $QT_LFLAGS_MYSQL_R $L_FLAGS $QT_CFLAGS_MYSQL $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4032 QMakeVar add CONFIG use_libmysqlclient_r
4033 if [ "$CFG_SQL_mysql" = "auto" ]; then
4034 CFG_SQL_mysql=plugin
4036 QT_LFLAGS_MYSQL="$QT_LFLAGS_MYSQL_R"
4037 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/mysql "MySQL (thread-unsafe)" $QT_LFLAGS_MYSQL $L_FLAGS $QT_CFLAGS_MYSQL $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4038 if [ "$CFG_SQL_mysql" = "auto" ]; then
4039 CFG_SQL_mysql=plugin
4042 if [ "$CFG_SQL_mysql" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4043 echo "MySQL support cannot be enabled due to functionality tests!"
4044 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4045 echo " If you believe this message is in error you may use the continue"
4046 echo " switch (-continue) to $0 to continue."
4051 QT_LFLAGS_MYSQL_R=""
4059 if [ "$CFG_SQL_psql" != "no" ]; then
4060 # Be careful not to use native pg_config when cross building.
4061 if [ "$XPLATFORM_MINGW" != "yes" ] && "$WHICH" pg_config >/dev/null 2>&1; then
4062 QT_CFLAGS_PSQL=`pg_config --includedir 2>/dev/null`
4063 QT_LFLAGS_PSQL=`pg_config --libdir 2>/dev/null`
4065 [ -z "$QT_CFLAGS_PSQL" ] || QT_CFLAGS_PSQL="-I$QT_CFLAGS_PSQL"
4066 [ -z "$QT_LFLAGS_PSQL" ] || QT_LFLAGS_PSQL="-L$QT_LFLAGS_PSQL"
4067 # But, respect PSQL_LIBS if set
4068 [ -z "$PSQL_LIBS" ] || QT_LFLAGS_PSQL="$PSQL_LIBS"
4069 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/psql "PostgreSQL" $QT_LFLAGS_PSQL $L_FLAGS $QT_CFLAGS_PSQL $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4070 if [ "$CFG_SQL_psql" = "auto" ]; then
4074 if [ "$CFG_SQL_psql" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4075 echo "PostgreSQL support cannot be enabled due to functionality tests!"
4076 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4077 echo " If you believe this message is in error you may use the continue"
4078 echo " switch (-continue) to $0 to continue."
4089 if [ "$CFG_SQL_odbc" != "no" ]; then
4090 if ( [ "$BUILD_ON_MAC" != "yes" ] || [ "$XPLATFORM_MINGW" = "yes" ] ) && "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/odbc "ODBC" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4091 if [ "$CFG_SQL_odbc" = "auto" ]; then
4095 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/iodbc "iODBC" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4096 QT_LFLAGS_ODBC="-liodbc"
4097 if [ "$CFG_SQL_odbc" = "auto" ]; then
4101 if [ "$CFG_SQL_odbc" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4102 echo "ODBC support cannot be enabled due to functionality tests!"
4103 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4104 echo " If you believe this message is in error you may use the continue"
4105 echo " switch (-continue) to $0 to continue."
4115 if [ "$CFG_SQL_oci" != "no" ]; then
4116 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/oci "OCI" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4117 if [ "$CFG_SQL_oci" = "auto" ]; then
4121 if [ "$CFG_SQL_oci" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4122 echo "Oracle (OCI) support cannot be enabled due to functionality tests!"
4123 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4124 echo " If you believe this message is in error you may use the continue"
4125 echo " switch (-continue) to $0 to continue."
4134 if [ "$CFG_SQL_tds" != "no" ]; then
4135 [ -z "$SYBASE" ] || QT_LFLAGS_TDS="-L$SYBASE/lib"
4136 [ -z "$SYBASE_LIBS" ] || QT_LFLAGS_TDS="$QT_LFLAGS_TDS $SYBASE_LIBS"
4137 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/tds "TDS" $QT_LFLAGS_TDS $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4138 if [ "$CFG_SQL_tds" = "auto" ]; then
4142 if [ "$CFG_SQL_tds" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4143 echo "TDS support cannot be enabled due to functionality tests!"
4144 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4145 echo " If you believe this message is in error you may use the continue"
4146 echo " switch (-continue) to $0 to continue."
4155 if [ "$CFG_SQL_db2" != "no" ]; then
4156 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/db2 "DB2" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4157 if [ "$CFG_SQL_db2" = "auto" ]; then
4161 if [ "$CFG_SQL_db2" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4162 echo "ODBC support cannot be enabled due to functionality tests!"
4163 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4164 echo " If you believe this message is in error you may use the continue"
4165 echo " switch (-continue) to $0 to continue."
4174 if [ "$CFG_SQL_ibase" != "no" ]; then
4175 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/ibase "InterBase" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4176 if [ "$CFG_SQL_ibase" = "auto" ]; then
4177 CFG_SQL_ibase=plugin
4180 if [ "$CFG_SQL_ibase" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4181 echo "InterBase support cannot be enabled due to functionality tests!"
4182 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4183 echo " If you believe this message is in error you may use the continue"
4184 echo " switch (-continue) to $0 to continue."
4193 if [ "$CFG_SQL_sqlite2" != "no" ]; then
4194 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sqlite2 "SQLite2" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4195 if [ "$CFG_SQL_sqlite2" = "auto" ]; then
4196 CFG_SQL_sqlite2=plugin
4199 if [ "$CFG_SQL_sqlite2" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4200 echo "SQLite2 support cannot be enabled due to functionality tests!"
4201 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4202 echo " If you believe this message is in error you may use the continue"
4203 echo " switch (-continue) to $0 to continue."
4212 if [ "$CFG_SQL_sqlite" != "no" ]; then
4213 SQLITE_AUTODETECT_FAILED="no"
4214 if [ "$CFG_SQLITE" = "system" ]; then
4215 if [ -n "$PKG_CONFIG" ]; then
4216 QT_CFLAGS_SQLITE=`$PKG_CONFIG --cflags sqlite3 2>/dev/null`
4217 QT_LFLAGS_SQLITE=`$PKG_CONFIG --libs sqlite3 2>/dev/null`
4219 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sqlite "SQLite" $QT_LFLAGS_SQLITE $L_FLAGS $QT_CFLAGS_SQLITE $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4220 if [ "$CFG_SQL_sqlite" = "auto" ]; then
4221 CFG_SQL_sqlite=plugin
4223 QMAKE_CONFIG="$QMAKE_CONFIG system-sqlite"
4225 SQLITE_AUTODETECT_FAILED="yes"
4228 elif [ -f "$relpath/src/3rdparty/sqlite/sqlite3.h" ]; then
4229 if [ "$CFG_SQL_sqlite" = "auto" ]; then
4230 CFG_SQL_sqlite=plugin
4233 SQLITE_AUTODETECT_FAILED="yes"
4237 if [ "$SQLITE_AUTODETECT_FAILED" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4238 echo "SQLite support cannot be enabled due to functionality tests!"
4239 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4240 echo " If you believe this message is in error you may use the continue"
4241 echo " switch (-continue) to $0 to continue."
4247 if [ "$OPT_VERBOSE" = "yes" ]; then
4248 echo "unknown SQL driver: $_SQLDR"
4254 # auto-detect NIS support
4255 if [ "$CFG_NIS" != "no" ]; then
4256 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/nis "NIS" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4259 if [ "$CFG_NIS" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4260 echo "NIS support cannot be enabled due to functionality tests!"
4261 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4262 echo " If you believe this message is in error you may use the continue"
4263 echo " switch (-continue) to $0 to continue."
4271 # auto-detect CUPS support
4272 if [ "$CFG_CUPS" != "no" ]; then
4273 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/cups "Cups" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4276 if [ "$CFG_CUPS" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4277 echo "Cups support cannot be enabled due to functionality tests!"
4278 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4279 echo " If you believe this message is in error you may use the continue"
4280 echo " switch (-continue) to $0 to continue."
4288 # auto-detect iconv(3) support
4289 if [ "$CFG_ICONV" != "no" ]; then
4290 if [ "$XPLATFORM_MINGW" = "yes" ]; then
4292 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" "$OPT_VERBOSE" "$relpath" "$outpath" "config.tests/unix/iconv" "POSIX iconv" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4294 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" "$OPT_VERBOSE" "$relpath" "$outpath" "config.tests/unix/sun-libiconv" "SUN libiconv" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4296 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" "$OPT_VERBOSE" "$relpath" "$outpath" "config.tests/unix/gnu-libiconv" "GNU libiconv" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4299 if [ "$CFG_ICONV" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4300 echo "Iconv support cannot be enabled due to functionality tests!"
4301 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4302 echo " If you believe this message is in error you may use the continue"
4303 echo " switch (-continue) to $0 to continue."
4311 # auto-detect libdbus-1 support
4312 if [ "$CFG_DBUS" != "no" ]; then
4313 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --atleast-version="$MIN_DBUS_1_VERSION" dbus-1 2>/dev/null; then
4314 QT_CFLAGS_DBUS=`$PKG_CONFIG --cflags dbus-1 2>/dev/null`
4315 QT_LIBS_DBUS=`$PKG_CONFIG --libs dbus-1 2>/dev/null`
4317 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/dbus "D-Bus" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QT_CFLAGS_DBUS $QT_LIBS_DBUS $MAC_CONFIG_TEST_COMMANDLINE; then
4318 [ "$CFG_DBUS" = "auto" ] && CFG_DBUS=yes
4319 QMakeVar set QT_CFLAGS_DBUS "$QT_CFLAGS_DBUS"
4320 QMakeVar set QT_LIBS_DBUS "$QT_LIBS_DBUS"
4322 if [ "$CFG_DBUS" = "auto" ]; then
4324 elif [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4325 # CFG_DBUS is "yes" or "linked" here
4327 echo "The QtDBus module cannot be enabled because libdbus-1 version $MIN_DBUS_1_VERSION was not found."
4328 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4329 echo " If you believe this message is in error you may use the continue"
4330 echo " switch (-continue) to $0 to continue."
4336 # auto-detect Glib support
4337 if [ "$CFG_GLIB" != "no" ]; then
4338 if [ -n "$PKG_CONFIG" ]; then
4339 QT_CFLAGS_GLIB=`$PKG_CONFIG --cflags glib-2.0 gthread-2.0 2>/dev/null`
4340 QT_LIBS_GLIB=`$PKG_CONFIG --libs glib-2.0 gthread-2.0 2>/dev/null`
4342 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/glib "Glib" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QT_CFLAGS_GLIB $QT_LIBS_GLIB; then
4344 QMakeVar set QT_CFLAGS_GLIB "$QT_CFLAGS_GLIB"
4345 QMakeVar set QT_LIBS_GLIB "$QT_LIBS_GLIB"
4347 if [ "$CFG_GLIB" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4348 echo "Glib support cannot be enabled due to functionality tests!"
4349 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4350 echo " If you believe this message is in error you may use the continue"
4351 echo " switch (-continue) to $0 to continue."
4359 # auto-detect GTK style support
4360 if [ "$CFG_GLIB" = "yes" -a "$CFG_QGTKSTYLE" != "no" ]; then
4361 if [ -n "$PKG_CONFIG" ]; then
4362 QT_CFLAGS_QGTKSTYLE=`$PKG_CONFIG --cflags gtk+-2.0 ">=" 2.10 atk 2>/dev/null`
4363 QT_LIBS_QGTKSTYLE=`$PKG_CONFIG --libs gobject-2.0 2>/dev/null`
4365 if [ -n "$QT_CFLAGS_QGTKSTYLE" ] ; then
4367 QT_CONFIG="$QT_CONFIG gtkstyle"
4368 QMakeVar set QT_CFLAGS_QGTKSTYLE "$QT_CFLAGS_QGTKSTYLE"
4369 QMakeVar set QT_LIBS_QGTKSTYLE "$QT_LIBS_QGTKSTYLE"
4371 if [ "$CFG_QGTKSTYLE" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4372 echo "Gtk theme support cannot be enabled due to functionality tests!"
4373 echo " Turn on verbose messaging (-v) to $0 to see the fin al report."
4374 echo " If you believe this message is in error you may use the continue"
4375 echo " switch (-continue) to $0 to continue."
4381 elif [ "$CFG_GLIB" = "no" ]; then
4386 if [ "$CFG_GLIB" = "yes" -a "$CFG_GSTREAMER" != "no" ]; then
4387 if [ -n "$PKG_CONFIG" ]; then
4388 QT_CFLAGS_GSTREAMER=`$PKG_CONFIG --cflags gstreamer-0.10 gstreamer-plugins-base-0.10 2>/dev/null`
4389 QT_LIBS_GSTREAMER=`$PKG_CONFIG --libs gstreamer-0.10 gstreamer-plugins-base-0.10 2>/dev/null`
4391 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/gstreamer "GStreamer" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QT_CFLAGS_GSTREAMER $QT_LIBS_GSTREAMER; then
4393 QMakeVar set QT_CFLAGS_GSTREAMER "$QT_CFLAGS_GSTREAMER"
4394 QMakeVar set QT_LIBS_GSTREAMER "$QT_LIBS_GSTREAMER"
4396 if [ "$CFG_GSTREAMER" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4397 echo "Gstreamer support cannot be enabled due to functionality tests!"
4398 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4399 echo " If you believe this message is in error you may use the continue"
4400 echo " switch (-continue) to $0 to continue."
4406 elif [ "$CFG_GLIB" = "no" ]; then
4410 # auto-detect libicu support
4411 if [ "$CFG_ICU" != "no" ]; then
4412 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/icu "ICU" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4413 [ "$CFG_ICU" = "auto" ] && CFG_ICU=yes
4415 if [ "$CFG_ICU" = "auto" ]; then
4417 elif [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4420 echo "The ICU library support cannot be enabled."
4421 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4422 echo " If you believe this message is in error you may use the continue"
4423 echo " switch (-continue) to $0 to continue."
4429 # Auto-detect PulseAudio support
4430 if [ "$CFG_PULSEAUDIO" != "no" ]; then
4431 if [ -n "$PKG_CONFIG" ]; then
4432 QT_CFLAGS_PULSEAUDIO=`$PKG_CONFIG --cflags libpulse '>=' 0.9.10 libpulse-mainloop-glib 2>/dev/null`
4433 QT_LIBS_PULSEAUDIO=`$PKG_CONFIG --libs libpulse '>=' 0.9.10 libpulse-mainloop-glib 2>/dev/null`
4435 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/pulseaudio "PulseAudio" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QT_CFLAGS_PULSEAUDIO $QT_LIBS_PULSEAUDIO; then
4437 QMakeVar set QT_CFLAGS_PULSEAUDIO "$QT_CFLAGS_PULSEAUDIO"
4438 QMakeVar set QT_LIBS_PULSEAUDIO "$QT_LIBS_PULSEAUDIO"
4440 if [ "$CFG_PULSEAUDIO" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4441 echo "PulseAudio support cannot be enabled due to functionality tests!"
4442 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4443 echo " If you believe this message is in error you may use the continue"
4444 echo " switch (-continue) to $0 to continue."
4453 if [ "$XPLATFORM_MINGW" = "yes" ]; then
4454 # auto-detect OpenGL support (es2 = OpenGL ES 2.x)
4455 if [ "$CFG_GUI" = "no" ]; then
4456 if [ "$CFG_OPENGL" = "auto" ]; then
4459 if [ "$CFG_OPENGL" != "no" ]; then
4460 echo "OpenGL enabled, but GUI disabled."
4461 echo " You might need to either enable the GUI or disable OpenGL"
4465 if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
4466 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/opengl "OpenGL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4468 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4471 if [ "$CFG_OPENGL" = "yes" ]; then
4472 echo "All the OpenGL functionality tests failed!"
4473 echo " You might need to modify the include and library search paths by editing"
4474 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
4475 echo " ${XQMAKESPEC}."
4482 # HP-UX have buggy glx headers; check if we really need to define the GLXFBConfig struct.
4483 if [ "$CFG_OPENGL" = "desktop" ]; then
4484 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/glxfbconfig "OpenGL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS
4485 if [ $? != "0" ]; then
4486 QMakeVar add DEFINES QT_DEFINE_GLXFBCONFIG_STRUCT
4493 elif [ "$CFG_OPENGL" = "es2" ]; then
4495 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS
4496 if [ $? != "0" ]; then
4497 echo "The OpenGL ES 2.0 functionality test failed!"
4498 echo " You might need to modify the include and library search paths by editing"
4499 echo " QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in"
4500 echo " ${XQMAKESPEC}."
4503 elif [ "$CFG_OPENGL" = "desktop" ]; then
4504 # Desktop OpenGL support
4505 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/opengl "OpenGL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS
4506 if [ $? != "0" ]; then
4507 echo "The OpenGL functionality test failed!"
4508 echo " You might need to modify the include and library search paths by editing"
4509 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
4510 echo " ${XQMAKESPEC}."
4515 # HP-UX have buggy glx headers; check if we really need to define the GLXFBConfig struct.
4516 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/glxfbconfig "OpenGL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS
4517 if [ $? != "0" ]; then
4518 QMakeVar add DEFINES QT_DEFINE_GLXFBCONFIG_STRUCT
4525 fi # X11/MINGW OpenGL
4527 if [ "$BUILD_ON_MAC" = "yes" ]; then
4528 if [ "$CFG_PHONON" != "no" ]; then
4529 # Always enable Phonon (unless it was explicitly disabled)
4533 if [ "$CFG_COREWLAN" = "auto" ]; then
4534 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/mac/corewlan "CoreWlan" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4542 # auto-detect OpenGL support (es2 = OpenGL ES 2.x)
4543 if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
4544 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengldesktop "OpenGL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4546 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4549 if [ "$CFG_OPENGL" = "yes" ]; then
4550 echo "All the OpenGL functionality tests failed!"
4551 echo " You might need to modify the include and library search paths by editing"
4552 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
4553 echo " ${XQMAKESPEC}."
4558 elif [ "$CFG_OPENGL" = "es2" ]; then
4560 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists glesv2 2>/dev/null; then
4561 QMAKE_INCDIR_OPENGL_ES2=`$PKG_CONFIG --cflags-only-I glesv2 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'`
4562 QMAKE_LIBDIR_OPENGL_ES2=`$PKG_CONFIG --libs-only-L glesv2 2>/dev/null | sed -e 's,^-L,,g' -e 's, -L, ,g'`
4563 QMAKE_LIBS_OPENGL_ES2=`$PKG_CONFIG --libs glesv2 2>/dev/null`
4564 QMAKE_CFLAGS_OPENGL_ES2=`$PKG_CONFIG --cflags glesv2 2>/dev/null`
4565 QMakeVar set QMAKE_INCDIR_OPENGL_ES2 "`shellArgumentListToQMakeList "$QMAKE_INCDIR_OPENGL_ES2"`"
4566 QMakeVar set QMAKE_LIBDIR_OPENGL_ES2 "`shellArgumentListToQMakeList "$QMAKE_LIBDIR_OPENGL_ES2"`"
4567 QMakeVar set QMAKE_LIBS_OPENGL_ES2 "`shellArgumentListToQMakeList "$QMAKE_LIBS_OPENGL_ES2"`"
4570 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_LIBS_OPENGL_ES2 $QMAKE_CFLAGS_OPENGL_ES2
4571 if [ $? != "0" ]; then
4572 echo "The OpenGL ES 2.0 functionality test failed!"
4573 echo " You might need to modify the include and library search paths by editing"
4574 echo " QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in"
4575 echo " ${XQMAKESPEC}."
4578 elif [ "$CFG_OPENGL" = "desktop" ]; then
4579 # Desktop OpenGL support
4580 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengldesktop "OpenGL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS
4581 if [ $? != "0" ]; then
4582 echo "The OpenGL functionality test failed!"
4583 echo " You might need to modify the include and library search paths by editing"
4584 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
4585 echo " ${XQMAKESPEC}."
4590 # auto-detect FontConfig support
4591 if [ "$CFG_FONTCONFIG" != "no" ]; then
4592 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists fontconfig --exists freetype2 2>/dev/null; then
4593 QT_CFLAGS_FONTCONFIG=`$PKG_CONFIG --cflags fontconfig --cflags freetype2 2>/dev/null`
4594 QT_LIBS_FONTCONFIG=`$PKG_CONFIG --libs fontconfig --libs freetype2 2>/dev/null`
4596 QT_CFLAGS_FONTCONFIG=
4597 QT_LIBS_FONTCONFIG="-lfreetype -lfontconfig"
4599 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/fontconfig "FontConfig" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QT_CFLAGS_FONTCONFIG $QT_LIBS_FONTCONFIG; then
4600 QT_CONFIG="$QT_CONFIG fontconfig"
4601 QMakeVar set QMAKE_CFLAGS_FONTCONFIG "$QT_CFLAGS_FONTCONFIG"
4602 QMakeVar set QMAKE_LIBS_FONTCONFIG "$QT_LIBS_FONTCONFIG"
4604 CFG_LIBFREETYPE=system
4611 # Save these for a check later
4612 ORIG_CFG_XCB="$CFG_XCB"
4613 ORIG_CFG_EGLFS="$CFG_EGLFS"
4614 ORIG_CFG_DIRECTFB="$CFG_DIRECTFB"
4615 ORIG_CFG_LINUXFB="$CFG_LINUXFB"
4617 if [ "$CFG_LIBUDEV" != "no" ]; then
4618 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists libudev 2>/dev/null; then
4619 QMAKE_INCDIR_LIBUDEV=`$PKG_CONFIG --cflags-only-I libudev 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'`
4620 QMAKE_LIBS_LIBUDEV=`$PKG_CONFIG --libs libudev 2>/dev/null`
4621 QMakeVar set QMAKE_INCDIR_LIBUDEV "$QMAKE_INCDIR_LIBUDEV"
4622 QMakeVar set QMAKE_LIBS_LIBUDEV "$QMAKE_LIBS_LIBUDEV"
4624 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/libudev "libudev" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_INCDIR_LIBUDEV $QMAKE_LIBS_LIBUDEV; then
4626 QT_CONFIG="$QT_CONFIG libudev"
4627 elif [ "$CFG_LIBUDEV" = "yes" ]; then
4628 echo "The libudev functionality test failed!"
4632 QMakeVar add DEFINES QT_NO_LIBUDEV
4636 if [ "$CFG_EVDEV" != "no" ]; then
4637 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/evdev "evdev" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4639 QT_CONFIG="$QT_CONFIG evdev"
4640 elif [ "$CFG_EVDEV" = "yes" ]; then
4641 echo "The evdev functionality test failed!"
4645 QMakeVar add DEFINES QT_NO_EVDEV
4649 # Check we actually have X11 :-)
4650 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xlib "XLib" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4651 QT_CONFIG="$QT_CONFIG xlib"
4654 # auto-detect Xrender support
4655 if [ "$CFG_XRENDER" != "no" ]; then
4656 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xrender "Xrender" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4658 QT_CONFIG="$QT_CONFIG xrender"
4660 if [ "$CFG_XRENDER" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4661 echo "Xrender support cannot be enabled due to functionality tests!"
4662 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4663 echo " If you believe this message is in error you may use the continue"
4664 echo " switch (-continue) to $0 to continue."
4672 if [ "$CFG_XCB" != "no" ]; then
4673 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists "xcb >= 1.5" 2>/dev/null; then
4674 QMAKE_CFLAGS_XCB="`$PKG_CONFIG --cflags xcb 2>/dev/null`"
4675 QMAKE_LIBS_XCB="`$PKG_CONFIG --libs xcb 2>/dev/null`"
4677 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qpa/xcb "xcb" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_CFLAGS_XCB $QMAKE_LIBS_XCB; then
4679 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qpa/xcb-render "xcb-render" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_CFLAGS_XCB $QMAKE_LIBS_XCB; then
4680 QT_CONFIG="$QT_CONFIG xcb-render"
4683 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qpa/xcb-poll-for-queued-event "xcb-poll-for-queued-event" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_CFLAGS_XCB $QMAKE_LIBS_XCB; then
4685 QT_CONFIG="$QT_CONFIG xcb-poll-for-queued-event"
4688 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qpa/xcb-xlib "xcb-xlib" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_CFLAGS_XCB $QMAKE_LIBS_XCB; then
4689 QT_CONFIG="$QT_CONFIG xcb-xlib"
4692 # auto-detect XInput2 support. Needed by xcb too.
4693 if [ "$CFG_XINPUT2" != "no" ]; then
4694 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xinput2 "XInput2" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4698 if [ "$CFG_XINPUT2" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4699 echo "XInput2 support cannot be enabled due to functionality tests!"
4700 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4701 echo " If you believe this message is in error you may use the continue"
4702 echo " switch (-continue) to $0 to continue."
4710 if [ "$CFG_XCB" = "yes" ]; then
4711 echo "The XCB test failed!"
4712 echo " You might need to install dependency packages."
4713 echo " See src/plugins/platforms/xcb/README."
4717 QMakeVar add DEFINES QT_NO_XCB
4721 if [ "$CFG_DIRECTFB" != "no" ]; then
4722 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists directfb 2>/dev/null; then
4723 QMAKE_CFLAGS_DIRECTFB=`$PKG_CONFIG --cflags directfb 2>/dev/null`
4724 QMAKE_LIBS_DIRECTFB=`$PKG_CONFIG --libs directfb 2>/dev/null`
4725 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/qpa/directfb" "DirectFB" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_CFLAGS_DIRECTFB $QMAKE_LIBS_DIRECTFB; then
4727 elif [ "$CFG_DIRECTFB" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4728 echo " DirectFB support cannot be enabled due to functionality tests!"
4729 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4730 echo " If you believe this message is in error you may use the continue"
4731 echo " switch (-continue) to $0 to continue."
4741 if [ "$CFG_LINUXFB" != "no" ]; then
4742 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/qpa/linuxfb" "LinuxFB" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4744 elif [ "$CFG_LINUXFB" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4745 echo " Linux Framebuffer support cannot be enabled due to functionality tests!"
4746 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4747 echo " If you believe this message is in error you may use the continue"
4748 echo " switch (-continue) to $0 to continue."
4755 # Detect libxkbcommon
4756 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists xkbcommon 2>/dev/null; then
4757 QMAKE_CFLAGS_XKBCOMMON="`$PKG_CONFIG --cflags xkbcommon 2>/dev/null`"
4758 QMAKE_LIBS_XKBCOMMON="`$PKG_CONFIG --libs xkbcommon 2>/dev/null`"
4759 QMAKE_CFLAGS_XCB="$QMAKE_CFLAGS_XCB $QMAKE_CFLAGS_XKBCOMMON"
4760 QMAKE_LIBS_XCB="$QMAKE_LIBS_XCB $QMAKE_LIBS_XKBCOMMON"
4762 QMAKE_DEFINES_XCB=QT_NO_XCB_XKB
4766 if [ "$CFG_EGL" != "no" ] && [ "$CFG_OPENGL" != "desktop" ]; then
4767 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists egl 2>/dev/null; then
4768 QMAKE_INCDIR_EGL=`$PKG_CONFIG --cflags-only-I egl 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'`
4769 QMAKE_LIBS_EGL=`$PKG_CONFIG --libs egl 2>/dev/null`
4770 QMAKE_CFLAGS_EGL=`$PKG_CONFIG --cflags egl 2>/dev/null`
4771 QMakeVar set QMAKE_INCDIR_EGL "$QMAKE_INCDIR_EGL"
4772 QMakeVar set QMAKE_LIBS_EGL "$QMAKE_LIBS_EGL"
4773 fi # detect EGL support
4774 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/qpa/egl" "EGL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $QMAKE_CFLAGS_EGL $QMAKE_LIBS_EGL; then
4776 elif [ "$CFG_EGL" = "yes" ]; then
4777 echo " The EGL functionality test failed; EGL is required by some QPA plugins to manage contexts & surfaces."
4778 echo " You might need to modify the include and library search paths by editing"
4779 echo " QMAKE_INCDIR_EGL, QMAKE_LIBDIR_EGL and QMAKE_LIBS_EGL in ${XQMAKESPEC}."
4784 elif [ "$CFG_OPENGL" = "desktop" ]; then
4785 if [ "$CFG_EGL" = "yes" ]; then
4786 echo "EGL support was requested but Qt is being configured for desktop OpenGL."
4787 echo "Either disable EGL support or enable OpenGL ES support."
4793 if [ "$CFG_EGLFS" != "no" ]; then
4794 if [ "$CFG_OPENGL" = "es2" ] && [ "$CFG_EVDEV" = "yes" ]; then
4795 CFG_EGLFS="$CFG_EGL"
4801 # Determine the default QPA platform
4802 if [ -z "$QT_QPA_DEFAULT_PLATFORM" ]; then
4804 QT_QPA_DEFAULT_PLATFORM=`getXQMakeConf QT_QPA_DEFAULT_PLATFORM`
4805 if [ -z "$QT_QPA_DEFAULT_PLATFORM" ]; then
4806 if [ "$XPLATFORM_MINGW" = "yes" ]; then
4807 QT_QPA_DEFAULT_PLATFORM="windows"
4808 elif [ "$BUILD_ON_MAC" = "yes" ]; then
4809 QT_QPA_DEFAULT_PLATFORM="cocoa"
4810 elif [ "$UNAME_SYSTEM" = "QNX" ]; then
4811 QT_QPA_DEFAULT_PLATFORM="qnx"
4813 QT_QPA_DEFAULT_PLATFORM="xcb"
4818 if [ -n "$QMAKE_CFLAGS_XCB" ] || [ -n "$QMAKE_LIBS_XCB" ]; then
4819 QMakeVar set QMAKE_CFLAGS_XCB "$QMAKE_CFLAGS_XCB"
4820 QMakeVar set QMAKE_LIBS_XCB "$QMAKE_LIBS_XCB"
4821 QMakeVar set QMAKE_DEFINES_XCB "$QMAKE_DEFINES_XCB"
4823 if [ "$CFG_DIRECTFB" = "yes" ]; then
4824 QT_CONFIG="$QT_CONFIG directfb"
4825 QMakeVar set QMAKE_CFLAGS_DIRECTFB "$QMAKE_CFLAGS_DIRECTFB"
4826 QMakeVar set QMAKE_LIBS_DIRECTFB "$QMAKE_LIBS_DIRECTFB"
4828 if [ "$CFG_LINUXFB" = "yes" ]; then
4829 QT_CONFIG="$QT_CONFIG linuxfb"
4832 if [ "$BUILD_ON_MAC" = "yes" ]; then
4833 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/mac/coreservices "CoreServices" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4834 QT_CONFIG="$QT_CONFIG coreservices"
4836 QMakeVar add DEFINES QT_NO_CORESERVICES
4840 if [ "$BUILD_ON_MAC" = "no" ] && [ "$XPLATFORM_MINGW" = "no" ] && [ "$XPLATFORM_QNX" = "no" ]; then
4841 if [ "$CFG_XCB" = "no" ] && [ "$CFG_EGLFS" = "no" ] && [ "$CFG_DIRECTFB" = "no" ] && [ "$CFG_LINUXFB" = "no" ]; then
4842 if [ "$QPA_PLATFORM_GUARD" = "yes" ] &&
4843 ( [ "$ORIG_CFG_XCB" = "auto" ] || [ "$ORIG_CFG_EGLFS" = "auto" ] || [ "$ORIG_CFG_DIRECTFB" = "auto" ] || [ "$ORIG_CFG_LINUXFB" = "auto" ] ); then
4844 echo "No QPA platform plugin enabled!"
4845 echo " If you really want to build without a QPA platform plugin you must pass"
4846 echo " -no-qpa-platform-guard to configure. Doing this will"
4847 echo " produce a Qt that can not run GUI applications."
4848 echo " The dependencies needed for xcb to build are listed in"
4849 echo " src/plugins/platforms/xcb/README"
4855 [ "$XPLATFORM_MINGW" = "yes" ] && [ "$CFG_PHONON" != "no" ] && CFG_PHONON="yes"
4858 [ "$XPLATFORM_MINGW" = "yes" ] && [ "$CFG_LIBFREETYPE" = "auto" ] && CFG_LIBFREETYPE=no
4859 if [ "$CFG_LIBFREETYPE" = "auto" ]; then
4860 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/freetype "FreeType" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4861 CFG_LIBFREETYPE=system
4867 if ! "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/stl "STL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS &&
4868 [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4869 echo "STL functionality check failed! Cannot build Qt with this STL library."
4870 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4875 # detect POSIX clock_gettime()
4876 if [ "$CFG_CLOCK_GETTIME" = "auto" ]; then
4877 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/clock-gettime "POSIX clock_gettime()" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4878 CFG_CLOCK_GETTIME=yes
4880 CFG_CLOCK_GETTIME=no
4884 # detect POSIX monotonic clocks
4885 if [ "$CFG_CLOCK_GETTIME" = "yes" ] && [ "$CFG_CLOCK_MONOTONIC" = "auto" ]; then
4886 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/clock-monotonic "POSIX Monotonic Clock" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4887 CFG_CLOCK_MONOTONIC=yes
4889 CFG_CLOCK_MONOTONIC=no
4891 elif [ "$CFG_CLOCK_GETTIME" = "no" ]; then
4892 CFG_CLOCK_MONOTONIC=no
4896 if [ "$CFG_MREMAP" = "auto" ]; then
4897 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/mremap "mremap" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4904 # find if the platform provides getaddrinfo (ipv6 dns lookups)
4905 if [ "$CFG_GETADDRINFO" != "no" ]; then
4906 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/getaddrinfo "getaddrinfo" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4909 if [ "$CFG_GETADDRINFO" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4910 echo "getaddrinfo support cannot be enabled due to functionality tests!"
4911 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4912 echo " If you believe this message is in error you may use the continue"
4913 echo " switch (-continue) to $0 to continue."
4921 # find if the platform provides inotify
4922 if [ "$CFG_INOTIFY" != "no" ]; then
4923 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/inotify "inotify" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4926 if [ "$CFG_INOTIFY" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4927 echo "inotify support cannot be enabled due to functionality tests!"
4928 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4929 echo " If you believe this message is in error you may use the continue"
4930 echo " switch (-continue) to $0 to continue."
4938 # find if the platform provides if_nametoindex (ipv6 interface name support)
4939 if [ "$CFG_IPV6IFNAME" != "no" ]; then
4940 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/ipv6ifname "IPv6 interface name" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4943 if [ "$CFG_IPV6IFNAME" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4944 echo "IPv6 interface name support cannot be enabled due to functionality tests!"
4945 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4946 echo " If you believe this message is in error you may use the continue"
4947 echo " switch (-continue) to $0 to continue."
4955 # find if the platform provides getifaddrs (network interface enumeration)
4956 if [ "$CFG_GETIFADDRS" != "no" ]; then
4957 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/getifaddrs "getifaddrs" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4960 if [ "$CFG_GETIFADDRS" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4961 echo "getifaddrs support cannot be enabled due to functionality tests!"
4962 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4963 echo " If you believe this message is in error you may use the continue"
4964 echo " switch (-continue) to $0 to continue."
4973 if [ "$CFG_OPENSSL" != "no" ]; then
4974 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/openssl "OpenSSL" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
4975 if [ "$CFG_OPENSSL" = "auto" ]; then
4979 if ( [ "$CFG_OPENSSL" = "yes" ] || [ "$CFG_OPENSSL" = "linked" ] ) && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4980 echo "OpenSSL support cannot be enabled due to functionality tests!"
4981 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4982 echo " If you believe this message is in error you may use the continue"
4983 echo " switch (-continue) to $0 to continue."
4992 if [ "$CFG_PCRE" != "qt" ]; then
4993 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/pcre "PCRE" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
4996 if [ "$CFG_PCRE" = "system" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
4997 echo "PCRE support cannot be enabled due to functionality tests!"
4998 echo " Turn on verbose messaging (-v) to $0 to see the final report."
4999 echo " If you believe this message is in error you may use the continue"
5000 echo " switch (-continue) to $0 to continue."
5008 # detect OpenVG support
5009 if [ "$CFG_OPENVG" != "no" ]; then
5010 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/openvg" "OpenVG" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $CONFIG_ARG; then
5011 if [ "$CFG_OPENVG" = "auto" ]; then
5014 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG openvg_on_opengl" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/openvg" "OpenVG" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $CONFIG_ARG; then
5015 if [ "$CFG_OPENVG" = "auto" ]; then
5018 CFG_OPENVG_ON_OPENGL=yes
5019 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG lower_case_includes" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/openvg" "OpenVG (lc includes)" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $CONFIG_ARG; then
5020 if [ "$CFG_OPENVG" = "auto" ]; then
5023 CFG_OPENVG_LC_INCLUDES=yes
5024 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG openvg_on_opengl lower_case_includes" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/openvg" "OpenVG (lc includes)" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $CONFIG_ARG; then
5025 if [ "$CFG_OPENVG" = "auto" ]; then
5028 CFG_OPENVG_LC_INCLUDES=yes
5029 CFG_OPENVG_ON_OPENGL=yes
5031 if [ "$CFG_OPENVG" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5032 echo "$CFG_OPENVG was specified for OpenVG but cannot be enabled due to functionality tests!"
5033 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5034 echo " If you believe this message is in error you may use the continue"
5035 echo " switch (-continue) to $0 to continue."
5041 if [ "$CFG_OPENVG" = "yes" ] && "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/shivavg" "ShivaVG" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS $CONFIG_ARG; then
5042 CFG_OPENVG_SHIVA=yes
5046 if [ "$CFG_ALSA" = "auto" ]; then
5047 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/alsa "alsa" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS; then
5054 if [ "$CFG_JAVASCRIPTCORE_JIT" = "yes" ] || [ "$CFG_JAVASCRIPTCORE_JIT" = "auto" ]; then
5055 if [ "$CFG_ARCH" = "arm" ]; then
5056 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/javascriptcore-jit "javascriptcore-jit" $L_FLAGS $I_FLAGS $D_FLAGS $l_FLAGS
5057 if [ $? != "0" ]; then
5058 CFG_JAVASCRIPTCORE_JIT=no
5061 case "$XPLATFORM" in
5063 CFG_JAVASCRIPTCORE_JIT=no
5069 if [ "$CFG_JAVASCRIPTCORE_JIT" = "yes" ]; then
5070 QMakeVar set JAVASCRIPTCORE_JIT yes
5071 elif [ "$CFG_JAVASCRIPTCORE_JIT" = "no" ]; then
5072 QMakeVar set JAVASCRIPTCORE_JIT no
5075 if [ "$CFG_AUDIO_BACKEND" = "auto" ]; then
5076 CFG_AUDIO_BACKEND=yes
5079 if [ "$CFG_LARGEFILE" != "yes" ] && [ "$XPLATFORM_MINGW" = "yes" ]; then
5080 echo "Warning: largefile support cannot be disabled for win32."
5084 #-------------------------------------------------------------------------------
5085 # ask for all that hasn't been auto-detected or specified in the arguments
5086 #-------------------------------------------------------------------------------
5088 [ "$CFG_CXX11" = "yes" ] && QT_CONFIG="$QT_CONFIG c++11"
5091 if [ "$CFG_PHONON_BACKEND" = "yes" ]; then
5092 QT_CONFIG="$QT_CONFIG phonon-backend"
5095 # disable accessibility
5096 if [ "$CFG_ACCESSIBILITY" = "no" ]; then
5097 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ACCESSIBILITY"
5099 QT_CONFIG="$QT_CONFIG accessibility"
5103 if [ "$CFG_EGL" = "yes" ]; then
5104 QT_CONFIG="$QT_CONFIG egl"
5106 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_EGL"
5110 if [ "$CFG_EGLFS" = "yes" ]; then
5111 QT_CONFIG="$QT_CONFIG eglfs"
5113 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_EGLFS"
5117 if [ "$CFG_OPENVG" = "no" ]; then
5118 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENVG"
5120 QT_CONFIG="$QT_CONFIG openvg"
5121 if [ "$CFG_OPENVG_LC_INCLUDES" = "yes" ]; then
5122 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_LOWER_CASE_VG_INCLUDES"
5124 if [ "$CFG_OPENVG_ON_OPENGL" = "yes" ]; then
5125 QT_CONFIG="$QT_CONFIG openvg_on_opengl"
5127 if [ "$CFG_OPENVG_SHIVA" = "yes" ]; then
5128 QT_CONFIG="$QT_CONFIG shivavg"
5129 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_SHIVAVG"
5134 if [ "$CFG_OPENGL" = "no" ]; then
5135 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENGL"
5137 QT_CONFIG="$QT_CONFIG opengl"
5140 if [ "$CFG_OPENGL" = "es2" ]; then
5141 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES"
5144 if [ "$CFG_OPENGL" = "es2" ]; then
5145 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES_2"
5146 QT_CONFIG="$QT_CONFIG opengles2"
5149 # build up the variables for output
5150 if [ "$CFG_DEBUG" = "yes" ]; then
5151 QMAKE_OUTDIR="${QMAKE_OUTDIR}debug"
5152 elif [ "$CFG_DEBUG" = "no" ]; then
5153 QMAKE_OUTDIR="${QMAKE_OUTDIR}release"
5155 if [ "$CFG_SHARED" = "yes" ]; then
5156 QMAKE_OUTDIR="${QMAKE_OUTDIR}-shared"
5157 QT_CONFIG="$QT_CONFIG shared"
5158 elif [ "$CFG_SHARED" = "no" ]; then
5159 QMAKE_OUTDIR="${QMAKE_OUTDIR}-static"
5160 QT_CONFIG="$QT_CONFIG static"
5163 #FIXME: qpa is implicit this should all be removed
5164 QMAKE_CONFIG="$QMAKE_CONFIG qpa"
5165 QT_CONFIG="$QT_CONFIG qpa"
5166 QTCONFIG_CONFIG="$QTCONFIG_CONFIG qpa"
5167 rm -f "src/.moc/$QMAKE_OUTDIR/allmoc.cpp" # needs remaking if config changes
5169 if [ "$XPLATFORM_MINGW" != "yes" ]; then
5170 # Do not set this here for Windows. Let qmake do it so
5171 # debug and release precompiled headers are kept separate.
5172 QMakeVar set PRECOMPILED_DIR ".pch/$QMAKE_OUTDIR"
5174 QMakeVar set OBJECTS_DIR ".obj/$QMAKE_OUTDIR"
5175 QMakeVar set MOC_DIR ".moc/$QMAKE_OUTDIR"
5176 QMakeVar set RCC_DIR ".rcc/$QMAKE_OUTDIR"
5177 QMakeVar set UI_DIR ".uic/$QMAKE_OUTDIR"
5178 if [ "$CFG_LARGEFILE" = "yes" ] && [ "$XPLATFORM_MINGW" != "yes" ]; then
5179 QMAKE_CONFIG="$QMAKE_CONFIG largefile"
5181 if [ "$CFG_USE_GNUMAKE" = "yes" ]; then
5182 QMAKE_CONFIG="$QMAKE_CONFIG GNUmake"
5184 [ "$CFG_REDUCE_EXPORTS" = "yes" ] && QT_CONFIG="$QT_CONFIG reduce_exports"
5185 [ "$CFG_REDUCE_RELOCATIONS" = "yes" ] && QT_CONFIG="$QT_CONFIG reduce_relocations"
5186 [ "$CFG_PRECOMPILE" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG precompile_header"
5187 if [ "$CFG_SEPARATE_DEBUG_INFO" = "yes" ]; then
5188 QMakeVar add QMAKE_CFLAGS -g
5189 QMakeVar add QMAKE_CXXFLAGS -g
5190 QT_CONFIG="$QT_CONFIG separate_debug_info"
5192 if [ "$CFG_SEPARATE_DEBUG_INFO_NOCOPY" = "yes" ] ; then
5193 QT_CONFIG="$QT_CONFIG separate_debug_info_nocopy"
5195 [ "$CFG_SSE2" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse2"
5196 [ "$CFG_SSE3" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse3"
5197 [ "$CFG_SSSE3" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG ssse3"
5198 [ "$CFG_SSE4_1" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse4_1"
5199 [ "$CFG_SSE4_2" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse4_2"
5200 [ "$CFG_AVX" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG avx"
5201 [ "$CFG_AVX2" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG avx2"
5202 [ "$CFG_IWMMXT" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG iwmmxt"
5203 [ "$CFG_NEON" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG neon"
5204 if [ "$CFG_ARCH" = "mips" ]; then
5205 [ "$CFG_MIPS_DSP" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG mips_dsp"
5206 [ "$CFG_MIPS_DSPR2" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG mips_dspr2"
5208 if [ "$CFG_CLOCK_GETTIME" = "yes" ]; then
5209 QT_CONFIG="$QT_CONFIG clock-gettime"
5211 if [ "$CFG_CLOCK_MONOTONIC" = "yes" ]; then
5212 QT_CONFIG="$QT_CONFIG clock-monotonic"
5214 if [ "$CFG_MREMAP" = "yes" ]; then
5215 QT_CONFIG="$QT_CONFIG mremap"
5217 if [ "$CFG_GETADDRINFO" = "yes" ]; then
5218 QT_CONFIG="$QT_CONFIG getaddrinfo"
5220 if [ "$CFG_IPV6IFNAME" = "yes" ]; then
5221 QT_CONFIG="$QT_CONFIG ipv6ifname"
5223 if [ "$CFG_GETIFADDRS" = "yes" ]; then
5224 QT_CONFIG="$QT_CONFIG getifaddrs"
5226 if [ "$CFG_INOTIFY" = "yes" ]; then
5227 QT_CONFIG="$QT_CONFIG inotify"
5229 if [ "$CFG_LIBJPEG" = "no" ]; then
5231 elif [ "$CFG_LIBJPEG" = "system" ]; then
5232 QT_CONFIG="$QT_CONFIG system-jpeg"
5234 if [ "$CFG_JPEG" = "no" ]; then
5235 QT_CONFIG="$QT_CONFIG no-jpeg"
5236 elif [ "$CFG_JPEG" = "yes" ]; then
5237 QT_CONFIG="$QT_CONFIG jpeg"
5239 if [ "$CFG_LIBPNG" = "no" ]; then
5242 if [ "$CFG_LIBPNG" = "system" ]; then
5243 QT_CONFIG="$QT_CONFIG system-png"
5245 if [ "$CFG_PNG" = "no" ]; then
5246 QT_CONFIG="$QT_CONFIG no-png"
5247 elif [ "$CFG_PNG" = "yes" ]; then
5248 QT_CONFIG="$QT_CONFIG png"
5250 if [ "$CFG_GIF" = "no" ]; then
5251 QT_CONFIG="$QT_CONFIG no-gif"
5252 elif [ "$CFG_GIF" = "yes" ]; then
5253 QT_CONFIG="$QT_CONFIG gif"
5255 if [ "$CFG_LIBFREETYPE" = "no" ]; then
5256 QT_CONFIG="$QT_CONFIG no-freetype"
5257 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_FREETYPE"
5258 elif [ "$CFG_LIBFREETYPE" = "system" ]; then
5259 QT_CONFIG="$QT_CONFIG system-freetype"
5261 QT_CONFIG="$QT_CONFIG freetype"
5263 if [ "$CFG_GUI" = "auto" ]; then
5266 if [ "$CFG_GUI" = "no" ]; then
5267 QT_CONFIG="$QT_CONFIG no-gui"
5270 if [ "$CFG_WIDGETS" = "no" ]; then
5271 QT_CONFIG="$QT_CONFIG no-widgets"
5272 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_WIDGETS"
5275 if [ "x$BUILD_ON_MAC" = "xyes" ] && [ "$XPLATFORM_MINGW" != "yes" ]; then
5276 #On Mac we implicitly link against libz, so we
5277 #never use the 3rdparty stuff.
5278 [ "$CFG_ZLIB" = "yes" ] && CFG_ZLIB="system"
5280 if [ "$CFG_ZLIB" = "yes" ]; then
5281 QT_CONFIG="$QT_CONFIG zlib"
5282 elif [ "$CFG_ZLIB" = "system" ]; then
5283 QT_CONFIG="$QT_CONFIG system-zlib"
5286 [ "$CFG_NIS" = "yes" ] && QT_CONFIG="$QT_CONFIG nis"
5287 [ "$CFG_CUPS" = "yes" ] && QT_CONFIG="$QT_CONFIG cups"
5288 [ "$CFG_ICONV" = "yes" ] && QT_CONFIG="$QT_CONFIG iconv"
5289 [ "$CFG_ICONV" = "sun" ] && QT_CONFIG="$QT_CONFIG sun-libiconv"
5290 [ "$CFG_ICONV" = "gnu" ] && QT_CONFIG="$QT_CONFIG gnu-libiconv"
5291 [ "$CFG_GLIB" = "yes" ] && QT_CONFIG="$QT_CONFIG glib"
5292 [ "$CFG_GSTREAMER" = "yes" ] && QT_CONFIG="$QT_CONFIG gstreamer"
5293 [ "$CFG_DBUS" = "yes" ] && QT_CONFIG="$QT_CONFIG dbus"
5294 [ "$CFG_DBUS" = "linked" ] && QT_CONFIG="$QT_CONFIG dbus dbus-linked"
5295 [ "$CFG_OPENSSL" = "yes" ] && QT_CONFIG="$QT_CONFIG openssl"
5296 [ "$CFG_OPENSSL" = "linked" ] && QT_CONFIG="$QT_CONFIG openssl-linked"
5297 [ "$CFG_MAC_HARFBUZZ" = "yes" ] && QT_CONFIG="$QT_CONFIG harfbuzz"
5298 [ "$CFG_XCB" = "yes" ] && QT_CONFIG="$QT_CONFIG xcb"
5299 [ "$CFG_XINPUT2" = "yes" ] && QT_CONFIG="$QT_CONFIG xinput2"
5301 [ '!' -z "$DEFINES" ] && QMakeVar add DEFINES "$DEFINES"
5302 [ '!' -z "$L_FLAGS" ] && QMakeVar add QMAKE_LIBDIR_FLAGS "$L_FLAGS"
5303 [ '!' -z "$l_FLAGS" ] && QMakeVar add LIBS "$l_FLAGS"
5305 if [ "$PLATFORM_MAC" = "yes" ] && [ "$QT_CROSS_COMPILE" = "no" ]; then
5306 if [ "$CFG_RPATH" = "yes" ]; then
5307 QMAKE_CONFIG="$QMAKE_CONFIG absolute_library_soname"
5308 # set the default rpath to the library installation directory
5309 RPATH_FLAGS="\"$QT_INSTALL_LIBS\" $RPATH_FLAGS"
5311 elif [ -z "`getXQMakeConf 'QMAKE_(LFLAGS_)?RPATH'`" ]; then
5312 if [ -n "$RPATH_FLAGS" ]; then
5314 echo "ERROR: -R cannot be used on this platform as \$QMAKE_LFLAGS_RPATH is"
5318 elif [ "$CFG_RPATH" = "yes" ]; then
5319 RPATH_MESSAGE=" NOTE: This platform does not support runtime library paths, using -no-rpath."
5323 if [ "$CFG_RPATH" = "yes" ]; then
5324 # set the default rpath to the library installation directory
5325 RPATH_FLAGS="\"$QT_INSTALL_LIBS\" $RPATH_FLAGS"
5327 if [ -n "$RPATH_FLAGS" ]; then
5328 # add the user defined rpaths
5329 QMakeVar add QMAKE_RPATHDIR "$RPATH_FLAGS"
5333 if [ '!' -z "$I_FLAGS" ]; then
5334 # add the user define include paths
5335 QMakeVar add QMAKE_CFLAGS "$I_FLAGS"
5336 QMakeVar add QMAKE_CXXFLAGS "$I_FLAGS"
5339 if [ '!' -z "$W_FLAGS" ]; then
5340 # add the user defined warning flags
5341 QMakeVar add QMAKE_CFLAGS_WARN_ON "$W_FLAGS"
5342 QMakeVar add QMAKE_CXXFLAGS_WARN_ON "$W_FLAGS"
5343 QMakeVar add QMAKE_OBJECTIVE_CFLAGS_WARN_ON "$W_FLAGS"
5346 if [ "$XPLATFORM_MINGW" = "yes" ]; then
5347 # mkspecs/features/win32/default_pre.prf sets "no-rtti".
5348 # Follow default behavior of configure.exe by overriding with "rtti".
5349 QTCONFIG_CONFIG="$QTCONFIG_CONFIG rtti"
5352 if [ "$CFG_ALSA" = "yes" ]; then
5353 QT_CONFIG="$QT_CONFIG alsa"
5356 if [ "$CFG_PULSEAUDIO" = "yes" ]; then
5357 QT_CONFIG="$QT_CONFIG pulseaudio"
5360 if [ "$CFG_COREWLAN" = "yes" ]; then
5361 QT_CONFIG="$QT_CONFIG corewlan"
5364 if [ "$CFG_ICU" = "yes" ]; then
5365 QT_CONFIG="$QT_CONFIG icu"
5368 if [ "$CFG_FORCE_ASSERTS" = "yes" ]; then
5369 QT_CONFIG="$QT_CONFIG force_asserts"
5372 if [ "$CFG_PCRE" = "qt" ]; then
5373 QMAKE_CONFIG="$QMAKE_CONFIG pcre"
5377 # Some Qt modules are too advanced in C++ for some old compilers
5378 # Detect here the platforms where they are known to work.
5380 # See Qt documentation for more information on which features are
5381 # supported and on which compilers.
5383 canBuildQtConcurrent="yes"
5384 canUseV8Snapshot="yes"
5386 case "$XPLATFORM" in
5388 # PA-RISC's assembly is too limited
5389 # gcc 3.4 on that platform can't build QtXmlPatterns
5390 # the assembly it generates cannot be compiled
5392 # Check gcc's version
5393 case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
5397 canBuildQtXmlPatterns="no"
5401 canBuildQtXmlPatterns="no"
5405 unsupported/vxworks-*-g++*)
5408 unsupported/vxworks-*-dcc*)
5410 canBuildQtXmlPatterns="no"
5413 # Check gcc's version
5414 case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
5422 canBuildQtXmlPatterns="no"
5427 # Check the compiler version
5428 case `${QMAKE_CONF_COMPILER} -V 2>&1 | awk '{print $4}'` in
5431 canBuildQtXmlPatterns="no"
5432 canBuildQtConcurrent="no"
5436 canBuildQtConcurrent="no"
5442 canBuildQtXmlPatterns="no"
5443 canBuildQtConcurrent="no"
5449 # Get the xlC version
5450 cat > xlcver.c <<EOF
5454 printf("%d.%d\n", __xlC__ >> 8, __xlC__ & 0xFF);
5459 if ${QMAKE_CONF_COMPILER} -o xlcver xlcver.c >/dev/null 2>/dev/null; then
5460 xlcver=`./xlcver 2>/dev/null`
5463 if [ "$OPT_VERBOSE" = "yes" ]; then
5464 if [ -n "$xlcver" ]; then
5465 echo Found IBM xlC version: $xlcver.
5467 echo Could not determine IBM xlC version, assuming oldest supported.
5474 canBuildQtXmlPatterns="no"
5475 canBuildQtConcurrent="no"
5479 canBuildQtConcurrent="no"
5485 canBuildQtConcurrent="no"
5489 if [ "$CFG_GUI" = "no" ]; then
5490 # WebKit requires QtGui
5494 if [ "$CFG_SHARED" = "no" ]; then
5496 echo "WARNING: Using static linking will disable the WebKit module."
5501 CFG_CONCURRENT="yes"
5502 if [ "$canBuildQtConcurrent" = "no" ]; then
5503 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_CONCURRENT"
5506 QT_CONFIG="$QT_CONFIG concurrent"
5510 if [ "$CFG_AUDIO_BACKEND" = "yes" ]; then
5511 QT_CONFIG="$QT_CONFIG audio-backend"
5515 if [ "$CFG_WEBKIT" = "debug" ]; then
5516 QMAKE_CONFIG="$QMAKE_CONFIG webkit-debug"
5520 QT_CONFIG="$QT_CONFIG v8"
5521 # Detect snapshot support
5522 if [ "$CFG_ARCH" != "$CFG_HOST_ARCH" ]; then
5523 case "$CFG_HOST_ARCH,$CFG_ARCH" in
5526 *) canUseV8Snapshot="no"
5530 if [ -n "$_SBOX_DIR" -a "$CFG_ARCH" = "arm" ]; then
5531 # QEMU crashes when building inside Scratchbox with an ARM target
5532 canUseV8Snapshot="no"
5535 if [ "$CFG_V8SNAPSHOT" = "auto" ]; then
5536 CFG_V8SNAPSHOT="$canUseV8Snapshot"
5538 if [ "$CFG_V8SNAPSHOT" = "yes" -a "$canUseV8Snapshot" = "no" ]; then
5539 echo "Error: V8 snapshot was requested, but is not supported on this platform."
5542 if [ "$CFG_V8SNAPSHOT" = "yes" ]; then
5543 QT_CONFIG="$QT_CONFIG v8snapshot"
5547 if [ "$CFG_QML_DEBUG" = "no" ]; then
5548 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_QML_NO_DEBUGGER"
5551 case "$QMAKE_CONF_COMPILER" in
5554 COMPILER_VERSION=`${QMAKE_CONF_COMPILER} -dumpversion 2>/dev/null`
5556 case "$COMPILER_VERSION" in
5558 QT_GCC_MAJOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\1,'`
5559 QT_GCC_MINOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\2,'`
5560 QT_GCC_PATCH_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\3,'`
5563 QT_GCC_MAJOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\).*,\1,'`
5564 QT_GCC_MINOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\).*,\2,'`
5565 QT_GCC_PATCH_VERSION=0
5575 #-------------------------------------------------------------------------------
5576 # part of configuration information goes into qconfig.h
5577 #-------------------------------------------------------------------------------
5579 case "$CFG_QCONFIG" in
5581 echo "/* Everything */" >"$outpath/src/corelib/global/qconfig.h.new"
5584 tmpconfig="$outpath/src/corelib/global/qconfig.h.new"
5585 echo "#ifndef QT_BOOTSTRAPPED" >"$tmpconfig"
5586 if [ -f "$relpath/src/corelib/global/qconfig-$CFG_QCONFIG.h" ]; then
5587 cat "$relpath/src/corelib/global/qconfig-$CFG_QCONFIG.h" >>"$tmpconfig"
5588 elif [ -f `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"` ]; then
5589 cat `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"` >>"$tmpconfig"
5591 echo "#endif" >>"$tmpconfig"
5595 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
5599 # define QT_EDITION $QT_EDITION
5603 echo '/* Compile time features */' >>"$outpath/src/corelib/global/qconfig.h.new"
5604 [ '!' -z "$LicenseKeyExt" ] && echo "#define QT_PRODUCT_LICENSEKEY \"$LicenseKeyExt\"" >>"$outpath/src/corelib/global/qconfig.h.new"
5606 if [ "$CFG_SHARED" = "no" ]; then
5607 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
5608 /* Qt was configured for a static build */
5609 #if !defined(QT_SHARED) && !defined(QT_STATIC)
5616 if [ "$CFG_LARGEFILE" = "yes" ] && [ "$XPLATFORM_MINGW" != "yes" ]; then
5617 echo "#define QT_LARGEFILE_SUPPORT 64" >>"$outpath/src/corelib/global/qconfig.h.new"
5620 if [ "$CFG_FRAMEWORK" = "yes" ]; then
5621 echo "#define QT_MAC_FRAMEWORK_BUILD" >>"$outpath/src/corelib/global/qconfig.h.new"
5624 if [ "$BUILD_ON_MAC" = "yes" ]; then
5625 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
5626 #if defined(__LP64__)
5627 # define QT_POINTER_SIZE 8
5629 # define QT_POINTER_SIZE 4
5633 "$unixtests/ptrsize.test" "$XQMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath"
5634 echo "#define QT_POINTER_SIZE $?" >>"$outpath/src/corelib/global/qconfig.h.new"
5637 #REDUCE_RELOCATIONS is a elf/unix only thing, so not in windows configure.exe
5638 if [ "$CFG_REDUCE_RELOCATIONS" = "yes" ]; then
5639 echo "#define QT_REDUCE_RELOCATIONS" >>"$outpath/src/corelib/global/qconfig.h.new"
5643 echo "" >>"$outpath/src/corelib/global/qconfig.h.new"
5645 if [ "$CFG_DEV" = "yes" ]; then
5646 echo "#define QT_BUILD_INTERNAL" >>"$outpath/src/corelib/global/qconfig.h.new"
5649 # Add QPA to config.h
5650 QCONFIG_FLAGS="$QCONFIG_FLAGS Q_WS_QPA QT_NO_QWS_QPF QT_NO_QWS_QPF2"
5652 if [ "${CFG_USE_FLOATMATH}" = "yes" ]; then
5653 QCONFIG_FLAGS="${QCONFIG_FLAGS} QT_USE_MATH_H_FLOATS"
5656 # Add turned on SQL drivers
5657 for DRIVER in $CFG_SQL_AVAILABLE; do
5658 eval "VAL=\$CFG_SQL_$DRIVER"
5661 ONDRIVER=`echo $DRIVER | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
5662 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_SQL_$ONDRIVER"
5663 SQL_DRIVERS="$SQL_DRIVERS $DRIVER"
5666 SQL_PLUGINS="$SQL_PLUGINS $DRIVER"
5672 QMakeVar set sql-drivers "$SQL_DRIVERS"
5673 QMakeVar set sql-plugins "$SQL_PLUGINS"
5675 # Add other configuration options to the qconfig.h file
5676 [ "$CFG_GIF" = "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_BUILTIN_GIF_READER=1"
5677 [ "$CFG_PNG" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_PNG"
5678 [ "$CFG_JPEG" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_JPEG"
5679 [ "$CFG_ZLIB" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ZLIB"
5680 [ "$CFG_DBUS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_DBUS"
5682 # X11/Unix/Mac only configs
5683 [ "$CFG_CUPS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_CUPS"
5684 [ "$CFG_ICONV" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ICONV"
5685 [ "$CFG_GLIB" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GLIB"
5686 [ "$CFG_GSTREAMER" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GSTREAMER"
5687 [ "$CFG_QGTKSTYLE" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_STYLE_GTK"
5688 [ "$CFG_CLOCK_MONOTONIC" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_CLOCK_MONOTONIC"
5689 [ "$CFG_MREMAP" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_MREMAP"
5690 [ "$CFG_GETADDRINFO" = "no" ]&& QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GETADDRINFO"
5691 [ "$CFG_IPV6IFNAME" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IPV6IFNAME"
5692 [ "$CFG_GETIFADDRS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GETIFADDRS"
5693 [ "$CFG_INOTIFY" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_INOTIFY"
5694 [ "$CFG_NIS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_NIS"
5695 [ "$CFG_OPENSSL" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENSSL QT_NO_SSL"
5696 [ "$CFG_OPENSSL" = "linked" ]&& QCONFIG_FLAGS="$QCONFIG_FLAGS QT_LINKED_OPENSSL"
5698 [ "$CFG_SM" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SESSIONMANAGER"
5699 [ "$CFG_XCURSOR" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XCURSOR"
5700 [ "$CFG_XFIXES" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XFIXES"
5701 [ "$CFG_FONTCONFIG" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_FONTCONFIG"
5702 [ "$CFG_XINERAMA" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XINERAMA"
5703 [ "$CFG_XKB" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XKB"
5704 [ "$CFG_XRANDR" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XRANDR"
5705 [ "$CFG_XRENDER" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XRENDER"
5706 [ "$CFG_MITSHM" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_MITSHM"
5707 [ "$CFG_XSHAPE" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SHAPE"
5708 [ "$CFG_XVIDEO" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XVIDEO"
5709 [ "$CFG_XSYNC" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XSYNC"
5710 [ "$CFG_XINPUT" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XINPUT QT_NO_TABLET"
5712 [ "$CFG_XCURSOR" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XCURSOR"
5713 [ "$CFG_XINERAMA" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XINERAMA"
5714 [ "$CFG_XFIXES" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XFIXES"
5715 [ "$CFG_XRANDR" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XRANDR"
5716 [ "$CFG_XINPUT" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XINPUT"
5717 [ "$CFG_ALSA" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ALSA"
5718 [ "$CFG_PULSEAUDIO" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_PULSEAUDIO"
5719 [ "$CFG_COREWLAN" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_COREWLAN"
5721 # sort QCONFIG_FLAGS for neatness if we can
5722 [ '!' -z "$AWK" ] && QCONFIG_FLAGS=`echo $QCONFIG_FLAGS | $AWK '{ gsub(" ", "\n"); print }' | sort | uniq`
5723 QCONFIG_FLAGS=`echo $QCONFIG_FLAGS`
5725 if [ -n "$QCONFIG_FLAGS" ]; then
5726 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
5727 #ifndef QT_BOOTSTRAPPED
5730 for cfg in $QCONFIG_FLAGS; do
5731 cfgd=`echo $cfg | sed 's/=.*$//'` # trim pushed 'Foo=Bar' defines
5732 cfg=`echo $cfg | sed 's/=/ /'` # turn first '=' into a space
5733 # figure out define logic, so we can output the correct
5734 # ifdefs to override the global defines in a project
5736 if [ true ] && echo "$cfgd" | grep 'QT_NO_' >/dev/null 2>&1; then
5737 # QT_NO_option can be forcefully turned on by QT_option
5738 cfgdNeg=`echo $cfgd | sed "s,QT_NO_,QT_,"`
5739 elif [ true ] && echo "$cfgd" | grep 'QT_' >/dev/null 2>&1; then
5740 # QT_option can be forcefully turned off by QT_NO_option
5741 cfgdNeg=`echo $cfgd | sed "s,QT_,QT_NO_,"`
5744 if [ -z $cfgdNeg ]; then
5745 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
5752 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
5753 #if defined($cfgd) && defined($cfgdNeg)
5755 #elif !defined($cfgd) && !defined($cfgdNeg)
5762 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
5763 #endif // QT_BOOTSTRAPPED
5768 if [ "$CFG_REDUCE_EXPORTS" = "yes" ]; then
5769 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
5770 #define QT_VISIBILITY_AVAILABLE
5775 if [ -n "$QT_LIBINFIX" ]; then
5776 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
5777 #define QT_LIBINFIX "$QT_LIBINFIX"
5782 echo "#define QT_QPA_DEFAULT_PLATFORM_NAME \"$QT_QPA_DEFAULT_PLATFORM\"" >>"$outpath/src/corelib/global/qconfig.h.new"
5784 # avoid unecessary rebuilds by copying only if qconfig.h has changed
5785 if cmp -s "$outpath/src/corelib/global/qconfig.h" "$outpath/src/corelib/global/qconfig.h.new"; then
5786 rm -f "$outpath/src/corelib/global/qconfig.h.new"
5788 [ -f "$outpath/src/corelib/global/qconfig.h" ] && chmod +w "$outpath/src/corelib/global/qconfig.h"
5789 mv "$outpath/src/corelib/global/qconfig.h.new" "$outpath/src/corelib/global/qconfig.h"
5790 chmod -w "$outpath/src/corelib/global/qconfig.h"
5791 if [ ! -f "$outpath/include/QtCore/qconfig.h" ]; then
5792 ln -s "$outpath/src/corelib/global/qconfig.h" "$outpath/include/QtCore/qconfig.h"
5796 #-------------------------------------------------------------------------------
5797 # save configuration into qconfig.pri
5798 #-------------------------------------------------------------------------------
5799 QTCONFIG="$outpath/mkspecs/qconfig.pri"
5800 QTCONFIG_CONFIG="$QTCONFIG_CONFIG no_mocdepend"
5801 [ -f "$QTCONFIG.tmp" ] && rm -f "$QTCONFIG.tmp"
5802 if [ "$CFG_DEBUG" = "yes" ]; then
5803 QTCONFIG_CONFIG="$QTCONFIG_CONFIG debug"
5804 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
5805 QT_CONFIG="$QT_CONFIG release"
5807 QT_CONFIG="$QT_CONFIG debug"
5808 elif [ "$CFG_DEBUG" = "no" ]; then
5809 QTCONFIG_CONFIG="$QTCONFIG_CONFIG release"
5810 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
5811 QT_CONFIG="$QT_CONFIG debug"
5813 QT_CONFIG="$QT_CONFIG release"
5815 if [ "$CFG_FRAMEWORK" = "no" ]; then
5816 QTCONFIG_CONFIG="$QTCONFIG_CONFIG qt_no_framework"
5818 QT_CONFIG="$QT_CONFIG qt_framework"
5819 QTCONFIG_CONFIG="$QTCONFIG_CONFIG qt_framework"
5821 if [ "$CFG_DEV" = "yes" ]; then
5822 QT_CONFIG="$QT_CONFIG private_tests"
5825 cat >>"$QTCONFIG.tmp" <<EOF
5827 CONFIG += $QTCONFIG_CONFIG
5829 QT_HOST_ARCH = $CFG_HOST_ARCH
5830 QT_CPU_FEATURES = $CFG_CPUFEATURES
5831 QT_HOST_CPU_FEATURES = $CFG_HOST_CPUFEATURES
5832 QT_EDITION = $Edition
5833 QT_CONFIG += $QT_CONFIG
5836 QT_VERSION = $QT_VERSION
5837 QT_MAJOR_VERSION = $QT_MAJOR_VERSION
5838 QT_MINOR_VERSION = $QT_MINOR_VERSION
5839 QT_PATCH_VERSION = $QT_PATCH_VERSION
5842 QT_LIBINFIX = $QT_LIBINFIX
5843 QT_NAMESPACE = $QT_NAMESPACE
5847 if [ -n "$PKG_CONFIG_SYSROOT_DIR" ] || [ -n "$PKG_CONFIG_LIBDIR" ]; then
5848 echo "# pkgconfig" >> "$QTCONFIG.tmp"
5849 echo "PKG_CONFIG_SYSROOT_DIR = $PKG_CONFIG_SYSROOT_DIR" >> "$QTCONFIG.tmp"
5850 echo "PKG_CONFIG_LIBDIR = $PKG_CONFIG_LIBDIR" >> "$QTCONFIG.tmp"
5851 echo >> "$QTCONFIG.tmp"
5854 if [ -n "$CFG_SYSROOT" ]; then
5855 echo "# sysroot" >>"$QTCONFIG.tmp"
5856 echo "!host_build {" >>"$QTCONFIG.tmp"
5857 echo " QMAKE_CFLAGS += --sysroot=\$\$[QT_SYSROOT]" >>"$QTCONFIG.tmp"
5858 echo " QMAKE_CXXFLAGS += --sysroot=\$\$[QT_SYSROOT]" >>"$QTCONFIG.tmp"
5859 echo " QMAKE_LFLAGS += --sysroot=\$\$[QT_SYSROOT]" >>"$QTCONFIG.tmp"
5860 echo "}" >> "$QTCONFIG.tmp"
5861 echo >> "$QTCONFIG.tmp"
5863 if [ -n "$RPATH_FLAGS" ]; then
5864 echo "QMAKE_RPATHDIR += $RPATH_FLAGS" >> "$QTCONFIG.tmp"
5866 if [ -n "$QT_GCC_MAJOR_VERSION" ]; then
5867 echo "QT_GCC_MAJOR_VERSION = $QT_GCC_MAJOR_VERSION" >> "$QTCONFIG.tmp"
5868 echo "QT_GCC_MINOR_VERSION = $QT_GCC_MINOR_VERSION" >> "$QTCONFIG.tmp"
5869 echo "QT_GCC_PATCH_VERSION = $QT_GCC_PATCH_VERSION" >> "$QTCONFIG.tmp"
5872 if [ -n "$QMAKE_INCDIR_OPENGL_ES2" ]; then
5873 echo "#Qt opengl include path" >> "$QTCONFIG.tmp"
5874 echo "QMAKE_INCDIR_OPENGL_ES2 = `shellArgumentListToQMakeList "$QMAKE_INCDIR_OPENGL_ES2"`" >> "$QTCONFIG.tmp"
5877 # replace qconfig.pri if it differs from the newly created temp file
5878 if cmp -s "$QTCONFIG.tmp" "$QTCONFIG"; then
5879 rm -f "$QTCONFIG.tmp"
5881 mv -f "$QTCONFIG.tmp" "$QTCONFIG"
5884 #-------------------------------------------------------------------------------
5885 # save configuration into qmodule.pri
5886 #-------------------------------------------------------------------------------
5887 QTMODULE="$outpath/mkspecs/qmodule.pri"
5889 echo "CONFIG += $QMAKE_CONFIG create_prl link_prl" >> "$QTMODULE.tmp"
5890 echo "QT_BUILD_PARTS += $CFG_BUILD_PARTS" >> "$QTMODULE.tmp"
5892 # Ensure we can link to uninistalled libraries
5893 if [ "$BUILD_ON_MAC" != "yes" ] && [ "$XPLATFORM_MINGW" != "yes" ] && linkerSupportsFlag -rpath-link "$outpath/lib"; then
5894 echo "QMAKE_LFLAGS = -Wl,-rpath-link,\$\$QT_BUILD_TREE/lib \$\$QMAKE_LFLAGS" >> "$QTMODULE.tmp"
5896 if [ -n "$QT_CFLAGS_PSQL" ]; then
5897 echo "QT_CFLAGS_PSQL = $QT_CFLAGS_PSQL" >> "$QTMODULE.tmp"
5899 if [ -n "$QT_LFLAGS_PSQL" ]; then
5900 echo "QT_LFLAGS_PSQL = $QT_LFLAGS_PSQL" >> "$QTMODULE.tmp"
5902 if [ -n "$QT_CFLAGS_MYSQL" ]; then
5903 echo "QT_CFLAGS_MYSQL = $QT_CFLAGS_MYSQL" >> "$QTMODULE.tmp"
5905 if [ -n "$QT_LFLAGS_MYSQL" ]; then
5906 echo "QT_LFLAGS_MYSQL = $QT_LFLAGS_MYSQL" >> "$QTMODULE.tmp"
5908 if [ -n "$QT_CFLAGS_SQLITE" ]; then
5909 echo "QT_CFLAGS_SQLITE = $QT_CFLAGS_SQLITE" >> "$QTMODULE.tmp"
5911 if [ -n "$QT_LFLAGS_SQLITE" ]; then
5912 echo "QT_LFLAGS_SQLITE = $QT_LFLAGS_SQLITE" >> "$QTMODULE.tmp"
5914 if [ -n "$QT_LFLAGS_ODBC" ]; then
5915 echo "QT_LFLAGS_ODBC = $QT_LFLAGS_ODBC" >> "$QTMODULE.tmp"
5917 if [ -n "$QT_LFLAGS_TDS" ]; then
5918 echo "QT_LFLAGS_TDS = $QT_LFLAGS_TDS" >> "$QTMODULE.tmp"
5921 if [ "$QT_EDITION" != "QT_EDITION_OPENSOURCE" ]; then
5922 echo "DEFINES *= QT_EDITION=QT_EDITION_DESKTOP" >> "$QTMODULE.tmp"
5925 #dump in the OPENSSL_LIBS info
5926 if [ '!' -z "$OPENSSL_LIBS" ]; then
5927 echo "OPENSSL_LIBS = $OPENSSL_LIBS" >> "$QTMODULE.tmp"
5928 elif [ "$CFG_OPENSSL" = "linked" ]; then
5929 echo "OPENSSL_LIBS = -lssl -lcrypto" >> "$QTMODULE.tmp"
5932 #dump in the SDK info
5933 if [ '!' -z "$CFG_SDK" ]; then
5934 echo "QMAKE_MAC_SDK = $CFG_SDK" >> "$QTMODULE.tmp"
5938 cat "$QMAKE_VARS_FILE" >> "$QTMODULE.tmp"
5939 rm -f "$QMAKE_VARS_FILE" 2>/dev/null
5941 # replace qmodule.pri if it differs from the newly created temp file
5942 if cmp -s "$QTMODULE.tmp" "$QTMODULE"; then
5943 rm -f "$QTMODULE.tmp"
5945 mv -f "$QTMODULE.tmp" "$QTMODULE"
5948 #-------------------------------------------------------------------------------
5949 # save configuration into .qmake.cache
5950 #-------------------------------------------------------------------------------
5952 CACHEFILE="$outpath/.qmake.cache"
5953 [ -f "$CACHEFILE.tmp" ] && rm -f "$CACHEFILE.tmp"
5954 cat >>"$CACHEFILE.tmp" <<EOF
5956 QT_SOURCE_TREE = \$\$quote($relpath)
5957 QT_BUILD_TREE = \$\$quote($outpath)
5959 include(\$\$PWD/mkspecs/qmodule.pri)
5960 CONFIG += dylib depend_includepath fix_output_dirs no_private_qt_headers_warning QTDIR_build
5964 # replace .qmake.cache if it differs from the newly created temp file
5965 if cmp -s "$CACHEFILE.tmp" "$CACHEFILE"; then
5966 rm -f "$CACHEFILE.tmp"
5968 mv -f "$CACHEFILE.tmp" "$CACHEFILE"
5971 #-------------------------------------------------------------------------------
5972 # give feedback on configuration
5973 #-------------------------------------------------------------------------------
5974 exec 3>&1 1>$outpath/config.summary # redirect output temporarily to config.summary
5977 if [ "$XPLATFORM" = "$PLATFORM" ]; then
5978 echo "Build type: $PLATFORM"
5980 echo "Building on: $PLATFORM"
5981 echo "Building for: $XPLATFORM"
5984 # the missing space before $CFG_FEATURES is intentional
5985 echo "Architecture: $CFG_ARCH, features:$CFG_CPUFEATURES"
5986 echo "Host architecture: $CFG_HOST_ARCH, features:$CFG_HOST_CPUFEATURES"
5988 if [ -n "$PLATFORM_NOTES" ]; then
5989 echo "Platform notes:"
5990 echo "$PLATFORM_NOTES"
5995 if [ "$OPT_VERBOSE" = "yes" ]; then
5996 echo $ECHO_N "qmake vars .......... $ECHO_C"
5997 cat "$QMAKE_VARS_FILE" | tr '\n' ' '
5998 echo "qmake switches ......... $QMAKE_SWITCHES"
6001 echo "Build .................. $CFG_BUILD_PARTS"
6002 echo "Configuration .......... $QMAKE_CONFIG $QT_CONFIG"
6003 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
6004 echo "Debug .................. yes (combined)"
6005 if [ "$CFG_DEBUG" = "yes" ]; then
6006 echo "Default Link ........... debug"
6008 echo "Default Link ........... release"
6011 echo "Debug .................. $CFG_DEBUG"
6013 echo "C++11 support .......... $CFG_CXX11"
6014 if [ -n "$PKG_CONFIG" ]; then
6015 echo "pkg-config ............. yes"
6017 echo "pkg-config ............. no"
6019 [ "$CFG_DBUS" = "no" ] && echo "QtDBus module .......... no"
6020 [ "$CFG_DBUS" = "yes" ] && echo "QtDBus module .......... yes (run-time)"
6021 [ "$CFG_DBUS" = "linked" ] && echo "QtDBus module .......... yes (linked)"
6022 echo "QtConcurrent code ...... $CFG_CONCURRENT"
6023 echo "QtGui module ........... $CFG_GUI"
6024 echo "QtWidgets module ....... $CFG_WIDGETS"
6025 if [ "$CFG_JAVASCRIPTCORE_JIT" = "auto" ]; then
6026 echo "JavaScriptCore JIT ..... To be decided by JavaScriptCore"
6028 echo "JavaScriptCore JIT ..... $CFG_JAVASCRIPTCORE_JIT"
6030 echo "QML debugging .......... $CFG_QML_DEBUG"
6031 echo "PCH support ............ $CFG_PRECOMPILE"
6032 if [ "$CFG_ARCH" = "i386" -o "$CFG_ARCH" = "x86_64" ]; then
6033 echo "SSE2/SSE3/SSSE3......... ${CFG_SSE2}/${CFG_SSE3}/${CFG_SSSE3}"
6034 echo "SSE4.1/SSE4.2........... ${CFG_SSSE3}/${CFG_SSE4_1}/${CFG_SSE4_2}"
6035 echo "AVX/AVX2................ ${CFG_AVX}/${CFG_AVX2}"
6036 elif [ "$CFG_ARCH" = "arm" ]; then
6037 echo "iWMMXt support ......... ${CFG_IWMMXT}"
6038 echo "NEON support ........... ${CFG_NEON}"
6040 if [ "$CFG_ARCH" = "mips" ]; then
6041 echo "MIPS_DSP/MIPS_DSPR2..... ${CFG_MIPS_DSP}/${CFG_MIPS_DSPR2}"
6043 echo "IPv6 ifname support .... $CFG_IPV6IFNAME"
6044 echo "getaddrinfo support .... $CFG_GETADDRINFO"
6045 echo "getifaddrs support ..... $CFG_GETIFADDRS"
6046 echo "Accessibility .......... $CFG_ACCESSIBILITY"
6047 echo "NIS support ............ $CFG_NIS"
6048 echo "CUPS support ........... $CFG_CUPS"
6049 echo "Iconv support .......... $CFG_ICONV"
6050 echo "Glib support ........... $CFG_GLIB"
6051 echo "GStreamer support ...... $CFG_GSTREAMER"
6052 echo "PulseAudio support ..... $CFG_PULSEAUDIO"
6053 echo "Large File support ..... $CFG_LARGEFILE"
6054 echo "GIF support ............ $CFG_GIF"
6055 if [ "$CFG_JPEG" = "no" ]; then
6056 echo "JPEG support ........... $CFG_JPEG"
6058 echo "JPEG support ........... $CFG_JPEG ($CFG_LIBJPEG)"
6060 if [ "$CFG_PNG" = "no" ]; then
6061 echo "PNG support ............ $CFG_PNG"
6063 echo "PNG support ............ $CFG_PNG ($CFG_LIBPNG)"
6065 echo "zlib support ........... $CFG_ZLIB"
6066 echo "Session management ..... $CFG_SM"
6067 echo "libudev support ........ $CFG_LIBUDEV"
6069 if [ "$CFG_OPENGL" = "desktop" ]; then
6070 echo "OpenGL support ......... yes (Desktop OpenGL)"
6071 elif [ "$CFG_OPENGL" = "es2" ]; then
6072 echo "OpenGL support ......... yes (OpenGL ES 2.x)"
6074 echo "OpenGL support ......... no"
6077 if [ "$CFG_OPENVG" ]; then
6078 if [ "$CFG_OPENVG_SHIVA" = "yes" ]; then
6079 echo "OpenVG support ......... ShivaVG"
6081 echo "OpenVG support ......... $CFG_OPENVG"
6085 echo "XShape support ......... $CFG_XSHAPE"
6086 echo "XVideo support ......... $CFG_XVIDEO"
6087 echo "XSync support .......... $CFG_XSYNC"
6088 echo "Xinerama support ....... $CFG_XINERAMA"
6089 echo "Xcursor support ........ $CFG_XCURSOR"
6090 echo "Xfixes support ......... $CFG_XFIXES"
6091 echo "Xrandr support ......... $CFG_XRANDR"
6092 echo "Xi support ............. $CFG_XINPUT"
6093 echo "Xi2 support ............ $CFG_XINPUT2"
6094 echo "MIT-SHM support ........ $CFG_MITSHM"
6095 echo "FontConfig support ..... $CFG_FONTCONFIG"
6096 echo "XKB Support ............ $CFG_XKB"
6097 echo "immodule support ....... $CFG_IM"
6098 echo "GTK theme support ...... $CFG_QGTKSTYLE"
6100 [ "$CFG_SQL_mysql" != "no" ] && echo "MySQL support .......... $CFG_SQL_mysql"
6101 [ "$CFG_SQL_psql" != "no" ] && echo "PostgreSQL support ..... $CFG_SQL_psql"
6102 [ "$CFG_SQL_odbc" != "no" ] && echo "ODBC support ........... $CFG_SQL_odbc"
6103 [ "$CFG_SQL_oci" != "no" ] && echo "OCI support ............ $CFG_SQL_oci"
6104 [ "$CFG_SQL_tds" != "no" ] && echo "TDS support ............ $CFG_SQL_tds"
6105 [ "$CFG_SQL_db2" != "no" ] && echo "DB2 support ............ $CFG_SQL_db2"
6106 [ "$CFG_SQL_ibase" != "no" ] && echo "InterBase support ...... $CFG_SQL_ibase"
6107 [ "$CFG_SQL_sqlite2" != "no" ] && echo "SQLite 2 support ....... $CFG_SQL_sqlite2"
6108 [ "$CFG_SQL_sqlite" != "no" ] && echo "SQLite support ......... $CFG_SQL_sqlite ($CFG_SQLITE)"
6111 if [ "$CFG_OPENSSL" = "yes" ]; then
6112 OPENSSL_LINKAGE="(run-time)"
6113 elif [ "$CFG_OPENSSL" = "linked" ]; then
6114 OPENSSL_LINKAGE="(linked)"
6116 echo "OpenSSL support ........ $CFG_OPENSSL $OPENSSL_LINKAGE"
6117 echo "Alsa support ........... $CFG_ALSA"
6118 if [ "$BUILD_ON_MAC" = "yes" ]; then
6119 echo "CoreWlan support ....... $CFG_COREWLAN"
6121 echo "libICU support ......... $CFG_ICU"
6122 echo "PCRE support ........... $CFG_PCRE"
6123 if [ "$CFG_XCB_LIMITED" = "yes" ] && [ "$CFG_XCB" = "yes" ]; then
6124 echo "Xcb support ............ limited (old version)"
6126 echo "Xcb support ............ $CFG_XCB"
6128 echo "Xrender support ........ $CFG_XRENDER"
6129 if [ "$XPLATFORM_MAEMO" = "yes" ] && [ "$CFG_XCB" = "yes" ]; then
6130 echo "XInput2 support ........ $CFG_XINPUT2"
6132 echo "EGLFS support .......... $CFG_EGLFS"
6133 echo "DirectFB support ....... $CFG_DIRECTFB"
6134 echo "LinuxFB support ........ $CFG_LINUXFB"
6137 # complain about not being able to use dynamic plugins if we are using a static build
6138 if [ "$CFG_SHARED" = "no" ]; then
6140 echo "WARNING: Using static linking will disable the use of dynamically"
6141 echo "loaded plugins. Make sure to import all needed static plugins,"
6142 echo "or compile needed modules into the library."
6145 if [ "$CFG_OPENSSL" = "linked" ] && [ "$OPENSSL_LIBS" = "" ]; then
6147 echo "NOTE: When linking against OpenSSL, you can override the default"
6148 echo "library names through OPENSSL_LIBS."
6150 echo " OPENSSL_LIBS='-L/opt/ssl/lib -lssl -lcrypto' ./configure -openssl-linked"
6154 exec 1>&3 3>&- # restore stdout
6155 cat $outpath/config.summary # display config feedback to user
6157 if [ "$BUILD_ON_MAC" = "yes" ] && [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_DEBUG" = "yes" ] && [ "$CFG_DEBUG_RELEASE" = "no" ]; then
6159 echo "Error: debug-only framework builds are not supported. Configure with -no-framework"
6160 echo "if you want a pure debug build."
6165 sepath=`echo "$relpath" | sed -e 's/\\./\\\\./g'`
6170 #-------------------------------------------------------------------------------
6171 # build makefiles based on the configuration
6172 #-------------------------------------------------------------------------------
6174 if [ "$CFG_NOPROCESS" != "yes" ]; then
6175 echo "Creating makefiles. Please wait..."
6176 "$outpath/bin/qmake" -r ${OPT_FAST+CONFIG+=fast} "$relpath"
6179 if [ "$OPT_FAST" = "yes" ]; then
6181 for part in $CFG_BUILD_PARTS; do
6183 examples|tests) PART_ROOTS="$PART_ROOTS $part" ;;
6186 if [ "x$PART_ROOTS" != "x" ]; then
6188 echo "Creating stub makefiles. Please wait..."
6189 QMAKE="$outpath/bin/qmake"
6190 [ "$CFG_DEBUG_RELEASE" = "no" ] && first_tgt="first_target: first" || first_tgt=
6191 (cd "$relpath" && find $PART_ROOTS -name '*.pro') | grep -v /testdata/ | while read p; do
6193 test -f "$outpath/$d/Makefile" && continue
6194 echo " for $relpath/$p"
6196 mkdir -p "$outpath/$d" || exit
6197 cat > "$outpath/$d/Makefile" <<EOF || exit
6198 # $outpath/$d/Makefile: generated by configure
6200 # WARNING: This makefile will be replaced with a real makefile.
6201 # All changes made to this file will be lost.
6206 all clean install qmake first Makefile: FORCE
6207 \$(QMAKE) $QMAKE_SWITCHES "$relpath/$p"
6217 #-------------------------------------------------------------------------------
6218 # check for platforms that we don't yet know about
6219 #-------------------------------------------------------------------------------
6220 if [ "$CFG_ARCH" = "unknown" ]; then
6223 NOTICE: configure was unable to determine the architecture
6224 for the $XQMAKESPEC target.
6226 Qt will not use a specialized implementation for any atomic
6227 operations. Instead a generic implemention based on either GCC
6228 intrinsics or C++11 std::atomic<T> will be used (when
6229 available). The generic implementations are generally as fast
6230 as and always as safe as a specialized implementation.
6232 If no generic implementation is available, Qt will use a
6233 fallback UNIX implementation which uses a single
6234 pthread_mutex_t to protect all atomic operations. This
6235 implementation is the slow (but safe) fallback implementation
6236 for architectures Qt does not yet support.
6240 #-------------------------------------------------------------------------------
6241 # check if the user passed the -no-zlib option, which is no longer supported
6242 #-------------------------------------------------------------------------------
6243 if [ -n "$ZLIB_FORCED" ]; then
6244 which_zlib="supplied"
6245 if [ "$CFG_ZLIB" = "system" ]; then
6251 NOTICE: The -no-zlib option was supplied but is no longer
6254 Qt now requires zlib support in all builds, so the -no-zlib
6255 option was ignored. Qt will be built using the $which_zlib
6260 #-------------------------------------------------------------------------------
6261 # check if the user passed the obsoleted -wayland or -no-wayland flag
6262 #-------------------------------------------------------------------------------
6263 if [ "$CFG_OBSOLETE_WAYLAND" = "yes" ]; then
6266 NOTICE: The -wayland and -no-wayland flags are now obsolete
6268 All configuring of QtWayland plugin and QtCompositor happens in the module
6272 #-------------------------------------------------------------------------------
6273 # check if the user passed the obsoleted -arch or -host-arch options
6274 #-------------------------------------------------------------------------------
6275 if [ "$OPT_OBSOLETE_HOST_ARG" = "yes" ]; then
6278 NOTICE: The -arch and -host-arch options are obsolete.
6280 Qt now detects the target and host architectures based on compiler
6281 output. Qt will be built using $CFG_ARCH for the target architecture
6282 and $CFG_HOST_ARCH for the host architecture (note that these two
6283 will be the same unless you are cross-compiling).
6287 #-------------------------------------------------------------------------------
6288 # finally save the executed command to another script
6289 #-------------------------------------------------------------------------------
6290 if [ `basename $0` != "config.status" ]; then
6291 CONFIG_STATUS="$relpath/$relconf $OPT_CMDLINE"
6293 # add the system variables
6294 for varname in $SYSTEM_VARIABLES; do
6296 'if [ -n "\$'${varname}'" ]; then
6297 CONFIG_STATUS="'${varname}'='"'\\\$${varname}'"' \$CONFIG_STATUS"
6302 echo "$CONFIG_STATUS" | grep '\-confirm\-license' >/dev/null 2>&1 || CONFIG_STATUS="$CONFIG_STATUS -confirm-license"
6304 [ -f "$outpath/config.status" ] && rm -f "$outpath/config.status"
6305 echo "#!/bin/sh" > "$outpath/config.status"
6306 [ -n "$PKG_CONFIG_SYSROOT_DIR" ] && \
6307 echo "export PKG_CONFIG_SYSROOT_DIR=$PKG_CONFIG_SYSROOT_DIR" >> "$outpath/config.status"
6308 [ -n "$PKG_CONFIG_LIBDIR" ] && \
6309 echo "export PKG_CONFIG_LIBDIR=$PKG_CONFIG_LIBDIR" >> "$outpath/config.status"
6310 echo "if [ \"\$#\" -gt 0 ]; then" >> "$outpath/config.status"
6311 echo " $CONFIG_STATUS \"\$@\"" >> "$outpath/config.status"
6312 echo "else" >> "$outpath/config.status"
6313 echo " $CONFIG_STATUS" >> "$outpath/config.status"
6314 echo "fi" >> "$outpath/config.status"
6315 chmod +x "$outpath/config.status"
6318 if [ -n "$RPATH_MESSAGE" ]; then
6320 echo "$RPATH_MESSAGE"
6323 MAKE=`basename "$MAKE"`
6325 echo Qt is now configured for building. Just run \'$MAKE\'.
6326 if [ "$relpath" = "$QT_INSTALL_PREFIX" ]; then
6327 echo Once everything is built, Qt is installed.
6328 echo You should not run \'$MAKE install\'.
6330 echo Once everything is built, you must run \'$MAKE install\'.
6331 echo Qt will be installed into $QT_INSTALL_PREFIX
6334 echo To reconfigure, run \'$MAKE confclean\' and \'configure\'.