* [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64
@ 2021-07-06 15:42 Ross Burton
2021-07-06 15:42 ` [PATCH 2/2] CI: add packaging test for the binary Arm compilers Ross Burton
2021-07-06 20:10 ` [meta-arm] [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64 Denys Dmytriyenko
0 siblings, 2 replies; 5+ messages in thread
From: Ross Burton @ 2021-07-06 15:42 UTC (permalink / raw)
To: meta-arm
The tarball has been regenerated with new license texts, so the
checksums are different.
Also, patch out the host architecture test in the installer: we might
want to package the armcompiler for a x86 target on a arm64 machine.
Change-Id: Iedf0113c53b6567e3e4e716e2a0db98776d1da6d
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
.../armcompiler/no-uname.patch | 14 ++++++++++++++
.../external-arm-toolchain/armcompiler_6.16.bb | 17 ++++++++++++-----
2 files changed, 26 insertions(+), 5 deletions(-)
create mode 100644 meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch
diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch
new file mode 100644
index 0000000..7c95807
--- /dev/null
+++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch
@@ -0,0 +1,14 @@
+The install script has an explicit check that the current host is x86-64, which
+means we can't build armcompiler for x86-64 targets on arm64. Pad the
+replacement host with whitespace so that the installer offset doesn't change.
+
+Upstream-Status: Inappropriate
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+
+--- a/install_x86_64.sh.orig 2021-07-06 14:11:47.632155370 +0100
++++ b/install_x86_64.sh 2021-07-06 14:11:58.393163350 +0100
+@@ -470,3 +470,3 @@
+ fi
+-host=`/bin/uname -m`
++host=x86_64
+ echo --- Host target check...[${host}]
diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb
index 60656b8..f192c61 100644
--- a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb
+++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb
@@ -17,24 +17,31 @@ LICENSE = "Armcompiler-License-agreement & Armcompiler-Redistributables & \
Armcompiler-Supplementary-terms & Armcompiler-Third-party-licenses"
LICENSE_FLAGS = "armcompiler"
-LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=40cd57dbb1f9d111fb6923945849d51c \
+LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=19faf912b534478d28f60dfa24659c17 \
file://license_terms/redistributables.txt;md5=e510e47f7f5be1356ea6218f5b1f6c55 \
file://license_terms/supplementary_terms.txt;md5=17a2efdbd320ceda48a3521747e02dd9 \
- file://license_terms/third_party_licenses.txt;md5=6273fa29eb26c0093e1a7deaef7bafec "
+ file://license_terms/third_party_licenses.txt;md5=c351a9bed613cf88d4fccd6f0a5e57af "
ARMCLANG_VERSION = "DS500-BN-00026-r5p0-18rel0"
COMPATIBLE_HOST = "x86_64.*-linux"
-SRC_URI = "https://developer.arm.com/-/media/Files/downloads/compiler/${ARMCLANG_VERSION}.tgz;subdir=${ARMCLANG_VERSION}"
-SRC_URI[md5sum] = "d41d8cd98f00b204e9800998ecf8427e"
-SRC_URI[sha256sum] = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
+SRC_URI = "https://developer.arm.com/-/media/Files/downloads/compiler/${ARMCLANG_VERSION}.tgz;subdir=${ARMCLANG_VERSION} \
+ file://no-uname.patch"
+SRC_URI[sha256sum] = "d9fb99e7550366f884c31f74953066da64301fb30601cb55278d738459c22557"
UPSTREAM_CHECK_URI = "https://developer.arm.com/tools-and-software/embedded/arm-compiler/downloads/"
UPSTREAM_CHECK_REGEX = "Download Arm Compiler.*,(?P<pver>[\d\.]+)"
S = "${WORKDIR}/${ARMCLANG_VERSION}"
+do_patch() {
+ # The script has an explicit check that the current host is x86-64, which means we can't
+ # build armcompiler for x86-64 targets on arm64. Pad the replacement host with whitespace
+ # so that the installer offset doesn't change.
+ sed -ie 's/^host=.*/host=x86_64 /' ${S}/install_x86_64.sh
+}
+
do_install() {
install -d ${D}${datadir}/armclang/
# Commercial license flag set, so recipe will only install when explicitly agreed to it already
--
2.25.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] CI: add packaging test for the binary Arm compilers
2021-07-06 15:42 [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64 Ross Burton
@ 2021-07-06 15:42 ` Ross Burton
2021-07-06 20:12 ` [meta-arm] " Denys Dmytriyenko
2021-07-06 20:10 ` [meta-arm] [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64 Denys Dmytriyenko
1 sibling, 1 reply; 5+ messages in thread
From: Ross Burton @ 2021-07-06 15:42 UTC (permalink / raw)
To: meta-arm
Add a trivial job that verifies the binary Arm compiler packages all
fetch and package correctly for both x86-64 and arm64.
Change-Id: I1e29cc175d66d418630505dcac1a87cdf5c0024a
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
.gitlab-ci.yml | 3 +++
ci/toolchains.yml | 20 ++++++++++++++++++++
2 files changed, 23 insertions(+)
create mode 100644 ci/toolchains.yml
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 50eb88b..e0f1e74 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -101,6 +101,9 @@ check-layers:
- kas shell --update --force-checkout ci/base.yml:ci/meta-arm-autonomy.yml:ci/meta-python.yml --command \
"$CI_PROJECT_DIR/ci/check-layers.py $CI_PROJECT_DIR/ci/check-layers.yml $CI_PROJECT_DIR $KAS_WORK_DIR"
+toolchains:
+ extends: .build
+
corstone500:
extends: .build
diff --git a/ci/toolchains.yml b/ci/toolchains.yml
new file mode 100644
index 0000000..6a8ebb1
--- /dev/null
+++ b/ci/toolchains.yml
@@ -0,0 +1,20 @@
+header:
+ version: 9
+ includes:
+ - base.yml
+
+# Target is arm64 and SDK is x86-64 to ensure that we exercise both
+# architectures
+
+machine: qemuarm64
+local_conf_header:
+ toolchains: |
+ SDKMACHINE = "x86_64"
+
+# No target armcompiler as currently there is no arm64 build
+target:
+ - nativesdk-armcompiler
+ - gcc-aarch64-none-elf
+ - nativesdk-gcc-aarch64-none-elf
+ - gcc-arm-none-eabi
+ - nativesdk-gcc-arm-none-eabi
--
2.25.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [meta-arm] [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64
2021-07-06 15:42 [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64 Ross Burton
2021-07-06 15:42 ` [PATCH 2/2] CI: add packaging test for the binary Arm compilers Ross Burton
@ 2021-07-06 20:10 ` Denys Dmytriyenko
2021-07-07 9:16 ` Ross Burton
1 sibling, 1 reply; 5+ messages in thread
From: Denys Dmytriyenko @ 2021-07-06 20:10 UTC (permalink / raw)
To: Ross Burton; +Cc: meta-arm
On Tue, Jul 06, 2021 at 04:42:55PM +0100, Ross Burton wrote:
> The tarball has been regenerated with new license texts, so the
> checksums are different.
>
> Also, patch out the host architecture test in the installer: we might
> want to package the armcompiler for a x86 target on a arm64 machine.
>
> Change-Id: Iedf0113c53b6567e3e4e716e2a0db98776d1da6d
> Signed-off-by: Ross Burton <ross.burton@arm.com>
> ---
> .../armcompiler/no-uname.patch | 14 ++++++++++++++
> .../external-arm-toolchain/armcompiler_6.16.bb | 17 ++++++++++++-----
> 2 files changed, 26 insertions(+), 5 deletions(-)
> create mode 100644 meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch
>
> diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch
> new file mode 100644
> index 0000000..7c95807
> --- /dev/null
> +++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler/no-uname.patch
> @@ -0,0 +1,14 @@
> +The install script has an explicit check that the current host is x86-64, which
> +means we can't build armcompiler for x86-64 targets on arm64. Pad the
> +replacement host with whitespace so that the installer offset doesn't change.
I see you have a patch file, but you also do a sed replacement in do_patch().
I guess the sed replacement is generic enough to work w/o the patch file?
Alternatively, would this shell line in the patch file work alone as well:
host="x86_64 "
Otherwise you'd lose those whitespaces at the end of the line due to any
MUA/MTA/Patchwork transitions...
> +Upstream-Status: Inappropriate
> +Signed-off-by: Ross Burton <ross.burton@arm.com>
> +
> +--- a/install_x86_64.sh.orig 2021-07-06 14:11:47.632155370 +0100
> ++++ b/install_x86_64.sh 2021-07-06 14:11:58.393163350 +0100
> +@@ -470,3 +470,3 @@
> + fi
> +-host=`/bin/uname -m`
> ++host=x86_64
> + echo --- Host target check...[${host}]
> diff --git a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb
> index 60656b8..f192c61 100644
> --- a/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb
> +++ b/meta-arm-toolchain/recipes-devtools/external-arm-toolchain/armcompiler_6.16.bb
> @@ -17,24 +17,31 @@ LICENSE = "Armcompiler-License-agreement & Armcompiler-Redistributables & \
> Armcompiler-Supplementary-terms & Armcompiler-Third-party-licenses"
> LICENSE_FLAGS = "armcompiler"
>
> -LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=40cd57dbb1f9d111fb6923945849d51c \
> +LIC_FILES_CHKSUM = "file://license_terms/license_agreement.txt;md5=19faf912b534478d28f60dfa24659c17 \
> file://license_terms/redistributables.txt;md5=e510e47f7f5be1356ea6218f5b1f6c55 \
> file://license_terms/supplementary_terms.txt;md5=17a2efdbd320ceda48a3521747e02dd9 \
> - file://license_terms/third_party_licenses.txt;md5=6273fa29eb26c0093e1a7deaef7bafec "
> + file://license_terms/third_party_licenses.txt;md5=c351a9bed613cf88d4fccd6f0a5e57af "
>
> ARMCLANG_VERSION = "DS500-BN-00026-r5p0-18rel0"
>
> COMPATIBLE_HOST = "x86_64.*-linux"
>
> -SRC_URI = "https://developer.arm.com/-/media/Files/downloads/compiler/${ARMCLANG_VERSION}.tgz;subdir=${ARMCLANG_VERSION}"
> -SRC_URI[md5sum] = "d41d8cd98f00b204e9800998ecf8427e"
> -SRC_URI[sha256sum] = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
> +SRC_URI = "https://developer.arm.com/-/media/Files/downloads/compiler/${ARMCLANG_VERSION}.tgz;subdir=${ARMCLANG_VERSION} \
> + file://no-uname.patch"
> +SRC_URI[sha256sum] = "d9fb99e7550366f884c31f74953066da64301fb30601cb55278d738459c22557"
>
> UPSTREAM_CHECK_URI = "https://developer.arm.com/tools-and-software/embedded/arm-compiler/downloads/"
> UPSTREAM_CHECK_REGEX = "Download Arm Compiler.*,(?P<pver>[\d\.]+)"
>
> S = "${WORKDIR}/${ARMCLANG_VERSION}"
>
> +do_patch() {
> + # The script has an explicit check that the current host is x86-64, which means we can't
> + # build armcompiler for x86-64 targets on arm64. Pad the replacement host with whitespace
> + # so that the installer offset doesn't change.
> + sed -ie 's/^host=.*/host=x86_64 /' ${S}/install_x86_64.sh
> +}
> +
> do_install() {
> install -d ${D}${datadir}/armclang/
> # Commercial license flag set, so recipe will only install when explicitly agreed to it already
> --
> 2.25.1
>
--
Regards,
Denys Dmytriyenko <denis@denix.org>
PGP: 0x420902729A92C964 - https://denix.org/0x420902729A92C964
Fingerprint: 25FC E4A5 8A72 2F69 1186 6D76 4209 0272 9A92 C964
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [meta-arm] [PATCH 2/2] CI: add packaging test for the binary Arm compilers
2021-07-06 15:42 ` [PATCH 2/2] CI: add packaging test for the binary Arm compilers Ross Burton
@ 2021-07-06 20:12 ` Denys Dmytriyenko
0 siblings, 0 replies; 5+ messages in thread
From: Denys Dmytriyenko @ 2021-07-06 20:12 UTC (permalink / raw)
To: Ross Burton; +Cc: meta-arm
On Tue, Jul 06, 2021 at 04:42:56PM +0100, Ross Burton wrote:
> Add a trivial job that verifies the binary Arm compiler packages all
> fetch and package correctly for both x86-64 and arm64.
Thanks a lot for adding this tests!
> Change-Id: I1e29cc175d66d418630505dcac1a87cdf5c0024a
> Signed-off-by: Ross Burton <ross.burton@arm.com>
Reviewed-by: Denys Dmytriyenko <denis@denix.org>
> ---
> .gitlab-ci.yml | 3 +++
> ci/toolchains.yml | 20 ++++++++++++++++++++
> 2 files changed, 23 insertions(+)
> create mode 100644 ci/toolchains.yml
>
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 50eb88b..e0f1e74 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -101,6 +101,9 @@ check-layers:
> - kas shell --update --force-checkout ci/base.yml:ci/meta-arm-autonomy.yml:ci/meta-python.yml --command \
> "$CI_PROJECT_DIR/ci/check-layers.py $CI_PROJECT_DIR/ci/check-layers.yml $CI_PROJECT_DIR $KAS_WORK_DIR"
>
> +toolchains:
> + extends: .build
> +
> corstone500:
> extends: .build
>
> diff --git a/ci/toolchains.yml b/ci/toolchains.yml
> new file mode 100644
> index 0000000..6a8ebb1
> --- /dev/null
> +++ b/ci/toolchains.yml
> @@ -0,0 +1,20 @@
> +header:
> + version: 9
> + includes:
> + - base.yml
> +
> +# Target is arm64 and SDK is x86-64 to ensure that we exercise both
> +# architectures
> +
> +machine: qemuarm64
> +local_conf_header:
> + toolchains: |
> + SDKMACHINE = "x86_64"
> +
> +# No target armcompiler as currently there is no arm64 build
> +target:
> + - nativesdk-armcompiler
> + - gcc-aarch64-none-elf
> + - nativesdk-gcc-aarch64-none-elf
> + - gcc-arm-none-eabi
> + - nativesdk-gcc-arm-none-eabi
> --
> 2.25.1
>
--
Regards,
Denys Dmytriyenko <denis@denix.org>
PGP: 0x420902729A92C964 - https://denix.org/0x420902729A92C964
Fingerprint: 25FC E4A5 8A72 2F69 1186 6D76 4209 0272 9A92 C964
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [meta-arm] [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64
2021-07-06 20:10 ` [meta-arm] [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64 Denys Dmytriyenko
@ 2021-07-07 9:16 ` Ross Burton
0 siblings, 0 replies; 5+ messages in thread
From: Ross Burton @ 2021-07-07 9:16 UTC (permalink / raw)
To: Denys Dmytriyenko; +Cc: meta-arm
On Tue, 6 Jul 2021 at 21:10, Denys Dmytriyenko <denis@denix.org> wrote:
> I see you have a patch file, but you also do a sed replacement in do_patch().
> I guess the sed replacement is generic enough to work w/o the patch file?
> Alternatively, would this shell line in the patch file work alone as well:
So I originally did a sed, then switched to a patch... and failed to
remove the sed. <facepalm>
v2 incoming.
Ross
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-07-07 9:16 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-06 15:42 [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64 Ross Burton
2021-07-06 15:42 ` [PATCH 2/2] CI: add packaging test for the binary Arm compilers Ross Burton
2021-07-06 20:12 ` [meta-arm] " Denys Dmytriyenko
2021-07-06 20:10 ` [meta-arm] [PATCH 1/2] arm-toolchain/armcompiler: fix checksums and installation on arm64 Denys Dmytriyenko
2021-07-07 9:16 ` Ross Burton
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.