2 #############################################################################
4 ## Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
5 ## All rights reserved.
6 ## Contact: Nokia Corporation (qt-info@nokia.com)
8 ## This file is the build configuration utility of the Qt Toolkit.
10 ## $QT_BEGIN_LICENSE:LGPL$
11 ## No Commercial Usage
12 ## This file contains pre-release code and may not be distributed.
13 ## You may use this file in accordance with the terms and conditions
14 ## contained in the Technology Preview License Agreement accompanying
17 ## GNU Lesser General Public License Usage
18 ## Alternatively, this file may be used under the terms of the GNU Lesser
19 ## General Public License version 2.1 as published by the Free Software
20 ## Foundation and appearing in the file LICENSE.LGPL included in the
21 ## packaging of this file. Please review the following information to
22 ## ensure the GNU Lesser General Public License version 2.1 requirements
23 ## will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
25 ## In addition, as a special exception, Nokia gives you certain additional
26 ## rights. These rights are described in the Nokia Qt LGPL Exception
27 ## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
29 ## If you have questions regarding the use of this file, please contact
30 ## Nokia at qt-info@nokia.com.
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
77 #-------------------------------------------------------------------------------
79 #-------------------------------------------------------------------------------
83 echo "$@" | sed 's/ /\ /g'
86 # Adds a new qmake variable to the cache
87 # Usage: QMakeVar mode varname contents
88 # where mode is one of: set, add, del
102 echo >&2 "BUG: wrong command to QMakeVar: $1"
106 echo "$2" "$eq" "$3" >> "$QMAKE_VARS_FILE"
109 # Helper function for getQMakeConf. It parses include statements in
110 # qmake.conf and prints out the expanded file
113 while read line; do case "$line" in
115 inc_file=`echo "$line" | sed -n -e "/^include.*(.*)/s/include.*(\(.*\)).*$/\1/p"`
116 current_dir=`dirname "$1"`
117 conf_file="$current_dir/$inc_file"
118 if [ ! -f "$conf_file" ]; then
119 echo "WARNING: Unable to find file $conf_file" >&2
122 getQMakeConf1 "$conf_file"
131 # relies on $QMAKESPEC being set correctly. parses include statements in
132 # qmake.conf and prints out the expanded file
139 getQMakeConf1 "$tmpSPEC/qmake.conf"
142 # relies on $TEST_COMPILER being set correctly
143 compilerSupportsFlag()
145 cat >conftest.cpp <<EOF
146 int main() { return 0; }
148 "$TEST_COMPILER" "$@" -o conftest.o conftest.cpp
150 rm -f conftest.cpp conftest.o
154 # relies on $TEST_COMPILER being set correctly
160 safe_flag=`shellEscape "$flag"`
161 lflags=$lflags,$safe_flag
163 compilerSupportsFlag "$lflags" >/dev/null 2>&1
166 #-------------------------------------------------------------------------------
167 # operating system detection
168 #-------------------------------------------------------------------------------
170 # need that throughout the script
171 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
172 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
173 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
174 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
176 # detect the "echo without newline" style. usage: echo $ECHO_N "<string>$ECHO_C"
177 if echo '\c' | grep '\c' >/dev/null; then
183 #-------------------------------------------------------------------------------
184 # window system detection
185 #-------------------------------------------------------------------------------
191 if [ -d /System/Library/Frameworks/Carbon.framework ]; then
198 #-----------------------------------------------------------------------------
199 # Qt version detection
200 #-----------------------------------------------------------------------------
201 QT_VERSION=`grep '^# *define *QT_VERSION_STR' "$relpath"/src/corelib/global/qglobal.h`
205 if [ -n "$QT_VERSION" ]; then
206 QT_VERSION=`echo $QT_VERSION | sed 's,^# *define *QT_VERSION_STR *"*\([^ ]*\)"$,\1,'`
207 MAJOR=`echo $QT_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\1,'`
208 if [ -n "$MAJOR" ]; then
209 MINOR=`echo $QT_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\2,'`
210 PATCH=`echo $QT_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\3,'`
211 QT_MAJOR_VERSION="$MAJOR"
212 [ -z "$MINOR" ] || QT_MINOR_VERSION="$MINOR"
213 [ -z "$PATCH" ] || QT_PATCH_VERSION="$PATCH"
216 if [ -z "$QT_MAJOR_VERSION" ]; then
217 echo "Cannot process version from qglobal.h: $QT_VERSION"
218 echo "Cannot proceed."
222 QT_PACKAGEDATE=`grep '^# *define *QT_PACKAGEDATE_STR' "$relpath"/src/corelib/global/qglobal.h | sed -e 's,^# *define *QT_PACKAGEDATE_STR *"\([^ ]*\)"$,\1,' -e s,-,,g`
223 if [ -z "$QT_PACKAGEDATE" ]; then
224 echo "Unable to determine package date from qglobal.h: '$QT_PACKAGEDATE'"
225 echo "Cannot proceed"
229 #-------------------------------------------------------------------------------
231 #-------------------------------------------------------------------------------
237 EditionString=Commercial
241 # parse the arguments, setting things to "yes" or "no"
242 while [ "$#" -gt 0 ]; do
246 #Autoconf style options
248 VAR=`echo $1 | sed "s,^--enable-\(.*\),\1,"`
252 VAR=`echo $1 | sed "s,^--disable-\(.*\),\1,"`
256 VAR=`echo $1 | sed "s,^--\(.*\)=.*,\1,"`
257 VAL=`echo $1 | sed "s,^--.*=\(.*\),\1,"`
260 VAR=`echo $1 | sed "s,^--no-\(.*\),\1,"`
265 # this option may or may not be followed by an argument
266 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
275 # this option may or may not be followed by an argument
276 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
289 -h|help|--help|-help)
290 if [ "$VAL" = "yes" ]; then
292 COMMERCIAL_USER="no" #doesn't matter we will display the help
295 COMMERCIAL_USER="no" #doesn't matter we will display the help
299 VAR=`echo $1 | sed "s,^--\(.*\),\1,"`
303 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
310 if [ "$UNKNOWN_ARG" = "yes" ]; then
327 if [ "$PLATFORM_QPA" != "no" ]; then
328 if [ "$PLATFORM_QPA" = "maybe" ]; then
335 echo "No license exists to enable Qt QPA. Disabling."
340 echo "Using NaCl at $VAL."
357 COMMERCIAL_USER="yes"
371 if [ "$COMMERCIAL_USER" = "ask" ]; then
373 echo "Which edition of Qt do you want to use ?"
375 echo "Type 'c' if you want to use the Commercial Edition."
376 echo "Type 'o' if you want to use the Open Source Edition."
380 if [ "$commercial" = "c" ]; then
381 COMMERCIAL_USER="yes"
383 elif [ "$commercial" = "o" ]; then
390 if [ "$CFG_NOKIA" = "yes" ]; then
392 Edition="NokiaInternalBuild"
393 EditionString="Nokia Internal Build"
394 QT_EDITION="QT_EDITION_OPENSOURCE"
395 [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes
396 elif [ -f "$relpath"/LICENSE.PREVIEW.COMMERCIAL ] && [ $COMMERCIAL_USER = "yes" ]; then
397 # Commercial preview release
398 [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes
401 QT_EDITION="QT_EDITION_DESKTOP"
402 LicenseType="Technology Preview"
403 elif [ $COMMERCIAL_USER = "yes" ]; then
404 # one of commercial editions
405 [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes
406 [ "$PLATFORM_QPA" = "maybe" ] && PLATFORM_QPA=no
407 [ "$PLATFORM_QWS" = "maybe" ] && PLATFORM_QWS=no
409 # read in the license file
410 if [ -f "$LICENSE_FILE" ]; then
411 . "$LICENSE_FILE" >/dev/null 2>&1
412 if [ -z "$LicenseKeyExt" ]; then
414 echo "You are using an old license file."
416 echo "Please install the license file supplied by Nokia,"
417 echo "or install the Qt Open Source Edition if you intend to"
418 echo "develop free software."
421 if [ -z "$Licensee" ]; then
423 echo "Invalid license key. Please check the license key."
427 if [ -z "$LicenseKeyExt" ]; then
429 echo $ECHO_N "Please enter your license key: $ECHO_C"
431 Licensee="Unknown user"
436 echo "$LicenseKeyExt" | grep ".....*-....*-....*-....*-.....*-.....*-...." >/dev/null 2>&1 \
437 && LicenseValid="yes" \
439 if [ "$LicenseValid" != "yes" ]; then
441 echo "Invalid license key. Please check the license key."
444 ProductCode=`echo $LicenseKeyExt | cut -f 1 -d - | cut -b 1`
445 PlatformCode=`echo $LicenseKeyExt | cut -f 2 -d -`
446 LicenseTypeCode=`echo $LicenseKeyExt | cut -f 3 -d -`
447 LicenseFeatureCode=`echo $LicenseKeyExt | cut -f 4 -d - | cut -b 1`
449 # determine which edition we are licensed to use
450 case "$LicenseTypeCode" in
452 LicenseType="Commercial"
456 QT_EDITION="QT_EDITION_UNIVERSAL"
459 Edition="FullFramework"
460 EditionString="Full Framework"
461 QT_EDITION="QT_EDITION_DESKTOP"
464 Edition="GUIFramework"
465 EditionString="GUI Framework"
466 QT_EDITION="QT_EDITION_DESKTOPLIGHT"
471 LicenseType="Evaluation"
472 QMakeVar add DEFINES QT_EVAL
476 QT_EDITION="QT_EDITION_EVALUATION"
481 if [ -z "$LicenseType" -o -z "$Edition" -o -z "$QT_EDITION" ]; then
483 echo "Invalid license key. Please check the license key."
487 # verify that we are licensed to use Qt on this platform
489 case "$PlatformCode" in
492 PlatformCode=`echo "$PlatformCode" | sed 'h;y/8NPQRTZ/UCWX9M7/;x;G;s/\(.\)....\(.\)./\1\2/'`
496 PlatformCode=`echo "$PlatformCode" | sed 's/.$//'`
499 ### EMBEDDED_QPA logic missing ###
500 case "$PlatformCode,$PLATFORM_MAC,$PLATFORM_QWS" in
501 X9,* | XC,* | XU,* | XW,* | XM,*)
503 LICENSE_EXTENSION="-ALLOS"
505 8M,* | KM,* | S9,* | SC,* | SM,* | SU,* | SW,* | X9,* | XC,* | XU,* | XW,*)
506 # Qt for Embedded Linux
507 LICENSE_EXTENSION="-EMBEDDED"
509 6M,*,no | N7,*,no | N9,*,no | NX,*,no)
511 LICENSE_EXTENSION="-EMBEDDED"
513 FM,*,no | LM,yes,* | ZM,no,no)
515 LICENSE_EXTENSION="-DESKTOP"
519 [ "$PLATFORM_MAC" = "yes" ] && Platform='Mac OS X'
520 [ "$PLATFORM_QWS" = "yes" ] && Platform='Embedded Linux'
522 echo "You are not licensed for the $Platform platform."
524 echo "Please contact qt-info@nokia.com to upgrade your license to"
525 echo "include the $Platform platform, or install the Qt Open Source Edition"
526 echo "if you intend to develop free software."
531 if test -r "$relpath/.LICENSE"; then
532 # Generic, non-final license
534 line=`sed 'y/a-z/A-Z/;q' "$relpath"/.LICENSE`
539 *TECHNOLOGY?PREVIEW*)
546 echo >&2 "Invalid license files; cannot continue"
551 EditionString="$Edition"
552 QT_EDITION="QT_EDITION_DESKTOP"
555 case "$LicenseFeatureCode" in
558 case "$LicenseType" in
560 cp -f "$relpath/.LICENSE${LICENSE_EXTENSION}-US" "$outpath/LICENSE"
563 cp -f "$relpath/.LICENSE-EVALUATION-US" "$outpath/LICENSE"
569 case "$LicenseType" in
571 cp -f "$relpath/.LICENSE${LICENSE_EXTENSION}" "$outpath/LICENSE"
574 cp -f "$relpath/.LICENSE-EVALUATION" "$outpath/LICENSE"
580 echo "Invalid license key. Please check the license key."
584 case "$LicenseFeatureCode" in
592 if [ '!' -f "$outpath/LICENSE" ]; then
593 echo "The LICENSE, LICENSE.GPL3 LICENSE.LGPL file shipped with"
594 echo "this software has disappeared."
596 echo "Sorry, you are not licensed to use this software."
597 echo "Try re-installing."
601 elif [ $COMMERCIAL_USER = "no" ]; then
602 # Open Source edition - may only be used under the terms of the GPL or LGPL.
603 [ "$PLATFORM_MAC" = "maybe" ] && PLATFORM_MAC=yes
604 Licensee="Open Source"
606 EditionString="Open Source"
607 QT_EDITION="QT_EDITION_OPENSOURCE"
610 #-------------------------------------------------------------------------------
611 # initalize variables
612 #-------------------------------------------------------------------------------
614 SYSTEM_VARIABLES="RANLIB STRIP OBJDUMP LD CC CXX CFLAGS CXXFLAGS LDFLAGS"
615 for varname in $SYSTEM_VARIABLES; do
616 qmakevarname="${varname}"
617 # use LDFLAGS for autoconf compat, but qmake uses QMAKE_LFLAGS
618 if [ "${varname}" = "LDFLAGS" ]; then
619 qmakevarname="LFLAGS"
620 elif [ "${varname}" = "LD" ]; then
624 'if [ -n "\$'${varname}'" ]; then
625 QMakeVar set QMAKE_'${qmakevarname}' "\$'${varname}'"
629 # Use CC/CXX to run config.tests
630 mkdir -p "$outpath/config.tests"
631 rm -f "$outpath/config.tests/.qmake.cache"
632 cp "$QMAKE_VARS_FILE" "$outpath/config.tests/.qmake.cache"
634 QMakeVar add styles "cde mac motif plastique cleanlooks windows"
635 QMakeVar add decorations "default windows styled"
636 QMakeVar add mouse-drivers "pc"
637 if [ "$UNAME_SYSTEM" = "Linux" ] ; then
638 QMakeVar add gfx-drivers "linuxfb"
639 QMakeVar add mouse-drivers "linuxtp"
641 QMakeVar add kbd-drivers "tty"
643 if [ "$CFG_DEV" = "yes" ]; then
644 QMakeVar add kbd-drivers "um"
647 # QTDIR may be set and point to an old or system-wide Qt installation
650 # the minimum version of libdbus-1 that we require:
651 MIN_DBUS_1_VERSION=0.93
653 # initalize internal variables
654 CFG_CONFIGURE_EXIT_ON_ERROR=yes
656 CFG_EXCEPTIONS=unspecified
657 CFG_GUI=auto # (yes|no|auto)
658 CFG_SCRIPT=auto # (yes|no|auto)
659 CFG_SCRIPTTOOLS=auto # (yes|no|auto)
660 CFG_XMLPATTERNS=auto # (yes|no|auto)
674 CFG_SYMBIAN_DEFFILES=auto
692 CFG_OPENVG_LC_INCLUDES=no
693 CFG_OPENVG_SHIVA=auto
694 CFG_OPENVG_ON_OPENGL=auto
696 CFG_EGL_GLES_INCLUDES=no
699 CFG_QWS_FREETYPE=auto
702 QT_DEFAULT_BUILD_PARTS="libs examples demos tests"
707 CFG_PHONON_BACKEND=yes
709 CFG_AUDIO_BACKEND=auto
712 CFG_DECLARATIVE_DEBUG=yes
713 CFG_WEBKIT=auto # (yes|no|auto|debug)
714 CFG_JAVASCRIPTCORE_JIT=auto
717 CFG_GFX_AVAILABLE="linuxfb transformed qvfb vnc multiscreen directfb"
718 CFG_GFX_ON="linuxfb multiscreen"
719 CFG_GFX_PLUGIN_AVAILABLE=
722 CFG_KBD_AVAILABLE="tty linuxinput qvfb"
723 CFG_KBD_ON="tty" #default, see QMakeVar above
724 CFG_MOUSE_AVAILABLE="pc linuxtp linuxinput tslib qvfb"
725 CFG_MOUSE_ON="pc linuxtp" #default, see QMakeVar above
727 if [ -f "$relpath/src/gui/embedded/qscreenqnx_qws.cpp" ]; then
728 CFG_KBD_AVAILABLE="${CFG_KBD_AVAILABLE} qnx"
729 CFG_MOUSE_AVAILABLE="${CFG_MOUSE_AVAILABLE} qnx"
730 CFG_GFX_AVAILABLE="${CFG_GFX_AVAILABLE} qnx"
732 if [ -f "$relpath/src/gui/embedded/qscreenintegrityfb_qws.cpp" ]; then
733 CFG_KBD_AVAILABLE="${CFG_KBD_AVAILABLE} integrity"
734 CFG_MOUSE_AVAILABLE="${CFG_MOUSE_AVAILABLE} integrity"
735 CFG_GFX_AVAILABLE="${CFG_GFX_AVAILABLE} integrityfb"
740 CFG_KBD_PLUGIN_AVAILABLE=
743 CFG_MOUSE_PLUGIN_AVAILABLE=
748 CFG_DECORATION_AVAILABLE="styled windows default"
749 CFG_DECORATION_ON="${CFG_DECORATION_AVAILABLE}" # all on by default
750 CFG_DECORATION_PLUGIN_AVAILABLE=
751 CFG_DECORATION_PLUGIN=
767 CFG_SEPARATE_DEBUG_INFO=no
768 CFG_SEPARATE_DEBUG_INFO_NOCOPY=no
769 CFG_REDUCE_EXPORTS=auto
779 CFG_REDUCE_RELOCATIONS=no
784 CFG_ACCESSIBILITY=auto
788 CFG_DOUBLEFORMAT=auto
792 CFG_CLOCK_GETTIME=auto
793 CFG_CLOCK_MONOTONIC=auto
802 MAC_CONFIG_TEST_COMMANDLINE= # used to make the configure tests run with the correct arch's and SDK settings
807 COMMANDLINE_MAC_CARBON=no
810 CFG_PREFIX_INSTALL=yes
818 XPLATFORM= # This seems to be the QMAKESPEC, like "linux-g++" or "symbian-gcce"
819 XPLATFORM_MINGW=no # Whether target platform is MinGW (win32-g++*)
820 XPLATFORM_SYMBIAN=no # Whether target platform is SYMBIAN (*symbian*)
821 XPLATFORM_SYMBIAN_SBSV2=no # Whether target platform is SYMBIAN_SBSV2 (symbian-sbsv2)
824 OPT_CONFIRM_LICENSE=no
830 CFG_GRAPHICS_SYSTEM=default
839 # initalize variables used for installation
848 QT_INSTALL_TRANSLATIONS=
854 #flags for SQL drivers
862 QT_LFLAGS_ODBC="-lodbc"
865 # flags for libdbus-1
869 # flags for Glib (X11 only)
873 # flags for GStreamer (X11 only)
877 #flag for Symbian fpu settings
880 # flags for libconnsettings0 (used for Maemo ICD bearer management plugin)
881 QT_CFLAGS_CONNSETTINGS=
882 QT_LIBS_CONNSETTINGS=
884 #-------------------------------------------------------------------------------
885 # check SQL drivers, mouse drivers and decorations available in this package
886 #-------------------------------------------------------------------------------
888 # opensource version removes some drivers, so force them to be off
894 if [ -d "$relpath/src/plugins/sqldrivers" ]; then
895 for a in "$relpath/src/plugins/sqldrivers/"*; do
897 base_a=`basename "$a"`
898 CFG_SQL_AVAILABLE="${CFG_SQL_AVAILABLE} ${base_a}"
899 eval "CFG_SQL_${base_a}=auto"
904 CFG_DECORATION_PLUGIN_AVAILABLE=
905 if [ -d "$relpath/src/plugins/decorations" ]; then
906 for a in "$relpath/src/plugins/decorations/"*; do
908 base_a=`basename "$a"`
909 CFG_DECORATION_PLUGIN_AVAILABLE="${CFG_DECORATION_PLUGIN_AVAILABLE} ${base_a}"
914 CFG_KBD_PLUGIN_AVAILABLE=
915 if [ -d "$relpath/src/plugins/kbddrivers" ]; then
916 for a in "$relpath/src/plugins/kbddrivers/"*; do
918 base_a=`basename "$a"`
919 CFG_KBD_PLUGIN_AVAILABLE="${CFG_KBD_PLUGIN_AVAILABLE} ${base_a}"
924 CFG_MOUSE_PLUGIN_AVAILABLE=
925 if [ -d "$relpath/src/plugins/mousedrivers" ]; then
926 for a in "$relpath/src/plugins/mousedrivers/"*; do
928 base_a=`basename "$a"`
929 CFG_MOUSE_PLUGIN_AVAILABLE="${CFG_MOUSE_PLUGIN_AVAILABLE} ${base_a}"
934 CFG_GFX_PLUGIN_AVAILABLE=
935 if [ -d "$relpath/src/plugins/gfxdrivers" ]; then
936 for a in "$relpath/src/plugins/gfxdrivers/"*; do
938 base_a=`basename "$a"`
939 CFG_GFX_PLUGIN_AVAILABLE="${CFG_GFX_PLUGIN_AVAILABLE} ${base_a}"
942 CFG_GFX_OFF="$CFG_GFX_AVAILABLE" # assume all off
945 CFG_IMAGEFORMAT_PLUGIN_AVAILABLE=
946 if [ -d "$relpath/src/plugins/imageformats" ]; then
947 for a in "$relpath/src/plugins/imageformats/"*; do
949 base_a=`basename "$a"`
950 CFG_IMAGEFORMAT_PLUGIN_AVAILABLE="${CFG_IMAGEFORMAT_PLUGIN_AVAILABLE} ${base_a}"
955 #-------------------------------------------------------------------------------
956 # Set Default NaCl options
957 #-------------------------------------------------------------------------------
958 if [ "$CFG_EMBEDDED" = "nacl" ]; then
959 echo "Setting NaCl options:"
969 if [ `uname` = "Linux" ]; then
970 I_FLAGS="$I_FLAGS -I${CFG_NACL_PATH}/toolchain/linux_x86/sdk/nacl-sdk/include"
971 L_FLAGS="$L_FLAGS -I${CFG_NACL_PATH}/toolchain/linux_x86/sdk/nacl-sdk/lib"
973 I_FLAGS="$I_FLAGS -I${CFG_NACL_PATH}/toolchain/mac_x86/sdk/nacl-sdk/include"
974 L_FLAGS="$L_FLAGS -I${CFG_NACL_PATH}/toolchain/mac_x86/sdk/nacl-sdk/lib"
977 echo "-no-multimedia -no-webkit -no-phonon -no-nultimedia -no-mediaservices -no-xmlpatterns -no-script -no-sql-sqlite -nomake tests"
988 CFG_NOBUILD_PARTS="$CFG_NOBUILD_PARTS tests"
989 QT_CONFIG="$QT_CONFIG nacl"
992 #-------------------------------------------------------------------------------
993 # parse command line arguments
994 #-------------------------------------------------------------------------------
996 # parse the arguments, setting things to "yes" or "no"
997 while [ "$#" -gt 0 ]; do
1001 #Autoconf style options
1003 VAR=`echo $1 | sed "s,^--enable-\(.*\),\1,"`
1007 VAR=`echo $1 | sed "s,^--disable-\(.*\),\1,"`
1011 VAR=`echo $1 | sed "s,^--\(.*\)=.*,\1,"`
1012 VAL=`echo $1 | sed "s,^--.*=\(.*\),\1,"`
1015 VAR=`echo $1 | sed "s,^--no-\(.*\),\1,"`
1019 VAR=`echo $1 | sed "s,^--\(.*\),\1,"`
1023 -no-*-*|-plugin-*-*|-qt-*-*)
1024 VAR=`echo $1 | sed "s,^-[^-]*-\(.*\),\1,"`
1025 VAL=`echo $1 | sed "s,^-\([^-]*\).*,\1,"`
1040 #Qt style no options
1042 VAR=`echo $1 | sed "s,^-no-\(.*\),\1,"`
1045 #Qt style yes options
1046 -incremental|-qvfb|-profile|-shared|-static|-sm|-xinerama|-xshape|-xsync|-xinput|-egl|-reduce-exports|-pch|-separate-debug-info|-stl|-freetype|-xcursor|-xfixes|-xrandr|-xrender|-mitshm|-fontconfig|-xkb|-nis|-qdbus|-dbus|-dbus-linked|-glib|-gstreamer|-gtkstyle|-cups|-iconv|-largefile|-h|-help|-v|-verbose|-debug|-release|-fast|-accessibility|-confirm-license|-gnumake|-framework|-qt3support|-debug-and-release|-exceptions|-cocoa|-carbon|-universal|-harfbuzz|-prefix-install|-silent|-armfpa|-optimized-qmake|-dwarf2|-reduce-relocations|-sse|-openssl|-openssl-linked|-ptmalloc|-xmlpatterns|-phonon|-phonon-backend|-multimedia|-audio-backend|-svg|-declarative|-declarative-debug|-javascript-jit|-script|-scripttools|-rpath|-force-pkg-config|-s60|-usedeffiles|-icu)
1047 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
1050 #Qt style options that pass an argument
1052 if [ "$PLATFORM_QWS" != "yes" -a "$PLATFORM_QPA" != "yes" ]; then
1054 echo "WARNING: -qconfig is only tested and supported on Qt for Embedded Linux."
1058 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
1062 -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-host-arch|-mysql_config)
1063 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
1067 #Qt style complex options in one command
1068 -enable-*|-disable-*)
1069 VAR=`echo $1 | sed "s,^-\([^-]*\)-.*,\1,"`
1070 VAL=`echo $1 | sed "s,^-[^-]*-\(.*\),\1,"`
1072 #Qt Builtin/System style options
1073 -no-*|-system-*|-qt-*)
1074 VAR=`echo $1 | sed "s,^-[^-]*-\(.*\),\1,"`
1075 VAL=`echo $1 | sed "s,^-\([^-]*\)-.*,\1,"`
1077 #Options that cannot be generalized
1084 # this option may or may not be followed by an argument
1085 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1092 -embedded-lite|-qpa)
1094 # this option may or may not be followed by an argument
1095 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1108 # this option may or may not be followed by an argument
1109 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1118 # this option may or may not be followed by an argument
1119 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1127 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
1128 # this option may or may not be followed by an argument
1129 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1138 VAL=`echo $1 | sed "s,^-.*-\(.*\)-.*,\1,"`
1142 VAL=`echo $1 | sed "s,^-\(.*\)-.*,\1,"`
1150 VAR="graphicssystem"
1154 -runtimegraphicssystem)
1155 VAR="runtimegraphicssystem"
1166 if [ "$1" = "-D" ]; then
1170 VAL=`echo $1 | sed 's,-D,,'`
1175 # this option may or may not be followed by an argument
1176 if [ -z "$2" ] || echo "$2" | grep '^-' >/dev/null 2>&1; then
1185 if [ "$1" = "-I" ]; then
1189 VAL=`echo $1 | sed 's,-I,,'`
1194 if [ "$1" = "-L" ]; then
1198 VAL=`echo $1 | sed 's,-L,,'`
1203 if [ "$1" = "-R" ]; then
1207 VAL=`echo $1 | sed 's,-R,,'`
1212 VAL=`echo $1 | sed 's,-l,,'`
1216 if [ "$1" = "-F" ]; then
1220 VAL=`echo $1 | sed 's,-F,,'`
1225 if [ "$1" = "-fw" ]; then
1229 VAL=`echo $1 | sed 's,-fw,,'`
1233 VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
1240 if [ "$UNKNOWN_ARG" = "yes" ]; then
1241 echo "$1: unknown argument"
1252 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1253 CFG_QT3SUPPORT="$VAL"
1259 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1260 CFG_ACCESSIBILITY="$VAL"
1269 CFG_USE_GNUMAKE="$VAL"
1272 CFG_MYSQL_CONFIG="$VAL"
1275 QT_INSTALL_PREFIX="$VAL"
1278 QT_HOST_PREFIX="$VAL"
1281 QT_FORCE_PKGCONFIG=yes
1284 QT_INSTALL_DOCS="$VAL"
1287 QT_INSTALL_HEADERS="$VAL"
1290 QT_INSTALL_PLUGINS="$VAL"
1293 QT_INSTALL_IMPORTS="$VAL"
1296 QT_INSTALL_DATA="$VAL"
1299 QT_INSTALL_LIBS="$VAL"
1308 QT_INSTALL_TRANSLATIONS="$VAL"
1310 sysconfdir|settingsdir)
1311 QT_INSTALL_SETTINGS="$VAL"
1314 QT_INSTALL_EXAMPLES="$VAL"
1317 QT_INSTALL_DEMOS="$VAL"
1326 QT_INSTALL_BINS="$VAL"
1329 CFG_USER_BUILD_KEY="$VAL"
1351 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1358 if [ "$VAL" = "little" ]; then
1359 CFG_ENDIAN="Q_LITTLE_ENDIAN"
1360 elif [ "$VAL" = "big" ]; then
1361 CFG_ENDIAN="Q_BIG_ENDIAN"
1367 if [ "$VAL" = "little" ]; then
1368 CFG_HOST_ENDIAN="Q_LITTLE_ENDIAN"
1369 elif [ "$VAL" = "big" ]; then
1370 CFG_HOST_ENDIAN="Q_BIG_ENDIAN"
1376 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1383 CFG_QWS_DEPTHS="$VAL"
1386 if [ "$VAL" = "auto" ] || [ "$VAL" = "desktop" ] ||
1387 [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] ||
1388 [ "$VAL" = "es1" ] || [ "$VAL" = "es2" ]; then
1390 if [ "$VAL" = "es1" ] || [ "$VAL" = "es2" ]; then
1398 if [ "$VAL" = "auto" ] || [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1400 if [ "$CFG_EGL" = "no" ] && [ "$VAL" != "no" ]; then
1408 if [ "$PLATFORM_QWS" = "yes" ]; then
1409 echo "Error: Graphics System plugins are not supported on QWS."
1410 echo " On QWS, the graphics system API is part of the QScreen plugin architecture "
1411 echo " rather than existing as a separate plugin."
1415 if [ "$VAL" = "opengl" ]; then
1416 CFG_GRAPHICS_SYSTEM="opengl"
1417 elif [ "$VAL" = "openvg" ]; then
1418 CFG_GRAPHICS_SYSTEM="openvg"
1419 elif [ "$VAL" = "raster" ]; then
1420 CFG_GRAPHICS_SYSTEM="raster"
1421 elif [ "$VAL" = "runtime" ]; then
1422 CFG_GRAPHICS_SYSTEM="runtime"
1428 runtimegraphicssystem)
1429 if [ "$VAL" != "runtime" ]; then
1430 CFG_RUNTIME_SYSTEM="$VAL"
1434 qvfb) # left for commandline compatibility, not documented
1435 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1436 if [ "$VAL" = "yes" ]; then
1437 QMakeVar add gfx-drivers qvfb
1438 QMakeVar add kbd-drivers qvfb
1439 QMakeVar add mouse-drivers qvfb
1440 CFG_GFX_ON="$CFG_GFX_ON qvfb"
1441 CFG_KBD_ON="$CFG_KBD_ON qvfb"
1442 CFG_MOUSE_ON="$CFG_MOUSE_ON qvfb"
1449 CFG_NOBUILD_PARTS="$CFG_NOBUILD_PARTS $VAL"
1452 CFG_BUILD_PARTS="$CFG_BUILD_PARTS $VAL"
1461 if [ "$PLATFORM_MAC" = "yes" ]; then
1468 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1469 CFG_MAC_DWARF2="$VAL"
1475 # if this is a Mac then "windows" probably means
1476 # we are cross-compiling for MinGW
1477 if [ "$PLATFORM_MAC" = "yes" ] && [ "$VAL" != "windows" ]; then
1478 CFG_MAC_ARCHS="$CFG_MAC_ARCHS $VAL"
1487 if [ "$PLATFORM_MAC" = "yes" ] && [ "$VAL" = "yes" ]; then
1488 CFG_MAC_ARCHS="$CFG_MAC_ARCHS x86 ppc"
1494 # do nothing - Cocoa is the default.
1497 if [ "$PLATFORM_MAC" = "yes" ] && [ "$VAL" = "yes" ]; then
1498 CFG_MAC_CARBON="$VAL"
1499 COMMANDLINE_MAC_CARBON="$VAL"
1505 if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_MAC_CARBON" != "yes" ] && [ "$VAL" = "yes" ]; then
1506 CFG_MAC_HARFBUZZ="$VAL"
1513 if [ "$PLATFORM_MAC" = "yes" ] || [ "$PLATFORM_QPA" = "yes" ]; then
1514 CFG_FRAMEWORK="$VAL"
1520 if [ "$VAL" = "yes" ]; then
1522 QMakeVar add QMAKE_CFLAGS -pg
1523 QMakeVar add QMAKE_CXXFLAGS -pg
1524 QMakeVar add QMAKE_LFLAGS -pg
1525 QMAKE_VARS="$QMAKE_VARS CONFIG+=nostrip"
1530 exceptions|g++-exceptions)
1531 if [ "$VAL" = "no" ]; then
1533 elif [ "$VAL" = "yes" ]; then
1541 # keep compatibility with old platform names
1547 PLATFORM=hpux-acc-o64
1550 PLATFORM=hpux-acc-64
1553 PLATFORM=hpux-acc-64
1565 PLATFORM=reliant-cds-64
1568 PLATFORM=solaris-cc-64
1571 PLATFORM=unixware-cc
1574 PLATFORM=unixware-g++
1577 PLATFORM=unixware-cc
1580 PLATFORM=unixware-g++
1586 i386) NATIVE_64_ARCH="x86_64" ;;
1587 powerpc) NATIVE_64_ARCH="ppc64" ;;
1588 *) echo "WARNING: Can't detect CPU architecture for macx-g++-64" ;;
1590 if [ ! -z "$NATIVE_64_ARCH" ]; then
1591 QTCONFIG_CONFIG="$QTCONFIG_CONFIG $NATIVE_64_ARCH"
1592 CFG_MAC_ARCHS="$CFG_MAC_ARCHS $NATIVE_64_ARCH"
1599 case `basename "$XPLATFORM"` in win32-g++*) XPLATFORM_MINGW=yes;; esac
1600 case "$XPLATFORM" in *symbian*) XPLATFORM_SYMBIAN=yes;; esac
1601 case "$XPLATFORM" in symbian-sbsv2) XPLATFORM_SYMBIAN_SBSV2=yes;; esac
1604 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1605 CFG_DEBUG_RELEASE="$VAL"
1611 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1612 CFG_RELEASE_QMAKE="$VAL"
1618 if [ "$VAL" = "yes" ]; then
1620 elif [ "$VAL" = "no" ]; then
1627 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1628 CFG_PREFIX_INSTALL="$VAL"
1636 developer-build|commercial|opensource|nokia-developer)
1637 # These switches have been dealt with already
1640 if [ "$VAL" = "yes" ]; then
1642 elif [ "$VAL" = "no" ]; then
1649 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1650 CFG_INCREMENTAL="$VAL"
1656 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1657 CFG_CONFIGURE_EXIT_ON_ERROR="$VAL"
1663 FEATURE=`echo $VAR | sed "s,^[^-]*-\([^-]*\),\1," | tr 'abcdefghijklmnopqrstuvwxyz-' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`
1664 if [ "$VAL" = "no" ]; then
1665 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_$FEATURE"
1666 elif [ "$VAL" = "yes" ] || [ "$VAL" = "unknown" ]; then
1667 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_$FEATURE"
1673 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1680 if [ "$VAL" = "no" ]; then
1687 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1695 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1702 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1709 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1716 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1723 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1730 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1737 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1744 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1745 CFG_PRECOMPILE="$VAL"
1750 separate-debug-info)
1751 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1752 CFG_SEPARATE_DEBUG_INFO="$VAL"
1753 elif [ "$VAL" = "nocopy" ] ; then
1754 CFG_SEPARATE_DEBUG_INFO="yes"
1755 CFG_SEPARATE_DEBUG_INFO_NOCOPY="yes"
1761 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1762 CFG_REDUCE_EXPORTS="$VAL"
1768 if [ "$VAL" = "no" ]; then
1775 if [ "$VAL" = "no" ]; then
1782 if [ "$VAL" = "no" ]; then
1789 if [ "$VAL" = "no" ]; then
1796 if [ "$VAL" = "no" ]; then
1803 if [ "$VAL" = "no" ]; then
1810 if [ "$VAL" = "no" ]; then
1817 if [ "$VAL" = "no" ]; then
1824 if [ "$VAL" = "no" ]; then
1834 if [ "$VAL" = "no" ]; then
1841 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1842 CFG_REDUCE_RELOCATIONS="$VAL"
1848 [ "$VAL" = "qt" ] && VAL=yes
1849 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1850 CFG_QWS_FREETYPE="$VAL"
1856 [ "$VAL" = "qt" ] && VAL=yes
1857 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1862 # No longer supported:
1863 #[ "$VAL" = "no" ] && CFG_LIBPNG=no
1866 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1873 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1874 CFG_SYMBIAN_DEFFILES="$VAL"
1880 if [ "$VAL" = "system" ]; then
1887 [ "$VAL" = "yes" ] && VAL=qt
1888 if [ "$VAL" = "qt" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1895 [ "$VAL" = "yes" ] && VAL=qt
1896 if [ "$VAL" = "qt" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1903 [ "$VAL" = "yes" ] && VAL=qt
1904 if [ "$VAL" = "qt" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1911 [ "$VAL" = "yes" ] && VAL=qt
1912 if [ "$VAL" = "qt" ] || [ "$VAL" = "no" ] || [ "$VAL" = "system" ]; then
1919 if [ "$VAL" = "system" ] || [ "$VAL" = "no" ]; then
1926 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1933 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1940 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "runtime" ]; then
1947 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1954 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1961 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1962 CFG_FONTCONFIG="$VAL"
1968 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1975 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1982 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1989 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1996 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
1997 CFG_GSTREAMER="$VAL"
2003 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2004 CFG_QGTKSTYLE="$VAL"
2010 if [ "$VAL" = "qt" ] || [ "$VAL" = "no" ]; then
2011 CFG_QS60STYLE="$VAL"
2017 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ]; then
2020 if [ "$VAL" = "no" ]; then
2028 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ] || [ "$VAL" = "linked" ]; then
2030 elif [ "$VAL" = "runtime" ]; then
2037 if [ "$VAL" = "yes" ]; then
2044 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2051 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2052 CFG_LARGEFILE="$VAL"
2058 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2065 if [ "$VAL" = "yes" ]; then
2066 CFG_OPENSSL="linked"
2072 if [ "$VAL" = "yes" ]; then
2080 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ]; then
2081 CFG_XMLPATTERNS="yes"
2083 if [ "$VAL" = "no" ]; then
2084 CFG_XMLPATTERNS="no"
2091 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ]; then
2094 if [ "$VAL" = "no" ]; then
2102 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ]; then
2103 CFG_SCRIPTTOOLS="yes"
2105 if [ "$VAL" = "no" ]; then
2106 CFG_SCRIPTTOOLS="no"
2113 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ]; then
2116 if [ "$VAL" = "no" ]; then
2124 if [ "$VAL" = "yes" ]; then
2125 CFG_DECLARATIVE="yes"
2127 if [ "$VAL" = "no" ]; then
2128 CFG_DECLARATIVE="no"
2135 if [ "$VAL" = "yes" ]; then
2136 CFG_DECLARATIVE_DEBUG="yes"
2138 if [ "$VAL" = "no" ]; then
2139 CFG_DECLARATIVE_DEBUG="no"
2146 [ "$VAL" = "auto" ] && VAL="yes"
2150 if [ "$VAL" = "yes" ]; then
2153 if [ "$VAL" = "no" ]; then
2161 if [ "$VAL" = "yes" ] || [ "$VAL" = "auto" ] || [ "$VAL" = "no" ]; then
2162 CFG_JAVASCRIPTCORE_JIT="$VAL"
2168 if [ "$VAL" = "yes" ]; then
2169 OPT_CONFIRM_LICENSE="$VAL"
2175 if [ "$VAL" = "yes" ]; then
2181 sql-*|gfx-*|decoration-*|kbd-*|mouse-*|imageformat-*)
2182 # if Qt style options were used, $VAL can be "no", "qt", or "plugin"
2183 # if autoconf style options were used, $VAL can be "yes" or "no"
2184 [ "$VAL" = "yes" ] && VAL=qt
2185 # now $VAL should be "no", "qt", or "plugin"... double-check
2186 if [ "$VAL" != "no" ] && [ "$VAL" != "qt" ] && [ "$VAL" != "plugin" ]; then
2189 # now $VAL is "no", "qt", or "plugin"
2191 VAL=`echo $VAR | sed "s,^[^-]*-\([^-]*\).*,\1,"`
2192 VAR=`echo $VAR | sed "s,^\([^-]*\).*,\1,"`
2194 # Grab the available values
2197 avail="$CFG_SQL_AVAILABLE"
2200 avail="$CFG_GFX_AVAILABLE"
2201 if [ "$OPT" = "plugin" ]; then
2202 avail="$CFG_GFX_PLUGIN_AVAILABLE"
2206 avail="$CFG_DECORATION_AVAILABLE"
2207 if [ "$OPT" = "plugin" ]; then
2208 avail="$CFG_DECORATION_PLUGIN_AVAILABLE"
2212 avail="$CFG_KBD_AVAILABLE"
2213 if [ "$OPT" = "plugin" ]; then
2214 avail="$CFG_KBD_PLUGIN_AVAILABLE"
2218 avail="$CFG_MOUSE_AVAILABLE"
2219 if [ "$OPT" = "plugin" ]; then
2220 avail="$CFG_MOUSE_PLUGIN_AVAILABLE"
2224 avail="$CFG_IMAGEFORMAT_PLUGIN_AVAILABLE"
2225 if [ "$OPT" != "plugin" ]; then
2226 # png is always built in
2232 echo "BUG: Unhandled type $VAR used in $CURRENT_OPT"
2236 # Check that that user's value is available.
2239 if [ "$VAL" = "$d" ]; then
2244 [ "$found" = yes ] || ERROR=yes
2246 if [ "$VAR" = "sql" ]; then
2247 # set the CFG_SQL_driver
2248 eval "CFG_SQL_$VAL=\$OPT"
2250 elif [ "$VAR" = "imageformat" ]; then
2251 [ "$OPT" = "qt" ] && OPT=yes
2252 VAL="`echo $VAL |tr a-z A-Z`"
2253 eval "CFG_$VAL=$OPT"
2257 if [ "$OPT" = "plugin" ] || [ "$OPT" = "qt" ]; then
2258 if [ "$OPT" = "plugin" ]; then
2259 [ "$VAR" = "decoration" ] && QMakeVar del "${VAR}s" "$VAL"
2260 [ "$VAR" = "decoration" ] && CFG_DECORATION_ON=`echo "${CFG_DECORATION_ON} " | sed "s,${VAL} ,,g"` && CFG_DECORATION_PLUGIN="$CFG_DECORATION_PLUGIN ${VAL}"
2261 [ "$VAR" = "kbd" ] && QMakeVar del "${VAR}s" "$VAL"
2262 [ "$VAR" = "kbd" ] && CFG_KBD_ON=`echo "${CFG_KBD_ON} " | sed "s,${VAL} ,,g"` && CFG_KBD_PLUGIN="$CFG_KBD_PLUGIN ${VAL}"
2263 [ "$VAR" = "mouse" ] && QMakeVar del "${VAR}s" "$VAL"
2264 [ "$VAR" = "mouse" ] && CFG_MOUSE_ON=`echo "${CFG_MOUSE_ON} " | sed "s,${VAL} ,,g"` && CFG_MOUSE_PLUGIN="$CFG_MOUSE_PLUGIN ${VAL}"
2265 [ "$VAR" = "gfx" ] && QMakeVar del "${VAR}s" "$VAL"
2266 [ "$VAR" = "gfx" ] && CFG_GFX_ON=`echo "${CFG_GFX_ON} " | sed "s,${VAL} ,,g"` && CFG_GFX_PLUGIN="${CFG_GFX_PLUGIN} ${VAL}"
2269 if [ "$VAR" = "gfx" ] || [ "$VAR" = "kbd" ] || [ "$VAR" = "decoration" ] || [ "$VAR" = "mouse" ]; then
2270 [ "$VAR" = "gfx" ] && CFG_GFX_ON="$CFG_GFX_ON $VAL"
2271 [ "$VAR" = "kbd" ] && CFG_KBD_ON="$CFG_KBD_ON $VAL"
2272 [ "$VAR" = "decoration" ] && CFG_DECORATION_ON="$CFG_DECORATION_ON $VAL"
2273 [ "$VAR" = "mouse" ] && CFG_MOUSE_ON="$CFG_MOUSE_ON $VAL"
2277 QMakeVar add "${VAR}s" "${VAL}"
2278 elif [ "$OPT" = "no" ]; then
2279 PLUG_VAR="${VAR}-plugin"
2280 if [ "$VAR" = "gfx" ] || [ "$VAR" = "kbd" ] || [ "$VAR" = "mouse" ]; then
2281 IN_VAR="${VAR}-driver"
2285 [ "$VAR" = "decoration" ] && CFG_DECORATION_ON=`echo "${CFG_DECORATION_ON} " | sed "s,${VAL} ,,g"`
2286 [ "$VAR" = "gfx" ] && CFG_GFX_ON=`echo "${CFG_GFX_ON} " | sed "s,${VAL} ,,g"`
2287 [ "$VAR" = "kbd" ] && CFG_KBD_ON=`echo "${CFG_KBD_ON} " | sed "s,${VAL} ,,g"`
2288 [ "$VAR" = "mouse" ] && CFG_MOUSE_ON=`echo "${CFG_MOUSE_ON} " | sed "s,${VAL} ,,g"`
2289 QMakeVar del "${IN_VAR}s" "$VAL"
2290 QMakeVar del "${PLUG_VAR}s" "$VAL"
2292 if [ "$ERROR" = "yes" ]; then
2293 echo "$CURRENT_OPT: unknown argument"
2298 if [ "$VAL" = "yes" ]; then
2299 if [ "$OPT_VERBOSE" = "$VAL" ]; then # takes two verboses to turn on qmake debugs
2300 QMAKE_SWITCHES="$QMAKE_SWITCHES -d"
2304 elif [ "$VAL" = "no" ]; then
2305 if [ "$OPT_VERBOSE" = "$VAL" ] && echo "$QMAKE_SWITCHES" | grep ' -d' >/dev/null 2>&1; then
2306 QMAKE_SWITCHES=`echo $QMAKE_SWITCHES | sed "s, -d,,"`
2315 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2322 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2329 D_FLAGS="$D_FLAGS \"$VAL\""
2332 I_FLAGS="$I_FLAGS -I\"${VAL}\""
2335 L_FLAGS="$L_FLAGS -L\"${VAL}\""
2338 RPATH_FLAGS="$RPATH_FLAGS \"${VAL}\""
2341 l_FLAGS="$l_FLAGS -l\"${VAL}\""
2344 if [ "$PLATFORM_MAC" = "yes" ]; then
2345 L_FLAGS="$L_FLAGS -F\"${VAL}\""
2346 I_FLAGS="$I_FLAGS -F\"${VAL}\""
2352 if [ "$PLATFORM_MAC" = "yes" ]; then
2353 l_FLAGS="$l_FLAGS -framework \"${VAL}\""
2362 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2369 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2370 CFG_PHONON_BACKEND="$VAL"
2376 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2377 CFG_MULTIMEDIA="$VAL"
2389 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2390 CFG_AUDIO_BACKEND="$VAL"
2396 if [ "$VAL" != "no" ]; then
2401 if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
2411 if [ "$UNKNOWN_OPT" = "yes" ]; then
2412 echo "${CURRENT_OPT}: invalid command-line switch"
2418 if [ "$CFG_QCONFIG" != "full" ] && [ "$CFG_QT3SUPPORT" = "yes" ]; then
2419 echo "Warning: '-qconfig $CFG_QCONFIG' will disable the qt3support library."
2422 if [ "$CFG_GUI" = "no" ]; then
2423 echo "Warning: -no-gui will disable the qt3support library."
2427 #disable Qt3Support for Lighthouse
2428 if [ "$PLATFORM_QPA" = "yes" ]; then
2432 # update QT_CONFIG to show our current predefined configuration
2433 case "$CFG_QCONFIG" in
2434 minimal|small|medium|large|full)
2435 # these are a sequence of increasing functionality
2436 for c in minimal small medium large full; do
2437 QT_CONFIG="$QT_CONFIG $c-config"
2438 [ "$CFG_QCONFIG" = $c ] && break
2442 # not known to be sufficient for anything
2443 if [ '!' -f "$relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h" ] && [ '!' -f `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"` ]; then
2444 echo >&2 "Error: configuration file not found:"
2445 echo >&2 " $relpath/src/corelib/global/qconfig-${CFG_QCONFIG}.h"
2447 echo >&2 " `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"`"
2452 #-------------------------------------------------------------------------------
2453 # build tree initialization
2454 #-------------------------------------------------------------------------------
2456 # where to find which..
2457 unixtests="$relpath/config.tests/unix"
2458 mactests="$relpath/config.tests/mac"
2459 symbiantests="$relpath/config.tests/symbian"
2460 WHICH="$unixtests/which.test"
2462 PERL=`$WHICH perl 2>/dev/null`
2464 # find out which awk we want to use, prefer gawk, then nawk, then regular awk
2466 for e in gawk nawk awk; do
2467 if "$WHICH" $e >/dev/null 2>&1 && ( $e -f /dev/null /dev/null ) >/dev/null 2>&1; then
2474 PERL="/usr/bin/perl"
2475 if "$WHICH" perl >/dev/null 2>&1 && ( perl /dev/null ) >/dev/null 2>&1; then
2479 ### skip this if the user just needs help...
2480 if [ "$OPT_HELP" != "yes" ]; then
2482 # is this a shadow build?
2483 if [ "$OPT_SHADOW" = "maybe" ]; then
2485 if [ "$relpath" != "$outpath" ] && [ '!' -f "$outpath/configure" ]; then
2486 if [ -h "$outpath" ]; then
2487 [ "$relpath" -ef "$outpath" ] || OPT_SHADOW=yes
2493 if [ "$OPT_SHADOW" = "yes" ]; then
2494 if [ -f "$relpath/.qmake.cache" -o -f "$relpath/src/corelib/global/qconfig.h" -o -f "$relpath/src/corelib/global/qconfig.cpp" ]; then
2495 echo >&2 "You cannot make a shadow build from a source tree containing a previous build."
2496 echo >&2 "Cannot proceed."
2499 [ "$OPT_VERBOSE" = "yes" ] && echo "Performing shadow build..."
2502 if [ "$PLATFORM_X11" = "yes" -o "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ] && [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
2504 echo "WARNING: -debug-and-release is not supported anymore on Qt/X11 and Qt for Embedded Linux"
2505 echo "Qt can be built in release mode with separate debug information, so"
2506 echo "-debug-and-release is not necessary anymore"
2510 # detect build style
2511 if [ "$CFG_DEBUG" = "auto" ]; then
2512 if [ "$PLATFORM_MAC" = "yes" -o "$XPLATFORM_MINGW" = "yes" ]; then
2513 CFG_DEBUG_RELEASE=yes
2515 elif [ "$CFG_DEV" = "yes" ]; then
2516 CFG_DEBUG_RELEASE=no
2519 CFG_DEBUG_RELEASE=no
2523 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
2524 QMAKE_CONFIG="$QMAKE_CONFIG build_all"
2527 if [ "$CFG_SILENT" = "yes" ]; then
2528 QMAKE_CONFIG="$QMAKE_CONFIG silent"
2531 # if the source tree is different from the build tree,
2532 # symlink or copy part of the sources
2533 if [ "$OPT_SHADOW" = "yes" ]; then
2534 echo "Preparing build tree..."
2536 if [ -z "$PERL" ]; then
2538 echo "You need perl in your PATH to make a shadow build."
2539 echo "Cannot proceed."
2543 [ -d "$outpath/bin" ] || mkdir -p "$outpath/bin"
2545 # symlink the qmake directory
2546 find "$relpath/qmake" | while read a; do
2547 my_a=`echo "$a" | sed "s,^${relpath}/,${outpath}/,"`
2548 if [ '!' -f "$my_a" ]; then
2549 if [ -d "$a" ]; then
2550 # directories are created...
2553 a_dir=`dirname "$my_a"`
2554 [ -d "$a_dir" ] || mkdir -p "$a_dir"
2555 # ... and files are symlinked
2556 case `basename "$a"` in
2557 *.o|*.d|GNUmakefile*|qmake)
2568 # make a syncqt script that can be used in the shadow
2569 rm -f "$outpath/bin/syncqt"
2570 if [ -x "$relpath/bin/syncqt" ]; then
2571 mkdir -p "$outpath/bin"
2572 echo "#!/bin/sh" >"$outpath/bin/syncqt"
2573 echo "perl \"$relpath/bin/syncqt\" -outdir \"$outpath\" \"$relpath\" \"\$@\"" >>"$outpath/bin/syncqt"
2574 chmod 755 "$outpath/bin/syncqt"
2577 for i in elf2e32_qtwrapper createpackage patch_capabilities; do
2578 rm -f "$outpath/bin/$i"
2579 if [ -x "$relpath/bin/$i" ]; then
2580 mkdir -p "$outpath/bin"
2581 echo "#!/bin/sh" >"$outpath/bin/$i"
2582 echo "QTDIR=\"$relpath\"; export QTDIR" >>"$outpath/bin/$i"
2583 echo "\"$relpath/bin/$i\" \"\$@\"" >>"$outpath/bin/$i"
2584 chmod 755 "$outpath/bin/$i"
2588 # symlink the mkspecs directory
2589 mkdir -p "$outpath/mkspecs"
2590 rm -rf "$outpath"/mkspecs/*
2591 ln -s "$relpath"/mkspecs/* "$outpath/mkspecs"
2592 rm -f "$outpath/mkspecs/default"
2596 rm -rf "$outpath/mkspecs/$1"
2597 find "$relpath/mkspecs/$1" -type d | sed "s,^$relpath,$outpath," | xargs mkdir -p
2598 find "$relpath/mkspecs/$1" -type f | sed "s,^$relpath/,," | while read f; do ln -s "$relpath/$f" "$outpath/$f"; done
2601 # Special case for mkspecs/features directory.
2602 # To be able to place .prf files into a shadow build directory,
2603 # we're creating links for files only. The directory structure is reproduced.
2604 ShadowMkspecs features
2606 # The modules dir is special, too.
2607 ShadowMkspecs modules
2609 # symlink the doc directory
2610 rm -rf "$outpath/doc"
2611 ln -s "$relpath/doc" "$outpath/doc"
2613 # make sure q3porting.xml can be found
2614 mkdir -p "$outpath/tools/porting/src"
2615 rm -f "$outpath/tools/porting/src/q3porting.xml"
2616 ln -s "$relpath/tools/porting/src/q3porting.xml" "$outpath/tools/porting/src"
2619 # symlink fonts to be able to run application from build directory
2620 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ] && [ ! -d "${outpath}/lib/fonts" ]; then
2621 if [ "$PLATFORM" = "$XPLATFORM" ]; then
2622 mkdir -p "${outpath}/lib"
2623 ln -s "${relpath}/lib/fonts" "${outpath}/lib/fonts"
2627 if [ "$OPT_FAST" = "auto" ]; then
2628 if [ '!' -z "$AWK" ] && [ "$CFG_DEV" = "yes" ]; then
2635 # find a make command
2636 if [ -z "$MAKE" ]; then
2638 for mk in gmake make; do
2639 if "$WHICH" $mk >/dev/null 2>&1; then
2644 if [ -z "$MAKE" ]; then
2645 echo >&2 "You don't seem to have 'make' or 'gmake' in your PATH."
2646 echo >&2 "Cannot proceed."
2649 # export MAKE, we need it later in the config.tests
2655 #-------------------------------------------------------------------------------
2656 # auto-detect all that hasn't been specified in the arguments
2657 #-------------------------------------------------------------------------------
2659 [ "$PLATFORM_QWS" = "yes" -a "$CFG_EMBEDDED" = "no" ] && CFG_EMBEDDED=auto
2660 if [ "$CFG_EMBEDDED" != "no" ]; then
2661 case "$UNAME_SYSTEM:$UNAME_RELEASE" in
2663 [ -z "$PLATFORM" ] && PLATFORM=qws/macx-generic-g++
2664 if [ -z "$XPLATFORM" ]; then
2665 [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic
2666 XPLATFORM="qws/macx-$CFG_EMBEDDED-g++"
2670 [ -z "$PLATFORM" ] && PLATFORM=qws/freebsd-generic-g++
2671 if [ -z "$XPLATFORM" ]; then
2672 [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic
2673 XPLATFORM="qws/freebsd-$CFG_EMBEDDED-g++"
2677 [ -z "$PLATFORM" ] && PLATFORM=qws/solaris-generic-g++
2678 if [ -z "$XPLATFORM" ]; then
2679 [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic
2680 XPLATFORM="qws/solaris-$CFG_EMBEDDED-g++"
2684 if [ -z "$PLATFORM" ]; then
2685 case "$UNAME_MACHINE" in
2687 PLATFORM=qws/linux-x86-g++
2690 PLATFORM=qws/linux-x86_64-g++
2693 PLATFORM=qws/linux-generic-g++
2697 if [ -z "$XPLATFORM" ]; then
2698 if [ "$CFG_EMBEDDED" = "auto" ]; then
2699 if [ -n "$CFG_ARCH" ]; then
2700 CFG_EMBEDDED=$CFG_ARCH
2702 case "$UNAME_MACHINE" in
2710 CFG_EMBEDDED=generic
2715 XPLATFORM="qws/linux-$CFG_EMBEDDED-g++"
2719 [ -z "$PLATFORM" ] && PLATFORM=unsupported/qws/qnx-generic-g++
2720 if [ -z "$XPLATFORM" ]; then
2721 [ "$CFG_EMBEDDED" = "auto" ] && CFG_EMBEDDED=generic
2722 XPLATFORM="unsupported/qws/qnx-$CFG_EMBEDDED-g++"
2726 if [ -z "$XPLATFORM" ]; then
2731 echo "Qt for Embedded Linux is not supported on this platform. Disabling."
2738 if [ -z "$PLATFORM" ]; then
2740 case "$UNAME_SYSTEM:$UNAME_RELEASE" in
2742 if [ "$PLATFORM_MAC" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
2744 # PLATFORM=macx-xcode
2751 #PLATFORM=aix-g++-64
2753 #PLATFORM=aix-xlc-64
2755 - Also available for AIX: aix-g++ aix-g++-64 aix-xlc-64
2765 # PLATFORM=dynix-g++
2771 PLATFORM=freebsd-g++
2773 - Also available for FreeBSD: freebsd-icc
2777 PLATFORM=openbsd-g++
2788 #PLATFORM=irix-cc-64
2790 - Also available for IRIX: irix-g++ irix-cc-64
2794 case "$UNAME_MACHINE" in
2796 #PLATFORM=hpuxi-acc-32
2797 PLATFORM=hpuxi-acc-64
2799 - Also available for HP-UXi: hpuxi-acc-32
2805 #PLATFORM=hpux-acc-64
2807 #PLATFORM=hpux-acc-o64
2809 - Also available for HP-UX: hpux-g++ hpux-acc-64 hpux-acc-o64
2818 - Also available for Tru64: tru64-g++
2822 case "$UNAME_MACHINE" in
2824 PLATFORM=linux-g++-64
2831 - Also available for Linux: linux-kcc linux-icc linux-cxx
2835 if [ "$XPLATFORM_MINGW" = "yes" ]; then
2836 PLATFORM="solaris-g++"
2838 #PLATFORM=solaris-g++
2840 #PLATFORM=solaris-cc64
2843 - Also available for Solaris: solaris-g++ solaris-cc-64
2846 ReliantUNIX-*:*|SINIX-*:*)
2847 PLATFORM=reliant-cds
2848 #PLATFORM=reliant-cds-64
2850 - Also available for Reliant UNIX: reliant-cds-64
2860 #PLATFORM=unixware-g++
2861 PLATFORM=unixware-cc
2863 - Also available for OpenUNIX: unixware-g++
2867 #PLATFORM=unixware-g++
2868 PLATFORM=unixware-cc
2870 - Also available for UnixWare: unixware-g++
2877 - Also available for SCO OpenServer: sco-g++
2881 PLATFORM=unixware-g++
2884 PLATFORM=unsupported/qnx-g++
2887 if [ "$OPT_HELP" != "yes" ]; then
2889 for p in $PLATFORMS; do
2890 echo " $relconf $* -platform $p"
2893 echo " The build script does not currently recognize all" >&2
2894 echo " platforms supported by Qt." >&2
2895 echo " Rerun this script with a -platform option listed to" >&2
2896 echo " set the system/compiler combination you use." >&2
2903 if [ "$PLATFORM_QWS" = "yes" ]; then
2905 PLATFORMS=`find "$relpath/mkspecs/qws" | sed "s,$relpath/mkspecs/qws/,,"`
2907 PLATFORMS=`find "$relpath/mkspecs/" -type f | grep -v qws | sed "s,$relpath/mkspecs/qws/,,"`
2910 [ -z "$XPLATFORM" ] && XPLATFORM="$PLATFORM"
2912 case `basename "$XPLATFORM"` in win32-g++*) XPLATFORM_MINGW=yes;; esac
2913 case "$XPLATFORM" in *symbian*) XPLATFORM_SYMBIAN=yes;; esac
2914 case "$XPLATFORM" in symbian-sbsv2) XPLATFORM_SYMBIAN_SBSV2=yes;; esac
2916 if [ -d "$PLATFORM" ]; then
2917 QMAKESPEC="$PLATFORM"
2919 QMAKESPEC="$relpath/mkspecs/${PLATFORM}"
2921 if [ -d "$XPLATFORM" ]; then
2922 XQMAKESPEC="$XPLATFORM"
2924 XQMAKESPEC="$relpath/mkspecs/${XPLATFORM}"
2926 if [ "$PLATFORM" != "$XPLATFORM" ]; then
2927 QT_CROSS_COMPILE=yes
2928 QMAKE_CONFIG="$QMAKE_CONFIG cross_compile"
2931 if [ "$PLATFORM_MAC" = "yes" ]; then
2932 if [ `basename $QMAKESPEC` = "macx-xcode" ] || [ `basename $XQMAKESPEC` = "macx-xcode" ]; then
2934 echo " Platform 'macx-xcode' should not be used when building Qt/Mac." >&2
2935 echo " Please build Qt/Mac with 'macx-g++', then if you would like to" >&2
2936 echo " use mac-xcode on your application code it can link to a Qt/Mac" >&2
2937 echo " built with 'macx-g++'" >&2
2943 # check specified platforms are supported
2944 if [ '!' -d "$QMAKESPEC" ]; then
2946 echo " The specified system/compiler is not supported:"
2950 echo " Please see the README file for a complete list."
2954 if [ '!' -d "$XQMAKESPEC" ]; then
2956 echo " The specified system/compiler is not supported:"
2960 echo " Please see the README file for a complete list."
2964 if [ '!' -f "${XQMAKESPEC}/qplatformdefs.h" ]; then
2966 echo " The specified system/compiler port is not complete:"
2968 echo " $XQMAKESPEC/qplatformdefs.h"
2970 echo " Please contact qt-bugs@trolltech.com."
2975 # now look at the configs and figure out what platform we are config'd for
2976 [ "$CFG_EMBEDDED" = "no" ] && [ "$PLATFORM_QPA" != "yes" ] \
2977 && [ '!' -z "`getQMakeConf \"$XQMAKESPEC\" | grep QMAKE_LIBS_X11 | awk '{print $3;}'`" ] \
2979 ### echo "$XQMAKESPEC" | grep mkspecs/qws >/dev/null 2>&1 && PLATFORM_QWS=yes
2981 if [ "$UNAME_SYSTEM" = "SunOS" ]; then
2982 # Solaris 2.5 and 2.6 have libposix4, which was renamed to librt for Solaris 7 and up
2983 if echo $UNAME_RELEASE | grep "^5\.[5|6]" >/dev/null 2>&1; then
2984 sed -e "s,-lrt,-lposix4," "$XQMAKESPEC/qmake.conf" > "$XQMAKESPEC/qmake.conf.new"
2985 mv "$XQMAKESPEC/qmake.conf.new" "$XQMAKESPEC/qmake.conf"
2989 #-------------------------------------------------------------------------------
2990 # determine the system architecture
2991 #-------------------------------------------------------------------------------
2992 if [ "$OPT_VERBOSE" = "yes" ]; then
2993 echo "Determining system architecture... ($UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_MACHINE)"
2996 if [ "$CFG_EMBEDDED" != "no" -a "$CFG_EMBEDDED" != "auto" ] && [ -n "$CFG_ARCH" ]; then
2997 if [ "$CFG_ARCH" != "$CFG_EMBEDDED" ]; then
2999 echo "You have specified a target architecture with -embedded and -arch."
3000 echo "The two architectures you have specified are different, so we can"
3001 echo "not proceed. Either set both to be the same, or only use -embedded."
3007 if [ "$CFG_RTOS_ENABLED" = "no" ]; then
3008 case `basename "$XPLATFORM"` in
3011 echo "You are not licensed for Qt for `basename $XPLATFORM`."
3013 echo "Please contact qt-info@nokia.com to upgrade your license to"
3014 echo "include this platform, or install the Qt Open Source Edition"
3015 echo "if you intend to develop free software."
3021 if [ -z "${CFG_HOST_ARCH}" ]; then
3022 case "$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_MACHINE" in
3024 CFG_HOST_ARCH=`echo ${UNAME_MACHINE} | sed -e 's,[-/].*$,,'`
3025 case "$CFG_HOST_ARCH" in
3030 if [ "$OPT_VERBOSE" = "yes" ]; then
3031 echo " GNU/Hurd ($CFG_HOST_ARCH)"
3035 CFG_HOST_ARCH=`uname -p`
3036 if [ "$OPT_VERBOSE" = "yes" ]; then
3037 echo " SGI ($CFG_HOST_ARCH)"
3041 case "$UNAME_MACHINE" in
3043 if [ "$OPT_VERBOSE" = "yes" ]; then
3044 echo " Sun SPARC (sparc)"
3051 if [ "$OPT_VERBOSE" = "yes" ]; then
3052 echo " 64-bit AMD 80x86 (x86_64)"
3054 CFG_HOST_ARCH=x86_64
3057 if [ "$OPT_VERBOSE" = "yes" ]; then
3058 echo " 32-bit Intel 80x86 (i386)"
3066 case "$UNAME_MACHINE" in
3068 if [ "$OPT_VERBOSE" = "yes" ]; then
3069 echo " 32-bit Apple PowerPC (powerpc)"
3073 if [ "$OPT_VERBOSE" = "yes" ]; then
3074 echo " 32-bit Intel 80x86 (i386)"
3078 CFG_HOST_ARCH=macosx
3081 if [ "$OPT_VERBOSE" = "yes" ]; then
3082 echo " 64-bit IBM PowerPC (powerpc)"
3084 CFG_HOST_ARCH=powerpc
3087 if [ "$OPT_VERBOSE" = "yes" ]; then
3088 echo " HP PA-RISC (parisc)"
3090 CFG_HOST_ARCH=parisc
3093 if [ "$OPT_VERBOSE" = "yes" ]; then
3094 echo " 32-bit Intel 80x86 (i386)"
3098 *:*:x86_64|*:*:amd64)
3099 if [ "$PLATFORM" = "linux-g++-32" -o "$PLATFORM" = "linux-icc-32" ]; then
3100 if [ "$OPT_VERBOSE" = "yes" ]; then
3101 echo " 32 bit on 64-bit AMD 80x86 (i386)"
3105 if [ "$OPT_VERBOSE" = "yes" ]; then
3106 echo " 64-bit AMD 80x86 (x86_64)"
3108 CFG_HOST_ARCH=x86_64
3112 if [ "$OPT_VERBOSE" = "yes" ]; then
3113 echo " 32-bit PowerPC (powerpc)"
3115 CFG_HOST_ARCH=powerpc
3118 if [ "$OPT_VERBOSE" = "yes" ]; then
3119 echo " 64-bit PowerPC (powerpc)"
3121 CFG_HOST_ARCH=powerpc
3124 if [ "$OPT_VERBOSE" = "yes" ]; then
3125 echo " IBM S/390 (s390)"
3130 if [ "$OPT_VERBOSE" = "yes" ]; then
3136 if [ "$OPT_VERBOSE" = "yes" ]; then
3137 echo " Linux on SPARC"
3142 case "$UNAME_MACHINE" in
3144 if [ "$OPT_VERBOSE" = "yes" ]; then
3145 echo " QNX on Intel 80x86 (i386)"
3152 if [ "$OPT_VERBOSE" = "yes" ]; then
3153 echo " Trying '$UNAME_MACHINE'..."
3155 CFG_HOST_ARCH="$UNAME_MACHINE"
3160 if [ "$PLATFORM" != "$XPLATFORM" -a "$CFG_EMBEDDED" != "no" ]; then
3161 if [ -n "$CFG_ARCH" ]; then
3162 CFG_EMBEDDED=$CFG_ARCH
3165 case "$CFG_EMBEDDED" in
3188 CFG_ARCH="$CFG_EMBEDDED"
3191 elif [ "$XPLATFORM_MINGW" = "yes" ]; then
3192 [ -z "$CFG_ARCH" ] && CFG_ARCH="windows"
3193 elif [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
3195 elif [ "$PLATFORM_MAC" = "yes" ] || [ -z "$CFG_ARCH" ]; then
3196 CFG_ARCH=$CFG_HOST_ARCH
3203 # previously, armv6 was a different arch
3209 if [ -d "$relpath/src/corelib/arch/$CFG_ARCH" ]; then
3210 if [ "$OPT_VERBOSE" = "yes" ]; then
3211 echo " '$CFG_ARCH' is supported"
3214 if [ "$OPT_VERBOSE" = "yes" ]; then
3215 echo " '$CFG_ARCH' is unsupported, using 'generic'"
3219 if [ "$CFG_HOST_ARCH" != "$CFG_ARCH" ]; then
3220 if [ -d "$relpath/src/corelib/arch/$CFG_HOST_ARCH" ]; then
3221 if [ "$OPT_VERBOSE" = "yes" ]; then
3222 echo " '$CFG_HOST_ARCH' is supported"
3225 if [ "$OPT_VERBOSE" = "yes" ]; then
3226 echo " '$CFG_HOST_ARCH' is unsupported, using 'generic'"
3228 CFG_HOST_ARCH=generic
3232 if [ "$OPT_VERBOSE" = "yes" ]; then
3233 echo "System architecture: '$CFG_ARCH'"
3234 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
3235 echo "Host architecture: '$CFG_HOST_ARCH'"
3239 #-------------------------------------------------------------------------------
3240 # tests that don't need qmake (must be run before displaying help)
3241 #-------------------------------------------------------------------------------
3243 if [ -z "$PKG_CONFIG" ]; then
3244 # See if PKG_CONFIG is set in the mkspec:
3245 PKG_CONFIG=`getQMakeConf "$XQMAKESPEC" | sed -n -e 's%PKG_CONFIG[^_].*=%%p' | tr '\n' ' '`
3247 if [ -z "$PKG_CONFIG" ]; then
3248 PKG_CONFIG=`"$WHICH" pkg-config 2>/dev/null`
3251 # Work out if we can use pkg-config
3252 if [ "$QT_CROSS_COMPILE" = "yes" ]; then
3253 if [ "$QT_FORCE_PKGCONFIG" = "yes" ]; then
3255 echo >&2 "You have asked to use pkg-config and are cross-compiling."
3256 echo >&2 "Please make sure you have a correctly set-up pkg-config"
3257 echo >&2 "environment!"
3259 if [ -z "$PKG_CONFIG_PATH" ]; then
3261 echo >&2 "Warning: PKG_CONFIG_PATH has not been set. This could mean"
3262 echo >&2 "the host compiler's .pc files will be used. This is probably"
3263 echo >&2 "not what you want."
3265 elif [ -z "$PKG_CONFIG_SYSROOT" ] && [ -z "$PKG_CONFIG_SYSROOT_DIR" ]; then
3267 echo >&2 "Warning: PKG_CONFIG_SYSROOT/PKG_CONFIG_SYSROOT_DIR has not"
3268 echo >&2 "been set. This means your toolchain's .pc files must contain"
3269 echo >&2 "the paths to the toolchain's libraries & headers. If configure"
3270 echo >&2 "tests are failing, please check these files."
3275 echo >&2 "You have not explicitly asked to use pkg-config and are cross-compiling."
3276 echo >&2 "pkg-config will not be used to automatically query cflag/lib parameters for"
3277 echo >&2 "dependencies"
3283 # process CFG_MAC_ARCHS
3284 if [ "$PLATFORM_MAC" = "yes" ]; then
3285 # check -arch arguments for validity.
3286 ALLOWED="x86 ppc x86_64 ppc64 i386"
3287 # Save the list so we can re-write it using only valid values
3288 CFG_MAC_ARCHS_IN="$CFG_MAC_ARCHS"
3290 for i in $CFG_MAC_ARCHS_IN
3292 if echo "$ALLOWED" | grep -w -v "$i" > /dev/null 2>&1; then
3293 echo "Unknown architecture: \"$i\". Supported architectures: x86[i386] ppc x86_64 ppc64";
3296 if [ "$i" = "i386" -o "$i" = "x86" ]; then
3297 # These are synonymous values
3298 # CFG_MAC_ARCHS requires x86 while GCC requires i386
3299 CFG_MAC_ARCHS="$CFG_MAC_ARCHS x86"
3300 MAC_CONFIG_TEST_COMMANDLINE="$MAC_CONFIG_TEST_COMMANDLINE -arch i386"
3302 CFG_MAC_ARCHS="$CFG_MAC_ARCHS $i"
3303 MAC_CONFIG_TEST_COMMANDLINE="$MAC_CONFIG_TEST_COMMANDLINE -arch $i"
3308 # pass on $CFG_SDK to the configure tests.
3309 if [ '!' -z "$CFG_SDK" ]; then
3310 MAC_CONFIG_TEST_COMMANDLINE="$MAC_CONFIG_TEST_COMMANDLINE -sdk $CFG_SDK"
3313 # find the default framework value
3314 if [ "$PLATFORM_MAC" = "yes" ] && [ "$PLATFORM" != "macx-xlc" ]; then
3315 if [ "$CFG_FRAMEWORK" = "auto" ]; then
3316 CFG_FRAMEWORK="$CFG_SHARED"
3317 elif [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_SHARED" = "no" ]; then
3319 echo "WARNING: Using static linking will disable the use of Mac frameworks."
3327 QMAKE_CONF_COMPILER=`getQMakeConf "$XQMAKESPEC" | grep "^QMAKE_CXX[^_A-Z0-9]" | sed "s,.* *= *\(.*\)$,\1," | tail -1`
3328 TEST_COMPILER="$CXX"
3330 [ -z "$TEST_COMPILER" ] && TEST_COMPILER=$QMAKE_CONF_COMPILER
3331 if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
3332 #for Symbian we don't need this checking
3333 if [ -z "$TEST_COMPILER" ]; then
3334 echo "ERROR: Cannot set the compiler for the configuration tests"
3339 if [ "$CFG_EMBEDDED" = "nacl" ]; then
3340 TEST_COMPILER="nacl-gcc"
3344 if [ -n "$CFG_SYSROOT" ]; then
3345 if compilerSupportsFlag --sysroot="$CFG_SYSROOT"; then
3346 [ "$OPT_VERBOSE" = "yes" ] && echo "Setting sysroot to: $CFG_SYSROOT"
3347 SYSROOT_FLAG="--sysroot=$CFG_SYSROOT"
3349 echo >&2 "The compiler doesn't support the --sysroot flag, I can't set the sysroot"
3353 export SYSROOT_FLAG # used by config.tests/unix/compile.test
3355 # auto-detect precompiled header support
3356 if [ "$CFG_PRECOMPILE" = "auto" ]; then
3357 if [ `echo "$CFG_MAC_ARCHS" | wc -w` -gt 1 ]; then
3359 elif "$unixtests/precomp.test" "$TEST_COMPILER" "$OPT_VERBOSE"; then
3364 elif [ "$CFG_PRECOMPILE" = "yes" ] && [ `echo "$CFG_MAC_ARCHS" | wc -w` -gt 1 ]; then
3366 echo "WARNING: Using universal binaries disables precompiled headers."
3371 #auto-detect DWARF2 on the mac
3372 if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_MAC_DWARF2" = "auto" ]; then
3373 if "$mactests/dwarf2.test" "$TEST_COMPILER" "$OPT_VERBOSE" "$mactests" ; then
3380 # auto-detect support for -Xarch on the mac
3381 if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_MAC_XARCH" = "auto" ]; then
3382 if "$mactests/xarch.test" "$TEST_COMPILER" "$OPT_VERBOSE" "$mactests" ; then
3389 # don't autodetect support for separate debug info on objcopy when
3390 # cross-compiling as lots of toolchains seems to have problems with this
3391 if [ "$QT_CROSS_COMPILE" = "yes" ] && [ "$CFG_SEPARATE_DEBUG_INFO" = "auto" ]; then
3392 CFG_SEPARATE_DEBUG_INFO="no"
3395 # auto-detect support for separate debug info in objcopy
3396 if [ "$CFG_SEPARATE_DEBUG_INFO" != "no" ] && [ "$CFG_SHARED" = "yes" ]; then
3397 TEST_COMPILER_CFLAGS=`getQMakeConf "$XQMAKESPEC" | sed -n -e 's%QMAKE_CFLAGS[^_=]*[+*]*=%%p' | tr '\n' ' '`
3398 TEST_COMPILER_CXXFLAGS=`getQMakeConf "$XQMAKESPEC" | sed -n -e 's%QMAKE_CXXFLAGS[^_=]*[+*]*=%%p' | tr '\n' ' '`
3399 TEST_OBJCOPY=`getQMakeConf "$XQMAKESPEC" | grep "^QMAKE_OBJCOPY" | sed "s%.* *= *\(.*\)$%\1%" | tail -1`
3400 COMPILER_WITH_FLAGS="$TEST_COMPILER $TEST_COMPILER_CXXFLAGS"
3401 COMPILER_WITH_FLAGS=`echo "$COMPILER_WITH_FLAGS" | sed -e "s%\\$\\$QMAKE_CFLAGS%$TEST_COMPILER_CFLAGS%g"`
3402 if "$unixtests/objcopy.test" "$COMPILER_WITH_FLAGS" "$TEST_OBJCOPY" "$OPT_VERBOSE"; then
3403 CFG_SEPARATE_DEBUG_INFO=no
3407 # binutils on HP-UX is buggy; default to no.
3408 CFG_SEPARATE_DEBUG_INFO=no
3411 CFG_SEPARATE_DEBUG_INFO=yes
3417 # auto-detect -fvisibility support
3418 if [ "$CFG_REDUCE_EXPORTS" = "auto" ]; then
3419 if "$unixtests/fvisibility.test" "$TEST_COMPILER" "$OPT_VERBOSE"; then
3420 CFG_REDUCE_EXPORTS=no
3422 CFG_REDUCE_EXPORTS=yes
3426 # detect the availability of the -Bsymbolic-functions linker optimization
3427 if [ "$CFG_REDUCE_RELOCATIONS" != "no" ]; then
3428 if "$unixtests/bsymbolic_functions.test" "$TEST_COMPILER" "$OPT_VERBOSE"; then
3429 CFG_REDUCE_RELOCATIONS=no
3431 CFG_REDUCE_RELOCATIONS=yes
3435 # auto-detect GNU make support
3436 if [ "$CFG_USE_GNUMAKE" = "auto" ] && "$MAKE" -v | grep "GNU Make" >/dev/null 2>&1; then
3440 # If -opengl wasn't specified, don't try to auto-detect
3441 if [ "$PLATFORM_QWS" = "yes" ] && [ "$CFG_OPENGL" = "auto" ]; then
3446 if [ "$PLATFORM_MAC" = "yes" ] && [ "$XPLATFORM_SYMBIAN" = "no" ]; then
3447 if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
3452 # find the default framework value
3453 if [ "$PLATFORM_MAC" = "yes" ] && [ "$PLATFORM" != "macx-xlc" ]; then
3454 if [ "$CFG_FRAMEWORK" = "auto" ]; then
3455 CFG_FRAMEWORK="$CFG_SHARED"
3456 elif [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_SHARED" = "no" ]; then
3458 echo "WARNING: Using static linking will disable the use of Mac frameworks."
3466 # Print a warning if configure was called with the 10.4u SDK option on Snow Leopard
3467 # with the default mkspec. The 10.4u SDK does not support gcc 4.2.
3468 if [ "$PLATFORM_MAC" = "yes" ] && [ '!' -z "$CFG_SDK" ]; then
3469 # get the darwin version. 10.0.0 and up means snow leopard.
3470 VERSION=`uname -r | tr '.' ' ' | awk '{print $1}'`
3471 if [ "$VERSION" -gt 9 ] && [ "$CFG_SDK" == "/Developer/SDKs/MacOSX10.4u.sdk/" ] && [ "$PLATFORM" == "macx-g++" ]; then
3473 echo "WARNING: The 10.4u SDK does not support gcc 4.2. Configure with -platform macx-g++40. "
3478 # x11 tests are done after qmake is built
3481 #setup the build parts
3482 if [ -z "$CFG_BUILD_PARTS" ]; then
3483 CFG_BUILD_PARTS="$QT_DEFAULT_BUILD_PARTS"
3485 # don't build tools by default when cross-compiling
3486 if [ "$PLATFORM" != "$XPLATFORM" ]; then
3487 CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, tools,,g"`
3490 for nobuild in $CFG_NOBUILD_PARTS; do
3491 CFG_BUILD_PARTS=`echo "$CFG_BUILD_PARTS" | sed "s, $nobuild,,g"`
3493 if echo $CFG_BUILD_PARTS | grep -v libs >/dev/null 2>&1; then
3495 # echo "WARNING: libs is a required part of the build."
3497 CFG_BUILD_PARTS="$CFG_BUILD_PARTS libs"
3500 #-------------------------------------------------------------------------------
3501 # post process QT_INSTALL_* variables
3502 #-------------------------------------------------------------------------------
3505 if [ -z "$QT_INSTALL_PREFIX" ]; then
3506 if [ "$CFG_DEV" = "yes" ]; then
3507 QT_INSTALL_PREFIX="$outpath" # In Development, we use sandboxed builds by default
3508 elif [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
3509 if [ "$PLATFORM_QPA" = "yes" ]; then
3510 QT_INSTALL_PREFIX="/usr/local/Trolltech/QtLighthouse-${QT_VERSION}"
3512 QT_INSTALL_PREFIX="/usr/local/Trolltech/QtEmbedded-${QT_VERSION}"
3514 if [ "$PLATFORM" != "$XPLATFORM" ]; then
3515 QT_INSTALL_PREFIX="${QT_INSTALL_PREFIX}-${CFG_ARCH}"
3517 elif [ -d "$EPOCROOT" ] && [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
3518 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
3519 QT_INSTALL_PREFIX="$EPOCROOT/epoc32/"
3520 QT_INSTALL_LIBS="$EPOCROOT/epoc32/release/armv5/lib/"
3523 QT_INSTALL_PREFIX="/usr/local/Trolltech/Qt-${QT_VERSION}" # the default install prefix is /usr/local/Trolltech/Qt-$QT_VERSION
3526 QT_INSTALL_PREFIX=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_PREFIX"`
3528 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
3529 [ -z "$QT_HOST_PREFIX" ] && QT_HOST_PREFIX="$QT_INSTALL_PREFIX"
3530 [ -z "$QT_INSTALL_DOCS" ] && QT_INSTALL_DOCS=
3531 [ -z "$QT_INSTALL_HEADERS" ] && QT_INSTALL_HEADERS=
3532 [ -z "$QT_INSTALL_LIBS" ] && QT_INSTALL_LIBS=
3533 [ -z "$QT_INSTALL_BINS" ] && QT_INSTALL_BINS=
3534 [ -z "$QT_INSTALL_PLUGINS" ] && QT_INSTALL_PLUGINS="\\\\resource\\\\qt$QT_LIBINFIX\\\\plugins"
3535 [ -z "$QT_INSTALL_IMPORTS" ] && QT_INSTALL_IMPORTS="\\\\resource\\\\qt$QT_LIBINFIX\\\\imports"
3536 [ -z "$QT_INSTALL_DATA" ] && QT_INSTALL_DATA=
3537 [ -z "$QT_INSTALL_TRANSLATIONS" ] && QT_INSTALL_TRANSLATIONS="\\\\resource\\\\qt$QT_LIBINFIX\\\\translations"
3538 [ -z "$QT_INSTALL_SETTINGS" ] && QT_INSTALL_SETTINGS=
3539 [ -z "$QT_INSTALL_EXAMPLES" ] && QT_INSTALL_EXAMPLES=
3540 [ -z "$QT_INSTALL_DEMOS" ] && QT_INSTALL_DEMOS=
3543 if [ -z "$QT_INSTALL_DOCS" ]; then #default
3544 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3545 if [ "$PLATFORM_MAC" = "yes" ]; then
3546 QT_INSTALL_DOCS="/Developer/Documentation/Qt"
3549 [ -z "$QT_INSTALL_DOCS" ] && QT_INSTALL_DOCS="$QT_INSTALL_PREFIX/doc" #fallback
3552 QT_INSTALL_DOCS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DOCS"`
3555 if [ -z "$QT_INSTALL_HEADERS" ]; then #default
3556 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3557 if [ "$PLATFORM_MAC" = "yes" ]; then
3558 if [ "$CFG_FRAMEWORK" = "yes" ]; then
3563 [ -z "$QT_INSTALL_HEADERS" ] && QT_INSTALL_HEADERS="$QT_INSTALL_PREFIX/include"
3566 QT_INSTALL_HEADERS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_HEADERS"`
3569 if [ -z "$QT_INSTALL_LIBS" ]; then #default
3570 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3571 if [ "$PLATFORM_MAC" = "yes" ]; then
3572 if [ "$CFG_FRAMEWORK" = "yes" ]; then
3573 QT_INSTALL_LIBS="/Libraries/Frameworks"
3577 [ -z "$QT_INSTALL_LIBS" ] && QT_INSTALL_LIBS="$QT_INSTALL_PREFIX/lib" #fallback
3579 QT_INSTALL_LIBS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_LIBS"`
3582 if [ -z "$QT_INSTALL_BINS" ]; then #default
3583 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3584 if [ "$PLATFORM_MAC" = "yes" ]; then
3585 QT_INSTALL_BINS="/Developer/Applications/Qt"
3588 [ -z "$QT_INSTALL_BINS" ] && QT_INSTALL_BINS="$QT_INSTALL_PREFIX/bin" #fallback
3591 QT_INSTALL_BINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_BINS"`
3594 if [ -z "$QT_INSTALL_PLUGINS" ]; then #default
3595 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3596 if [ "$PLATFORM_MAC" = "yes" ]; then
3597 QT_INSTALL_PLUGINS="/Developer/Applications/Qt/plugins"
3600 [ -z "$QT_INSTALL_PLUGINS" ] && QT_INSTALL_PLUGINS="$QT_INSTALL_PREFIX/plugins" #fallback
3602 QT_INSTALL_PLUGINS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_PLUGINS"`
3605 if [ -z "$QT_INSTALL_IMPORTS" ]; then #default
3606 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3607 if [ "$PLATFORM_MAC" = "yes" ]; then
3608 QT_INSTALL_IMPORTS="/Developer/Applications/Qt/imports"
3611 [ -z "$QT_INSTALL_IMPORTS" ] && QT_INSTALL_IMPORTS="$QT_INSTALL_PREFIX/imports" #fallback
3613 QT_INSTALL_IMPORTS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_IMPORTS"`
3616 if [ -z "$QT_INSTALL_DATA" ]; then #default
3617 QT_INSTALL_DATA="$QT_INSTALL_PREFIX"
3619 QT_INSTALL_DATA=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DATA"`
3622 if [ -z "$QT_INSTALL_TRANSLATIONS" ]; then #default
3623 QT_INSTALL_TRANSLATIONS="$QT_INSTALL_PREFIX/translations"
3625 QT_INSTALL_TRANSLATIONS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_TRANSLATIONS"`
3628 if [ -z "$QT_INSTALL_SETTINGS" ]; then #default
3629 if [ "$PLATFORM_MAC" = "yes" ]; then
3630 QT_INSTALL_SETTINGS=/Library/Preferences/Qt
3632 QT_INSTALL_SETTINGS=/etc/xdg
3635 QT_INSTALL_SETTINGS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_SETTINGS"`
3638 if [ -z "$QT_INSTALL_EXAMPLES" ]; then #default
3639 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3640 if [ "$PLATFORM_MAC" = "yes" ]; then
3641 QT_INSTALL_EXAMPLES="/Developer/Examples/Qt"
3644 [ -z "$QT_INSTALL_EXAMPLES" ] && QT_INSTALL_EXAMPLES="$QT_INSTALL_PREFIX/examples" #fallback
3646 QT_INSTALL_EXAMPLES=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_EXAMPLES"`
3649 if [ -z "$QT_INSTALL_DEMOS" ]; then #default
3650 if [ "$CFG_PREFIX_INSTALL" = "no" ]; then
3651 if [ "$PLATFORM_MAC" = "yes" ]; then
3652 QT_INSTALL_DEMOS="/Developer/Examples/Qt/Demos"
3655 [ -z "$QT_INSTALL_DEMOS" ] && QT_INSTALL_DEMOS="$QT_INSTALL_PREFIX/demos"
3657 QT_INSTALL_DEMOS=`"$relpath/config.tests/unix/makeabs" "$QT_INSTALL_DEMOS"`
3660 #-------------------------------------------------------------------------------
3661 # help - interactive parts of the script _after_ this section please
3662 #-------------------------------------------------------------------------------
3664 # next, emit a usage message if something failed.
3665 if [ "$OPT_HELP" = "yes" ]; then
3666 [ "x$ERROR" = "xyes" ] && echo
3667 if [ "$CFG_NIS" = "no" ]; then
3674 if [ "$CFG_CUPS" = "no" ]; then
3681 if [ "$CFG_ICONV" = "no" ]; then
3688 if [ "$CFG_LARGEFILE" = "no" ]; then
3695 if [ "$CFG_STL" = "auto" ] || [ "$CFG_STL" = "yes" ]; then
3702 if [ "$CFG_IPV6" = "auto" ]; then
3706 if [ "$CFG_PRECOMPILE" = "auto" ] || [ "$CFG_PRECOMPILE" = "no" ]; then
3715 Usage: $relconf [-h] [-prefix <dir>] [-prefix-install] [-bindir <dir>] [-libdir <dir>]
3716 [-docdir <dir>] [-headerdir <dir>] [-plugindir <dir> ] [-importdir <dir>] [-datadir <dir>]
3717 [-translationdir <dir>] [-sysconfdir <dir>] [-examplesdir <dir>]
3718 [-demosdir <dir>] [-buildkey <key>] [-release] [-debug]
3719 [-debug-and-release] [-developer-build] [-shared] [-static] [-no-fast] [-fast] [-no-largefile]
3720 [-largefile] [-no-exceptions] [-exceptions] [-no-accessibility]
3721 [-accessibility] [-no-stl] [-stl] [-no-sql-<driver>] [-sql-<driver>]
3722 [-plugin-sql-<driver>] [-system-sqlite] [-no-qt3support] [-qt3support]
3723 [-platform] [-D <string>] [-I <string>] [-L <string>] [-help]
3724 [-qt-zlib] [-system-zlib] [-no-gif] [-no-libtiff] [-qt-libtiff] [-system-libtiff]
3725 [-no-libpng] [-qt-libpng] [-system-libpng] [-no-libmng] [-qt-libmng]
3726 [-system-libmng] [-no-libjpeg] [-qt-libjpeg] [-system-libjpeg] [-make <part>]
3727 [-nomake <part>] [-R <string>] [-l <string>] [-no-rpath] [-rpath] [-continue]
3728 [-verbose] [-v] [-silent] [-no-nis] [-nis] [-no-cups] [-cups] [-no-iconv]
3729 [-iconv] [-no-pch] [-pch] [-no-dbus] [-dbus] [-dbus-linked] [-no-gui]
3730 [-no-separate-debug-info] [-no-mmx] [-no-3dnow] [-no-sse] [-no-sse2]
3731 [-no-sse3] [-no-ssse3] [-no-sse4.1] [-no-sse4.2] [-no-avx] [-no-neon]
3732 [-qtnamespace <namespace>] [-qtlibinfix <infix>] [-separate-debug-info] [-armfpa]
3733 [-no-optimized-qmake] [-optimized-qmake] [-no-xmlpatterns] [-xmlpatterns]
3734 [-no-multimedia] [-multimedia] [-no-phonon] [-phonon] [-no-phonon-backend] [-phonon-backend]
3735 [-no-media-backend] [-media-backend] [-no-audio-backend] [-audio-backend]
3736 [-no-openssl] [-openssl] [-openssl-linked]
3737 [-no-gtkstyle] [-gtkstyle] [-no-svg] [-svg] [-no-webkit] [-webkit] [-webkit-debug]
3738 [-no-javascript-jit] [-javascript-jit]
3739 [-no-script] [-script] [-no-scripttools] [-scripttools]
3740 [-no-declarative] [-declarative] [-no-declarative-debug] [-declarative-debug]
3741 [-no-location] [-location]
3742 [additional platform specific options (see below)]
3745 Installation options:
3747 -qpa ................ This will enable the QPA build.
3748 QPA is a window system agnostic implementation of Qt.
3750 These are optional, but you may specify install directories.
3752 -prefix <dir> ...... This will install everything relative to <dir>
3753 (default $QT_INSTALL_PREFIX)
3755 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
3758 -hostprefix [dir] .. Tools and libraries needed when developing
3759 applications are installed in [dir]. If [dir] is
3760 not given, the current build directory will be used.
3765 * -prefix-install .... Force a sandboxed "local" installation of
3766 Qt. This will install into
3767 $QT_INSTALL_PREFIX, if this option is
3768 disabled then some platforms will attempt a
3769 "system" install by placing default values to
3770 be placed in a system location other than
3773 You may use these to separate different parts of the install:
3775 -bindir <dir> ......... Executables will be installed to <dir>
3776 (default PREFIX/bin)
3777 -libdir <dir> ......... Libraries will be installed to <dir>
3778 (default PREFIX/lib)
3779 -docdir <dir> ......... Documentation will be installed to <dir>
3780 (default PREFIX/doc)
3781 -headerdir <dir> ...... Headers will be installed to <dir>
3782 (default PREFIX/include)
3783 -plugindir <dir> ...... Plugins will be installed to <dir>
3784 (default PREFIX/plugins)
3785 -importdir <dir> ...... Imports for QML will be installed to <dir>
3786 (default PREFIX/imports)
3787 -datadir <dir> ........ Data used by Qt programs will be installed to <dir>
3789 -translationdir <dir> . Translations of Qt programs will be installed to <dir>
3790 (default PREFIX/translations)
3791 -sysconfdir <dir> ..... Settings used by Qt programs will be looked for in <dir>
3792 (default PREFIX/etc/settings)
3793 -examplesdir <dir> .... Examples will be installed to <dir>
3794 (default PREFIX/examples)
3795 -demosdir <dir> ....... Demos will be installed to <dir>
3796 (default PREFIX/demos)
3798 You may use these options to turn on strict plugin loading.
3800 -buildkey <key> .... Build the Qt library and plugins using the specified
3801 <key>. When the library loads plugins, it will only
3802 load those that have a matching key.
3806 The defaults (*) are usually acceptable. A plus (+) denotes a default value
3807 that needs to be evaluated. If the evaluation succeeds, the feature is
3808 included. Here is a short explanation of each option:
3810 * -release ........... Compile and link Qt with debugging turned off.
3811 -debug ............. Compile and link Qt with debugging turned on.
3812 -debug-and-release . Compile and link two versions of Qt, with and without
3813 debugging turned on (Mac only).
3815 -developer-build ... Compile and link Qt with Qt developer options (including auto-tests exporting)
3817 -opensource ........ Compile and link the Open-Source Edition of Qt.
3818 -commercial ........ Compile and link the Commercial Edition of Qt.
3821 * -shared ............ Create and use shared Qt libraries.
3822 -static ............ Create and use static Qt libraries.
3824 * -no-fast ........... Configure Qt normally by generating Makefiles for all
3826 -fast .............. Configure Qt quickly by generating Makefiles only for
3827 library and subdirectory targets. All other Makefiles
3828 are created as wrappers, which will in turn run qmake.
3830 -no-largefile ...... Disables large file support.
3831 + -largefile ......... Enables Qt to access files larger than 4 GB.
3834 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
3841 if [ "$CFG_DBUS" = "no" ]; then
3850 $EXCN -no-exceptions ..... Disable exceptions on compilers that support it.
3851 $EXCY -exceptions ........ Enable exceptions on compilers that support it.
3853 -no-accessibility .. Do not compile Accessibility support.
3854 * -accessibility ..... Compile Accessibility support.
3856 $SHN -no-stl ............ Do not compile STL support.
3857 $SHY -stl ............... Compile STL support.
3859 -no-sql-<driver> ... Disable SQL <driver> entirely.
3860 -qt-sql-<driver> ... Enable a SQL <driver> in the QtSql library, by default
3862 -plugin-sql-<driver> Enable SQL <driver> as a plugin to be linked to
3865 Possible values for <driver>:
3866 [ $CFG_SQL_AVAILABLE ]
3868 -system-sqlite ..... Use sqlite from the operating system.
3870 -no-qt3support ..... Disables the Qt 3 support functionality.
3871 * -qt3support ........ Enables the Qt 3 support functionality.
3873 -no-xmlpatterns .... Do not build the QtXmlPatterns module.
3874 + -xmlpatterns ....... Build the QtXmlPatterns module.
3875 QtXmlPatterns is built if a decent C++ compiler
3876 is used and exceptions are enabled.
3878 -no-multimedia ..... Do not build the QtMultimedia module.
3879 + -multimedia ........ Build the QtMultimedia module.
3881 -no-audio-backend .. Do not build the platform audio backend into QtMultimedia.
3882 + -audio-backend ..... Build the platform audio backend into QtMultimedia if available.
3884 -no-phonon ......... Do not build the Phonon module.
3885 + -phonon ............ Build the Phonon module.
3886 Phonon is built if a decent C++ compiler is used.
3887 -no-phonon-backend.. Do not build the platform phonon plugin.
3888 + -phonon-backend..... Build the platform phonon plugin.
3890 -no-svg ............ Do not build the SVG module.
3891 + -svg ............... Build the SVG module.
3893 -no-webkit ......... Do not build the WebKit module.
3894 + -webkit ............ Build the WebKit module.
3895 WebKit is built if a decent C++ compiler is used.
3896 -webkit-debug ...... Build the WebKit module with debug symbols.
3898 -no-javascript-jit . Do not build the JavaScriptCore JIT compiler.
3899 + -javascript-jit .... Build the JavaScriptCore JIT compiler.
3901 -no-script ......... Do not build the QtScript module.
3902 + -script ............ Build the QtScript module.
3904 -no-scripttools .... Do not build the QtScriptTools module.
3905 + -scripttools ....... Build the QtScriptTools module.
3907 -no-declarative ..... Do not build the declarative module.
3908 + -declarative ....... Build the declarative module.
3910 -no-declarative-debug ..... Do not build the declarative debugging support.
3911 + -declarative-debug ....... Build the declarative debugging support.
3913 -no-location ....... Do not build the QtLocation module.
3914 + -location .......... Build the QtLocation module.
3916 -platform target ... The operating system and compiler you are building
3919 See the README file for a list of supported
3920 operating systems and compilers.
3923 if [ "${PLATFORM_QWS}" != "yes" -a "${PLATFORM_QPA}" != "yes" ]; then
3925 -graphicssystem <sys> Sets an alternate graphics system. Available options are:
3926 raster - Software rasterizer
3927 opengl - Rendering via OpenGL, Experimental!
3928 openvg - Rendering via OpenVG, Experimental!
3935 -no-mmx ............ Do not compile with use of MMX instructions.
3936 -no-3dnow .......... Do not compile with use of 3DNOW instructions.
3937 -no-sse ............ Do not compile with use of SSE instructions.
3938 -no-sse2 ........... Do not compile with use of SSE2 instructions.
3939 -no-sse3 ........... Do not compile with use of SSE3 instructions.
3940 -no-ssse3 .......... Do not compile with use of SSSE3 instructions.
3941 -no-sse4.1.......... Do not compile with use of SSE4.1 instructions.
3942 -no-sse4.2.......... Do not compile with use of SSE4.2 instructions.
3943 -no-avx ............ Do not compile with use of AVX instructions.
3944 -no-neon ........... Do not compile with use of NEON instructions.
3946 -qtnamespace <name> Wraps all Qt library code in 'namespace <name> {...}'.
3947 -qtlibinfix <infix> Renames all libQt*.so to libQt*<infix>.so.
3949 -D <string> ........ Add an explicit define to the preprocessor.
3950 -I <string> ........ Add an explicit include path.
3951 -L <string> ........ Add an explicit library path.
3953 -help, -h .......... Display this information.
3955 Third Party Libraries:
3957 -qt-zlib ........... Use the zlib bundled with Qt.
3958 + -system-zlib ....... Use zlib from the operating system.
3959 See http://www.gzip.org/zlib
3961 -no-gif ............ Do not compile GIF reading support.
3963 -no-libtiff ........ Do not compile TIFF support.
3964 -qt-libtiff ........ Use the libtiff bundled with Qt.
3965 + -system-libtiff .... Use libtiff from the operating system.
3966 See http://www.libtiff.org
3968 -no-libpng ......... Do not compile PNG support.
3969 -qt-libpng ......... Use the libpng bundled with Qt.
3970 + -system-libpng ..... Use libpng from the operating system.
3971 See http://www.libpng.org/pub/png
3973 -no-libmng ......... Do not compile MNG support.
3974 -qt-libmng ......... Use the libmng bundled with Qt.
3975 + -system-libmng ..... Use libmng from the operating system.
3976 See http://www.libmng.com
3978 -no-libjpeg ........ Do not compile JPEG support.
3979 -qt-libjpeg ........ Use the libjpeg bundled with Qt.
3980 + -system-libjpeg .... Use libjpeg from the operating system.
3981 See http://www.ijg.org
3983 -no-openssl ........ Do not compile support for OpenSSL.
3984 + -openssl ........... Enable run-time OpenSSL support.
3985 -openssl-linked .... Enabled linked OpenSSL support.
3987 -ptmalloc .......... Override the system memory allocator with ptmalloc.
3992 -make <part> ....... Add part to the list of parts to be built at make time.
3993 ($QT_DEFAULT_BUILD_PARTS)
3994 -nomake <part> ..... Exclude part from the list of parts to be built.
3996 -R <string> ........ Add an explicit runtime library path to the Qt
3998 -l <string> ........ Add an explicit library.
4000 -no-rpath .......... Do not use the library install path as a runtime
4002 + -rpath ............. Link Qt libraries and executables using the library
4003 install path as a runtime library path. Equivalent
4004 to -R install_libpath
4006 -continue .......... Continue as far as possible if an error occurs.
4008 -verbose, -v ....... Print verbose information about each step of the
4011 -silent ............ Reduce the build output so that warnings and errors
4012 can be seen more easily.
4014 * -no-optimized-qmake ... Do not build qmake optimized.
4015 -optimized-qmake ...... Build qmake optimized.
4017 -no-gui ............ Don't build the Qt GUI library
4019 $NSN -no-nis ............ Do not compile NIS support.
4020 $NSY -nis ............... Compile NIS support.
4022 $CUN -no-cups ........... Do not compile CUPS support.
4023 $CUY -cups .............. Compile CUPS support.
4024 Requires cups/cups.h and libcups.so.2.
4026 $CIN -no-iconv .......... Do not compile support for iconv(3).
4027 $CIY -iconv ............. Compile support for iconv(3).
4029 $PHN -no-pch ............ Do not use precompiled header support.
4030 $PHY -pch ............... Use precompiled header support.
4032 $DBN -no-dbus ........... Do not compile the QtDBus module.
4033 $DBY -dbus .............. Compile the QtDBus module and dynamically load libdbus-1.
4034 -dbus-linked ....... Compile the QtDBus module and link to libdbus-1.
4036 -reduce-relocations ..... Reduce relocations in the libraries through extra
4037 linker optimizations (Qt/X11 and Qt for Embedded Linux only;
4038 experimental; needs GNU ld >= 2.18).
4041 if [ "$CFG_SEPARATE_DEBUG_INFO" = "auto" ]; then
4042 if [ "$QT_CROSS_COMPILE" = "yes" ]; then
4049 elif [ "$CFG_SEPARATE_DEBUG_INFO" = "yes" ]; then
4057 if [ "$PLATFORM_X11" = "yes" -o "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
4061 $SBN -no-separate-debug-info . Do not store debug information in a separate file.
4062 $SBY -separate-debug-info .... Strip debug information into a separate .debug file.
4068 if [ "$PLATFORM_X11" = "yes" ]; then
4069 if [ "$CFG_SM" = "no" ]; then
4076 if [ "$CFG_XSHAPE" = "no" ]; then
4083 if [ "$CFG_XVIDEO" = "no" ]; then
4090 if [ "$CFG_XINERAMA" = "no" ]; then
4097 if [ "$CFG_FONTCONFIG" = "no" ]; then
4104 if [ "$CFG_XCURSOR" = "no" ]; then
4111 if [ "$CFG_XFIXES" = "no" ]; then
4118 if [ "$CFG_XRANDR" = "no" ]; then
4125 if [ "$CFG_XRENDER" = "no" ]; then
4132 if [ "$CFG_MITSHM" = "no" ]; then
4139 if [ "$CFG_XINPUT" = "no" ]; then
4146 if [ "$CFG_XKB" = "no" ]; then
4153 if [ "$CFG_IM" = "no" ]; then
4164 -no-gtkstyle ....... Do not build the GTK theme integration.
4165 + -gtkstyle .......... Build the GTK theme integration.
4167 * -no-nas-sound ...... Do not compile in NAS sound support.
4168 -system-nas-sound .. Use NAS libaudio from the operating system.
4169 See http://radscan.com/nas.html
4171 -egl ............... Use EGL instead of GLX to manage contexts.
4172 When building for desktop OpenGL, this option will
4173 make Qt use EGL to manage contexts rather than the
4174 GLX, which is the default. Note: For OpenGL ES, EGL
4177 -no-opengl ......... Do not support OpenGL.
4178 + -opengl <api> ...... Enable OpenGL support.
4179 With no parameter, this will auto-detect the "best"
4180 OpenGL API to use. If desktop OpenGL is available, it
4181 will be used. Use desktop, es1, or es2 for <api>
4182 to force the use of the Desktop (OpenGL 1.x or 2.x),
4183 OpenGL ES 1.x Common profile, or 2.x APIs instead.
4185 -no-openvg ........ Do not support OpenVG.
4186 + -openvg ........... Enable OpenVG support.
4187 Requires EGL support, typically supplied by an OpenGL
4188 or other graphics implementation.
4190 $SMN -no-sm ............. Do not support X Session Management.
4191 $SMY -sm ................ Support X Session Management, links in -lSM -lICE.
4193 $SHN -no-xshape ......... Do not compile XShape support.
4194 $SHY -xshape ............ Compile XShape support.
4195 Requires X11/extensions/shape.h.
4197 $XVN -no-xvideo ......... Do not compile XVideo support.
4198 $XVY -xvideo ............ Compile XVideo support.
4199 Requires X11/extensions/Xv.h & Xvlib.h.
4201 $SHN -no-xsync .......... Do not compile XSync support.
4202 $SHY -xsync ............. Compile XSync support.
4203 Requires X11/extensions/sync.h.
4205 $XAN -no-xinerama ....... Do not compile Xinerama (multihead) support.
4206 $XAY -xinerama .......... Compile Xinerama support.
4207 Requires X11/extensions/Xinerama.h and libXinerama.
4208 By default, Xinerama support will be compiled if
4209 available and the shared libraries are dynamically
4212 $XCN -no-xcursor ........ Do not compile Xcursor support.
4213 $XCY -xcursor ........... Compile Xcursor support.
4214 Requires X11/Xcursor/Xcursor.h and libXcursor.
4215 By default, Xcursor support will be compiled if
4216 available and the shared libraries are dynamically
4219 $XFN -no-xfixes ......... Do not compile Xfixes support.
4220 $XFY -xfixes ............ Compile Xfixes support.
4221 Requires X11/extensions/Xfixes.h and libXfixes.
4222 By default, Xfixes support will be compiled if
4223 available and the shared libraries are dynamically
4226 $XZN -no-xrandr ......... Do not compile Xrandr (resize and rotate) support.
4227 $XZY -xrandr ............ Compile Xrandr support.
4228 Requires X11/extensions/Xrandr.h and libXrandr.
4230 $XRN -no-xrender ........ Do not compile Xrender support.
4231 $XRY -xrender ........... Compile Xrender support.
4232 Requires X11/extensions/Xrender.h and libXrender.
4234 $XMN -no-mitshm ......... Do not compile MIT-SHM support.
4235 $XMY -mitshm ............ Compile MIT-SHM support.
4236 Requires sys/ipc.h, sys/shm.h and X11/extensions/XShm.h
4238 $FCGN -no-fontconfig ..... Do not compile FontConfig (anti-aliased font) support.
4239 $FCGY -fontconfig ........ Compile FontConfig support.
4240 Requires fontconfig/fontconfig.h, libfontconfig,
4241 freetype.h and libfreetype.
4243 $XIN -no-xinput ......... Do not compile Xinput support.
4244 $XIY -xinput ............ Compile Xinput support. This also enabled tablet support
4245 which requires IRIX with wacom.h and libXi or
4246 XFree86 with X11/extensions/XInput.h and libXi.
4248 $XKN -no-xkb ............ Do not compile XKB (X KeyBoard extension) support.
4249 $XKY -xkb ............... Compile XKB support.
4254 if [ "$PLATFORM_MAC" = "yes" ]; then
4259 -Fstring ........... Add an explicit framework path.
4260 -fw string ......... Add an explicit framework.
4262 -cocoa ............. [Deprecated] Cocoa is now enabled by default.
4264 -carbon .............Build the Carbon version of Qt. 64-bit archs
4265 are not supported by carbon and will be built
4268 * -framework ......... Build Qt as a series of frameworks and
4269 link tools against those frameworks.
4270 -no-framework ...... Do not build Qt as a series of frameworks.
4272 * -dwarf2 ............ Enable dwarf2 debugging symbols.
4273 -no-dwarf2 ......... Disable dwarf2 debugging symbols.
4275 -universal ......... Equivalent to -arch "ppc x86"
4277 -arch <arch> ....... Build Qt for <arch>
4278 Example values for <arch>: x86 ppc x86_64 ppc64
4279 Multiple -arch arguments can be specified.
4281 -sdk <sdk> ......... Build Qt using Apple provided SDK <sdk>. This option requires gcc 4.
4282 To use a different SDK with gcc 3.3, set the SDKROOT environment variable.
4284 -harfbuzz .......... Use HarfBuzz to do text layout instead of Core Text when possible.
4285 It is only available to Cocoa builds.
4286 * -no-harfbuzz ....... Disable HarfBuzz on Mac. It can still be enabled by setting
4287 QT_ENABLE_HARFBUZZ environment variable.
4292 if [ "$PLATFORM_QWS" = "yes" ]; then
4294 Qt for Embedded Linux:
4296 -embedded <arch> .... This will enable the embedded build, you must have a
4297 proper license for this switch to work.
4298 Example values for <arch>: arm mips x86 generic
4302 if [ "$PLATFORM_QPA" = "yes" ]; then
4308 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
4311 -xplatform target ... The target platform when cross-compiling.
4313 -no-feature-<feature> Do not compile in <feature>.
4314 -feature-<feature> .. Compile in <feature>. The available features
4315 are described in src/corelib/global/qfeatures.txt
4317 -armfpa ............. Target platform uses the ARM-FPA floating point format.
4318 -no-armfpa .......... Target platform does not use the ARM-FPA floating point format.
4320 The floating point format is usually autodetected by configure. Use this
4321 to override the detected value.
4323 -little-endian ...... Target platform is little endian (LSB first).
4324 -big-endian ......... Target platform is big endian (MSB first).
4326 -host-little-endian . Host platform is little endian (LSB first).
4327 -host-big-endian .... Host platform is big endian (MSB first).
4329 You only need to specify the endianness when
4330 cross-compiling, otherwise the host
4331 endianness will be used.
4333 -no-freetype ........ Do not compile in Freetype2 support.
4334 -qt-freetype ........ Use the libfreetype bundled with Qt.
4335 * -system-freetype .... Use libfreetype from the operating system.
4336 See http://www.freetype.org/
4338 -qconfig local ...... Use src/corelib/global/qconfig-local.h rather than the
4339 default ($CFG_QCONFIG).
4341 -no-opengl .......... Do not support OpenGL.
4342 -opengl <api> ....... Enable OpenGL ES support
4343 With no parameter, this will attempt to auto-detect OpenGL ES 1.x
4344 or 2.x, or regular desktop OpenGL.
4345 Use es1 or es2 for <api> to override auto-detection.
4349 if [ "$PLATFORM_QWS" = "yes" ]; then
4352 -depths <list> ...... Comma-separated list of supported bit-per-pixel
4353 depths, from: 1, 4, 8, 12, 15, 16, 18, 24, 32 and 'all'.
4355 -qt-decoration-<style> ....Enable a decoration <style> in the QtGui library,
4356 by default all available decorations are on.
4357 Possible values for <style>: [ $CFG_DECORATION_AVAILABLE ]
4358 -plugin-decoration-<style> Enable decoration <style> as a plugin to be
4359 linked to at run time.
4360 Possible values for <style>: [ $CFG_DECORATION_PLUGIN_AVAILABLE ]
4361 -no-decoration-<style> ....Disable decoration <style> entirely.
4362 Possible values for <style>: [ $CFG_DECORATION_AVAILABLE ]
4364 -qt-gfx-<driver> ... Enable a graphics <driver> in the QtGui library.
4365 Possible values for <driver>: [ $CFG_GFX_AVAILABLE ]
4366 -plugin-gfx-<driver> Enable graphics <driver> as a plugin to be
4367 linked to at run time.
4368 Possible values for <driver>: [ $CFG_GFX_PLUGIN_AVAILABLE ]
4369 -no-gfx-<driver> ... Disable graphics <driver> entirely.
4370 Possible values for <driver>: [ $CFG_GFX_AVAILABLE ]
4372 -qt-kbd-<driver> ... Enable a keyboard <driver> in the QtGui library.
4373 Possible values for <driver>: [ $CFG_KBD_AVAILABLE ]
4375 -plugin-kbd-<driver> Enable keyboard <driver> as a plugin to be linked to
4377 Possible values for <driver>: [ $CFG_KBD_PLUGIN_AVAILABLE ]
4379 -no-kbd-<driver> ... Disable keyboard <driver> entirely.
4380 Possible values for <driver>: [ $CFG_KBD_AVAILABLE ]
4382 -qt-mouse-<driver> ... Enable a mouse <driver> in the QtGui library.
4383 Possible values for <driver>: [ $CFG_MOUSE_AVAILABLE ]
4384 -plugin-mouse-<driver> Enable mouse <driver> as a plugin to be linked to
4386 Possible values for <driver>: [ $CFG_MOUSE_PLUGIN_AVAILABLE ]
4387 -no-mouse-<driver> ... Disable mouse <driver> entirely.
4388 Possible values for <driver>: [ $CFG_MOUSE_AVAILABLE ]
4390 -iwmmxt ............ Compile using the iWMMXt instruction set
4391 (available on some XScale CPUs).
4395 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" -o "$PLATFORM_X11" = "yes" ]; then
4396 if [ "$CFG_GLIB" = "no" ]; then
4404 $GBN -no-glib ........... Do not compile Glib support.
4405 $GBY -glib .............. Compile Glib support.
4410 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
4413 Qt for Symbian only:
4414 -no-s60 ............ Do not compile in S60 support.
4415 + -s60 ............... Compile with support for the S60 UI Framework.
4416 -no-style-s60....... Disable s60 style
4417 + -qt-style-s60....... Enable s60 style in the Qt Library
4419 -no-usedeffiles .... Disable the usage of DEF files.
4420 * -usedeffiles ....... Enable the usage of DEF files.
4423 [ "x$ERROR" = "xyes" ] && exit 1
4428 # -----------------------------------------------------------------------------
4429 # LICENSING, INTERACTIVE PART
4430 # -----------------------------------------------------------------------------
4432 if [ "$PLATFORM_QWS" = "yes" ]; then
4433 Platform="Qt for Embedded Linux"
4434 elif [ "$PLATFORM_QPA" = "yes" ]; then
4435 Platform="Qt Lighthouse"
4436 elif [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
4437 Platform="Qt for Symbian"
4438 elif [ "$PLATFORM_MAC" = "yes" ]; then
4439 Platform="Qt for Mac OS X"
4440 elif [ "$XPLATFORM_MINGW" = "yes" ]; then
4441 Platform="Qt for Windows"
4442 elif [ '!' -z "`getQMakeConf \"$XQMAKESPEC\" | grep QMAKE_LIBS_X11 | awk '{print $3;}'`" ]; then
4444 Platform="Qt for Linux/X11"
4448 echo "This is the $Platform ${EditionString} Edition."
4451 if [ "$Edition" = "NokiaInternalBuild" ]; then
4452 echo "Detected -nokia-developer option"
4453 echo "Nokia employees and agents are allowed to use this software under"
4454 echo "the authority of Nokia Corporation and/or its subsidiary(-ies)"
4455 elif [ "$Edition" = "OpenSource" ]; then
4457 echo "You are licensed to use this software under the terms of"
4458 echo "the Lesser GNU General Public License (LGPL) versions 2.1."
4459 if [ -f "$relpath/LICENSE.GPL3" ]; then
4460 echo "You are also licensed to use this software under the terms of"
4461 echo "the GNU General Public License (GPL) versions 3."
4467 if [ "$OPT_CONFIRM_LICENSE" = "yes" ]; then
4468 echo "You have already accepted the terms of the $LicenseType license."
4471 if [ -f "$relpath/LICENSE.GPL3" ]; then
4472 echo "Type '3' to view the GNU General Public License version 3."
4474 echo "Type 'L' to view the Lesser GNU General Public License version 2.1."
4475 echo "Type 'yes' to accept this license offer."
4476 echo "Type 'no' to decline this license offer."
4478 echo $ECHO_N "Do you accept the terms of $affix license? $ECHO_C"
4482 if [ "$acceptance" = "yes" ] || [ "$acceptance" = "y" ]; then
4484 elif [ "$acceptance" = "no" ]; then
4485 echo "You are not licensed to use this software."
4488 elif [ "$acceptance" = "3" ]; then
4489 more "$relpath/LICENSE.GPL3"
4490 elif [ "$acceptance" = "L" ]; then
4491 more "$relpath/LICENSE.LGPL"
4494 elif [ "$Edition" = "Preview" ]; then
4495 TheLicense=`head -n 1 "$relpath/LICENSE.PREVIEW.COMMERCIAL"`
4498 if [ "$OPT_CONFIRM_LICENSE" = "yes" ]; then
4499 echo "You have already accepted the terms of the $LicenseType license."
4502 echo "You are licensed to use this software under the terms of"
4503 echo "the $TheLicense"
4505 echo "Type '?' to read the Preview License."
4506 echo "Type 'yes' to accept this license offer."
4507 echo "Type 'no' to decline this license offer."
4509 echo $ECHO_N "Do you accept the terms of the license? $ECHO_C"
4513 if [ "$acceptance" = "yes" ]; then
4515 elif [ "$acceptance" = "no" ] ;then
4516 echo "You are not licensed to use this software."
4519 elif [ "$acceptance" = "?" ]; then
4520 more "$relpath/LICENSE.PREVIEW.COMMERCIAL"
4523 elif [ "$Edition" != "OpenSource" ]; then
4524 if [ -n "$ExpiryDate" ]; then
4525 ExpiryDate=`echo $ExpiryDate | sed -e "s,-,,g" | tr -d "\n\r"`
4526 [ -z "$ExpiryDate" ] && ExpiryDate="0"
4527 Today=`date +%Y%m%d`
4528 if [ "$Today" -gt "$ExpiryDate" ]; then
4529 case "$LicenseType" in
4530 Commercial|Academic|Educational)
4531 if [ "$QT_PACKAGEDATE" -gt "$ExpiryDate" ]; then
4533 echo "NOTICE NOTICE NOTICE NOTICE"
4535 echo " Your support and upgrade period has expired."
4537 echo " You are no longer licensed to use this version of Qt."
4538 echo " Please contact qt-info@nokia.com to renew your support"
4539 echo " and upgrades for this license."
4541 echo "NOTICE NOTICE NOTICE NOTICE"
4546 echo "WARNING WARNING WARNING WARNING"
4548 echo " Your support and upgrade period has expired."
4550 echo " You may continue to use your last licensed release"
4551 echo " of Qt under the terms of your existing license"
4552 echo " agreement. But you are not entitled to technical"
4553 echo " support, nor are you entitled to use any more recent"
4554 echo " Qt releases."
4556 echo " Please contact qt-info@nokia.com to renew your"
4557 echo " support and upgrades for this license."
4559 echo "WARNING WARNING WARNING WARNING"
4566 echo "NOTICE NOTICE NOTICE NOTICE"
4568 echo " Your Evaluation license has expired."
4570 echo " You are no longer licensed to use this software. Please"
4571 echo " contact qt-info@nokia.com to purchase license, or install"
4572 echo " the Qt Open Source Edition if you intend to develop free"
4575 echo "NOTICE NOTICE NOTICE NOTICE"
4582 TheLicense=`head -n 1 "$outpath/LICENSE"`
4584 if [ "$OPT_CONFIRM_LICENSE" = "yes" ]; then
4585 echo "You have already accepted the terms of the $TheLicense."
4588 echo "You are licensed to use this software under the terms of"
4589 echo "the $TheLicense."
4591 echo "Type '?' to view the $TheLicense."
4592 echo "Type 'yes' to accept this license offer."
4593 echo "Type 'no' to decline this license offer."
4595 echo $ECHO_N "Do you accept the terms of the $TheLicense? $ECHO_C"
4599 if [ "$acceptance" = "yes" ]; then
4601 elif [ "$acceptance" = "no" ]; then
4602 echo "You are not licensed to use this software."
4605 else [ "$acceptance" = "?" ]
4606 more "$outpath/LICENSE"
4611 # this should be moved somewhere else
4614 AIX_VERSION=`uname -v`
4615 if [ "$AIX_VERSION" -lt "5" ]; then
4616 QMakeVar add QMAKE_LIBS_X11 -lbind
4623 #-------------------------------------------------------------------------------
4624 # generate qconfig.cpp
4625 #-------------------------------------------------------------------------------
4626 [ -d "$outpath/src/corelib/global" ] || mkdir -p "$outpath/src/corelib/global"
4628 LICENSE_USER_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_lcnsuser=$Licensee"`
4629 LICENSE_PRODUCTS_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_lcnsprod=$Edition"`
4630 PREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_INSTALL_PREFIX"`
4631 DOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_INSTALL_DOCS"`
4632 HEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_INSTALL_HEADERS"`
4633 LIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_INSTALL_LIBS"`
4634 BINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_INSTALL_BINS"`
4635 PLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_INSTALL_PLUGINS"`
4636 IMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_INSTALL_IMPORTS"`
4637 DATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_INSTALL_DATA"`
4638 TRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_INSTALL_TRANSLATIONS"`
4639 SETTINGS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_stngpath=$QT_INSTALL_SETTINGS"`
4640 EXAMPLES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_xmplpath=$QT_INSTALL_EXAMPLES"`
4641 DEMOS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_demopath=$QT_INSTALL_DEMOS"`
4643 TODAY=`date +%Y-%m-%d`
4644 cat > "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
4646 static const char qt_configure_licensee_str [256 + 12] = "$LICENSE_USER_STR";
4647 static const char qt_configure_licensed_products_str [256 + 12] = "$LICENSE_PRODUCTS_STR";
4649 /* Installation date */
4650 static const char qt_configure_installation [12+11] = "qt_instdate=$TODAY";
4654 if [ ! -z "$QT_HOST_PREFIX" ]; then
4655 HOSTPREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_HOST_PREFIX"`
4656 HOSTDOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_HOST_PREFIX/doc"`
4657 HOSTHEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_HOST_PREFIX/include"`
4658 HOSTLIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_HOST_PREFIX/lib"`
4659 HOSTBINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_HOST_PREFIX/bin"`
4660 HOSTPLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_HOST_PREFIX/plugins"`
4661 HOSTIMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_HOST_PREFIX/IMPORTS"`
4662 HOSTDATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_HOST_PREFIX"`
4663 HOSTTRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_HOST_PREFIX/translations"`
4664 HOSTSETTINGS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_stngpath=$QT_INSTALL_SETTINGS"`
4665 HOSTEXAMPLES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_xmplpath=$QT_INSTALL_EXAMPLES"`
4666 HOSTDEMOS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_demopath=$QT_INSTALL_DEMOS"`
4668 cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
4670 #if defined(QT_BOOTSTRAPPED) || defined(QT_BUILD_QMAKE)
4671 /* Installation Info */
4672 static const char qt_configure_prefix_path_str [256 + 12] = "$HOSTPREFIX_PATH_STR";
4673 static const char qt_configure_documentation_path_str[256 + 12] = "$HOSTDOCUMENTATION_PATH_STR";
4674 static const char qt_configure_headers_path_str [256 + 12] = "$HOSTHEADERS_PATH_STR";
4675 static const char qt_configure_libraries_path_str [256 + 12] = "$HOSTLIBRARIES_PATH_STR";
4676 static const char qt_configure_binaries_path_str [256 + 12] = "$HOSTBINARIES_PATH_STR";
4677 static const char qt_configure_plugins_path_str [256 + 12] = "$HOSTPLUGINS_PATH_STR";
4678 static const char qt_configure_imports_path_str [256 + 12] = "$HOSTIMPORTS_PATH_STR";
4679 static const char qt_configure_data_path_str [256 + 12] = "$HOSTDATA_PATH_STR";
4680 static const char qt_configure_translations_path_str [256 + 12] = "$HOSTTRANSLATIONS_PATH_STR";
4681 static const char qt_configure_settings_path_str [256 + 12] = "$HOSTSETTINGS_PATH_STR";
4682 static const char qt_configure_examples_path_str [256 + 12] = "$HOSTEXAMPLES_PATH_STR";
4683 static const char qt_configure_demos_path_str [256 + 12] = "$HOSTDEMOS_PATH_STR";
4684 #else // QT_BOOTSTRAPPED
4688 cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
4689 /* Installation Info */
4690 static const char qt_configure_prefix_path_str [256 + 12] = "$PREFIX_PATH_STR";
4691 static const char qt_configure_documentation_path_str[256 + 12] = "$DOCUMENTATION_PATH_STR";
4692 static const char qt_configure_headers_path_str [256 + 12] = "$HEADERS_PATH_STR";
4693 static const char qt_configure_libraries_path_str [256 + 12] = "$LIBRARIES_PATH_STR";
4694 static const char qt_configure_binaries_path_str [256 + 12] = "$BINARIES_PATH_STR";
4695 static const char qt_configure_plugins_path_str [256 + 12] = "$PLUGINS_PATH_STR";
4696 static const char qt_configure_imports_path_str [256 + 12] = "$IMPORTS_PATH_STR";
4697 static const char qt_configure_data_path_str [256 + 12] = "$DATA_PATH_STR";
4698 static const char qt_configure_translations_path_str [256 + 12] = "$TRANSLATIONS_PATH_STR";
4699 static const char qt_configure_settings_path_str [256 + 12] = "$SETTINGS_PATH_STR";
4700 static const char qt_configure_examples_path_str [256 + 12] = "$EXAMPLES_PATH_STR";
4701 static const char qt_configure_demos_path_str [256 + 12] = "$DEMOS_PATH_STR";
4704 if [ ! -z "$QT_HOST_PREFIX" ]; then
4705 cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
4706 #endif // QT_BOOTSTRAPPED
4711 cat >> "$outpath/src/corelib/global/qconfig.cpp.new" <<EOF
4712 /* strlen( "qt_lcnsxxxx" ) == 12 */
4713 #define QT_CONFIGURE_LICENSEE qt_configure_licensee_str + 12;
4714 #define QT_CONFIGURE_LICENSED_PRODUCTS qt_configure_licensed_products_str + 12;
4715 #define QT_CONFIGURE_PREFIX_PATH qt_configure_prefix_path_str + 12;
4716 #define QT_CONFIGURE_DOCUMENTATION_PATH qt_configure_documentation_path_str + 12;
4717 #define QT_CONFIGURE_HEADERS_PATH qt_configure_headers_path_str + 12;
4718 #define QT_CONFIGURE_LIBRARIES_PATH qt_configure_libraries_path_str + 12;
4719 #define QT_CONFIGURE_BINARIES_PATH qt_configure_binaries_path_str + 12;
4720 #define QT_CONFIGURE_PLUGINS_PATH qt_configure_plugins_path_str + 12;
4721 #define QT_CONFIGURE_IMPORTS_PATH qt_configure_imports_path_str + 12;
4722 #define QT_CONFIGURE_DATA_PATH qt_configure_data_path_str + 12;
4723 #define QT_CONFIGURE_TRANSLATIONS_PATH qt_configure_translations_path_str + 12;
4724 #define QT_CONFIGURE_SETTINGS_PATH qt_configure_settings_path_str + 12;
4725 #define QT_CONFIGURE_EXAMPLES_PATH qt_configure_examples_path_str + 12;
4726 #define QT_CONFIGURE_DEMOS_PATH qt_configure_demos_path_str + 12;
4729 # avoid unecessary rebuilds by copying only if qconfig.cpp has changed
4730 if cmp -s "$outpath/src/corelib/global/qconfig.cpp" "$outpath/src/corelib/global/qconfig.cpp.new"; then
4731 rm -f "$outpath/src/corelib/global/qconfig.cpp.new"
4733 [ -f "$outpath/src/corelib/global/qconfig.cpp" ] && chmod +w "$outpath/src/corelib/global/qconfig.cpp"
4734 mv "$outpath/src/corelib/global/qconfig.cpp.new" "$outpath/src/corelib/global/qconfig.cpp"
4735 chmod -w "$outpath/src/corelib/global/qconfig.cpp"
4738 # -----------------------------------------------------------------------------
4739 if [ "$LicenseType" = "Evaluation" ]; then
4740 EVALKEY=`"$relpath/config.tests/unix/padstring" 524 "qt_qevalkey=$LicenseKeyExt"`
4741 elif echo "$D_FLAGS" | grep QT_EVAL >/dev/null 2>&1; then
4742 EVALKEY=`"$relpath/config.tests/unix/padstring" 524 "qt_qevalkey="`
4745 if [ -n "$EVALKEY" ]; then
4746 rm -f "$outpath/src/corelib/global/qconfig_eval.cpp"
4747 cat > "$outpath/src/corelib/global/qconfig_eval.cpp" <<EOF
4748 /* Evaluation license key */
4749 static const volatile char qt_eval_key_data [512 + 12] = "$EVALKEY";
4751 chmod -w "$outpath/src/corelib/global/qconfig_eval.cpp"
4755 # -----------------------------------------------------------------------------
4757 # -----------------------------------------------------------------------------
4760 if [ -n "$PERL" ] && [ -x "$relpath/bin/syncqt" ]; then
4762 [ "$CFG_DEV" = "yes" ] && SYNCQT_OPTS="$SYNCQT_OPTS -check-includes"
4763 if [ "$OPT_SHADOW" = "yes" ]; then
4764 "$outpath/bin/syncqt" $SYNCQT_OPTS || exit 1
4765 elif [ "$CFG_DEV" = "yes" ] || [ ! -d $relpath/include ] || [ -d $relpath/.git ]; then
4766 QTDIR="$relpath" perl "$outpath/bin/syncqt" $SYNCQT_OPTS || exit 1
4771 # $2: optional transformation
4772 # relies on $QMAKESPEC, $COMPILER_CONF and $mkfile being set correctly, as the latter
4773 # is where the resulting variable is written to
4774 # Assumes that the optional transformation produces the same variable name for each hit
4775 setBootstrapVariable()
4777 getQMakeConf | $AWK '/^('"$1"')[^_A-Z0-9]/ { print $0; }' | ( [ -n "$2" ] && sed "$2" ; [ -z "$2" ] && cat ) | $AWK '
4783 valStart = index($0, "=") + 1
4786 if (substr($0, valStart - 2, 1) == "+") {
4790 variable = substr($0, 0, valStart - 2 - append)
4791 value = substr($0, valStart)
4792 gsub("[ \t]+", "", variable)
4793 gsub("^[ \t]+", "", value)
4794 gsub("[ \t]+$", "", value)
4796 if (append == 1 && length(combinedValue) > 0) {
4797 combinedValue = combinedValue " " value
4799 combinedValue = value
4803 if (length(combinedValue) > 0) {
4804 printf "%s = %s\n", variable, combinedValue
4810 if true; then ###[ '!' -f "$outpath/bin/qmake" ];
4811 echo "Creating qmake. Please wait..."
4814 QCONFIG_H="$outpath/src/corelib/global/qconfig.h"
4815 QMAKE_QCONFIG_H="${QCONFIG_H}.qmake"
4816 if [ -f "$QCONFIG_H" ]; then
4817 OLD_QCONFIG_H=$QCONFIG_H
4818 mv -f "$OLD_QCONFIG_H" "${OLD_QCONFIG_H}.old"
4821 # create temporary qconfig.h for compiling qmake, if it doesn't exist
4822 # when building qmake, we use #defines for the install paths,
4823 # however they are real functions in the library
4824 if [ '!' -f "$QMAKE_QCONFIG_H" ]; then
4825 mkdir -p "$outpath/src/corelib/global"
4826 [ -f "$QCONFIG_H" ] && chmod +w "$QCONFIG_H"
4827 echo "/* All features enabled while building qmake */" >"$QMAKE_QCONFIG_H"
4830 mv -f "$QMAKE_QCONFIG_H" "$QCONFIG_H"
4832 #mkspecs/default is used as a (gasp!) default mkspec so QMAKESPEC needn't be set once configured
4833 rm -rf mkspecs/default
4834 ln -s `echo $XQMAKESPEC | sed "s,^${relpath}/mkspecs/,,"` mkspecs/default
4836 for mkfile in GNUmakefile Makefile; do
4839 in_mkfile="${mkfile}.in"
4840 if [ "$mkfile" = "Makefile" ]; then
4841 # if which qmake >/dev/null 2>&1 && [ -f qmake/qmake.pro ]; then
4842 # (cd qmake && qmake) >/dev/null 2>&1 && continue
4844 in_mkfile="${mkfile}.unix"
4846 in_mkfile="$relpath/qmake/$in_mkfile"
4847 mkfile="$outpath/qmake/$mkfile"
4848 if [ -f "$mkfile" ]; then
4849 [ "$CFG_DEV" = "yes" ] && "$WHICH" chflags >/dev/null 2>&1 && chflags nouchg "$mkfile"
4852 [ -f "$in_mkfile" ] || continue
4854 echo "########################################################################" > "$mkfile"
4855 echo "## This file was autogenerated by configure, all changes will be lost ##" >> "$mkfile"
4856 echo "########################################################################" >> "$mkfile"
4859 EXTRA_CFLAGS="\$(QMAKE_CFLAGS)"
4860 EXTRA_CXXFLAGS="\$(QMAKE_CXXFLAGS)"
4861 EXTRA_LFLAGS="\$(QMAKE_LFLAGS)"
4863 if [ "$PLATFORM" = "irix-cc" ] || [ "$PLATFORM" = "irix-cc-64" ]; then
4864 EXTRA_LFLAGS="$EXTRA_LFLAGS -lm"
4867 [ -n "$CC" ] && echo "CC = $CC" >> "$mkfile"
4868 [ -n "$CXX" ] && echo "CXX = $CXX" >> "$mkfile"
4869 if [ "$CFG_SILENT" = "yes" ]; then
4870 [ -z "$CC" ] && setBootstrapVariable QMAKE_CC 's,QMAKE_CC.*=,CC=\@,'
4871 [ -z "$CXX" ] && setBootstrapVariable QMAKE_CXX 's,QMAKE_CXX.*=,CXX=\@,'
4873 [ -z "$CC" ] && setBootstrapVariable QMAKE_CC 's,QMAKE_CC,CC,'
4874 [ -z "$CXX" ] && setBootstrapVariable QMAKE_CXX 's,QMAKE_CXX,CXX,'
4876 setBootstrapVariable QMAKE_CFLAGS
4877 setBootstrapVariable QMAKE_CXXFLAGS 's,\$\$QMAKE_CFLAGS,\$(QMAKE_CFLAGS),'
4878 setBootstrapVariable QMAKE_LFLAGS
4880 if [ $QT_EDITION = "QT_EDITION_OPENSOURCE" ]; then
4881 EXTRA_CFLAGS="$EXTRA_CFLAGS -DQMAKE_OPENSOURCE_EDITION"
4882 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -DQMAKE_OPENSOURCE_EDITION"
4884 if [ "$CFG_RELEASE_QMAKE" = "yes" ]; then
4885 setBootstrapVariable QMAKE_CFLAGS_RELEASE
4886 setBootstrapVariable QMAKE_CXXFLAGS_RELEASE 's,\$\$QMAKE_CFLAGS_RELEASE,\$(QMAKE_CFLAGS_RELEASE),'
4887 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(QMAKE_CFLAGS_RELEASE)"
4888 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(QMAKE_CXXFLAGS_RELEASE)"
4889 elif [ "$CFG_DEBUG" = "yes" ]; then
4890 setBootstrapVariable QMAKE_CFLAGS_DEBUG
4891 setBootstrapVariable QMAKE_CXXFLAGS_DEBUG 's,\$\$QMAKE_CFLAGS_DEBUG,\$(QMAKE_CFLAGS_DEBUG),'
4892 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(QMAKE_CFLAGS_DEBUG)"
4893 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(QMAKE_CXXFLAGS_DEBUG)"
4896 if [ '!' -z "$RPATH_FLAGS" ] && [ '!' -z "`getQMakeConf \"$QMAKESPEC\" | $AWK '/QMAKE_(LFLAGS_)?RPATH/ {print $3;}'`" ]; then
4897 setBootstrapVariable "QMAKE_(LFLAGS_)?RPATH" 's,\$\$LITERAL_WHITESPACE, ,;s,QMAKE_RPATH,QMAKE_LFLAGS_RPATH,'
4898 for rpath in $RPATH_FLAGS; do
4899 EXTRA_LFLAGS="\$(QMAKE_LFLAGS_RPATH)\"$rpath\" $EXTRA_LFLAGS"
4902 if [ "$BUILD_ON_MAC" = "yes" ]; then
4903 echo "export MACOSX_DEPLOYMENT_TARGET = 10.4" >> "$mkfile"
4904 echo "CARBON_LFLAGS =-framework ApplicationServices" >>"$mkfile"
4905 echo "CARBON_CFLAGS =-fconstant-cfstrings" >>"$mkfile"
4906 EXTRA_LFLAGS="$EXTRA_LFLAGS \$(CARBON_LFLAGS)"
4907 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(CARBON_CFLAGS)"
4908 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(CARBON_CFLAGS)"
4909 EXTRA_OBJS="qsettings_mac.o qcore_mac.o"
4910 EXTRA_SRCS="\"$relpath/src/corelib/io/qsettings_mac.cpp\" \"$relpath/src/corelib/kernel/qcore_mac.cpp\""
4911 if echo "$CFG_MAC_ARCHS" | grep x86 > /dev/null 2>&1; then # matches both x86 and x86_64
4912 X86_CFLAGS="-arch i386"
4913 X86_LFLAGS="-arch i386"
4914 EXTRA_CFLAGS="$X86_CFLAGS $EXTRA_CFLAGS"
4915 EXTRA_CXXFLAGS="$X86_CFLAGS $EXTRA_CXXFLAGS"
4916 EXTRA_LFLAGS="$EXTRA_LFLAGS $X86_LFLAGS"
4918 if echo "$CFG_MAC_ARCHS" | grep ppc > /dev/null 2>&1; then # matches both ppc and ppc64
4919 PPC_CFLAGS="-arch ppc"
4920 PPC_LFLAGS="-arch ppc"
4921 EXTRA_CFLAGS="$PPC_CFLAGS $EXTRA_CFLAGS"
4922 EXTRA_CXXFLAGS="$PPC_CFLAGS $EXTRA_CXXFLAGS"
4923 EXTRA_LFLAGS="$EXTRA_LFLAGS $PPC_LFLAGS"
4925 if [ '!' -z "$CFG_SDK" ]; then
4926 echo "SDK_LFLAGS =-Wl,-syslibroot,$CFG_SDK" >>"$mkfile"
4927 echo "SDK_CFLAGS =-isysroot $CFG_SDK" >>"$mkfile"
4928 EXTRA_CFLAGS="$EXTRA_CFLAGS \$(SDK_CFLAGS)"
4929 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS \$(SDK_CFLAGS)"
4930 EXTRA_LFLAGS="$EXTRA_LFLAGS \$(SDK_LFLAGS)"
4933 [ "$CFG_EMBEDDED" != "no" ] && EXTRA_CFLAGS="$EXTRA_CFLAGS -DQWS"
4934 if [ '!' -z "$D_FLAGS" ]; then
4935 for DEF in $D_FLAGS; do
4936 EXTRA_CFLAGS="$EXTRA_CFLAGS \"-D${DEF}\""
4939 QMAKE_BIN_DIR="$QT_INSTALL_BINS"
4940 [ -z "$QMAKE_BIN_DIR" ] && QMAKE_BIN_DIR="${QT_INSTALL_PREFIX}/bin"
4941 QMAKE_DATA_DIR="$QT_INSTALL_DATA"
4942 [ -z "$QMAKE_DATA_DIR" ] && QMAKE_DATA_DIR="${QT_INSTALL_PREFIX}"
4944 adjrelpath=`echo "$relpath" | sed 's/ /\\\\\\\\ /g'`
4945 adjoutpath=`echo "$outpath" | sed 's/ /\\\\\\\\ /g'`
4946 adjqmakespec=`echo "$QMAKESPEC" | sed 's/ /\\\\\\\\ /g'`
4947 sed -e "s,@SOURCE_PATH@,$adjrelpath,g" -e "s,@BUILD_PATH@,$adjoutpath,g" \
4948 -e "s,@QMAKE_CFLAGS@,$EXTRA_CFLAGS,g" -e "s,@QMAKE_LFLAGS@,$EXTRA_LFLAGS,g" \
4949 -e "s,@QMAKE_CXXFLAGS@,$EXTRA_CXXFLAGS,g" \
4950 -e "s,@QT_INSTALL_BINS@,\$(INSTALL_ROOT)$QMAKE_BIN_DIR,g" \
4951 -e "s,@QT_INSTALL_DATA@,\$(INSTALL_ROOT)$QMAKE_DATA_DIR,g" \
4952 -e "s,@QMAKE_QTOBJS@,$EXTRA_OBJS,g" -e "s,@QMAKE_QTSRCS@,$EXTRA_SRCS,g" \
4953 -e "s,@QMAKESPEC@,$adjqmakespec,g" -e "s,@QT_VERSION@,$QT_VERSION,g" "$in_mkfile" >>"$mkfile"
4955 if "$WHICH" makedepend >/dev/null 2>&1 && grep 'depend:' "$mkfile" >/dev/null 2>&1; then
4956 (cd "$outpath/qmake" && "$MAKE" -f "$mkfile" depend) >/dev/null 2>&1
4957 sed "s,^.*/\([^/]*.o\):,\1:,g" "$mkfile" >"$mkfile.tmp"
4958 sed "s,$outpath,$adjoutpath,g" "$mkfile.tmp" >"$mkfile"
4963 QMAKE_BUILD_ERROR=no
4964 (cd "$outpath/qmake"; "$MAKE") || QMAKE_BUILD_ERROR=yes
4965 [ '!' -z "$QCONFIG_H" ] && mv -f "$QCONFIG_H" "$QMAKE_QCONFIG_H" #move qmake's qconfig.h to qconfig.h.qmake
4966 [ '!' -z "$OLD_QCONFIG_H" ] && mv -f "${OLD_QCONFIG_H}.old" "$OLD_QCONFIG_H" #put back qconfig.h
4967 [ "$QMAKE_BUILD_ERROR" = "yes" ] && exit 2
4970 #-------------------------------------------------------------------------------
4971 # tests that need qmake
4972 #-------------------------------------------------------------------------------
4974 # detect availability of float math.h functions
4975 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/floatmath "floatmath" $L_FLAGS $I_FLAGS $l_FLAGS; then
4976 CFG_USE_FLOATMATH=yes
4978 CFG_USE_FLOATMATH=no
4981 # detect mmx support
4982 if [ "${CFG_MMX}" = "auto" ]; then
4983 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/mmx "mmx" $L_FLAGS $I_FLAGS $l_FLAGS "-mmmx"; then
4990 # detect 3dnow support
4991 if [ "${CFG_3DNOW}" = "auto" ]; then
4992 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/3dnow "3dnow" $L_FLAGS $I_FLAGS $l_FLAGS "-m3dnow"; then
4999 # detect sse support
5000 if [ "${CFG_SSE}" = "auto" ]; then
5001 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sse "sse" $L_FLAGS $I_FLAGS $l_FLAGS "-msse"; then
5008 # detect sse2 support
5009 if [ "${CFG_SSE2}" = "auto" ]; then
5010 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sse2 "sse2" $L_FLAGS $I_FLAGS $l_FLAGS "-msse2"; then
5017 # detect sse3 support
5018 if [ "${CFG_SSE3}" = "auto" ]; then
5019 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sse3 "sse3" $L_FLAGS $I_FLAGS $l_FLAGS "-msse3"; then
5026 # detect ssse3 support
5027 if [ "${CFG_SSSE3}" = "auto" ]; then
5028 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/ssse3 "ssse3" $L_FLAGS $I_FLAGS $l_FLAGS "-mssse3"; then
5035 # detect sse4.1 support
5036 if [ "${CFG_SSE4_1}" = "auto" ]; then
5037 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sse4_1 "sse4_1" $L_FLAGS $I_FLAGS $l_FLAGS "-msse4.1"; then
5044 # detect sse4.2 support
5045 if [ "${CFG_SSE4_2}" = "auto" ]; then
5046 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sse4_2 "sse4_2" $L_FLAGS $I_FLAGS $l_FLAGS "-msse4.2"; then
5053 # detect avx support
5054 if [ "${CFG_AVX}" = "auto" ]; then
5055 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/avx "avx" $L_FLAGS $I_FLAGS $l_FLAGS "-mavx"; then
5062 # check iWMMXt support
5063 if [ "$CFG_IWMMXT" = "yes" ]; then
5064 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/iwmmxt "iwmmxt" $L_FLAGS $I_FLAGS $l_FLAGS "-mcpu=iwmmxt"
5065 if [ $? != "0" ]; then
5066 echo "The iWMMXt functionality test failed!"
5067 echo " Please make sure your compiler supports iWMMXt intrinsics!"
5072 # detect neon support
5073 if [ "$CFG_ARCH" = "arm" ] && [ "${CFG_NEON}" = "auto" ]; then
5074 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/neon "neon" $L_FLAGS $I_FLAGS $l_FLAGS "-mfpu=neon"; then
5081 [ "$XPLATFORM_MINGW" = "yes" ] && QMakeVar add styles "windowsxp windowsvista"
5083 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
5084 QMakeVar set styles "windows s60" #overwrite previous default
5088 if [ "$CFG_LARGEFILE" = auto ]; then
5091 if [ "$CFG_PHONON" = auto ]; then
5095 if test -z "$EPOCROOT"; then
5096 echo "Please export EPOCROOT. It should point to the sdk install dir"
5099 if test ! -d "$EPOCROOT/epoc32"; then
5100 echo "Could not find the 'epoc32' dir in your EPOCROOT."
5104 if [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
5105 # Raptor does not support configure tests.
5107 # the main commands needed to compile;
5108 (mkdir -p config.tests/symbian/rcomp
5109 cd config.tests/symbian/rcomp
5110 rm -f rcomp_test.rsg
5111 touch rcomp_test.rpp rcomp_test.rsc rcomp_test.rss
5112 rcomp -u -m045,046,047 -s./rcomp_test.rpp -o./rcomp_test.rsc -h./rcomp_test.rsg -i./rcomp_test.rss 2>&1 > /dev/null
5113 if test ! -f rcomp_test.rsg; then
5114 echo "Finding a working rcomp in your PATH failed."
5115 echo "Fatal error. Make sure you have the epoc tools working and in your PATH";
5120 # compile a simple main that uses printf
5121 if ! "$symbiantests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/symbian/simple "simple" $L_FLAGS $I_FLAGS $l_FLAGS
5123 echo "Testing your compiler failed. Could not compile a simple application."
5124 echo "Fatal error; Rerun configure with -verbose to get more details."
5131 if [ "$CFG_ZLIB" = "no" ]; then
5132 # Note: Qt no longer support builds without zlib
5133 # So we force a "no" to be "auto" here.
5134 # If you REALLY really need no zlib support, you can still disable
5135 # it by doing the following:
5136 # add "no-zlib" to mkspecs/qconfig.pri
5137 # #define QT_NO_COMPRESS (probably by adding to src/corelib/global/qconfig.h)
5139 # There's no guarantee that Qt will build under those conditions
5144 if [ "$CFG_ZLIB" = "auto" ]; then
5145 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/zlib "zlib" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5152 if [ "$CFG_LARGEFILE" = "auto" ]; then
5153 #Large files should be enabled for all Linux systems
5158 if [ "$CFG_S60" = "auto" ]; then
5159 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
5166 if [ "$CFG_QS60STYLE" = "auto" ]; then
5167 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
5174 if [ "$CFG_SYMBIAN_DEFFILES" = "auto" ]; then
5175 # elf2e32 crashes when using def files together with gcce.
5176 if [ "$XPLATFORM_SYMBIAN" = "yes" ] && [ "$CFG_DEV" = "no" ] && [ "$XPLATFORM" != "symbian-gcce" ]; then
5177 CFG_SYMBIAN_DEFFILES=yes
5179 CFG_SYMBIAN_DEFFILES=no
5183 # detect how jpeg should be built
5184 if [ "$CFG_JPEG" = "auto" ]; then
5185 if [ "$CFG_SHARED" = "yes" ]; then
5192 if [ "$CFG_LIBJPEG" = "auto" ]; then
5193 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/libjpeg "libjpeg" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5200 # detect how gif should be built
5201 if [ "$CFG_GIF" = "auto" ]; then
5202 if [ "$CFG_SHARED" = "yes" ]; then
5209 # detect how tiff should be built
5210 if [ "$CFG_TIFF" = "auto" ]; then
5211 if [ "$CFG_SHARED" = "yes" ]; then
5219 if [ "$CFG_LIBTIFF" = "auto" ]; then
5220 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/libtiff "libtiff" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5227 # detect how mng should be built
5228 if [ "$CFG_MNG" = "auto" ]; then
5229 if [ "$CFG_SHARED" = "yes" ]; then
5236 if [ "$CFG_LIBMNG" = "auto" ]; then
5237 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/libmng "libmng" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5245 if [ "$CFG_LIBPNG" = "auto" ]; then
5246 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/libpng "libpng" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5253 # detect accessibility
5254 if [ "$CFG_ACCESSIBILITY" = "auto" ]; then
5255 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
5256 # accessibility is currently unsupported
5257 CFG_ACCESSIBILITY=no
5259 CFG_ACCESSIBILITY=yes
5263 # auto-detect SQL-modules support
5264 for _SQLDR in $CFG_SQL_AVAILABLE; do
5267 if [ "$CFG_SQL_mysql" != "no" ]; then
5268 [ -z "$CFG_MYSQL_CONFIG" ] && CFG_MYSQL_CONFIG=`"$WHICH" mysql_config`
5269 if [ -x "$CFG_MYSQL_CONFIG" ]; then
5270 QT_CFLAGS_MYSQL=`$CFG_MYSQL_CONFIG --include 2>/dev/null`
5271 QT_LFLAGS_MYSQL_R=`$CFG_MYSQL_CONFIG --libs_r 2>/dev/null`
5272 QT_LFLAGS_MYSQL=`$CFG_MYSQL_CONFIG --libs 2>/dev/null`
5273 QT_MYSQL_VERSION=`$CFG_MYSQL_CONFIG --version 2>/dev/null`
5274 QT_MYSQL_VERSION_MAJOR=`echo $QT_MYSQL_VERSION | cut -d . -f 1`
5276 if [ -n "$QT_MYSQL_VERSION" ] && [ "$QT_MYSQL_VERSION_MAJOR" -lt 4 ]; then
5277 if [ "$CFG_SQL_mysql" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5278 echo "This version of MySql is not supported ($QT_MYSQL_VERSION)."
5279 echo " You need MySql 4 or higher."
5280 echo " If you believe this message is in error you may use the continue"
5281 echo " switch (-continue) to $0 to continue."
5286 QT_LFLAGS_MYSQL_R=""
5290 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 $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5291 QMakeVar add CONFIG use_libmysqlclient_r
5292 if [ "$CFG_SQL_mysql" = "auto" ]; then
5293 CFG_SQL_mysql=plugin
5295 QT_LFLAGS_MYSQL="$QT_LFLAGS_MYSQL_R"
5296 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 $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5297 if [ "$CFG_SQL_mysql" = "auto" ]; then
5298 CFG_SQL_mysql=plugin
5301 if [ "$CFG_SQL_mysql" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5302 echo "MySQL support cannot be enabled due to functionality tests!"
5303 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5304 echo " If you believe this message is in error you may use the continue"
5305 echo " switch (-continue) to $0 to continue."
5310 QT_LFLAGS_MYSQL_R=""
5318 if [ "$CFG_SQL_psql" != "no" ]; then
5319 # Be careful not to use native pg_config when cross building.
5320 if [ "$XPLATFORM_MINGW" != "yes" ] && "$WHICH" pg_config >/dev/null 2>&1; then
5321 QT_CFLAGS_PSQL=`pg_config --includedir 2>/dev/null`
5322 QT_LFLAGS_PSQL=`pg_config --libdir 2>/dev/null`
5324 [ -z "$QT_CFLAGS_PSQL" ] || QT_CFLAGS_PSQL="-I$QT_CFLAGS_PSQL"
5325 [ -z "$QT_LFLAGS_PSQL" ] || QT_LFLAGS_PSQL="-L$QT_LFLAGS_PSQL"
5326 # But, respect PSQL_LIBS if set
5327 [ -z "$PSQL_LIBS" ] || QT_LFLAGS_PSQL="$PSQL_LIBS"
5328 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 $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5329 if [ "$CFG_SQL_psql" = "auto" ]; then
5333 if [ "$CFG_SQL_psql" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5334 echo "PostgreSQL support cannot be enabled due to functionality tests!"
5335 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5336 echo " If you believe this message is in error you may use the continue"
5337 echo " switch (-continue) to $0 to continue."
5348 if [ "$CFG_SQL_odbc" != "no" ]; then
5349 if ( [ "$PLATFORM_MAC" != "yes" ] || [ "$XPLATFORM_MINGW" = "yes" ] ) && "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/odbc "ODBC" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5350 if [ "$CFG_SQL_odbc" = "auto" ]; then
5354 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/iodbc "iODBC" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5355 QT_LFLAGS_ODBC="-liodbc"
5356 if [ "$CFG_SQL_odbc" = "auto" ]; then
5360 if [ "$CFG_SQL_odbc" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5361 echo "ODBC support cannot be enabled due to functionality tests!"
5362 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5363 echo " If you believe this message is in error you may use the continue"
5364 echo " switch (-continue) to $0 to continue."
5374 if [ "$CFG_SQL_oci" != "no" ]; then
5375 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/oci "OCI" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5376 if [ "$CFG_SQL_oci" = "auto" ]; then
5380 if [ "$CFG_SQL_oci" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5381 echo "Oracle (OCI) support cannot be enabled due to functionality tests!"
5382 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5383 echo " If you believe this message is in error you may use the continue"
5384 echo " switch (-continue) to $0 to continue."
5393 if [ "$CFG_SQL_tds" != "no" ]; then
5394 [ -z "$SYBASE" ] || QT_LFLAGS_TDS="-L$SYBASE/lib"
5395 [ -z "$SYBASE_LIBS" ] || QT_LFLAGS_TDS="$QT_LFLAGS_TDS $SYBASE_LIBS"
5396 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/tds "TDS" $QT_LFLAGS_TDS $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5397 if [ "$CFG_SQL_tds" = "auto" ]; then
5401 if [ "$CFG_SQL_tds" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5402 echo "TDS support cannot be enabled due to functionality tests!"
5403 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5404 echo " If you believe this message is in error you may use the continue"
5405 echo " switch (-continue) to $0 to continue."
5414 if [ "$CFG_SQL_db2" != "no" ]; then
5415 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/db2 "DB2" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5416 if [ "$CFG_SQL_db2" = "auto" ]; then
5420 if [ "$CFG_SQL_db2" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5421 echo "ODBC support cannot be enabled due to functionality tests!"
5422 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5423 echo " If you believe this message is in error you may use the continue"
5424 echo " switch (-continue) to $0 to continue."
5433 if [ "$CFG_SQL_ibase" != "no" ]; then
5434 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/ibase "InterBase" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5435 if [ "$CFG_SQL_ibase" = "auto" ]; then
5436 CFG_SQL_ibase=plugin
5439 if [ "$CFG_SQL_ibase" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5440 echo "InterBase support cannot be enabled due to functionality tests!"
5441 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5442 echo " If you believe this message is in error you may use the continue"
5443 echo " switch (-continue) to $0 to continue."
5452 if [ "$CFG_SQL_sqlite2" != "no" ]; then
5453 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/sqlite2 "SQLite2" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5454 if [ "$CFG_SQL_sqlite2" = "auto" ]; then
5455 CFG_SQL_sqlite2=plugin
5458 if [ "$CFG_SQL_sqlite2" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5459 echo "SQLite2 support cannot be enabled due to functionality tests!"
5460 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5461 echo " If you believe this message is in error you may use the continue"
5462 echo " switch (-continue) to $0 to continue."
5471 if [ "$CFG_SQL_sqlite" = "auto" ]; then # the default
5472 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
5473 # sqlite on symbian is typically not build in Qt but deployed as a pre-existing sis file and should be marked as driver.
5474 # Configuration parameters should be set
5476 QT_LFLAGS_SQLITE=-lsqlite3
5477 QMAKE_CONFIG="$QMAKE_CONFIG system-sqlite"
5480 if [ "$CFG_SQL_sqlite" != "no" ]; then
5481 SQLITE_AUTODETECT_FAILED="no"
5482 if [ "$CFG_SQLITE" = "system" ]; then
5483 if [ -n "$PKG_CONFIG" ]; then
5484 QT_CFLAGS_SQLITE=`$PKG_CONFIG --cflags sqlite3 2>/dev/null`
5485 QT_LFLAGS_SQLITE=`$PKG_CONFIG --libs sqlite3 2>/dev/null`
5487 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 $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5488 if [ "$CFG_SQL_sqlite" = "auto" ]; then
5489 CFG_SQL_sqlite=plugin
5491 QMAKE_CONFIG="$QMAKE_CONFIG system-sqlite"
5493 SQLITE_AUTODETECT_FAILED="yes"
5496 elif [ -f "$relpath/src/3rdparty/sqlite/sqlite3.h" ]; then
5497 if [ "$CFG_SQL_sqlite" = "auto" ]; then
5498 CFG_SQL_sqlite=plugin
5501 SQLITE_AUTODETECT_FAILED="yes"
5505 if [ "$SQLITE_AUTODETECT_FAILED" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5506 echo "SQLite support cannot be enabled due to functionality tests!"
5507 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5508 echo " If you believe this message is in error you may use the continue"
5509 echo " switch (-continue) to $0 to continue."
5515 if [ "$OPT_VERBOSE" = "yes" ]; then
5516 echo "unknown SQL driver: $_SQLDR"
5522 # auto-detect NIS support
5523 if [ "$CFG_NIS" != "no" ]; then
5524 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/nis "NIS" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5527 if [ "$CFG_NIS" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5528 echo "NIS support cannot be enabled due to functionality tests!"
5529 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5530 echo " If you believe this message is in error you may use the continue"
5531 echo " switch (-continue) to $0 to continue."
5539 # auto-detect CUPS support
5540 if [ "$CFG_CUPS" != "no" ]; then
5541 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/cups "Cups" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5544 if [ "$CFG_CUPS" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5545 echo "Cups support cannot be enabled due to functionality tests!"
5546 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5547 echo " If you believe this message is in error you may use the continue"
5548 echo " switch (-continue) to $0 to continue."
5556 # auto-detect iconv(3) support
5557 if [ "$CFG_ICONV" != "no" ]; then
5558 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
5560 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" "$OPT_VERBOSE" "$relpath" "$outpath" "config.tests/unix/iconv" "POSIX iconv" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5562 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" "$OPT_VERBOSE" "$relpath" "$outpath" "config.tests/unix/sun-libiconv" "SUN libiconv" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5564 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" "$OPT_VERBOSE" "$relpath" "$outpath" "config.tests/unix/gnu-libiconv" "GNU libiconv" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
5567 if [ "$CFG_ICONV" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5568 echo "Iconv support cannot be enabled due to functionality tests!"
5569 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5570 echo " If you believe this message is in error you may use the continue"
5571 echo " switch (-continue) to $0 to continue."
5579 # auto-detect libdbus-1 support
5580 if [ "$CFG_DBUS" != "no" ]; then
5581 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --atleast-version="$MIN_DBUS_1_VERSION" dbus-1 2>/dev/null; then
5582 QT_CFLAGS_DBUS=`$PKG_CONFIG --cflags dbus-1 2>/dev/null`
5583 QT_LIBS_DBUS=`$PKG_CONFIG --libs dbus-1 2>/dev/null`
5585 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/dbus "D-Bus" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_DBUS $QT_LIBS_DBUS $MAC_CONFIG_TEST_COMMANDLINE; then
5586 [ "$CFG_DBUS" = "auto" ] && CFG_DBUS=yes
5587 QMakeVar set QT_CFLAGS_DBUS "$QT_CFLAGS_DBUS"
5588 QMakeVar set QT_LIBS_DBUS "$QT_LIBS_DBUS"
5590 if [ "$CFG_DBUS" = "auto" ]; then
5592 elif [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5593 # CFG_DBUS is "yes" or "linked" here
5595 echo "The QtDBus module cannot be enabled because libdbus-1 version $MIN_DBUS_1_VERSION was not found."
5596 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5597 echo " If you believe this message is in error you may use the continue"
5598 echo " switch (-continue) to $0 to continue."
5604 if [ "$CFG_MULTIMEDIA" = "auto" ]; then
5605 CFG_MULTIMEDIA="$CFG_GUI"
5608 if [ "$CFG_MULTIMEDIA" = "yes" ] && [ "$CFG_GUI" = "no" ]; then
5609 echo "QtMultimedia requested, but it can't be built without QtGui"
5613 # Generate a CRC of the namespace for using in constants for the Carbon port.
5614 # This should mean that you really *can* load two Qt's and have our custom
5615 # Carbon events work.
5616 if [ "$PLATFORM_MAC" = "yes" -a ! -z "$QT_NAMESPACE" ]; then
5617 QT_NAMESPACE_MAC_CRC=`"$mactests/crc.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/mac/crc $QT_NAMESPACE $L_FLAGS $I_FLAGS $l_FLAGS`
5620 # X11/QWS/Lighthouse
5621 if [ "$PLATFORM_X11" = "yes" -o "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
5623 # auto-detect Glib support
5624 if [ "$CFG_GLIB" != "no" ]; then
5625 if [ -n "$PKG_CONFIG" ]; then
5626 QT_CFLAGS_GLIB=`$PKG_CONFIG --cflags glib-2.0 gthread-2.0 2>/dev/null`
5627 QT_LIBS_GLIB=`$PKG_CONFIG --libs glib-2.0 gthread-2.0 2>/dev/null`
5629 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/glib "Glib" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_GLIB $QT_LIBS_GLIB $X11TESTS_FLAGS ; then
5631 QMakeVar set QT_CFLAGS_GLIB "$QT_CFLAGS_GLIB"
5632 QMakeVar set QT_LIBS_GLIB "$QT_LIBS_GLIB"
5634 if [ "$CFG_GLIB" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5635 echo "Glib support cannot be enabled due to functionality tests!"
5636 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5637 echo " If you believe this message is in error you may use the continue"
5638 echo " switch (-continue) to $0 to continue."
5646 if [ "$CFG_GUI" = "no" ]; then
5647 if [ "$CFG_PHONON" = "auto" ]; then
5650 if [ "$CFG_PHONON" != "no" ]; then
5651 echo "Phonon enabled, but GUI disabled."
5652 echo " You might need to either enable the GUI or disable Phonon"
5657 # Auto-detect GStreamer support (needed for Phonon)
5658 if [ "$CFG_PHONON" != "no" ]; then
5659 if [ "$CFG_GLIB" = "yes" -a "$CFG_GSTREAMER" != "no" ]; then
5660 if [ -n "$PKG_CONFIG" ]; then
5661 QT_CFLAGS_GSTREAMER=`$PKG_CONFIG --cflags gstreamer-0.10 gstreamer-plugins-base-0.10 2>/dev/null`
5662 QT_LIBS_GSTREAMER=`$PKG_CONFIG --libs gstreamer-0.10 gstreamer-plugins-base-0.10 2>/dev/null`
5664 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/gstreamer "GStreamer" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_GSTREAMER $QT_LIBS_GSTREAMER $X11TESTS_FLAGS; then
5666 QMakeVar set QT_CFLAGS_GSTREAMER "$QT_CFLAGS_GSTREAMER"
5667 QMakeVar set QT_LIBS_GSTREAMER "$QT_LIBS_GSTREAMER"
5669 if [ "$CFG_GSTREAMER" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5670 echo "Gstreamer support cannot be enabled due to functionality tests!"
5671 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5672 echo " If you believe this message is in error you may use the continue"
5673 echo " switch (-continue) to $0 to continue."
5679 elif [ "$CFG_GLIB" = "no" ]; then
5686 if [ "$CFG_PHONON" != "no" ]; then
5687 if [ "$CFG_PHONON_BACKEND" != "no" ]; then
5688 if [ "$CFG_GSTREAMER" = "yes" ]; then
5691 if [ "$CFG_PHONON" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5692 echo "Phonon support cannot be enabled due to functionality tests!"
5693 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5694 echo " If you believe this message is in error you may use the continue"
5695 echo " switch (-continue) to $0 to continue."
5706 # auto-detect icd support
5707 if [ "$CFG_GLIB" = "yes" -a "$CFG_ICD" != "no" ]; then
5708 if [ -n "$PKG_CONFIG" ]; then
5709 QT_CFLAGS_CONNSETTINGS=`$PKG_CONFIG --cflags connsettings icd2 2>/dev/null`
5710 QT_LIBS_CONNSETTINGS=`$PKG_CONFIG --libs connsettings icd2 2>/dev/null`
5712 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/icd "ICD" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_CONNSETTINGS $QT_LIBS_CONNSETTINGS; then
5713 [ "$CFG_ICD" = "auto" ] && CFG_ICD=yes
5714 QMakeVar set QT_CFLAGS_CONNSETTINGS "$QT_CFLAGS_CONNSETTINGS"
5715 QMakeVar set QT_LIBS_CONNSETTINGS "$QT_LIBS_CONNSETTINGS"
5717 if [ "$CFG_ICD" = "auto" ]; then
5719 elif [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5722 echo "The ICD Bearer Management plugin cannot be enabled because connsettings was not found."
5723 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5724 echo " If you believe this message is in error you may use the continue"
5725 echo " switch (-continue) to $0 to continue."
5729 elif [ "$CFG_GLIB" = "no" ]; then
5733 # auto-detect libicu support
5734 if [ "$CFG_ICU" != "no" ]; then
5735 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/icu "ICU" $L_FLAGS $I_FLAGS $l_FLAGS; then
5736 [ "$CFG_ICU" = "auto" ] && CFG_ICU=yes
5738 if [ "$CFG_ICU" = "auto" ]; then
5740 elif [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5743 echo "The ICU library support cannot be enabled."
5744 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5745 echo " If you believe this message is in error you may use the continue"
5746 echo " switch (-continue) to $0 to continue."
5752 # Auto-detect PulseAudio support
5753 if [ "$CFG_PULSEAUDIO" != "no" ]; then
5754 if [ -n "$PKG_CONFIG" ]; then
5755 QT_CFLAGS_PULSEAUDIO=`$PKG_CONFIG --cflags libpulse '>=' 0.9.10 libpulse-mainloop-glib 2>/dev/null`
5756 QT_LIBS_PULSEAUDIO=`$PKG_CONFIG --libs libpulse '>=' 0.9.10 libpulse-mainloop-glib 2>/dev/null`
5758 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/pulseaudio "PulseAudio" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_PULSEAUDIO $QT_LIBS_PULSEAUDIO $X11TESTS_FLAGS; then
5760 QMakeVar set QT_CFLAGS_PULSEAUDIO "$QT_CFLAGS_PULSEAUDIO"
5761 QMakeVar set QT_LIBS_PULSEAUDIO "$QT_LIBS_PULSEAUDIO"
5763 if [ "$CFG_PULSEAUDIO" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5764 echo "PulseAudio support cannot be enabled due to functionality tests!"
5765 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5766 echo " If you believe this message is in error you may use the continue"
5767 echo " switch (-continue) to $0 to continue."
5774 fi # X11/QWS/Lighthouse
5777 if [ "$PLATFORM_X11" = "yes" -a "$CFG_GUI" != "no" ]; then
5778 x11tests="$relpath/config.tests/x11"
5781 # work around broken X11 headers when using GCC 2.95 or later
5783 "$x11tests/notype.test" "$XQMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath" && NOTYPE=yes
5784 if [ $NOTYPE = "yes" ]; then
5785 QMakeVar add QMAKE_CXXFLAGS -fpermissive
5786 X11TESTS_FLAGS="$X11TESTS_FLAGS -fpermissive"
5789 # Check we actually have X11 :-)
5790 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xlib "XLib" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS
5791 if [ $? != "0" ]; then
5792 echo "Basic XLib functionality test failed!"
5793 echo " You might need to modify the include and library search paths by editing"
5794 echo " QMAKE_INCDIR_X11 and QMAKE_LIBDIR_X11 in ${XQMAKESPEC}."
5799 # X11/MINGW/SYMBIAN OpenGL
5800 if [ "$PLATFORM_X11" = "yes" -o "$XPLATFORM_MINGW" = "yes" -o "$XPLATFORM_SYMBIAN" = "yes" ]; then
5801 # auto-detect OpenGL support (es1 = OpenGL ES 1.x Common, es2 = OpenGL ES 2.x)
5802 if [ "$CFG_GUI" = "no" ]; then
5803 if [ "$CFG_OPENGL" = "auto" ]; then
5806 if [ "$CFG_OPENGL" != "no" ]; then
5807 echo "OpenGL enabled, but GUI disabled."
5808 echo " You might need to either enable the GUI or disable OpenGL"
5812 if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
5813 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/opengl "OpenGL" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
5815 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $l_FLAGS; then
5817 if [ "$CFG_EGL" = "no" ]; then
5820 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles1 "OpenGL ES 1.x" $L_FLAGS $I_FLAGS $l_FLAGS; then
5822 if [ "$CFG_EGL" = "no" ]; then
5826 if [ "$CFG_OPENGL" = "yes" ]; then
5827 echo "All the OpenGL functionality tests failed!"
5828 echo " You might need to modify the include and library search paths by editing"
5829 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
5830 echo " ${XQMAKESPEC}."
5837 # HP-UX have buggy glx headers; check if we really need to define the GLXFBConfig struct.
5838 if [ "$CFG_OPENGL" = "desktop" ]; then
5839 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/glxfbconfig "OpenGL" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS
5840 if [ $? != "0" ]; then
5841 QMakeVar add DEFINES QT_DEFINE_GLXFBCONFIG_STRUCT
5848 elif [ "$CFG_OPENGL" = "es1" ]; then
5850 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles1 "OpenGL ES 1.x" $L_FLAGS $I_FLAGS $l_FLAGS
5851 if [ $? != "0" ]; then
5852 echo "The OpenGL ES 1.x functionality test failed!"
5853 echo " You might need to modify the include and library search paths by editing"
5854 echo " QMAKE_INCDIR_OPENGL_ES1, QMAKE_LIBDIR_OPENGL_ES1 and QMAKE_LIBS_OPENGL_ES1 in"
5855 echo " ${XQMAKESPEC}."
5858 elif [ "$CFG_OPENGL" = "es2" ]; then
5860 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $l_FLAGS
5861 if [ $? != "0" ]; then
5862 echo "The OpenGL ES 2.0 functionality test failed!"
5863 echo " You might need to modify the include and library search paths by editing"
5864 echo " QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in"
5865 echo " ${XQMAKESPEC}."
5868 elif [ "$CFG_OPENGL" = "desktop" ]; then
5869 # Desktop OpenGL support
5870 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/opengl "OpenGL" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS
5871 if [ $? != "0" ]; then
5872 echo "The OpenGL functionality test failed!"
5873 echo " You might need to modify the include and library search paths by editing"
5874 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
5875 echo " ${XQMAKESPEC}."
5880 # HP-UX have buggy glx headers; check if we really need to define the GLXFBConfig struct.
5881 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/glxfbconfig "OpenGL" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS
5882 if [ $? != "0" ]; then
5883 QMakeVar add DEFINES QT_DEFINE_GLXFBCONFIG_STRUCT
5891 # if opengl is disabled and the user specified graphicssystem gl, disable it...
5892 if [ "$CFG_GRAPHICS_SYSTEM" = "opengl" ] && [ "$CFG_OPENGL" = "no" ]; then
5893 echo "OpenGL Graphics System is disabled due to missing OpenGL support..."
5894 CFG_GRAPHICS_SYSTEM=default
5896 fi # X11/MINGW OpenGL
5899 if [ "$PLATFORM_X11" = "yes" ]; then
5900 # auto-detect Xcursor support
5901 if [ "$CFG_XCURSOR" != "no" ]; then
5902 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xcursor "Xcursor" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
5903 if [ "$CFG_XCURSOR" != "runtime" ]; then
5907 if [ "$CFG_XCURSOR" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5908 echo "Xcursor support cannot be enabled due to functionality tests!"
5909 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5910 echo " If you believe this message is in error you may use the continue"
5911 echo " switch (-continue) to $0 to continue."
5919 # auto-detect Xfixes support
5920 if [ "$CFG_XFIXES" != "no" ]; then
5921 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xfixes "Xfixes" $L_FLAGS $I_FLAGS $X11TESTS_FLAGS; then
5922 if [ "$CFG_XFIXES" != "runtime" ]; then
5926 if [ "$CFG_XFIXES" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5927 echo "Xfixes support cannot be enabled due to functionality tests!"
5928 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5929 echo " If you believe this message is in error you may use the continue"
5930 echo " switch (-continue) to $0 to continue."
5938 # auto-detect Xrandr support (resize and rotate extension)
5939 if [ "$CFG_XRANDR" != "no" ]; then
5940 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xrandr "Xrandr" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
5941 if [ "$CFG_XRANDR" != "runtime" ]; then
5945 if [ "$CFG_XRANDR" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5946 echo "Xrandr support cannot be enabled due to functionality tests!"
5947 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5948 echo " If you believe this message is in error you may use the continue"
5949 echo " switch (-continue) to $0 to continue."
5957 # auto-detect Xrender support
5958 if [ "$CFG_XRENDER" != "no" ]; then
5959 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xrender "Xrender" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
5962 if [ "$CFG_XRENDER" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5963 echo "Xrender support cannot be enabled due to functionality tests!"
5964 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5965 echo " If you believe this message is in error you may use the continue"
5966 echo " switch (-continue) to $0 to continue."
5974 # Additional check to decide if WebKit support will be included
5975 if [ "$CFG_XRENDER" = "no" ] && [ "$CFG_WEBKIT" != "no" ]; then
5976 echo "Warning: -no-xrender will disable the QtWebkit module."
5980 # auto-detect MIT-SHM support
5981 if [ "$CFG_MITSHM" != "no" ]; then
5982 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/mitshm "mitshm" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
5985 if [ "$CFG_MITSHM" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
5986 echo "MITSHM support cannot be enabled due to functionality tests!"
5987 echo " Turn on verbose messaging (-v) to $0 to see the final report."
5988 echo " If you believe this message is in error you may use the continue"
5989 echo " switch (-continue) to $0 to continue."
5997 # auto-detect FontConfig support
5998 if [ "$CFG_FONTCONFIG" != "no" ]; then
5999 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists fontconfig --exists freetype2 2>/dev/null; then
6000 QT_CFLAGS_FONTCONFIG=`$PKG_CONFIG --cflags fontconfig --cflags freetype2 2>/dev/null`
6001 QT_LIBS_FONTCONFIG=`$PKG_CONFIG --libs fontconfig --libs freetype2 2>/dev/null`
6003 QT_CFLAGS_FONTCONFIG=
6004 QT_LIBS_FONTCONFIG="-lfreetype -lfontconfig"
6006 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/fontconfig "FontConfig" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS $QT_CFLAGS_FONTCONFIG $QT_LIBS_FONTCONFIG; then
6008 QMakeVar set QMAKE_CFLAGS_X11 "$QT_CFLAGS_FONTCONFIG \$\$QMAKE_CFLAGS_X11"
6009 QMakeVar set QMAKE_LIBS_X11 "$QT_LIBS_FONTCONFIG \$\$QMAKE_LIBS_X11"
6010 CFG_LIBFREETYPE=system
6012 if [ "$CFG_FONTCONFIG" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6013 echo "FontConfig support cannot be enabled due to functionality tests!"
6014 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6015 echo " If you believe this message is in error you may use the continue"
6016 echo " switch (-continue) to $0 to continue."
6024 # auto-detect Session Management support
6025 if [ "$CFG_SM" = "auto" ]; then
6026 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/sm "Session Management" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6029 if [ "$CFG_SM" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6030 echo "Session Management support cannot be enabled due to functionality tests!"
6031 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6032 echo " If you believe this message is in error you may use the continue"
6033 echo " switch (-continue) to $0 to continue."
6041 # auto-detect SHAPE support
6042 if [ "$CFG_XSHAPE" != "no" ]; then
6043 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xshape "XShape" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6046 if [ "$CFG_XSHAPE" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6047 echo "XShape support cannot be enabled due to functionality tests!"
6048 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6049 echo " If you believe this message is in error you may use the continue"
6050 echo " switch (-continue) to $0 to continue."
6058 # auto-detect XVideo support
6059 if [ "$CFG_XVIDEO" != "no" ]; then
6060 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xvideo "XVideo" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6063 if [ "$CFG_XVIDEO" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6064 echo "XVideo support cannot be enabled due to functionality tests!"
6065 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6066 echo " If you believe this message is in error you may use the continue"
6067 echo " switch (-continue) to $0 to continue."
6075 # auto-detect XSync support
6076 if [ "$CFG_XSYNC" != "no" ]; then
6077 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xsync "XSync" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6080 if [ "$CFG_XSYNC" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6081 echo "XSync support cannot be enabled due to functionality tests!"
6082 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6083 echo " If you believe this message is in error you may use the continue"
6084 echo " switch (-continue) to $0 to continue."
6092 # auto-detect Xinerama support
6093 if [ "$CFG_XINERAMA" != "no" ]; then
6094 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xinerama "Xinerama" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6095 if [ "$CFG_XINERAMA" != "runtime" ]; then
6099 if [ "$CFG_XINERAMA" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6100 echo "Xinerama support cannot be enabled due to functionality tests!"
6101 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6102 echo " If you believe this message is in error you may use the continue"
6103 echo " switch (-continue) to $0 to continue."
6111 # auto-detect Xinput support
6112 if [ "$CFG_XINPUT" != "no" ]; then
6113 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xinput "XInput" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6114 if [ "$CFG_XINPUT" != "runtime" ]; then
6118 if [ "$CFG_XINPUT" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6119 echo "Tablet and Xinput support cannot be enabled due to functionality tests!"
6120 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6121 echo " If you believe this message is in error you may use the continue"
6122 echo " switch (-continue) to $0 to continue."
6130 # auto-detect XKB support
6131 if [ "$CFG_XKB" != "no" ]; then
6132 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/xkb "XKB" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6135 if [ "$CFG_XKB" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6136 echo "XKB support cannot be enabled due to functionality tests!"
6137 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6138 echo " If you believe this message is in error you may use the continue"
6139 echo " switch (-continue) to $0 to continue."
6147 if [ "$CFG_GLIB" = "yes" -a "$CFG_QGTKSTYLE" != "no" ]; then
6148 if [ -n "$PKG_CONFIG" ]; then
6149 QT_CFLAGS_QGTKSTYLE=`$PKG_CONFIG --cflags gtk+-2.0 ">=" 2.10 atk 2>/dev/null`
6150 QT_LIBS_QGTKSTYLE=`$PKG_CONFIG --libs gobject-2.0 2>/dev/null`
6152 if [ -n "$QT_CFLAGS_QGTKSTYLE" ] ; then
6154 QMakeVar set QT_CFLAGS_QGTKSTYLE "$QT_CFLAGS_QGTKSTYLE"
6155 QMakeVar set QT_LIBS_QGTKSTYLE "$QT_LIBS_QGTKSTYLE"
6157 if [ "$CFG_QGTKSTYLE" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6158 echo "Gtk theme support cannot be enabled due to functionality tests!"
6159 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6160 echo " If you believe this message is in error you may use the continue"
6161 echo " switch (-continue) to $0 to continue."
6167 elif [ "$CFG_GLIB" = "no" ]; then
6173 if [ "$PLATFORM_MAC" = "yes" ]; then
6174 if [ "$CFG_PHONON" != "no" ]; then
6175 # Always enable Phonon (unless it was explicitly disabled)
6179 if [ "$CFG_COREWLAN" = "auto" ]; then
6180 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/mac/corewlan "CoreWlan" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
6189 if [ "$PLATFORM_QPA" = "yes" ]; then
6190 # auto-detect OpenGL support (es1 = OpenGL ES 1.x Common, es2 = OpenGL ES 2.x)
6191 if [ "$CFG_OPENGL" = "auto" ] || [ "$CFG_OPENGL" = "yes" ]; then
6192 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengldesktop "OpenGL" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS; then
6194 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $l_FLAGS; then
6196 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles1 "OpenGL ES 1.x" $L_FLAGS $I_FLAGS $l_FLAGS; then
6199 if [ "$CFG_OPENGL" = "yes" ]; then
6200 echo "All the OpenGL functionality tests failed!"
6201 echo " You might need to modify the include and library search paths by editing"
6202 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
6203 echo " ${XQMAKESPEC}."
6208 elif [ "$CFG_OPENGL" = "es1" ]; then
6210 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles1 "OpenGL ES 1.x" $L_FLAGS $I_FLAGS $l_FLAGS
6211 if [ $? != "0" ]; then
6212 echo "The OpenGL ES 1.x functionality test failed!"
6213 echo " You might need to modify the include and library search paths by editing"
6214 echo " QMAKE_INCDIR_OPENGL_ES1, QMAKE_LIBDIR_OPENGL_ES1 and QMAKE_LIBS_OPENGL_ES1 in"
6215 echo " ${XQMAKESPEC}."
6218 elif [ "$CFG_OPENGL" = "es2" ]; then
6220 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists glesv2 2>/dev/null; then
6221 QMAKE_INCDIR_OPENGL_ES2=`$PKG_CONFIG --variable=includedir glesv2 2>/dev/null`
6222 QMAKE_LIBDIR_OPENGL_ES2=`$PKG_CONFIG --variable=libdir glesv2 2>/dev/null`
6223 QMAKE_LIBS_OPENGL_ES2=`$PKG_CONFIG --libs glesv2 2>/dev/null`
6224 QMAKE_CFLAGS_OPENGL_ES2=`$PKG_CONFIG --cflags glesv2 2>/dev/null`
6225 QMakeVar set QMAKE_INCDIR_OPENGL_ES2 "$QMAKE_INCDIR_OPENGL_ES2"
6226 QMakeVar set QMAKE_LIBDIR_OPENGL_ES2 "$QMAKE_LIBDIR_OPENGL_ES2"
6227 QMakeVar set QMAKE_LIBS_OPENGL_ES2 "$QMAKE_LIBS_OPENGL_ES2"
6230 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $l_FLAGS $QMAKE_LIBS_OPENGL_ES2 $QMAKE_CFLAGS_OPENGL_ES2
6231 if [ $? != "0" ]; then
6232 echo "The OpenGL ES 2.0 functionality test failed!"
6233 echo " You might need to modify the include and library search paths by editing"
6234 echo " QMAKE_INCDIR_OPENGL_ES2, QMAKE_LIBDIR_OPENGL_ES2 and QMAKE_LIBS_OPENGL_ES2 in"
6235 echo " ${XQMAKESPEC}."
6238 elif [ "$CFG_OPENGL" = "desktop" ]; then
6239 # Desktop OpenGL support
6240 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengldesktop "OpenGL" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS
6241 if [ $? != "0" ]; then
6242 echo "The OpenGL functionality test failed!"
6243 echo " You might need to modify the include and library search paths by editing"
6244 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
6245 echo " ${XQMAKESPEC}."
6250 # auto-detect FontConfig support
6251 if [ "$CFG_FONTCONFIG" != "no" ]; then
6252 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists fontconfig --exists freetype2 2>/dev/null; then
6253 QT_CFLAGS_FONTCONFIG=`$PKG_CONFIG --cflags fontconfig --cflags freetype2 2>/dev/null`
6254 QT_LIBS_FONTCONFIG=`$PKG_CONFIG --libs fontconfig --libs freetype2 2>/dev/null`
6256 QT_CFLAGS_FONTCONFIG=
6257 QT_LIBS_FONTCONFIG="-lfreetype -lfontconfig"
6259 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/x11/fontconfig "FontConfig" $L_FLAGS $I_FLAGS $l_FLAGS $X11TESTS_FLAGS $QT_CFLAGS_FONTCONFIG $QT_LIBS_FONTCONFIG; then
6260 QT_CONFIG="$QT_CONFIG fontconfig"
6261 QMakeVar set QMAKE_CFLAGS_FONTCONFIG "$QT_CFLAGS_FONTCONFIG"
6262 QMakeVar set QMAKE_LIBS_FONTCONFIG "$QT_LIBS_FONTCONFIG"
6263 CFG_LIBFREETYPE=system
6268 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists wayland-client 2>/dev/null; then
6269 QMAKE_CFLAGS_WAYLAND=`$PKG_CONFIG --cflags wayland-client 2>/dev/null`
6270 QMAKE_LIBS_WAYLAND=`$PKG_CONFIG --libs wayland-client 2>/dev/null`
6271 QMAKE_INCDIR_WAYLAND=`$PKG_CONFIG --variable=includedir wayland-client 2>/dev/null`
6272 QMAKE_LIBDIR_WAYLAND=`$PKG_CONFIG --variable=libdir wayland-client 2>/dev/null`
6274 if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists xkbcommon 2>/dev/null; then
6275 QMAKE_CFLAGS_WAYLAND="$QMAKE_CFLAGS_WAYLAND `$PKG_CONFIG --cflags xkbcommon 2>/dev/null`"
6276 QMAKE_LIBS_WAYLAND="$QMAKE_LIBS_WAYLAND `$PKG_CONFIG --libs xkbcommon 2>/dev/null`"
6278 QMAKE_DEFINES_WAYLAND=QT_NO_WAYLAND_XKB
6282 # QMake variables set here override those in the mkspec. Therefore we only set the variables here if they are not zero.
6283 if [ -n "$QMAKE_CFLAGS_WAYLAND" ] || [ -n "$QMAKE_LIBS_WAYLAND" ]; then
6284 QMakeVar set QMAKE_CFLAGS_WAYLAND "$QMAKE_CFLAGS_WAYLAND"
6285 QMakeVar set QMAKE_INCDIR_WAYLAND "$QMAKE_INCDIR_WAYLAND"
6286 QMakeVar set QMAKE_LIBS_WAYLAND "$QMAKE_LIBS_WAYLAND"
6287 QMakeVar set QMAKE_LIBDIR_WAYLAND "$QMAKE_LIBDIR_WAYLAND"
6288 QMakeVar set QMAKE_DEFINES_WAYLAND " $QMAKE_DEFINES_WAYLAND"
6291 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qpa/wayland "Wayland" $L_FLAGS $I_FLAGS $l_FLAGS $QMAKE_CFLAGS_WAYLAND $QMAKE_LIBS_WAYLAND; then
6292 QT_CONFIG="$QT_CONFIG wayland"
6295 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/mac/coreservices "CoreServices" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
6296 QT_CONFIG="$QT_CONFIG coreservices"
6298 QMakeVar add DEFINES QT_NO_CORESERVICES
6305 if [ "$PLATFORM_QWS" = "yes" ]; then
6307 # auto-detect OpenGL support (es1 = OpenGL ES 1.x Common, es2 = OpenGL ES 2.x)
6308 if [ "$CFG_GUI" = "no" ]; then
6309 if [ "$CFG_OPENGL" = "auto" ]; then
6312 if [ "$CFG_OPENGL" != "no" ]; then
6313 echo "OpenGL enabled, but GUI disabled."
6314 echo " You might need to either enable the GUI or disable OpenGL"
6318 if [ "$CFG_OPENGL" = "yes" ]; then
6320 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $l_FLAGS; then
6322 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles1 "OpenGL ES 1.x" $L_FLAGS $I_FLAGS $l_FLAGS; then
6325 echo "All the OpenGL ES functionality tests failed!"
6326 echo " You might need to modify the include and library search paths by editing"
6327 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
6328 echo " ${XQMAKESPEC}."
6331 elif [ "$CFG_OPENGL" = "es1" ]; then
6333 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles1 "OpenGL ES 1.x" $L_FLAGS $I_FLAGS $l_FLAGS
6334 if [ $? != "0" ]; then
6335 echo "The OpenGL ES 1.x functionality test failed!"
6336 echo " You might need to modify the include and library search paths by editing"
6337 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
6338 echo " ${XQMAKESPEC}."
6342 elif [ "$CFG_OPENGL" = "es2" ]; then
6344 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/opengles2 "OpenGL ES 2.x" $L_FLAGS $I_FLAGS $l_FLAGS
6345 if [ $? != "0" ]; then
6346 echo "The OpenGL ES 2.0 functionality test failed!"
6347 echo " You might need to modify the include and library search paths by editing"
6348 echo " QMAKE_INCDIR_OPENGL, QMAKE_LIBDIR_OPENGL and QMAKE_LIBS_OPENGL in"
6349 echo " ${XQMAKESPEC}."
6353 elif [ "$CFG_OPENGL" = "desktop" ]; then
6354 # Desktop OpenGL support
6355 echo "Desktop OpenGL support is not avaliable on Qt for Embedded Linux"
6360 if [ "$PLATFORM_QWS" = "yes" ]; then
6363 for screen in ${CFG_GFX_ON} ${CFG_GFX_PLUGIN}; do
6364 if [ "${screen}" = "ahi" ] && [ "${CFG_CONFIGURE_EXIT_ON_ERROR}" = "yes" ]; then
6365 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qws/ahi "Ahi" $L_FLAGS $I_FLAGS $l_FLAGS
6366 if [ $? != "0" ]; then
6367 echo "The Ahi screen driver functionality test failed!"
6368 echo " You might need to modify the include and library search paths by editing"
6369 echo " QMAKE_INCDIR and QMAKE_LIBDIR in"
6370 echo " ${XQMAKESPEC}."
6375 if [ "${screen}" = "svgalib" ] && [ "${CFG_CONFIGURE_EXIT_ON_ERROR}" = "yes" ]; then
6376 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qws/svgalib "SVGAlib" $L_FLAGS $I_FLAGS $l_FLAGS
6377 if [ $? != "0" ]; then
6378 echo "The SVGAlib screen driver functionality test failed!"
6379 echo " You might need to modify the include and library search paths by editing"
6380 echo " QMAKE_INCDIR and QMAKE_LIBDIR in"
6381 echo " ${XQMAKESPEC}."
6386 if [ "${screen}" = "directfb" ] && [ "${CFG_CONFIGURE_EXIT_ON_ERROR}" = "yes" ]; then
6387 if test -n "$PKG_CONFIG" && "$PKG_CONFIG" --exists directfb 2>/dev/null; then
6388 QT_CFLAGS_DIRECTFB=`$PKG_CONFIG --cflags directfb 2>/dev/null`
6389 QT_LIBS_DIRECTFB=`$PKG_CONFIG --libs directfb 2>/dev/null`
6390 elif directfb-config --version >/dev/null 2>&1; then
6391 QT_CFLAGS_DIRECTFB=`directfb-config --cflags 2>/dev/null`
6392 QT_LIBS_DIRECTFB=`directfb-config --libs 2>/dev/null`
6395 # QMake variables set here override those in the mkspec. Therefore we only set the variables here if they are not zero.
6396 if [ -n "$QT_CFLAGS_DIRECTFB" ] || [ -n "$QT_LIBS_DIRECTFB" ]; then
6397 QMakeVar set QT_CFLAGS_DIRECTFB "$QT_CFLAGS_DIRECTFB"
6398 QMakeVar set QT_LIBS_DIRECTFB "$QT_LIBS_DIRECTFB"
6400 if [ "$CFG_QT3SUPPORT" = "yes" ]; then
6401 QMakeVar set QT_DEFINES_DIRECTFB "QT3_SUPPORT"
6404 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qws/directfb "DirectFB" $L_FLAGS $I_FLAGS $l_FLAGS $QT_CFLAGS_DIRECTFB $QT_LIBS_DIRECTFB
6405 if [ $? != "0" ]; then
6406 echo "The DirectFB screen driver functionality test failed!"
6407 echo " You might need to modify the include and library search paths by editing"
6408 echo " QT_CFLAGS_DIRECTFB and QT_LIBS_DIRECTFB in"
6409 echo " ${XQMAKESPEC}."
6417 for mouse in ${CFG_MOUSE_ON} ${CFG_MOUSE_PLUGIN}; do
6418 if [ "${mouse}" = "tslib" ] && [ "${CFG_CONFIGURE_EXIT_ON_ERROR}" = "yes" ]; then
6419 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/tslib "tslib" $L_FLAGS $I_FLAGS $l_FLAGS
6420 if [ $? != "0" ]; then
6421 echo "The tslib functionality test failed!"
6422 echo " You might need to modify the include and library search paths by editing"
6423 echo " QMAKE_INCDIR and QMAKE_LIBDIR in"
6424 echo " ${XQMAKESPEC}."
6433 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/qws/sound "sound" $L_FLAGS $I_FLAGS $l_FLAGS
6434 if [ $? != "0" ]; then
6435 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SOUND"
6442 if [ "$PLATFORM_X11" = "yes" -o "$PLATFORM_QWS" = "yes" ]; then
6443 if [ "$CFG_EGL" != "no" ]; then
6444 # detect EGL support
6445 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/egl" "EGL (EGL/egl.h)" $L_FLAGS $I_FLAGS $l_FLAGS; then
6446 # EGL specified by QMAKE_*_EGL, included with <EGL/egl.h>
6451 # Prefer this variant for ES1
6452 if [ "$CFG_OPENGL" = "es1" -o "$EGL_VARIANT" = "none" ]; then
6453 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/egl4gles1" "EGL (GLES/egl.h)" $L_FLAGS $I_FLAGS $l_FLAGS; then
6454 # EGL specified by QMAKE_*_EGL, included with <GLES/egl.h>
6457 CFG_EGL_GLES_INCLUDES=yes
6461 if [ "$EGL_VARIANT" = "none" ]; then
6462 if [ "$CFG_EGL" = "yes" ]; then
6463 echo "The EGL functionality test failed!"
6464 echo " EGL is required for OpenGL ES to manage contexts & surfaces."
6465 echo " You might need to modify the include and library search paths by editing"
6466 echo " QMAKE_INCDIR_EGL, QMAKE_LIBDIR_EGL and QMAKE_LIBS_EGL in"
6467 echo " ${XQMAKESPEC}."
6471 # If QtOpenGL would be built against OpenGL ES, disable it as we can't to that if EGL is missing
6472 if [ "$CFG_OPENGL" = "es1" -o "$CFG_OPENGL" = "es2" ]; then
6479 [ "$XPLATFORM_MINGW" = "yes" ] && [ "$CFG_PHONON" != "no" ] && CFG_PHONON="yes"
6482 [ "x$CFG_EMBEDDED" != "xno" ] && CFG_LIBFREETYPE="$CFG_QWS_FREETYPE"
6483 [ "x$PLATFORM_MAC" = "xyes" ] && CFG_LIBFREETYPE=no
6484 [ "$XPLATFORM_MINGW" = "yes" ] && [ "$CFG_LIBFREETYPE" = "auto" ] && CFG_LIBFREETYPE=no
6485 if [ "$CFG_LIBFREETYPE" = "auto" ]; then
6486 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/freetype "FreeType" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
6487 CFG_LIBFREETYPE=system
6493 if [ "$CFG_ENDIAN" = "auto" ]; then
6494 if [ "$XPLATFORM_MINGW" = "yes" ]; then
6495 CFG_ENDIAN="Q_LITTLE_ENDIAN"
6496 elif [ "$XPLATFORM_SYMBIAN_SBSV2" = "yes" ]; then
6497 CFG_ENDIAN="Q_LITTLE_ENDIAN"
6498 elif [ "$PLATFORM_MAC" = "yes" ] && [ "$XPLATFORM_SYMBIAN" = "no" ]; then
6501 "$unixtests/endian.test" "$XQMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath"
6503 if [ "$F" -eq 0 ]; then
6504 CFG_ENDIAN="Q_LITTLE_ENDIAN"
6505 elif [ "$F" -eq 1 ]; then
6506 CFG_ENDIAN="Q_BIG_ENDIAN"
6509 echo "The target system byte order could not be detected!"
6510 echo "Turn on verbose messaging (-v) to see the final report."
6511 echo "You can use the -little-endian or -big-endian switch to"
6512 echo "$0 to continue."
6518 if [ "$CFG_HOST_ENDIAN" = "auto" ]; then
6519 if [ "$PLATFORM_MAC" = "yes" ]; then
6522 "$unixtests/endian.test" "$QMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath"
6524 if [ "$F" -eq 0 ]; then
6525 CFG_HOST_ENDIAN="Q_LITTLE_ENDIAN"
6526 elif [ "$F" -eq 1 ]; then
6527 CFG_HOST_ENDIAN="Q_BIG_ENDIAN"
6530 echo "The host system byte order could not be detected!"
6531 echo "Turn on verbose messaging (-v) to see the final report."
6532 echo "You can use the -host-little-endian or -host-big-endian switch to"
6533 echo "$0 to continue."
6539 if [ "$CFG_ARMFPA" != "auto" ]; then
6540 if [ "$CFG_ARMFPA" = "yes" ]; then
6541 if [ "$CFG_ENDIAN" = "Q_LITTLE_ENDIAN" ]; then
6542 CFG_DOUBLEFORMAT="Q_DOUBLE_LITTLE_SWAPPED"
6544 CFG_DOUBLEFORMAT="Q_DOUBLE_BIG_SWAPPED"
6547 CFG_DOUBLEFORMAT="normal"
6552 if [ "$CFG_DOUBLEFORMAT" = "auto" ]; then
6553 if [ "$PLATFORM_QWS" != "yes" -o "$PLATFORM_QPA" = "yes" ]; then
6554 CFG_DOUBLEFORMAT=normal
6556 "$unixtests/doubleformat.test" "$XQMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath"
6558 if [ "$F" -eq 10 ] && [ "$CFG_ENDIAN" = "Q_LITTLE_ENDIAN" ]; then
6559 CFG_DOUBLEFORMAT=normal
6560 elif [ "$F" -eq 11 ] && [ "$CFG_ENDIAN" = "Q_BIG_ENDIAN" ]; then
6561 CFG_DOUBLEFORMAT=normal
6562 elif [ "$F" -eq 10 ]; then
6563 CFG_DOUBLEFORMAT="Q_DOUBLE_LITTLE"
6564 elif [ "$F" -eq 11 ]; then
6565 CFG_DOUBLEFORMAT="Q_DOUBLE_BIG"
6566 elif [ "$F" -eq 12 ]; then
6567 CFG_DOUBLEFORMAT="Q_DOUBLE_LITTLE_SWAPPED"
6569 elif [ "$F" -eq 13 ]; then
6570 CFG_DOUBLEFORMAT="Q_DOUBLE_BIG_SWAPPED"
6574 echo "The system floating point format could not be detected."
6575 echo "This may cause data to be generated in a wrong format"
6576 echo "Turn on verbose messaging (-v) to see the final report."
6577 # we do not fail on this since this is a new test, and if it fails,
6578 # the old behavior should be correct in most cases
6579 CFG_DOUBLEFORMAT=normal
6585 if [ "$XPLATFORM_SYMBIAN" = "yes" ] || "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/stl "STL" $L_FLAGS $I_FLAGS $l_FLAGS; then
6589 if [ "$CFG_STL" != "no" ]; then
6590 if [ "$HAVE_STL" = "yes" ]; then
6593 if [ "$CFG_STL" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6594 echo "STL support cannot be enabled due to functionality tests!"
6595 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6596 echo " If you believe this message is in error you may use the continue"
6597 echo " switch (-continue) to $0 to continue."
6605 # find if the platform supports IPv6
6606 if [ "$CFG_IPV6" != "no" ]; then
6607 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
6608 #IPV6 should always be enabled for Symbian release
6610 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/ipv6 "IPv6" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
6613 if [ "$CFG_IPV6" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6614 echo "IPv6 support cannot be enabled due to functionality tests!"
6615 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6616 echo " If you believe this message is in error you may use the continue"
6617 echo " switch (-continue) to $0 to continue."
6625 # detect POSIX clock_gettime()
6626 if [ "$CFG_CLOCK_GETTIME" = "auto" ]; then
6627 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/clock-gettime "POSIX clock_gettime()" $L_FLAGS $I_FLAGS $l_FLAGS; then
6628 CFG_CLOCK_GETTIME=yes
6630 CFG_CLOCK_GETTIME=no
6634 # detect POSIX monotonic clocks
6635 if [ "$CFG_CLOCK_GETTIME" = "yes" ] && [ "$CFG_CLOCK_MONOTONIC" = "auto" ]; then
6636 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/clock-monotonic "POSIX Monotonic Clock" $L_FLAGS $I_FLAGS $l_FLAGS; then
6637 CFG_CLOCK_MONOTONIC=yes
6639 CFG_CLOCK_MONOTONIC=no
6641 elif [ "$CFG_CLOCK_GETTIME" = "no" ]; then
6642 CFG_CLOCK_MONOTONIC=no
6646 if [ "$CFG_MREMAP" = "auto" ]; then
6647 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/mremap "mremap" $L_FLAGS $I_FLAGS $l_FLAGS; then
6654 # find if the platform provides getaddrinfo (ipv6 dns lookups)
6655 if [ "$CFG_GETADDRINFO" != "no" ]; then
6656 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/getaddrinfo "getaddrinfo" $L_FLAGS $I_FLAGS $l_FLAGS; then
6659 if [ "$CFG_GETADDRINFO" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6660 echo "getaddrinfo support cannot be enabled due to functionality tests!"
6661 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6662 echo " If you believe this message is in error you may use the continue"
6663 echo " switch (-continue) to $0 to continue."
6671 # find if the platform provides inotify
6672 if [ "$CFG_INOTIFY" != "no" ]; then
6673 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/inotify "inotify" $L_FLAGS $I_FLAGS $l_FLAGS; then
6676 if [ "$CFG_INOTIFY" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6677 echo "inotify support cannot be enabled due to functionality tests!"
6678 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6679 echo " If you believe this message is in error you may use the continue"
6680 echo " switch (-continue) to $0 to continue."
6688 # find if the platform provides if_nametoindex (ipv6 interface name support)
6689 if [ "$CFG_IPV6IFNAME" != "no" ]; then
6690 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/ipv6ifname "IPv6 interface name" $L_FLAGS $I_FLAGS $l_FLAGS; then
6693 if [ "$CFG_IPV6IFNAME" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6694 echo "IPv6 interface name support cannot be enabled due to functionality tests!"
6695 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6696 echo " If you believe this message is in error you may use the continue"
6697 echo " switch (-continue) to $0 to continue."
6705 # find if the platform provides getifaddrs (network interface enumeration)
6706 if [ "$CFG_GETIFADDRS" != "no" ]; then
6707 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/getifaddrs "getifaddrs" $L_FLAGS $I_FLAGS $l_FLAGS; then
6710 if [ "$CFG_GETIFADDRS" = "yes" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6711 echo "getifaddrs support cannot be enabled due to functionality tests!"
6712 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6713 echo " If you believe this message is in error you may use the continue"
6714 echo " switch (-continue) to $0 to continue."
6723 if [ "$CFG_OPENSSL" != "no" ] && [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
6724 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/openssl "OpenSSL" $L_FLAGS $I_FLAGS $l_FLAGS $MAC_CONFIG_TEST_COMMANDLINE; then
6725 if [ "$CFG_OPENSSL" = "auto" ]; then
6729 if ( [ "$CFG_OPENSSL" = "yes" ] || [ "$CFG_OPENSSL" = "linked" ] ) && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6730 echo "OpenSSL support cannot be enabled due to functionality tests!"
6731 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6732 echo " If you believe this message is in error you may use the continue"
6733 echo " switch (-continue) to $0 to continue."
6740 if [ "$CFG_OPENSSL" = "auto" ] && [ "$XPLATFORM_SYMBIAN_SBSV2" = "yes" ]; then
6741 #OpenSSl should be enabled for Symbian release
6746 # detect OpenVG support
6747 if [ "$CFG_OPENVG" != "no" ] && [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
6748 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/openvg" "OpenVG" $L_FLAGS $I_FLAGS $l_FLAGS $CONFIG_ARG; then
6749 if [ "$CFG_OPENVG" = "auto" ]; then
6752 elif "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG openvg_on_opengl" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/openvg" "OpenVG" $L_FLAGS $I_FLAGS $l_FLAGS $CONFIG_ARG; then
6753 if [ "$CFG_OPENVG" = "auto" ]; then
6756 CFG_OPENVG_ON_OPENGL=yes
6757 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 $l_FLAGS $CONFIG_ARG; then
6758 if [ "$CFG_OPENVG" = "auto" ]; then
6761 CFG_OPENVG_LC_INCLUDES=yes
6762 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 $l_FLAGS $CONFIG_ARG; then
6763 if [ "$CFG_OPENVG" = "auto" ]; then
6766 CFG_OPENVG_LC_INCLUDES=yes
6767 CFG_OPENVG_ON_OPENGL=yes
6769 if [ "$CFG_OPENVG" != "auto" ] && [ "$CFG_CONFIGURE_EXIT_ON_ERROR" = "yes" ]; then
6770 echo "$CFG_OPENVG was specified for OpenVG but cannot be enabled due to functionality tests!"
6771 echo " Turn on verbose messaging (-v) to $0 to see the final report."
6772 echo " If you believe this message is in error you may use the continue"
6773 echo " switch (-continue) to $0 to continue."
6779 if [ "$CFG_OPENVG" = "yes" ] && "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" "config.tests/unix/shivavg" "ShivaVG" $L_FLAGS $I_FLAGS $l_FLAGS $CONFIG_ARG; then
6780 CFG_OPENVG_SHIVA=yes
6784 # if openvg is disabled and the user specified graphicssystem vg, disable it...
6785 if [ "$CFG_GRAPHICS_SYSTEM" = "openvg" ] && [ "$CFG_OPENVG" = "no" ]; then
6786 echo "OpenVG Graphics System is disabled due to missing OpenVG support..."
6787 CFG_GRAPHICS_SYSTEM=default
6790 if [ -n "$CFG_RUNTIME_SYSTEM" -a "$CFG_GRAPHICS_SYSTEM" != "runtime" ] || [ "$CFG_RUNTIME_SYSTEM" = "runtime" ]; then
6791 echo "Argument to -runtimegraphicssystem is invalid so ignoring..."
6795 if [ "$CFG_PTMALLOC" != "no" ]; then
6796 # build ptmalloc, copy .a file to lib/
6797 echo "Building ptmalloc. Please wait..."
6798 (cd "$relpath/src/3rdparty/ptmalloc/"; "$MAKE" "clean" ; "$MAKE" "posix"
6799 mkdir "$outpath/lib/" ; cp "libptmalloc3.a" "$outpath/lib/")
6801 QMakeVar add QMAKE_LFLAGS "$outpath/lib/libptmalloc3.a"
6804 if [ "$CFG_ALSA" = "auto" ] && [ "$XPLATFORM_SYMBIAN_SBSV2" = "no" ]; then
6805 if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/alsa "alsa" $L_FLAGS $I_FLAGS $l_FLAGS; then
6810 elif [ "$XPLATFORM_SYMBIAN_SBSV2" = "yes" ]; then
6811 # Disabled for Symbian release
6815 if [ "$CFG_JAVASCRIPTCORE_JIT" = "yes" ] || [ "$CFG_JAVASCRIPTCORE_JIT" = "auto" ]; then
6816 if [ "$CFG_ARCH" = "arm" ]; then
6817 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/javascriptcore-jit "javascriptcore-jit" $L_FLAGS $I_FLAGS $l_FLAGS
6818 if [ $? != "0" ]; then
6819 CFG_JAVASCRIPTCORE_JIT=no
6822 case "$XPLATFORM" in
6824 CFG_JAVASCRIPTCORE_JIT=no
6827 CFG_JAVASCRIPTCORE_JIT=no
6833 if [ "$CFG_JAVASCRIPTCORE_JIT" = "yes" ]; then
6834 QMakeVar set JAVASCRIPTCORE_JIT yes
6835 elif [ "$CFG_JAVASCRIPTCORE_JIT" = "no" ]; then
6836 QMakeVar set JAVASCRIPTCORE_JIT no
6839 if [ "$CFG_AUDIO_BACKEND" = "auto" ]; then
6840 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
6841 if "$symbiantests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/symbian/audio "audio" $L_FLAGS $I_FLAGS $l_FLAGS ; then
6842 CFG_AUDIO_BACKEND=yes
6845 CFG_AUDIO_BACKEND=yes
6849 if [ "$CFG_LARGEFILE" != "yes" ] && [ "$XPLATFORM_MINGW" = "yes" ]; then
6850 echo "Warning: largefile support cannot be disabled for win32."
6852 elif [ "$CFG_LARGEFILE" != "no" ] && [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
6853 echo "Warning: largefile support cannot be enabled for symbian."
6857 #-------------------------------------------------------------------------------
6858 # ask for all that hasn't been auto-detected or specified in the arguments
6859 #-------------------------------------------------------------------------------
6861 ### fix this: user input should be validated in a loop
6862 if [ "$PLATFORM_QWS" = "yes" ]; then
6863 PROMPT_FOR_DEPTHS="yes"
6865 PROMPT_FOR_DEPTHS="no"
6867 if [ "$CFG_QWS_DEPTHS" = "prompted" -a "$PROMPT_FOR_DEPTHS" = "yes" ]; then
6869 echo "Choose pixel-depths to support:"
6871 echo " 1. 1bpp, black/white"
6872 echo " 4. 4bpp, grayscale"
6873 echo " 8. 8bpp, paletted"
6874 echo " 12. 12bpp, rgb 4-4-4"
6875 echo " 15. 15bpp, rgb 5-5-5"
6876 echo " 16. 16bpp, rgb 5-6-5"
6877 echo " 18. 18bpp, rgb 6-6-6"
6878 echo " 24. 24bpp, rgb 8-8-8"
6879 echo " 32. 32bpp, argb 8-8-8-8 and rgb 8-8-8"
6880 echo " all. All supported depths"
6882 echo "Your choices (default 8,16,32):"
6884 if [ -z "$CFG_QWS_DEPTHS" ] || [ "$CFG_QWS_DEPTHS" = "yes" ]; then
6885 CFG_QWS_DEPTHS=8,16,32
6888 if [ -n "$CFG_QWS_DEPTHS" -a "$PLATFORM_QWS" = "yes" ]; then
6889 if [ "$CFG_QWS_DEPTHS" = "all" ]; then
6890 CFG_QWS_DEPTHS="1 4 8 12 15 16 18 24 32 generic"
6892 for D in `echo "$CFG_QWS_DEPTHS" | sed -e 's/,/ /g'`; do
6894 1|4|8|12|15|16|18|24|32) QCONFIG_FLAGS="$QCONFIG_FLAGS QT_QWS_DEPTH_$D";;
6895 generic) QCONFIG_FLAGS="$QCONFIG_FLAGS QT_QWS_DEPTH_GENERIC";;
6900 # enable dwarf2 support on Mac
6901 if [ "$CFG_MAC_DWARF2" = "yes" ]; then
6902 QT_CONFIG="$QT_CONFIG dwarf2"
6905 # Set the default arch if there are no "-arch" arguments on the configure line
6906 # For "-carbon" builds: 32 bit x86/ppc.
6907 # For builds on snow leopard : compiler default (64-bit).
6908 # For builds on leopard : compiler default (32-bit).
6909 if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_MAC_ARCHS" = "" ]; then
6910 source "$mactests/defaultarch.test" "$TEST_COMPILER" "$OPT_VERBOSE" "$mactests"
6912 if [ "$CFG_MAC_CARBON" = "yes" ]; then
6913 if [ "$QT_MAC_DEFAULT_ARCH" = "x86_64" ]; then
6914 CFG_MAC_ARCHS=" x86"
6915 elif [ "$QT_MAC_DEFAULT_ARCH" = "ppc64" ]; then
6916 CFG_MAC_ARCHS=" ppc"
6918 CFG_MAC_ARCHS=" $QT_MAC_DEFAULT_ARCH"
6921 CFG_MAC_ARCHS=" $QT_MAC_DEFAULT_ARCH"
6924 [ "$OPT_VERBOSE" = "yes" ] && echo "Setting Mac architechture to$CFG_MAC_ARCHS."
6927 # enable Cocoa and/or Carbon on Mac
6928 # -carbon on the command line disables Cocoa, except for 64-bit archs
6929 if [ "$CFG_MAC_CARBON" = "yes" ]; then
6930 CFG_MAC_CARBON="YES"
6933 # check which archs are in use, enable cocoa if we find a 64-bit one
6934 if echo "$CFG_MAC_ARCHS" | grep 64 > /dev/null 2>&1; then
6935 CFG_MAC_COCOA="yes";
6936 CFG_MAC_CARBON="no";
6937 if echo "$CFG_MAC_ARCHS" | grep -w ppc > /dev/null 2>&1; then
6938 CFG_MAC_CARBON="yes";
6940 if echo "$CFG_MAC_ARCHS" | grep -w x86 > /dev/null 2>&1; then
6941 CFG_MAC_CARBON="yes";
6946 # select Carbon on 10.4 Tiger.
6947 if [ "$PLATFORM_MAC" = "yes" ]; then
6948 VERSION=`uname -r | tr '.' ' ' | awk '{print $1}'`
6949 if [ "$VERSION" == 8 ]; then
6951 CFG_MAC_CARBON="yes";
6955 # select Carbon when using the 10.4u SDK
6956 if [ "$PLATFORM_MAC" = "yes" ]; then
6957 if [ "TEST$CFG_SDK" = "TEST/Developer/SDKs/MacOSX10.4u.sdk/" ]; then
6960 CFG_MAC_CARBON="yes";
6964 # but disable Cocoa if cross-building for mingw and symbian
6965 [ "$XPLATFORM_MINGW" = "yes" ] && CFG_MAC_COCOA="no"
6966 [ "$XPLATFORM_SYMBIAN" = "yes" ] && CFG_MAC_COCOA="no"
6968 # set the global Mac deployment target. This is overridden on an arch-by-arch basis
6969 # in some cases, see code further down
6970 case "$PLATFORM,$CFG_MAC_COCOA" in
6973 QMakeVar set QMAKE_MACOSX_DEPLOYMENT_TARGET 10.5
6977 QMakeVar set QMAKE_MACOSX_DEPLOYMENT_TARGET 10.4
6981 # disable Qt 3 support on VxWorks and Symbian
6982 case "$XPLATFORM" in
6983 unsupported/vxworks*|symbian*)
6988 # enable Qt 3 support functionality
6989 if [ "$CFG_QT3SUPPORT" = "yes" ]; then
6990 QT_CONFIG="$QT_CONFIG gui-qt3support"
6994 if [ "$CFG_PHONON" = "yes" ]; then
6995 # No longer needed after modularization
6996 #QT_CONFIG="$QT_CONFIG phonon"
6997 if [ "$CFG_PHONON_BACKEND" = "yes" ]; then
6998 QT_CONFIG="$QT_CONFIG phonon-backend"
7001 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_PHONON"
7004 # disable accessibility
7005 if [ "$CFG_ACCESSIBILITY" = "no" ]; then
7006 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ACCESSIBILITY"
7008 QT_CONFIG="$QT_CONFIG accessibility"
7011 # egl stuff does not belong in lighthouse, but rather in plugins
7012 if [ "$PLATFORM_QPA" = "yes" ]; then
7017 if [ "$CFG_EGL" = "no" ]; then
7018 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_EGL"
7020 QT_CONFIG="$QT_CONFIG egl"
7021 if [ "$CFG_EGL_GLES_INCLUDES" = "yes" ]; then
7022 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GLES_EGL"
7027 if [ "$CFG_OPENVG" = "no" ]; then
7028 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENVG"
7030 QT_CONFIG="$QT_CONFIG openvg"
7031 if [ "$CFG_OPENVG_LC_INCLUDES" = "yes" ]; then
7032 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_LOWER_CASE_VG_INCLUDES"
7034 if [ "$CFG_OPENVG_ON_OPENGL" = "yes" ]; then
7035 QT_CONFIG="$QT_CONFIG openvg_on_opengl"
7037 if [ "$CFG_OPENVG_SHIVA" = "yes" ]; then
7038 QT_CONFIG="$QT_CONFIG shivavg"
7039 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_SHIVAVG"
7043 if [ "$CFG_QS60STYLE" = "no" ]; then
7044 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_STYLE_S60"
7046 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_STYLE_S60"
7049 # Just check if OpenGL is not set by command argumets for Symbian.
7050 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
7051 if [ "$CFG_OPENGL" = "auto" ]; then
7057 if [ "$CFG_OPENGL" = "no" ]; then
7058 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENGL"
7060 QT_CONFIG="$QT_CONFIG opengl"
7063 if [ "$CFG_OPENGL" = "es1" ] || [ "$CFG_OPENGL" = "es2" ]; then
7064 if [ "$PLATFORM_QWS" = "yes" ]; then
7065 QCONFIG_FLAGS="$QCONFIG_FLAGS Q_BACKINGSTORE_SUBSURFACES"
7067 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES"
7070 if [ "$CFG_OPENGL" = "es1" ]; then
7071 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES_1"
7072 QT_CONFIG="$QT_CONFIG opengles1"
7075 if [ "$CFG_OPENGL" = "es2" ]; then
7076 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_OPENGL_ES_2"
7077 QT_CONFIG="$QT_CONFIG opengles2"
7080 # safe execution environment
7081 if [ "$CFG_SXE" != "no" ]; then
7082 QT_CONFIG="$QT_CONFIG sxe"
7085 # build up the variables for output
7086 if [ "$CFG_DEBUG" = "yes" ]; then
7087 QMAKE_OUTDIR="${QMAKE_OUTDIR}debug"
7088 QMAKE_CONFIG="$QMAKE_CONFIG debug"
7089 elif [ "$CFG_DEBUG" = "no" ]; then
7090 QMAKE_OUTDIR="${QMAKE_OUTDIR}release"
7091 QMAKE_CONFIG="$QMAKE_CONFIG release"
7093 if [ "$CFG_SHARED" = "yes" ]; then
7094 QMAKE_OUTDIR="${QMAKE_OUTDIR}-shared"
7095 QMAKE_CONFIG="$QMAKE_CONFIG shared dll"
7096 elif [ "$CFG_SHARED" = "no" ]; then
7097 QMAKE_OUTDIR="${QMAKE_OUTDIR}-static"
7098 QMAKE_CONFIG="$QMAKE_CONFIG static"
7100 if [ "$PLATFORM_QWS" = "yes" ]; then
7101 QMAKE_OUTDIR="${QMAKE_OUTDIR}-emb-$CFG_EMBEDDED"
7102 QMAKE_CONFIG="$QMAKE_CONFIG embedded"
7103 QT_CONFIG="$QT_CONFIG embedded"
7104 rm -f "src/.moc/$QMAKE_OUTDIR/allmoc.cpp" # needs remaking if config changes
7106 if [ "$PLATFORM_QPA" = "yes" ]; then
7107 QMAKE_CONFIG="$QMAKE_CONFIG qpa"
7108 QT_CONFIG="$QT_CONFIG qpa"
7109 QTCONFIG_CONFIG="$QTCONFIG_CONFIG qpa"
7110 rm -f "src/.moc/$QMAKE_OUTDIR/allmoc.cpp" # needs remaking if config changes
7113 if [ "$CFG_EMBEDDED" = "nacl" ]; then
7114 QMAKE_CONFIG="$QMAKE_CONFIG nacl pepper"
7115 QT_CONFIG="$QT_CONFIG nacl pepper"
7116 rm -f "src/.moc/$QMAKE_OUTDIR/allmoc.cpp" # needs remaking if config changes
7119 if [ "$XPLATFORM_MINGW" != "yes" ]; then
7120 # Do not set this here for Windows. Let qmake do it so
7121 # debug and release precompiled headers are kept separate.
7122 QMakeVar set PRECOMPILED_DIR ".pch/$QMAKE_OUTDIR"
7124 QMakeVar set OBJECTS_DIR ".obj/$QMAKE_OUTDIR"
7125 QMakeVar set MOC_DIR ".moc/$QMAKE_OUTDIR"
7126 QMakeVar set RCC_DIR ".rcc/$QMAKE_OUTDIR"
7127 QMakeVar set UI_DIR ".uic/$QMAKE_OUTDIR"
7128 if [ "$CFG_LARGEFILE" = "yes" ] && [ "$XPLATFORM_MINGW" != "yes" ]; then
7129 QMAKE_CONFIG="$QMAKE_CONFIG largefile"
7131 if [ "$CFG_STL" = "no" ]; then
7132 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_STL"
7134 QMAKE_CONFIG="$QMAKE_CONFIG stl"
7136 if [ "$CFG_USE_GNUMAKE" = "yes" ]; then
7137 QMAKE_CONFIG="$QMAKE_CONFIG GNUmake"
7139 [ "$CFG_REDUCE_EXPORTS" = "yes" ] && QT_CONFIG="$QT_CONFIG reduce_exports"
7140 [ "$CFG_REDUCE_RELOCATIONS" = "yes" ] && QT_CONFIG="$QT_CONFIG reduce_relocations"
7141 [ "$CFG_PRECOMPILE" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG precompile_header"
7142 if [ "$CFG_SEPARATE_DEBUG_INFO" = "yes" ]; then
7143 QMakeVar add QMAKE_CFLAGS -g
7144 QMakeVar add QMAKE_CXXFLAGS -g
7145 QMAKE_CONFIG="$QMAKE_CONFIG separate_debug_info"
7147 if [ "$CFG_SEPARATE_DEBUG_INFO_NOCOPY" = "yes" ] ; then
7148 QMAKE_CONFIG="$QMAKE_CONFIG separate_debug_info_nocopy"
7150 [ "$CFG_MMX" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG mmx"
7151 [ "$CFG_3DNOW" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG 3dnow"
7152 [ "$CFG_SSE" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse"
7153 [ "$CFG_SSE2" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse2"
7154 [ "$CFG_SSE3" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse3"
7155 [ "$CFG_SSSE3" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG ssse3"
7156 [ "$CFG_SSE4_1" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse4_1"
7157 [ "$CFG_SSE4_2" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG sse4_2"
7158 [ "$CFG_AVX" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG avx"
7159 [ "$CFG_IWMMXT" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG iwmmxt"
7160 [ "$CFG_NEON" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG neon"
7161 [ "$PLATFORM_MAC" = "yes" ] && QMAKE_CONFIG="$QMAKE_CONFIG $CFG_MAC_ARCHS"
7162 if [ "$CFG_IPV6" = "yes" ]; then
7163 QT_CONFIG="$QT_CONFIG ipv6"
7165 if [ "$CFG_CLOCK_GETTIME" = "yes" ]; then
7166 QT_CONFIG="$QT_CONFIG clock-gettime"
7168 if [ "$CFG_CLOCK_MONOTONIC" = "yes" ]; then
7169 QT_CONFIG="$QT_CONFIG clock-monotonic"
7171 if [ "$CFG_MREMAP" = "yes" ]; then
7172 QT_CONFIG="$QT_CONFIG mremap"
7174 if [ "$CFG_GETADDRINFO" = "yes" ]; then
7175 QT_CONFIG="$QT_CONFIG getaddrinfo"
7177 if [ "$CFG_IPV6IFNAME" = "yes" ]; then
7178 QT_CONFIG="$QT_CONFIG ipv6ifname"
7180 if [ "$CFG_GETIFADDRS" = "yes" ]; then
7181 QT_CONFIG="$QT_CONFIG getifaddrs"
7183 if [ "$CFG_INOTIFY" = "yes" ]; then
7184 QT_CONFIG="$QT_CONFIG inotify"
7186 if [ "$CFG_LIBJPEG" = "no" ]; then
7188 elif [ "$CFG_LIBJPEG" = "system" ]; then
7189 QT_CONFIG="$QT_CONFIG system-jpeg"
7191 if [ "$CFG_JPEG" = "no" ]; then
7192 QT_CONFIG="$QT_CONFIG no-jpeg"
7193 elif [ "$CFG_JPEG" = "yes" ]; then
7194 QT_CONFIG="$QT_CONFIG jpeg"
7196 if [ "$CFG_LIBMNG" = "no" ]; then
7198 elif [ "$CFG_LIBMNG" = "system" ]; then
7199 QT_CONFIG="$QT_CONFIG system-mng"
7201 if [ "$CFG_MNG" = "no" ]; then
7202 QT_CONFIG="$QT_CONFIG no-mng"
7203 elif [ "$CFG_MNG" = "yes" ]; then
7204 QT_CONFIG="$QT_CONFIG mng"
7206 if [ "$CFG_LIBPNG" = "no" ]; then
7209 if [ "$CFG_LIBPNG" = "system" ]; then
7210 QT_CONFIG="$QT_CONFIG system-png"
7212 if [ "$CFG_PNG" = "no" ]; then
7213 QT_CONFIG="$QT_CONFIG no-png"
7214 elif [ "$CFG_PNG" = "yes" ]; then
7215 QT_CONFIG="$QT_CONFIG png"
7217 if [ "$CFG_GIF" = "no" ]; then
7218 QT_CONFIG="$QT_CONFIG no-gif"
7219 elif [ "$CFG_GIF" = "yes" ]; then
7220 QT_CONFIG="$QT_CONFIG gif"
7222 if [ "$CFG_LIBTIFF" = "no" ]; then
7224 elif [ "$CFG_LIBTIFF" = "system" ]; then
7225 QT_CONFIG="$QT_CONFIG system-tiff"
7227 if [ "$CFG_TIFF" = "no" ]; then
7228 QT_CONFIG="$QT_CONFIG no-tiff"
7229 elif [ "$CFG_TIFF" = "yes" ]; then
7230 QT_CONFIG="$QT_CONFIG tiff"
7232 if [ "$CFG_LIBFREETYPE" = "no" ]; then
7233 QT_CONFIG="$QT_CONFIG no-freetype"
7234 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_FREETYPE"
7235 elif [ "$CFG_LIBFREETYPE" = "system" ]; then
7236 QT_CONFIG="$QT_CONFIG system-freetype"
7238 QT_CONFIG="$QT_CONFIG freetype"
7240 if [ "$CFG_GUI" = "auto" ]; then
7243 if [ "$CFG_GUI" = "no" ]; then
7244 QT_CONFIG="$QT_CONFIG no-gui"
7246 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GUI"
7250 if [ "x$PLATFORM_MAC" = "xyes" ] && [ "$XPLATFORM_MINGW" != "yes" ] && [ "$XPLATFORM_SYMBIAN" != "yes" ]; then
7251 #On Mac we implicitly link against libz, so we
7252 #never use the 3rdparty stuff.
7253 [ "$CFG_ZLIB" = "yes" ] && CFG_ZLIB="system"
7255 if [ "$CFG_ZLIB" = "yes" ]; then
7256 QT_CONFIG="$QT_CONFIG zlib"
7257 elif [ "$CFG_ZLIB" = "system" ]; then
7258 QT_CONFIG="$QT_CONFIG system-zlib"
7261 if [ "$CFG_S60" = "yes" ]; then
7262 QT_CONFIG="$QT_CONFIG s60"
7265 if [ "$CFG_SYMBIAN_DEFFILES" = "yes" ]; then
7266 QTCONFIG_CONFIG="$QTCONFIG_CONFIG def_files"
7268 QTCONFIG_CONFIG="$QTCONFIG_CONFIG def_files_disabled"
7271 [ "$CFG_NIS" = "yes" ] && QT_CONFIG="$QT_CONFIG nis"
7272 [ "$CFG_CUPS" = "yes" ] && QT_CONFIG="$QT_CONFIG cups"
7273 [ "$CFG_ICONV" = "yes" ] && QT_CONFIG="$QT_CONFIG iconv"
7274 [ "$CFG_ICONV" = "sun" ] && QT_CONFIG="$QT_CONFIG sun-libiconv"
7275 [ "$CFG_ICONV" = "gnu" ] && QT_CONFIG="$QT_CONFIG gnu-libiconv"
7276 [ "$CFG_GLIB" = "yes" ] && QT_CONFIG="$QT_CONFIG glib"
7277 [ "$CFG_GSTREAMER" = "yes" ] && QT_CONFIG="$QT_CONFIG gstreamer"
7278 [ "$CFG_DBUS" = "yes" ] && QT_CONFIG="$QT_CONFIG dbus"
7279 [ "$CFG_DBUS" = "linked" ] && QT_CONFIG="$QT_CONFIG dbus dbus-linked"
7280 [ "$CFG_NAS" = "system" ] && QT_CONFIG="$QT_CONFIG nas"
7281 [ "$CFG_OPENSSL" = "yes" ] && QT_CONFIG="$QT_CONFIG openssl"
7282 [ "$CFG_OPENSSL" = "linked" ] && QT_CONFIG="$QT_CONFIG openssl-linked"
7283 [ "$CFG_MAC_HARFBUZZ" = "yes" ] && QT_CONFIG="$QT_CONFIG harfbuzz"
7285 if [ "$PLATFORM_X11" = "yes" ]; then
7286 [ "$CFG_SM" = "yes" ] && QT_CONFIG="$QT_CONFIG x11sm"
7288 # for some reason, the following libraries are not always built shared,
7289 # so *every* program/lib (including Qt) has to link against them
7290 if [ "$CFG_XSHAPE" = "yes" ]; then
7291 QT_CONFIG="$QT_CONFIG xshape"
7293 if [ "$CFG_XVIDEO" = "yes" ]; then
7294 QT_CONFIG="$QT_CONFIG xvideo"
7296 if [ "$CFG_XSYNC" = "yes" ]; then
7297 QT_CONFIG="$QT_CONFIG xsync"
7299 if [ "$CFG_XINERAMA" = "yes" ]; then
7300 QT_CONFIG="$QT_CONFIG xinerama"
7301 QMakeVar set QMAKE_LIBS_X11 '-lXinerama $$QMAKE_LIBS_X11'
7303 if [ "$CFG_XCURSOR" = "yes" ]; then
7304 QT_CONFIG="$QT_CONFIG xcursor"
7305 QMakeVar set QMAKE_LIBS_X11 '-lXcursor $$QMAKE_LIBS_X11'
7307 if [ "$CFG_XFIXES" = "yes" ]; then
7308 QT_CONFIG="$QT_CONFIG xfixes"
7309 QMakeVar set QMAKE_LIBS_X11 '-lXfixes $$QMAKE_LIBS_X11'
7311 if [ "$CFG_XRANDR" = "yes" ]; then
7312 QT_CONFIG="$QT_CONFIG xrandr"
7313 if [ "$CFG_XRENDER" != "yes" ]; then
7314 # libXrandr uses 1 function from libXrender, so we always have to have it :/
7315 QMakeVar set QMAKE_LIBS_X11 '-lXrandr -lXrender $$QMAKE_LIBS_X11'
7317 QMakeVar set QMAKE_LIBS_X11 '-lXrandr $$QMAKE_LIBS_X11'
7320 if [ "$CFG_XRENDER" = "yes" ]; then
7321 QT_CONFIG="$QT_CONFIG xrender"
7322 QMakeVar set QMAKE_LIBS_X11 '-lXrender $$QMAKE_LIBS_X11'
7324 if [ "$CFG_MITSHM" = "yes" ]; then
7325 QT_CONFIG="$QT_CONFIG mitshm"
7327 if [ "$CFG_FONTCONFIG" = "yes" ]; then
7328 QT_CONFIG="$QT_CONFIG fontconfig"
7330 if [ "$CFG_XINPUT" = "yes" ]; then
7331 QMakeVar set QMAKE_LIBS_X11 '-lXi $$QMAKE_LIBS_X11'
7333 if [ "$CFG_XINPUT" = "yes" ]; then
7334 QT_CONFIG="$QT_CONFIG xinput tablet"
7336 if [ "$CFG_XKB" = "yes" ]; then
7337 QT_CONFIG="$QT_CONFIG xkb"
7341 [ '!' -z "$D_FLAGS" ] && QMakeVar add DEFINES "$D_FLAGS"
7342 [ '!' -z "$L_FLAGS" ] && QMakeVar add QMAKE_LIBDIR_FLAGS "$L_FLAGS"
7343 [ '!' -z "$l_FLAGS" ] && QMakeVar add LIBS "$l_FLAGS"
7345 if [ "$PLATFORM_MAC" = "yes" ]; then
7346 if [ "$CFG_RPATH" = "yes" ]; then
7347 QMAKE_CONFIG="$QMAKE_CONFIG absolute_library_soname"
7349 elif [ -z "`getQMakeConf \"$XQMAKESPEC\" | $AWK '/QMAKE_(LFLAGS_)?RPATH/ {print $3;}'`" ]; then
7350 if [ -n "$RPATH_FLAGS" ]; then
7352 echo "ERROR: -R cannot be used on this platform as \$QMAKE_LFLAGS_RPATH is"
7356 elif [ "$CFG_RPATH" = "yes" ]; then
7357 RPATH_MESSAGE=" NOTE: This platform does not support runtime library paths, using -no-rpath."
7361 if [ "$CFG_RPATH" = "yes" ]; then
7362 # set the default rpath to the library installation directory
7363 RPATH_FLAGS="\"$QT_INSTALL_LIBS\" $RPATH_FLAGS"
7365 if [ -n "$RPATH_FLAGS" ]; then
7366 # add the user defined rpaths
7367 QMakeVar add QMAKE_RPATHDIR "$RPATH_FLAGS"
7371 if [ '!' -z "$I_FLAGS" ]; then
7372 # add the user define include paths
7373 QMakeVar add QMAKE_CFLAGS "$I_FLAGS"
7374 QMakeVar add QMAKE_CXXFLAGS "$I_FLAGS"
7377 # turn off exceptions for the compilers that support it
7378 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
7379 COMPILER=`echo $XPLATFORM | cut -f 3- -d-`
7380 elif [ "$XPLATFORM" != "$PLATFORM" ]; then
7381 COMPILER=`echo $XPLATFORM | cut -f 2- -d-`
7383 COMPILER=`echo $PLATFORM | cut -f 2- -d-`
7385 if [ "$CFG_EXCEPTIONS" = "unspecified" -a "$PLATFORM_QWS" = "yes" ]; then
7389 if [ "$CFG_EXCEPTIONS" != "no" ]; then
7390 QTCONFIG_CONFIG="$QTCONFIG_CONFIG exceptions"
7393 if [ "$XPLATFORM_MINGW" = "yes" ]; then
7394 # mkspecs/features/win32/default_pre.prf sets "no-rtti".
7395 # Follow default behavior of configure.exe by overriding with "rtti".
7396 QTCONFIG_CONFIG="$QTCONFIG_CONFIG rtti"
7399 if [ "$CFG_ALSA" = "yes" ]; then
7400 QT_CONFIG="$QT_CONFIG alsa"
7403 if [ "$CFG_PULSEAUDIO" = "yes" ]; then
7404 QT_CONFIG="$QT_CONFIG pulseaudio"
7407 if [ "$CFG_COREWLAN" = "yes" ]; then
7408 QT_CONFIG="$QT_CONFIG corewlan"
7411 if [ "$CFG_ICD" = "yes" ]; then
7412 QT_CONFIG="$QT_CONFIG icd"
7415 if [ "$CFG_ICU" = "yes" ]; then
7416 QT_CONFIG="$QT_CONFIG icu"
7420 # Some Qt modules are too advanced in C++ for some old compilers
7421 # Detect here the platforms where they are known to work.
7423 # See Qt documentation for more information on which features are
7424 # supported and on which compilers.
7426 canBuildQtXmlPatterns="yes"
7427 canBuildWebKit="$HAVE_STL"
7428 canBuildQtConcurrent="yes"
7430 # WebKit requires stdint.h
7431 "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/stdint "Stdint" $L_FLAGS $I_FLAGS $l_FLAGS
7432 if [ $? != "0" ]; then
7436 case "$XPLATFORM" in
7438 # PA-RISC's assembly is too limited
7439 # gcc 3.4 on that platform can't build QtXmlPatterns
7440 # the assembly it generates cannot be compiled
7442 # Check gcc's version
7443 case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
7447 canBuildQtXmlPatterns="no"
7451 canBuildQtXmlPatterns="no"
7455 unsupported/vxworks-*-g++*)
7458 unsupported/vxworks-*-dcc*)
7460 canBuildQtXmlPatterns="no"
7463 # Check gcc's version
7464 case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
7472 canBuildQtXmlPatterns="no"
7477 # Check the compiler version
7478 case `${QMAKE_CONF_COMPILER} -V 2>&1 | awk '{print $4}'` in
7481 canBuildQtXmlPatterns="no"
7482 canBuildQtConcurrent="no"
7486 canBuildQtConcurrent="no"
7492 canBuildQtXmlPatterns="no"
7493 canBuildQtConcurrent="no"
7499 # Get the xlC version
7500 cat > xlcver.c <<EOF
7504 printf("%d.%d\n", __xlC__ >> 8, __xlC__ & 0xFF);
7509 if ${QMAKE_CONF_COMPILER} -o xlcver xlcver.c >/dev/null 2>/dev/null; then
7510 xlcver=`./xlcver 2>/dev/null`
7513 if [ "$OPT_VERBOSE" = "yes" ]; then
7514 if [ -n "$xlcver" ]; then
7515 echo Found IBM xlC version: $xlcver.
7517 echo Could not determine IBM xlC version, assuming oldest supported.
7524 canBuildQtXmlPatterns="no"
7525 canBuildQtConcurrent="no"
7529 canBuildQtConcurrent="no"
7535 canBuildQtConcurrent="no"
7543 if [ "$CFG_GUI" = "no" ]; then
7544 # WebKit requires QtGui
7548 if [ "$CFG_SHARED" = "no" ]; then
7550 echo "WARNING: Using static linking will disable the WebKit module."
7555 CFG_CONCURRENT="yes"
7556 if [ "$canBuildQtConcurrent" = "no" ]; then
7557 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_CONCURRENT"
7561 if [ "$CFG_XMLPATTERNS" = "yes" -a "$CFG_EXCEPTIONS" = "no" ]; then
7562 echo "QtXmlPatterns was requested, but it can't be built due to exceptions being disabled."
7565 if [ "$CFG_XMLPATTERNS" = "auto" -a "$CFG_EXCEPTIONS" != "no" ]; then
7566 CFG_XMLPATTERNS="$canBuildQtXmlPatterns"
7567 elif [ "$CFG_EXCEPTIONS" = "no" ]; then
7568 CFG_XMLPATTERNS="no"
7570 # No longer needed after modularization
7571 #if [ "$CFG_XMLPATTERNS" = "yes" ]; then
7572 # QT_CONFIG="$QT_CONFIG xmlpatterns"
7574 # QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XMLPATTERNS"
7577 # No longer needed after modularization
7578 #if [ "$CFG_MULTIMEDIA" = "no" ]; then
7579 # QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_MULTIMEDIA"
7581 # QT_CONFIG="$QT_CONFIG multimedia"
7584 if [ "$CFG_AUDIO_BACKEND" = "yes" ]; then
7585 QT_CONFIG="$QT_CONFIG audio-backend"
7588 if [ "$CFG_SVG" = "auto" ]; then
7592 if [ "$CFG_SVG" = "yes" ] && [ "$CFG_GUI" = "no" ]; then
7593 echo "QtSvg requested, but it can't be built without QtGui"
7597 if [ "$CFG_SVG" = "yes" ]; then
7598 QT_CONFIG="$QT_CONFIG svg"
7600 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SVG"
7603 if [ "$CFG_WEBKIT" != "no" ]; then
7604 CFG_WEBKIT="$canBuildWebKit"
7607 if [ "$CFG_WEBKIT" != "no" ]; then
7608 # No longer needed after modularization
7609 #QT_CONFIG="$QT_CONFIG webkit"
7610 # The reason we set CFG_WEBKIT, is such that the printed overview of what will be enabled, shows correctly.
7611 if [ "$CFG_WEBKIT" = "debug" ]; then
7612 QMAKE_CONFIG="$QMAKE_CONFIG webkit-debug"
7616 if [ "$CFG_SCRIPT" = "auto" ]; then
7620 # No longer needed after modularization
7621 #if [ "$CFG_SCRIPT" = "yes" ]; then
7622 # QT_CONFIG="$QT_CONFIG script"
7624 # QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SCRIPT"
7627 if [ "$CFG_SCRIPTTOOLS" = "yes" -a "$CFG_SCRIPT" = "no" ]; then
7628 echo "QtScriptTools was requested, but it can't be built due to QtScript being disabled."
7631 if [ "$CFG_SCRIPTTOOLS" = "auto" -a "$CFG_SCRIPT" != "no" ]; then
7632 case "$XPLATFORM" in
7634 CFG_SCRIPTTOOLS="no"
7637 CFG_SCRIPTTOOLS="yes"
7640 elif [ "$CFG_SCRIPT" = "no" ]; then
7641 CFG_SCRIPTTOOLS="no"
7644 # No longer needed after modularization
7645 #if [ "$CFG_SCRIPTTOOLS" = "yes" ]; then
7646 # QT_CONFIG="$QT_CONFIG scripttools"
7648 # QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SCRIPTTOOLS"
7652 if [ "$CFG_DECLARATIVE" = "yes" ]; then
7653 if [ "$CFG_SCRIPT" = "no" -o "$CFG_GUI" = "no" ]; then
7654 echo "Error: QtDeclarative was requested, but it can't be built due to QtScript or QtGui being disabled."
7658 if [ "$CFG_DECLARATIVE" = "auto" ]; then
7659 if [ "$CFG_SCRIPT" = "no" -o "$CFG_GUI" = "no" ]; then
7666 if [ "$CFG_DECLARATIVE" = "yes" ]; then
7667 # No longer needed after modularization
7668 #QT_CONFIG="$QT_CONFIG declarative"
7669 if [ "$CFG_DECLARATIVE_DEBUG" = "no" ]; then
7670 QCONFIG_FLAGS="$QCONFIG_FLAGS QDECLARATIVE_NO_DEBUG_PROTOCOL"
7673 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_DECLARATIVE"
7676 if [ "$CFG_LOCATION" = "auto" ]; then
7677 CFG_LOCATION="$CFG_GUI"
7680 if [ "$CFG_LOCATION" = "yes" ] && [ "$CFG_GUI" = "no" ]; then
7681 echo "QtLocation requested, but it can't be built without QtGui"
7685 #Disable QtLocation until ready
7688 if [ "$CFG_LOCATION" = "no" ]; then
7689 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_LOCATION"
7692 if [ "$CFG_EXCEPTIONS" = "no" ]; then
7695 QMakeVar add QMAKE_CFLAGS -fno-exceptions
7696 QMakeVar add QMAKE_CXXFLAGS -fno-exceptions
7697 QMakeVar add QMAKE_LFLAGS -fno-exceptions
7702 QMakeVar add QMAKE_CFLAGS -LANG:exceptions=off
7703 QMakeVar add QMAKE_CXXFLAGS -LANG:exceptions=off
7704 QMakeVar add QMAKE_LFLAGS -LANG:exceptions=off
7711 QMAKE_CONFIG="$QMAKE_CONFIG exceptions_off"
7714 # On Mac, set the minimum deployment target for the different architechtures
7715 # using the Xarch compiler option when supported (10.5 and up). On 10.4 the
7716 # deployment version is set to 10.4 globally using the QMAKE_MACOSX_DEPLOYMENT_TARGET
7718 if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_MAC_XARCH" != "no" ] ; then
7719 if echo "$CFG_MAC_ARCHS" | grep '\<x86\>' > /dev/null 2>&1; then
7720 QMakeVar add QMAKE_CFLAGS "-Xarch_i386 -mmacosx-version-min=10.4"
7721 QMakeVar add QMAKE_CXXFLAGS "-Xarch_i386 -mmacosx-version-min=10.4"
7722 QMakeVar add QMAKE_LFLAGS "-Xarch_i386 -mmacosx-version-min=10.4"
7723 QMakeVar add QMAKE_OBJECTIVE_CFLAGS_X86 "-arch i386 -Xarch_i386 -mmacosx-version-min=10.4"
7725 if echo "$CFG_MAC_ARCHS" | grep '\<ppc\>' > /dev/null 2>&1; then
7726 QMakeVar add QMAKE_CFLAGS "-Xarch_ppc -mmacosx-version-min=10.4"
7727 QMakeVar add QMAKE_CXXFLAGS "-Xarch_ppc -mmacosx-version-min=10.4"
7728 QMakeVar add QMAKE_LFLAGS "-Xarch_ppc -mmacosx-version-min=10.4"
7729 QMakeVar add QMAKE_OBJECTIVE_CFLAGS_PPC "-arch ppc -Xarch_ppc -mmacosx-version-min=10.4"
7731 if echo "$CFG_MAC_ARCHS" | grep '\<x86_64\>' > /dev/null 2>&1; then
7732 QMakeVar add QMAKE_CFLAGS "-Xarch_x86_64 -mmacosx-version-min=10.5"
7733 QMakeVar add QMAKE_CXXFLAGS "-Xarch_x86_64 -mmacosx-version-min=10.5"
7734 QMakeVar add QMAKE_LFLAGS "-Xarch_x86_64 -mmacosx-version-min=10.5"
7735 QMakeVar add QMAKE_OBJECTIVE_CFLAGS_X86_64 "-arch x86_64 -Xarch_x86_64 -mmacosx-version-min=10.5"
7737 if echo "$CFG_MAC_ARCHS" | grep '\<ppc64\>' > /dev/null 2>&1; then
7738 QMakeVar add QMAKE_CFLAGS "-Xarch_ppc64 -mmacosx-version-min=10.5"
7739 QMakeVar add QMAKE_CXXFLAGS "-Xarch_ppc64 -mmacosx-version-min=10.5"
7740 QMakeVar add QMAKE_LFLAGS "-Xarch_ppc64 -mmacosx-version-min=10.5"
7741 QMakeVar add QMAKE_OBJECTIVE_CFLAGS_PPC_64 "-arch ppc64 -Xarch_ppc64 -mmacosx-version-min=10.5"
7745 #-------------------------------------------------------------------------------
7746 # generate QT_BUILD_KEY
7747 #-------------------------------------------------------------------------------
7749 # some compilers generate binary incompatible code between different versions,
7750 # so we need to generate a build key that is different between these compilers
7755 COMPILER_VERSION=`${QMAKE_CONF_COMPILER} -dumpversion 2>/dev/null`
7757 case "$COMPILER_VERSION" in
7759 QT_GCC_MAJOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\1,'`
7760 QT_GCC_MINOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\2,'`
7761 QT_GCC_PATCH_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\)\.\([0-9]*\).*,\3,'`
7764 QT_GCC_MAJOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\).*,\1,'`
7765 QT_GCC_MINOR_VERSION=`echo $COMPILER_VERSION | sed 's,^\([0-9]*\)\.\([0-9]*\).*,\2,'`
7766 QT_GCC_PATCH_VERSION=0
7770 case "$COMPILER_VERSION" in
7772 COMPILER_VERSION="2.95.*"
7775 COMPILER_VERSION="3.*"
7778 COMPILER_VERSION="4"
7783 [ '!' -z "$COMPILER_VERSION" ] && COMPILER="g++-${COMPILER_VERSION}"
7786 # The Intel CC compiler on Unix systems matches the ABI of the g++
7787 # that is found on PATH
7788 COMPAT_COMPILER="icc"
7790 case "`g++ -dumpversion` 2>/dev/null" in
7792 COMPILER="g++-2.95.*"
7795 a COMPILER="g++-3.*"
7806 # QT_CONFIG can contain the following:
7808 # Things that affect the Qt API/ABI:
7811 # minimal-config small-config medium-config large-config full-config
7813 # Different edition modules:
7814 # gui network canvas table xml opengl sql
7816 # Things that do not affect the Qt API/ABI:
7818 # system-jpeg no-jpeg jpeg
7819 # system-mng no-mng mng
7820 # system-png no-png png
7821 # system-zlib no-zlib zlib
7822 # system-libtiff no-libtiff
7835 # X11 : x11sm xinerama xcursor xfixes xrandr xrender mitshm fontconfig xkb
7836 # Embedded: embedded qpa freetype
7842 # determine the build options
7843 for config_option in $QMAKE_CONFIG $QT_CONFIG; do
7845 case "$config_option" in
7847 # take the last *-config setting. this is the highest config being used,
7848 # and is the one that we will use for tagging plugins
7849 BUILD_CONFIG="$config_option"
7852 *) # skip all other options since they don't affect the Qt API/ABI.
7856 if [ "$SKIP" = "no" ]; then
7857 BUILD_OPTIONS="$BUILD_OPTIONS $config_option"
7861 # put the options that we are missing into .options
7863 for opt in `echo $ALL_OPTIONS`; do
7865 if echo $BUILD_OPTIONS | grep $opt >/dev/null 2>&1; then
7868 if [ "$SKIP" = "no" ]; then
7869 echo "$opt" >> .options
7873 # reconstruct BUILD_OPTIONS with a sorted negative feature list
7874 # (ie. only things that are missing are will be put into the build key)
7876 if [ -f .options ]; then
7877 for opt in `sort -f .options | uniq`; do
7878 BUILD_OPTIONS="$BUILD_OPTIONS no-$opt"
7883 # QT_NO* defines affect the Qt API (and binary compatibility). they need
7884 # to be included in the build key
7885 for build_option in $D_FLAGS; do
7886 build_option=`echo $build_option | cut -d \" -f 2 -`
7887 case "$build_option" in
7889 echo "$build_option" >> .options
7892 # skip all other compiler defines
7897 # sort the compile time defines (helps ensure that changes in this configure
7898 # script don't affect the QT_BUILD_KEY generation)
7899 if [ -f .options ]; then
7900 for opt in `sort -f .options | uniq`; do
7901 BUILD_OPTIONS="$BUILD_OPTIONS $opt"
7906 BUILD_OPTIONS="$BUILD_CONFIG $BUILD_OPTIONS"
7907 # extract the operating system from the XPLATFORM
7908 TARGET_OPERATING_SYSTEM=`echo $XPLATFORM | cut -f 2- -d/ | cut -f -1 -d-`
7909 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
7910 QT_BUILD_KEY_SYSTEM_PART="Symbian"
7912 QT_BUILD_KEY_SYSTEM_PART="$CFG_ARCH $TARGET_OPERATING_SYSTEM $COMPILER"
7915 # when cross-compiling, don't include build-host information (build key is target specific)
7916 QT_BUILD_KEY="$CFG_USER_BUILD_KEY $QT_BUILD_KEY_SYSTEM_PART $BUILD_OPTIONS"
7917 if [ -n "$QT_NAMESPACE" ]; then
7918 QT_BUILD_KEY="$QT_BUILD_KEY $QT_NAMESPACE"
7920 MAC_NEED_TWO_BUILD_KEYS="no"
7921 if [ "$PLATFORM_MAC" = "yes" -a "$CFG_MAC_COCOA" = "yes" ]; then
7922 QT_BUILD_KEY_CARBON=$QT_BUILD_KEY
7923 TARGET_OPERATING_SYSTEM="$TARGET_OPERATING_SYSTEM-cocoa"
7924 QT_BUILD_KEY_COCOA="$CFG_USER_BUILD_KEY $CFG_ARCH $TARGET_OPERATING_SYSTEM $COMPILER $BUILD_OPTIONS"
7925 if [ "$CFG_MAC_CARBON" = "no" ]; then
7926 QT_BUILD_KEY=$QT_BUILD_KEY_COCOA
7928 MAC_NEED_TWO_BUILD_KEYS="yes"
7931 # don't break loading plugins build with an older version of Qt
7932 QT_BUILD_KEY_COMPAT=
7933 if [ "$QT_CROSS_COMPILE" = "no" ]; then
7934 # previous versions of Qt used a build key built from the uname
7935 QT_BUILD_KEY_COMPAT="$CFG_USER_BUILD_KEY $UNAME_MACHINE $UNAME_SYSTEM $COMPILER $BUILD_OPTIONS"
7936 if [ -n "$QT_NAMESPACE" ]; then
7937 QT_BUILD_KEY_COMPAT="$QT_BUILD_KEY_COMPAT $QT_NAMESPACE"
7941 # is this compiler compatible with some other "standard" build key
7942 QT_BUILD_KEY_COMPAT_COMPILER=
7943 if [ ! -z "$COMPAT_COMPILER" ]; then
7944 QT_BUILD_KEY_COMPAT_COMPILER="$CFG_USER_BUILD_KEY $CFG_ARCH $TARGET_OPERATING_SYSTEM $COMPAT_COMPILER $BUILD_OPTIONS"
7945 if [ -n "$QT_NAMESPACE" ]; then
7946 QT_BUILD_KEY_COMPAT_COMPILER="$QT_BUILD_KEY_COMPAT_COMPILER $QT_NAMESPACE"
7950 # is this arch compatible with some other "standard" build key
7951 QT_BUILD_KEY_COMPAT_ARCH=
7952 if [ ! -z "$COMPAT_ARCH" ]; then
7953 QT_BUILD_KEY_COMPAT_ARCH="$CFG_USER_BUILD_KEY $COMPAT_ARCH $TARGET_OPERATING_SYSTEM $COMPILER $BUILD_OPTIONS"
7954 if [ -n "$QT_NAMESPACE" ]; then
7955 QT_BUILD_KEY_COMPAT_COMPILER="$QT_BUILD_KEY_COMPAT_ARCH $QT_NAMESPACE"
7959 # strip out leading/trailing/extra whitespace
7960 QT_BUILD_KEY=`echo $QT_BUILD_KEY | sed -e "s, *, ,g" -e "s,^ *,," -e "s, *$,,"`
7961 QT_BUILD_KEY_COMPAT=`echo $QT_BUILD_KEY_COMPAT | sed -e "s, *, ,g" -e "s,^ *,," -e "s, *$,,"`
7962 QT_BUILD_KEY_COMPAT_COMPILER=`echo $QT_BUILD_KEY_COMPAT_COMPILER | sed -e "s, *, ,g" -e "s,^ *,," -e "s, *$,,"`
7963 QT_BUILD_KEY_COMPAT_ARCH=`echo $QT_BUILD_KEY_COMPAT_ARCH | sed -e "s, *, ,g" -e "s,^ *,," -e "s, *$,,"`
7965 #-------------------------------------------------------------------------------
7966 # part of configuration information goes into qconfig.h
7967 #-------------------------------------------------------------------------------
7969 case "$CFG_QCONFIG" in
7971 echo "/* Everything */" >"$outpath/src/corelib/global/qconfig.h.new"
7974 tmpconfig="$outpath/src/corelib/global/qconfig.h.new"
7975 echo "#ifndef QT_BOOTSTRAPPED" >"$tmpconfig"
7976 if [ -f "$relpath/src/corelib/global/qconfig-$CFG_QCONFIG.h" ]; then
7977 cat "$relpath/src/corelib/global/qconfig-$CFG_QCONFIG.h" >>"$tmpconfig"
7978 elif [ -f `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"` ]; then
7979 cat `"$relpath/config.tests/unix/makeabs" "${CFG_QCONFIG}"` >>"$tmpconfig"
7981 echo "#endif" >>"$tmpconfig"
7985 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
7989 # define QT_EDITION $QT_EDITION
7992 /* Machine byte-order */
7993 #define Q_BIG_ENDIAN 4321
7994 #define Q_LITTLE_ENDIAN 1234
7997 if [ "$MAC_NEED_TWO_BUILD_KEYS" = "no" ]; then
7998 echo "#define QT_BUILD_KEY \"$QT_BUILD_KEY\"" \
7999 >> "$outpath/src/corelib/global/qconfig.h.new"
8001 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
8003 #define QT_BUILD_KEY_CARBON "$QT_BUILD_KEY_CARBON"
8004 #define QT_BUILD_KEY_COCOA "$QT_BUILD_KEY_COCOA"
8008 if [ -n "$QT_BUILD_KEY_COMPAT" ]; then
8009 echo "#define QT_BUILD_KEY_COMPAT \"$QT_BUILD_KEY_COMPAT\"" \
8010 >> "$outpath/src/corelib/global/qconfig.h.new"
8012 if [ -n "$QT_BUILD_KEY_COMPAT_COMPILER" ]; then
8013 echo "#define QT_BUILD_KEY_COMPAT2 \"$QT_BUILD_KEY_COMPAT_COMPILER\"" \
8014 >> "$outpath/src/corelib/global/qconfig.h.new"
8016 if [ -n "$QT_BUILD_KEY_COMPAT_ARCH" ]; then
8017 echo "#define QT_BUILD_KEY_COMPAT3 \"$QT_BUILD_KEY_COMPAT_ARCH\"" \
8018 >> "$outpath/src/corelib/global/qconfig.h.new"
8021 echo "" >>"$outpath/src/corelib/global/qconfig.h.new"
8023 echo "#ifdef QT_BOOTSTRAPPED" >>"$outpath/src/corelib/global/qconfig.h.new"
8024 if [ "$CFG_HOST_ENDIAN" = "auto" ]; then
8025 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
8026 #if defined(__BIG_ENDIAN__)
8027 # define Q_BYTE_ORDER Q_BIG_ENDIAN
8028 #elif defined(__LITTLE_ENDIAN__)
8029 # define Q_BYTE_ORDER Q_LITTLE_ENDIAN
8031 # error "Unable to determine byte order!"
8035 echo "#define Q_BYTE_ORDER $CFG_HOST_ENDIAN" >>"$outpath/src/corelib/global/qconfig.h.new"
8037 echo "#else" >>"$outpath/src/corelib/global/qconfig.h.new"
8038 if [ "$CFG_ENDIAN" = "auto" ]; then
8039 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
8040 #if defined(__BIG_ENDIAN__)
8041 # define Q_BYTE_ORDER Q_BIG_ENDIAN
8042 #elif defined(__LITTLE_ENDIAN__)
8043 # define Q_BYTE_ORDER Q_LITTLE_ENDIAN
8045 # error "Unable to determine byte order!"
8049 echo "#define Q_BYTE_ORDER $CFG_ENDIAN" >>"$outpath/src/corelib/global/qconfig.h.new"
8051 echo "#endif" >>"$outpath/src/corelib/global/qconfig.h.new"
8053 if [ "$CFG_DOUBLEFORMAT" != "normal" ]; then
8054 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
8055 /* Non-IEEE double format */
8056 #define Q_DOUBLE_LITTLE "01234567"
8057 #define Q_DOUBLE_BIG "76543210"
8058 #define Q_DOUBLE_LITTLE_SWAPPED "45670123"
8059 #define Q_DOUBLE_BIG_SWAPPED "32107654"
8060 #define Q_DOUBLE_FORMAT $CFG_DOUBLEFORMAT
8063 if [ "$CFG_ARMFPA" = "yes" ]; then
8064 if [ "$CFG_ARCH" != "$CFG_HOST_ARCH" ]; then
8065 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
8066 #ifndef QT_BOOTSTRAPPED
8071 echo "#define QT_ARMFPA" >>"$outpath/src/corelib/global/qconfig.h.new"
8075 CFG_ARCH_STR=`echo $CFG_ARCH | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
8076 CFG_HOST_ARCH_STR=`echo $CFG_HOST_ARCH | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
8077 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
8078 /* Machine Architecture */
8079 #ifndef QT_BOOTSTRAPPED
8080 # define QT_ARCH_${CFG_ARCH_STR}
8082 # define QT_ARCH_${CFG_HOST_ARCH_STR}
8086 echo '/* Compile time features */' >>"$outpath/src/corelib/global/qconfig.h.new"
8087 [ '!' -z "$LicenseKeyExt" ] && echo "#define QT_PRODUCT_LICENSEKEY \"$LicenseKeyExt\"" >>"$outpath/src/corelib/global/qconfig.h.new"
8089 if [ "$CFG_LARGEFILE" = "yes" ] && [ "$XPLATFORM_MINGW" != "yes" ]; then
8090 echo "#define QT_LARGEFILE_SUPPORT 64" >>"$outpath/src/corelib/global/qconfig.h.new"
8093 # if both carbon and cocoa are specified, enable the autodetection code.
8094 if [ "$PLATFORM_MAC" = "yes" -a "$CFG_MAC_COCOA" = "yes" -a "$CFG_MAC_CARBON" = "yes" ]; then
8095 echo "#define QT_AUTODETECT_COCOA 1" >>"$outpath/src/corelib/global/qconfig.h.new"
8096 elif [ "$PLATFORM_MAC" = "yes" -a "$CFG_MAC_COCOA" = "yes" ]; then
8097 echo "#define QT_MAC_USE_COCOA 1" >>"$outpath/src/corelib/global/qconfig.h.new"
8100 if [ "$CFG_FRAMEWORK" = "yes" ]; then
8101 echo "#define QT_MAC_FRAMEWORK_BUILD" >>"$outpath/src/corelib/global/qconfig.h.new"
8104 if [ "$PLATFORM_MAC" = "yes" ]; then
8105 cat >>"$outpath/src/corelib/global/qconfig.h.new" <<EOF
8106 #if defined(__LP64__)
8107 # define QT_POINTER_SIZE 8
8109 # define QT_POINTER_SIZE 4
8113 "$unixtests/ptrsize.test" "$XQMAKESPEC" $OPT_VERBOSE "$relpath" "$outpath"
8114 echo "#define QT_POINTER_SIZE $?" >>"$outpath/src/corelib/global/qconfig.h.new"
8118 echo "" >>"$outpath/src/corelib/global/qconfig.h.new"
8120 if [ "$CFG_DEV" = "yes" ]; then
8121 echo "#define QT_BUILD_INTERNAL" >>"$outpath/src/corelib/global/qconfig.h.new"
8124 # Embedded compile time options
8125 if [ "$PLATFORM_QWS" = "yes" ]; then
8126 # Add QWS to config.h
8127 QCONFIG_FLAGS="$QCONFIG_FLAGS Q_WS_QWS"
8129 # Add excluded decorations to $QCONFIG_FLAGS
8130 decors=`grep '^decorations -= ' "$QMAKE_VARS_FILE" | ${AWK} '{print $3}'`
8131 for decor in $decors; do
8132 NODECORATION=`echo $decor | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
8133 QCONFIG_FLAGS="${QCONFIG_FLAGS} QT_NO_QWS_DECORATION_${NODECORATION}"
8136 # Figure which embedded drivers which are turned off
8137 CFG_GFX_OFF="$CFG_GFX_AVAILABLE"
8138 for ADRIVER in $CFG_GFX_ON; do
8139 CFG_GFX_OFF=`echo "${CFG_GFX_OFF} " | sed "s,${ADRIVER} ,,g"`
8142 CFG_KBD_OFF="$CFG_KBD_AVAILABLE"
8143 # the um driver is currently not in the available list for external builds
8144 if [ "$CFG_DEV" = "no" ]; then
8145 CFG_KBD_OFF="$CFG_KBD_OFF um"
8147 for ADRIVER in $CFG_KBD_ON; do
8148 CFG_KBD_OFF=`echo "${CFG_KBD_OFF} " | sed "s,${ADRIVER} ,,g"`
8151 CFG_MOUSE_OFF="$CFG_MOUSE_AVAILABLE"
8152 for ADRIVER in $CFG_MOUSE_ON; do
8153 CFG_MOUSE_OFF=`echo "${CFG_MOUSE_OFF} " | sed "s,${ADRIVER} ,,g"`
8156 for DRIVER in $CFG_GFX_OFF; do
8157 NODRIVER=`echo $DRIVER | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
8158 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_QWS_$NODRIVER"
8161 for DRIVER in $CFG_KBD_OFF; do
8162 NODRIVER=`echo $DRIVER | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
8163 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_QWS_KBD_$NODRIVER"
8166 for DRIVER in $CFG_MOUSE_OFF; do
8167 NODRIVER=`echo $DRIVER | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
8168 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_QWS_MOUSE_$NODRIVER"
8172 if [ "$PLATFORM_QPA" = "yes" ]; then
8173 # Add QPA to config.h
8174 QCONFIG_FLAGS="$QCONFIG_FLAGS Q_WS_QPA QT_NO_QWS_QPF QT_NO_QWS_QPF2"
8177 if [ "${CFG_USE_FLOATMATH}" = "yes" ]; then
8178 QCONFIG_FLAGS="${QCONFIG_FLAGS} QT_USE_MATH_H_FLOATS"
8181 # Add turned on SQL drivers
8182 for DRIVER in $CFG_SQL_AVAILABLE; do
8183 eval "VAL=\$CFG_SQL_$DRIVER"
8186 ONDRIVER=`echo $DRIVER | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
8187 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_SQL_$ONDRIVER"
8188 SQL_DRIVERS="$SQL_DRIVERS $DRIVER"
8191 SQL_PLUGINS="$SQL_PLUGINS $DRIVER"
8197 QMakeVar set sql-drivers "$SQL_DRIVERS"
8198 QMakeVar set sql-plugins "$SQL_PLUGINS"
8200 # Add other configuration options to the qconfig.h file
8201 [ "$CFG_GIF" = "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_BUILTIN_GIF_READER=1"
8202 [ "$CFG_TIFF" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_TIFF"
8203 [ "$CFG_PNG" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_PNG"
8204 [ "$CFG_JPEG" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_JPEG"
8205 [ "$CFG_MNG" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IMAGEFORMAT_MNG"
8206 [ "$CFG_ZLIB" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ZLIB"
8207 [ "$CFG_S60" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_S60"
8208 [ "$CFG_EXCEPTIONS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_EXCEPTIONS"
8209 [ "$CFG_IPV6" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IPV6"
8210 [ "$CFG_SXE" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SXE"
8211 [ "$CFG_DBUS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_DBUS"
8213 if [ "$PLATFORM_QWS" != "yes" -a "$PLATFORM_QPA" != "yes" ]; then
8214 [ "$CFG_GRAPHICS_SYSTEM" = "raster" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_RASTER"
8215 [ "$CFG_GRAPHICS_SYSTEM" = "opengl" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_OPENGL"
8216 [ "$CFG_GRAPHICS_SYSTEM" = "openvg" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_OPENVG"
8217 [ "$CFG_GRAPHICS_SYSTEM" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_GRAPHICSSYSTEM_RUNTIME"
8220 # X11/Unix/Mac only configs
8221 [ "$CFG_CUPS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_CUPS"
8222 [ "$CFG_ICONV" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ICONV"
8223 [ "$CFG_GLIB" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GLIB"
8224 [ "$CFG_GSTREAMER" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GSTREAMER"
8225 [ "$CFG_QGTKSTYLE" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_STYLE_GTK"
8226 [ "$CFG_CLOCK_MONOTONIC" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_CLOCK_MONOTONIC"
8227 [ "$CFG_MREMAP" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_MREMAP"
8228 [ "$CFG_GETADDRINFO" = "no" ]&& QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GETADDRINFO"
8229 [ "$CFG_IPV6IFNAME" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_IPV6IFNAME"
8230 [ "$CFG_GETIFADDRS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_GETIFADDRS"
8231 [ "$CFG_INOTIFY" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_INOTIFY"
8232 [ "$CFG_NAS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_NAS"
8233 [ "$CFG_NIS" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_NIS"
8234 [ "$CFG_OPENSSL" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_OPENSSL"
8235 [ "$CFG_OPENSSL" = "linked" ]&& QCONFIG_FLAGS="$QCONFIG_FLAGS QT_LINKED_OPENSSL"
8237 [ "$CFG_SM" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SESSIONMANAGER"
8238 [ "$CFG_XCURSOR" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XCURSOR"
8239 [ "$CFG_XFIXES" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XFIXES"
8240 [ "$CFG_FONTCONFIG" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_FONTCONFIG"
8241 [ "$CFG_XINERAMA" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XINERAMA"
8242 [ "$CFG_XKB" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XKB"
8243 [ "$CFG_XRANDR" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XRANDR"
8244 [ "$CFG_XRENDER" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XRENDER"
8245 [ "$CFG_MITSHM" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_MITSHM"
8246 [ "$CFG_XSHAPE" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_SHAPE"
8247 [ "$CFG_XVIDEO" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XVIDEO"
8248 [ "$CFG_XSYNC" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XSYNC"
8249 [ "$CFG_XINPUT" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_XINPUT QT_NO_TABLET"
8251 [ "$CFG_XCURSOR" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XCURSOR"
8252 [ "$CFG_XINERAMA" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XINERAMA"
8253 [ "$CFG_XFIXES" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XFIXES"
8254 [ "$CFG_XRANDR" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XRANDR"
8255 [ "$CFG_XINPUT" = "runtime" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_RUNTIME_XINPUT"
8256 [ "$CFG_ALSA" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ALSA"
8257 [ "$CFG_PULSEAUDIO" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_PULSEAUDIO"
8258 [ "$CFG_COREWLAN" = "no" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_COREWLAN"
8259 [ "$CFG_ICD" != "yes" ] && QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_ICD"
8261 # sort QCONFIG_FLAGS for neatness if we can
8262 [ '!' -z "$AWK" ] && QCONFIG_FLAGS=`echo $QCONFIG_FLAGS | $AWK '{ gsub(" ", "\n"); print }' | sort | uniq`
8263 QCONFIG_FLAGS=`echo $QCONFIG_FLAGS`
8265 if [ "$XPLATFORM_SYMBIAN" = "yes" ]; then
8266 # Enable Symbian DLLs and export rules.
8267 # We cannot use Linux's default export rules since they export everything.
8268 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_DLL"
8269 # Disable non-working features.
8270 QCONFIG_FLAGS="$QCONFIG_FLAGS QT_NO_CRASHHANDLER QT_NO_PRINTER QT_NO_SYSTEMTRAYICON"
8273 if [ -n "$QCONFIG_FLAGS" ]; then
8274 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
8275 #ifndef QT_BOOTSTRAPPED
8278 for cfg in $QCONFIG_FLAGS; do
8279 cfgd=`echo $cfg | sed 's/=.*$//'` # trim pushed 'Foo=Bar' defines
8280 cfg=`echo $cfg | sed 's/=/ /'` # turn first '=' into a space
8281 # figure out define logic, so we can output the correct
8282 # ifdefs to override the global defines in a project
8284 if [ true ] && echo "$cfgd" | grep 'QT_NO_' >/dev/null 2>&1; then
8285 # QT_NO_option can be forcefully turned on by QT_option
8286 cfgdNeg=`echo $cfgd | sed "s,QT_NO_,QT_,"`
8287 elif [ true ] && echo "$cfgd" | grep 'QT_' >/dev/null 2>&1; then
8288 # QT_option can be forcefully turned off by QT_NO_option
8289 cfgdNeg=`echo $cfgd | sed "s,QT_,QT_NO_,"`
8292 if [ -z $cfgdNeg ]; then
8293 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
8300 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
8301 #if defined($cfgd) && defined($cfgdNeg)
8303 #elif !defined($cfgd) && !defined($cfgdNeg)
8310 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
8311 #endif // QT_BOOTSTRAPPED
8316 if [ "$CFG_REDUCE_EXPORTS" = "yes" ]; then
8317 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
8318 #define QT_VISIBILITY_AVAILABLE
8323 if [ -n "$QT_LIBINFIX" ]; then
8324 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
8325 #define QT_LIBINFIX "$QT_LIBINFIX"
8330 if [ -n "$CFG_RUNTIME_SYSTEM" ]; then
8331 cat >>"$outpath/src/corelib/global/qconfig.h.new" << EOF
8332 #define QT_DEFAULT_RUNTIME_SYSTEM "$CFG_RUNTIME_SYSTEM"
8337 # avoid unecessary rebuilds by copying only if qconfig.h has changed
8338 if cmp -s "$outpath/src/corelib/global/qconfig.h" "$outpath/src/corelib/global/qconfig.h.new"; then
8339 rm -f "$outpath/src/corelib/global/qconfig.h.new"
8341 [ -f "$outpath/src/corelib/global/qconfig.h" ] && chmod +w "$outpath/src/corelib/global/qconfig.h"
8342 mv "$outpath/src/corelib/global/qconfig.h.new" "$outpath/src/corelib/global/qconfig.h"
8343 chmod -w "$outpath/src/corelib/global/qconfig.h"
8344 for conf in "$outpath/include/QtCore/qconfig.h" "$outpath/include/Qt/qconfig.h"; do
8345 ln -s "$outpath/src/corelib/global/qconfig.h" "$conf"
8349 #-------------------------------------------------------------------------------
8350 # save configuration into qconfig.pri
8351 #-------------------------------------------------------------------------------
8352 QTCONFIG="$outpath/mkspecs/qconfig.pri"
8353 QTCONFIG_CONFIG="$QTCONFIG_CONFIG no_mocdepend"
8354 [ -f "$QTCONFIG.tmp" ] && rm -f "$QTCONFIG.tmp"
8355 if [ "$CFG_DEBUG" = "yes" ]; then
8356 QTCONFIG_CONFIG="$QTCONFIG_CONFIG debug"
8357 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
8358 QT_CONFIG="$QT_CONFIG release"
8360 QT_CONFIG="$QT_CONFIG debug"
8361 elif [ "$CFG_DEBUG" = "no" ]; then
8362 QTCONFIG_CONFIG="$QTCONFIG_CONFIG release"
8363 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
8364 QT_CONFIG="$QT_CONFIG debug"
8366 QT_CONFIG="$QT_CONFIG release"
8368 if [ "$CFG_STL" = "yes" ]; then
8369 QTCONFIG_CONFIG="$QTCONFIG_CONFIG stl"
8371 if [ "$CFG_FRAMEWORK" = "no" ]; then
8372 QTCONFIG_CONFIG="$QTCONFIG_CONFIG qt_no_framework"
8374 QT_CONFIG="$QT_CONFIG qt_framework"
8375 QTCONFIG_CONFIG="$QTCONFIG_CONFIG qt_framework"
8377 if [ "$PLATFORM_MAC" = "yes" ]; then
8378 QT_CONFIG="$QT_CONFIG $CFG_MAC_ARCHS"
8380 if [ "$CFG_DEV" = "yes" ]; then
8381 QT_CONFIG="$QT_CONFIG private_tests"
8384 if [ -z "$QT_CFLAGS_FPU" ]; then
8385 if echo "$XPLATFORM" | grep "symbian-sbsv2" > /dev/null 2>&1; then
8386 QT_CFLAGS_FPU=softvfp
8390 # Make the application arch follow the Qt arch for single arch builds.
8391 # (for multiple-arch builds, set CONFIG manually in the application .pro file)
8392 if [ `echo "$CFG_MAC_ARCHS" | wc -w` -eq 1 ]; then
8393 QTCONFIG_CONFIG="$QTCONFIG_CONFIG $CFG_MAC_ARCHS"
8396 cat >>"$QTCONFIG.tmp" <<EOF
8398 CONFIG += $QTCONFIG_CONFIG
8400 QT_EDITION = $Edition
8401 QT_CONFIG += $QT_CONFIG
8404 QT_VERSION = $QT_VERSION
8405 QT_MAJOR_VERSION = $QT_MAJOR_VERSION
8406 QT_MINOR_VERSION = $QT_MINOR_VERSION
8407 QT_PATCH_VERSION = $QT_PATCH_VERSION
8410 QT_LIBINFIX = $QT_LIBINFIX
8411 QT_NAMESPACE = $QT_NAMESPACE
8412 QT_NAMESPACE_MAC_CRC = $QT_NAMESPACE_MAC_CRC
8415 if [ -n "$CFG_SYSROOT" ]; then
8416 echo "# sysroot" >>"$QTCONFIG.tmp"
8417 echo `basename "$XQMAKESPEC"` \{ >>"$QTCONFIG.tmp"
8418 echo " QT_SYSROOT += \$\$quote($CFG_SYSROOT)" >>"$QTCONFIG.tmp"
8419 echo " QMAKE_CFLAGS += --sysroot=\$\$QT_SYSROOT" >>"$QTCONFIG.tmp"
8420 echo " QMAKE_CXXFLAGS += --sysroot=\$\$QT_SYSROOT" >>"$QTCONFIG.tmp"
8421 echo " QMAKE_LFLAGS += --sysroot=\$\$QT_SYSROOT" >>"$QTCONFIG.tmp"
8422 echo "}" >> "$QTCONFIG.tmp"
8423 echo >> "$QTCONFIG.tmp"
8425 if [ "$CFG_RPATH" = "yes" ]; then
8426 echo "QMAKE_RPATHDIR += \"$QT_INSTALL_LIBS\"" >> "$QTCONFIG.tmp"
8428 if [ -n "$QT_GCC_MAJOR_VERSION" ]; then
8429 echo "QT_GCC_MAJOR_VERSION = $QT_GCC_MAJOR_VERSION" >> "$QTCONFIG.tmp"
8430 echo "QT_GCC_MINOR_VERSION = $QT_GCC_MINOR_VERSION" >> "$QTCONFIG.tmp"
8431 echo "QT_GCC_PATCH_VERSION = $QT_GCC_PATCH_VERSION" >> "$QTCONFIG.tmp"
8433 if [ -n "$QT_CFLAGS_FPU" ]; then
8434 echo "#Qt for symbian FPU settings" >> "$QTCONFIG.tmp"
8435 echo "MMP_RULES += \"ARMFPU $QT_CFLAGS_FPU\"" >> "$QTCONFIG.tmp"
8438 if [ -n "$QMAKE_INCDIR_OPENGL_ES2" ]; then
8439 echo "#Qt opengl include path" >> "$QTCONFIG.tmp"
8440 echo "QMAKE_INCDIR_OPENGL_ES2 = \"$QMAKE_INCDIR_OPENGL_ES2\"" >> "$QTCONFIG.tmp"
8443 # replace qconfig.pri if it differs from the newly created temp file
8444 if cmp -s "$QTCONFIG.tmp" "$QTCONFIG"; then
8445 rm -f "$QTCONFIG.tmp"
8447 mv -f "$QTCONFIG.tmp" "$QTCONFIG"
8450 #-------------------------------------------------------------------------------
8451 # save configuration into qmodule.pri
8452 #-------------------------------------------------------------------------------
8453 QTMODULE="$outpath/mkspecs/qmodule.pri"
8455 cat >>"$QTMODULE.tmp" <<EOF
8457 QT_SOURCE_TREE = \$\$quote($relpath)
8458 QT_BUILD_TREE = \$\$quote($outpath)
8459 QT_BUILD_PARTS = $CFG_BUILD_PARTS
8461 #local paths that cannot be queried from the QT_INSTALL_* properties while building QTDIR
8462 QMAKE_MOC = \$\$QT_BUILD_TREE/bin/moc
8463 QMAKE_UIC = \$\$QT_BUILD_TREE/bin/uic
8464 QMAKE_RCC = \$\$QT_BUILD_TREE/bin/rcc
8465 QMAKE_QDBUSXML2CPP = \$\$QT_BUILD_TREE/bin/qdbusxml2cpp
8466 QMAKE_INCDIR_QT = \$\$QT_BUILD_TREE/include
8467 QMAKE_LIBDIR_QT = \$\$QT_BUILD_TREE/lib
8471 # Ensure we can link to uninistalled libraries
8472 if [ "$XPLATFORM_MINGW" != "yes" ] && [ "$CFG_EMBEDDED" != "nacl" ] && linkerSupportsFlag -rpath-link "$outpath/lib"; then
8473 echo "QMAKE_LFLAGS = -Wl,-rpath-link,\$\$QT_BUILD_TREE/lib \$\$QMAKE_LFLAGS" >> "$QTMODULE.tmp"
8475 if [ -n "$QT_CFLAGS_PSQL" ]; then
8476 echo "QT_CFLAGS_PSQL = $QT_CFLAGS_PSQL" >> "$QTMODULE.tmp"
8478 if [ -n "$QT_LFLAGS_PSQL" ]; then
8479 echo "QT_LFLAGS_PSQL = $QT_LFLAGS_PSQL" >> "$QTMODULE.tmp"
8481 if [ -n "$QT_CFLAGS_MYSQL" ]; then
8482 echo "QT_CFLAGS_MYSQL = $QT_CFLAGS_MYSQL" >> "$QTMODULE.tmp"
8484 if [ -n "$QT_LFLAGS_MYSQL" ]; then
8485 echo "QT_LFLAGS_MYSQL = $QT_LFLAGS_MYSQL" >> "$QTMODULE.tmp"
8487 if [ -n "$QT_CFLAGS_SQLITE" ]; then
8488 echo "QT_CFLAGS_SQLITE = $QT_CFLAGS_SQLITE" >> "$QTMODULE.tmp"
8490 if [ -n "$QT_LFLAGS_SQLITE" ]; then
8491 echo "QT_LFLAGS_SQLITE = $QT_LFLAGS_SQLITE" >> "$QTMODULE.tmp"
8493 if [ -n "$QT_LFLAGS_ODBC" ]; then
8494 echo "QT_LFLAGS_ODBC = $QT_LFLAGS_ODBC" >> "$QTMODULE.tmp"
8496 if [ -n "$QT_LFLAGS_TDS" ]; then
8497 echo "QT_LFLAGS_TDS = $QT_LFLAGS_TDS" >> "$QTMODULE.tmp"
8500 if [ "$QT_EDITION" != "QT_EDITION_OPENSOURCE" ]; then
8501 echo "DEFINES *= QT_EDITION=QT_EDITION_DESKTOP" >> "$QTMODULE.tmp"
8504 #dump in the OPENSSL_LIBS info
8505 if [ '!' -z "$OPENSSL_LIBS" ]; then
8506 echo "OPENSSL_LIBS = $OPENSSL_LIBS" >> "$QTMODULE.tmp"
8507 elif [ "$CFG_OPENSSL" = "linked" ]; then
8508 echo "OPENSSL_LIBS = -lssl -lcrypto" >> "$QTMODULE.tmp"
8511 #dump in the SDK info
8512 if [ '!' -z "$CFG_SDK" ]; then
8513 echo "QMAKE_MAC_SDK = $CFG_SDK" >> "$QTMODULE.tmp"
8516 # mac gcc -Xarch support
8517 if [ "$CFG_MAC_XARCH" = "no" ]; then
8518 echo "QMAKE_MAC_XARCH = no" >> "$QTMODULE.tmp"
8521 #dump the qmake spec
8522 if [ -d "$outpath/mkspecs/$XPLATFORM" ]; then
8523 echo "QMAKESPEC = \$\$QT_BUILD_TREE/mkspecs/$XPLATFORM" >> "$QTMODULE.tmp"
8525 echo "QMAKESPEC = $XPLATFORM" >> "$QTMODULE.tmp"
8529 cat "$QMAKE_VARS_FILE" >> "$QTMODULE.tmp"
8530 rm -f "$QMAKE_VARS_FILE" 2>/dev/null
8532 # replace qmodule.pri if it differs from the newly created temp file
8533 if cmp -s "$QTMODULE.tmp" "$QTMODULE"; then
8534 rm -f "$QTMODULE.tmp"
8536 mv -f "$QTMODULE.tmp" "$QTMODULE"
8539 #-------------------------------------------------------------------------------
8540 # save configuration into .qmake.cache
8541 #-------------------------------------------------------------------------------
8543 CACHEFILE="$outpath/.qmake.cache"
8544 [ -f "$CACHEFILE.tmp" ] && rm -f "$CACHEFILE.tmp"
8545 cat >>"$CACHEFILE.tmp" <<EOF
8546 include(\$\$PWD/mkspecs/qmodule.pri)
8547 CONFIG += $QMAKE_CONFIG dylib create_prl link_prl depend_includepath fix_output_dirs no_private_qt_headers_warning QTDIR_build
8548 QMAKE_ABSOLUTE_SOURCE_ROOT = \$\$QT_SOURCE_TREE
8549 QMAKE_MOC_SRC = \$\$QT_BUILD_TREE/src/moc
8555 [ "$CFG_INCREMENTAL" = "auto" ] && "$WHICH" p4 >/dev/null 2>&1 && [ "$CFG_DEV" = "yes" ] && CFG_INCREMENTAL="yes"
8556 if [ "$CFG_INCREMENTAL" = "yes" ]; then
8557 find "$relpath" -perm u+w -mtime -3 | grep 'cpp$' | while read f; do
8558 # don't need to worry about generated files
8559 [ -r `echo $f | sed "s,cpp$,ui,"` ] && continue
8560 basename "$f" | grep '^moc_' >/dev/null 2>&1 && continue
8562 INCREMENTAL="$INCREMENTAL `basename \"$f\" | sed 's,.cpp,.o,'`"
8564 [ '!' -z "$INCREMENTAL" ] && echo "QMAKE_INCREMENTAL += $INCREMENTAL" >> "$CACHEFILE.tmp"
8565 [ -r "$outpath/.qmake.incremental" ] && echo "include($outpath/.qmake.incremental)" >> "$CACHEFILE.tmp"
8568 # replace .qmake.cache if it differs from the newly created temp file
8569 if cmp -s "$CACHEFILE.tmp" "$CACHEFILE"; then
8570 rm -f "$CACHEFILE.tmp"
8572 mv -f "$CACHEFILE.tmp" "$CACHEFILE"
8575 #-------------------------------------------------------------------------------
8576 # give feedback on configuration
8577 #-------------------------------------------------------------------------------
8581 if [ "$CFG_EXCEPTIONS" != "no" ]; then
8584 This target is using the GNU C++ compiler ($PLATFORM).
8586 Recent versions of this compiler automatically include code for
8587 exceptions, which increase both the size of the Qt libraries and
8588 the amount of memory taken by your applications.
8590 You may choose to re-run `basename $0` with the -no-exceptions
8591 option to compile Qt without exceptions. This is completely binary
8592 compatible, and existing applications will continue to work.
8600 if [ "$CFG_EXCEPTIONS" != "no" ]; then
8603 This target is using the MIPSpro C++ compiler ($PLATFORM).
8605 You may choose to re-run `basename $0` with the -no-exceptions
8606 option to compile Qt without exceptions. This will make the
8607 size of the Qt library smaller and reduce the amount of memory
8608 taken by your applications.
8619 if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_MAC_DWARF2" = "no" ] && [ "$CFG_WEBKIT" != "no" ] && [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
8621 WARNING: DWARF2 debug symbols are not enabled. Linking webkit
8622 in debug mode will run out of memory on systems with 2GB or less.
8623 Install Xcode 2.4.1 or higher to enable DWARF2, or configure with
8624 -no-webkit or -release to skip webkit debug.
8629 if [ "$XPLATFORM" = "$PLATFORM" ]; then
8630 echo "Build type: $PLATFORM"
8632 echo "Building on: $PLATFORM"
8633 echo "Building for: $XPLATFORM"
8636 if [ "$PLATFORM_MAC" = "yes" ]; then
8637 echo "Architecture: $CFG_ARCH ($CFG_MAC_ARCHS )"
8639 echo "Architecture: $CFG_ARCH"
8642 if [ "$PLATFORM_QWS" = "yes" -o "$PLATFORM_QPA" = "yes" ]; then
8643 echo "Host architecture: $CFG_HOST_ARCH"
8646 if [ "$PLATFORM_MAC" = "yes" ]; then
8647 if [ "$CFG_MAC_COCOA" = "yes" ]; then
8648 if [ "$CFG_MAC_CARBON" = "yes" ]; then
8649 echo "Using framework: Carbon for 32-bit, Cocoa for 64-bit"
8651 echo "Using framework: Cocoa"
8654 echo "Using framework: Carbon"
8658 if [ -n "$PLATFORM_NOTES" ]; then
8659 echo "Platform notes:"
8660 echo "$PLATFORM_NOTES"
8665 if [ "$OPT_VERBOSE" = "yes" ]; then
8666 echo $ECHO_N "qmake vars .......... $ECHO_C"
8667 cat "$QMAKE_VARS_FILE" | tr '\n' ' '
8668 echo "qmake switches ......... $QMAKE_SWITCHES"
8671 [ "$CFG_INCREMENTAL" = "yes" ] && [ '!' -z "$INCREMENTAL" ] && echo "Incremental ............ $INCREMENTAL"
8672 echo "Build .................. $CFG_BUILD_PARTS"
8673 echo "Configuration .......... $QMAKE_CONFIG $QT_CONFIG"
8674 if [ "$CFG_DEBUG_RELEASE" = "yes" ]; then
8675 echo "Debug .................. yes (combined)"
8676 if [ "$CFG_DEBUG" = "yes" ]; then
8677 echo "Default Link ........... debug"
8679 echo "Default Link ........... release"
8682 echo "Debug .................. $CFG_DEBUG"
8684 echo "Qt 3 compatibility ..... $CFG_QT3SUPPORT"
8685 [ "$CFG_DBUS" = "no" ] && echo "QtDBus module .......... no"
8686 [ "$CFG_DBUS" = "yes" ] && echo "QtDBus module .......... yes (run-time)"
8687 [ "$CFG_DBUS" = "linked" ] && echo "QtDBus module .......... yes (linked)"
8688 echo "QtConcurrent code ...... $CFG_CONCURRENT"
8689 echo "QtGui module ........... $CFG_GUI"
8690 echo "QtScript module ........ $CFG_SCRIPT"
8691 echo "QtScriptTools module ... $CFG_SCRIPTTOOLS"
8692 echo "QtXmlPatterns module ... $CFG_XMLPATTERNS"
8693 echo "Phonon module .......... $CFG_PHONON"
8694 echo "Multimedia module ...... $CFG_MULTIMEDIA"
8695 echo "SVG module ............. $CFG_SVG"
8696 case "$CFG_WEBKIT" in
8697 yes) echo "WebKit module .......... yes" ;;
8698 debug) echo "WebKit module .......... yes (debug)" ;;
8699 no) echo "WebKit module .......... no" ;;
8701 if [ "$CFG_WEBKIT" != "no" ] || [ "$CFG_SCRIPT" != "no" ]; then
8702 if [ "$CFG_JAVASCRIPTCORE_JIT" = "auto" ]; then
8703 echo "JavaScriptCore JIT ..... To be decided by JavaScriptCore"
8705 echo "JavaScriptCore JIT ..... $CFG_JAVASCRIPTCORE_JIT"
8708 echo "Declarative module ..... $CFG_DECLARATIVE"
8709 if [ "$CFG_DECLARATIVE" = "yes" ]; then
8710 echo "Declarative debugging ...$CFG_DECLARATIVE_DEBUG"
8712 echo "Location module ........ $CFG_LOCATION"
8713 echo "Support for S60 ........ $CFG_S60"
8714 echo "Symbian DEF files ...... $CFG_SYMBIAN_DEFFILES"
8715 echo "STL support ............ $CFG_STL"
8716 echo "PCH support ............ $CFG_PRECOMPILE"
8717 echo "MMX/3DNOW/SSE/SSE2/SSE3. ${CFG_MMX}/${CFG_3DNOW}/${CFG_SSE}/${CFG_SSE2}/${CFG_SSE3}"
8718 echo "SSSE3/SSE4.1/SSE4.2..... ${CFG_SSSE3}/${CFG_SSE4_1}/${CFG_SSE4_2}"
8719 echo "AVX..................... ${CFG_AVX}"
8720 if [ "$CFG_ARCH" = "arm" ] || [ "$CFG_ARCH" = "armv6" ]; then
8721 echo "iWMMXt support ......... ${CFG_IWMMXT}"
8722 echo "NEON support ........... ${CFG_NEON}"
8724 [ "${PLATFORM_QWS}" != "yes" -a "${PLATFORM_QPA}" != "yes" ] && echo "Graphics System ........ $CFG_GRAPHICS_SYSTEM"
8725 echo "IPv6 support ........... $CFG_IPV6"
8726 echo "IPv6 ifname support .... $CFG_IPV6IFNAME"
8727 echo "getaddrinfo support .... $CFG_GETADDRINFO"
8728 echo "getifaddrs support ..... $CFG_GETIFADDRS"
8729 echo "Accessibility .......... $CFG_ACCESSIBILITY"
8730 echo "NIS support ............ $CFG_NIS"
8731 echo "CUPS support ........... $CFG_CUPS"
8732 echo "Iconv support .......... $CFG_ICONV"
8733 echo "Glib support ........... $CFG_GLIB"
8734 echo "GStreamer support ...... $CFG_GSTREAMER"
8735 echo "PulseAudio support ..... $CFG_PULSEAUDIO"
8736 echo "Large File support ..... $CFG_LARGEFILE"
8737 echo "GIF support ............ $CFG_GIF"
8738 if [ "$CFG_TIFF" = "no" ]; then
8739 echo "TIFF support ........... $CFG_TIFF"
8741 echo "TIFF support ........... $CFG_TIFF ($CFG_LIBTIFF)"
8743 if [ "$CFG_JPEG" = "no" ]; then
8744 echo "JPEG support ........... $CFG_JPEG"
8746 echo "JPEG support ........... $CFG_JPEG ($CFG_LIBJPEG)"
8748 if [ "$CFG_PNG" = "no" ]; then
8749 echo "PNG support ............ $CFG_PNG"
8751 echo "PNG support ............ $CFG_PNG ($CFG_LIBPNG)"
8753 if [ "$CFG_MNG" = "no" ]; then
8754 echo "MNG support ............ $CFG_MNG"
8756 echo "MNG support ............ $CFG_MNG ($CFG_LIBMNG)"
8758 echo "zlib support ........... $CFG_ZLIB"
8759 echo "Session management ..... $CFG_SM"
8760 if [ "$PLATFORM_QWS" = "yes" ]; then
8761 echo "Embedded support ....... $CFG_EMBEDDED"
8762 if [ "$CFG_QWS_FREETYPE" = "auto" ]; then
8763 echo "Freetype2 support ...... $CFG_QWS_FREETYPE ($CFG_LIBFREETYPE)"
8765 echo "Freetype2 support ...... $CFG_QWS_FREETYPE"
8767 # Normalize the decoration output first
8768 CFG_GFX_ON=`echo ${CFG_GFX_ON}`
8769 CFG_GFX_PLUGIN=`echo ${CFG_GFX_PLUGIN}`
8770 echo "Graphics (qt) .......... ${CFG_GFX_ON}"
8771 echo "Graphics (plugin) ...... ${CFG_GFX_PLUGIN}"
8772 CFG_DECORATION_ON=`echo ${CFG_DECORATION_ON}`
8773 CFG_DECORATION_PLUGIN=`echo ${CFG_DECORATION_PLUGIN}`
8774 echo "Decorations (qt) ....... $CFG_DECORATION_ON"
8775 echo "Decorations (plugin) ... $CFG_DECORATION_PLUGIN"
8776 CFG_KBD_ON=`echo ${CFG_KBD_ON}`
8777 CFG_KBD_PLUGIN=`echo ${CFG_KBD_PLUGIN}`
8778 echo "Keyboard driver (qt) ... ${CFG_KBD_ON}"
8779 echo "Keyboard driver (plugin) .. ${CFG_KBD_PLUGIN}"
8780 CFG_MOUSE_ON=`echo ${CFG_MOUSE_ON}`
8781 CFG_MOUSE_PLUGIN=`echo ${CFG_MOUSE_PLUGIN}`
8782 echo "Mouse driver (qt) ...... $CFG_MOUSE_ON"
8783 echo "Mouse driver (plugin) .. $CFG_MOUSE_PLUGIN"
8785 if [ "$CFG_OPENGL" = "desktop" ]; then
8786 echo "OpenGL support ......... yes (Desktop OpenGL)"
8787 elif [ "$CFG_OPENGL" = "es1" ]; then
8788 echo "OpenGL support ......... yes (OpenGL ES 1.x Common profile)"
8789 elif [ "$CFG_OPENGL" = "es2" ]; then
8790 echo "OpenGL support ......... yes (OpenGL ES 2.x)"
8792 echo "OpenGL support ......... no"
8794 if [ "$CFG_EGL" != "no" ]; then
8795 if [ "$CFG_EGL_GLES_INCLUDES" = "yes" ]; then
8796 echo "EGL support ............ yes <GLES/egl.h>"
8798 echo "EGL support ............ yes <EGL/egl.h>"
8801 if [ "$CFG_OPENVG" ]; then
8802 if [ "$CFG_OPENVG_SHIVA" = "yes" ]; then
8803 echo "OpenVG support ......... ShivaVG"
8805 echo "OpenVG support ......... $CFG_OPENVG"
8808 if [ "$PLATFORM_X11" = "yes" ]; then
8809 echo "NAS sound support ...... $CFG_NAS"
8810 echo "XShape support ......... $CFG_XSHAPE"
8811 echo "XVideo support ......... $CFG_XVIDEO"
8812 echo "XSync support .......... $CFG_XSYNC"
8813 echo "Xinerama support ....... $CFG_XINERAMA"
8814 echo "Xcursor support ........ $CFG_XCURSOR"
8815 echo "Xfixes support ......... $CFG_XFIXES"
8816 echo "Xrandr support ......... $CFG_XRANDR"
8817 echo "Xrender support ........ $CFG_XRENDER"
8818 echo "Xi support ............. $CFG_XINPUT"
8819 echo "MIT-SHM support ........ $CFG_MITSHM"
8820 echo "FontConfig support ..... $CFG_FONTCONFIG"
8821 echo "XKB Support ............ $CFG_XKB"
8822 echo "immodule support ....... $CFG_IM"
8823 echo "GTK theme support ...... $CFG_QGTKSTYLE"
8825 [ "$CFG_SQL_mysql" != "no" ] && echo "MySQL support .......... $CFG_SQL_mysql"
8826 [ "$CFG_SQL_psql" != "no" ] && echo "PostgreSQL support ..... $CFG_SQL_psql"
8827 [ "$CFG_SQL_odbc" != "no" ] && echo "ODBC support ........... $CFG_SQL_odbc"
8828 [ "$CFG_SQL_oci" != "no" ] && echo "OCI support ............ $CFG_SQL_oci"
8829 [ "$CFG_SQL_tds" != "no" ] && echo "TDS support ............ $CFG_SQL_tds"
8830 [ "$CFG_SQL_db2" != "no" ] && echo "DB2 support ............ $CFG_SQL_db2"
8831 [ "$CFG_SQL_ibase" != "no" ] && echo "InterBase support ...... $CFG_SQL_ibase"
8832 [ "$CFG_SQL_sqlite2" != "no" ] && echo "SQLite 2 support ....... $CFG_SQL_sqlite2"
8833 [ "$CFG_SQL_sqlite" != "no" ] && echo "SQLite support ......... $CFG_SQL_sqlite ($CFG_SQLITE)"
8836 if [ "$CFG_OPENSSL" = "yes" ]; then
8837 OPENSSL_LINKAGE="(run-time)"
8838 elif [ "$CFG_OPENSSL" = "linked" ]; then
8839 OPENSSL_LINKAGE="(linked)"
8841 echo "OpenSSL support ........ $CFG_OPENSSL $OPENSSL_LINKAGE"
8842 echo "Alsa support ........... $CFG_ALSA"
8843 if [ "$PLATFORM_MAC" = "yes" ]; then
8844 echo "CoreWlan support ....... $CFG_COREWLAN"
8846 echo "ICD support ............ $CFG_ICD"
8847 echo "libICU support ......... $CFG_ICU"
8850 [ "$CFG_PTMALLOC" != "no" ] && echo "Use ptmalloc ........... $CFG_PTMALLOC"
8852 # complain about not being able to use dynamic plugins if we are using a static build
8853 if [ "$CFG_SHARED" = "no" ]; then
8855 echo "WARNING: Using static linking will disable the use of dynamically"
8856 echo "loaded plugins. Make sure to import all needed static plugins,"
8857 echo "or compile needed modules into the library."
8860 if [ "$CFG_OPENSSL" = "linked" ] && [ "$OPENSSL_LIBS" = "" ]; then
8862 echo "NOTE: When linking against OpenSSL, you can override the default"
8863 echo "library names through OPENSSL_LIBS."
8865 echo " OPENSSL_LIBS='-L/opt/ssl/lib -lssl -lcrypto' ./configure -openssl-linked"
8868 if [ "$PLATFORM_MAC" = "yes" ] && [ "$CFG_FRAMEWORK" = "yes" ] && [ "$CFG_DEBUG" = "yes" ] && [ "$CFG_DEBUG_RELEASE" = "no" ]; then
8870 echo "Error: debug-only framework builds are not supported. Configure with -no-framework"
8871 echo "if you want a pure debug build."
8876 sepath=`echo "$relpath" | sed -e 's/\\./\\\\./g'`
8881 #-------------------------------------------------------------------------------
8882 # build makefiles based on the configuration
8883 #-------------------------------------------------------------------------------
8885 echo "Finding project files. Please wait..."
8886 if [ "$CFG_NOPROCESS" != "yes" ]; then
8887 "$outpath/bin/qmake" -prl -r "${relpath}/qtbase.pro"
8888 if [ -f "${relpath}/qtbase.pro" ]; then
8889 mkfile="${outpath}/Makefile"
8890 [ -f "$mkfile" ] && chmod +w "$mkfile"
8891 QTDIR="$outpath" "$outpath/bin/qmake" -spec "$XQMAKESPEC" "${relpath}/qtbase.pro" -o "$mkfile"
8895 # .projects -> projects to process
8896 # .projects.1 -> qt and moc
8897 # .projects.2 -> subdirs and libs
8898 # .projects.3 -> the rest
8899 rm -f .projects .projects.1 .projects.2 .projects.3
8901 QMAKE_PROJECTS=`find "$relpath/." -name '*.pro' -print | sed 's-/\./-/-'`
8902 if [ -z "$AWK" ]; then
8903 for p in `echo $QMAKE_PROJECTS`; do
8904 echo "$p" >> .projects
8907 cat >projects.awk <<EOF
8913 first = "./.projects.1.tmp"
8914 second = "./.projects.2.tmp"
8915 third = "./.projects.3.tmp"
8920 if ( ! target_file )
8922 print input_file >target_file
8927 input_file = FILENAME
8932 if ( \$3 == "moc" || \$3 ~ /^Qt/ ) {
8935 } else if ( \$3 == "lrelease" || \$3 == "qm_phony_target" ) {
8936 target_file = second
8941 matched_target == 0 && /^(TEMPLATE.*=)/ {
8942 if ( \$3 == "subdirs" )
8943 target_file = second
8944 else if ( \$3 == "lib" )
8950 matched_target == 0 && template_lib == 1 && /^(CONFIG.*=)/ {
8951 if ( \$0 ~ /plugin/ )
8954 target_file = second
8959 if ( ! target_file )
8961 print input_file >>target_file
8968 for p in `echo $QMAKE_PROJECTS`; do
8969 echo "$p" >> .projects.all
8972 # if you get errors about the length of the command line to awk, change the -l arg
8974 split -l 100 .projects.all .projects.all.
8975 for p in .projects.all.*; do
8976 "$AWK" -f projects.awk `cat $p`
8977 [ -f .projects.1.tmp ] && cat .projects.1.tmp >> .projects.1
8978 [ -f .projects.2.tmp ] && cat .projects.2.tmp >> .projects.2
8979 [ -f .projects.3.tmp ] && cat .projects.3.tmp >> .projects.3
8980 rm -f .projects.1.tmp .projects.2.tmp .projects.3.tmp $p
8982 rm -f .projects.all* projects.awk
8984 [ -f .projects.1 ] && cat .projects.1 >>.projects
8985 [ -f .projects.2 ] && cat .projects.2 >>.projects
8986 rm -f .projects.1 .projects.2
8987 if [ -f .projects.3 ] && [ "$OPT_FAST" = "no" ]; then
8988 cat .projects.3 >>.projects
8992 # don't sort Qt and MOC in with the other project files
8993 # also work around a segfaulting uniq(1)
8994 if [ -f .sorted.projects.2 ]; then
8995 sort .sorted.projects.2 > .sorted.projects.2.new
8996 mv -f .sorted.projects.2.new .sorted.projects.2
8997 cat .sorted.projects.2 >> .sorted.projects.1
8999 [ -f .sorted.projects.1 ] && sort .sorted.projects.1 >> .sorted.projects
9000 rm -f .sorted.projects.2 .sorted.projects.1
9004 if [ -f .projects ]; then
9005 uniq .projects >.tmp
9006 mv -f .tmp .projects
9007 NORM_PROJECTS=`cat .projects | wc -l | sed -e "s, ,,g"`
9009 if [ -f .projects.3 ]; then
9010 uniq .projects.3 >.tmp
9011 mv -f .tmp .projects.3
9012 FAST_PROJECTS=`cat .projects.3 | wc -l | sed -e "s, ,,g"`
9014 echo " `expr $NORM_PROJECTS + $FAST_PROJECTS` projects found."
9018 for part in $CFG_BUILD_PARTS; do
9020 tools) PART_ROOTS="$PART_ROOTS tools" ;;
9021 libs) PART_ROOTS="$PART_ROOTS src tools/linguist/lrelease" ;;
9022 translations) PART_ROOTS="$PART_ROOTS translations" ;;
9023 examples) PART_ROOTS="$PART_ROOTS examples demos" ;;
9028 if [ "$CFG_DEV" = "yes" ]; then
9029 PART_ROOTS="$PART_ROOTS tests"
9032 echo "Creating makefiles. Please wait..."
9033 for file in .projects .projects.3; do
9034 [ '!' -f "$file" ] && continue
9035 for a in `cat $file`; do
9037 for r in $PART_ROOTS; do
9038 if echo "$a" | grep "^$r" >/dev/null 2>&1 || echo "$a" | grep "^$relpath/$r" >/dev/null 2>&1; then
9043 [ "$IN_ROOT" = "no" ] && continue
9046 *winmain/winmain.pro)
9047 if [ "$CFG_NOPROCESS" = "yes" ] || [ "$XPLATFORM_MINGW" != "yes" ]; then
9051 *s60main/s60main.pro)
9052 if [ "$CFG_NOPROCESS" = "yes" ] || [ "$XPLATFORM_SYMBIAN" != "yes" ]; then
9055 *examples/activeqt/*) continue ;;
9056 */qmake/qmake.pro) continue ;;
9057 *tools/bootstrap*|*tools/moc*|*tools/rcc*|*tools/uic*|*linguist/lrelease*) SPEC=$QMAKESPEC ;;
9058 *) if [ "$CFG_NOPROCESS" = "yes" ]; then
9064 dir=`dirname "$a" | sed -e "s;$sepath;.;g"`
9065 test -d "$dir" || mkdir -p "$dir"
9066 OUTDIR="$outpath/$dir"
9067 if [ -f "${OUTDIR}/Makefile" ] && [ "$OPT_FAST" = "yes" ]; then
9068 # fast configure - the makefile exists, skip it
9069 # since the makefile exists, it was generated by qmake, which means we
9070 # can skip it, since qmake has a rule to regenerate the makefile if the .pro
9072 [ "$OPT_VERBOSE" = "yes" ] && echo " skipping $a"
9075 QMAKE_SPEC_ARGS="-spec $SPEC"
9076 echo $ECHO_N " for $a$ECHO_C"
9078 QMAKE="$outpath/bin/qmake"
9079 QMAKE_ARGS="$QMAKE_SWITCHES $QMAKE_SPEC_ARGS"
9080 if [ "$file" = ".projects.3" ]; then
9083 cat >"${OUTDIR}/Makefile" <<EOF
9084 # ${OUTDIR}/Makefile: generated by configure
9086 # WARNING: This makefile will be replaced with a real makefile.
9087 # All changes made to this file will be lost.
9089 [ "$CFG_DEBUG_RELEASE" = "no" ] && echo "first_target: first" >>${OUTDIR}/Makefile
9091 cat >>"${OUTDIR}/Makefile" <<EOF
9093 all clean install qmake first Makefile: FORCE
9094 \$(QMAKE) $QMAKE_ARGS -o "$OUTDIR" "$a"
9102 if [ "$OPT_VERBOSE" = "yes" ]; then
9103 echo " (`basename $SPEC`)"
9104 echo "$QMAKE" $QMAKE_ARGS -o "$OUTDIR" "$a"
9109 [ -f "${OUTDIR}/Makefile" ] && chmod +w "${OUTDIR}/Makefile"
9110 QTDIR="$outpath" "$QMAKE" $QMAKE_ARGS -o "$OUTDIR" "$a"
9114 rm -f .projects .projects.3
9116 #-------------------------------------------------------------------------------
9117 # check for platforms that we don't yet know about
9118 #-------------------------------------------------------------------------------
9119 if [ "$CFG_ARCH" = "generic" ]; then
9122 NOTICE: Atomic operations are not yet supported for this
9125 Qt will use the 'generic' architecture instead, which uses a
9126 single pthread_mutex_t to protect all atomic operations. This
9127 implementation is the slow (but safe) fallback implementation
9128 for architectures Qt does not yet support.
9132 #-------------------------------------------------------------------------------
9133 # check if the user passed the -no-zlib option, which is no longer supported
9134 #-------------------------------------------------------------------------------
9135 if [ -n "$ZLIB_FORCED" ]; then
9136 which_zlib="supplied"
9137 if [ "$CFG_ZLIB" = "system" ]; then
9143 NOTICE: The -no-zlib option was supplied but is no longer
9146 Qt now requires zlib support in all builds, so the -no-zlib
9147 option was ignored. Qt will be built using the $which_zlib
9152 #-------------------------------------------------------------------------------
9153 # finally save the executed command to another script
9154 #-------------------------------------------------------------------------------
9155 if [ `basename $0` != "config.status" ]; then
9156 CONFIG_STATUS="$relpath/$relconf $OPT_CMDLINE"
9158 # add the system variables
9159 for varname in $SYSTEM_VARIABLES; do
9161 'if [ -n "\$'${varname}'" ]; then
9162 CONFIG_STATUS="'${varname}'='"'\\\$${varname}'"' \$CONFIG_STATUS"
9167 echo "$CONFIG_STATUS" | grep '\-confirm\-license' >/dev/null 2>&1 || CONFIG_STATUS="$CONFIG_STATUS -confirm-license"
9169 [ -f "$outpath/config.status" ] && rm -f "$outpath/config.status"
9170 echo "#!/bin/sh" > "$outpath/config.status"
9171 echo "if [ \"\$#\" -gt 0 ]; then" >> "$outpath/config.status"
9172 echo " $CONFIG_STATUS \"\$@\"" >> "$outpath/config.status"
9173 echo "else" >> "$outpath/config.status"
9174 echo " $CONFIG_STATUS" >> "$outpath/config.status"
9175 echo "fi" >> "$outpath/config.status"
9176 chmod +x "$outpath/config.status"
9179 if [ -n "$RPATH_MESSAGE" ]; then
9181 echo "$RPATH_MESSAGE"
9184 MAKE=`basename "$MAKE"`
9186 echo Qt is now configured for building. Just run \'$MAKE\'.
9187 if [ "$relpath" = "$QT_INSTALL_PREFIX" ]; then
9188 echo Once everything is built, Qt is installed.
9189 echo You should not run \'$MAKE install\'.
9191 echo Once everything is built, you must run \'$MAKE install\'.
9192 echo Qt will be installed into $QT_INSTALL_PREFIX
9195 echo To reconfigure, run \'$MAKE confclean\' and \'configure\'.