From 085aa0d44337e468595b74dd691c29a41d7a4f56 Mon Sep 17 00:00:00 2001 From: Zeno Albisser <zeno.albisser@digia.com> Date: Fri, 22 Aug 2014 17:53:05 +0200 Subject: [PATCH] When comparing paths in python we have to use normcase. Chromium requires relative paths for output-dir and for generator-output. Also output-dir is expected to be a subdirectory of generator-output. This now allows building on windows without running qmake in recursive mode. Change-Id: Ie0f9965c1fbfd63eb3cb9c360b29f210128a5c3e Reviewed-by: Andras Becsi <andras.becsi@digia.com> --- tools/buildscripts/gyp_qtwebengine | 8 ++++---- tools/buildscripts/qtwebengine_utils.py | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/tools/buildscripts/gyp_qtwebengine b/tools/buildscripts/gyp_qtwebengine index 3c7461993..e3fb740cd 100755 --- a/tools/buildscripts/gyp_qtwebengine +++ b/tools/buildscripts/gyp_qtwebengine @@ -11,7 +11,7 @@ if sys.platform == "darwin": print 'xcode version: ' + subprocess.check_output(['xcodebuild', '-version']).replace('\n', ' ') print 'clang++ version: ' + subprocess.check_output(['clang++', '--version']).replace('\n', ' ') -qtwebengine_root = os.path.abspath(os.path.join(os.path.dirname(__file__), '../..')) +qtwebengine_root = os.path.normcase(os.path.abspath(os.path.join(os.path.dirname(__file__), '../..'))) import qtwebengine_utils as utils chrome_src = utils.getChromiumSrcDir() @@ -19,7 +19,7 @@ script_dir = os.path.abspath(os.path.join(chrome_src, 'build')) if not os.path.isdir(script_dir): print script_dir + " is not a valid directory" sys.exit(1) -root_dir = os.path.abspath(os.path.join(os.getcwd(), os.pardir, os.pardir)) +root_dir = os.path.normcase(os.path.abspath(os.path.join(os.getcwd(), os.pardir, os.pardir))) sys.path.insert(1, script_dir) import gyp_helper @@ -145,8 +145,8 @@ if __name__ == '__main__': # Trigger Qt-specific build conditions. args.extend(['-D', 'use_qt=1']) # Tweak the output location and format (hardcode ninja for now if not set) - args.extend(['--generator-output', os.path.abspath(output_dir)]) - args.extend(['-Goutput_dir='+ os.path.abspath(output_dir)]) + args.extend(['--generator-output', '.']) + args.extend(['-Goutput_dir='+ os.path.relpath(output_dir, qtwebengine_root)]) # Tell gyp not to try finding cl.exe on Windows, Qt already requires the env to be set prior to the build. args.extend(['-G', 'ninja_use_custom_environment_files']) diff --git a/tools/buildscripts/qtwebengine_utils.py b/tools/buildscripts/qtwebengine_utils.py index 1b629c65c..ccc112b11 100755 --- a/tools/buildscripts/qtwebengine_utils.py +++ b/tools/buildscripts/qtwebengine_utils.py @@ -62,5 +62,5 @@ def getChromiumSrcDir(): 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')) - return chrome_src + return os.path.normcase(chrome_src) -- GitLab