Message ID | 20241219053053.2389046-3-brian.cain@oss.qualcomm.com |
---|---|
State | Changes Requested |
Headers | show |
Series | add hexagon architecture | expand |
Hello Brian, On Wed, 18 Dec 2024 21:30:41 -0800 Brian Cain via buildroot <buildroot@buildroot.org> wrote: > Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com> > --- > toolchain/toolchain-external/Config.in | 6 ++++++ > .../toolchain-external-hexagon/Config.in | 7 +++++++ > .../toolchain-external-hexagon/Config.in.options | 10 ++++++++++ > .../toolchain-external-hexagon.hash | 6 ++++++ > .../toolchain-external-hexagon.mk | 11 +++++++++++ > 5 files changed, 40 insertions(+) Please update the DEVELOPERS file as part of this commit. > create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/Config.in > create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/Config.in.options > create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.hash > create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.mk I believe the toolchain should be perhaps be named toolchain-external-linaro-hexagon toolchain. Indeed, toolchain-external-hexagon is too generic, and could be a name for *any* hexagon toolchain. > diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in > index e91aa16326..7bd5309671 100644 > --- a/toolchain/toolchain-external/Config.in > +++ b/toolchain/toolchain-external/Config.in > @@ -29,6 +29,9 @@ source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in" > # MIPS > source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in" > > +# Hexagon > +source "toolchain/toolchain-external/toolchain-external-hexagon/Config.in" > + > # Bootlin toolchains, available for virtually all architectures > source "toolchain/toolchain-external/toolchain-external-bootlin/Config.in" > > @@ -123,6 +126,9 @@ source "toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.opt > # ARM big-endian > source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options" > > +# Hexagon > +source "toolchain/toolchain-external/toolchain-external-hexagon/Config.in.options" > + > # MIPS > source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options" > > diff --git a/toolchain/toolchain-external/toolchain-external-hexagon/Config.in b/toolchain/toolchain-external/toolchain-external-hexagon/Config.in > new file mode 100644 > index 0000000000..256eeb87dc > --- /dev/null > +++ b/toolchain/toolchain-external/toolchain-external-hexagon/Config.in > @@ -0,0 +1,7 @@ > +comment "Toolchains available for Hexagon DSP" > + > +config BR2_TOOLCHAIN_EXTERNAL_HEXAGON > + bool "Clang/LLVM Hexagon Toolchain" > + depends on BR2_HOSTARCH = "x86_64" || "aarch64" > + select BR2_TOOLCHAIN_EXTERNAL_CLANG As of commit PATCH 02, this Config.in symbol doesn't exist, so you need to adjust the order of the patches so that it gets added earlier. Thanks! Thomas
diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in index e91aa16326..7bd5309671 100644 --- a/toolchain/toolchain-external/Config.in +++ b/toolchain/toolchain-external/Config.in @@ -29,6 +29,9 @@ source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in" # MIPS source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in" +# Hexagon +source "toolchain/toolchain-external/toolchain-external-hexagon/Config.in" + # Bootlin toolchains, available for virtually all architectures source "toolchain/toolchain-external/toolchain-external-bootlin/Config.in" @@ -123,6 +126,9 @@ source "toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.opt # ARM big-endian source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options" +# Hexagon +source "toolchain/toolchain-external/toolchain-external-hexagon/Config.in.options" + # MIPS source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options" diff --git a/toolchain/toolchain-external/toolchain-external-hexagon/Config.in b/toolchain/toolchain-external/toolchain-external-hexagon/Config.in new file mode 100644 index 0000000000..256eeb87dc --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-hexagon/Config.in @@ -0,0 +1,7 @@ +comment "Toolchains available for Hexagon DSP" + +config BR2_TOOLCHAIN_EXTERNAL_HEXAGON + bool "Clang/LLVM Hexagon Toolchain" + depends on BR2_HOSTARCH = "x86_64" || "aarch64" + select BR2_TOOLCHAIN_EXTERNAL_CLANG + select BR2_TOOLCHAIN_EXTERNAL_MUSL diff --git a/toolchain/toolchain-external/toolchain-external-hexagon/Config.in.options b/toolchain/toolchain-external/toolchain-external-hexagon/Config.in.options new file mode 100644 index 0000000000..84611fdd9a --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-hexagon/Config.in.options @@ -0,0 +1,10 @@ + +if BR2_TOOLCHAIN_EXTERNAL_HEXAGON + +config BR2_TOOLCHAIN_EXTERNAL_PREFIX + default "hexagon-unknown-linux-musl" + +config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL + default "toolchain-external-hexagon" + +endif diff --git a/toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.hash b/toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.hash new file mode 100644 index 0000000000..acaa7bbe24 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.hash @@ -0,0 +1,6 @@ +# From https://artifacts.codelinaro.org/artifactory/codelinaro-toolchain-for-hexagon/19.1.5/SHA256SUMS: +sha256 55b41922318f6331590ab7baa7f5dbdd99c109327a9c44a52c5e9878fab148c1 clang+llvm-19.1.5-cross-hexagon-unknown-linux-musl.tar.zst +sha256 7dd6137d3e6f1516f9b2cf252ef3ca6b5b5b1f24e27423c69d88c32d51d6b483 clang+llvm-19.1.5-cross-hexagon-unknown-linux-musl_aarch64-linux-gnu.tar.zst +sha256 91795d124c81d27c3829404627a2a06dab0a8683078ac898520d4a81e8853958 clang+llvm-19.1.5-cross-hexagon-unknown-linux-musl_aarch64-windows-gnu.tar.zst +sha256 f41736f98d6d1d6f03ce6e2b6a032dca9c8d7eba126ca21acce9df7b695c41b0 clang+llvm-19.1.5-cross-hexagon-unknown-linux-musl_x86_64-linux-musl.tar.zst +sha256 3cacc3cd0e5e531d91a9c70953d6793523c9b954e901a56d02c6b926cbca8690 clang+llvm-19.1.5-cross-hexagon-unknown-linux-musl_x86_64-windows-gnu.tar.zst diff --git a/toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.mk b/toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.mk new file mode 100644 index 0000000000..59e763a2e4 --- /dev/null +++ b/toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# toolchain-external-hexagon +# +################################################################################ + +TOOLCHAIN_EXTERNAL_HEXAGON_VERSION = 19.1.5 +TOOLCHAIN_EXTERNAL_HEXAGON_SITE= https://artifacts.codelinaro.org/artifactory/codelinaro-toolchain-for-hexagon/$(TOOLCHAIN_EXTERNAL_HEXAGON_VERSION) +TOOLCHAIN_EXTERNAL_HEXAGON_SOURCE = clang+llvm-$(TOOLCHAIN_EXTERNAL_HEXAGON_VERSION)-cross-$(TOOLCHAIN_EXTERNAL_PREFIX).tar.zst + +$(eval $(toolchain-external-package))
Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com> --- toolchain/toolchain-external/Config.in | 6 ++++++ .../toolchain-external-hexagon/Config.in | 7 +++++++ .../toolchain-external-hexagon/Config.in.options | 10 ++++++++++ .../toolchain-external-hexagon.hash | 6 ++++++ .../toolchain-external-hexagon.mk | 11 +++++++++++ 5 files changed, 40 insertions(+) create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/Config.in create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/Config.in.options create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.hash create mode 100644 toolchain/toolchain-external/toolchain-external-hexagon/toolchain-external-hexagon.mk