Commit Graph

730 Commits

Author SHA1 Message Date
Tor Arne Vestbø
9ff1310af5 Distinguish between Objective-C and Objective-C++ sources
Instead of lumping both Objective-C (.m) and Objective-C++ (.mm) sources
into the same pile, passing them on to the same compiler as for C++ (CXX),
with the C++ flags (CXXFLAGS), we follow Apple's lead and treat them as
variants of the C and C++ languages separately, so that Objective-C
sources are built with CC and with CFLAGS, and Objective-C++ sources
with CXX, and CXXFLAGS.

This lets us remove a lot of duplicated flags and definitions from the
QMAKE_OBJECTIVE_CFLAGS variable, which in 99% of the cases just matched
the C++ equivalent. The remaining Objective-C/C++ flags are added to
CFLAGS/CXXFLAGS, as the compiler will just ignore them when running in
C/C++ mode. This matches Xcode, which also doesn't have a separate build
setting for Objective-C/C++ flags.

The Makefile qmake generator has been rewritten to support Objective-C/C++
fully, by not assuming that we're just iterating over the C and C++
extensions when dealing with compilation rules, precompiled headers, etc.
There's some duplicated logic in this code, as inherent by qmake's already
duplicated code paths, but this can be cleaned up when C++11 support is
mandatory and we can use lambda functions.

Task-number: QTBUG-36575
Change-Id: I4f06576d5f49e939333a2e03d965da54119e5e31
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-10-09 15:15:17 +00:00
Thiago Macieira
a2f501f939 Make -dbus-linked the default on all platforms
[ChangeLog][QtDBus] The QtDBus library now links directly to the
libdbus-1 system library if it was detected at configure time. To force
linking to the library, pass option -dbus-linked to configure; to force
dynamically loading at runtime, use -dbus-runtime.

Task-number: QTBUG-14131
Change-Id: Ie33d1f22f85b465ab0ce166b8f17b8491eae1c21
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-10-01 21:08:34 +00:00
Oswald Buddenhagen
e8dcd5038d "frame" execution of config tests precisely
the purpose is to make build log parsers able to ignore build failures
in verbose configure output.

Change-Id: I01af2e019fd1b055fdfcf6749faeebacb7a39c3f
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-10-01 16:18:49 +00:00
Daniel Nyström
58bed4cda9 eglfs: Support for alternative Mali driver packages
In addition to the proprietary Mali Linux driver bundle from ARM, there
are a couple of semi open source alternative bundles out in the wild,
which are mostly derivatives from the sunxi-mali bundle.

The non-ARM bundles lacks the proprietary header file fbdev_window.h
which defines the fbdev_window struct. Instead, it has an equivalent
mali_native_window struct in the EGL/eglplatform.h (which in turn is
included by EGL/egl.h).

This change adds an alternative configure test which detects the non-ARM
bundles are used. It also removes the dependency on fbdev_window.h by
defining the structure ourselves, which actually makes the plugin
potentially compilable with *any* EGL SDK.

Change-Id: I78ab4b618e8e9c774c889fe9896105cf2cf4228e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-09-25 10:15:04 +00:00
Thiago Macieira
3d7586b760 Auto-detect whether 64-bit std::atomic really works
The C++ standard says it must, but some badly-configured toolchains seem
to be lacking support.

In particular, for some 32-bit platforms without native support for
them, GCC implements 64-bit atomics via out-of-line functions in
libatomic. If that library is missing... well, then std::atomic 64-bit
doesn't work and we mustn't try to use it.

This was found when trying to compile Qt 5.6 for MIPS 32-bit:

Linking library libQt5Core.so.5.6.0
.obj/qsimd.o: In function `std::__atomic_base<unsigned long long>::load(std::memory_order) const':
/opt/poky/1.7/sysroots/mips32r2-poky-linux/usr/include/c++/4.9.1/bits/atomic_base.h:500: undefined reference to `__atomic_load_8'
.obj/qsimd.o: In function `std::__atomic_base<unsigned long long>::store(unsigned long long, std::memory_order)':
/opt/poky/1.7/sysroots/mips32r2-poky-linux/usr/include/c++/4.9.1/bits/atomic_base.h:478: undefined reference to `__atomic_store_8'

