| TEMPLATE = aux |
| option(host_build) |
| |
| !debug_and_release: CONFIG += release |
| |
| include($$QTWEBENGINE_OUT_ROOT/src/buildtools/qtbuildtools-config.pri) |
| QT_FOR_CONFIG += buildtools-private |
| |
| build_pass|!debug_and_release { |
| !qtConfig(webengine-system-gn): CONFIG(release, debug|release) { |
| buildgn.target = build_gn |
| out = $$gnPath() |
| out_path = $$dirname(out) |
| !qtConfig(webengine-system-ninja): ninja_path = $$ninjaPath() |
| else: ninja_path="ninja" |
| # check if it is not already build |
| !exists($$out) { |
| src_3rd_party_dir = $$absolute_path("$${getChromiumSrcDir()}/../", "$$QTWEBENGINE_ROOT") |
| gn_bootstrap = $$system_path($$absolute_path(gn/build/gen.py, $$src_3rd_party_dir)) |
| |
| gn_gen_args = --no-last-commit-position --out-path $$out_path \ |
| --cc \"$$which($$QMAKE_CC)\" --cxx \"$$which($$QMAKE_CXX)\" \ |
| --ld \"$$which($$QMAKE_LINK)\" |
| |
| msvc:!clang_cl: gn_gen_args += --use-lto |
| |
| gn_configure = $$system_quote($$gn_bootstrap) $$gn_gen_args |
| macos { |
| gn_configure += --isysroot \"$$QMAKE_MAC_SDK_PATH\" |
| } |
| message($$gn_configure) |
| !system("$$pythonPathForSystem() $$gn_configure") { |
| error("GN generation error!") |
| } |
| !system("cd $$system_quote($$system_path($$out_path)) && $$ninja_path $$basename(out)" ) { |
| error("GN build error!") |
| } |
| } |
| QMAKE_DISTCLEAN += $$out |
| } |
| } |