summaryrefslogtreecommitdiffstats
path: root/bare
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2013-11-05 22:09:11 +1100
committerChris Johns <chrisj@rtems.org>2013-11-05 22:09:11 +1100
commit873016c24940e94595a236941ef496724b665bca (patch)
tree773a7e4a5f246ac8b09363ef59df652322bf3761 /bare
parentAdd Fedora 18 dependence. (diff)
downloadrtems-source-builder-873016c24940e94595a236941ef496724b665bca.tar.bz2
Add Bare support for GNU tools.
Add support to build bare metal tools such as sparc-elf.
Diffstat (limited to 'bare')
-rw-r--r--bare/config/bare-binutils-patches.cfg27
-rw-r--r--bare/config/bare-config.cfg14
-rw-r--r--bare/config/bare-gcc-patches.cfg51
-rw-r--r--bare/config/bare-gdb-patches.cfg27
-rw-r--r--bare/config/devel/binutils-2.23.2-1.cfg27
-rw-r--r--bare/config/devel/gcc-4.8.2-newlib-cvs-1.cfg53
-rw-r--r--bare/config/devel/gdb-7.6.1-1.cfg18
-rw-r--r--bare/config/gnu-tools-4.8.2.bset25
8 files changed, 242 insertions, 0 deletions
diff --git a/bare/config/bare-binutils-patches.cfg b/bare/config/bare-binutils-patches.cfg
new file mode 100644
index 0000000..c61a29b
--- /dev/null
+++ b/bare/config/bare-binutils-patches.cfg
@@ -0,0 +1,27 @@
+#
+# Manage Bare Binutils specific patches in the build sets
+#
+%if %{defined bare_binutils_patch1}
+ Patch1: %{bare_binutils_patch1}
+%endif
+%if %{defined bare_binutils_patch2}
+ Patch2: %{bare_binutils_patch2}
+%endif
+%if %{defined bare_binutils_patch3}
+ Patch3: %{bare_binutils_patch3}
+%endif
+%if %{defined bare_binutils_patch4}
+ Patch4: %{bare_binutils_patch4}
+%endif
+%if %{defined bare_binutils_patch11}
+ Patch11: %{bare_binutils_patch11}
+%endif
+%if %{defined bare_binutils_patch12}
+ Patch12: %{bare_binutils_patch12}
+%endif
+%if %{defined bare_binutils_patch13}
+ Patch13: %{bare_binutils_patch13}
+%endif
+%if %{defined bare_binutils_patch14}
+ Patch14: %{bare_binutils_patch14}
+%endif
diff --git a/bare/config/bare-config.cfg b/bare/config/bare-config.cfg
new file mode 100644
index 0000000..2633cd7
--- /dev/null
+++ b/bare/config/bare-config.cfg
@@ -0,0 +1,14 @@
+#
+# Base defines for Bare Tools. We use the RTEMS Tools repo for patches.
+#
+
+#
+# The RTEMS http git URL.
+#
+%define rtems_version 4.11
+%define rtems_http_git http://git.rtems.org
+%define rtems_git_tools %{rtems_http_git}/rtems-tools/plain/tools/%{rtems_version}
+%define bare_binutils_patches %{rtems_git_tools}/binutils
+%define bare_gcc_patches %{rtems_git_tools}/gcc
+%define bare_newlib_patches %{rtems_git_tools}/newlib
+%define bare_gdb_patches %{rtems_git_tools}/gdb
diff --git a/bare/config/bare-gcc-patches.cfg b/bare/config/bare-gcc-patches.cfg
new file mode 100644
index 0000000..953771e
--- /dev/null
+++ b/bare/config/bare-gcc-patches.cfg
@@ -0,0 +1,51 @@
+#
+# Manage Bare GCC/Newlib specific patches in the build sets
+#
+%if %{defined bare_gcc_patch1}
+ Patch1: %{bare_gcc_patch1}
+ %if %{defined bare_gcc_patch1_opts}
+ %define patch1_opts %{bare_gcc_patch1_opts}
+ %endif
+%endif
+%if %{defined bare_gcc_patch2}
+ Patch2: %{bare_gcc_patch2}
+ %if %{defined bare_gcc_patch2_opts}
+ %define patch2_opts %{bare_gcc_patch2_opts}
+ %endif
+%endif
+%if %{defined bare_gcc_patch3}
+ Patch3: %{bare_gcc_patch3}
+ %if %{defined bare_gcc_patch3_opts}
+ %define patch3_opts %{bare_gcc_patch3_opts}
+ %endif
+%endif
+%if %{defined bare_gcc_patch4}
+ Patch4: %{bare_gcc_patch4}
+ %if %{defined bare_gcc_patch4_opts}
+ %define patch4_opts %{bare_gcc_patch4_opts}
+ %endif
+%endif
+%if %{defined bare_gcc_patch11}
+ Patch11: %{bare_gcc_patch11}
+ %if %{defined bare_gcc_patch11_opts}
+ %define patch11_opts %{bare_gcc_patch11_opts}
+ %endif
+%endif
+%if %{defined bare_gcc_patch12}
+ Patch12: %{bare_gcc_patch12}
+ %if %{defined bare_gcc_patch12_opts}
+ %define patch12_opts %{bare_gcc_patch12_opts}
+ %endif
+%endif
+%if %{defined bare_gcc_patch13}
+ Patch13: %{bare_gcc_patch13}
+ %if %{defined bare_gcc_patch13_opts}
+ %define patch13_opts %{bare_gcc_patch13_opts}
+ %endif
+%endif
+%if %{defined bare_gcc_patch14}
+ Patch14: %{bare_gcc_patch14}
+ %if %{defined bare_gcc_patch14_opts}
+ %define patch14_opts %{bare_gcc_patch14_opts}
+ %endif
+%endif
diff --git a/bare/config/bare-gdb-patches.cfg b/bare/config/bare-gdb-patches.cfg
new file mode 100644
index 0000000..78b37a8
--- /dev/null
+++ b/bare/config/bare-gdb-patches.cfg
@@ -0,0 +1,27 @@
+#
+# Manage Bare GDB specific patches in the build sets
+#
+%if %{defined bare_gdb_patch1}
+ Patch1: %{bare_gdb_patch1}
+%endif
+%if %{defined bare_gdb_patch2}
+ Patch2: %{bare_gdb_patch2}
+%endif
+%if %{defined bare_gdb_patch3}
+ Patch3: %{bare_gdb_patch3}
+%endif
+%if %{defined bare_gdb_patch4}
+ Patch4: %{bare_gdb_patch4}
+%endif
+%if %{defined bare_gdb_patch11}
+ Patch11: %{bare_gdb_patch11}
+%endif
+%if %{defined bare_gdb_patch12}
+ Patch12: %{bare_gdb_patch12}
+%endif
+%if %{defined bare_gdb_patch13}
+ Patch13: %{bare_gdb_patch13}
+%endif
+%if %{defined bare_gdb_patch14}
+ Patch14: %{bare_gdb_patch14}
+%endif
diff --git a/bare/config/devel/binutils-2.23.2-1.cfg b/bare/config/devel/binutils-2.23.2-1.cfg
new file mode 100644
index 0000000..b785e58
--- /dev/null
+++ b/bare/config/devel/binutils-2.23.2-1.cfg
@@ -0,0 +1,27 @@
+#
+# Binutils 2.23.
+#
+
+%include %{_configdir}/bare-config.cfg
+
+%include %{_configdir}/checks.cfg
+%include %{_configdir}/base.cfg
+
+%define binutils_version 2.23.2
+
+#
+# Enable deterministic archives by default. This will be the default
+# there all tools using this binutils will create deterministic
+# archives.
+#
+%define with_deterministic_archives 1
+
+#
+# Include the bare patches
+#
+%include bare-binutils-patches.cfg
+
+#
+# The binutils build instructions. We use 2.xx Release 1.
+#
+%include %{_configdir}/binutils-2-1.cfg
diff --git a/bare/config/devel/gcc-4.8.2-newlib-cvs-1.cfg b/bare/config/devel/gcc-4.8.2-newlib-cvs-1.cfg
new file mode 100644
index 0000000..176bba1
--- /dev/null
+++ b/bare/config/devel/gcc-4.8.2-newlib-cvs-1.cfg
@@ -0,0 +1,53 @@
+#
+# GCC 4.8.2., Newlib CVS
+#
+
+%include %{_configdir}/bare-config.cfg
+
+%include %{_configdir}/checks.cfg
+%include %{_configdir}/base.cfg
+%include %{_configdir}/versions.cfg
+
+%define gcc_version 4.8.2
+%define newlib_version 1-Nov-2013
+%define mpfr_version 3.0.1
+%define mpc_version 0.8.2
+%define gmp_version 5.0.5
+
+#
+# Project custom message
+#
+%define gcc_version_message RSB-%{_sbgit_id})-%{release},gcc-%{gcc_version}/newlib-%{newlib_version}
+
+%define with_threads 0
+%define with_plugin 0
+
+%ifn %{defined with_iconv}
+%define with_iconv 1
+%endif
+
+# Incompatible with Texinfo 5
+%if %{__makeinfo_ver} >= 5.0
+ %error Incomaptible version of makeinfo found!
+%endif
+
+#
+# Newlib is from CVS.
+#
+Source10: cvs://pserver:anoncvs@sourceware.org/cvs/src?module=newlib?src-prefix=src?date=%{newlib_version}?reset
+
+#
+# Joel's stack_t patch.
+#
+%define bare_gcc_patch11 %{bare_newlib_patches}/newlib-sys-signal-20130532.diff
+%define bare_gcc_patch11_opts -p0
+
+#
+#
+# Manage bare patches
+#
+%include bare-gcc-patches.cfg
+
+# The gcc/newlib build instructions. We use 4.8 Release 1.
+#
+%include %{_configdir}/gcc-4.8-1.cfg
diff --git a/bare/config/devel/gdb-7.6.1-1.cfg b/bare/config/devel/gdb-7.6.1-1.cfg
new file mode 100644
index 0000000..4ad433d
--- /dev/null
+++ b/bare/config/devel/gdb-7.6.1-1.cfg
@@ -0,0 +1,18 @@
+#
+# GDB 7.6.1.
+#
+
+%include %{_configdir}/checks.cfg
+%include %{_configdir}/base.cfg
+
+%define gdb_version 7.6.1
+
+#
+# Bare Build Set patches.
+#
+%include bare-gdb-patches.cfg
+
+#
+# The gdb build instructions. We use 7.xx Release 1.
+#
+%include %{_configdir}/gdb-7-1.cfg
diff --git a/bare/config/gnu-tools-4.8.2.bset b/bare/config/gnu-tools-4.8.2.bset
new file mode 100644
index 0000000..b428d88
--- /dev/null
+++ b/bare/config/gnu-tools-4.8.2.bset
@@ -0,0 +1,25 @@
+#
+# GNU Tools Set
+#
+
+%define release 1
+
+package: gnu-tools-%{_target}-%{release}
+
+#
+# Project custom message
+#
+%define gcc_version_message SB-%{release},gcc-%{gcc_version}/newlib-%{newlib_version}
+
+#
+# Enable G++
+#
+%define enable_cxx 1
+
+#
+# Tool configuration.
+#
+devel/expat-2.1.0-1
+devel/binutils-2.23.2-1
+devel/gcc-4.8.2-newlib-cvs-1
+devel/gdb-7.6.1-1