summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* CMake: pro2cmake.py: Better mapping of complex conditionsTobias Hunger2019-02-111-5/+5
| | | | | | | | | | | | .pro-files support things like contains(Foo, bar), etc. Map that in such a way that only one identifier will be visible to CMake to unconfuse the logic handling on that side. These conditions will need manual fixup later! Change-Id: Id4946e694a9adccf9f54bcce26a6c227cd921007 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake.py: Remove some dead codeTobias Hunger2019-02-111-15/+0
| | | | | Change-Id: I8e3e7e4c4ef9747e0749734bdf875baccc4646bd Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
* CMake: pro2cmake.py: Remove leading ./ in pathsTobias Hunger2019-02-111-1/+3
| | | | | | | | Remove leading './' from paths before writing them into CMakeLists.txt. Change-Id: I5680a3470cf491a8805b559197f94f8e6a6ce9b7 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake: Fix handling of chained scopes with else branchesTobias Hunger2019-02-111-1/+28
| | | | | | | | | | | | | | | | Fix handling of things like: foo:bar:buz: { do something } else: wat { do something else } The else relates to foo AND bar AND buz, not just to buz in this case. Change-Id: I40d1fa295b4d6dd95ae5e1ce2d58372edc807b86 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: Map dlopen feature to 'ON'Tobias Hunger2019-02-112-1/+3
| | | | | | | | | | | | Map the dlopen feature to 'ON'. The effect is that cmake will figure out whether or not linking to 'dl' is necessary or not. The user-visible feature is 'library' anyway: That enables dynamic library loading -- and will link in 'dl' as needed. Change-Id: I0d68275a7234efba7f926150f120bb37b4a1163f Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake.py: Add XCB and X11 librariesTobias Hunger2019-02-111-2/+22
| | | | | | | | Add all the XCB and X11 libraries needed for the XCB plugin. Change-Id: I772b99c68521cd46cbba736912c8d8594d9d2ad8 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* Fix xcb platform linking when compiling the nativepainting codeAlbert Astals Cid2019-02-111-4/+6
| | | | | Change-Id: I9bc435d27bf4abf1ff4cbfebb981ab701a5d17ec Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* Fix xlib compile testAlbert Astals Cid2019-02-111-1/+3
| | | | | Change-Id: Ib7d58484ef2bd0f38d3954940e7e527b4f848c4b Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* Add devicediscovery and fbconvenienceAlbert Astals Cid2019-02-113-0/+57
| | | | | | | Generated by pro2cmake.py Change-Id: I405430c622824aab9a7bf6839b2271a494856c24 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* Allow passing libraries to qt_config_compile_testAlbert Astals Cid2019-02-112-4/+17
| | | | | | | | Fixes cxx11_future and ipc_posix tests Change-Id: I0f3a7b1a0452724c07198a87c2fc25344e7451eb Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: Make sure moc/rcc/uic are built when neededAlbert Astals Cid2019-02-072-0/+5
| | | | | | | | | | | | | This way you can run cmake, go directly into src/widgets and it will build moc and rcc before QtCore (because they are needed there) and uic before QtWidgets but not before QtCore because it's not used there. Without this it would get stuck creating the mocs since cmake is not expecting the moc executable to just not be there Change-Id: Ibcb6057bfab7a4bf823544e8f7bd128ea93d1986 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: Build src/plugins/imageformatsAlbert Astals Cid2019-02-015-0/+60
| | | | | | Change-Id: I4bf09c50eebf71255590e9b17e637ce621d3cd40 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: Fix build of xcb platform plugin when vulkan is availableAlbert Astals Cid2019-02-013-1/+21
| | | | | Change-Id: I79760aa0cb08752cfc20aabc1a890f60c91c9dfd Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: Only use the doubleconversion cmake config if "valid"Albert Astals Cid2019-02-011-1/+3
| | | | | | | | | And by "valid" i mean if it returns the double-conversion::double-conversion target that we are going to use later. Fedora rawhide has a doubleconversion cmake config file but it doesn't define any target Change-Id: Ib0360bc9fdf593a14510c9a2d59b47b32bc4b356 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: glib changed name to glib2Albert Astals Cid2019-02-013-6/+6
| | | | | Change-Id: I4a86bd3b01e1fe307e9802182df943245a7fce4c Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* CMake: pro2cmake.py: Small fix to type markupTobias Hunger2019-01-311-1/+1
| | | | | Change-Id: I2f7dc94f379d51c3816649849aa7365b17334ab5 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake.py: Add scope debugging supportTobias Hunger2019-01-311-0/+8
| | | | | | | | Dump scope trees for all scopes that contain a variable 'PRO2CMAKE_SCOPE_DEBUG' (set to any value). Change-Id: If17bb1697a32ccaa427a858c2330ab2b019d0fa8 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake.py: Assign a unique id to each scopeTobias Hunger2019-01-311-2/+7
| | | | | | | This makes scopes much simpler to destinguish from each other. Change-Id: I1af42f181b5899aba749bcf9267a345385149f90 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake.py: report total condition when dumping a scopeTobias Hunger2019-01-311-0/+2
| | | | | | | Show the total_condition (if set) when dumping a scope. Change-Id: I9dfe98c2251f1d28881771042f17d723cedc8907 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake.py: Add a way to debug merges of scopesTobias Hunger2019-01-311-2/+20
| | | | | | | | Generate debug output whenever a qmake scope with a variable 'PRO2CMAKE_MERGE_DEBUG' is involved in a scope merge. Change-Id: I0ad94b881db9930de689c199adbac084efe6c03b Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: pro2cmake.py: Handle more librariesTobias Hunger2019-01-311-1/+9
| | | | | Change-Id: I561b619c4dbc56a1f6ad383a68ce4b82858a031c Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* CMake: Introduce QT_HAS_NAMESPACETobias Hunger2019-01-311-0/+5
| | | | | | | This makes testing for Qt with namespace builds easier in extend_target. Change-Id: I58ab985a2ed39859fb65d35f8f69065fed2a5c9b Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: Add FindZSTD.cmake and wire it up in configurejson2cmake.pyTobias Hunger2019-01-312-0/+50
| | | | | | | Zstd is used in the dev branch, so prepare for it. Change-Id: I130d98e3888a1eb4c7444728fc5088c5dae9d911 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: Use FindGLIB2 from cmake-extra-modulesTobias Hunger2019-01-314-5/+104
| | | | | | | Use FindGLIB2 from cmake-extra-modules over hand-rolled own version. Change-Id: I1f8e055bc12dd728c033fd88480690643d90159a Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* CMake: Add debugging support for extend_target(...) callsTobias Hunger2019-01-311-0/+9
| | | | | | | | Enable a flag so that cmake documents which extend_target calls it acts upon and which ones are skipped. Change-Id: I1e2d4da47b93d6b5d7b7ec25b7bc6341f38b3dca Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
* CMake: pro2cmake.py: Pass QMAKE_MOC_OPTIONS on to CMakeTobias Hunger2019-01-312-1/+13
| | | | | Change-Id: I39c1b0aedbffaa29a34253e0c1c4bb4a4dddbe98 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
* CMake: pro2cmake.py: Convert more settings from .pro-file to CMakeTobias Hunger2019-01-312-3/+31
| | | | | | | Convert QMAKE_USE, QMAKE_CXX_FLAGS and QMAKE_LFLAGS into CMake. Change-Id: I53a5b91664b6ab71892d4381c00f8d744d7d7abd Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
* cmake: Enable qdbusinterface testAlbert Astals Cid2019-01-314-31/+31
| | | | | | Change-Id: Ia25911216790abdf463306cdb2e9aecb7dcd276e Reviewed-by: Mikhail Svetkin <mikhail.svetkin@qt.io> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Add qabstractitemmodeltester back to the buildAlbert Astals Cid2019-01-312-3/+3
| | | | | | Change-Id: I75dcfaa692465d1a96b92c81111187c4b3aeed6b Reviewed-by: Mikhail Svetkin <mikhail.svetkin@qt.io> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: Add fixme mentioning we need a newer cmakeAlbert Astals Cid2019-01-311-1/+1
| | | | | Change-Id: Ie2227e1c5d8357b979436bd5997b1458bf9efef9 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* CMake: Find common frameworks on apple in one placeTobias Hunger2019-01-311-0/+14
| | | | | Change-Id: I38bc631568b438970465a7616464e2b998a74607 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: Use propertiesTobias Hunger2019-01-312-71/+85
| | | | | | | Make use of @property to make code a bit nicer. Change-Id: Iff0bfed57874cf13b7e5f85acde2660a397933d7 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake: default QT_FEATURE_system_* to "ON"Tobias Hunger2019-01-311-1/+6
| | | | | | | | | Qt 6 will use external libraries for everything, so default all QT_FEATURE_system_foo to "ON". Change-Id: I884a4293c64487271be08de5fab82e6858d0a2ed Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: Merge more scopesTobias Hunger2019-01-312-40/+328
| | | | | | | | | | | * Remove scopes with condition 'OFF' * Merge scopes with identical conditions This e.g. merges children with a condition that simplifies to 'ON' with their parent scope. Change-Id: Ieb3d60e1234f189ac45869853555ca8c0cfb5c76 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: configure2cmake.py: Handle Libproxy and corewlanTobias Hunger2019-01-301-1/+2
| | | | | | | Update to cover more libraries Change-Id: I32a26b0fa0a79531fcb55e7a4646a2e63fec1d5b Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* cmake: test: Enable the build of qdbusabstractinterfaceAlbert Astals Cid2019-01-305-23/+34
| | | | | | | | | | | Since the code wants pinger_interface.h as include name and the qt_create_qdbusxml2cpp_command function was using the filename as source for the next filename i introduced a new option DBUS_ADAPTOR_BASENAME/DBUS_INTERFACE_BASENAME to set the name of the resulting file Change-Id: I582d578b68275e4530e91a88631ae43fd1ae06fd Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: test: Fix qdbusabstractadaptorAlbert Astals Cid2019-01-304-16/+11
| | | | | Change-Id: Ibe3e64bd68df1f1f46308f6f622822cb9caa99e5 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: test: Enable qdbusxmlparserAlbert Astals Cid2019-01-301-4/+3
| | | | | Change-Id: Ieb3640a00b6f00fcbef5d42fee028b1edca12782 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* test: fix if to depend on QT_FEATURE_style_fusionAlbert Astals Cid2019-01-301-1/+1
| | | | | Change-Id: I3a7eadea8133af9853caf0c059c610de6e267af9 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* Change the FIXME for selftests/aliveAlbert Astals Cid2019-01-302-2/+3
| | | | | | | | It isn't being built in the current qmake build either (maybe because it doesn't build because uses sleep()) Change-Id: Ie97287c6e45d1fcc32063bd9eb37ff2907dfa891 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* cmake: Silence CMP0083 warnings until we can depend on cmake 3.14Albert Astals Cid2019-01-301-0/+2
| | | | | Change-Id: Idbbe325bf088a68f875ab0e7b2eeb30badf864a7 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* cmake: Add trivial FindLibproxy.cmakeAlbert Astals Cid2019-01-293-4/+7
| | | | | | | And fix link to it Change-Id: Ie4f29a35a83d19ab83933faf3bcd7d62cffa68b8 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: fix build for QtNetwork on macOSLiang Qi2019-01-291-0/+7
| | | | | Change-Id: I32e4550d67e9d72b56de4aafaddec5e2f80792b8 Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
* CMake: pro2cmake.py: Better printing of scopesTobias Hunger2019-01-291-9/+8
| | | | | Change-Id: Ibeb77a23c90d3a47c78d17c4683e4af3c64449fc Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: Simplify conditionsTobias Hunger2019-01-293-8/+314
| | | | | | | | | Use pysym to simplify conditions in extend_target. Do some manual changes to the condition based on domain knowledge. Change-Id: I7fbb9ebc93b620a483c6a3a796d84c9bc0e36ef7 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: More mappings!Tobias Hunger2019-01-291-0/+7
| | | | | | | Add some more mappings from qmake to CMake equivalents conditions. Change-Id: I57b7bea9d6628e1c2b8d6ae88f799219942b571e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: Work on mapping of conditions to cmakeTobias Hunger2019-01-291-0/+8
| | | | | | | | | | | | Make sure complex things in qmake (e.g. function calls, etc.) are mapped better to cmake. When there is no way to properly map the qmake construct, then make sure to map everything into one identifier. This is to keep the structure of the condition simple. Change-Id: I6d88e0cb85fce1041bbfdc96604dab7bd4e65856 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: Resolve file names for RESOURCESTobias Hunger2019-01-291-1/+1
| | | | | Change-Id: I821cdc88c7f45260997e118ab2abfd7ba6526b75 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: Fix handling of complex else branchesTobias Hunger2019-01-291-2/+3
| | | | | | | | | | | Return the current scope's condition, not the total condition from recursive_evaluate_scope. That is the part the "else" referrs to. The parent_condition stays identical for all branches, so that should not get negated. Change-Id: I0da91483d4d748d01a29ac16890d709d8d659843 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* CMake: pro2cmake.py: merge extend_targets with identical conditionsTobias Hunger2019-01-291-14/+62
| | | | | | | | This should somewhat simplify the generated CMakeLists.txt files, especially in complex cases like corelib or network. Change-Id: I208c8f99a64cbb6c97d51dd3ae428bb234982202 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>