Yocto bug report: https://bugzilla.yoctoproject.org/show_bug.cgi?id=8274

Change-Id: I42e7ef1a481840699a8dffff140224d6614e5c36
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-09-22 22:46:08 +00:00
Oswald Buddenhagen
f58e95f098 remove some mac multiarch vestiges
ppc/ppc64 and 32-bit x86 have been dead for a while.

consequently, the legacy macx-g++-64 spec was most probably not used.

which in turn meant that NATIVE_64_ARCH was never set (in particular on
windows hosts ...), which means that the android ndk host auto-detection
was effectively broken.

the arch code in mac/default_post.prf was also never triggered, so nuke
it as well.

Change-Id: Ic0775e40b273a22e0a15808cac328e0df33c2155
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-09-17 16:35:46 +00:00
Thiago Macieira
4684c1afe5 Add detection of C++14 and C++1z compiler features
[ChangeLog][General Improvements] Qt's buildsystem now detects whether
the compiler supports C++14 and experimental support for C++1z. If the
compiler supports it, then Qt is automatically compiled using that
support.
\
This does not apply to user applications built using qmake: those are
still built with C++11 support only. To enable support for C++14 in your
application, add to your .pro file: CONFIG += c++14 (similarly for
C++1z).

Change-Id: Ib056b47dde3341ef9a52ffff13ef1f5d01c42596
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-09-05 23:05:40 +00:00
Yoann Lopes
e6a2ba7089 Prefer GStreamer 1.0 on Linux.
As planned for 5.6, QtMultimedia now uses GStreamer 1.0 over
0.10 when available.
This means the binary packages will be based on GStreamer 1.0.

Task-number: QTBUG-47920
Change-Id: I9a18569ff96902116f0f6a759c185a5896f520d5
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2015-09-02 12:06:54 +00:00
Thiago Macieira
3accdb8086 Detect which C++ standard edition the compiler defaults to
Change-Id: I2991557a5cc74cd18e88ffff13f670bf25d5423e
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2015-08-25 06:25:11 +00:00
Louai Al-Khanji
55bc1ddc76 Improve description of configure script's -kms switch
Change-Id: I05e69d10ca0df9f99dca2c172e1791371124e75c
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-08-25 06:01:23 +00:00
Oswald Buddenhagen
5a039bf53e Merge dev into 5.6
Change-Id: I061f2513ef58f696e75b11928d89aaaf059659a3
2015-08-17 19:55:41 +02:00
Timur Pocheptsov
fbc3b6f405 Fix a typo
'Do', not 'dot' in the help's text.

Change-Id: Ib0ccdd50ae62085571c5f932650b9209fa966d79
Reviewed-by: Richard J. Moore <rich@kde.org>
2015-08-14 03:22:08 +00:00
David Schulz
b8c57e5fb1 configure: Remove unused variable.
Change-Id: I66563d363137628eedcb13b5276ed2b9e32534e6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-08-11 11:57:25 +00:00
Timur Pocheptsov
83cfec7aac Make SecureTransport the default SSL backend on OS X
SecureTransport is now the default SSL backend on OS X.
Users can still choose the OpenSSL backend by passing the -openssl,
-openssl-linked or -no-securetransport option to configure script.

[ChangeLog][Important Behavior Change] Make SecureTransport the default SSL backend on OS X

Change-Id: I7a4edfdb72e63975d6b31435969702f8e86a10f2
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-08-09 09:20:22 +00:00
Paul Olav Tvete
f08e1ecdc8 Add Mir client platform plugin
Contributed by Canonical, Ltd.

