diff --git a/_multibuild b/_multibuild
new file mode 100644
index 0000000..ad55864
--- /dev/null
+++ b/_multibuild
@@ -0,0 +1,6 @@
+
+ arm-none
+ epiphany
+ riscv64
+ rx
+
diff --git a/cross-arm-none-newlib-devel.changes b/cross-arm-none-newlib-devel.changes
deleted file mode 100644
index d0fb072..0000000
--- a/cross-arm-none-newlib-devel.changes
+++ /dev/null
@@ -1,132 +0,0 @@
--------------------------------------------------------------------
-Mon Dec 7 09:17:44 UTC 2020 - Guillaume GARDET
-
-- Use defined gcc version for all architectures
-
--------------------------------------------------------------------
-Tue Oct 27 03:49:05 UTC 2020 - Matthew Trescott
-
-- Update to v3.3.0
- * Fixes assembly of trap.S when building ARM multilibs (related
- to [bsc#1106014]
-- Remove unused configure flag --with-multilib-list. Newlib's configure
- script obtains this information from the GCC used to build it.
-
--------------------------------------------------------------------
-Sun Jun 23 01:00:01 UTC 2019 - Andreas Färber
-
-- Update to v3.1.0
-
--------------------------------------------------------------------
-Mon May 27 19:59:12 UTC 2019 - matz@suse.com
-
-- On riscv64 force gcc 8 as bootstrap compiler
-
--------------------------------------------------------------------
-Mon Dec 24 13:49:40 UTC 2018 - Jan Engelhardt
-
-- Trim redundant license mention.
-
--------------------------------------------------------------------
-Sat May 12 21:46:42 UTC 2018 - afaerber@suse.de
-
-- Add riscv64 target
-
--------------------------------------------------------------------
-Sat May 12 20:31:49 UTC 2018 - afaerber@suse.de
-
-- Update SPDX syntax
-
--------------------------------------------------------------------
-Sun Mar 11 18:44:09 UTC 2018 - afaerber@suse.de
-
-- Add arm-none-eabi target
-
--------------------------------------------------------------------
-Sun Mar 11 17:44:01 UTC 2018 - afaerber@suse.de
-
-- Update to v3.0.0
-
--------------------------------------------------------------------
-Sun Mar 11 16:50:55 UTC 2018 - afaerber@suse.de
-
-- Prepare for %cross_arch with dashes by consistently quoting
-- Leave the choice of cross-*-binutils to cross-*-gcc*
-- Update to v2.5.0
-
--------------------------------------------------------------------
-Wed Jan 24 09:29:00 UTC 2018 - rguenther@suse.com
-
-- Handle debugsources.list to debugsourcefiles.list rename of new rpm.
-
--------------------------------------------------------------------
-Fri Jul 1 12:32:49 UTC 2016 - rguenther@suse.com
-
-- Add rx and epiphany targets
-
--------------------------------------------------------------------
-Tue May 17 17:55:35 UTC 2016 - afaerber@suse.de
-
-- Drop newlib-rpmlintrc
-
--------------------------------------------------------------------
-Sat May 14 00:18:57 UTC 2016 - afaerber@suse.de
-
-- Apply epiphany-fixes.diff not only to cross builds (.spec.in) but
- also in newlib.spec, to please factory-auto checker (sr#395228)
-
--------------------------------------------------------------------
-Fri May 13 16:57:05 UTC 2016 - afaerber@suse.de
-
-- Prepare rl78 target
-- Update to 2.4.0
-* Info files are no longer built
-* Package all license and read-me files
-- Clean up makeinfo dependency
-- Drop cross .spec files in preparation for Factory submission
-
--------------------------------------------------------------------
-Mon Jul 20 21:52:07 UTC 2015 - afaerber@suse.de
-
-- Update to 2.2.0.20150623
-- Add cross-rx-newlib-devel package
-- Revert installing files to sysroot
-
--------------------------------------------------------------------
-Fri Jul 10 21:50:42 UTC 2015 - afaerber@suse.de
-
-- Switch cross template to gcc5
-
--------------------------------------------------------------------
-Mon Apr 6 15:53:44 UTC 2015 - afaerber@suse.de
-
-- Install target files to sysroot
-
--------------------------------------------------------------------
-Sat Nov 1 00:52:40 UTC 2014 - afaerber@suse.de
-
-- Enable native builds
-
--------------------------------------------------------------------
-Fri Oct 31 21:08:45 UTC 2014 - afaerber@suse.de
-
-- epiphany-fixes.diff: Drop executable permissions of
- libepiphany.a and crt0.o
-
--------------------------------------------------------------------
-Fri Oct 31 20:05:26 UTC 2014 - afaerber@suse.de
-
-- Turn cross-epiphany-newlib into generic newlib package
-* Rename packages to -devel to avoid empty -newlib packages
-
--------------------------------------------------------------------
-Tue Oct 21 07:21:21 UTC 2014 - afaerber@suse.de
-
-- Update to official 2.1.0 tarball
-* Drop portability.patch
-
--------------------------------------------------------------------
-Tue Sep 30 02:29:16 UTC 2014 - afaerber@suse.de
-
-- Initial
-
diff --git a/cross-arm-none-newlib-devel.spec b/cross-arm-none-newlib-devel.spec
deleted file mode 100644
index 3f2f1aa..0000000
--- a/cross-arm-none-newlib-devel.spec
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# spec file for package cross-arm-none-newlib-devel
-#
-# Copyright (c) 2020 SUSE LLC
-#
-# All modifications and additions to the file contributed by third parties
-# remain the property of their copyright owners, unless otherwise agreed
-# upon. The license for this file, and modifications and additions to the
-# file, is the same license as for the pristine package itself (unless the
-# license for the pristine package is not an Open Source License, in which
-# case the license is the MIT License). An "Open Source License" is a
-# license that conforms to the Open Source Definition (Version 1.9)
-# published by the Open Source Initiative.
-
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
-#
-
-
-%define cross_arch arm-none
-
-%define gcc_cross_arch %{cross_arch}
-%if "%{cross_arch}" == "riscv64"
-%define gcc_cross_arch %{cross_arch}-elf
-%endif
-
-Name: cross-%{cross_arch}-newlib-devel
-Version: 3.3.0
-Release: 0
-Summary: C library intended for use on %{cross_arch} embedded systems
-License: BSD-3-Clause AND MIT AND LGPL-2.0-or-later AND ISC
-Group: Development/Tools
-URL: https://sourceware.org/newlib/
-Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
-
-Patch1: epiphany-fixes.diff
-
-BuildRequires: cross-%{gcc_cross_arch}-gcc%{gcc_version}-bootstrap
-%if %{suse_version} > 1220
-BuildRequires: makeinfo
-%else
-BuildRequires: texinfo
-%endif
-
-%description
-Newlib is a C library intended for use on embedded systems. It is a
-conglomeration of several library parts.
-
-%define target %{cross_arch}
-%if "%{cross_arch}" == "epiphany" || "%{cross_arch}" == "riscv32" || "%{cross_arch}" == "riscv64" || "%{cross_arch}" == "rl78" || "%{cross_arch}" == "rx"
-%define target %{cross_arch}-elf
-%endif
-%if "%{cross_arch}" == "arm-none"
-%define target %{cross_arch}-eabi
-%endif
-%if "%{cross_arch}" == "spu"
-%define sysroot /usr/spu
-%else
-%define sysroot %{_prefix}/%{target}/sys-root
-%endif
-
-%prep
-%setup -q -n newlib-%{version}
-%patch1 -p1
-
-%build
-mkdir build-dir
-cd build-dir
-../configure \
- --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
- --target=%{target} \
- --with-build-sysroot=%{sysroot}
-make %{?_smp_mflags}
-
-%install
-# All binaries built are for the target architecture - don't damage them.
-export NO_BRP_STRIP_DEBUG=true
-export NO_DEBUGINFO_STRIP_DEBUG=true
-%define __debug_install_post %{nil}
-: >debugfiles.list
-: >debugsourcefiles.list
-: >debugsources.list
-
-cd build-dir
-make install DESTDIR=%{buildroot}
-
-%files
-%defattr(-,root,root,-)
-%{_prefix}/%{target}/
-
-%changelog
diff --git a/cross-epiphany-newlib-devel.changes b/cross-epiphany-newlib-devel.changes
deleted file mode 100644
index d0fb072..0000000
--- a/cross-epiphany-newlib-devel.changes
+++ /dev/null
@@ -1,132 +0,0 @@
--------------------------------------------------------------------
-Mon Dec 7 09:17:44 UTC 2020 - Guillaume GARDET
-
-- Use defined gcc version for all architectures
-
--------------------------------------------------------------------
-Tue Oct 27 03:49:05 UTC 2020 - Matthew Trescott
-
-- Update to v3.3.0
- * Fixes assembly of trap.S when building ARM multilibs (related
- to [bsc#1106014]
-- Remove unused configure flag --with-multilib-list. Newlib's configure
- script obtains this information from the GCC used to build it.
-
--------------------------------------------------------------------
-Sun Jun 23 01:00:01 UTC 2019 - Andreas Färber
-
-- Update to v3.1.0
-
--------------------------------------------------------------------
-Mon May 27 19:59:12 UTC 2019 - matz@suse.com
-
-- On riscv64 force gcc 8 as bootstrap compiler
-
--------------------------------------------------------------------
-Mon Dec 24 13:49:40 UTC 2018 - Jan Engelhardt
-
-- Trim redundant license mention.
-
--------------------------------------------------------------------
-Sat May 12 21:46:42 UTC 2018 - afaerber@suse.de
-
-- Add riscv64 target
-
--------------------------------------------------------------------
-Sat May 12 20:31:49 UTC 2018 - afaerber@suse.de
-
-- Update SPDX syntax
-
--------------------------------------------------------------------
-Sun Mar 11 18:44:09 UTC 2018 - afaerber@suse.de
-
-- Add arm-none-eabi target
-
--------------------------------------------------------------------
-Sun Mar 11 17:44:01 UTC 2018 - afaerber@suse.de
-
-- Update to v3.0.0
-
--------------------------------------------------------------------
-Sun Mar 11 16:50:55 UTC 2018 - afaerber@suse.de
-
-- Prepare for %cross_arch with dashes by consistently quoting
-- Leave the choice of cross-*-binutils to cross-*-gcc*
-- Update to v2.5.0
-
--------------------------------------------------------------------
-Wed Jan 24 09:29:00 UTC 2018 - rguenther@suse.com
-
-- Handle debugsources.list to debugsourcefiles.list rename of new rpm.
-
--------------------------------------------------------------------
-Fri Jul 1 12:32:49 UTC 2016 - rguenther@suse.com
-
-- Add rx and epiphany targets
-
--------------------------------------------------------------------
-Tue May 17 17:55:35 UTC 2016 - afaerber@suse.de
-
-- Drop newlib-rpmlintrc
-
--------------------------------------------------------------------
-Sat May 14 00:18:57 UTC 2016 - afaerber@suse.de
-
-- Apply epiphany-fixes.diff not only to cross builds (.spec.in) but
- also in newlib.spec, to please factory-auto checker (sr#395228)
-
--------------------------------------------------------------------
-Fri May 13 16:57:05 UTC 2016 - afaerber@suse.de
-
-- Prepare rl78 target
-- Update to 2.4.0
-* Info files are no longer built
-* Package all license and read-me files
-- Clean up makeinfo dependency
-- Drop cross .spec files in preparation for Factory submission
-
--------------------------------------------------------------------
-Mon Jul 20 21:52:07 UTC 2015 - afaerber@suse.de
-
-- Update to 2.2.0.20150623
-- Add cross-rx-newlib-devel package
-- Revert installing files to sysroot
-
--------------------------------------------------------------------
-Fri Jul 10 21:50:42 UTC 2015 - afaerber@suse.de
-
-- Switch cross template to gcc5
-
--------------------------------------------------------------------
-Mon Apr 6 15:53:44 UTC 2015 - afaerber@suse.de
-
-- Install target files to sysroot
-
--------------------------------------------------------------------
-Sat Nov 1 00:52:40 UTC 2014 - afaerber@suse.de
-
-- Enable native builds
-
--------------------------------------------------------------------
-Fri Oct 31 21:08:45 UTC 2014 - afaerber@suse.de
-
-- epiphany-fixes.diff: Drop executable permissions of
- libepiphany.a and crt0.o
-
--------------------------------------------------------------------
-Fri Oct 31 20:05:26 UTC 2014 - afaerber@suse.de
-
-- Turn cross-epiphany-newlib into generic newlib package
-* Rename packages to -devel to avoid empty -newlib packages
-
--------------------------------------------------------------------
-Tue Oct 21 07:21:21 UTC 2014 - afaerber@suse.de
-
-- Update to official 2.1.0 tarball
-* Drop portability.patch
-
--------------------------------------------------------------------
-Tue Sep 30 02:29:16 UTC 2014 - afaerber@suse.de
-
-- Initial
-
diff --git a/cross-epiphany-newlib-devel.spec b/cross-epiphany-newlib-devel.spec
deleted file mode 100644
index c74ac01..0000000
--- a/cross-epiphany-newlib-devel.spec
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# spec file for package cross-epiphany-newlib-devel
-#
-# Copyright (c) 2020 SUSE LLC
-#
-# All modifications and additions to the file contributed by third parties
-# remain the property of their copyright owners, unless otherwise agreed
-# upon. The license for this file, and modifications and additions to the
-# file, is the same license as for the pristine package itself (unless the
-# license for the pristine package is not an Open Source License, in which
-# case the license is the MIT License). An "Open Source License" is a
-# license that conforms to the Open Source Definition (Version 1.9)
-# published by the Open Source Initiative.
-
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
-#
-
-
-%define cross_arch epiphany
-
-%define gcc_cross_arch %{cross_arch}
-%if "%{cross_arch}" == "riscv64"
-%define gcc_cross_arch %{cross_arch}-elf
-%endif
-
-Name: cross-%{cross_arch}-newlib-devel
-Version: 3.3.0
-Release: 0
-Summary: C library intended for use on %{cross_arch} embedded systems
-License: BSD-3-Clause AND MIT AND LGPL-2.0-or-later AND ISC
-Group: Development/Tools
-URL: https://sourceware.org/newlib/
-Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
-
-Patch1: epiphany-fixes.diff
-
-BuildRequires: cross-%{gcc_cross_arch}-gcc%{gcc_version}-bootstrap
-%if %{suse_version} > 1220
-BuildRequires: makeinfo
-%else
-BuildRequires: texinfo
-%endif
-
-%description
-Newlib is a C library intended for use on embedded systems. It is a
-conglomeration of several library parts.
-
-%define target %{cross_arch}
-%if "%{cross_arch}" == "epiphany" || "%{cross_arch}" == "riscv32" || "%{cross_arch}" == "riscv64" || "%{cross_arch}" == "rl78" || "%{cross_arch}" == "rx"
-%define target %{cross_arch}-elf
-%endif
-%if "%{cross_arch}" == "arm-none"
-%define target %{cross_arch}-eabi
-%endif
-%if "%{cross_arch}" == "spu"
-%define sysroot /usr/spu
-%else
-%define sysroot %{_prefix}/%{target}/sys-root
-%endif
-
-%prep
-%setup -q -n newlib-%{version}
-%patch1 -p1
-
-%build
-mkdir build-dir
-cd build-dir
-../configure \
- --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
- --target=%{target} \
- --with-build-sysroot=%{sysroot}
-make %{?_smp_mflags}
-
-%install
-# All binaries built are for the target architecture - don't damage them.
-export NO_BRP_STRIP_DEBUG=true
-export NO_DEBUGINFO_STRIP_DEBUG=true
-%define __debug_install_post %{nil}
-: >debugfiles.list
-: >debugsourcefiles.list
-: >debugsources.list
-
-cd build-dir
-make install DESTDIR=%{buildroot}
-
-%files
-%defattr(-,root,root,-)
-%{_prefix}/%{target}/
-
-%changelog
diff --git a/cross-riscv64-newlib-devel.changes b/cross-riscv64-newlib-devel.changes
deleted file mode 100644
index d0fb072..0000000
--- a/cross-riscv64-newlib-devel.changes
+++ /dev/null
@@ -1,132 +0,0 @@
--------------------------------------------------------------------
-Mon Dec 7 09:17:44 UTC 2020 - Guillaume GARDET
-
-- Use defined gcc version for all architectures
-
--------------------------------------------------------------------
-Tue Oct 27 03:49:05 UTC 2020 - Matthew Trescott
-
-- Update to v3.3.0
- * Fixes assembly of trap.S when building ARM multilibs (related
- to [bsc#1106014]
-- Remove unused configure flag --with-multilib-list. Newlib's configure
- script obtains this information from the GCC used to build it.
-
--------------------------------------------------------------------
-Sun Jun 23 01:00:01 UTC 2019 - Andreas Färber
-
-- Update to v3.1.0
-
--------------------------------------------------------------------
-Mon May 27 19:59:12 UTC 2019 - matz@suse.com
-
-- On riscv64 force gcc 8 as bootstrap compiler
-
--------------------------------------------------------------------
-Mon Dec 24 13:49:40 UTC 2018 - Jan Engelhardt
-
-- Trim redundant license mention.
-
--------------------------------------------------------------------
-Sat May 12 21:46:42 UTC 2018 - afaerber@suse.de
-
-- Add riscv64 target
-
--------------------------------------------------------------------
-Sat May 12 20:31:49 UTC 2018 - afaerber@suse.de
-
-- Update SPDX syntax
-
--------------------------------------------------------------------
-Sun Mar 11 18:44:09 UTC 2018 - afaerber@suse.de
-
-- Add arm-none-eabi target
-
--------------------------------------------------------------------
-Sun Mar 11 17:44:01 UTC 2018 - afaerber@suse.de
-
-- Update to v3.0.0
-
--------------------------------------------------------------------
-Sun Mar 11 16:50:55 UTC 2018 - afaerber@suse.de
-
-- Prepare for %cross_arch with dashes by consistently quoting
-- Leave the choice of cross-*-binutils to cross-*-gcc*
-- Update to v2.5.0
-
--------------------------------------------------------------------
-Wed Jan 24 09:29:00 UTC 2018 - rguenther@suse.com
-
-- Handle debugsources.list to debugsourcefiles.list rename of new rpm.
-
--------------------------------------------------------------------
-Fri Jul 1 12:32:49 UTC 2016 - rguenther@suse.com
-
-- Add rx and epiphany targets
-
--------------------------------------------------------------------
-Tue May 17 17:55:35 UTC 2016 - afaerber@suse.de
-
-- Drop newlib-rpmlintrc
-
--------------------------------------------------------------------
-Sat May 14 00:18:57 UTC 2016 - afaerber@suse.de
-
-- Apply epiphany-fixes.diff not only to cross builds (.spec.in) but
- also in newlib.spec, to please factory-auto checker (sr#395228)
-
--------------------------------------------------------------------
-Fri May 13 16:57:05 UTC 2016 - afaerber@suse.de
-
-- Prepare rl78 target
-- Update to 2.4.0
-* Info files are no longer built
-* Package all license and read-me files
-- Clean up makeinfo dependency
-- Drop cross .spec files in preparation for Factory submission
-
--------------------------------------------------------------------
-Mon Jul 20 21:52:07 UTC 2015 - afaerber@suse.de
-
-- Update to 2.2.0.20150623
-- Add cross-rx-newlib-devel package
-- Revert installing files to sysroot
-
--------------------------------------------------------------------
-Fri Jul 10 21:50:42 UTC 2015 - afaerber@suse.de
-
-- Switch cross template to gcc5
-
--------------------------------------------------------------------
-Mon Apr 6 15:53:44 UTC 2015 - afaerber@suse.de
-
-- Install target files to sysroot
-
--------------------------------------------------------------------
-Sat Nov 1 00:52:40 UTC 2014 - afaerber@suse.de
-
-- Enable native builds
-
--------------------------------------------------------------------
-Fri Oct 31 21:08:45 UTC 2014 - afaerber@suse.de
-
-- epiphany-fixes.diff: Drop executable permissions of
- libepiphany.a and crt0.o
-
--------------------------------------------------------------------
-Fri Oct 31 20:05:26 UTC 2014 - afaerber@suse.de
-
-- Turn cross-epiphany-newlib into generic newlib package
-* Rename packages to -devel to avoid empty -newlib packages
-
--------------------------------------------------------------------
-Tue Oct 21 07:21:21 UTC 2014 - afaerber@suse.de
-
-- Update to official 2.1.0 tarball
-* Drop portability.patch
-
--------------------------------------------------------------------
-Tue Sep 30 02:29:16 UTC 2014 - afaerber@suse.de
-
-- Initial
-
diff --git a/cross-riscv64-newlib-devel.spec b/cross-riscv64-newlib-devel.spec
deleted file mode 100644
index f04bb9d..0000000
--- a/cross-riscv64-newlib-devel.spec
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# spec file for package cross-riscv64-newlib-devel
-#
-# Copyright (c) 2020 SUSE LLC
-#
-# All modifications and additions to the file contributed by third parties
-# remain the property of their copyright owners, unless otherwise agreed
-# upon. The license for this file, and modifications and additions to the
-# file, is the same license as for the pristine package itself (unless the
-# license for the pristine package is not an Open Source License, in which
-# case the license is the MIT License). An "Open Source License" is a
-# license that conforms to the Open Source Definition (Version 1.9)
-# published by the Open Source Initiative.
-
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
-#
-
-
-%define cross_arch riscv64
-
-%define gcc_cross_arch %{cross_arch}
-%if "%{cross_arch}" == "riscv64"
-%define gcc_cross_arch %{cross_arch}-elf
-%endif
-
-Name: cross-%{cross_arch}-newlib-devel
-Version: 3.3.0
-Release: 0
-Summary: C library intended for use on %{cross_arch} embedded systems
-License: BSD-3-Clause AND MIT AND LGPL-2.0-or-later AND ISC
-Group: Development/Tools
-URL: https://sourceware.org/newlib/
-Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
-
-Patch1: epiphany-fixes.diff
-
-BuildRequires: cross-%{gcc_cross_arch}-gcc%{gcc_version}-bootstrap
-%if %{suse_version} > 1220
-BuildRequires: makeinfo
-%else
-BuildRequires: texinfo
-%endif
-
-%description
-Newlib is a C library intended for use on embedded systems. It is a
-conglomeration of several library parts.
-
-%define target %{cross_arch}
-%if "%{cross_arch}" == "epiphany" || "%{cross_arch}" == "riscv32" || "%{cross_arch}" == "riscv64" || "%{cross_arch}" == "rl78" || "%{cross_arch}" == "rx"
-%define target %{cross_arch}-elf
-%endif
-%if "%{cross_arch}" == "arm-none"
-%define target %{cross_arch}-eabi
-%endif
-%if "%{cross_arch}" == "spu"
-%define sysroot /usr/spu
-%else
-%define sysroot %{_prefix}/%{target}/sys-root
-%endif
-
-%prep
-%setup -q -n newlib-%{version}
-%patch1 -p1
-
-%build
-mkdir build-dir
-cd build-dir
-../configure \
- --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
- --target=%{target} \
- --with-build-sysroot=%{sysroot}
-make %{?_smp_mflags}
-
-%install
-# All binaries built are for the target architecture - don't damage them.
-export NO_BRP_STRIP_DEBUG=true
-export NO_DEBUGINFO_STRIP_DEBUG=true
-%define __debug_install_post %{nil}
-: >debugfiles.list
-: >debugsourcefiles.list
-: >debugsources.list
-
-cd build-dir
-make install DESTDIR=%{buildroot}
-
-%files
-%defattr(-,root,root,-)
-%{_prefix}/%{target}/
-
-%changelog
diff --git a/cross-rx-newlib-devel.changes b/cross-rx-newlib-devel.changes
deleted file mode 100644
index d0fb072..0000000
--- a/cross-rx-newlib-devel.changes
+++ /dev/null
@@ -1,132 +0,0 @@
--------------------------------------------------------------------
-Mon Dec 7 09:17:44 UTC 2020 - Guillaume GARDET
-
-- Use defined gcc version for all architectures
-
--------------------------------------------------------------------
-Tue Oct 27 03:49:05 UTC 2020 - Matthew Trescott
-
-- Update to v3.3.0
- * Fixes assembly of trap.S when building ARM multilibs (related
- to [bsc#1106014]
-- Remove unused configure flag --with-multilib-list. Newlib's configure
- script obtains this information from the GCC used to build it.
-
--------------------------------------------------------------------
-Sun Jun 23 01:00:01 UTC 2019 - Andreas Färber
-
-- Update to v3.1.0
-
--------------------------------------------------------------------
-Mon May 27 19:59:12 UTC 2019 - matz@suse.com
-
-- On riscv64 force gcc 8 as bootstrap compiler
-
--------------------------------------------------------------------
-Mon Dec 24 13:49:40 UTC 2018 - Jan Engelhardt
-
-- Trim redundant license mention.
-
--------------------------------------------------------------------
-Sat May 12 21:46:42 UTC 2018 - afaerber@suse.de
-
-- Add riscv64 target
-
--------------------------------------------------------------------
-Sat May 12 20:31:49 UTC 2018 - afaerber@suse.de
-
-- Update SPDX syntax
-
--------------------------------------------------------------------
-Sun Mar 11 18:44:09 UTC 2018 - afaerber@suse.de
-
-- Add arm-none-eabi target
-
--------------------------------------------------------------------
-Sun Mar 11 17:44:01 UTC 2018 - afaerber@suse.de
-
-- Update to v3.0.0
-
--------------------------------------------------------------------
-Sun Mar 11 16:50:55 UTC 2018 - afaerber@suse.de
-
-- Prepare for %cross_arch with dashes by consistently quoting
-- Leave the choice of cross-*-binutils to cross-*-gcc*
-- Update to v2.5.0
-
--------------------------------------------------------------------
-Wed Jan 24 09:29:00 UTC 2018 - rguenther@suse.com
-
-- Handle debugsources.list to debugsourcefiles.list rename of new rpm.
-
--------------------------------------------------------------------
-Fri Jul 1 12:32:49 UTC 2016 - rguenther@suse.com
-
-- Add rx and epiphany targets
-
--------------------------------------------------------------------
-Tue May 17 17:55:35 UTC 2016 - afaerber@suse.de
-
-- Drop newlib-rpmlintrc
-
--------------------------------------------------------------------
-Sat May 14 00:18:57 UTC 2016 - afaerber@suse.de
-
-- Apply epiphany-fixes.diff not only to cross builds (.spec.in) but
- also in newlib.spec, to please factory-auto checker (sr#395228)
-
--------------------------------------------------------------------
-Fri May 13 16:57:05 UTC 2016 - afaerber@suse.de
-
-- Prepare rl78 target
-- Update to 2.4.0
-* Info files are no longer built
-* Package all license and read-me files
-- Clean up makeinfo dependency
-- Drop cross .spec files in preparation for Factory submission
-
--------------------------------------------------------------------
-Mon Jul 20 21:52:07 UTC 2015 - afaerber@suse.de
-
-- Update to 2.2.0.20150623
-- Add cross-rx-newlib-devel package
-- Revert installing files to sysroot
-
--------------------------------------------------------------------
-Fri Jul 10 21:50:42 UTC 2015 - afaerber@suse.de
-
-- Switch cross template to gcc5
-
--------------------------------------------------------------------
-Mon Apr 6 15:53:44 UTC 2015 - afaerber@suse.de
-
-- Install target files to sysroot
-
--------------------------------------------------------------------
-Sat Nov 1 00:52:40 UTC 2014 - afaerber@suse.de
-
-- Enable native builds
-
--------------------------------------------------------------------
-Fri Oct 31 21:08:45 UTC 2014 - afaerber@suse.de
-
-- epiphany-fixes.diff: Drop executable permissions of
- libepiphany.a and crt0.o
-
--------------------------------------------------------------------
-Fri Oct 31 20:05:26 UTC 2014 - afaerber@suse.de
-
-- Turn cross-epiphany-newlib into generic newlib package
-* Rename packages to -devel to avoid empty -newlib packages
-
--------------------------------------------------------------------
-Tue Oct 21 07:21:21 UTC 2014 - afaerber@suse.de
-
-- Update to official 2.1.0 tarball
-* Drop portability.patch
-
--------------------------------------------------------------------
-Tue Sep 30 02:29:16 UTC 2014 - afaerber@suse.de
-
-- Initial
-
diff --git a/cross-rx-newlib-devel.spec b/cross-rx-newlib-devel.spec
deleted file mode 100644
index 7475770..0000000
--- a/cross-rx-newlib-devel.spec
+++ /dev/null
@@ -1,90 +0,0 @@
-#
-# spec file for package cross-rx-newlib-devel
-#
-# Copyright (c) 2020 SUSE LLC
-#
-# All modifications and additions to the file contributed by third parties
-# remain the property of their copyright owners, unless otherwise agreed
-# upon. The license for this file, and modifications and additions to the
-# file, is the same license as for the pristine package itself (unless the
-# license for the pristine package is not an Open Source License, in which
-# case the license is the MIT License). An "Open Source License" is a
-# license that conforms to the Open Source Definition (Version 1.9)
-# published by the Open Source Initiative.
-
-# Please submit bugfixes or comments via https://bugs.opensuse.org/
-#
-
-
-%define cross_arch rx
-
-%define gcc_cross_arch %{cross_arch}
-%if "%{cross_arch}" == "riscv64"
-%define gcc_cross_arch %{cross_arch}-elf
-%endif
-
-Name: cross-%{cross_arch}-newlib-devel
-Version: 3.3.0
-Release: 0
-Summary: C library intended for use on %{cross_arch} embedded systems
-License: BSD-3-Clause AND MIT AND LGPL-2.0-or-later AND ISC
-Group: Development/Tools
-URL: https://sourceware.org/newlib/
-Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
-
-Patch1: epiphany-fixes.diff
-
-BuildRequires: cross-%{gcc_cross_arch}-gcc%{gcc_version}-bootstrap
-%if %{suse_version} > 1220
-BuildRequires: makeinfo
-%else
-BuildRequires: texinfo
-%endif
-
-%description
-Newlib is a C library intended for use on embedded systems. It is a
-conglomeration of several library parts.
-
-%define target %{cross_arch}
-%if "%{cross_arch}" == "epiphany" || "%{cross_arch}" == "riscv32" || "%{cross_arch}" == "riscv64" || "%{cross_arch}" == "rl78" || "%{cross_arch}" == "rx"
-%define target %{cross_arch}-elf
-%endif
-%if "%{cross_arch}" == "arm-none"
-%define target %{cross_arch}-eabi
-%endif
-%if "%{cross_arch}" == "spu"
-%define sysroot /usr/spu
-%else
-%define sysroot %{_prefix}/%{target}/sys-root
-%endif
-
-%prep
-%setup -q -n newlib-%{version}
-%patch1 -p1
-
-%build
-mkdir build-dir
-cd build-dir
-../configure \
- --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
- --target=%{target} \
- --with-build-sysroot=%{sysroot}
-make %{?_smp_mflags}
-
-%install
-# All binaries built are for the target architecture - don't damage them.
-export NO_BRP_STRIP_DEBUG=true
-export NO_DEBUGINFO_STRIP_DEBUG=true
-%define __debug_install_post %{nil}
-: >debugfiles.list
-: >debugsourcefiles.list
-: >debugsources.list
-
-cd build-dir
-make install DESTDIR=%{buildroot}
-
-%files
-%defattr(-,root,root,-)
-%{_prefix}/%{target}/
-
-%changelog
diff --git a/newlib.changes b/newlib.changes
index d0fb072..1f795ba 100644
--- a/newlib.changes
+++ b/newlib.changes
@@ -1,3 +1,12 @@
+-------------------------------------------------------------------
+Tue Dec 8 10:46:24 UTC 2020 - Stefan Brüns
+
+- Use _multibuild for building all flavors.
+- Remove unused makeinfo build dependency.
+- Omit all build steps from base flavor, it just packages
+ various documentation files.
+- Remove deprecated stuff from spec file.
+
-------------------------------------------------------------------
Mon Dec 7 09:17:44 UTC 2020 - Guillaume GARDET
diff --git a/newlib.spec b/newlib.spec
index ff69727..f33bfcc 100644
--- a/newlib.spec
+++ b/newlib.spec
@@ -16,21 +16,49 @@
#
-Name: newlib
+%global flavor @BUILD_FLAVOR@%{nil}
+%if "%{flavor}" == ""
+%define pname newlib
+%else
+%define cross_arch %{flavor}
+%define pname cross-%{cross_arch}-newlib-devel
+%endif
+
+%if "%{flavor}" == "riscv64"
+%define gcc_cross_arch %{cross_arch}-elf
+%define target %{cross_arch}-elf
+%else
+%define gcc_cross_arch %{cross_arch}
+%define target %{cross_arch}
+%endif
+
+%if "%{cross_arch}" == "epiphany" || "%{cross_arch}" == "riscv32" || "%{cross_arch}" == "rl78" || "%{cross_arch}" == "rx"
+%define target %{cross_arch}-elf
+%endif
+%if "%{cross_arch}" == "arm-none"
+%define target %{cross_arch}-eabi
+%endif
+%if "%{cross_arch}" == "spu"
+%define sysroot /usr/spu
+%else
+%define sysroot %{_prefix}/%{target}/sys-root
+%endif
+
+Name: %{pname}
Version: 3.3.0
Release: 0
Summary: C library intended for use on embedded systems
License: BSD-3-Clause AND MIT AND LGPL-2.0-or-later AND ISC
-Group: Development/Tools
+Group: Development/Libraries/Cross
URL: https://sourceware.org/newlib/
Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
-
Patch1: epiphany-fixes.diff
-%if %{suse_version} > 1220
-BuildRequires: makeinfo
+%if "%{flavor}" == ""
+BuildArch: noarch
%else
-BuildRequires: texinfo
+BuildRequires: cross-%{gcc_cross_arch}-gcc%{gcc_version}-bootstrap
+BuildRequires: fdupes
%endif
%description
@@ -39,16 +67,19 @@ conglomeration of several library parts, all under free software licenses
that make them easily usable on embedded products.
%prep
-%setup -q
+%setup -q -n newlib-%{version}
%patch1 -p1
%build
+%if "%{flavor}" != ""
mkdir build-dir
cd build-dir
# On %%ix86 hosts newlib is documented to be buildable as shared library via --with-newlib,
# but it fails to build for us and we don't need a host library at the moment.
../configure \
--prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
+ --target=%{target} \
+ --with-build-sysroot=%{sysroot}
%ifarch %ix86
%if 0
--with-newlib \
@@ -56,15 +87,30 @@ cd build-dir
%endif
CFLAGS="%{optflags}"
-make %{?_smp_mflags}
+%make_build
+%endif
%install
+%if "%{flavor}" != ""
+# All binaries built are for the target architecture - don't damage them.
+export NO_BRP_STRIP_DEBUG=true
+export NO_DEBUGINFO_STRIP_DEBUG=true
+%define __debug_install_post %{nil}
+: >debugfiles.list
+: >debugsourcefiles.list
+: >debugsources.list
+
cd build-dir
make install DESTDIR=%{buildroot}
+%fdupes %{buildroot}
+%endif
%files
-%defattr(-,root,root,-)
-%doc COPYING.NEWLIB COPYING.LIBGLOSS COPYING COPYING.LIB COPYING3 COPYING3.LIB
+%if "%{flavor}" == ""
+%license COPYING.NEWLIB COPYING.LIBGLOSS COPYING COPYING.LIB COPYING3 COPYING3.LIB
%doc newlib/README newlib/NEWS
+%else
+%{_prefix}/%{target}/
+%endif
%changelog
diff --git a/newlib.spec.in b/newlib.spec.in
deleted file mode 100644
index 569acd1..0000000
--- a/newlib.spec.in
+++ /dev/null
@@ -1,71 +0,0 @@
-
-%define gcc_cross_arch %{cross_arch}
-%if "%{cross_arch}" == "riscv64"
-%define gcc_cross_arch %{cross_arch}-elf
-%endif
-
-Name: cross-%{cross_arch}-newlib-devel
-Version: 3.3.0
-Release: 0
-Summary: C library intended for use on %{cross_arch} embedded systems
-Group: Development/Tools
-License: BSD-3-Clause AND MIT AND LGPL-2.0-or-later AND ISC
-Url: https://sourceware.org/newlib/
-Source0: ftp://sourceware.org/pub/newlib/newlib-%{version}.tar.gz
-
-Patch1: epiphany-fixes.diff
-
-BuildRequires: cross-%{gcc_cross_arch}-gcc%{gcc_version}-bootstrap
-%if %{suse_version} > 1220
-BuildRequires: makeinfo
-%else
-BuildRequires: texinfo
-%endif
-
-%description
-Newlib is a C library intended for use on embedded systems. It is a
-conglomeration of several library parts.
-
-%define target %{cross_arch}
-%if "%{cross_arch}" == "epiphany" || "%{cross_arch}" == "riscv32" || "%{cross_arch}" == "riscv64" || "%{cross_arch}" == "rl78" || "%{cross_arch}" == "rx"
-%define target %{cross_arch}-elf
-%endif
-%if "%{cross_arch}" == "arm-none"
-%define target %{cross_arch}-eabi
-%endif
-%if "%{cross_arch}" == "spu"
-%define sysroot /usr/spu
-%else
-%define sysroot %{_prefix}/%{target}/sys-root
-%endif
-
-%prep
-%setup -q -n newlib-%{version}
-%patch1 -p1
-
-%build
-mkdir build-dir
-cd build-dir
-../configure \
- --prefix=%{_prefix} --libdir=%{_libdir} --mandir=%{_mandir} --infodir=%{_infodir} \
- --target=%{target} \
- --with-build-sysroot=%{sysroot}
-make %{?_smp_mflags}
-
-%install
-# All binaries built are for the target architecture - don't damage them.
-export NO_BRP_STRIP_DEBUG=true
-export NO_DEBUGINFO_STRIP_DEBUG=true
-%define __debug_install_post %{nil}
-: >debugfiles.list
-: >debugsourcefiles.list
-: >debugsources.list
-
-cd build-dir
-make install DESTDIR=%{buildroot}
-
-%files
-%defattr(-,root,root,-)
-%{_prefix}/%{target}/
-
-%changelog
diff --git a/pre_checkin.sh b/pre_checkin.sh
index 22c47c0..6417148 100644
--- a/pre_checkin.sh
+++ b/pre_checkin.sh
@@ -1,13 +1,3 @@
#!/bin/bash
-rm -f cross*.spec cross*.changes
-
-for arch in arm-none epiphany riscv64 rx; do
- pkgname=cross-$arch-newlib-devel
- outfile=$pkgname.spec
- echo "%define cross_arch $arch" > $outfile
- cat newlib.spec.in >> $outfile
- cp newlib.changes $pkgname.changes
-done
-
osc service localrun format_spec_file