1*4882a593SmuzhiyunFrom bae24edf61de8e374a43b7eede7be8c90a2a32e5 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Samuli Piippo <samuli.piippo@qt.io> 3*4882a593SmuzhiyunDate: Wed, 15 Mar 2017 13:53:28 +0200 4*4882a593SmuzhiyunSubject: [PATCH] Force host toolchain configuration 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunForce gcc/g++ to be used for parts using host toolchain, since 7*4882a593Smuzhiyunthe option(host_build) does not work in yocto builds. 8*4882a593Smuzhiyun 9*4882a593SmuzhiyunDon't use QT_ARCH for the host architecture, since that's always 10*4882a593Smuzhiyunthe target architecture in bitbake builds, instead ask specifically 11*4882a593Smuzhiyunfor the qmakes's host architecture. 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunUpstream-Status: Inappropriate [OE specific] 14*4882a593SmuzhiyunSigned-off-by: Samuli Piippo <samuli.piippo@qt.io> 15*4882a593Smuzhiyun--- 16*4882a593Smuzhiyun src/buildtools/config/linux.pri | 2 +- 17*4882a593Smuzhiyun src/buildtools/configure_host.pro | 14 +++++++------- 18*4882a593Smuzhiyun src/buildtools/gn.pro | 5 ++--- 19*4882a593Smuzhiyun 3 files changed, 10 insertions(+), 11 deletions(-) 20*4882a593Smuzhiyun 21*4882a593Smuzhiyundiff --git a/src/buildtools/config/linux.pri b/src/buildtools/config/linux.pri 22*4882a593Smuzhiyunindex 7507d51ef..1e078cbfe 100644 23*4882a593Smuzhiyun--- a/src/buildtools/config/linux.pri 24*4882a593Smuzhiyun+++ b/src/buildtools/config/linux.pri 25*4882a593Smuzhiyun@@ -118,7 +118,7 @@ contains(QT_ARCH, "mips") { 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun host_build { 28*4882a593Smuzhiyun gn_args += custom_toolchain=\"$$QTWEBENGINE_OUT_ROOT/src/toolchain:host\" 29*4882a593Smuzhiyun- GN_HOST_CPU = $$gnArch($$QT_ARCH) 30*4882a593Smuzhiyun+ GN_HOST_CPU = $$gnArch($$QMAKE_HOST.arch) 31*4882a593Smuzhiyun gn_args += host_cpu=\"$$GN_HOST_CPU\" 32*4882a593Smuzhiyun # Don't bother trying to use system libraries in this case 33*4882a593Smuzhiyun gn_args += use_glib=false 34*4882a593Smuzhiyundiff --git a/src/buildtools/configure_host.pro b/src/buildtools/configure_host.pro 35*4882a593Smuzhiyunindex dd0d3e327..6312c8678 100644 36*4882a593Smuzhiyun--- a/src/buildtools/configure_host.pro 37*4882a593Smuzhiyun+++ b/src/buildtools/configure_host.pro 38*4882a593Smuzhiyun@@ -4,7 +4,7 @@ TEMPLATE = aux 39*4882a593Smuzhiyun # Pick up the host toolchain 40*4882a593Smuzhiyun option(host_build) 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun-GN_HOST_CPU = $$gnArch($$QT_ARCH) 43*4882a593Smuzhiyun+GN_HOST_CPU = $$gnArch($$QMAKE_HOST.arch) 44*4882a593Smuzhiyun !isEmpty(QT_TARGET_ARCH): GN_TARGET_CPU = $$gnArch($$QT_TARGET_ARCH) 45*4882a593Smuzhiyun else: GN_TARGET_CPU = $$GN_HOST_CPU 46*4882a593Smuzhiyun GN_OS = $$gnOS() 47*4882a593Smuzhiyun@@ -31,9 +31,9 @@ GN_CONTENTS = \ 48*4882a593Smuzhiyun "import(\"//build/config/sysroot.gni\")" \ 49*4882a593Smuzhiyun "import(\"//build/toolchain/gcc_toolchain.gni\")" \ 50*4882a593Smuzhiyun "gcc_toolchain(\"host\") {" \ 51*4882a593Smuzhiyun-" cc = \"$$which($$QMAKE_CC)\" " \ 52*4882a593Smuzhiyun-" cxx = \"$$which($$QMAKE_CXX)\" " \ 53*4882a593Smuzhiyun-" ld = \"$$which($$QMAKE_LINK)\" " \ 54*4882a593Smuzhiyun+" cc = \"$$which($$CC_host)\" " \ 55*4882a593Smuzhiyun+" cxx = \"$$which($$CXX_host)\" " \ 56*4882a593Smuzhiyun+" ld = \"$$which($$CXX_host)\" " \ 57*4882a593Smuzhiyun " ar = \"$$which(ar)\" " \ 58*4882a593Smuzhiyun " nm = \"$$which(nm)\" " \ 59*4882a593Smuzhiyun " extra_cppflags = \"$$GN_HOST_EXTRA_CPPFLAGS\" " \ 60*4882a593Smuzhiyun@@ -45,9 +45,9 @@ GN_CONTENTS = \ 61*4882a593Smuzhiyun " } " \ 62*4882a593Smuzhiyun "}" \ 63*4882a593Smuzhiyun "gcc_toolchain(\"v8_snapshot\") {" \ 64*4882a593Smuzhiyun-" cc = \"$$which($$QMAKE_CC)\" " \ 65*4882a593Smuzhiyun-" cxx = \"$$which($$QMAKE_CXX)\" " \ 66*4882a593Smuzhiyun-" ld = \"$$which($$QMAKE_LINK)\" " \ 67*4882a593Smuzhiyun+" cc = \"$$which($$CC_host)\" " \ 68*4882a593Smuzhiyun+" cxx = \"$$which($$CXX_host)\" " \ 69*4882a593Smuzhiyun+" ld = \"$$which($$CXX_host)\" " \ 70*4882a593Smuzhiyun " ar = \"$$which(ar)\" " \ 71*4882a593Smuzhiyun " nm = \"$$which(nm)\" " \ 72*4882a593Smuzhiyun " toolchain_args = { " \ 73*4882a593Smuzhiyundiff --git a/src/buildtools/gn.pro b/src/buildtools/gn.pro 74*4882a593Smuzhiyunindex f94694da0..a8ca6567b 100644 75*4882a593Smuzhiyun--- a/src/buildtools/gn.pro 76*4882a593Smuzhiyun+++ b/src/buildtools/gn.pro 77*4882a593Smuzhiyun@@ -19,9 +19,8 @@ build_pass|!debug_and_release { 78*4882a593Smuzhiyun gn_bootstrap = $$system_path($$absolute_path(gn/build/gen.py, $$src_3rd_party_dir)) 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun gn_gen_args = --no-last-commit-position --out-path $$out_path \ 81*4882a593Smuzhiyun- --cc \"$$which($$QMAKE_CC)\" --cxx \"$$which($$QMAKE_CXX)\" \ 82*4882a593Smuzhiyun- --ld \"$$which($$QMAKE_LINK)\" 83*4882a593Smuzhiyun- !isEmpty(QMAKE_AR): gn_gen_args += --ar \"$$which($$first(QMAKE_AR))\" 84*4882a593Smuzhiyun+ --cc \"$$which($$CC_host)\" --cxx \"$$which($$CXX_host)\" \ 85*4882a593Smuzhiyun+ --ld \"$$which($$CXX_host)\" --ar \"$$which(ar)\" 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun msvc:!clang_cl: gn_gen_args += --use-lto 88*4882a593Smuzhiyun 89