diff options
author | Chris Johns <chrisj@rtems.org> | 2019-07-14 15:11:46 +1000 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2019-07-22 09:36:38 +1000 |
commit | 831ae05364bca67088ddbe07cdc611300ee806c7 (patch) | |
tree | 6599c8255414852468fba0a10704d6fef5da698e /rtems/config/rtems-bsp.cfg | |
parent | sb/setbuilder: Support staging of build set build before installing. (diff) | |
download | rtems-source-builder-831ae05364bca67088ddbe07cdc611300ee806c7.tar.bz2 |
rtems/bsp: Build packages for the beagle BSP.
Closes #3769
Diffstat (limited to '')
-rw-r--r-- | rtems/config/rtems-bsp.cfg | 93 |
1 files changed, 64 insertions, 29 deletions
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} |