mirror of
https://git.rtems.org/rtems-source-builder
synced 2024-10-09 07:15:10 +08:00
rtems/kernel: Support a list of BSPs as arch/bsp
This commit is contained in:
@@ -42,15 +42,18 @@
|
|||||||
%endif
|
%endif
|
||||||
%if !%{defined with_rtems_bsp_config}
|
%if !%{defined with_rtems_bsp_config}
|
||||||
%define rtems_bsp %{with_rtems_bsp}
|
%define rtems_bsp %{with_rtems_bsp}
|
||||||
|
# If a list the path gets too long
|
||||||
|
%define rtems_bsp_pkgname bsps
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
#
|
#
|
||||||
# Configuration file used with waf
|
# Configuration file used with waf
|
||||||
#
|
#
|
||||||
%ifn %{defined with_rtems_bsp_config}
|
%if !%{defined with_rtems_bsp_config}
|
||||||
%define config_file config-%{_target}-%{rtems_bsp}.ini
|
%define config_file config.ini
|
||||||
%else
|
%else
|
||||||
%define config_file %{with_rtems_bsp_config}
|
%define config_file %{with_rtems_bsp_config}
|
||||||
|
%define rtems_bsp_pkgname %(basename %{with_rtems_bsp_config})
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
#
|
#
|
||||||
@@ -68,12 +71,12 @@
|
|||||||
#
|
#
|
||||||
# Define the package.
|
# Define the package.
|
||||||
#
|
#
|
||||||
package: rtems-%{rtems_version}-%{_target}-%{rtems_bsp}-%{_host}-%{release}
|
package: rtems-%{rtems_version}-%{_target}-%{rtems_bsp_pkgname}-%{_host}-%{release}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Package details.
|
# Package details.
|
||||||
#
|
#
|
||||||
Name: %{_target}-kernel-%{rtems_bsp}-%{release}
|
Name: %{_target}-kernel-%{rtems_bsp_pkgname}-%{release}
|
||||||
Summary: RTEMS v%{rtems_kernel_version} for target %{_target} BSP %{rtems_bsp}
|
Summary: RTEMS v%{rtems_kernel_version} for target %{_target} BSP %{rtems_bsp}
|
||||||
Version: %{rtems_kernel_version}
|
Version: %{rtems_kernel_version}
|
||||||
Release: %{release}
|
Release: %{release}
|
||||||
@@ -83,23 +86,6 @@ URL: https://www.rtems.org/
|
|||||||
%include %{_configdir}/base.cfg
|
%include %{_configdir}/base.cfg
|
||||||
%include %{_configdir}/versions.cfg
|
%include %{_configdir}/versions.cfg
|
||||||
|
|
||||||
#
|
|
||||||
# A magic internal path that would break if changes in the defaults.mc
|
|
||||||
# macro file are made.
|
|
||||||
#
|
|
||||||
%define _internal_autotools_path %{_tmppath}/sb-%{_uid}/${SB_PREFIX_CLEAN}
|
|
||||||
|
|
||||||
#
|
|
||||||
# Check the version of autoconf. Check autoreconf as it is used.
|
|
||||||
#
|
|
||||||
%if %{__autoreconf_ver} <= 2.68
|
|
||||||
%if %{__autoreconf_bindir_ver} <= 2.68
|
|
||||||
%if %{__autoreconf_path_ver} <= 2.68
|
|
||||||
%error Autoconf (autoreconf) version 2.69 or higher is needed.
|
|
||||||
%endif
|
|
||||||
%endif
|
|
||||||
%endif
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# If no tools provided use the prefix.
|
# If no tools provided use the prefix.
|
||||||
#
|
#
|
||||||
@@ -162,7 +148,7 @@ URL: https://www.rtems.org/
|
|||||||
exit 1
|
exit 1
|
||||||
%endif
|
%endif
|
||||||
%if %{defined enable_cxx}
|
%if %{defined enable_cxx}
|
||||||
echo CXX has been removed."
|
echo "CXX has been removed."
|
||||||
echo "Please review and update your configuration."
|
echo "Please review and update your configuration."
|
||||||
exit 1
|
exit 1
|
||||||
%endif
|
%endif
|
||||||
@@ -229,20 +215,24 @@ URL: https://www.rtems.org/
|
|||||||
|
|
||||||
cd ${source_dir_rtems}
|
cd ${source_dir_rtems}
|
||||||
|
|
||||||
%if %{defined without_rtems_bsp_config}
|
%ifn %{defined with_rtems_bsp_config}
|
||||||
cpu=`echo %{_target} | cut -d- -f1`
|
echo "[DEFAULT]" > %{config_file}
|
||||||
echo "[${cpu}/%{rtems_bsp}]" > %{config_file}
|
|
||||||
echo "RTEMS_POSIX_API = %{?rtems_posix:True}%{!?rtems_posix:False}" >> %{config_file}
|
echo "RTEMS_POSIX_API = %{?rtems_posix:True}%{!?rtems_posix:False}" >> %{config_file}
|
||||||
echo "RTEMS_SMP = %{?rtems_smp:True}%{!?rtems_smp:False}" >> %{config_file}
|
echo "RTEMS_SMP = %{?rtems_smp:True}%{!?rtems_smp:False}" >> %{config_file}
|
||||||
echo "BUILD_TESTS = %{rtems_tests}" >> %{config_file}
|
echo "BUILD_TESTS = %{rtems_tests}" >> %{config_file}
|
||||||
echo "BUILD_SAMPLES = %{rtems_sample_tests}" >> %{config_file}
|
echo "BUILD_SAMPLES = %{rtems_sample_tests}" >> %{config_file}
|
||||||
|
echo "" >> %{config_file}
|
||||||
|
for bsp in %{rtems_bsp}
|
||||||
|
do
|
||||||
|
echo "[$bsp]" >> %{config_file};
|
||||||
|
echo "" >> %{config_file}
|
||||||
|
done
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
mkdir -p ${build_dir}
|
mkdir -p ${build_dir}
|
||||||
|
|
||||||
./waf configure \
|
./waf configure \
|
||||||
--rtems-bsps=%{_target}/%{rtems_bsp} \
|
--prefix=%{_prefix} \
|
||||||
--prefix=%{_prefix} --bindir=%{_bindir} \
|
|
||||||
--rtems-config=%{config_file}
|
--rtems-config=%{config_file}
|
||||||
|
|
||||||
./waf %{?_smp_mflags}
|
./waf %{?_smp_mflags}
|
||||||
|
Reference in New Issue
Block a user