Commit Graph

374 Commits

Author SHA1 Message Date
Andrew Knight
710ad8ce1b Upgrade ANGLE to DX11 Proto
Upgrades ANGLE to dx11proto (dx11-MRT-support tag), which splits out support
for DirectX9 & DirectX11. The DX9 codepath is used by default;
CONFIG+=angle_d3d11 must be passed to the ANGLE project to build for DX11.
Existing patches to ANGLE have been updated (or removed if no longer
needed), and a patch has been added to make DX9/DX11 codepaths mutually
exclusive.

Change-Id: Ibe13befadb94f04883eca449d0ee1f0da955ff92
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Axel Waggershauser <awagger@gmail.com>
2013-04-08 11:35:44 +02:00
Frederik Gladhorn
a4121a21c0 Merge remote-tracking branch 'origin/release' into stable
Change-Id: Icedabda08961326a0a447ec71f1b0f0f5df075eb
2013-04-03 15:43:39 +02:00
Ray Donnelly
f4db48c232 Android: Enable configuring via configureapp for Windows.
Change-Id: If8f27f54d4d79c3530f51edafe7f8f42d685bc47
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-04-03 00:37:48 +02:00
Ray Donnelly
95f4751ff3 Add some more qconfigs to configureapp.
REDUCE_EXPORTS -> QT_VISIBILITY_AVAILABLE
REDUCE_RELOCATIONS -> QT_REDUCE_RELOCATIONS
!QT_GETIFADDRS -> QT_NO_GETIFADDRS

These will be used for Android build on Windows.

Change-Id: I2cde989e41dc5b7f9bef1345e935cc7e19aba983
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-28 12:10:40 +01:00
Oswald Buddenhagen
d8406d0e09 make the libexec default on windows bin/ after all
the dlls being in lib/ is kind of an accident (a side effect of how
qmake builds them). in fact, the libdir should be entirely irrelevant
for windows deployments (and indeed, the SDK is delivered with dlls only
in bin/).

Change-Id: If47e72b24774721a61ba63847f6132f88ff110be
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
2013-03-26 07:49:11 +01:00
Samuel Rødal
2ab9b747fc Merge remote-tracking branch 'gerrit/release' into stable
Conflicts:
	configure
	mkspecs/features/qt_module_headers.prf
	mkspecs/features/qt_tool.prf
	src/angle/angle.pro
	src/tools/bootstrap/bootstrap.pro
	tests/auto/widgets/kernel/qwidget/tst_qwidget.cpp

Change-Id: Ide5759fe419a50f1c944211a48f7c66f662684e0
2013-03-21 08:49:01 +01:00
Oswald Buddenhagen
e79e1c1a16 pass module version to syncqt
this is cleaner than having it parse qmake project files.
the only remaining built-in version extraction is the fallback to
qglobal.h needed for bootstrapping.

as a "side effect", this fixes the build of modules with mismatched
versions centralized in .qmake.conf, as this was simply not handled so
far.

the -mkspecsdir syncqt option goes away, as there is no use case for it
any more.

Task-number: QTBUG-29838
Change-Id: I6912a38f0e93a26bc267a9e3d738506fd3ad431b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-03-20 19:03:45 +01:00
Oswald Buddenhagen
0189cd123d add/unify progress messages to/from the configures
it's weird that the output from the two variants is differing, and that
after building qmake it appears to hang.

Change-Id: I2ac3ace11e958effe787b13e1300eb1d2839ae98
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-03-15 21:30:26 +01:00
Kai Koehne
124da59cb4 Fix static builds with ICU
Make sure we actually link against the static version of the ICU libs for
static builds.

Task-number: QTBUG-29478

Change-Id: Ida7b439f11c5393bee43bfe804f9ec84bf272b34
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-03-12 09:07:38 +01:00
Frederik Gladhorn
5e8ae03578 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	configure
	qmake/generators/mac/pbuilder_pbx.cpp
	src/corelib/kernel/qtimerinfo_unix.cpp
	src/plugins/platforms/cocoa/qcocoabackingstore.mm
	src/plugins/platforms/cocoa/qcocoawindow.mm
	src/plugins/platforms/windows/qwindowswindow.cpp
	src/plugins/platforms/xcb/qglxintegration.cpp

Change-Id: I8d125fe498f5304874e6976b53f588d3e98a66ac
2013-03-05 13:42:11 +01:00
Thiago Macieira
ebfd85a499 Add the infrastructure to compile Qt with -Werror
This is enabled only for -developer-builds and only for certain
compiler-version combinations that are in a whitelist.

It also requires each library, plugin or tool to declare whether it is
supposedly clean of warnings. When most targets are clean, we can
consider inverting.

Change-Id: I17b5c4e45aee5078f9788e846a45d619c144095a
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-02-28 23:43:36 +01:00
Paul Olav Tvete
01292ac849 Make -force-debug-info option work
Should be applied to Qt modules. Not interesting for third party
users.

Change-Id: I8fce821af397e3ace011a426c762319f6d30004f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-02-27 23:06:15 +01:00
Frederik Gladhorn
dcb710dd87 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	mkspecs/features/unix/separate_debug_info.prf
	src/gui/kernel/qwindow_p.h
	src/plugins/platforms/cocoa/qcocoacursor.mm
	tests/auto/tools/moc/tst_moc.cpp

Change-Id: Ieb57834c00f961a747ffe51e6eb9fc9612cebccf
2013-02-20 22:08:29 +01:00
Oswald Buddenhagen
3fdfde294f add -skip option to the configures
this makes it possible to exclude modules from the build without moving
their sources out of the way. substitutes the much-requested -no-webkit.

not adding a symmetrical option, as it is relatively pointless:
to build only specific "leaf" modules, you only need to run
"make module-qt<module> ..." once you configured. and removing
particular "intermediate" modules is achieved with this very option.

Task-number: QTBUG-26697
Change-Id: I25cebdbd029885a2c653c4cde696f9bb78691768
Reviewed-by: Tuukka Turunen <tuukka.turunen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-20 15:22:55 +01:00
Oswald Buddenhagen
0444115211 fix libexec configure.exe status line
Change-Id: I22b4c07a3d39ab2f3288d0872a0ccaff45b0c153
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-20 15:22:55 +01:00
Ray Donnelly
1a0924dfc0 Unify win32-g++ and Unix qmake Makefiles.
Replace the old sed / template @FOO@ method with echo.
Enable MSYS bash to build qmake.exe
Use qmake/Makefile.unix for all win32-g++ builds.

Change-Id: I6e27d69b28d27131838bbbb3a4ee5a08b470f31b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-02-19 10:35:06 +01:00
Oswald Buddenhagen
489d8a0627 add QT_CONFIG's static/shared to CONFIG on startup
... instead of as a fallback in default_post.
it was this way in qt4, and it requires less code to be written in the
end. we are already doing it for debug/release as well.

Change-Id: I6e02849d61d14a18375cf64a5990768931ebac48
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-18 15:52:43 +01:00
Kai Koehne
3f471c069d Place libexec binaries into lib folder on Windows
Change the default libexec directory to 'lib' on Windows for default
configurations. This makes sure that e.g. qtwebprocess can actually
find & load the right Qt libs.

A separate libexec directory was introduced to avoid conflicts between
a system-wide Qt in PATH and a custom Qt installation. However, since
there are no system wide Qt installations on Windows this isn't an
issue, but getting the executables to find its Qt libraries is.

Alternatively we could have also placed it in the 'bin' directory.
However, putting it in the 'lib' folder carries the notion that,
unlike the binaries in the bin, the libexec executables might have
to be deployed with a target application.

The exception is when a separate archdata prefix is specified, and
$$archdata/lib won't contain Qt libraries. In this case we use libexec
like on the other platforms too.

