Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v9 01/11] toolchain/toolchain-bare-metal-buildroot: new toolchain
@ 2024-01-31 11:22 Neal Frager via buildroot
  2024-01-31 11:22 ` [Buildroot] [PATCH v9 02/11] package/binutils-bare-metal: new package Neal Frager via buildroot
                   ` (10 more replies)
  0 siblings, 11 replies; 22+ messages in thread
From: Neal Frager via buildroot @ 2024-01-31 11:22 UTC (permalink / raw)
  To: buildroot
  Cc: ibai.erkiaga-elorza, luca.ceresoli, thomas.petazzoni, Neal Frager,
	michal.simek

This patch adds a new virtual package for adding a bare-metal
toolchain to Buildroot. For now, it depends on nothing, so it will not
actually build anything, but it defines some options that will be
needed by the various packages that will be part of this toolchain
build process.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Signed-off-by: Ibai Erkiaga <ibai.erkiaga-elorza@amd.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
---
 DEVELOPERS                                           |  4 ++++
 toolchain/Config.in                                  | 10 ++++++++++
 toolchain/toolchain-bare-metal-buildroot/Config.in   |  9 +++++++++
 .../toolchain-bare-metal-buildroot.mk                | 12 ++++++++++++
 utils/checksymbolslib/br.py                          |  3 +++
 5 files changed, 38 insertions(+)
 create mode 100644 toolchain/toolchain-bare-metal-buildroot/Config.in
 create mode 100644 toolchain/toolchain-bare-metal-buildroot/toolchain-bare-metal-buildroot.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index cc9bc5b5cc..4b97dcfbd5 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1385,6 +1385,9 @@ F:	package/mrp/
 N:	Ian Haylock <haylocki@yahoo.co.uk>
 F:	package/python-rpi-gpio/
 
+N:	Ibai Erkiaga <ibai.erkiaga-elorza@amd.com>
+F:	toolchain/toolchain-bare-metal-buildroot/
+
 N:	Ignacy Gawędzki <ignacy.gawedzki@green-communications.fr>
 F:	package/angularjs/
 
@@ -2239,6 +2242,7 @@ F:	configs/zynqmp_zcu104_defconfig
 F:	configs/zynqmp_zcu106_defconfig
 F:	package/bootgen/
 F:	package/versal-firmware/
+F:	toolchain/toolchain-bare-metal-buildroot/
 
 N:	Nicola Di Lieto <nicola.dilieto@gmail.com>
 F:	package/uacme/
diff --git a/toolchain/Config.in b/toolchain/Config.in
index 34e0ae2c5f..64a07f91dc 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -923,4 +923,14 @@ config BR2_TOOLCHAIN_HAS_LIBQUADMATH
 	default y if BR2_i386 || BR2_x86_64
 	default y if BR2_POWERPC_CPU_HAS_VSX
 
+comment "Bare metal toolchain"
+
+config BR2_TOOLCHAIN_BARE_METAL_BUILDROOT
+	bool "Build a bare metal toolchain"
+	help
+	  Select if you need a bare-metal toolchain for building
+	  platform specific firmware images.
+
+source "toolchain/toolchain-bare-metal-buildroot/Config.in"
+
 endmenu
