summaryrefslogtreecommitdiffstats
path: root/tools/qmake
Commit message (Collapse)AuthorAgeFilesLines
* Split QMAKE_FRAMEWORKPATH in case there are multiple paths.Zeno Albisser2014-09-051-1/+1
| | | | | Change-Id: If391781604861961387019ea15e9c29b6a1e3e1a Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* [Win64] Do not skip 64 bit builds on Windows.Michael BrĂ¼ning2014-09-051-11/+2
| | | | | | | | Chromium has enabled this in the 37 based branch and it worked with Qt WebEngine as well. Change-Id: Idb1f9a2133be645cd044c9f0163cc87f6ae8e474 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* [Win64] Make sure ninja is built in 64bit mode as well.Zeno Albisser2014-08-261-1/+5
| | | | | | Change-Id: If1665b5bb7a6db07ca737aa00d0ddba964e418aa Reviewed-by: Michael Bruning <michael.bruning@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Enable 64 bit builds on Windows.Michael BrĂ¼ning2014-08-261-0/+5
| | | | | | | | Ninja needs to have an _x64 appended to the configuration in order to build the 64 bit targets on Windows, as opposed to Linux and OS X. Change-Id: Idc9888c9f80ccb27d26fb86588ed39fba92a2c71 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Disable the Windows build on 64bit or non-angle configured QtJocelyn Turcotte2014-08-221-0/+4
| | | | | | | | Those configurations should be re-enabled once we support them properly. Change-Id: Id8019df8e0b34a2fb1a411780689f28def50546f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
* Disable the build on XCode < 5Jocelyn Turcotte2014-08-191-0/+2
| | | | | | | | | | | | Chromium itself requires XCode 5 to build and would require a few modifications to build with the version of libc++ that ships with XCode 4. Disable the build on that environment to at least get passed the Qt5 CI. Change-Id: I296055ac1880a9e09e2c0e8343058ff5add837c0 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com>
* Disable QtWebEngine if Qt is configured with -staticJocelyn Turcotte2014-08-181-0/+1
| | | | | | | We currently don't support this configuration. Change-Id: Ibd6ad9e1ffc993a2224fb814109467bd7b65f0fc Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Fix the build on windows when qtwebengine.chromiumsrcdir isn't setJocelyn Turcotte2014-08-141-5/+8
| | | | | | | | | | | | | | | qtwe_chromium_obj_dir wasn't falling back to src/3rdparty if the config couldn't be found in git. Move the fallback logic to a getChromiumSrcDir qmake function, and use it in both places. The build system will now also print that the Chromium sources will follow the git config if found instead of the other way around, since this should now be the normal case as part of Qt5. Change-Id: I5ab972ab53156c1bd033518e2eb51013559491ac Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Opt-out of the build on platforms where we won't build successfullyJocelyn Turcotte2014-08-121-0/+5
| | | | | | | | | | | To allow the qt5.git integration, allow the build to succeed if the repository is checked out on a platform that we don't maintain. This is the initial list of platforms that we want the integration to succeed and we can add new ones once we start maintaining them. Change-Id: Idce2a84eb8d5b1ef7f14d399fe013f666b479108 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Define mac_sdk_min and mac_deployment_target instead of mac_sdk_pathAndras Becsi2014-06-041-0/+3
| | | | | | | | | | With Qt 5.3 mac_sdk_path ends up being empty, so make sure to set the proper flags for chromium to pick the right sdk. Also add clang_use_chrome_plugins=0 so we can remove it as well from the Mac-Use-libc-instead-of-stdlibc patch. Change-Id: Ia132f079f905761644ad26c728f7116f538ea62d Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Also moc cpp files in gyp integrationPierre Rossi2014-05-221-5/+6
| | | | | | | | We had the logic in place to detect mocable cpp files all along, but only used it for headers. Change-Id: I00ea4e3ba081c5c7d37fe35ec78233e4961481e3 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Add SurfaceFactoryQt and OzonePlatformEglfs.Zeno Albisser2014-03-311-5/+6
| | | | | | | | | | | | | | | | | | | SurfaceFactoryQt::loadEGLGLES2Bindings is needed to find and load EGL and GLES2 libraries on embedded linux. It also provides a function to query the native display. We are using qmake variables at compile time to detect where we should look for the libraries at runtime. For EGLFS we query the native display through PlatformNativeInterface. If the resource is not exposed by Qt (pre 5.4), then we assume EGL_DEFAULT_DISPLAY, which is the right parameter for close to 100% of the cases anyway. OzonePlatformEglfs is just boiler plate code. Change-Id: I3ad08a56c50d6160be653ffb168b3f1f791e5245 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Do not use the system ninjaJocelyn Turcotte2014-03-071-14/+7
| | | | | | | | | | | | | | Always bootstrap and use the bundled ninja to avoid incompatibilities between our bundled gyp and the system ninja, which might be quite old. This patch also removes the ninja location caching, as updating the cache would trigger a re-run of qmake and gyp on all the project, while the benefit of using the cache in this case are low. Change-Id: I843cbe20e1153caecbda00ab3d45a34d560b2423 Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Zoltan Arvai <zarvai@inf.u-szeged.hu>
* Fix debug_and_release buildsJocelyn Turcotte2014-03-071-2/+0
| | | | | | | | | | | | | | | This makes sure that gyp_run.pro follows the same behavior as core_module.pro and that ninja is run for each config, in the appropriate directory. A special .NOTPARALLEL make fake target is added to avoid running ninja for both configurations in parallel (this would cause build failures). This target will be ignored by nmake, but might cause issues if trying to build with jom. Change-Id: Ibaa5f6aa4972cb24c83cc7a63e496938a5c16a3f Reviewed-by: Zoltan Arvai <zarvai@inf.u-szeged.hu> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use the shadow build directory for the ninja outputJocelyn Turcotte2014-03-071-5/+0
| | | | | | | | | | | | The gyp/ninja build is moved from out/(Debug|Release) to src/core/(Debug|Release). The ninja build as well as generated gyp files and python intermediate files all stay in the source tree for the moment. Change-Id: I6948380c45896540fe508238ceef9fe48e41f5af Reviewed-by: Zoltan Arvai <zarvai@inf.u-szeged.hu> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Do not pass linking information from qmake to gyp and to qmake againJocelyn Turcotte2014-03-071-33/+0
| | | | | | | | | | | | | Instead make sure that the QT and QT_PRIVATE variables are identical in both core_gyp_generator.pro and core_module.pro, the former for compilation and the later for linking. This allows working around issues of qmake when handling -l switches in libs. Some features on Windows append version numbers, while this is not done when linking to Qt libraries via the QT variable. Change-Id: I04b58a313335daeffc9510471553517c63908852 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Do not disable RTTI for module librariesJocelyn Turcotte2014-02-211-5/+0
| | | | | | | | | | This would prevent QWebEnginePage to be subclassed in applications built with RTTI enabled. We don't need this anymore since all classes inherited from exported core classes are pure virtual and completely defined in their header. Change-Id: I4ce19f893626e9bcb5cd4b11b7264e43ddcbac31 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix the Mac build with a -no-framework QtJocelyn Turcotte2014-02-201-1/+1
| | | | | | | | | | If QMAKE_FRAMEWORKPATH is empty, this would add an empty entry to the list and would end up with a -F with no argument added to the clang command line. This would fail the build since the next switch would be eaten by the -F. Change-Id: I42657e781278fd56d6664a42fb4222eb83b3cd73 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Fix Qt5WebEngineCore linking on WindowsZoltan Arvai2014-02-111-2/+0
| | | | | | | | | | BUILDING_CHROMIUM define have to be moved to the related project in core from default_pre.prf. Otherwise dllexport would be used instead of dllimport while linking to webengine and webenginewidgets. Change-Id: Ifed117f420591dcb7f97f12924b83ab86ead6216 Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix the embedded buildAndras Becsi2014-02-051-1/+3
| | | | | | | | | | Adopt to toolchain changes and fix the build with the current snapshot. This patch adds some missing overrides and build system configurations. Change-Id: I488929500347bdb5a077ac14e9553cedfcaa605d Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Fix the build on embedded platformsAndras Becsi2014-01-281-9/+0
| | | | | | | | | | | | | | | We should not include chromium headers outside of core since they might depend on defines or other build options only set in the gyp/ninja environment. This patch removes the need to include net/base/net_errors.h in the API implementation of the QQuickWebEngineView and also removes the chromium source directory from the global include path. This prevents including chromium headers outside of core by mistake and also makes it possible to load the project in QtCreator without disabling indexing. Change-Id: Icd13b6caa52509ef2a1b6b44eaffb34d8ae4addf Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
* Support absolute path in chromiumsrcdirArvid Nilsson2014-01-272-3/+3
| | | | | | | | | | Use the second parameter of $$absolute_path to resolve the git config value qtwebengine.chromiumsrcdir, in case it's already absolute. Change-Id: I68caf5c2f208d3caae69c1f6f361c916ce3f3d93 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix findMocables on WindowsZoltan Arvai2014-01-221-1/+1
| | | | | | | | | | Replace doesn't matches anything with QMAKE_DIR_SEP, that is backslash on Windows, because absolute_path and _PRO_FILE_PWD_ returns forward slashes. Change-Id: Ieba1684782d565885f4069f408cfb129476e301d Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Fix Qt's moc path on WindowsZoltan Arvai2014-01-221-1/+1
| | | | | | | | | Backslash from mocCmdBase is processed as an escape sequence in generated gyp file. E.g. Qt5\bin\moc.exe turns to Qt5[BS]in\moc.exe. Change-Id: I09a04b0e168e1139720c44307f192f7a9368ad43 Reviewed-by: Michael Bruning <michael.bruning@digia.com>
* Mac: Add QMAKE_FRAMEWORKPATH to compiler command line as well.Zeno Albisser2014-01-141-0/+6
| | | | | | | | This is necessary for the compiler to find include files following the "#include <FRAMEWORK/file>" syntax. Change-Id: Ia40b6bbe571e2b275a502c2de60cceeecc9b0f6b Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Fix Qt5 libs linking to Qt5WebEngineCore.dll for WindowsZoltan Arvai2014-01-131-1/+2
| | | | | | | | | MSVC linker needs file extension, otherwise it searches for .obj files, but Qt has Qt5*.lib files. Change-Id: I4fd5e1d6001ea309da456c43ffc79cb5944a1ef3 Reviewed-by: Andras Becsi <andras.becsi@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Use the process we install to libexecPierre Rossi2013-12-031-14/+0
| | | | | | | | | Via QLibraryInfo. Also pick the name from qmake, and drop the hardcoded value. Add better error reporting when this fails. Change-Id: I44891a16f079b6c3c334f7f2bafa9edc0b4d69e4 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Ship repacked .pak filesPierre Rossi2013-12-031-19/+1
| | | | | | | | | | | | | We used to wrap various .pak files in qrc files, but it turns out to be very memory inefficient compared to chromium's approach of mmaping those files. Drop the pak->qrc logic and instead add some pure gyp targets to repack the resources. We then install those with qmake and look them up with QLibraryInfo. Change-Id: I6dd3cedf6afa626ed181463911fef8885c9e9add Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Gratuitous .prf cleanupPierre Rossi2013-11-291-1/+1
| | | | | Change-Id: I6b4d1ec92b3adc2145a1f2aeec7038eac079d4e8 Reviewed-by: Andras Becsi <andras.becsi@digia.com>
* Use $$clean_pathPierre Rossi2013-11-291-2/+1
| | | | | | | Seems more robust than a regexp, and the right thing to use in this case. Change-Id: I1ca320606c50fb3d5f593025e23b3e08ae77a124 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
* Moving sources to src part 2: Adjust paths.Jocelyn Turcotte2013-11-283-8/+8
| | | | | | | | | | | | | | | | | | | NOTE: To build after this you should rerun init-repository.py or run $> git submodule sync $> git submodule update $> git config qtwebengine.chromiumsrcdir src/3rdparty This makes everything build by adjusting paths. Other mixed-in changes: - Rename qtwebengine_src variables in scripts to qtwebengine_root to avoid confusion. - Cleanup the release and debug extra targets that were in lib.pro. This file has also been split into src.pro and core.pro. Change-Id: Ieee9158a65f526b15244eaca59e779b7069d337e Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com>
* Moving sources to src part 1: Move files.Jocelyn Turcotte2013-11-284-0/+348
This only move files without adjusting any paths. This moves: - lib/quick -> src/webengine/api (API files) lib/quick -> src/webengine (other files) This contains the main QtWebEngine module library since <ec7b2ee70a8b2db7fb87f50671a001ddd54697b0>. - lib/widgets -> src/webenginewidgets Also rename this directory to match its module name and rename Api to api. - lib -> src/core - process -> src/process - resources -> src/core/resources - tools/* -> tools/scripts/ The build directory is spread as follow: - build/build.pro -> src/core/gyp_run.pro - build/qmake_extras/* -> src/core/ (for the host and target .pro files) - build/qmake -> tools/qmake - Build related scripts -> tools/buildscripts Change-Id: I0cded1de772c99c0c1da6536c9afea353236b4a1 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com> Reviewed-by: Pierre Rossi <pierre.rossi@gmail.com> Reviewed-by: Andras Becsi <andras.becsi@digia.com>