Change-Id: I77752a1fd56641342be6c84e01b013d3df36ad73
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-08-09 06:27:26 +00:00
Tasuku Suzuki
26b4ec448c Support logging direct to syslog, if enabled.
[ChangeLog][QtCore][Logging] Systems with syslog may now pass -syslog to
configure to send logging output to syslog.

Change-Id: I80d58ee6e70d8deb2409fc666e7e7f2d7f52b8e1
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
2015-08-09 04:16:38 +00:00
Thiago Macieira
06bdc79d62 Add name to the cloexec feature test
Also solves a warning printed:

configure: 4200: shift: can't shift that many

Change-Id: Ib306f8f647014b399b87ffff13f295e2cdb7f8d7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-07-20 07:26:20 +00:00
Thiago Macieira
85ff351266 Revamp the CLOEXEC support in Qt
The pipe2/dup3/accept4 functions and SOCK_CLOEXEC are quite old nowadays
on Linux. They were introduced on Linux 2.6.28 and glibc 2.10, all from
2008. They were also picked up by uClibc in 2011 and FreeBSD as of
version 10.0. So we no longer need the runtime detection of whether the
feature is available.

Instead, if the libc has support for it, use it unconditionally and fail
at runtime if the syscall isn't implemented.

Change-Id: Ib056b47dde3341ef9a52ffff13efcc39ef8dff7d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-07-17 17:36:19 +00:00
Thiago Macieira
5af7f7ec46 Make the -pkg-config and -force-pkg-config options be the same
There's really no difference between them, other than -force-pkg-config
skipping the check if the tool is even available and printing a warning.

Change-Id: I04cb83c6649ef73866a84032ea46093c4a00ce00
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-07-17 17:36:03 +00:00
Simon Hausmann
b2603b7665 Merge remote-tracking branch 'origin/5.5' into HEAD
Conflicts:
	src/plugins/platforms/windows/qwindowsopengltester.cpp

Change-Id: Ia7abeba9395ccf84e2fa81b91a5725a86dedb9fe
2015-07-17 16:35:42 +02:00
Thiago Macieira
78d8759b04 configure: Initialize variables for the EGLFS backends
Otherwise the information is missing from configure's output summary:

    EGLFS ................ no
      EGLFS i.MX6....... .
      EGLFS KMS .......... no
      EGLFS Mali .........
      EGLFS Raspberry Pi .
      EGLFS X11 .......... no

Change-Id: Iee8cbc07c4434ce9b560ffff13cb331778c70261
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-07-17 00:51:00 +00:00
Thiago Macieira
769047fbc7 configure: properly quote the test name containing spaces
Such as "OpenGL ES 2.0"

Change-Id: Ib306f8f647014b399b87ffff13f15f58c84a12ae
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-07-17 00:49:09 +00:00
Robert Loehning
1443cdcfe0 configure: Mention availability of linux-clang
Change-Id: I2e99832b06a59b1587f98041a7d36ed69e22be94
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-07-08 15:52:50 +00:00
Jake Petroules
0784a2c4ae Fix typo in configure.
The option is named securetransport, not secure-transport.

Change-Id: I5efdde6d751cbc7e9717c6bfe0add93c5dbd2ec9
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2015-07-06 16:00:19 +00:00
Ulf Hermann
2ca151a8d1 configure: Put qml-debug option into QT_CONFIG
This way we can exclude the connection plugins from being compiled
if it's off.

Change-Id: Ic5ea1d35ea9f5929420268a1aefebf0464d8520b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-07-06 14:15:39 +00:00
Kai Koehne
8b304ff26f configure: Infer licheck bitness from platform argument
We build our 32 bit Linux packages nowadays on Red Hat 64 bit with
-platform linux-g++-32. Honor this when selecting the right licheck
binary to use.