diff --git a/toolchain/toolchain-bare-metal-buildroot/Config.in b/toolchain/toolchain-bare-metal-buildroot/Config.in
new file mode 100644
index 0000000000..3c99c7e1b5
--- /dev/null
+++ b/toolchain/toolchain-bare-metal-buildroot/Config.in
@@ -0,0 +1,9 @@
+if BR2_TOOLCHAIN_BARE_METAL_BUILDROOT
+
+config BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH
+	string "architecture tuple"
+	help
+	  This option allows to define the architecture tuple for the
+	  bare-metal toolchain.
+
+endif # BR2_TOOLCHAIN_BARE_METAL_BUILDROOT
diff --git a/toolchain/toolchain-bare-metal-buildroot/toolchain-bare-metal-buildroot.mk b/toolchain/toolchain-bare-metal-buildroot/toolchain-bare-metal-buildroot.mk
new file mode 100644
index 0000000000..4dc36ef3f3
--- /dev/null
+++ b/toolchain/toolchain-bare-metal-buildroot/toolchain-bare-metal-buildroot.mk
@@ -0,0 +1,12 @@
+################################################################################
+#
+# toolchain-bare-metal-buildroot
+#
+################################################################################
+
+TOOLCHAIN_BARE_METAL_BUILDROOT_DEPENDENCIES =
+TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH_TUPLE = $(call qstrip,$(BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH))
+TOOLCHAIN_BARE_METAL_BUILDROOT_SYSROOT = $(HOST_DIR)/$(TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH_TUPLE)/sysroot
+TOOLCHAIN_BARE_METAL_BUILDROOT_ADD_TOOLCHAIN_DEPENDENCY = NO
+
+$(eval $(virtual-package))
diff --git a/utils/checksymbolslib/br.py b/utils/checksymbolslib/br.py
index 846a609829..f9dc336e64 100644
--- a/utils/checksymbolslib/br.py
+++ b/utils/checksymbolslib/br.py
@@ -36,11 +36,14 @@ symbols_defined_only_for_barebox_variant = [
 ]
 # toolchain/toolchain/toolchain.mk
 # toolchain/toolchain-buildroot/toolchain-buildroot.mk
+# toolchain/toolchain-bare-metal-buildroot/toolchain-bare-metal-buildroot.mk
 symbols_not_defined_for_fake_virtual_packages = [
     'BR2_PACKAGE_HAS_TOOLCHAIN',
     'BR2_PACKAGE_HAS_TOOLCHAIN_BUILDROOT',
+    'BR2_PACKAGE_HAS_TOOLCHAIN_BARE_METAL_BUILDROOT',
     'BR2_PACKAGE_PROVIDES_TOOLCHAIN',
     'BR2_PACKAGE_PROVIDES_TOOLCHAIN_BUILDROOT',
+    'BR2_PACKAGE_PROVIDES_TOOLCHAIN_BARE_METAL_BUILDROOT',
 ]
 # fs/common.mk
 suffixes_not_defined_for_all_rootfs_types = [
-- 
2.25.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2024-03-03  8:23 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-31 11:22 [Buildroot] [PATCH v9 01/11] toolchain/toolchain-bare-metal-buildroot: new toolchain Neal Frager via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 02/11] package/binutils-bare-metal: new package Neal Frager via buildroot
2024-02-06 17:52   ` Thomas Petazzoni via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 03/11] package/gcc-bare-metal: " Neal Frager via buildroot
2024-02-06 17:52   ` Thomas Petazzoni via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 04/11] package/newlib-bare-metal: " Neal Frager via buildroot
2024-02-02 12:11   ` Frager, Neal via buildroot
2024-02-06 17:53     ` Thomas Petazzoni via buildroot
2024-02-06 17:52   ` Thomas Petazzoni via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 05/11] toolchain/toolchain-bare-metal-buildroot: wire up newlib-bare-metal Neal Frager via buildroot
2024-02-06 17:53   ` Thomas Petazzoni via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 06/11] boot/zynqmp-firmware: new boot firmware Neal Frager via buildroot
2024-02-07  9:00   ` Frager, Neal via buildroot
2024-02-22 16:35     ` Frager, Neal via buildroot
2024-02-29  9:29       ` Luca Ceresoli via buildroot
2024-03-03  8:23         ` Frager, Neal via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 07/11] boot/uboot.mk: new zynqmp pmufw build option Neal Frager via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 08/11] configs/zynqmp*: build pmufw source Neal Frager via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 09/11] boot/versal-firmware: new boot firmware Neal Frager via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 10/11] configs/versal_vck190_defconfig: build plm and psmfw source Neal Frager via buildroot
2024-01-31 11:22 ` [Buildroot] [PATCH v9 11/11] package/versal-firmware: remove package Neal Frager via buildroot
2024-02-06 17:52 ` [Buildroot] [PATCH v9 01/11] toolchain/toolchain-bare-metal-buildroot: new toolchain Thomas Petazzoni via buildroot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox