Commit Graph

551 Commits

Author SHA1 Message Date
Arvid Picciani
38f521b0bd native android support with eglfs
Enable eglfs build against any android > 4 tree,
linking to native libs without emulation layers,
running on top of surfaceflinger.
No GNUs where harmed in the process.

Yes, any android.
Tested on maguro, tf300, eeepc-x86
x86-64 compiles but broken elsewhere.

You don't need an Android.mk, but you must compile from within
a shell setup with androids "lunch" or an equivalent that set TOP and OUT.
Since we do callbacks to androids build system,
the same env restrictions apply (must use gnu bash, and gnumake 3.81)

Done-with: Samuel Roedal <samuel.rodal@digia.com>
Done-with: Robin Burchell <robin+qt@viroteck.net>
Done-with: Brian Avery <brian.avery@nokia.com>

Change-Id: Iec0178cdeadbeefc79e4fe6ef449d399ac8ca666
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2012-10-04 11:58:48 +02:00
Kai Koehne
abbecca7d4 Rename quick1_debug back to declarative_debug
The library name changed back from quick1 to declarative, so the
debug option should be renamed accordingly.

Change-Id: I192520a0a4de4764cf93da8cdbb14e24ba7de093
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-10-04 03:03:00 +02:00
Jason Barron
32b72283d0 Define QMAKE_EXTENSION_STATICLIB for MSVC mkspecs.
Change-Id: Ia652001f9be67b0c509495c054875ca1ef8fc049
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-10-03 09:08:27 +02:00
Peter Hartmann
291e1a9e67 QNX: change suffix for separate debug files
QNX uses .sym for files containing debug symbols.

Change-Id: Ieb995ae90af771ff5c877213f4f4982169f333c6
Patch-by: Greg Bentz
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
2012-10-01 10:34:24 +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
Romain Pokrzywka
84118ffa2c Fix accessing the rpath dir from included modules
The wrong variable was used when reading the module settings

Change-Id: If35dc9694240a68393b24d7dba72520108cb9ac3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-28 21:09:35 +02:00
Romain Pokrzywka
e4486e9fd0 Fix rpath dir in forwarding module .pri file
The module rpath should be the raw QT_INSTALL_LIBS, without the sysroot

Change-Id: I4140929b38a589134872593e4ce35eaf7d1cd5b7
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-28 21:09:35 +02:00
Stephen Kelly
ff70c020bc Make CMake tests significant on Windows.
All bugs in the testing scripts are now fixed.

Task-number: QTBUG-27087
Change-Id: I764257a9bbee7efeb9265449f6fa6a15bdeba883
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-09-27 15:46:18 +02:00
Stephen Kelly
f8ca79579f CMake: Fix the generated location of static libraries.
We need to make sure to put the .lib file into the LOCATION property,
not the .dll file, when building a static library.

Change-Id: I8912abfd172d0939cd07ba02901ab58093ccefa1
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-09-26 10:08:59 +02:00
Stephen Kelly
89d5f46dea CMake: Specify the prl files when building with mingw.
As was done in ae6d4c77eb, but that commit
missed the mingw branch.

Change-Id: I1d76ed2f8070dced2749aabe889fee48c4086744
Reviewed-by: Peter Kümmel <syntheticpp@gmx.net>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-09-26 10:08:59 +02:00
Jan Arve Saether
44a0e972a0 When trying to run cmake, don't show stderr output.
It looks like the qmake process failed if cmake is not installed.

Change-Id: I721796a602d8c572144e9d21be5d62b737698b73
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-09-24 18:01:14 +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
1f576cb6ab announce the android platform in the respective specs
Change-Id: I55c8d9fe4160c37eec6073894481e313e4dea191
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-21 02:44:22 +02:00
Oswald Buddenhagen
8a728b9a4a add missing maemo platform announcement to n9 spec
Change-Id: I24855dc3fdfcc19a81f7e030c9dfbbdddd2bb552
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-21 02:44:22 +02:00
Oswald Buddenhagen
773dd016c8 claim that mingw is a platform
it's mostly win32+gcc, but sometimes there are library differences, so it
makes sense to have an own platform flag for it.

Change-Id: I985f0dd39a47bfc16f10f4b4a9c168874ae2f20d
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-21 02:44:22 +02:00
Oswald Buddenhagen
fff5a8f9c9 make qmakespecs announce the compiler family
on the way to eliminate scoping based on the spec.

gcc and msvc go as such into CONFIG, the other ones get the vendor
prefixed, as most are mostly unknown and thus likely to clash with
users' flags.

Change-Id: Ie622f53d90e96dbf05ce7d8c638cd355f04fa20c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-21 02:44:22 +02:00
Oswald Buddenhagen
098b817a97 don't set MODULE_BASE_OUTDIR unconditionally
webkit actually tries to set it, and after the syncqt invocation changes
we were breaking it.

