diff options
author | Chris Johns <chrisj@rtems.org> | 2013-03-20 09:41:23 +1100 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2013-03-20 09:41:23 +1100 |
commit | e3aa3551fa5c70fbc8a9bb2ff1371a6088003afb (patch) | |
tree | a25a5b8d35e6489e5ae4bac5eabc99166fdd3060 /rtems | |
parent | GCC 4.7.2 is incompatible with Texinfo 5 (diff) | |
download | rtems-source-builder-e3aa3551fa5c70fbc8a9bb2ff1371a6088003afb.tar.bz2 |
Add support for RTEMS 4.10.
This change adds support for RTEMS 4.10 tools plus builds the latest
RTEMS 4.10.2 release.
Diffstat (limited to 'rtems')
25 files changed, 535 insertions, 15 deletions
diff --git a/rtems/config/4.10/#rtems-avr.bset# b/rtems/config/4.10/#rtems-avr.bset# new file mode 100644 index 0000000..970bfec --- /dev/null +++ b/rtems/config/4.10/#rtems-avr.bset# @@ -0,0 +1,28 @@ +# +# Tools Set for RTEMS AVR 4.10 Stable +# + +%define release 1 + +%define rtems_arch avr + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Disable building a C++ compiler. +# configure: error: unable to detect exception model +# +%define enable_cxx 0 +%define rtems_cxx 0 + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/.#rtems-avr.bset b/rtems/config/4.10/.#rtems-avr.bset new file mode 120000 index 0000000..f7e1c8e --- /dev/null +++ b/rtems/config/4.10/.#rtems-avr.bset @@ -0,0 +1 @@ +chris@kaka.contemporary.net.au.15313:1362261116
\ No newline at end of file diff --git a/rtems/config/4.10/rtems-all.bset b/rtems/config/4.10/rtems-all.bset new file mode 100644 index 0000000..c86df32 --- /dev/null +++ b/rtems/config/4.10/rtems-all.bset @@ -0,0 +1,18 @@ +# +# All RTEMS 4.10 Tools Sets +# + +4.10/rtems-autotools +4.10/rtems-arm +4.10/rtems-avr +4.10/rtems-bfin +4.10/rtems-i386 +4.10/rtems-lm32 +4.10/rtems-m32c +4.10/rtems-m32r +4.10/rtems-m68k +4.10/rtems-mips +4.10/rtems-nios2 +4.10/rtems-powerpc +4.10/rtems-sh +4.10/rtems-sparc diff --git a/rtems/config/4.10/rtems-arm.bset b/rtems/config/4.10/rtems-arm.bset new file mode 100644 index 0000000..8b2e4b4 --- /dev/null +++ b/rtems/config/4.10/rtems-arm.bset @@ -0,0 +1,26 @@ +# +# Tools Set for RTEMS ARM 4.10 Stable +# + +%define release 1 + +%define rtems_arch arm + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Disable the tests because the samples do not build. +# +%define rtems_tests disable + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-autotools.bset b/rtems/config/4.10/rtems-autotools.bset new file mode 100644 index 0000000..1681987 --- /dev/null +++ b/rtems/config/4.10/rtems-autotools.bset @@ -0,0 +1,23 @@ +# +# Tools Set for RTEMS 4.9 Autotools Stable +# + +%define release 1 + +%define rtems_arch none + +# +# The RTEMS 4.9 base defines. +# +%include rtems-4.9-base.bset + +# +# The autotoolspackage. +# +package: rtems-%{rtems_version}-autotools-%{release} + +# +# Tools configuration. +# +autoconf-2.69-1 +automake-1.12.2-1 diff --git a/rtems/config/4.10/rtems-avr.bset b/rtems/config/4.10/rtems-avr.bset new file mode 100644 index 0000000..e6fe46c --- /dev/null +++ b/rtems/config/4.10/rtems-avr.bset @@ -0,0 +1,29 @@ +# +# Tools Set for RTEMS AVR 4.10 Stable +# + +%define release 1 + +%define rtems_arch avr + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Disable building a C++ compiler. +# configure: error: unable to detect exception model +# +%define enable_cxx 0 +%define rtems_cxx 0 + + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-bfin.bset b/rtems/config/4.10/rtems-bfin.bset new file mode 100644 index 0000000..8cc57fb --- /dev/null +++ b/rtems/config/4.10/rtems-bfin.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS BFIN 4.10 Stable +# + +%define release 1 + +%define rtems_arch bfin + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-h8300.bset b/rtems/config/4.10/rtems-h8300.bset new file mode 100644 index 0000000..e9ad514 --- /dev/null +++ b/rtems/config/4.10/rtems-h8300.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS H8300 4.10 Stable +# + +%define release 1 + +%define rtems_arch h8300 + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-i386.bset b/rtems/config/4.10/rtems-i386.bset new file mode 100644 index 0000000..74bfcac --- /dev/null +++ b/rtems/config/4.10/rtems-i386.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS i386 4.10 Stable +# + +%define release 1 + +%define rtems_arch i386 + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-lm32.bset b/rtems/config/4.10/rtems-lm32.bset new file mode 100644 index 0000000..4732d22 --- /dev/null +++ b/rtems/config/4.10/rtems-lm32.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS LM32 4.10 Stable +# + +%define release 1 + +%define rtems_arch lm32 + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-m32c.bset b/rtems/config/4.10/rtems-m32c.bset new file mode 100644 index 0000000..5a277ee --- /dev/null +++ b/rtems/config/4.10/rtems-m32c.bset @@ -0,0 +1,27 @@ +# +# Tools Set for RTEMS M32C 4.10 Stable +# + +%define release 1 + +%define rtems_arch m32c + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Disable building a C++ compiler. +# +%define enable_cxx 0 +%define rtems_cxx 0 + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-m32r.bset b/rtems/config/4.10/rtems-m32r.bset new file mode 100644 index 0000000..f57a29f --- /dev/null +++ b/rtems/config/4.10/rtems-m32r.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS M32R 4.10 Stable +# + +%define release 1 + +%define rtems_arch m32r + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-m68k.bset b/rtems/config/4.10/rtems-m68k.bset new file mode 100644 index 0000000..8c7a4dc --- /dev/null +++ b/rtems/config/4.10/rtems-m68k.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS m68k 4.10 Stable +# + +%define release 1 + +%define rtems_arch m68k + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-mips.bset b/rtems/config/4.10/rtems-mips.bset new file mode 100644 index 0000000..3bb04e4 --- /dev/null +++ b/rtems/config/4.10/rtems-mips.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS MIPS 4.10 Stable +# + +%define release 1 + +%define rtems_arch mips + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-nios2.bset b/rtems/config/4.10/rtems-nios2.bset new file mode 100644 index 0000000..8801ed5 --- /dev/null +++ b/rtems/config/4.10/rtems-nios2.bset @@ -0,0 +1,22 @@ +# +# Tools Set for RTEMS NIOS 4.10 Stable +# +# The NIOS source is a special version released by Altera. +# + +%define release 1 + +%define rtems_arch nios2 + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-nios2-binutils-2.20-1 +tools/rtems-nios2-gcc-4.1-newlib-1.19.0-1 +tools/rtems-nios2-gdb-7.0-1 diff --git a/rtems/config/4.10/rtems-powerpc.bset b/rtems/config/4.10/rtems-powerpc.bset new file mode 100644 index 0000000..f95acdf --- /dev/null +++ b/rtems/config/4.10/rtems-powerpc.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS PowerPC 4.10 Stable +# + +%define release 1 + +%define rtems_arch powerpc + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-sh.bset b/rtems/config/4.10/rtems-sh.bset new file mode 100644 index 0000000..fd90740 --- /dev/null +++ b/rtems/config/4.10/rtems-sh.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS SH 4.10 Stable +# + +%define release 1 + +%define rtems_arch sh + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/4.10/rtems-sparc.bset b/rtems/config/4.10/rtems-sparc.bset new file mode 100644 index 0000000..b16a8c7 --- /dev/null +++ b/rtems/config/4.10/rtems-sparc.bset @@ -0,0 +1,21 @@ +# +# Tools Set for RTEMS SPARC 4.10 Stable +# + +%define release 1 + +%define rtems_arch sparc + +# +# The RTEMS 4.10 base defines. +# +%include rtems-4.10-base.bset + +# +# Tools configuration. +# +expat-2.1.0-1 +tools/rtems-binutils-2.20.1-1 +tools/rtems-gcc-4.4.7-newlib-1.18.0-1 +tools/rtems-gdb-7.3.1-1 +tools/rtems-kernel-4.10.2 diff --git a/rtems/config/rtems-4.10-base.bset b/rtems/config/rtems-4.10-base.bset new file mode 100644 index 0000000..44f81b2 --- /dev/null +++ b/rtems/config/rtems-4.10-base.bset @@ -0,0 +1,7 @@ +# +# Base defines for RTEMS 4.10 +# + +%define rtems_version 4.10 + +%include rtems-base.bset diff --git a/rtems/config/rtems-base.bset b/rtems/config/rtems-base.bset new file mode 100644 index 0000000..844fcd2 --- /dev/null +++ b/rtems/config/rtems-base.bset @@ -0,0 +1,28 @@ +# +# Base defines for RTEMS +# + +# +# Define the build target. +# +%define _target %{rtems_arch}-rtems%{rtems_version} + +# +# The generic package name. +# +package: rtems-%{rtems_version}-%{_target}-%{release} + +# +# Project custom message +# +%define gcc_version_message RTEMS %{rtems_version}-RSB(%{_sbgit_id})-%{release},gcc-%{gcc_version}/newlib-%{newlib_version} + +# +# The RTEMS http git URL. +# +%define rtems_http_git http://git.rtems.org +%define rtems_git_tools %{rtems_http_git}/rtems-tools.git/plain/tools/%{rtems_version} +%define rtems_binutils_patches %{rtems_git_tools}/binutils +%define rtems_gcc_patches %{rtems_git_tools}/gcc +%define rtems_newlib_patches %{rtems_git_tools}/newlib +%define rtems_gdb_patches %{rtems_git_tools}/gdb diff --git a/rtems/config/tools/rtems-binutils-2.20.1-1.cfg b/rtems/config/tools/rtems-binutils-2.20.1-1.cfg index d1546d3..2241457 100644 --- a/rtems/config/tools/rtems-binutils-2.20.1-1.cfg +++ b/rtems/config/tools/rtems-binutils-2.20.1-1.cfg @@ -7,7 +7,7 @@ %define binutils_version 2.20.1 -Patch0: binutils-2.20.1-rtems4.10-20100826.diff +Patch0: %{rtems_binutils_patches}/binutils-2.20.1-rtems4.10-20100826.diff # # The binutils build instructions. We use 2.xx Release 1. diff --git a/rtems/config/tools/rtems-gcc-4.4.7-newlib-1.18.0-1.cfg b/rtems/config/tools/rtems-gcc-4.4.7-newlib-1.18.0-1.cfg index 22ee2d8..36e1861 100644 --- a/rtems/config/tools/rtems-gcc-4.4.7-newlib-1.18.0-1.cfg +++ b/rtems/config/tools/rtems-gcc-4.4.7-newlib-1.18.0-1.cfg @@ -7,8 +7,8 @@ %define gcc_version 4.4.7 %define newlib_version 1.18.0 -%define mpfr_version 2.4.1 -%define mpc_version 0.8.2 +%define mpfr_version 2.4.2 +%define mpc_version 0.8.1 %define gmp_version 5.0.5 %define with_threads 1 @@ -16,14 +16,6 @@ %define with_iconv 1 # -# AVR C++ does not work. -# configure: error: unable to detect exception model -# -%if %{_target} == avr-rtems4.10 -%define enable_cxx 0 -%endif - -# # M32C C++ does not work. # gcc-4.4.7/libstdc++-v3/src/mt_allocator.cc:76: error: cast from 'void*' to 'size_t' loses precision # @@ -38,11 +30,12 @@ # # The RTEMS 4.10 patches # -Patch0: gcc-core-4.4.7-rtems4.10-20120314.diff +Patch0: %{rtems_gcc_patches}/gcc-core-4.4.7-rtems4.10-20120314.diff %if %{enable_cxx} -Patch1: gcc-g++-4.4.7-rtems4.10-20120314.diff +Patch1: %{rtems_gcc_patches}/gcc-g++-4.4.7-rtems4.10-20120314.diff %endif -Patch10: newlib-1.18.0-rtems4.10-20110518.diff +Patch10: %{rtems_newlib_patches}/newlib-1.18.0-rtems4.10-20110518.diff +%include rtems-gcc-patches.cfg # # The gcc/newlib build instructions. We use 4.4 Release 1. diff --git a/rtems/config/tools/rtems-gdb-7.3.1-1.cfg b/rtems/config/tools/rtems-gdb-7.3.1-1.cfg index b636319..d52b310 100644 --- a/rtems/config/tools/rtems-gdb-7.3.1-1.cfg +++ b/rtems/config/tools/rtems-gdb-7.3.1-1.cfg @@ -7,7 +7,7 @@ %define gdb_version 7.3.1 -Patch0: gdb-7.3.1-rtems4.10-20120918.diff +Patch0: %{rtems_gdb_patches}/gdb-7.3.1-rtems4.10-20120918.diff # # The gdb build instructions. We use 7.xx Release 1. diff --git a/rtems/config/tools/rtems-kernel-4-1.cfg b/rtems/config/tools/rtems-kernel-4-1.cfg new file mode 100644 index 0000000..02fb9cd --- /dev/null +++ b/rtems/config/tools/rtems-kernel-4-1.cfg @@ -0,0 +1,95 @@ +# +# RTEMS 4.xx Version 1. +# +# This configuration file configure's, make's and install's RTEMS. +# + +%include %{_configdir}/checks.cfg + +Name: %{_target}-kernel-%{rtems_kernel_version}-%{release} +Summary: RTEMS v%{rtems_kernel_version} for target %{_target} on host %{_host} +Version: %{rtems_kernel_version} +Release: %{release} +URL: http://www..rtems.org/ +BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n) + +# +# Source +# +%ifn %{defined Source0} + Source0: http://www.rtems.org/ftp/pub/rtems/%{rtems_kernel_version}/rtems-%{rtems_kernel_version}.tar.bz2 +%endif + +# +# Default set up. +# +%ifn %{defined rtems_posix} + %define rtems_posix 1 +%endif +%ifn %{defined rtems_networking} + %define rtems_networking 1 +%endif +%ifn %{defined rtems_cxx} + %define rtems_cxx 1 +%endif +%ifn %{defined rtems_tests} + %define rtems_tests samples +%endif + +%if %{rtems_tests} == disable + %define rtems_tests_opt --disable-tests +%else + %define rtems_tests_opt --enable-tests=%{rtems_tests} +%endif + +# +# Prepare the source code. +# +%prep + %setup -q -c -n %{name}-%{version} + cd rtems-%{rtems_kernel_version} + %{?patch0:%patch0 %{?patch0_opts:%{patch0_opts}}%{!?patch0_opts:-p1}} + %{?patch1:%patch1 %{?patch1_opts:%{patch1_opts}}%{!?patch1_opts:-p1}} + %{?patch2:%patch2 %{?patch2_opts:%{patch2_opts}}%{!?patch2_opts:-p1}} + %{?patch3:%patch3 %{?patch3_opts:%{patch3_opts}}%{!?patch3_opts:-p1}} + %{?patch4:%patch4 %{?patch4_opts:%{patch4_opts}}%{!?patch4_opts:-p1}} + %{?patch5:%patch5 %{?patch5_opts:%{patch5_opts}}%{!?patch5_opts:-p1}} + %{?patch6:%patch6 %{?patch6_opts:%{patch6_opts}}%{!?patch6_opts:-p1}} + %{?patch7:%patch7 %{?patch7_opts:%{patch7_opts}}%{!?patch7_opts:-p1}} + %{?patch8:%patch8 %{?patch8_opts:%{patch8_opts}}%{!?patch8_opts:-p1}} + %{?patch9:%patch9 %{?patch9_opts:%{patch9_opts}}%{!?patch9_opts:-p1}} + cd .. + +%build + export PATH="%{_bindir}:${PATH}" + mkdir -p build + cd build + %{?host_force_32bit:HOST_FORCE_32BIT="-m32"} +%if "%{_build}" != "%{_host}" + CFLAGS_FOR_BUILD="-g -O2 -Wall ${HOST_FORCE_32BIT}" \ +%endif + CFLAGS="$SB_OPT_FLAGS" \ + ../rtems-%{rtems_kernel_version}/configure \ + --build=%{_build} --host=%{_host} \ + --target=%{_target} \ + %{?rtems_posix:--enable-posix}%{!?rtems_posix:--disable-posix} \ + %{?rtems_networking:--enable-networking}%{!?rtems_networking:--disable-networking} \ + %{?rtems_cxx:--enable-cxx}%{!?rtems_cxx:--disable-cxx} \ + %{rtems_tests_opt} \ + --target=%{_target} \ + --prefix=%{_prefix} --bindir=%{_bindir} \ + --exec-prefix=%{_exec_prefix} \ + --includedir=%{_includedir} --libdir=%{_libdir} \ + --mandir=%{_mandir} --infodir=%{_infodir} + + %{__make} %{?_smp_mflags} all + cd .. + +%install + export PATH="%{_bindir}:${PATH}" + rm -rf $SB_BUILD_ROOT + + cd build + %{__make} DESTDIR=$SB_BUILD_ROOT install + + cd .. diff --git a/rtems/config/tools/rtems-kernel-4.10.2.cfg b/rtems/config/tools/rtems-kernel-4.10.2.cfg new file mode 100644 index 0000000..758aba5 --- /dev/null +++ b/rtems/config/tools/rtems-kernel-4.10.2.cfg @@ -0,0 +1,13 @@ +# +# RTEMS 4.10.2 +# + +%include %{_configdir}/checks.cfg +%include %{_configdir}/base.cfg + +%define rtems_kernel_version 4.10.2 + +# +# The RTEMS build instructions. We use 4.xx Release 1. +# +%include tools/rtems-kernel-4-1.cfg |