ChangeLog: [Qt for Windows] Fixed launching of QtWebProcess.exe by
changing default libexec directory to 'lib'.
Task-number: QTBUG-29661
Change-Id: Icbb15fb98474d6fef8ac9310f2e2b482d3282f79
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-15 15:46:57 +01:00
Sze Howe Koh
26817211d2 Fix module name format in displayed code
Follow the conventions at
http://qt-project.org/wiki/Spelling_Module_Names_in_Qt_Documentation

QtDBus       -> Qt D-Bus
QtMultimedia -> Qt Multimedia
QtWidgets    -> Qt Widgets

Change-Id: I96a1523b37e294b10b203782074943c6ec55e34a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-02-11 01:43:21 +01:00
Oswald Buddenhagen
f9725ce9c2 avoid that we accidentally initialize XQMAKESPEC to an empty string
there is plenty of tests which rely on the non-presence of the variable,
rather than it being empty.

Task-number: QTBUG-29400
Change-Id: Ifa8aa68192750521869767e2d4d3796794f4d8f2
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-01 10:23:26 +01:00
Oswald Buddenhagen
0debd5dd48 remove somewhat pointless conditional
if the user just set an empty spec, everything will go wrong anyway.

Change-Id: I5ddaa2f0be1be96132260af8c869ba38e02eb3d8
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-01 10:23:26 +01:00
Sze Howe Koh
7bb43454b8 Fix minor typos in docs, printed messages & comments
Missing apostrophes

Change-Id: I3ef5e9d494fb7a37f8e6075f24cd3a274e572c23
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-01-28 18:12:41 +01:00
Debao Zhang
eaeccce3cc configure.exe: Fix line feed character
config.summary has been opened in text mode, so the line feed character
should be "\n" instead of "\r\n".

Change-Id: Id73b0d698487cdd6f48902f3ae988c6a9fa59407
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-01-25 00:40:17 +01:00
Frederik Gladhorn
586fabb3b5 Disable only accessibility bridge without dbus on linux
Keeping accessibility and only disabling the bridge will
enable more builds to work.

Warning about disabling accessibility disabled is needed
because in QStyle it is used to discover semantics about widgets
(if a toolbutton is in a toolbar).

Change-Id: Iae4e6ab63479743bdd70cba4b1954ec7cf3f88e9
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-01-23 10:56:34 +01:00
Sergio Ahumada
48e0c4df23 Update copyright year in Digia's license headers
Change-Id: Ic804938fc352291d011800d21e549c10acac66fb
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-01-18 09:07:35 +01:00
Oswald Buddenhagen
25a0ce8f03 add missing space in front of "directwrite" flag
Task-number: QTBUG-28917
Change-Id: I8b86b96a3fb6b65f71aea6954ba8dfa520f5d909
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-01-11 21:32:07 +01:00
Sergio Ahumada
d376a4e578 configure: Remove left over for -nokia-developer option
This seems to be a left over from 52fc6694b8

Change-Id: Ib0d5868a099e53ec2c2af6be749a5496bbf1f145
Reviewed-by: Jeremy Katz <jeremy@panix.com>
2013-01-04 20:43:51 +01:00
Oswald Buddenhagen
d1c10615e3 slash the -fast configure option
it's completely broken, and i have no time to fix it properly now.
configure runs no qmake -r by default any more, so it's fast enough.

Change-Id: Ib2b4c68f1fc2fe95accecbe93dd5a87c9b015692
Reviewed-by: David Faure (KDE) <faure@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-12-18 17:28:44 +01:00
Samuel Rødal
2bf14740a7 Consistently prefix all platform plugin libraries with "q".
This means the xcb plugin library will be named libqxcb.so instead of
libxcb.so, which doesn't clash with the system's libxcb.so. We need to
consistently apply this on all platforms for static linking to work.

Change-Id: I1640a7cae7b9846bbe62b19ab1c2c5bad7d02b4c
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-12-11 13:37:57 +01:00
Miikka Heikkinen
903fa2e4aa Add QT_DEFAULT_QPA_PLUGIN to generated qconfig.pri
Configure will now generate QT_DEFAULT_QPA_PLUGIN qmake variable
to specify the default QPA plugin.

"CONFIG += qpa_default_plugin" statement in application .pro file
will add the default QPA plugin into QTPLUGINS.

"CONFIG += qpa_minimal_plugin" statement in application .pro file
will add the minimal QPA plugin into QTPLUGINS.

Task-number: QTBUG-28131
Change-Id: I12a241005f30b37467d783b50f0369b47e605e68
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-10 15:33:54 +01:00
Rafael Roquetto
675676aba1 configure.exe: fix -inotify option
Change-Id: Iaa844961b5fdd2056fcc9b008c11a3f3925ca3a4
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-06 18:40:29 +01:00
Oswald Buddenhagen
eced14ec1c use the same output dirs under windows as under unix
the times when directory names starting with a dot were a problem under
windows are sort of gone. for well over a decade.

Change-Id: Ia1a0782c878a055cc5c094c6b3e4df0741368433
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-12-06 12:49:02 +01:00
Oswald Buddenhagen
621b0e2062 move QT_{SOURCE,BUILD}_TREE back to .qmake.cache
they cannot be legally used outside qtbase - it's the antithesis of
modularization.

Change-Id: I847844ea0ddce599f130f396d68cb61fa8f34135
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-12-05 17:29:46 +01:00
Alexey Pavlov
1c54dcf3bb Moving the remaining variables assignments from .qmake.cache to qmodule.pri
Moving variables to qmodule.pri allows to build all qt modules with user defined
command line arguments passed to configure script.

Task-number: QTBUG-27566

Change-Id: Ifa7991e9024df3fb4b1fd6536ee0d19b7c63d15e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-30 21:57:49 +01:00
Andreas Holzammer
6798cb9800 WINCE: Don't build angle by default
When having a directx sdk, angle does get auto enabled
for all windows platforms. Windows CE directx builds on top
of opengl es 2, so if there is directx, there is also a
opengl es 2. So don't add more layers of indirection for
Windows CE. As well angle does not build for Windows CE.

Change-Id: I211a1de29431cd05d5cd60188f503d2cd299c9b3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-30 21:57:49 +01:00
Thiago Macieira
5dcc36b15c Add a -libexecdir option to the configures
User applications are those that users run directly, whether it be for
development or not. The executable binaries that the user does not
usually run but is still required for proper functioning are called
"program executables" in Autoconf and they are placed in libexec.

This commit adds support for "program executables" in Qt by adding the
-libexecdir option to the configures, the qmake variable
QT_INSTALL_LIBEXECS (note the plural, to match all other properties),
and QLibraryInfo::LibraryExecutables.

At the time of this commit, the only expected "program executable" is
the QtWebProcess, the WebKit2 helper process from QtWebKit.

Change-Id: I66c3a3e0cf7f9d93b5f88f55f18e957faff608fc
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-11-28 08:39:07 +01:00
Thiago Macieira
df3631045c Add a new location for QML 2.x imports
This commits adds a -qmldir configuration option for the configures to
allow the user to change the default location (it defaults to
$archdatadir/qml).

It adds a QLibraryInfo::Qml2ImportsPath value for
QLibraryInfo::location, a qmake property of QT_INSTALL_QML and a qt.conf
configure location entry "Qml2Imports".

At the same time, it makes the qmake .prf files dealing with QML plugins
be the QML 2 version. Those files are new in Qt 5, so we have the option
to choose which version we want to use.

Discussed-on: http://lists.qt-project.org/pipermail/development/2012-October/007136.html
Change-Id: I8c1c53e8685a5934ed0a9a42ba5663297b81a677
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-19 15:25:54 +01:00
Rafael Roquetto
3146856389 configure.exe: add inotify auto detection support
This patch complements already existing functionality in the configure shell
script.

