Add per arch build sets using %include.

Add per arch build sets as this is really what RTEMS needs. You
can then vary the version based on the architecture.

Add '%include' to the buildset files.
This commit is contained in:
Chris Johns 2013-02-09 19:07:37 +11:00
parent 6a2003e687
commit 2f72d35a79
5 changed files with 72 additions and 15 deletions

View File

@ -0,0 +1,12 @@
#
# Base defines for RTEMS 4.11
#
%define rtems_version 4.11
package: rtems-%{rtems_version}-%{_target}-%{release}
#
# Project custom message
#
%define gcc_version_message RTEMS %{rtems_version}-%{release},gcc-%{gcc_version}/newlib-%{newlib_version}

View File

@ -0,0 +1,19 @@
#
# Tools Set for RTEMS ARM 4.11 Stable
#
%define _target arm-rtemseabi4.11
%define release 1
#
# The RTEMS 4.11 base defines.
#
%include rtems-4.11-base.bset
#
# Tools configuration.
#
rtems-binutils-2.22-1
rtems-gcc-4.6.3-newlib-1.20.0-1
rtems-gdb-7.5-1

View File

@ -0,0 +1,19 @@
#
# Tools Set for RTEMS SPARC 4.11 Stable
#
%define _target sparc-rtems4.11
%define release 1
#
# The RTEMS 4.11 base defines.
#
%include rtems-4.11-base.bset
#
# Tools configuration.
#
rtems-binutils-2.22-1
rtems-gcc-4.6.3-newlib-1.20.0-1
rtems-gdb-7.5-1

View File

@ -251,7 +251,7 @@ class command_line:
def _help(self):
print '%s: [options] [args]' % (self.command_name)
print 'Source Builder, an RTEMS Tools Project (c) 2012 Chris Johns'
print 'Source Builder, an RTEMS Tools Project (c) 2012-2013 Chris Johns'
print 'Options and arguments:'
print '--force : Create directories that are not present'
print '--trace : Trace the execution (not current used)'

View File

@ -1,6 +1,6 @@
#
# RTEMS Tools Project (http://www.rtems.org/)
# Copyright 2010-2012 Chris Johns (chrisj@rtems.org)
# Copyright 2010-2013 Chris Johns (chrisj@rtems.org)
# All rights reserved.
#
# This file is part of the RTEMS Tools package in 'rtems-tools'.
@ -18,7 +18,7 @@
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#
# This code builds a cross-gcc compiler tool suite given a tool set. A tool
# This code builds a package compiler tool suite given a tool set. A tool
# set lists the various tools. These are specific tool configurations.
#
@ -110,7 +110,7 @@ class buildset:
" && %{__tar} -cf - . | %{__bzip2} > " + tar + "'")
_build.run(cmd, shell_opts = '-c', cwd = tmproot)
def load(self):
def parse(self, bset):
def _clean(line):
line = line[0:-1]
@ -119,17 +119,6 @@ class buildset:
line = line[1:b]
return line.strip()
exbset = self.opts.expand(self.bset, self.defaults)
self.defaults['_bset'] = ('none', 'none', exbset)
root, ext = path.splitext(exbset)
if exbset.endswith('.bset'):
bset = exbset
else:
bset = '%s.bset' % (exbset)
bsetname = bset
if not path.exists(bsetname):
@ -168,6 +157,9 @@ class buildset:
if l.startswith('%define'):
ls = l.split()
self.defaults[ls[1].strip()] = ('none', 'none', ls[2].strip())
elif l.startswith('%include'):
ls = l.split(' ')
configs += self.parse(ls[1].strip())
else:
raise error.general('invalid directive in build set files: %s' % (l))
else:
@ -180,6 +172,21 @@ class buildset:
return configs
def load(self):
exbset = self.opts.expand(self.bset, self.defaults)
self.defaults['_bset'] = ('none', 'none', exbset)
root, ext = path.splitext(exbset)
if exbset.endswith('.bset'):
bset = exbset
else:
bset = '%s.bset' % (exbset)
return self.parse(bset)
def make(self):
_trace(self.opts, '_bset:%s: make' % (self.bset))