From patchwork Fri Mar 6 20:34:09 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Seiderer X-Patchwork-Id: 1250609 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.138; helo=whitealder.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.net Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=hYQfwoNp; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 48Yzqj5mmrz9sPK for ; Sat, 7 Mar 2020 07:34:25 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 2234087668; Fri, 6 Mar 2020 20:34:24 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mh0FqjKwxv77; Fri, 6 Mar 2020 20:34:21 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by whitealder.osuosl.org (Postfix) with ESMTP id 202158766A; Fri, 6 Mar 2020 20:34:21 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id CD8771BF5DD for ; Fri, 6 Mar 2020 20:34:19 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id C37FD8766A for ; Fri, 6 Mar 2020 20:34:19 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id m8OmB1N-g5eQ for ; Fri, 6 Mar 2020 20:34:17 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) by whitealder.osuosl.org (Postfix) with ESMTPS id B697787668 for ; Fri, 6 Mar 2020 20:34:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1583526852; bh=XJwraeLWd388c65myNaPi1dOvkxQjNkgK8ECz/SBh+o=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date; b=hYQfwoNp5E4M87McKmoCXcB+xP2tIizU7qJ7oXqeSGfwgasQobXQ2BT/eBVuBoX4r nRnyjT61URFl2L4elznQ3rHeiRaa/kmd6iv4r4kVJ87tB2t6/NLraums7ETRduIFdx Ko0fuVQKKX1dv0lxGRF3pCgRgZEAjaAWuuffhKco= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from localhost.fritz.box ([62.216.209.187]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MwQXH-1jTDvt1JdF-00sMta; Fri, 06 Mar 2020 21:34:12 +0100 From: Peter Seiderer To: buildroot@busybox.net Date: Fri, 6 Mar 2020 21:34:09 +0100 Message-Id: <20200306203410.25008-1-ps.report@gmx.net> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-Provags-ID: V03:K1:6vka/5WnGNedHDLpn3W8dWIdK5T5+9dDn3Xije4ZX9d9vaoZI9v WEmvGnVOAET9re+nkIqNCQs4QmVKnjdfBAdbWr9ODteqP5zWvnQCc9s7lJkTSz37q4IU8eM AGYY8nrISy0H5QJVCKHhIePMpB4SBpFe3ITiOguJb9nkRh42wQihK74VyhOaZ4d16dPD6so 38QOOTUOzHiFPXfgZveIg== X-UI-Out-Filterresults: notjunk:1; V03:K0:efwJsJm6Wig=:ShVBTIpJV4gS4T5CnSYAgP KZ55kU0pPSL5RJ+AdNq7kftZ8gT/4mKSI6lfmGNlh2E1YdLEw22c7rPfbc+lcvsOuFdps2jWn CoYAtCWw3hG8PZbGLautueUREoI+IZzMaBl6Jsu+gLiRaZ/UBPXtvfAVtmbnRyS2gNuE8Qk3B 4XUAB/hOwGKJIpygs+22fCrLseOQle3kzb314nl1+EN5dOycAd/HZlj34SUWjfofg1JWQyN4E 6TUbpggudRWdbVZg8ftN73IET8Hhx7uekCij9eupdG/h9XAp37v8XtOH6sNkfmu85u12UoSKK UHdYTA3LbooeZP2fK1+1cwl3e65WDdmKm+W2tJeToFqfT+sJCW3zcwcNfLJfIyl0B7vsU2IOI 9OmdvhvbmcSOx21WOR6OJlpcMrVNtgK4A2lR/naSZchusqS+EJFSjeZPExyc/+Rtzd4uCGNx4 mH68YxHyR0zsmBpd8wOKpyBoPQh6v5gIIBj6hWR19MoTp5Bg/XRaQx1+oXN/v9Er6tJkPZr83 beI6sxGDTYY1M0u5OEuEDiys//aKRzkHUaQ8fBSs2W5S+1s2LyJwZkZeT6s3MQeari83amSjt oNsXLSzi4edZciAe6/zA+gjTugF2XojhyU97ajm45VlpKpj4Y2vpRRkJq+C80AUIjOT2XwDE4 AHhUMKRij0ICjzDQUYnxO8rXPEaTEL/s0vvJnKnjTHGzgqDKswErvilTAvBG+XM7xIPeklg6b vtb/eqMwSJi/U2oc5y6QUSxgTSQBjcLEwp+JNIPxwub3XqWsaHSngntN2eU8bB+y5sf9dh6m6 hLFZkg8kQnfVODp3imbdOtxDYYjIXpsxvOEDjg2Ai/AdosbtnAV0+f+2gT5uhyHY+rx7uLFkK rsOMRLt8aOSj9ejZH6jNqYEM0aKk4eGo6jksVBrkqDesv2ks3ehoApKlnJ8YyJaqcaWV3eTzV relSmXMOOeGdi6R3blflnkBhUcNDbqii7ROXcy3/cFHMD2AjfnqPK3v/6F+56LsU4PgNonzKT uvYoZrRgVCo+QInSj8z+gqKJoW6x8IkCyUl8Q9dSkYVTLXg9djmrUSNzOB7Yvp91zX75jgna5 gUEPhVB9ZbQrOY22uSl/hnpL67oWT9Xkql4ALdLSqguZ3ERObAoLSy8cVqf8VQiUPxPuk9iM2 FXQxUsNHSvt4RewbqkmOFv3TKAbv8ugA+afkLrhIh3p19UKopvDAywNJ4xU7Iusdlv4AMOxY0 Ei5IQedmFL87u/+F4 Subject: [Buildroot] [PATCH v3 1/2] package/qt5webengine: fix compile flags for arm X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Julien Corjon , =?utf-8?q?Ga=C3=ABl_Portay?= Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" The qt5webengine configure simple takes QT_ARCH ('arm') to determine the chromium compiler flags and uses some hard coded ARMv7 default values for the compiler command line: '... -march=armv7-a -mfloat-abi=hard -mtune=generic-armv7-a -mfpu=vfpv3-d16 ...'. This results e.g. in an illegal instruction failure for rpi zero (reported on the mailing list, see [1]). Disable all arm custom cpu flags (march/mfloat-abi/mtune/mfpu/mthumb) as these are already set by the compiler wrapper (via a patch to the chromium GN build system BUILD.gn file). Despite the patch set all known values in the chromium GN build system config file chromium/build/config/arm.gni to not disturb the compile defines settings logic. Fixes: $ /usr/lib/qt/examples/webengine/minimal/minimal Illegal instruction [1] http://lists.busybox.net/pipermail/buildroot/2020-February/274587.html Signed-off-by: Peter Seiderer --- Changes v1 -> v2: - use new introduced BR2_GCC_TARGET_ARCH for arm_arch as the previous simple approach did not work (alternative would be to extract the arch at runtime via gcc invocation) Changes v2 -> v3: - disable all custom arm cpu flags (suggested by Thomas Petazzoni) Notes: - patches tested on top of the following two patches from Nathan Ford https://patchwork.ozlabs.org/patch/1246679/ https://patchwork.ozlabs.org/patch/1246678/ - to prevent OOM compiled with reduced PARALLEL_JOBS via the following patch: --- a/package/qt5/qt5webengine/qt5webengine.mk +++ b/package/qt5/qt5webengine/qt5webengine.mk @@ -98,7 +98,8 @@ define QT5WEBENGINE_PYTHON2_SYMLINK endef QT5WEBENGINE_PRE_CONFIGURE_HOOKS += QT5WEBENGINE_PYTHON2_SYMLINK -QT5WEBENGINE_ENV += NINJAFLAGS="-j$(PARALLEL_JOBS)" +# limit to 2/3 PARALLEL_JOBS to prevent OOM situation +QT5WEBENGINE_ENV += NINJAFLAGS="-j$(shell echo $(PARALLEL_JOBS)*2/3+1 | bc )" ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) define QT5WEBENGINE_CREATE_HOST_PKG_CONFIG - to check the compiler inokations enabeld ninja verbose mode via the following patch: --- a/package/qt5/qt5webengine/qt5webengine.mk +++ b/package/qt5/qt5webengine/qt5webengine.mk @@ -99,7 +99,7 @@ endef QT5WEBENGINE_PRE_CONFIGURE_HOOKS += QT5WEBENGINE_PYTHON2_SYMLINK # limit to 2/3 PARALLEL_JOBS to prevent OOM situation -QT5WEBENGINE_ENV += NINJAFLAGS="-j$(shell echo $(PARALLEL_JOBS)*2/3+1 | bc )" +QT5WEBENGINE_ENV += NINJAFLAGS="-v -j$(shell echo $(PARALLEL_JOBS)*2/3+1 | bc )" ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y) define QT5WEBENGINE_CREATE_HOST_PKG_CONFIG --- ...n-disable-all-custom-arm-cpu-compile.patch | 79 +++++++++++++++++++ package/qt5/qt5webengine/qt5webengine.mk | 69 ++++++++++++++++ 2 files changed, 148 insertions(+) create mode 100644 package/qt5/qt5webengine/5.12.7/0002-chromium-BUILD.gn-disable-all-custom-arm-cpu-compile.patch diff --git a/package/qt5/qt5webengine/5.12.7/0002-chromium-BUILD.gn-disable-all-custom-arm-cpu-compile.patch b/package/qt5/qt5webengine/5.12.7/0002-chromium-BUILD.gn-disable-all-custom-arm-cpu-compile.patch new file mode 100644 index 0000000000..e69ce40696 --- /dev/null +++ b/package/qt5/qt5webengine/5.12.7/0002-chromium-BUILD.gn-disable-all-custom-arm-cpu-compile.patch @@ -0,0 +1,79 @@ +From 51e83c5619cedecabcce41f9d2a1e0016ea72e00 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Mon, 2 Mar 2020 21:29:58 +0100 +Subject: [PATCH] chromium/BUILD.gn: disable all custom arm cpu compiler flags + +Disable all custom arm cpu compiler flags as these are already set +by the buildroot compiler wrapper: + + - march + - mfloat-abi + - mtune + - mfpu + - mthumb + +Signed-off-by: Peter Seiderer +--- + .../chromium/build/config/compiler/BUILD.gn | 23 ++++++++++++------- + 1 file changed, 15 insertions(+), 8 deletions(-) + +diff --git a/src/3rdparty/chromium/build/config/compiler/BUILD.gn b/src/3rdparty/chromium/build/config/compiler/BUILD.gn +index d223a4f6f..16dec5c6a 100644 +--- a/src/3rdparty/chromium/build/config/compiler/BUILD.gn ++++ b/src/3rdparty/chromium/build/config/compiler/BUILD.gn +@@ -672,7 +672,8 @@ config("compiler") { + # TODO(pcc): The contents of .ARM.attributes should be based on the + # -march flag passed at compile time (see llvm.org/pr36291). + if (current_cpu == "arm") { +- ldflags += [ "-march=$arm_arch" ] ++ # disabled for the buildroot compile ++ # ldflags += [ "-march=$arm_arch" ] + } + } + +@@ -752,13 +753,15 @@ config("compiler_cpu_abi") { + ldflags += [ "--target=arm-linux-gnueabihf" ] + } + if (!is_nacl) { +- cflags += [ +- "-march=$arm_arch", +- "-mfloat-abi=$arm_float_abi", +- ] ++ # disabled for the buildroot compile ++ # cflags += [ ++ # "-march=$arm_arch", ++ # "-mfloat-abi=$arm_float_abi", ++ # ] + } + if (arm_tune != "") { +- cflags += [ "-mtune=$arm_tune" ] ++ # disabled for the buildroot compile ++ # cflags += [ "-mtune=$arm_tune" ] + } + } else if (current_cpu == "arm64") { + if (is_clang && !is_android && !is_nacl && !is_fuchsia) { +@@ -1130,7 +1133,9 @@ config("clang_revision") { + + config("compiler_arm_fpu") { + if (current_cpu == "arm" && !is_ios && !is_nacl) { +- cflags = [ "-mfpu=$arm_fpu" ] ++ # disabled for the buildroot compile ++ # cflags = [ "-mfpu=$arm_fpu" ] ++ cflags = [] + asmflags = cflags + } + } +@@ -1138,7 +1143,9 @@ config("compiler_arm_fpu") { + config("compiler_arm_thumb") { + if (current_cpu == "arm" && arm_use_thumb && is_posix && + !(is_mac || is_ios || is_nacl)) { +- cflags = [ "-mthumb" ] ++ # disabled for the buildroot compile ++ # cflags = [ "-mthumb" ] ++ cflags = [] + if (is_android && !is_clang) { + # Clang doesn't support this option. + cflags += [ "-mthumb-interwork" ] +-- +2.25.1 + diff --git a/package/qt5/qt5webengine/qt5webengine.mk b/package/qt5/qt5webengine/qt5webengine.mk index 45d175cfb1..7337b67e9d 100644 --- a/package/qt5/qt5webengine/qt5webengine.mk +++ b/package/qt5/qt5webengine/qt5webengine.mk @@ -109,7 +109,76 @@ QT5WEBENGINE_PRE_CONFIGURE_HOOKS += QT5WEBENGINE_CREATE_HOST_PKG_CONFIG QT5WEBENGINE_ENV += GN_PKG_CONFIG_HOST=$(@D)/host-bin/host-pkg-config endif +# configure arm architecture paramter for chromium compile +ifeq ($(BR2_arm),y) +ifeq ($(BR2_ARM_CPU_ARMV4),y) +define QT5WEBENGINE_CONFIGURE_ARM_VERSION + $(SED) 's/^ arm_version = 7$$/ arm_version = 4/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef +endif + +ifeq ($(BR2_ARM_CPU_ARMV5),y) +define QT5WEBENGINE_CONFIGURE_ARM_VERSION + $(SED) 's/^ arm_version = 7$$/ arm_version = 5/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef +endif + +ifeq ($(BR2_ARM_CPU_ARMV6),y) +define QT5WEBENGINE_CONFIGURE_ARM_VERSION + $(SED) 's/^ arm_version = 7$$/ arm_version = 6/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef +endif + +# no entriy for BR2_ARM_CPU_ARMV7A/BR2_ARM_CPU_ARMV7M, arm_vesion = 7 is already set by default + +ifeq ($(BR2_ARM_CPU_ARMV8A),y) +define QT5WEBENGINE_CONFIGURE_ARM_VERSION + $(SED) 's/^ arm_version = 7$$/ arm_version = 8/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef +endif + +# not known by buildroot, set to some dummy to disable all default logic +define QT5WEBENGINE_CONFIGURE_ARM_ARCH + $(SED) 's/^ arm_arch = ""$$/ arm_arch = "arm-dummy-arch"/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef + +define QT5WEBENGINE_CONFIGURE_ARM_FPU + $(SED) 's/^ arm_fpu = ""$$/ arm_fpu = $(BR2_GCC_TARGET_FPU)/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef + +define QT5WEBENGINE_CONFIGURE_ARM_FLOAT_ABI + $(SED) 's/^ arm_float_abi = ""$$/ arm_float_abi = $(BR2_GCC_TARGET_FLOAT_ABI)/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef + +define QT5WEBENGINE_CONFIGURE_ARM_TUNE + $(SED) 's/^ arm_tune = ""$$/ arm_tune = $(BR2_GCC_TARGET_CPU)/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef + +ifeq ($(BR2_ARM_CPU_HAS_NEON),y) +define QT5WEBENGINE_CONFIGURE_ARM_NEON + $(SED) 's/^ arm_use_neon = ""$$/ arm_use_neon = "true"/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef +else +define QT5WEBENGINE_CONFIGURE_ARM_NEON + $(SED) 's/^ arm_use_neon = ""$$/ arm_use_neon = "false"/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef +endif + +ifeq ($(BR2_ARM_CPU_HAS_THUMB),) +define QT5WEBENGINE_CONFIGURE_ARM_THUMB + $(SED) 's/^ arm_use_thumb = true$$/ arm_use_thumb = false/' $(@D)/src/3rdparty/chromium/build/config/arm.gni +endef +endif +endif + define QT5WEBENGINE_CONFIGURE_CMDS + $(QT5WEBENGINE_CONFIGURE_ARM_VERSION) + $(QT5WEBENGINE_CONFIGURE_ARM_ARCH) + $(QT5WEBENGINE_CONFIGURE_ARM_FPU) + $(QT5WEBENGINE_CONFIGURE_ARM_FLOAT_ABI) + $(QT5WEBENGINE_CONFIGURE_ARM_TUNE) + $(QT5WEBENGINE_CONFIGURE_ARM_NEON) + $(QT5WEBENGINE_CONFIGURE_ARM_THUMB) (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBENGINE_ENV) $(HOST_DIR)/bin/qmake $(QT5WEBENGINE_QMAKEFLAGS)) endef From patchwork Fri Mar 6 20:34:10 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Seiderer X-Patchwork-Id: 1250608 Return-Path: X-Original-To: incoming-buildroot@patchwork.ozlabs.org Delivered-To: patchwork-incoming-buildroot@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=busybox.net (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=buildroot-bounces@busybox.net; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=gmx.net Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=eC7Wfvpz; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 48Yzqh0fBGz9sNg for ; Sat, 7 Mar 2020 07:34:23 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 49BB4882A7; Fri, 6 Mar 2020 20:34:21 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id C5GCvRePTwdK; Fri, 6 Mar 2020 20:34:20 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by hemlock.osuosl.org (Postfix) with ESMTP id 116FA8828E; Fri, 6 Mar 2020 20:34:20 +0000 (UTC) X-Original-To: buildroot@lists.busybox.net Delivered-To: buildroot@osuosl.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by ash.osuosl.org (Postfix) with ESMTP id 5B0F51BF5DD for ; Fri, 6 Mar 2020 20:34:18 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 576EC87689 for ; Fri, 6 Mar 2020 20:34:18 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JF8he8ScsLgt for ; Fri, 6 Mar 2020 20:34:17 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mout.gmx.net (mout.gmx.net [212.227.15.19]) by whitealder.osuosl.org (Postfix) with ESMTPS id B7AAB8766A for ; Fri, 6 Mar 2020 20:34:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1583526852; bh=zeFs3k1iTygf/97K3QFnW24aC3BZ7vqImo08wnxGioQ=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=eC7WfvpzZYtw6oUeAItUaVHN9AIpAxDd5UkhlZ1apreGy/+JtjtglmR52SCLLZR5N hSSd5Ml9iX2k7mObysfYsXaNtJ9T4ujK+6I2BKtPKB1QWcR9V+xW8PDJA7V8prY+cV dcGvYMauw+4DyiWcieyDvCNwvGsm4LiOOes06eMo= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from localhost.fritz.box ([62.216.209.187]) by mail.gmx.com (mrgmx004 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MEFzr-1j2rQX2IOT-00AGje; Fri, 06 Mar 2020 21:34:12 +0100 From: Peter Seiderer To: buildroot@busybox.net Date: Fri, 6 Mar 2020 21:34:10 +0100 Message-Id: <20200306203410.25008-2-ps.report@gmx.net> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200306203410.25008-1-ps.report@gmx.net> References: <20200306203410.25008-1-ps.report@gmx.net> MIME-Version: 1.0 X-Provags-ID: V03:K1:FaJk8v4mZADEwhhFBtF02ilD3FiX7EajpJw27/2eX4jmTXKNR1t KAn+NANkeqT1474gWjJKyMdI5X8OQN+4vaoYV0YtJE7LCiXwgGqpRRisetuUeG44duInD/a H4B+3te0UIZ3qCz3THuhsDVCbohs1lveHl+zYjnjbCOo9BYSpg1RJ9zj2wSCyK9uiWykVNH C3VY5PA98eN/AG6d46khg== X-UI-Out-Filterresults: notjunk:1; V03:K0:1URApbAjlNk=:/dWFb+c1791tFYn1m6jTYt Tl08w09Ry2EqLtevpA+GT29HxvroDID9W7QZsXqqAOhYX8UlrpEsR6PK6l1bOc8fzZB2JiJ4S TB/UTikiC2Cr+i8kULoecbKboJKON1vM+0YNXdC+cYIK4Cxq48gSCsj+VhiYewbMblZhGy0qo AD+roOd8VmhQuXpHbEL+7MY8ZzFaTshn4RUyaiHbk4ppxnpev/tKTuUNpqFNnYI22GXkmhCz8 Ze5VxjdmLdcJRBIc9/AKRBgScMhox1VBZgtZZfc9cmbJ1ovZSZs4wYNng7V+9KNOp1jBeYuIe ivPdN9U0+Y0HvijbQmJcpcKYwCSk215d9d/1act/Sxx+FmoSpbPVGdS8Csaeu+LWU/FCxOzyb oC3Kvx6fsu1QQg9sDkVdst/wd1R9lyYMueDWEcWC6MuEKO3tqnHsAI0pBUukNHeEGYGJDhMGv OyEeNI3dDrzu210rDhCAMPcrkijnYJHDllpZiCksB25SNrOhurmN/+bN0xtqB9opVSXCwS1F1 TZQBAoX0kOU4Ofrtrc50H6zKkSFpUOjEVrV+4E4zcrw2eawTXF6Rf+c8k2ejWu2w+f/UK8jua hLaLpof4fA00HwbUhbh/GwaF9+4+IttCUYTT6+BZxmmwtoaVAY/TbNqOjaIPyknRbNrqcmi+G 0z4i3SmFKr6UujnL2iJd19y0QME7Nwq6wrNPM0SkqNxrhptL3R2sa9GVqi73JSZ1qYD4JrzAU x5YWG9ycHuUSjIUf5HvkSAKje4IdfJQxWzthq1iJMbSfZ7FvWdtKL+DhIbdoLmQg8bVAY4XJ3 q0218JI3IeQtnShPj0wTIwMGKmXNPwbKaIShh04g6599/pKare58nUOvymzbw/0JyifhY8RoI CdhfoiisQh89RxFMUu+8vgDFKMADX0WLQSL0kFuQacAv9M/AZq7otA6m0Jaxws6KNHYbeirGO ss52my0RHP6GtLBNBLh3/+Pexcv9sbKhf42qVYn3agZCsRyzTJrdMOkz4xg/RfnTnNMzrwKMu f/ZbEFxtHwy7uL61KA9IwBvGCOZ505yfJ+MKh9tg9S9pnXLuVjPvI4KdS4BRrT+Y6GFJv4yJm d/8G1tNm5hy4x3XG6ffmk4ql+9P7GGZpqG0w8HxjMLM3ssG+zxxXgy/Lt9SkNT5pOLE5AoHx6 ViqwOZqoEBOaOTHqzjjlLzfiAIrbatFwsAXeo5oBaUVn9w1IVI6FrD8TiCNg+U3dV/mDqPqpK Z5aJArIEH/sNt9mIQ Subject: [Buildroot] [PATCH v3 2/2] package/qt5webengine: use buildroot cflags/ldflags for arm X-BeenThere: buildroot@busybox.net X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion and development of buildroot List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Julien Corjon , =?utf-8?q?Ga=C3=ABl_Portay?= Errors-To: buildroot-bounces@busybox.net Sender: "buildroot" Signed-off-by: Peter Seiderer --- Changes v2 -> v3: - new patch Notes: - optional patch, maybe the whole setting of the additional buildroot cflags/ldflags is to much? Example command line without this additional patch: .../host/bin/arm-buildroot-linux-gnueabihf-g++ -MMD -MF obj/base/base/base_jumbo_4.o.d -DUSE_SYMBOLIZE -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DNO_TCMALLOC -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DOFFICIAL_BUILD -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DTOOLKIT_QT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCR_SYSROOT_HASH=b2165ab47ab9c4cc780db53ace1b08607d68ae31 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DBASE_IMPLEMENTATION -I. -Igen -I../../3rdparty/chromium -Igen -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pipe -pthread -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wno-psabi -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-deprecated-declarations -fno-delete-null-pointer-checks -Wno-comments -Wno-dangling-else -Wno-packed-not-aligned -Wno-missing-field-initialize rs -Wno-unused-parameter -fno-omit-frame-pointer -g0 -fvisibility=hidden -O2 -fno-ident -fdata-sections -ffunction-sections -std=gnu++14 -Wno-narrowing -Wno-attributes -Wno-class-memaccess -Wno-subobject-linkage -fno-exceptions -fno-rtti --sysroot=../../../../../host/arm-buildroot-linux-gnueabihf/sysroot -fvisibility-inlines-hidden -c gen/base/base_jumbo_4.cc -o obj/base/base/base_jumbo_4.o Example command line with this additional patch: .../host/bin/arm-buildroot-linux-gnueabihf-g++ -MMD -MF obj/base/base/base_jumbo_4.o.d -DUSE_SYMBOLIZE -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DNO_TCMALLOC -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DOFFICIAL_BUILD -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -DTOOLKIT_QT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DCR_SYSROOT_HASH=b2165ab47ab9c4cc780db53ace1b08607d68ae31 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DBASE_IMPLEMENTATION -I. -Igen -I../../3rdparty/chromium -Igen -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -pipe -pthread -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wno-psabi -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-deprecated-declarations -fno-delete-null-pointer-checks -Wno-comments -Wn o-dangling-else -Wno-packed-not-aligned -Wno-missing-field-initializers -Wno-unused-parameter -fno-omit-frame-pointer -g0 -fvisibility=hidden -O2 -fno-ident -fdata-sections -ffunction-sections -std=gnu++14 -Wno-narrowing -Wno-attributes -Wno-class-memaccess -Wno-subobject-linkage -fno-exceptions -fno-rtti --sysroot=../../../../../host/arm-buildroot-linux-gnueabihf/sysroot -fvisibility-inlines-hidden -c gen/base/base_jumbo_4.cc -o obj/base/base/base_jumbo_4.o --- ...n-use-buildroot-provided-cflags-ldfl.patch | 42 +++++++++++++++++++ package/qt5/qt5webengine/qt5webengine.mk | 6 +++ 2 files changed, 48 insertions(+) create mode 100644 package/qt5/qt5webengine/5.12.7/0003-chromium-BUILD.gn-use-buildroot-provided-cflags-ldfl.patch diff --git a/package/qt5/qt5webengine/5.12.7/0003-chromium-BUILD.gn-use-buildroot-provided-cflags-ldfl.patch b/package/qt5/qt5webengine/5.12.7/0003-chromium-BUILD.gn-use-buildroot-provided-cflags-ldfl.patch new file mode 100644 index 0000000000..52ddc2d878 --- /dev/null +++ b/package/qt5/qt5webengine/5.12.7/0003-chromium-BUILD.gn-use-buildroot-provided-cflags-ldfl.patch @@ -0,0 +1,42 @@ +From f647383e9af9896a7a0247d20b3db480c14863f3 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Fri, 6 Mar 2020 18:55:02 +0100 +Subject: [PATCH] chromium/BUILD.gn: use buildroot provided cflags/ldflags + +Signed-off-by: Peter Seiderer +--- + src/3rdparty/chromium/build/config/compiler/BUILD.gn | 11 ++++------- + 1 file changed, 4 insertions(+), 7 deletions(-) + +diff --git a/src/3rdparty/chromium/build/config/compiler/BUILD.gn b/src/3rdparty/chromium/build/config/compiler/BUILD.gn +index 16dec5c6a..e2c5982f5 100644 +--- a/src/3rdparty/chromium/build/config/compiler/BUILD.gn ++++ b/src/3rdparty/chromium/build/config/compiler/BUILD.gn +@@ -672,8 +672,8 @@ config("compiler") { + # TODO(pcc): The contents of .ARM.attributes should be based on the + # -march flag passed at compile time (see llvm.org/pr36291). + if (current_cpu == "arm") { +- # disabled for the buildroot compile +- # ldflags += [ "-march=$arm_arch" ] ++ # will be set by buildroot ++ ldflags += [ @TARGET_LDFLAGS@ ] + } + } + +@@ -753,11 +753,8 @@ config("compiler_cpu_abi") { + ldflags += [ "--target=arm-linux-gnueabihf" ] + } + if (!is_nacl) { +- # disabled for the buildroot compile +- # cflags += [ +- # "-march=$arm_arch", +- # "-mfloat-abi=$arm_float_abi", +- # ] ++ # will be set by buildroot ++ cflags += [ @TARGET_CXXFLAGS@ ] + } + if (arm_tune != "") { + # disabled for the buildroot compile +-- +2.25.1 + diff --git a/package/qt5/qt5webengine/qt5webengine.mk b/package/qt5/qt5webengine/qt5webengine.mk index 7337b67e9d..a60a19df88 100644 --- a/package/qt5/qt5webengine/qt5webengine.mk +++ b/package/qt5/qt5webengine/qt5webengine.mk @@ -169,6 +169,11 @@ define QT5WEBENGINE_CONFIGURE_ARM_THUMB $(SED) 's/^ arm_use_thumb = true$$/ arm_use_thumb = false/' $(@D)/src/3rdparty/chromium/build/config/arm.gni endef endif + +define QT5WEBENGINE_CONFIGURE_COMPILER_FLAGS + $(SED) 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))%g' $(@D)/src/3rdparty/chromium/build/config/compiler/BUILD.gn + $(SED) 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))%g' $(@D)/src/3rdparty/chromium/build/config/compiler/BUILD.gn +endef endif define QT5WEBENGINE_CONFIGURE_CMDS @@ -179,6 +184,7 @@ define QT5WEBENGINE_CONFIGURE_CMDS $(QT5WEBENGINE_CONFIGURE_ARM_TUNE) $(QT5WEBENGINE_CONFIGURE_ARM_NEON) $(QT5WEBENGINE_CONFIGURE_ARM_THUMB) + $(QT5WEBENGINE_CONFIGURE_COMPILER_FLAGS) (cd $(@D); $(TARGET_MAKE_ENV) $(QT5WEBENGINE_ENV) $(HOST_DIR)/bin/qmake $(QT5WEBENGINE_QMAKEFLAGS)) endef