From 4be6a15559b0dfb7c53b72e2480ce8e09326b3c1 Mon Sep 17 00:00:00 2001 From: Jocelyn Turcotte Date: Thu, 7 Aug 2014 17:34:27 +0200 Subject: Fix the build on windows when qtwebengine.chromiumsrcdir isn't set 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 --- src/core/config/windows.pri | 3 +-- tools/buildscripts/qtwebengine_utils.py | 2 +- tools/qmake/mkspecs/features/functions.prf | 13 ++++++++----- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/core/config/windows.pri b/src/core/config/windows.pri index e2b16d860..0828115b4 100644 --- a/src/core/config/windows.pri +++ b/src/core/config/windows.pri @@ -6,8 +6,7 @@ GYP_CONFIG += \ use_ash=0 \ # Libvpx build needs additional search path on Windows. -git_chromium_src_dir = $$system("git config qtwebengine.chromiumsrcdir") -GYP_ARGS += "-D qtwe_chromium_obj_dir=\"$$OUT_PWD/$$getConfigDir()/obj/$$git_chromium_src_dir\"" +GYP_ARGS += "-D qtwe_chromium_obj_dir=\"$$OUT_PWD/$$getConfigDir()/obj/$${getChromiumSrcDir()}\"" # Use path from environment for perl, bison and gperf instead of values set in WebKit's core.gypi. GYP_ARGS += "-D perl_exe=\"perl.exe\" -D bison_exe=\"bison.exe\" -D gperf_exe=\"gperf.exe\"" diff --git a/tools/buildscripts/qtwebengine_utils.py b/tools/buildscripts/qtwebengine_utils.py index 60466da02..1b629c65c 100755 --- a/tools/buildscripts/qtwebengine_utils.py +++ b/tools/buildscripts/qtwebengine_utils.py @@ -59,8 +59,8 @@ def getChromiumSrcDir(): if chrome_src: chrome_src = os.path.join(qtwebengine_root, chrome_src) + print('Using external chromium sources specified in git config qtwebengine.chromiumsrcdir: ' + chrome_src) if not chrome_src or not os.path.isdir(chrome_src): chrome_src = os.path.normpath(os.path.join(qtwebengine_root, 'src/3rdparty/chromium')) - print 'No external chromium sources were found, falling back to ' + chrome_src return chrome_src diff --git a/tools/qmake/mkspecs/features/functions.prf b/tools/qmake/mkspecs/features/functions.prf index a4dbb6732..2db0c3ab1 100644 --- a/tools/qmake/mkspecs/features/functions.prf +++ b/tools/qmake/mkspecs/features/functions.prf @@ -18,6 +18,13 @@ defineReplace(getConfigDir) { return("Debug") } +defineReplace(getChromiumSrcDir) { + git_chromium_src_dir = $$system("git config qtwebengine.chromiumsrcdir") + # Fall back to the snapshot path if git does not know about chromium sources (i.e. init-repository.py has not been used) + isEmpty(git_chromium_src_dir): git_chromium_src_dir = "src/3rdparty/chromium" + return($$git_chromium_src_dir) +} + defineReplace(extractCFlag) { CFLAGS = $$QMAKE_CFLAGS !isEmpty(ANDROID_TARGET_CFLAGS): CFLAGS = $$ANDROID_TARGET_CFLAGS @@ -89,11 +96,7 @@ defineReplace(which) { } defineReplace(findOrBuildNinja) { - git_chromium_src_dir = $$system("git config qtwebengine.chromiumsrcdir") - # Fall back to the snapshot path if git does not know about chromium sources (i.e. init-repository.py has not been used) - isEmpty(git_chromium_src_dir): git_chromium_src_dir = "src/3rdparty/chromium" - - out = $$absolute_path("$$git_chromium_src_dir/../ninja/ninja", "$$QTWEBENGINE_ROOT") + out = $$absolute_path("$${getChromiumSrcDir()}/../ninja/ninja", "$$QTWEBENGINE_ROOT") win32: out = $$system_path($${out}.exe) # If we did not find ninja, then we bootstrap it. -- cgit v1.2.3