Change-Id: I09f4875cbe7ec60d36bb33774d28944a34cc8470
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-16 15:59:20 +01:00
Thiago Macieira
4712b0e99f Add -archdatadir and change some of the default install dirs in Qt 5.
Architecture-depedent Qt data defaults now to something under
-archdatadir. Architecture-dependent data is everything that contains
machine code (e.g., plugins) as well as anything that hardcodes
build-specific data, like qconfig.pri and qmodule.pri. That is:

  QML imports:    $archdatadir/imports     (includes plugins)
  Qt plugins:     $archdatadir/plugins     (machine code)
  Mkspecs:        $archdatadir/mkspecs     (build-specific)

Architecture-independent Qt data defaults now to something under
-datadir. This option existed in Qt 4, but did not differentiate between
arch-dependent and independent. Following Autoconf's lead, --datadir is
the *independent* data root.

  translations:   $datadir/translations    (.qm files are arch-independent)
  docs:           $datadir/doc

By default, both new options are equal to the Qt install prefix.

(Strictly speaking, for complete Autoconf compatibility, we'd need a
--datarootdir=$prefix/share, --datadir=$datarootdir/qt5 and
--docdir=$datarootdir/doc/qt5, but that's just nitpicking and
unnecessary)

Change-Id: I39c886a6a2d2d2c0b11923c50974179e21f2af76
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-11 07:41:50 +01:00
Rafael Roquetto
6e8f26a645 Implement "-device" option for configure.exe
This aims to mimics the behavior of the -device option already present on the
configure shell script

Change-Id: Ia28306f5ed74b9cfa812aa3efa6b79d0bafa4994
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-08 16:59:50 +01:00
Kai Koehne
2027f204b5 configure: Pick up environment paths again on MinGW
Make sure that INCLUDE, LIB paths are again considered in configure
checks on MinGW. While gcc itself doesn't care about the variables,
qmake automatically adds them via -I, -L...

This broke with 9c2ec72b95.

Change-Id: Ic6214eeea9eb7c92961c37c3aa76c4fcaddb22b6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-11-07 14:19:00 +01:00
Friedemann Kleint
3c092b7e58 Improve Direct X SDK detection in configure.exe
Check presence of Direct X SDK depending on
compiler version.

Check for presence of the headers d3dcompile.h and
intrin.h (SSE2) as well as d3d9.lib and the shader
compiler since the header d3dcompile.h is
also present in MinGW.

Change-Id: I7ee9701f4f9dc175ed2d733db79dda46de4d69f1
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2012-11-06 16:35:16 +01:00
Friedemann Kleint
f63b103b89 configure: Fix key prompt handling.
- Introduce function for key prompt for usage in
  verifyConfiguration() and showLicense().
- Prompt only once in  verifyConfiguration().

Change-Id: I7028da1bda703a424e39477bd06b2639475739a4
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2012-11-05 17:17:12 +01:00
Friedemann Kleint
313266901e configure: Use forward slashes in findFile-functions consistently.
Convert to native where required.

Change-Id: I11ff99ff9921bc470ebd804944e3b0773d49387c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-05 17:17:07 +01:00
Friedemann Kleint
9c2ec72b95 Improve path search in configure.
- Remove duplicated code locateFile/locateFileInPaths.
- Move basic path search functionality to Environment.
- Add functions for headerPaths/libraryPaths to  Environment.
- Use QStandardPaths::findExecutable().
- Replace Environment::detectExecutable by
  QStandardPaths::findExecutable().
- Introduce static path lists in findFile() to avoid
  repeated directory scans

Change-Id: I9b93066a3de65f40527780d6ddf7989bca35cd04
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-05 17:17:01 +01:00
Miikka Heikkinen
7e81938628 Fix "-no-opengl" configuration in Windows
"-no-opengl" didn't clear the default value for "OPENGL_ES_2", which
meant "opengles2" got configured in.

Task-number: QTBUG-27840
Change-Id: Id7b8e3e268571d820bebfb3700d3961ec96be7fd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-11-05 12:44:52 +01:00
Oswald Buddenhagen
80439fbd82 move invariant CONFIG flags out of the configures
we now have qt_build_config.prf which can contain static code.

Change-Id: I3f0ae142fdc5ffb4e1d25e628e809ba15b5f0ac4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-11-02 18:07:35 +01:00
Oswald Buddenhagen
589a18597f move remaining configure'd CONFIG flags to qmodule.pri
so they are uniformly available to all modules.

Change-Id: I734f703c5923c42cb26f1456ed960cecc01c4b41
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-11-01 22:27:09 +01:00
Oswald Buddenhagen
7d20f3dd10 rewrite default spec handling
instead of symlinking (on unix) or creating a forwarding spec (on
windows), just put the default specs into (the bootstrapped)
QLibraryInfo.

Change-Id: I595500ef7399f77cb8ec117c4303bc0a2ffe505f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-11-01 20:17:57 +01:00
Jason Barron
57fed47ac0 Generate a .qmake.cache in config.tests from configure.exe.
We need to generate a .qmake.cache file in the config.tests
directory on Windows to ensure that the config.tests can
actually be compiled before the qmodule.pri is created.

Task-number: QTBUG-27708
Change-Id: I8d9397a8cbdb2aa19a5318497177d76049f9fa91
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-10-30 12:53:46 +01:00
Peter Hartmann
f7893223e8 QtNetwork: introduce configure switch to use system proxies by default
This option is opt-in (default: no). When configured with
"-proxies-system-default", Qt automatically picks up the system
proxies.

Change-Id: I8cc002f29587854f448d97117b08c43d8eedec76
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-10-30 00:06:26 +01:00
Jason Barron
e0c0e83fd5 Add ANGLE as a 3rdparty library to Qt.
ANGLE is a component that implements the OpenGL ES 2.0 API on
top of DirectX 9. See the following for more info:

http://code.google.com/p/angleproject/

ANGLE is now the default configuration on Windows. If you
want to use desktop OpenGL, you should build Qt with the
following configure options:

    -opengl desktop

To configure Qt to use another OpenGL ES 2 implementation,
you should use:

    -opengl es2 -no-angle

Task-number: QTBUG-24207

Change-Id: Iefcbeaa37ed920f431729749ab8333b248fe5134
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-10-24 02:29:15 +02:00
Jens Bache-Wiig
087e4bc517 Remove Cleanlooks and Plastique
We have a new style Fusion that will replace these styles.
They will be moved to a separate
module rather than included in platforms that do not need them.

Change-Id: I51ebbcad5406e99130e5b12e62ba624d1489088c
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2012-10-22 19:36:43 +02:00
Thiago Macieira
c67a5df8d8 Rename the syncqt -qtdir to -mkspecsdir
It's actually looking for the mkspecs (so it can read qconfig.pri to
get the Qt version), so give it exactly what it wants.

Change-Id: I2957b2d93a8837b8492d313209d45ff3ec01704c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-10-19 00:44:54 +02:00
Jens Bache-Wiig
f45afd7155 Introduce new style Fusion
This is a new non-native style for Qt.
It is intended as a replacement for the now aging
Plastique and Cleanlooks styles.

Change-Id: I30c0518a69e4e3b8b2b05ee7d84c3a5a1f307578
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2012-10-18 21:46:21 +02:00
Oswald Buddenhagen
6226fcdc3e add a .qmake.conf file which load()s qt_build_config
that way we don't have to auto-generate code for that in the configures.

note that we now load qt_build_config.prf instead of just qmodule.pri,
which means that exceptions_off is set everywhere. we forcibly re-enable
them for testcases to minimize the deviation from default 3rd party usage.
testlib selftests are not qt testcases, so the one that needs exceptions
needs to enable them explicitly.

