From 2a7cba9b412e5c77d46897c3c89405b64a1729b6 Mon Sep 17 00:00:00 2001
From: Andras Becsi <andras.becsi@digia.com>
Date: Tue, 20 Aug 2013 15:05:49 +0200
Subject: [PATCH] Adjust all the needed paths when using upstream repositories

Having a separate 3rdparty_upstream might not be the best solution
after all, but oh well.

Change-Id: Ib834c4d9d56669a3f4308eb614cec787116d6d4c
Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
---
 build/gyp_qtwebengine                      |  2 ++
 build/qmake/mkspecs/features/functions.prf | 13 +++++++++----
 build/scripts/build_resources.py           |  2 ++
 3 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/build/gyp_qtwebengine b/build/gyp_qtwebengine
index 322d7e62a..31c7a8085 100755
--- a/build/gyp_qtwebengine
+++ b/build/gyp_qtwebengine
@@ -11,6 +11,8 @@ if chrome_src:
   chrome_src = os.path.abspath(chrome_src)
 if not chrome_src or not os.path.isdir(chrome_src):
   chrome_src = os.path.join(qtwebengine_src, '3rdparty/chromium')
+  if not os.path.isdir(chrome_src):
+    chrome_src = os.path.join(qtwebengine_src, '3rdparty_upstream/chromium')
   print 'CHROMIUM_SRC_DIR not set, falling back to ' + chrome_src
 
 script_dir = os.path.abspath(os.path.join(chrome_src, 'build'))
diff --git a/build/qmake/mkspecs/features/functions.prf b/build/qmake/mkspecs/features/functions.prf
index c712912b4..a2fdeacee 100644
--- a/build/qmake/mkspecs/features/functions.prf
+++ b/build/qmake/mkspecs/features/functions.prf
@@ -75,11 +75,16 @@ defineReplace(findNinja) {
   !isEmpty(CACHED_NINJA_EXECUTABLE):exists($$CACHED_NINJA_EXECUTABLE): return($$CACHED_NINJA_EXECUTABLE)
   out = $$which(ninja)
   # Try to be smart about it if we know where the chromium sources are located
-  !exists($$out): out = $$absolute_path("$$QTWEBENGINE_ROOT/3rdparty/ninja/ninja")
-  # If we still did not find ninja, then we bootstrap it.
   !exists($$out) {
-    message("bootstrapping ninja...")
-    system("python $$QTWEBENGINE_ROOT/3rdparty/ninja/bootstrap.py")
+    ninjadir = $$absolute_path("$$QTWEBENGINE_ROOT/3rdparty/ninja")
+    # We might deal with an upstream chromium build
+    !exists($$ninjadir): ninjadir = $$absolute_path("$$QTWEBENGINE_ROOT/3rdparty_upstream/ninja")
+    out = "$$ninjadir/ninja"
+    # If we still did not find ninja, then we bootstrap it.
+    !exists($$out) {
+      message("bootstrapping ninja...")
+      system("python $$ninjadir/bootstrap.py")
+    }
   }
   message("using $$out")
   cache(CACHED_NINJA_EXECUTABLE, set, out)
diff --git a/build/scripts/build_resources.py b/build/scripts/build_resources.py
index d060db1f7..1b924750f 100755
--- a/build/scripts/build_resources.py
+++ b/build/scripts/build_resources.py
@@ -55,6 +55,8 @@ if chrome_src:
   chrome_src = os.path.abspath(chrome_src)
 if not chrome_src or not os.path.isdir(chrome_src):
   chrome_src = os.path.join(qtwebengine_src, '3rdparty/chromium')
+  if not os.path.isdir(chrome_src):
+    chrome_src = os.path.join(qtwebengine_src, '3rdparty_upstream/chromium')
   print 'CHROMIUM_SRC_DIR not set, falling back to ' + chrome_src
 
 grit_tool = os.path.join(chrome_src, 'tools/grit/grit.py')
-- 
GitLab