Change-Id: I08527295bc461c8cdd07e81a10c93a8f010b787d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-06-29 15:06:00 +00:00
Daniel Molkentin
d3379cee8a Document -secure-transport parameter in configure
Change-Id: Iea658e37b681c54de35307b1e587adf0efd70970
Reviewed-by: Richard J. Moore <rich@kde.org>
2015-06-14 15:19:22 +00:00
Laszlo Agocs
53d289ec4c xcb: Use XIGrabDevice instead of xcb_grab_pointer with XI 2.2
Switch to using the pointer events from XI2 when touch is available (i.e.
version is >= 2.2). This allows us to select and grab the button and motion
events together with the touch ones. This prevents the issue of not getting
touch events when grabbing via the plain xcb functions.

To prevent touch sequences from being replayed after ungrabbing (for example after
dismissing a popup that caused a grab), we try to accept touches via XIAllowTouchEvents.
Unfortunately this leads to a deadlock and therefore we can only do it when we know
we have a new enough libXi. This is a configure time check which is not ideal since
the system on which apps run can have a newer libXi than the machine that did the Qt
build, but seems like the best we can do.

The environment variable QT_XCB_NO_XI2_MOUSE can be set to 1 in order to prevent
processing mouse events through XInput. This restores the old behavior with broken
grabbing.

[ChangeLog][QtGui] Pointer event delivery on X11 is now done via XInput 2.2+ when available.

Done-with: Michal Klocek <michal.klocek@theqtcompany.com>
Done-with: Alexander Volkov <a.volkov@rusbitech.ru>
Task-number: QTBUG-43525
Task-number: QTBUG-45054
Task-number: QTBUG-30417
Change-Id: I7cb2002b31bef4cd527aa427549dcf2d5467968e
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
2015-06-01 06:34:22 +00:00
Kai Koehne
270313d068 Fix wording of error message
This broke with commit 83a5694dc2 .

Change-Id: Ib641cef9639f1c70a5f38ce0e5d9d9e3071373e4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 15:28:35 +00:00
Kai Koehne
63660402d8 Run license checker in qmake
Check for a valid license not only in configure, but also in qmake.
To limit the runtime overhead we cache the day of the last run in
a .stash file. This allows us to run licheck only for the top-level
qmake call, and only once per day.

This requires an updated licheck executable that supports the new
check mode.

[ChangeLog][Tools][qmake] For commercial builds, qmake now checks for
a valid Qt license. This requires setting up a Qt Account (or
.qt-license file) on the development machine.

Change-Id: I2c2a05a4602cc661560568b76ddf520cb8134769
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 10:23:10 +00:00
Kai Koehne
40327b6feb Resolve path to right licheck
In the unix commercial packages, licheck so far has been a shell
script that redirected to the 'right' licheck. To simplify things
we now resolve the right executable path in configure itself.

Change-Id: I1183d000a11bf42729f3e0405a0bc1d4b618933c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 10:23:07 +00:00
Kai Koehne
5d707bff3d Make Qt Edition available to qmake
Allow .pro, .prf ... files to check the edition (OpenSource,
Evaluation, Preview, Enterprise ...) of the Qt installation.

Change-Id: If2a8e3877d066b225b1777916cef1d23c65f8512
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-27 10:23:04 +00:00
Alex Blasche
fd9a51bf56 Build qtconnectivity for iOS.
Starting with Qt 5.5 qtconnectivity on iOS is supported

Change-Id: I30430ce351b7e2fc8031c5719bed5354ed234cc7
Task-number: QTBUG-45988
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-05-13 06:36:44 +00:00
Adam Strzelecki
6e18f57a9c Build Qt for OS X and iOS with relative rpath.
Defaulting to absolute_library_soname on configure -rpath is no longer
necessary as now we support @rpath install name ids on OS X and iOS.

This also sets QMAKE_SONAME_PREFIX to @rpath for Qt modules when built
with rpath configuration.

This makes Qt libraries relocatable on OS X. Qt SDK is not yet
relocatable though, because plugin locations (including cocoa plugin)
are still resolved using absolute path (see QTBUG-14150). Also, there
are several absolute paths hardcoded in qmake mkspecs pri files.

