summaryrefslogtreecommitdiffstats
path: root/src/buildtools
Commit message (Collapse)AuthorAgeFilesLines
* Do not build webengine on iosMichal Klocek2020-02-211-1/+2
| | | | | Change-Id: I21391ef9f5ea9c93227c1a8a64bcd1e5a5e20ad4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Fix typo in error reporting for winMichal Klocek2020-02-121-1/+1
| | | | | Change-Id: I5097aa17617738b4db8c0fe7717b32be2a0efd8f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/wip/qtpdf' into 5.15Michael Brüning2020-01-278-28/+176
|\ | | | | | | | | | | | | Initial merge of QtPdf into QtWebEngine. Fixes: QTBUG-69519 Change-Id: I48dc25a59f2c161bb231bd0fa60392eb70fe4e7d
| * Add missing check when doing qpdf buildMichal Klocek2020-01-271-1/+1
| | | | | | | | | | | | | | We need this, since 5.15 branch adds webrtc check. Change-Id: I40b63bf38ed57562562305d34f9f5ce96dec31dd Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| * Do not share pdf features with webengine-coreMichal Klocek2020-01-273-42/+38
| | | | | | | | | | | | | | | | The pdfium build for qtwebengine should not use features set for qtpdf. Change-Id: Ibee97b774dda7e9157cadf28aa4a7a862bcba8ed Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| * Add fat lib build support on iosMichal Klocek2020-01-172-19/+32
| | | | | | | | | | | | | | | | | | Fat builds disable NEON for arm, therefore when doing release setting CONFIG-=simulator is preferable. Task-number: QTBUG-77931 Change-Id: I59c99f2a38dbc83d15940a691c17277175b5b935 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Add support for qtpdf ios buildsMichal Klocek2020-01-171-0/+64
| | | | | | | | | | | | | | | | | | | | Fix platform checks, add initial gn args, use shared library template for gn to get all the linker objects. This is just debug build. Task-number: QTBUG-77931 Change-Id: I9b3f7d3440aec66433ed19f4976e14506fba45dd Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Factor out qtpdf-support out of core-supportMichal Klocek2020-01-172-9/+40
| | | | | | | | | | | | | | | | Make static builds available for ios. Task-number: QTBUG-77931 Change-Id: Id122190f51f03f782fd0ee1c897e5b4ff891f703 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * FIXUP: fix broken rebase of configure.jsonMichal Klocek2020-01-171-23/+0
| | | | | | | | | | | | | | Remove duplicated features. Change-Id: I0dafd6ae0a5d545d2fed12044499d891c84f80bd Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Fix compilation on windowsMichal Klocek2020-01-171-1/+1
| | | | | | | | | | | | | | | | Since 5f9e2f01e we check for spellchecker on windows. Add missing build support check. Change-Id: Id53276f6e4e4260832c57181f05822fff274dd04 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
| * Add configurable v8/xfa support to qtpdfMichal Klocek2019-11-251-0/+34
| | | | | | | | | | | | | | | | | | | | | | Without v8/xfa support, compilation drops to ~650 files. Disable v8/xfa by default. Enabling v8 enables all xfa support. For example to enable full xfa support without xfa-tiff: qmake <src> -- --feature-pdf-v8 --no-feature-pdf-xfa-tiff Change-Id: I0525c22ed6ed84d5837ab9a238ef2c4219339895 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Add platform and architecture checks to configure for qtpdfMichal Klocek2019-11-251-1/+8
| | | | | | | | | | | | | | For now follow webengniecore requirements. Change-Id: I7260b593e6489f51970b1a4c9dc6cd92067a085c Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Add QtPdf and QtPdfWidgets modulesMichal Klocek2019-11-254-18/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change adds two new modules to qtwebengine repository. New modules do not depend on webengine module, however webengine chromium source code and Chromium "gn" configuration is required to build QtPdf. Adding two unrelated modules to webengine might look crazy: however sharing gn build configuration and Chromium code base with necessary qt adaptations simplifies code maintenance and minimises required code checkouts. Back porting of security patches for Chromium also affects Pdfium. Moreover, Pdfium is no longer a separate project, but integrated into Chromium: therefore moving it out of Chromium source tree would require extra effort. Rename webengine-core feature to build-qtwebengine-core, this makes consistent feature naming with build-qtpdf At the moment two new modules have integrated build, with possible shortcuts: qmake -- --no-build-qtwebengine-core qmake -- --no-build-qtpdf Webengine build is disabled by default now. Change-Id: Iac3d9927d51f3ac316db0148d275eda843dcc19b Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Fix the build with -no-guiLiang Qi2020-01-031-0/+1
| | | | | | | | | | | | Task-number: QTBUG-74602 Change-Id: I8ba358e03472e58c40363fede56e87dfd665ae83 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* | Enable Windows sandboxAllan Sandfeld Jensen2019-12-191-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable sandboxing on Windows. Enable heterogeneous sandbox symbol resolution and statically link the sandboxing code into the helper process. This means we have two copies of the sandboxing code, one statically linked in the executable and one in the shared library. Since they are not exported they don't conflict, but we need to take to initialize the right version in the helper process binary, and pass its sandbox interface to shared library using it. For sandbox debug output, we also need to initialize the second copy of the commandlineparser and logging system. Fixes: QTBUG-51170 Change-Id: I8f503c8d6b40674465f32772ef906817dad2b449 Reviewed-by: Kirill Burtsev <kirill.burtsev@qt.io>
* | Fix typo of gn parameter for clang-clYuhang Zhao2019-12-151-1/+1
| | | | | | | | | | | | | | | | | | When I try to compile Qt WebEngine through clang-cl + lld-link, gn complaints about the unknown parameter "use_ldd" and suggest to use "use_lld" instead. Change-Id: Id996699616db4eb0c67feaa29749a070465fc44c Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Re-enable X11 WebRTC support for desktop sharingAllan Sandfeld Jensen2019-11-221-0/+1
|/ | | | | | | | | With corresponding fixes in chromium, we should now again be able to support WebRTC desktop sharing with X11. Fixes: QTBUG-80055 Change-Id: If1ce50fe8e83d2c5086c6735d205bc4ca424746d Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
* Merge branch '5.13' into 5.14Allan Sandfeld Jensen2019-10-301-1/+1
|\ | | | | | | Change-Id: I6ab2e949cb2fa3b2db55a1654d42667db6257eab
* | Update minimum requirement for ICU version to 64Kirill Burtsev2019-10-231-2/+2
| | | | | | | | | | | | | | Set it according to V8_MINIMUM_ICU_VERSION define. Change-Id: If41bb7067570bfc825a214f92883bd0e0caca681 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Leave DCHECKs on when configured with -force-assertsJüri Valdmann2019-10-211-0/+2
| | | | | | | | | | Change-Id: I92d84285f7b5dcfe4178b2ed393f192c161c57c7 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Adaptations for Chromium 77Allan Sandfeld Jensen2019-10-112-2/+9
| | | | | | | | | | | | Fixes: QTBUG-77267 Change-Id: I181e24cf80ebee6991b95dde6c636f0d169b40a4 Reviewed-by: Peter Varga <pvarga@inf.u-szeged.hu>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Allan Sandfeld Jensen2019-09-241-3/+15
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: config.tests/glibc/glibc.cpp src/3rdparty src/core/configure.json src/core/profile_io_data_qt.cpp src/webengine/configure.json src/webenginewidgets/api/qwebenginepage.cpp tests/auto/widgets/qwebenginepage/BLACKLIST Change-Id: I3e1781048c3cb09bfbf7427dfc5dd1fec11a2b97
* | Make error messages great againv5.14.0-alpha1Michal Klocek2019-09-191-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | A configure system now knows all the possible errors when configuring webengine. Unfortunately topLevel build does not split messages per module, therefore make sure messages mention QtWebEngine. Task-number: QTBUG-75840 Task-number: QTBUG-76606 Change-Id: Ibadcd4bbc6a7b2199e4cefb3285419591b4338fe Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Clean up platform testsMichal Klocek2019-09-193-275/+145
| | | | | | | | | | | | | | | | | | | | | | | | | | Make it a private feature so test is not run twice. The better solution would be to split the platform test into separate tests in configure, but it looks like a lot of boring typing and would result in bunch on private features. Instead run test only on configure step and in case of fail just export the error, so it is reported during configure and make calls. Change-Id: Ice1188631a53fe739569de3e303533b18342941a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Clean up architecture support testMichal Klocek2019-09-192-14/+9
| | | | | | | | | | | | | | Make it a private feature so test is not run twice. Change-Id: I1dcea41edf5dbc6992e76991d92278a5a5c13e55 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | FIXUP: Fix top level build againMichal Klocek2019-09-192-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | When we are doing top level build QTWEBENGINE_ROOT/QTWEBENGINE_ROOT_OUT is not present at configure step, therefore add two ways of calling checkError, one for configure time and one for make call. Fix typo in submodule's condition. Add a poor man's workaround for this test. Change-Id: Ie95ab9ffe262a45c7e1ea49e4795d142b7df716a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Unify error reporting for configureMichal Klocek2019-09-192-48/+160
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Move last two tests (submodule and nowhitespace) to configure system and unify error reporting. Now all error messages come from one single place qtwebengine_checkErrors(). This function is used by configure system reporting and by make call. Remove duplicated strings. Add extra messages when module is not going to be built. Change-Id: Ib373facd58135325495aad52b6e600ec9a61f31f Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | FIXUP: Fix platforms check for topLevel buildMichal Klocek2019-09-192-2/+166
| | | | | | | | | | | | | | | | | | | | | | | | In case of a top level build configure.pri is not able to load platform.prf. Move platform.prf to platfrom.pri and use include instead. Fix not loaded qconfig.pri with gcc versions. Make sure there is no function name collision. Change-Id: I2c9994197dc56371fd7ef215ab350aebb89ff701 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* | Add pkg-config as a build requirementMichal Klocek2019-09-191-5/+14
| | | | | | | | | | | | | | | | | | | | In case pkg-config is not installed we got bogus warnings about missing qpa-xcb packages. Issue found on fresh ubuntu 19.04. Change-Id: I983c6de88060ed3d8dee15bb80f39b173fc81f65 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* | Rename option webengine-core to build-qtwebengine-coreMichal Klocek2019-09-191-4/+4
| | | | | | | | | | | | | | | | This change is extracted from qtpdf branch to keep following commits unchanged. Change-Id: I255976d45213d4cfe84243cae0b4eddb8eb1747a Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* | Move developer build option to toolsMichal Klocek2019-09-191-1/+8
| | | | | | | | | | Change-Id: Iffac4541f5675b0f048080f012b7b81b18885308 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* | Add visual studio check as build requirementMichal Klocek2019-09-171-2/+8
| | | | | | | | | | | | | | Task-number: QTBUG-75840 Task-number: QTBUG-76606 Change-Id: Ic1d6125a1a6685a74dbad2f6c3b16efce120e180 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add platform and architecture to configureMichal Klocek2019-09-171-1/+21
| | | | | | | | | | | | | | | | | | | | Make configure system aware of platform and architecture checks. Task-number: QTBUG-75840 Task-number: QTBUG-76606 Change-Id: I8d2c9dd863ee2c4a3015ad8147f43dc788cfd72d Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Lower requirement for glibc to 2.17Allan Sandfeld Jensen2019-09-091-3/+3
| | | | | | | | | | | | | | | | | | This was not correctly merged from 5.13 due to the check moving to another file. Task-number: QTBUG-77171 Change-Id: I4388ea9a58509c93574d7953eebb09a62b5ffd63 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Move gn configs out of coreMichal Klocek2019-09-075-0/+478
| | | | | | | | | | Change-Id: Ib047e35191faa627211c759bff4e81bfaec3d685 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Move main configure and move some tests from core to buildtoolsMichal Klocek2019-09-073-4/+720
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Processing configuration for gn when building qpdfcore module will require optional libraries resolved. Some libs are not needed, but this requires extra patching of gn build configs; so to keep things simple, just detect all the libs beforehand. Unfortunately using this for main configure goes bonkers. The issue here is that main configure resets features in global scope, which can break features coming from qtbase and results in bogus configurations in certain cases. Therefore move current configuration to buildtools and make everything else depend on this. Task-number: QTBUG-75840 Task-number: QTBUG-76606 Change-Id: Id87f5ba017541a2d5a2836510c6cabc5a19f92c6 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Add webengine-core featureMichal Klocek2019-09-072-2/+2
|/ | | | | | | | | | | | | | | | | | | | | | | | | Create/split main configure for submodules. Now configure system knows when webenginecore module is not going to be built and the user gets the feedback after the configure step with the message: The following modules are not being compiled in this configuration: webenginecore webengine webenginewidgets If a module is not built also features are not populated, therefore some tests have to be moved to main configuration. This improves error reporting and prepares landing for QtPdf modules. Remove configure.prf and fix issues after config split. Add makefile call to report errors. Now calling make also reports issues. Task-number: QTBUG-75840 Task-number: QTBUG-76606 Change-Id: I76944df4c5db6f4954c464e3741a8054cb10b40e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Support clang_cl builds on WindowsAllan Jensen2019-05-021-3/+7
| | | | | Change-Id: I1f3e8fc378cfceda92ff17fcc7669c0f5d97c3f7 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* Pass the path to the macOS SDK used by Qt to the gn build scriptMichael Brüning2019-03-011-0/+3
| | | | | | | | | | | | Uses the value in QMAKE_MAC_SDK_PATH that Qt also uses as an isysroot parameter. Updates Chromium: 3fe203d43c Soften check for single thread only if layer1 or layer2 sandbox 0aae24c287 Add isysroot parameter for macOS to build gn with the right toolchain Change-Id: I0315a054e066ec5743235347d7e96ac8b2c05c3b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Do not pass ar to gn, update ChromiumMichal Klocek2019-02-211-1/+1
| | | | | | | | | | | | | | | | qmake does not have cross specs archiver definition, so do not pass it. Updates Chromium: 29a45e8b7f Fix not working ar on windows c2a58ec0a9 Fix builds with no xrandr 76b0b85ab0 Disable download and print buttons in PDF viewer fa79a21c87 Fix extensions build for Windows on 71-based 6c56c89f1a Bypass CHECK for uninitialized resources when destroying plugin host Change-Id: I45eb7ab7fb3d9e8d9346559fdd7607bbac83675b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Use qmake toolchain for gnMichal Klocek2019-02-181-1/+4
| | | | | | | | | | | | | | | Pass cc,cxx,ld,ar to gn, so it can be also build with clang for example. Updates Chormium: * bb8520a5 Fix build with sanitizer and icecc * be3cf3ab Add command line parameters for cc,cxx,ld,ar in gn * 7056415f Fixup build with older system ICU * 2b94bfe4 BASELINE: Update Chromium to 71.0.3578.140 Change-Id: I4c1653cc9f21c72571ebe3d60eca4a444cd106d9 Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Adapt to new GN submoduleAllan Sandfeld Jensen2018-09-221-12/+8
| | | | | | Change-Id: I3980634a1029479ab944b2e03f12a02d0c77d0c1 Reviewed-by: Michal Klocek <michal.klocek@qt.io> Reviewed-by: Michael Brüning <michael.bruning@qt.io>
* Fine tune configure and clean up header includesMichal Klocek2018-06-122-5/+4
| | | | | | | | | | | | | | | | | | | | | | Previously configure was generating two config headers qtwebengine-config.h and qtwebengine-config_p.h, however those headers were never installed or included as dependency in Makefiles. Moreover, due to the name clash all features were included into qt_lib_webengine_*.pri which is QtWebEngine QML module. Move configure to core so all features belong now to qt_lib_webenginecore*.pri. Fix global includes to include qtwebenginecore-config*.h. Drop all DEFINES and use QT_CONFIG instead. Cleanup all evil looking includes in headers for webengine and webenginewidgets. Change-Id: Iddbc8bf4487d9a5f0c19a71a9569535083507756 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2018-01-181-7/+7
|\ | | | | | | Change-Id: I4aae316c9826d8ded09e673a01935dc07f13cd64
| * Fix qmake recursive callMichal Klocek2018-01-161-7/+7
| | | | | | | | | | | | | | | | | | Change order of parsing buildtools.pro to avoid missing toolchain generated files. Change-Id: I40456cbf38573903c119313d036e4c2aea039b16 Reviewed-by: Viktor Engelmann <viktor.engelmann@qt.io> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Add GN_HOST_TOOLCHAIN_EXTRA_CPPFLAGSMichal Klocek2017-11-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | Add a way to add pass extra compilation flags when using host toolchain. This is currently used by yocto to get correct lookup path for native headers. Task-number: QTBUG-63140 Change-Id: Ic8f3e394840635b2a0a26acf593888e1f79439f6 Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
* | Add 'webengine' prefix to configure features, tests, libraries, etcAlexandru Croitor2017-11-122-3/+3
| | | | | | | | | | | | | | | | This is done to make sure there are no conflicts with features in other modules, because they all share a global namespace. Change-Id: I95b3b7fadd8ffc2979ee3aad2234ee543d57c7d8 Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Change spellchecker-related private features into public onesAlexandru Croitor2017-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | This is done because qtConfig(spellchecker) is present in an example .pro file, and thus "spellchecker" should be a public feature. Change-Id: Idff977b8d0835b049c4c19dc42c1475d2c55c323 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Cleanup skipBuild codeMichal Klocek2017-09-192-8/+5
| | | | | | | | | | | | | | | | | | Move all skipBuild related checks to runConfigure() in configure.prf. Remove some unused functions. Move platform checks to separate prf file. Change-Id: Ia45c837c91c341ed1fbc2e32fc098329da989920 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Adaptations for Chromium 60Alexandru Croitor2017-09-111-0/+7
|/ | | | | | Change-Id: I536258e22c2ec143f2fd3f1cbda229e0611b6af4 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>