Change-Id: I1ec740b7e96c972ca173f384529dde1fc7e7cc13
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-21 02:44:22 +02:00
Oswald Buddenhagen
5ad378859a move syncqt call to qt_module_headers.prf
for one, the syncqt invocation is qt module magic and thus simply does
not belong into the generic default_pre file.
second, this way the forwarding header generation is now linked to the
rest of the build magic for a particular module, which is way less
confusing for the unsuspecting developer.

Change-Id: Idc8e420d3faf173d7fff4a41e6e1c59af15c3023
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-21 02:44:22 +02:00
Oswald Buddenhagen
514cdee46f make 'make check' work with non-installed prefix builds
add the appropriate environment to the command lines

Change-Id: Ic9d3c60255be88f431213acd8c5e0ff55e014f5b
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-19 19:54:44 +02:00
Oswald Buddenhagen
aad3410864 factor out qtAddTargetEnv()
Change-Id: Ib0517da54da98de4b1f2ee7d80bee22316231091
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-19 19:54:44 +02:00
Oswald Buddenhagen
4ac264117a remove pointless conditionals+branches
the surrounding TEMPLATE == vc* scope already implies vcproj, as dsp is
not supported any more.

Change-Id: I68363aca62e21135f42572040ccc7b189dcf32c8
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-19 19:54:44 +02:00
Oswald Buddenhagen
523c90810d don't make the outputs depend on $$QMAKE_DUMPCPP
the variable can contain a complex command which would make a mess of
the makefile.
also, the tool doesn't change all that often, so it's not particularly
useful to depend on the binary.

Change-Id: I965d6555cb22bd6d5306b324f5cad0d747128e99
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-19 19:54:44 +02:00
Oswald Buddenhagen
d0ba4f5386 remove now unnecessary indirections
qmake's new parser can deal with this much more readable code.

Change-Id: I772c9da4c9d049e2b332305f41496ed1196f60eb
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-09-19 19:54:44 +02:00
Yuchen Deng
2084b48a79 Build tools in release mode if using -debug-and-release option
Change-Id: I1d4b69e6954526b4f999e248f4f2cde6a9da26cd
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-09-18 07:45:12 +02:00
Oswald Buddenhagen
321687f03b factor out qtAddToolEnv()
so it's available for other users as well

Change-Id: I2d5a14ae427575c07321ac532b13ee03308b837f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-18 00:59:08 +02:00
Oswald Buddenhagen
fb8a6297f4 remove 3rd parameter from qtPrepareTool()
it's been superseded by the QTTOOL.* module stuff.

Change-Id: I01c9fc3ebbb22111bfb03f82693c7cf08b5fc9d4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-18 00:59:08 +02:00
John Peterson
8ca1c93a15 define QT_OPEN_LARGEFILE
it must be defined, even if zero

Task-number: QTBUG-27232
Change-Id: I950ef61ede197af9c2d8aedddd712cc6d4cc745b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-18 00:59:08 +02:00
Laszlo Papp
817a447467 Fix the comment for the maemo mkspecs since it does not work for fremantle
See the bug QTBUG-18361 for details.

Change-Id: Idbe2043c07cca795e8e2fca8204993dfb0a11988
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-14 15:23:15 +02:00
Laszlo Papp
940a4d0318 Rename the N9 device mkspecs folder to match the *-maemo* regex
Change-Id: I0c7b74d67f44d776a74671d38bbc0f2424974c2c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@kdab.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
2012-09-14 15:23:15 +02:00
Joerg Bornemann
26b6cce44b remove usage of QT_MAKEDLL in favor of the new QT_STATIC macro
Change-Id: I411cab0d92a8cad6b4f3676afe5cee050c4b789b
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-14 15:23:15 +02:00
Thiago Macieira
d4170585f0 Remove support for Intel C++ 7.1 and 8.0
Those compilers are old and untested. Qt is only tested with ICC 12.1
and 13.0.

Change-Id: I3a5fa9452de27a61ee087700cc054a76fe4160ee
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-14 15:23:15 +02:00
Stephen Kelly
edc652db10 Qt 5 API should correspond to Qt 4.8 on Windows, not 4.9.
Change-Id: I052e76b4dcf0765d142567f748022d652072075c
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-13 19:33:08 +02:00
Yuchen Deng
ae3d0027df Add QMAKE_CXXFLAGS_CXX11 & QMAKE_LFLAGS_CXX11 flags of win32-g++
Change-Id: I752c37b581af6d5ea171ec99ef0afe29ffa78002
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-13 16:47:49 +02:00
Ian Dean
9146666c6f Update iOS 'clang' mkspec for Xcode 4.5
Change-Id: If472bd60fa8ddc9d3af394a904a52290a1c308b6
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2012-09-11 12:09:47 +02:00
Ian Dean
427cfaaa49 Removed some unused #defines from iOS qplatformdefs.h
Removed QT_GUI_DRAG_DISTANCE & QT_GUI_DOUBLE_CLICK_DISTANCE from the
iOS qplatformdefs.h header as these values are dependant on display
pitch and should be calculated by the platform plugin.

