[PATCH 1/2] bare/gnu-tools: Update to gcc 12, binutils 2.38 and gdb 11.2

chrisj at rtems.org chrisj at rtems.org
Thu Jun 16 09:38:40 UTC 2022


From: Chris Johns <chrisj at rtems.org>

---
 bare/config/devel/binutils-2.38.cfg      | 12 +++++++
 bare/config/devel/gcc-12-newlib-head.cfg | 40 ++++++++++++++++++++++++
 bare/config/devel/gdb-11.2.cfg           | 12 +++++++
 bare/config/devel/gnu-default-tools.bset | 15 +++++++++
 bare/config/gnu-tools.bset               | 17 ++++++++++
 5 files changed, 96 insertions(+)
 create mode 100644 bare/config/devel/binutils-2.38.cfg
 create mode 100644 bare/config/devel/gcc-12-newlib-head.cfg
 create mode 100644 bare/config/devel/gdb-11.2.cfg
 create mode 100644 bare/config/devel/gnu-default-tools.bset
 create mode 100644 bare/config/gnu-tools.bset

diff --git a/bare/config/devel/binutils-2.38.cfg b/bare/config/devel/binutils-2.38.cfg
new file mode 100644
index 0000000..feac42f
--- /dev/null
+++ b/bare/config/devel/binutils-2.38.cfg
@@ -0,0 +1,12 @@
+%include %{_configdir}/checks.cfg
+%include %{_configdir}/base.cfg
+
+%define binutils_version 2.38
+#%define binutils_external 1
+
+%hash sha512 binutils-%{binutils_version}.tar.bz2 7690b4158bd6587a85c6b98903980b9ac6f16b47f7fd1e60986b0a70388bedcfdc05d75597aa49c81fec1609ce24bed6c26583f76fd2471a9d63394fd9798afc
+
+%define with_deterministic_archives 1
+%define with_64_bit_bfd 1
+
+%include %{_configdir}/binutils-2-1.cfg
diff --git a/bare/config/devel/gcc-12-newlib-head.cfg b/bare/config/devel/gcc-12-newlib-head.cfg
new file mode 100644
index 0000000..ce168ea
--- /dev/null
+++ b/bare/config/devel/gcc-12-newlib-head.cfg
@@ -0,0 +1,40 @@
+%include %{_configdir}/checks.cfg
+%include %{_configdir}/base.cfg
+
+%define gcc_version 197b7ac
+%define gcc_external 1
+%define gcc_expand_name gnu-mirror-gcc-%{gcc_version}
+%source set gcc --rsb-file=%{gcc_expand_name}.tar.gz https://codeload.github.com/RTEMS/gnu-mirror-gcc/tar.gz/%{gcc_version}
+%hash sha512 %{gcc_expand_name}.tar.gz f9eb91029c31ed2ca3c4ce2066d99352f63f55120aaad295b58621786fe76228d182a4421292fa95007ac6b6529a589795fe3e794ac77b0b86f9cf9286125e36
+
+%patch add gcc -p1 https://devel.rtems.org/raw-attachment/ticket/4196/0001-Back-port-v1-of-gcov-tool-merge-stream-to-GCC-12.patch
+%hash sha512 0001-Back-port-v1-of-gcov-tool-merge-stream-to-GCC-12.patch 413f14374856f8bfd2bb94a56f1860fff8fe9a936f33c96fdf6a5a0c5a30e2cf7d05026d0338e8b30015a93d80169a602397076b947c8292ac5b5cdc2237ec4e
+
+%patch add newlib -p1 https://devel.rtems.org/raw-attachment/ticket/4510/0001-aarch64-Add-ILP32-ABI-support-in-assembly-v2.patch
+%hash sha512 0001-aarch64-Add-ILP32-ABI-support-in-assembly-v2.patch 7ca237eabfd5b382713186e1fc290dfc999a353315795ecb8dd0d22fcd1ab7f5bf31f4329954adab91ad04c100dcac0e86d406fdbce8f82cf9dc23842c88caf6
+
+# Following patches are related to compilation on Apple M1/Darwin host platform.
+# They are here to workaround issues with ISL, MPFR and MPC libraries.
+# Upstream projects were already informed so hopefully when RSB moves
+# to more modern libraries versions they may be removed from here.
+# The patches are solely for libisl 0.24, libmpfr 4.1.0 and libmpc 1.2.1
+# See #4657 for more information.
+%patch add isl -p1 https://devel.rtems.org/raw-attachment/ticket/4657/fix-mac-arm64-isl-config.patch
+%hash sha512 fix-mac-arm64-isl-config.patch c07fdb605a6520d194358504731e63b540211ef680383f1ca4ec65b4ac43ae27687534fd7d8196a4dbe83a0ecf2c42a4254c71e609ee484a7614573bc499a2e8
+%patch add mpfr -p1 https://devel.rtems.org/raw-attachment/ticket/4657/fix-mac-arm64-mpfr-config.patch
+%hash sha512 fix-mac-arm64-mpfr-config.patch dc5069df870bd02b7e78ed22c6ad9e9a2bb9ca372ce1a6b7e8fa5b7635dcef35c29f251fe5195c9c2a43513116c12cab1b0e96171cf34bd7fb7d0334c2c740fb
+%patch add mpc -p1 https://devel.rtems.org/raw-attachment/ticket/4657/fix-mac-arm64-mpc-config.patch
+%hash sha512 fix-mac-arm64-mpc-config.patch 2849b11e360ea98e0b4d708c67723ad2d6c7bac6d1e469673f408b0111cf0278429e8bc38fd2b7538dc2d5bb0cc430c646a0fa7f0b6b105a0482a5455fadc8b9
+# Comment above related to #4657 and patches ends here
+
+%define newlib_version 64b2081
+%define newlib_external 1
+%define newlib_expand_name sourceware-mirror-newlib-cygwin-%{newlib_version}
+%source set newlib --rsb-file=newlib-%{newlib_version}.tar.gz https://codeload.github.com/RTEMS/sourceware-mirror-newlib-cygwin/tar.gz/%{newlib_version}
+%hash sha512 newlib-%{newlib_version}.tar.gz 0e142b06b855b78729c3319e31cf5c15b48cea1f90e001ae1e2d61793c496374065c5658e835e6277ae0739af22ea397feb2c1bc2509a6a80ee6c03818efbf55
+
+%define with_threads 1
+%define with_plugin 0
+%define with_iconv 1
+
+%include %{_configdir}/gcc-12.cfg
diff --git a/bare/config/devel/gdb-11.2.cfg b/bare/config/devel/gdb-11.2.cfg
new file mode 100644
index 0000000..31385e7
--- /dev/null
+++ b/bare/config/devel/gdb-11.2.cfg
@@ -0,0 +1,12 @@
+#
+# GDB 11.2
+#
+
+%include %{_configdir}/checks.cfg
+%include %{_configdir}/base.cfg
+
+%define gdb_version 11.2
+%define gdb_src_ext xz
+%hash sha512 gdb-%{gdb_version}.tar.xz 07e9026423438049b11f4f784d57401ece4e940570f613bd6958b3714fe7fbc2c048470bcce3e7d7d9f93331cdf3881d30dcc964cb113a071143a02b28e5b127
+
+%include %{_configdir}/gdb-common-1.cfg
diff --git a/bare/config/devel/gnu-default-tools.bset b/bare/config/devel/gnu-default-tools.bset
new file mode 100644
index 0000000..8b68a5b
--- /dev/null
+++ b/bare/config/devel/gnu-default-tools.bset
@@ -0,0 +1,15 @@
+#
+# Default tools build
+#
+
+%define gcc_version_message RTEMS bare %{rtems_version}, RSB %{_sbgit_id}, Newlib %{newlib_version}
+
+#
+# Build gdb first to raise the Python install error as early as
+# possible. GDB needs expat so it needs to be built before gdb.
+#
+%{with_bare_expat}
+%{with_bare_gmp}
+%{with_bare_gdb}
+%{with_bare_binutils}
+%{with_bare_gcc}
diff --git a/bare/config/gnu-tools.bset b/bare/config/gnu-tools.bset
new file mode 100644
index 0000000..261f125
--- /dev/null
+++ b/bare/config/gnu-tools.bset
@@ -0,0 +1,17 @@
+#
+# Default tools configuration.
+#
+
+#
+# Default bare build. Override on the command line to the
+# the RSB. For example to test the latest version of gcc use:
+#
+#  --with-bare-gcc=tools/gnu-gcc-head-newlib-head
+#
+%defineifnot with_bare_expat    devel/expat-2.4.8-1
+%defineifnot with_bare_gmp      devel/gmp-6.2.1
+%defineifnot with_bare_gdb      devel/gdb-11.2
+%defineifnot with_bare_binutils devel/binutils-2.38
+%defineifnot with_bare_gcc      devel/gcc-12-newlib-head
+
+devel/gnu-default-tools.bset
-- 
2.24.1



More information about the devel mailing list