Change-Id: I1b9360bb11f2e80c92a2b63a7c45991ad17fda1b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-10-18 17:42:40 +02:00
Jason Barron
c92ceb179f Fix compile errors in configure.exe.
qstringmatcher.cpp and qchar.cpp are included in qstring.cpp and
qunicodetables.cpp is included in qchar.cpp so these files should
not be compiled as standalone objects.

Change-Id: I323e0878af28b9e5fb2f659fb8077347b93fa439
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-10-16 15:29:15 +02:00
Tor Arne Vestbø
087efb572a Modularize documenation build
qdocconf files can now reference $QT_INSTALL_DOCS to pick up e.g. global
includes, instead of using relative paths. Qt modules will automatically
get a doc target that builds and installs into the right place (including
supporting shadow-builds) if they set QMAKE_DOCS before loading(qt_module).

Change-Id: Ia408385199e56e3ead0afa45645a059d1a8b0d48
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2012-10-10 23:27:03 +02:00
Fabian Bumberger
c86ed49a79 Use slogger2 for logging on Blackberry instead of writing to stderr
Change-Id: Id0137400f18c8dfe7be7ca44670c16615401d424
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Reviewed-by: Peter Hartmann <phartmann@rim.com>
2012-10-04 14:25:47 +02:00
Peter Hartmann
80f6d7862c Blackberry mkspecs: Refine compiler options
stack-protector-strong gives performance benefits over
stack-protector-all and is still checking more than -stack-protector,
so seems to be a good middle way and we want to use it when it is
there.

The -shared option for the compiler (not the linker) prevents a
RIM internal version of qcc from forcing -fPIE, and should not harm
in general when set.

In addition, add a method "compilerSupportsFlag" for Windows as is
present in the Unix configure script.

Change-Id: Iba300e9cb82f34043e7b36f8e45287a1aed2a1a5
Original-patch-by: Greg Bentz
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-10-01 10:22:06 +02:00
Jens Bache-Wiig
570ae40f57 Remove CDE and Motif styles from qtbase
It is time to clean up some of our legacy code. These styles have
not been actively maintained for a long time and I think it is safe
to say that they should no longer belong as part of the default
distribution of Qt. We dont support any platforms based on CDE with
our source packages.

Note that even if we are removing these styles from the default
distribution of Qt, applications that depend on them
will still be able to bundle the existing (and unmodified) styles
along with their own source code as we are not breaking compatibility.

Change-Id: I1709630c20ba8e8088cd01628628d86856db57a4
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2012-09-27 15:16:16 +02:00
Andreas Holzammer
13fe38ebb9 Check in arch detection for qmake failures
QMake can fail at arch detection, so remove
the silence here and fail when qmake does
not produce any Makefile.

Change-Id: I8826867952665a68f7205acf99ee6f1c9ead8513
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-27 06:07:31 +02:00
Kai Koehne
fb46b00eef Configure.exe: Fix auto-detection of ICU for MinGW
If one compiles ICU with MinGW the .lib files also have a lib prefix.
Take this into account when checking for ICU availability.

Upstream bug report: http://bugs.icu-project.org/trac/ticket/9603

Change-Id: Ia1ca49053b0ab41de45eec13799d94d5e934c42e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-09-27 06:07:23 +02:00
Kai Koehne
8e991d0461 configure.exe: Don't print warning about -c++11 option by default
Make sure that defaultTo() and therefore autoDetect() actually keep
the "auto" setting for MSVC. We check for this later on in
verifyConfiguration.

Change-Id: Iebf1ef415161a09bbc871baa31ff9dc56d54acac
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2012-09-27 06:07:22 +02:00
Thiago Macieira
1f808a1d1d Introduce an option to disable stripping during installation
The default is the current behaviour: strip on installing release, no
strip on installing debug. This option does not change the
installation of debug builds because qmake does not support that.

Change-Id: Ic208d5ffe860d5f1ee1cafdc944e12001673d33f
Reviewed-by: Davide Pesavento <davidepesa@gmail.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-24 21:27:51 +02:00
Marc Mutz
06c89ae026 Use QStringList::join(QChar) overload where applicable [tools]
This is an automated change performing the following replacements:
                    join\("(.)"\) -> join('\1')
  join\(QLatin1String\("(.)"\)\)  -> join(QLatin1Char('\1'))
  join\(QStringLiteral\("(.)"\)\) -> join(QLatin1Char('\1'))

Change-Id: Ia087beb886bbaec1a0976cd924440d8904044879
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2012-09-23 23:30:33 +02:00
Sergio Ahumada
ef23f5d9bd configure: Update contact information for commercial users
Task-number: QTBUG-23949
Change-Id: Iaca7f45eae39ab7f6368431daead93358b17fe36
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
Reviewed-by: Sinan Tanilkan <sinan.tanilkan@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-09-22 23:40:24 +02:00
Iikka Eklund
be15856f61 Change copyrights from Nokia to Digia
Change copyrights and license headers from Nokia to Digia

Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-09-22 19:20:11 +02:00
Oswald Buddenhagen
eff0349102 don't require a fake qconfig.h for the configure bootstrap
Change-Id: I3d1224ad19b9e5278e35cf7c5142a29ccb589140
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-19 19:54:44 +02:00
Oswald Buddenhagen
f104640fa5 syncqt only the QtCore headers for the bootstrap
Change-Id: I26e19805823bfe987c721f6a274803e54f0e4003
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-19 19:54:44 +02:00
Oswald Buddenhagen
0fae8b50f7 simplify forwarding include() statement in default specs
Change-Id: Ie584491a5f0355ef3f4457d9b4b9734e6e8fdc47
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-19 19:54:44 +02:00
Kai Koehne
21d3445243 configure.exe: Improve help output
Add line breaks where it's looking awkward in cmd.exe , and new lines
where needed. Also adapt some descriptions to the configure shell script
output.

Change-Id: Ie784e715f51f7ff692ee85f7c960dc4583b65b23
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-19 16:12:17 +02:00
Kai Koehne
c7db21e81f Fix configure.exe output
Fix help output for -no-fontconfig, introduced in commit 1838a6c2.

Change-Id: I686000d51c56fde56179dcebef31b0783c0dfc29
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-19 16:12:10 +02:00
Kai Koehne
f0e2c6fe1c Add c++11 option to configure.exe
Also check for c++11 support in configure.exe (which is also used by MinGW builds).
The c++11 check is therefore moved from 'unix' to 'common' directory.

Change-Id: I082848f032c2770e52e34f331b83820f395c06b6
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Yuchen Deng <loaden@gmail.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-13 16:47:27 +02:00
Oswald Buddenhagen
0b2d55390c call syncqt before building qmake
otherwise non-developer builds (which don't have it run by the configure
bootstrap) don't work.

Change-Id: Ide49c0d1646b22687d16366530b246c3754926eb
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-11 17:24:25 +02:00
Oswald Buddenhagen
cef552a741 remove setcepaths.bat
we don't need it any more, as the makefiles are self-contained now.

Change-Id: I1a560a8331856e246e03c55ec1b1dd1a5cb112e4
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-11 17:24:15 +02:00
Oswald Buddenhagen
c2d088adbe qtmodule-configtests is no more, so don't shadow it
Change-Id: I0cb51cb63feb09f188764ace7d7b817ca10dd169
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-11 17:24:05 +02:00
Oswald Buddenhagen
8d97eb298d introduce -minimal mode to syncqt and use it for bootstrapping
the bootstrap does not need CamelCase includes, deprecated headers and
whatnot, so just don't do it. the full thing will be run on qtbase by
qmake.

Change-Id: Idffdd4750a73574c8c32ee75d00080abfe37e03c
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-11 17:23:27 +02:00
Oswald Buddenhagen
8df98b43be compile without CamelCase headers
for faster bootstrapping without a full syncqt run

Change-Id: I648f0a8fb09be021590c46e8e5e15667a316c817
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-11 17:23:23 +02:00
Oswald Buddenhagen
78461c7ab2 clean up syncqt invocation
it needs no special env variables any more

Change-Id: I60a7ab6eabb9280b02cd510418c0842d05fc1306
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-11 09:35:28 +02:00
Sergio Ahumada
67cb9e24e5 Removing duplicate includes
Do not include a header more than once

Change-Id: Ia2e5d66e72988ad833cf5177a3f8aa988bf510e9
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-09-09 18:30:43 +02:00
Oswald Buddenhagen
1503d99a5e enable depend_includepath by default
DEPENDPATH is hard to get right, and consequently most projects have
broken dependencies.
the easy way out is just adding everying in INCLUDEPATH to DEPENDPATH,
like we do ourselves in qt. if somebody wants to optimize, he can
opt-out.

Change-Id: I7fb56010728fd2b0d2b7d4d26386f366d414ba04
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:05 +02:00
Kai Koehne
30023baa2f configure: Unify order of options in help
The -developer-build option in the configure shell script is right after
-force-debug-info, move it to the same place in the Windows version.

Change-Id: I9b944f8591011ce9987a4fb98f7d02d88160d9e8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-07 11:22:16 +02:00
Jonathan Liu
d6d67d9011 configure: Fix infinite loop displaying config.summary
Displaying config.summary sometimes results in an infinite loop because
the loop condition only checks that failbit and badbit are not set.
The eofbit may be set with failbit and badbit not set.

Change-Id: I209480fbf114365fd4fdf1289c988a386f9f2562
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-03 13:41:55 +02:00
Jan-Arve Saether
80462ee678 Fix bug in configure where Qt did not compile with QT_ICONV=no
It did not compile because at the time qconfig.h was preprocessed,
QT_NO_ICONV was already defined, causing the #define QT_NO_ICONV to
fail. It should be guarded like most other defines in qconfig.h.
Also fix QT_CUPS=no, QT_ICONV=no, QT_GLIB=no, QT_NOTIFY=no and
QT_LARGEFILE_SUPPORT=64 the same way.

Change-Id: Ic9e0295756c35cb7c62e18eb9b63b1410e7de051
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-23 02:55:17 +02:00
Thiago Macieira
88a2efaddc Move the QT_COMPILER_SUPPORTS_xxx defines to qconfig.h
This reduces dramatically the command-line for compiling Qt sources.

These are private macros, only to be used by Qt's own modules, so the
compiler setting is either the same or, possibly, better. In other
words, in the worst case, when compiling a module with a better
compiler than for qtbase, such module might not enable all the
functionality it could otherwise do.

If we switch to a buildsystem that can support this properly in the
future, these macros should be removed.

Change-Id: I71f2d12ec98c9dd40eaab9de4a17446bd1066020
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-22 21:58:45 +02:00
Oswald Buddenhagen
4d7921b819 make configure set up QMAKE_DEFAULT_{INC,LIB}DIRS
hard-coding it in unix.conf was no particularly good idea for hopefully
obvious reasons.

the windows version is so far just a stub that does what the makespecs
hard-coded - more doesn't seem worth the effort. the guys interested in
x-building may want to rectify it at some point, but it's not going to
be easy.

Change-Id: I8fedd841a8416f8c0c57018752eae9510b5d00d0
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-22 18:40:17 +02:00
Andreas Holzammer
17c89d157a make it possible to pass configure zlib lib name
Change-Id: I82fde11436261dab51393b35dfbf2a753df58ec9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-21 11:05:20 +02:00
Andreas Holzammer
f2fabf77f9 Fix freetype font rendering for Windows CE
Windows CE does not have support for GetGlyphOutline.
So addGlyphToPath will not work. QML uses it for their
distance field rendering. One option to bypass this issue
is to use freetype as rendering backend.

Change-Id: I965254344945cbdad771a5d505fb61c1cc2087df
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-08-20 12:25:03 +02:00
Thiago Macieira
46da68c0bf QUrl is not necessary for configure.exe, drop it from the .pro
qurl.cpp was removed from the Makefiles on 6ab6b0fc1c,
but I missed the .pro file. You're not supposed to use the .pro file
anyway, it's just for opening in Creator.

But if you forget to remove the qmake build step, it would get compiled.

Change-Id: Ia52ae7349e195df58f76f8d2c5f8b46adfdc7454
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-15 23:40:57 +02:00
Oswald Buddenhagen
b603fd36c2 support -rpath for modules which are not installed to QT_INSTALL_PREFIX
a module's project file may set MODULE_INSTALL_LIBS before loading
qt_module.prf to have an alternative RPATH linked into the users of that
module.
this is relevant only for linking against non-installed -prefix builds
of that module, as otherwise .libs from the module's pri file is used
for rpath.

Change-Id: Ib240e748cf130a71a5991dc643c368a983092ead
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-08-11 10:40:23 +02:00
Andreas Holzammer
661cf8ff4e Make it possible to force generation of debug info in release builds
Change-Id: Ie79e5a6a87475d5140163a2a547b4385a53fc05f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-09 03:25:53 +02:00
Andreas Holzammer
495017e5d4 Rename msvc11 to msvc2012
Microsoft has named their new Visual Studio again
after the old naming schema.

Change-Id: Ib1b971807fa89d90b10892a2d78570058e564f3a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
2012-08-07 23:27:17 +02:00
Andreas Holzammer
0ef4bf1c1e Add possibility to add OpenSSL, DBUS, MySQL path under Windows
Under Windows it's quite possible that OpenSSL, DBUS or MySQL is
not installed into a central place. If -I and -L is
passed at configure time, it is added to all targets,
and if that path contained a conflicting header things would go
wrong.

Change-Id: Ic3338c49aa6eaa91b3abf5341e709ef604bf7aab
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-07 18:55:43 +02:00
Oswald Buddenhagen
5fae23eb26 introduce -fully-process configure option, change behavior of -process
configure will now run qmake without -recursive, as on modern systems
one can get a lot more out of parallelization done by make, which qmake
cannot do.
use -fully-process to get back the old behavior. -dont-process is
unchanged.

Change-Id: I2874321a963175463ae8992f3ab2b01bc13c9922
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-08-06 15:28:59 +02:00
Oswald Buddenhagen
051f97f350 remove phonon vestiges
Change-Id: Ifae2c631ddaae95ad9fc92e1f768fd910b254292
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-08-06 15:28:55 +02:00
Oswald Buddenhagen
a87006d4d2 remove -dsp & -vcp vestiges
only -vcproj is meaningful at this point

Change-Id: If727c96a9628e37a5a00a19a6eabede261c9c4b2
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-08-06 10:40:40 +02:00
Oswald Buddenhagen
f056602fa6 remove references to dead variables
Change-Id: I2603ebabbec5011fa0bf3e858401655a9a822768
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-08-06 10:40:07 +02:00
Oswald Buddenhagen
d0656e8bcf remove stray message
i think this was a vestige from the old wince build proces

Change-Id: I13305de627c65fc1c93ba6d2383557ff5ea7a147
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-08-06 10:38:46 +02:00
Oswald Buddenhagen
cd2a608cf6 remove stale messages about using setcepaths
Change-Id: I9c0a61254aa50e57b18718aa44935007fd25bd74
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-08-06 10:38:42 +02:00
Oswald Buddenhagen
c37df22454 remove the option summaries from the configures' help messages
they are an unreadable and unmaintainable mess. the options are properly
documented below.

Change-Id: If2ec683fb7c3740b19798979f8a1f9cd8d84f457
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-08-04 08:15:40 +02:00
Stephen Kelly
621e434ffe Remove unused Q_WS_QPA define.
Change-Id: Ie77526000cf93ad6901e28abe2558d254ccf8f1a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@nokia.com>
2012-08-03 03:02:27 +02:00
Stephen Kelly
187ea846a6 Remove some dead QWS code from configure.
Change-Id: Ic1b47533e3f04cebaac83ca632068c2e791a846c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-03 03:02:27 +02:00
Thomas Senyk
1865405826 Adding configure option: -no-gcc-sysroot
This option is important if you want to use configure's
and qmake's -sysroot (e.g. PKG_CONFIG settings, device-files),
but the toolchain (in combination with the rootfs)
is not able to handle gcc's --sysroot.
One known case is freescale's ltib setup where the toolchain
itself comes with all the essential files (e.g. crt1.o),
while the rootfs has none of those files, so gcc's
--sysroot can't be used. The rootfs on the other hand contains
all kinds of "less important" files/packages (e.g. libdbus).
For those "less important" files/packages Qt needs pkg-config
to be able to include/link properly. Therefore one needs
configures -sysroot without gcc's --sysroot.

Change-Id: Iaec9b07012f2945f3ecb3ced0ed95176721b5ecd
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-01 02:25:37 +02:00
Peter Kümmel
952788d64b add configure options for debug/release OpenSSL
msvc cannot use the same library for debug and release builds
if openssl libraries are linked statically into the network library.

Change-Id: Ic27ede2d9531b94aff4c50c1699947ce72caf286
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-31 11:47:39 +02:00
Thiago Macieira
d9048bef20 Make 'nmake qmake' work with the stub (fast) Makefiles
Without this, if you ran 'nmake qmake' or 'jom qmake' in qtbase's
top directory, it would simply tell you that 'qmake' was up to date.
After all, there is a directory called 'qmake' there.

Change-Id: I6cdb405e8106c137ecbab27923e524b924b19c84
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
2012-07-28 00:09:45 +02:00
Stephen Kelly
5fa0f19e2e Fix copypasto: iconv -> cups.
Introduced in eba0efe10e

Change-Id: I6bfbf884f66057955d62db6266cf11b399edf965
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-25 17:32:21 +02:00
Rafael Roquetto
eba0efe10e Enable CUPS auto detection on Windows
Detect CUPS availability automatically when cross-compiling from a Windows
host.

Change-Id: Ife9bb90732c39794a7b760ced4aaea232612fe54
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-07-19 15:28:18 +02:00
Rafael Roquetto
6715c4fb2e Improve Windows XP and Vista styles auto detection
Do not build windows styles when the target platform is not Windows. This
makes a difference when cross-compiling.

Change-Id: I2184d39ed253af1069c5cdcd6a848611cff24789
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 02:31:24 +02:00
Rafael Roquetto
d524e326e4 Auto detect iconv on Windows hosts
Enable auto detection for iconv when
cross-compiling from Windows hosts.

Change-Id: I699e0a31d938403f5e80e74be90df87f11f361ba
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-18 14:37:36 +02:00
Rafael Roquetto
96bf9b181c Fix auto detection in configure.exe
All auto detection tests were failing
because the default mkspec was not yet
installed during the time they were run.

Change-Id: Iad14580f38d1539d9831917e5c9c707eae4c0c90
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-18 14:36:12 +02:00
Rafael Roquetto
a94e917eeb Set correct QT_LFLAGS_SQLITE for default cases.
In systems where no pkgconfig is available, such as QNX, we set
QT_LFLAGS_SQLITE to the default values.

Change-Id: I24edd589ce7baf2614480a91842ca756ead39463
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-17 15:56:15 +02:00
Rohan McGovern
18ddd367b8 configure{.exe}: enable 'tools' as a default build part
Tools for each module should be enabled by default.

Prior to qt_parts.prf, they have been enabled by default, but only by
accident - the value of QT_BUILD_PARTS with respect to 'tools' was
generally not respected.

Change-Id: Icd49d6128d4050ff1c865967a563e9ab88c5a3a2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-10 08:33:49 +02:00
Bjoern Breitmeyer
6fef496cd6 removed unecessary ce override of QT_INSTALL_PREFIX
this stopped the installation of mkspecs for windows ce

Change-Id: Ic57337904b88e4460f9f4110b08ecefb1a2eed8b
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-09 11:51:21 +02:00
Oswald Buddenhagen
77b293d2ff make QT_BUILD_PARTS setting in qmodule.pri additive
that way it is actually possible to add additional parts from the qmake
command line.

Change-Id: I42e0b58424292cebafb57538a879204d370397bb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-07-09 08:26:23 +02:00
Oswald Buddenhagen
43663bc87d export QMAKESPEC to the project
this makes it unnecessary to dump qmakespec to .qmake.cache and
qmodule.pri.

Task-number: QTBUG-22700
Change-Id: I678c7ee7df2512184b9cd06d7a3be8bbd0b0da15
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-07-03 16:48:33 +02:00
Oswald Buddenhagen
493b4311ff don't match on the spec name in qconfig.pri
this will fail now even on unix (and wouldn't have ever worked on
windows), as the full spec name is known only after reading the spec,
and qconfig.pri is read from inside the spec.
matching on the host_build flag is cleaner anyway.

Change-Id: I7da144e89ab3db0fad942d755d8cb0a0f3b85588
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Donald Carr <sirspudd@gmail.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-07-03 16:48:33 +02:00
Holger Hans Peter Freyther
56df16fe4b buildsystem: Remove SXE from the configure and qconfig-*.h files
The SXE feature was used with Qtopia but is long gone. Clean it up.

Change-Id: I55fba97b6382300ba63e94f3a6c415227f571e37
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-02 10:10:56 +02:00
Oswald Buddenhagen
1491065506 Merge branch 'buildsystem' (second round)
refactoring and cleanup. fixes x-builds between different os families.

Conflicts:
	mkspecs/features/qt.prf

Change-Id: I0205e6f07f77c9b015cf055dd87a471883949a91
2012-06-29 09:06:37 +02:00
Rafael Roquetto
693df71e0f Fix configure.exe to build qmake before tests
qmake is needed by autoDetection()/tryCompileProject() to be able to build the
tests. This patch also add a new method - generateQConfigCpp() - which
generates qconfig.cpp, needed to build qmake.

Change-Id: Ic304a364a13a2b3c28433f2a299df222a56fed67
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-28 12:35:14 +02:00
Thiago Macieira
7395e6abc6 Clean up the use of QT_NODLL
QT_NODLL is replaced by QT_STATIC, but the latter is implied if
QT_BOOTSTRAPPED is already defined. Therefore, simply remove the
QT_NODLL definitions.

Change-Id: Iac7ec0b494b7a78197c25d59547f45eaf92d7465
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-28 06:21:52 +02:00
Thiago Macieira
96166fa56a Update the macros for shared/DLL and static builds
Up until now, we had a mess of different macros used for building
DLLs, for building shared libraries on Unix systems and for building
static libraries. Some of the macros were contradictory and did not
work. From now on, there shall be only:

 - QT_STATIC: indicates that it's a static Qt build and the export
   macros should expand to empty
 - QT_SHARED: indicates that it's a shared / dynamic Qt build and the
   export macros should expand to Q_DECL_EXPORT or Q_DECL_IMPORT,
   depending on whether the macro corresponds to the current module
   being built (the QT_BUILD_XXXX_LIB macro comes from the module's
   .pro file)

QT_BOOTSTRAPPED implies QT_STATIC since the bootstrapped tools link
statically to some source code.