Task-number: QTBUG-31814
Change-Id: I36b9384cd69ac609608acbe2b3d5e0512317e0d6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-05-13 04:09:47 +00:00
Oswald Buddenhagen
67a24c260b rpath: use new DTAGS if available
this allows LD_LIBRARY_PATH to take precedence over the hard-coded
rpath, which is the only sane thing to do (which is also why i'm not
adding an option to disable it).
this behavior is consistent with non-linux systems.

the windows version has no auto-detection, just like for gold linker
usage.

Task-number: QTBUG-3069
Change-Id: Ief9ba032291c898d75d76ecc740390954382a804
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-05-05 12:04:15 +00:00
Oswald Buddenhagen
6d1ea28aa3 make linkerSupportsFlag() use gold linker if detected
subsequent tests should depend on the detected linker, obviously.

Change-Id: I09aa9f1f2ef789f0ae0829f9122211fc4e1ad518
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-04-23 19:16:46 +00:00
Oswald Buddenhagen
8f3b2f9f02 compilerSupportsFlag(): remove bogus .o suffix from test executables
this function does not just compile, but it also links, so the output
file should have no object file extension.

Change-Id: I65dd9bd334478545ceeabe9d1aacb44d9583cdd7
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-04-23 19:16:42 +00:00
Thiago Macieira
6668f5becf Implement a more direct headersclean check
Test each include file directly, instead of doing a large #include. This
verifies that each header is compilable on its own. One big advantage of
doing it via a special compiler in qmake is that we skip pre-compiled
headers, which has hidden build errors in the past.

This solution is implemented by making syncqt produce a second list of
headers.  This list is the same as the list of headers in the source
code to be installed, minus the headers that declare themselves to be
unclean, via the pragma:
  #pragma qt_sync_skip_header_check

This mechanism is applied only for public libraries (skipping
QtPlatformSupport, an internal_module).

This test is enabled only for -developer-builds of Qt because it
increases the compilation time.

On QtTest: the library only links to QtCore, but it has two headers that
provide inline-only functionality by including QtGui and QtWidgets
headers (namely, qtest_gui.h and qtest_widget.h). If those two modules
aren't getting compiled due to -no-gui or -no-widgets to configure, we
need to remove the respective headers from the list of headers to be
checked. If they are being built, then we need to make QtTest's build
wait for the headers to be generated and that happens when qmake is
first run inside the src/gui and src/widgets directories.

Change-Id: I57d64bd697a92367c8464c073a42e4d142a9a15f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-04-17 00:54:45 +00:00
Alex Richardson
f041757d7a Allow overriding ar binary in configure script by setting AR env var
Unlike all the QMAKE_* command variables it requires the arguments "cqs"
to be part of the variable. This means we need to append the arguments
for compatibility with autoconf.

Change-Id: I961e89d506612873ba1f9cbecff97c448e83a5a2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-04-07 19:35:13 +00:00
Oswald Buddenhagen
0cbb5fc817 don't print "progress bar" when stdout is no tty
Change-Id: I8da61d7f7d4fe4f68b266d248fda53acd10d4372
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-03-27 13:29:53 +00:00
Oswald Buddenhagen
10319b6646 don't suppress compiler output in verbose mode
Change-Id: Id628c117bd3f90f7988e6fe4f9c0b12d5ca287e7
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-03-27 13:29:50 +00:00
Oswald Buddenhagen
933c2db8ad suppress compiler output in compilerSupportsFlag()
that also covers linkerSupportsFlag(), which did it explicitly so far.

Task-number: QTBUG-45010
Change-Id: I2eb0bd5282fd2f24c9ab8041c3536a6115caa765
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-03-27 13:29:47 +00:00
Laszlo Agocs
d04c3d2079 eglfs: Pluginize RPi, iMX6 and Mali backends
eglfs does not depend on the device makespecs anymore when it comes to these device
integration backends (hooks). Instead, backends are autodetected by configure.