Change-Id: I00c377483ad73cad19a2fe729cb3f45e9271e3ac
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
2012-09-11 12:09:47 +02:00
Oswald Buddenhagen
b071ea317c move syncqt -check-includes handling to default_pre.prf
this is where the syncqt calls for all modules happen

Change-Id: I544e5fa6950c2babe56d78f5543d2c3262016687
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-11 09:35:28 +02:00
Joerg Bornemann
ed7594db5d remove left-overs of the borland compiler support
Task-number: QTBUG-27184

Change-Id: Iae974c919871753500ca7e5cebdd5ef41fdd7a8a
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-11 00:12:57 +02:00
Thiago Macieira
bc420e87e6 Make the default Qt API be Qt 5.0's
This means user applications will default to Qt 5.0's API. Higher
versions or Qt 4 compatibility are opt-in.

Also set the default for Qt's own build to be 5.0 on all platforms
except Windows. On Windows, we need to set it to 4.9.

Task-number: QTBUG-25053
Change-Id: I603e0fda4785e64e1413cd82153a89e48005aa40
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2012-09-08 14:57:59 +02:00
Oswald Buddenhagen
6a3a234742 centralize initialization of CONFIG in mkspecs
"CONFIG += qt warn_on release link_prl" is in every single spec (though
for link_prl there is one genuine exception and two apparent omissions).

Change-Id: I72e1e315586af828eefa3b0b70998ab892ec3c1a
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:20 +02:00
Oswald Buddenhagen
809bc47fad centralize initialization of QT in specs
there is no reason whatsoever to duplicate this so many times, and even
less reason to have specs with a deviating default.

Change-Id: Ia25836c079580adebc373697b8bd03598f79c69b
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:16 +02:00
Oswald Buddenhagen
cd9599792e remove useless TEMPLATE assignments from specs
"app" is the built-in default anyway

Change-Id: I4f581ee5b81aee08860dbdda5d863943bceafb1b
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:12 +02:00
Oswald Buddenhagen
204176483c adjust specs to the new target mode handling
not strictly necessary, but nicer.

QMAKE_PLATFORM (and thus CONFIG) now also contains the name of the OS, and
its family (if applicable, e.g., bsd). this also adds more feature search
paths.

Change-Id: I3ab971e6e3b2b32cae53b95e4bc67a86688bc5cb
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:09 +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
Oswald Buddenhagen
590ac22ed6 de-duplicate MODULE_DEPENDS
in modules which conditionally add dependencies it is hard to keep $$QT
free of duplicates at definition time, so clean it up when we use it.

Change-Id: Ia711e23bec3683525dfca80df4834e20b007ba1f
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-07 23:35:26 +02:00
Oswald Buddenhagen
2e10b38c6a use each module's lib_bundle setting
... instead of relying on the global qt_framework flag.

Change-Id: Ie23f55788c26d732ada87aab7284c0a1fe0bfa28
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-07 23:35:20 +02:00
Oswald Buddenhagen
3bd2c690f4 generalize environment additions to tool invocation
foo.name = VAR
foo.value = baz bar
foo.CONFIG = prepend
QT_TOOL_ENV += foo

will add the respective environment assignment to the generated command
line.
if value is a list, the elements are joined with the shell's path list
separator.
the value must be in the final form (correct path separators and
shell-escaped).
if .CONFIG prepend is set, the generated command will prepend the
new value to a pre-existing one.

Change-Id: I62c6dfb3ec50ce73d3a85a2099275f92b57a52dc
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-07 23:35:14 +02:00
Oswald Buddenhagen
731e6bece5 cache the right variable
binary+depends is outdated; it's just command now

Change-Id: Ic4617d760585e53a485920e843627d3f9707d6a9
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-07 23:35:08 +02:00
Kai Koehne
1da928abba Remove declarative_debug feature (qmake)
declarative_debug got superseded by qml_debug and quick1_debug.

Change-Id: Id4c593d86a011223d2a735fb2a8c25e4ec70f53e
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
2012-09-07 11:40:08 +02:00
Sean Harmer
219ba05b2a QNX: Move qpa-based mkspecs out of the unsupported directory
RIM is committed to supporting Qt on its platforms and the port works
well.

Change-Id: Id6bfea2dbc178800adad89d436ce31c40d3eb652
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-09-04 18:17:23 +02:00
Morten Sorvig
53d0829aa1 Fix indentation.
Change-Id: I0e53df9e1903c8cdc79d50c16cfe7f90ae6e1d6f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-04 10:30:33 +02:00