QT_STATIC is recorded in qconfig.h by configure when Qt is configured
for static builds. Nothing is recorded for a shared / dynamic build,
so QT_SHARED is implied if nothing is defined. This allows for the
existence of a static_and_shared build: with nothing recorded,
defining QT_STATIC before qglobal.h causes the export macros to be
that of the static form. Linking to the static libraries is out of the
scope of this change (something for the buildsystem and linker to
figure out).

From this commit on, the proper way of declaring the export macros for
a module called QtFoo is:

    #ifndef QT_STATIC
    #  ifdef QT_BUILD_FOO_LIB
    #    define Q_FOO_EXPORT Q_DECL_EXPORT
    #  else
    #    define Q_FOO_EXPORT Q_DECL_IMPORT
    #  endif
    #else
    #  define Q_FOO_EXPORT
    #endif

The type of the Qt build is recorded in QT_CONFIG (in qconfig.pri) so
all Qt modules build by default the same type of library. The keywords
are "static" and "shared", used in both QT_CONFIG and CONFIG. The
previous keyword of "staticlib" is deprecated and should not be used.

Discussed-on: http://lists.qt-project.org/pipermail/development/2012-April/003172.html
Change-Id: I127896607794795b681c98d08467efd8af49bcf3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-28 06:21:48 +02:00
Bjoern Breitmeyer
4fa05eca0e disabling largefile support for Win CE
this was disabled before but
I2631ff687881278ba42edacd237a2130c103b69f
enabled it per default

Change-Id: Ic5a8e50d116cf6b15719668faf055967a6f34e06
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-28 06:21:42 +02:00
Oswald Buddenhagen
bc05c9aee8 don't copy files to default specs any more
now that the default specs really only forward to the real specs,
it is not necessary to copy any auxiliary files.

Change-Id: I169a61a045063b796062fe6af3a2afbe3f1c9da0
Reviewed-by: Mark Brand <mabrand@mabrand.nl>
2012-06-27 14:35:24 +02:00
jian liang
6bf119afc7 Workaround to compile configureapp.cpp with MSVC2010 x64
Remove a non-ascii character from configureapp.cpp to let it to be
compiled successfully with MSVC2010 x64.

Change-Id: I0b016630be49e8731cc438abca4ef959124138be
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-27 03:55:25 +02:00
Oswald Buddenhagen
989cada8cc don't compile the host tools for wince already in configure
qmake can now produce proper mixed-target projects

Change-Id: I797f055f6e1487b9aefb75eee91d6c2cc4e6e56e
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-27 00:46:35 +02:00
Konstantin Ritt
a9ba927406 Avoid macro re-definition after 1838a6c2fb
Change-Id: I2631ff687881278ba42edacd237a2130c103b69f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2012-06-26 11:37:57 +02:00
Rafael Roquetto
1838a6c2fb New command line switches for configure.exe
Adds support for the following command line switches to configure.exe tool:
    * -nis (-no-nis)
    * -cups (-no-cups)
    * -iconv (-sun-iconv, -gnu-iconv, -no-iconv)
    * -neon (-no-neon)
    * -largefile
    * -fontconfig (-no-fontconfig)
    * -posix-ipc
    * -glib
    * -system-freetype
    * -sysconfdir <dir>

Change-Id: I0e299f02605bdcb588ae746f397b92ec23a7ff23
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-21 02:52:16 +02:00
Oswald Buddenhagen
c4eed770be purge QMAKE_INCDIR_QT and QMAKE_LIBDIR_QT
they are equivalent to QT_INSTALL_(HEADERS|LIBS)/get.

Change-Id: Ic4b47f3ca7db55785b96f19020a2fa020a8d25bd
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-06-19 16:39:59 +02:00
Oswald Buddenhagen
6a8f64136e introduce /get property variants
properties are now split into a write location $$[FOO] and a read
location $$[FOO/get]. the write locations are hard-coded and configurable
via qt.conf/Paths as before, while the read locations are configured via
qt.conf/EffectivePaths.

this finally provides a clean solution to the problem that during the qt
build itself tools and libraries need to be taken from somewhere else
than they are installed to.

Change-Id: I956c43bd082afd465e690fe75d0bee3c2c0f7c25
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-06-19 16:39:58 +02:00
Oswald Buddenhagen
b2954378d6 don't overquote make command
$(MAKE) is apparently already quoted when the path contains spaces

Change-Id: Ie09a0f43083f9eae95fc135c3a74364eaa356934
2012-06-19 16:39:51 +02:00
Oswald Buddenhagen
78290e66c4 clean up path normalization in configure.exe and QLibraryInfo
always use normalized path separators, except when running native
commands or printing (note however that the qmake -query output will now
be consistently normalized).

Change-Id: I6ae920c3bc656cb517d1f4e4e5518cf79e002169
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-06-19 16:39:50 +02:00
Oswald Buddenhagen
7d8578418d properly declare the host tools as such in the project files
don't mess with the qmake cmdline args any more.

Change-Id: I399d87145d31d25e29951b6acd96387a3c7282f0
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-06-19 16:37:50 +02:00
Oswald Buddenhagen
14bbab09c1 introduce ability to build projects for the host system
when qmake runs into the new option(host_build) command, it will restart
the project evaluation with a host spec.

the new default host spec is called default-host (gasp!). it is
overridden with the pre-exising -spec / -platform option, while the new
-xspec / -xplatform option overrides the pre-existing default spec.
specifying -spec but not -xspec will set the xspec, too, so the behavior
is backwards-compatible. same for the XQMAKESPEC override read from
.qmake.cache and the environment variable.
the cleaner solution would be adding -hostspec, to be symmetrical with
the override semantics, but that would deviate from configure in turn.

Change-Id: I4297c873780af16ab7928421b434ce0f1d3820da
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-06-19 16:37:49 +02:00
Sean Harmer
0346d605e3 Do not add debug/release to QMAKE_CONFIG. Let module system enable them
This solved QTBUG-26111 in which qtjsbackend gets built with an
incomplete framework on Mac OSX. This was traced back to commit
6a6fd56e66 which moved QMAKE_CONFIG
values from .qmake.cache to mkspecs/qmodule.pri. Since qtjsbackend
contains config tests it creates its own .qmake.cache which was
previously masking this issue.

QMAKE_CONFIG incorrectly contained debug for debug_and_release builds
even though debug and release are already present in the CONFIG variable
in mkspecs/qconfig.pri. The changes to configure prevent CONFIG in
qmodule.pri from containing debug and release variables and ensure
that QT_CONFIG contains build_all and debug_and_release if appropriate.
Configure.app is also adjusted to match this behaviour.

The other part of the change is to qt_module_config.prf and
qt_plugin.prf. These changes take care of populating CONFIG with
the appropriate debug_and_release and build_all variables depending
upon what is present in QT_CONFIG. This ensures that the Qt modules
and plugins get built with the same configuration as qtbase.

The special handling for the qcocoa QPA plugin ensures that it is
built in release mode only to preserve the behaviour introduced by
commit 5603f94eaa.

Task-number: QTBUG-26111
Change-Id: I6f65aba50709e1b2431b8b4411ff30a06f7d8aed
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-14 03:03:38 +02:00
Thiago Macieira
b4525b3407 Add configure-time checking for the SSE and AVX features on Windows
Modify configure.exe to run some configure-time tests and check if
the SSE and AVX compiler features are supported.

The tests themselves required a bit of changes to compile with
MSVC. The include in sse4_2.cpp was wrong. And for whatever reason, it
didn't like the volatile variables, which GCC, Clang and ICC have been
happy with. This should produce no effect in compilation, though: even
dead code must be syntactically correct. We're not running the output.