The name of the preferred plugin is still set in the device makespecs. This
is optional. When not set and there is more than one plugin present in the system,
the environment variable QT_QPA_EGLFS_INTEGRATION will have to be set at runtime.
In the absence of that, the order is undefined.

Change-Id: Ie1ced2c9aa1beff2adb13b4fdea7c499cb5a6aab
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
2015-03-05 09:51:16 +00:00
Pasi Petäjäjärvi
9d19753bfa Fix disabling libinput feature if libudev is not available
When using default configure value (auto) for libudev + libinput and
libudev is not available, disabling libinput failed and it is enabled
even it requires libudev to work.

Change-Id: Ia2ead66c5cebc8658f2c29445f5c81c9f8b30dc8
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-03-05 08:50:03 +00:00
Oswald Buddenhagen
2b5982aac8 Merge remote-tracking branch 'origin/5.4' into 5.5
Change-Id: I95b3a87c5068c6b8068b30a35655b4c2419e7f9e
2015-03-02 09:23:07 +01:00
Peter Seiderer
a59028d6e9 configure: add '-psql_config' option
Allow setting of pg_config path for cross compilation where pg_config is
not in the command search path (do the same as for mysql_config).
This is e.g. used for buildroot (see [1] for details).

[1] http://lists.busybox.net/pipermail/buildroot/2015-February/119714.html

Change-Id: I11d084496ffbb6f8bc350dbcf2971a5be8e3b346
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-02-25 19:12:07 +00:00
Eskil Abrahamsen Blomfeldt
71962474b8 Android: Don't include Qt D-Bus by default
Recently, a dependency on Qt D-Bus was added to
Qt Platform Support if Qt was configured to support it. Since
Qt defaults to checking for Qt D-Bus at run-time, the platform
plugin and thus all applications would depend on libQt5DBus.so.

Qt D-Bus really doesn't make much sense on Android, so we default
to disabling it instead on this particular platform. People
with use cases where this might be used can still configure Qt
to include support by passing -dbus to configure.

Note that this makes OS X and Linux builds consistent with
Windows builds, where Qt D-Bus was already disabled because
the dbus.h header was missing.

Change-Id: Id733ff00918c706bf1aa5a667299e7d578b4b0c1
Task-number: QTBUG-44581
Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-02-25 14:41:53 +00:00
Peter Korsgaard
53e2db74db configure: fix gold linker support detection
While the -fuse-ld=gold flag is related to linking, it is an argument to the
compiler driver to tell it what linker to execute, NOT an option to tell the
linker to behave differently.

So it shouldn't get prefixed with -Wl when passed though the compiler driver.

Change-Id: I2b50cb6d2bd8911aa9b305cd8e755d4dfe923041
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-02-25 13:55:44 +00:00
Frederik Gladhorn
34b14a8472 Merge remote-tracking branch 'origin/5.4' into 5.5
Conflicts:
	examples/xml/htmlinfo/simpleexample.html
	examples/xml/rsslisting/rsslisting.cpp
	qmake/generators/win32/msbuild_objectmodel.cpp
	src/3rdparty/harfbuzz-ng/src/hb-private.hh
	src/corelib/global/qlogging.cpp
	src/corelib/io/qstorageinfo_unix.cpp
	src/corelib/thread/qwaitcondition_unix.cpp
	src/gui/kernel/qguiapplication.cpp
	src/plugins/platforms/linuxfb/qlinuxfbintegration.cpp
	src/testlib/doc/src/qt-webpages.qdoc
	tests/auto/other/qaccessibility/tst_qaccessibility.cpp

Change-Id: Ib272ff0bc30a1a5d51275eb3cd2f201dc82c11ff
2015-02-24 21:02:08 +01:00
Oswald Buddenhagen
b6f0060f60 support spaces in build and install dirs
spaces in the source dir are not supported for now, as that requires
some more profound refactoring of the bootstrap makefiles.

Change-Id: Ie0c07a1558b8326f642f2ea144bc1cd85ee761af
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-02-17 18:28:00 +00:00