summaryrefslogtreecommitdiffstats
path: root/rtems
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2019-07-14 15:11:46 +1000
committerChris Johns <chrisj@rtems.org>2019-07-22 09:36:38 +1000
commit831ae05364bca67088ddbe07cdc611300ee806c7 (patch)
tree6599c8255414852468fba0a10704d6fef5da698e /rtems
parentsb/setbuilder: Support staging of build set build before installing. (diff)
downloadrtems-source-builder-831ae05364bca67088ddbe07cdc611300ee806c7.tar.bz2
rtems/bsp: Build packages for the beagle BSP.
Closes #3769
Diffstat (limited to 'rtems')
-rw-r--r--rtems/config/5/bsps/beagleboneblack.bset6
-rw-r--r--rtems/config/5/rtems-or1k.bset1
-rw-r--r--rtems/config/5/rtems-riscv.bset1
-rw-r--r--rtems/config/5/rtems-x86_64.bset1
-rw-r--r--rtems/config/rtems-bsp.cfg93
-rw-r--r--rtems/config/tools/rtems-kernel-5.cfg4
-rw-r--r--rtems/config/tools/rtems-kernel-common.cfg16
7 files changed, 77 insertions, 45 deletions
diff --git a/rtems/config/5/bsps/beagleboneblack.bset b/rtems/config/5/bsps/beagleboneblack.bset
index 68b590a..3253398 100644
--- a/rtems/config/5/bsps/beagleboneblack.bset
+++ b/rtems/config/5/bsps/beagleboneblack.bset
@@ -9,11 +9,11 @@
# - Packages
#
-%define rtems_target arm-rtems5
-%define rtems_host arm-rtems5
%define with_rtems_bsp beagleboneblack
-
+%define rtems_target arm-rtems5
+%define rtems_host %{rtems_target}
5/rtems-arm
5/rtems-kernel
5/rtems-libbsd
+5/rtems-packages
diff --git a/rtems/config/5/rtems-or1k.bset b/rtems/config/5/rtems-or1k.bset
index 0ab37d2..2533060 100644
--- a/rtems/config/5/rtems-or1k.bset
+++ b/rtems/config/5/rtems-or1k.bset
@@ -13,4 +13,3 @@ tools/rtems-gdb-8.2.1-1
tools/rtems-binutils-2.32
tools/rtems-gcc-9.1.0-newlib-5c2a3661c
tools/rtems-tools-5-1
-tools/rtems-kernel-5
diff --git a/rtems/config/5/rtems-riscv.bset b/rtems/config/5/rtems-riscv.bset
index 6e9de99..bff4c44 100644
--- a/rtems/config/5/rtems-riscv.bset
+++ b/rtems/config/5/rtems-riscv.bset
@@ -14,5 +14,4 @@ tools/rtems-gdb-8.2.1-1
tools/rtems-binutils-2.32
tools/rtems-gcc-9.1.0-newlib-5c2a3661c
tools/rtems-tools-5-1
-tools/rtems-kernel-5
devel/sis-2-1.cfg
diff --git a/rtems/config/5/rtems-x86_64.bset b/rtems/config/5/rtems-x86_64.bset
index 6e3c27c..cda3bdd 100644
--- a/rtems/config/5/rtems-x86_64.bset
+++ b/rtems/config/5/rtems-x86_64.bset
@@ -11,4 +11,3 @@ tools/rtems-gdb-8.2.1-1
tools/rtems-binutils-2.32
tools/rtems-gcc-9.1.0-newlib-5c2a3661c
tools/rtems-tools-5-1
-tools/rtems-kernel-5
diff --git a/rtems/config/rtems-bsp.cfg b/rtems/config/rtems-bsp.cfg
index bf1f42b..1af77f9 100644
--- a/rtems/config/rtems-bsp.cfg
+++ b/rtems/config/rtems-bsp.cfg
@@ -53,6 +53,7 @@
%endif
%define with_rtems_bsp sparc/erc32
%endif
+%define rtems_bsp %{with_rtems_bsp}
#
# If no tools or RTEMS provided use the prefix. If staging use the staging
@@ -88,6 +89,29 @@
%{path prepend %{with_tools}/bin}
#
+# Update the configure paths to be BSP specific.
+#
+%define rtems_bsp_prefix %{_prefix}/%{_host}/%{rtems_bsp}
+%define _exec_prefix %{rtems_bsp_prefix}
+%define _bindir %{_exec_prefix}/bin
+%define _sbindir %{_exec_prefix}/sbin
+%define _libexecdir %{_exec_prefix}/libexec
+%define _datarootdir %{_exec_prefix}/share
+%define _datadir %{_datarootdir}
+%define _sysconfdir %{_exec_prefix}/etc
+%define _sharedstatedir %{_exec_prefix}/com
+%define _localstatedir %{_exec_prefix}/var
+%define _includedir %{_libdir}/include
+%define _lib lib
+%define _libdir %{_exec_prefix}/%{_lib}
+%define _libexecdir %{_exec_prefix}/libexec
+%define _mandir %{_datarootdir}/man
+%define _infodir %{_datarootdir}/info
+%define _localedir %{_datarootdir}/locale
+%define _localedir %{_datadir}/locale
+%define _localstatedir %{_exec_prefix}/var
+
+#
# Set up how we manage pkgconfig. Set the prefix path to the RTEMS prefix,
# enable support when crosscompiling, and filter specific optimisation and
# warning from the flags that RTEMS exports.
@@ -99,16 +123,50 @@
#
# The RTEMS BSP Flags
#
-%define rtems_bsp %{with_rtems_bsp}
-%define rtems_bsp_ccflags %{pkgconfig ccflags %{_host}-%{rtems_bsp}}
-%define rtems_bsp_cflags %{pkgconfig cflags %{_host}-%{rtems_bsp}}
-%define rtems_bsp_ldflags %{pkgconfig ldflags %{_host}-%{rtems_bsp}}
-%define rtems_bsp_libs %{pkgconfig libs %{_host}-%{rtems_bsp}}
+%define rtems_bsp_includes -I%{_includedir}
+%define rtems_bsp_ccflags %{pkgconfig ccflags %{_host}-%{rtems_bsp}}
+%define rtems_bsp_cflags %{pkgconfig cflags %{_host}-%{rtems_bsp}}
+%define rtems_bsp_ldflags %{pkgconfig ldflags %{_host}-%{rtems_bsp}}
+%define rtems_bsp_libs %{pkgconfig libs %{_host}-%{rtems_bsp}}
%if %{rtems_bsp_cflags} == %{nil} && %{rtems_bsp_error}
%error No RTEMS BSP CFLAGS found; Please check the --with-rtems-bsp option.
%endif
+#
+# C++ flags are the C flags.
+#
+%if %{rtems_bsp_ccflags} == %{nil}
+ %define rtems_bsp_ccflags %{rtems_bsp_cflags}
+%endif
+
+#
+# If there are no LDFLAGS create a path to RTEMS.
+#
+%if %{rtems_bsp_ldflags} == %{nil}
+ %define rtems_bsp_ldflags -L%{rtems_bsp_prefix}/lib
+%endif
+
+#
+# Support for RTEMS's Makefile.inc support.
+#
+%define rtems_bsp_makefile_inc %{rtems_bsp_prefix}
+%define rtems_bsp_rtems_root %{_prefix}
+
+#
+# Filter the flags converting any prefix to the staging path if this is a
+# staging build.
+#
+%if %{install_mode} == staging
+ %define staging_filter sed -e 's|%{_prefix}|%{stagingroot}|g'
+ %define rtems_bsp_prefix $(echo %{rtems_bsp_prefix} | %{staging_filter})
+ %define rtems_bsp_includes $(echo %{rtems_bsp_includes} | %{staging_filter})
+ %define rtems_bsp_ccflags $(echo %{rtems_bsp_ccflags} | %{staging_filter})
+ %define rtems_bsp_cflags $(echo %{rtems_bsp_cflags} | %{staging_filter})
+ %define rtems_bsp_ldflags $(echo %{rtems_bsp_ldflags} | %{staging_filter})
+ %define rtems_bsp_rtems_root %{stagingroot}
+%endif
+
%if %{rtems_bsp_ccflags} == %{nil}
%define rtems_bsp_ccflags %{rtems_bsp_cflags}
%endif
@@ -147,34 +205,11 @@
%endif
#
-# Update the configure paths to be BSP specific.
-#
-%define rtems_bsp_prefix %{_prefix}/%{_host}/%{rtems_bsp}
-%define _exec_prefix %{rtems_bsp_prefix}
-%define _bindir %{_exec_prefix}/bin
-%define _sbindir %{_exec_prefix}/sbin
-%define _libexecdir %{_exec_prefix}/libexec
-%define _datarootdir %{_exec_prefix}/share
-%define _datadir %{_datarootdir}
-%define _sysconfdir %{_exec_prefix}/etc
-%define _sharedstatedir %{_exec_prefix}/com
-%define _localstatedir %{_exec_prefix}/var
-%define _includedir %{_libdir}/include
-%define _lib lib
-%define _libdir %{_exec_prefix}/%{_lib}
-%define _libexecdir %{_exec_prefix}/libexec
-%define _mandir %{_datarootdir}/man
-%define _infodir %{_datarootdir}/info
-%define _localedir %{_datarootdir}/locale
-%define _localedir %{_datadir}/locale
-%define _localstatedir %{_exec_prefix}/var
-
-#
# Map to names used for cross compiling.
#
%define host_cc %{rtems_bsp_cc}
%define host_cxx %{rtems_bsp_cxx}
-%define host_includes -I%{_includedir}
+%define host_includes %{rtems_bsp_includes}
%define host_cflags %{rtems_bsp_cflags}
%define host_cxxflags %{rtems_bsp_ccflags}
%define host_ldflags %{rtems_bsp_ldflags}
diff --git a/rtems/config/tools/rtems-kernel-5.cfg b/rtems/config/tools/rtems-kernel-5.cfg
index 7f23635..fe538b8 100644
--- a/rtems/config/tools/rtems-kernel-5.cfg
+++ b/rtems/config/tools/rtems-kernel-5.cfg
@@ -2,8 +2,8 @@
# RTEMS 5
#
-%define rtems_kernel_version c4d89deaa66f9878ea5499cae7210d5815afc4fe
-%hash sha512 rtems-kernel-%{rtems_kernel_version}.tar.bz2 fa4cbcfd9d10be737b91805f1fbaccb7289f3d300a2a7aafef1713d265dd97242d00aba5f1c63ead5a889cfb2148fd9d62c79dcb6f16e61f9fa1290067159b43
+%define rtems_kernel_version 270c5df5dbaf93c19e2f66a27f4bb73c7e625629
+%hash sha512 rtems-kernel-%{rtems_kernel_version}.tar.bz2 aed5a4ef1fd33a5097cffcde458f3b6848ccbc8cb181918dbbb7e27df6a75b3caa9e859d4106ce380ebcd26aab5f5afb85036b2c1f4f47eb482f55e0a2238674
#
# The RTEMS build instructions.
diff --git a/rtems/config/tools/rtems-kernel-common.cfg b/rtems/config/tools/rtems-kernel-common.cfg
index 5a79340..ed19333 100644
--- a/rtems/config/tools/rtems-kernel-common.cfg
+++ b/rtems/config/tools/rtems-kernel-common.cfg
@@ -182,15 +182,15 @@ URL: https://www.rtems.org/
source_dir_rtems="rtems-%{rtems_kernel_version}"
%source setup rtems_kernel -q -c -n %{name}-%{version}
cd ${source_dir_rtems}
- %patch setup rtems -p1
-%if %{rtems_bootstrap}
- %if %{defined _internal_autotools_path}
- export PATH="%{_internal_autotools_path}/bin:${PATH}"
+ %patch setup rtems_kernel -p1
+ %if %{rtems_bootstrap}
+ %if %{defined _internal_autotools_path}
+ export PATH="%{_internal_autotools_path}/bin:${PATH}"
+ %endif
+ ./bootstrap -c
+ %{_sbdir}/sb-bootstrap --preinstall
+ %{_sbdir}/sb-bootstrap
%endif
- ./bootstrap -c
- %{_sbdir}/sb-bootstrap --preinstall
- %{_sbdir}/sb-bootstrap
-%endif
cd ..
%build