Change-Id: Ibe5d0904a378a7efed853c7215f88a2ddcefb1b3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-12 17:34:52 +02:00
Rafael Roquetto
b87c5cff24 Support other platform names on configure.exe
Added three new methods, which are meant to be used internally to
configureapp.cpp:
    - int platform(): returns an integer representing a platform
    - QString platformName(): returns the platform name string to be used when
      displaying the license agreement.
    - QString qpaPlatformName(): returns the value to be defined as
      QT_QPA_DEFAULT_PLATFORM_NAME.

Currently supported names are Windows, Windows CE, QNX and Blackberry. Default
is "Windows".

Change-Id: Ifa4d1b9c02cda956be9becdf8db195d3d494f1d5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-12 04:30:00 +02:00
Rafael Roquetto
8839109abe Fix arch detection when cross compiling on Windows
When trying to detect the target architecture, configure.exe will look for a
file called 'arch.exe'. However, in some situations such as when
cross-compiling on a Windows host to a Unix host, and depending on the
toolchain being used, the output file generated by config.tests/arch may
simply be called "arch" instead of "arch.exe", causing configure.exe to fail.
This patches configure.exe to handle both naming schemes.

Change-Id: I5798f716d732388c707564d4d45c4887ab3d3d9f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-06-12 04:29:58 +02:00
Thiago Macieira
6a6fd56e66 Move the sub-architecture feature to better places in qmake
Instead of saving the ability of the compiler to produce SSE2, AVX,
Neon, etc. code in .qmake.cache (Unix) or qconfig.pri (Windows), move
everything to qmodule.pri. Accordingly, move the DEFINES += settings
to qt_module.prf instead of qt.prf.

This allows us to re-use these settings in other Qt modules (other
than qtbase), if necessary. Though currently the extra compiler
definitions are found only in src/gui/gui.pro. They can be moved
elsewhere when it becomes necessary.

As a side-effect of this change, some other flags are moved from
.qmake.cache to qmodule.pri (on Unix). The flags that are getting
moved should probably be moved anyway.

Change-Id: Ibc3ab0111e148d81870772f9357273660aa93417
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-31 17:55:49 +02:00
John Layt
f70924e9cc QtPrintSupport: Add CUPS printsupport plugin
Move CUPS code around to create a new CUPS printsupport plugin, this
fixes QPrinterInfo for CUPS which depends on the plugin to work.

It QT_NO_CUPS is defined then the plugin is not built and only Print
to PDF is supported under Linux.

* Move unused genericiunixprintersupport plugin to start new CUPS
  printsupport plugin
* Split QPdfPrintEngine to create QCupsPrintEngine
* Remove LPR related code from QPdfPrintEngine
* Move CUPS specific code from plugin base class to derived CUPS class
* Remove forcing CUPS print engine to use PDF mode as PDF is now Native
* Move qt_getCupsPrinterPaperSizes from qprinterinfo_unix to
  QCUPSSupport
* Remove qprinterinfo_unix as no longer used
* Remove all QT_NO_LPR uses

There is now no CUPS specific code left in printsupport/kernel except
QCUPSSupport which is needed for the dialogs.

Task-number: QTBUG-23060

Change-Id: Ie8fa4512a2424edc8943068e0fa9fb714cc42db9
Reviewed-by: Teemu Katajisto <teemu.katajisto@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: John Layt <jlayt@kde.org>
2012-05-31 17:40:55 +02:00
Friedemann Kleint
e7f1106edb Windows: Add ANGLE support.
- Add QWindowsEGLContext usable for ANGLE and Windows CE.
- Add QWindowsEGLStaticContext containing the display
  for resource cleanup.
- Add EGLSurface to QWindowsWindow.
- Add a -angle option specifying the path to the external
  ANGLE installation to configure, add libraries to
  the mkspecs.

Initial-patch-by: Jabot Corentin <corentinjabot@gmail.com>

Task-number: QTBUG-24207

Change-Id: I5f80b1efb6996da7c5d70aa3720f7801c9e4c6af
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-31 09:13:01 +02:00
Thiago Macieira
735f7e6248 Record the sub-architecture (CPU features enabled in the compiler)
If the system's compiler has extra features on top of the base
settings enabled or if the mkspec or $CXXFLAGS variable included some,
record them.

This will allow us to choose whether or not to use our own special
compilers, based on whether the system default compiler contains it or
not.

Change-Id: I87cada9fab4cfa58846a831d0a7c7b50d8fa87fd
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-30 17:28:07 +02:00
Thiago Macieira
1533bfc5fc Improve the architecture-detection mechanism
For the Unix part, this now obeys the -v option, printing the full
command-line it used to compile, allowing testers to identify why
something went wrong.

Unfortunately, it requires a full compilation cycle, instead of just
preprocessing. Just one more among the many on Unix, but maybe a
noticeable slow-down on Windows.

Change-Id: I654b70d99887e04c96731a5b91be9ad555e4d8fe
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-30 17:27:56 +02:00
Friedemann Kleint
22ef455c6d Windows-configure.exe: Do not print licensing info in log.
The hash value is not correct after choosing a different license.
Also, Unix configure does not report it.

Change-Id: I988fffc923c3894e8141a91fc50747e30e20966b
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-21 16:02:06 +02:00
Girish Ramakrishnan
76e073375e Save configuration feedback into config.summary
commit d60d98450a adds the support for
unix configure. This commit adds the same for Windows configure.

Change-Id: Ibcc604154fd7d0d9c6112ae5459d9bb842daf180
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-19 01:45:04 +02:00
Lars Knoll
2b21dd69d6 turn off exceptions by default where they aren't required
This significantly reduces the size of the generated code
in places where we don't need exceptions.

The -(no-)exceptions configure flag has been removed in the
process, as there is now a fine grained way to control this
on a per module level, and Qt is being compiled without
exceptions in most places.

Change-Id: I99a15c5d03339db1fbffd4987935d0d671cdbc32
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-05-17 05:14:26 +02:00
Andreas Holzammer
1a4f58d3e6 Add Visual Studio 11 mkspec
This adds the Visual Studio 11 mkspec
and the corresponding changes to configure
and qmake makesystem.

Change-Id: I3a7e82a6f7f90aa0a94dedd493ebaa66bf100923
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-16 13:34:20 +02:00
Rohan McGovern
1211fd0b61 configure.exe: move a few things from qmodule.pri to qconfig.pri
QMAKE_RPATHDIR, QT_LIBINFIX and QT_NAMESPACE were previously set in
qmodule.pri on Windows, and qconfig.pri on platforms other than Windows.
Make the behavior consistent, move them to qconfig.pri.

qconfig.pri is the correct file because these variables need to be
visible for _all_ users of Qt, and not only the other Qt modules (the
ones who load qmodule.pri).

Change-Id: I4d517488a80b134a78ebde8d3196bdab3c3ab991
Reviewed-by: Lincoln Ramsay <lincoln.ramsay@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-11 10:38:25 +02:00
Andreas Holzammer
954c2f4cf1 Add more descriptions for configure for Windows
Add some more of the prefix options that are
already implemented to the usage information.

Change-Id: I89ee37ebc6deee8b6a5fd5a1c16d26ae3ead1f30
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-11 01:42:02 +02:00
Rohan McGovern
de11b9f5a7 Revert "QtPrintSupport: Remove remaining LPR specific code"
This doesn't compile with a typical cross-compilation setup, which
generally won't include cups headers.  The commit should have been
rejected, but wasn't, due to a bug in the Qt Project CI.

Since it now causes all other modules depending on qtbase to fail their
CI, it must be reverted to minimize disruption while the commit can be
amended and/or the test toolchain updated to include cups headers.

This reverts commit 80f7a38890.

Change-Id: I315ae275b37de358a74af28ab7bd691c9849acba
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-05-08 06:58:27 +02:00