mirror of
https://git.rtems.org/rtems-source-builder
synced 2024-10-09 07:15:10 +08:00
Support released downloading of the RTEMS Tools and RTEMS Kernel.
Add a --without-error-reports flags to reduce the noise on --with-downloading.
This commit is contained in:
parent
191eb04c4e
commit
da1bc8c25e
@ -11,3 +11,8 @@
|
||||
%define rtems_gcc_patches %{rtems_git_tools}/gcc
|
||||
%define rtems_newlib_patches %{rtems_git_tools}/newlib
|
||||
%define rtems_gdb_patches %{rtems_git_tools}/gdb
|
||||
|
||||
#
|
||||
# Releases paths on the FTP server.
|
||||
#
|
||||
%define rtems_release_url https://ftp.rtems.org/pub/rtems/releases/%{rtems_version}
|
||||
|
@ -16,7 +16,30 @@ BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n)
|
||||
#
|
||||
# Source
|
||||
#
|
||||
%source set rtems http://ftp.rtems.org/pub/rtems/%{rtems_kernel_version}/rtems-%{rtems_kernel_version}.tar.bz2
|
||||
%if %{rsb_released}
|
||||
%if ! %{defined rtems_kernel_compression}
|
||||
%define rtems_kernel_compression xz
|
||||
%endif
|
||||
%source set rtems %{rtems_release_url}/%{rtems_kernel_version}/rtems-%{rtems_kernel_version}.tar.%{rtems_kernel_compression}
|
||||
%define rtems_bootstrap 0
|
||||
%else
|
||||
%if ! %{defined rtems_kernel_version}
|
||||
%define rtems_kernel_version HEAD
|
||||
%endif
|
||||
%if %{defined rtems_kernel_git_commit_hash}
|
||||
%define rtems_kernel_git_checkout ?checkout=%{defined rtems_kernel_git_commit_hash}
|
||||
%else
|
||||
%define rtems_kernel_git_checkout %{nil}
|
||||
%endif
|
||||
|
||||
%source set rtems git://git.rtems.org/rtems.git?reset=hard?branch=%{rtems_kernel_version}?pull%{rtems_kernel_git_checkout}
|
||||
|
||||
#
|
||||
# The code in git needs to be bootstrapped. Do each build because we have
|
||||
# no way to change what changes may have happened in the code.
|
||||
#
|
||||
%define rtems_bootstrap 1
|
||||
%endif
|
||||
|
||||
#
|
||||
# If C++ defined for the tool set use it to control RTEMS's setting..
|
||||
|
@ -5,16 +5,11 @@
|
||||
%include %{_configdir}/checks.cfg
|
||||
%include %{_configdir}/base.cfg
|
||||
|
||||
%define rtems_kernel_version 4.10.2
|
||||
%define rtems_kernel_version 4.10.2
|
||||
%define rtems_kernel_compression bz2
|
||||
|
||||
%hash md5 rtems-%{rtems_kernel_version}.tar.bz2 158566d0f1330d4eaba5a60e757d3dd0
|
||||
|
||||
#
|
||||
# The code in git needs to be bootstrapped. Do each build because we have
|
||||
# no way to change what changes may have happened in the code.
|
||||
#
|
||||
%define rtems_bootstrap 0
|
||||
|
||||
#
|
||||
# The RTEMS build instructions. We use 4.xx Release 1.
|
||||
#
|
||||
|
@ -11,12 +11,21 @@
|
||||
%define rtems_kernel_build 0
|
||||
%endif
|
||||
|
||||
#
|
||||
# Build if the RSB is released.
|
||||
#
|
||||
%if ! %{rtems_kernel_build}
|
||||
%if %{rsb_released}
|
||||
%define rtems_kernel_build 1
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %{rtems_kernel_build}
|
||||
%include %{_configdir}/checks.cfg
|
||||
%include %{_configdir}/base.cfg
|
||||
%include %{_configdir}/versions.cfg
|
||||
|
||||
%define rtems_kernel_version 4.11
|
||||
%define rtems_kernel_version 4.11.0-rc1
|
||||
|
||||
#
|
||||
# A magic internal path that would break if changes in the defaults.mc
|
||||
@ -35,18 +44,6 @@
|
||||
%endif
|
||||
%endif
|
||||
|
||||
#
|
||||
# Pull the latest changes from git each build. Override if this is not what you
|
||||
# want.
|
||||
#
|
||||
%source set rtems git://git.rtems.org/rtems.git?reset=hard?pull
|
||||
|
||||
#
|
||||
# The code in git needs to be bootstrapped. Do each build because we have
|
||||
# no way to change what changes may have happened in the code.
|
||||
#
|
||||
%define rtems_bootstrap
|
||||
|
||||
#
|
||||
# The RTEMS build instructions. We use 4.xx Release 1.
|
||||
#
|
||||
|
@ -5,13 +5,8 @@
|
||||
%include %{_configdir}/checks.cfg
|
||||
%include %{_configdir}/base.cfg
|
||||
|
||||
%define rtems_kernel_version 4.9.6
|
||||
|
||||
#
|
||||
# The code in git needs to be bootstrapped. Do each build because we have
|
||||
# no way to change what changes may have happened in the code.
|
||||
#
|
||||
%define rtems_bootstrap
|
||||
%define rtems_kernel_version 4.9.6
|
||||
%define rtems_kernel_compression bz2
|
||||
|
||||
#
|
||||
# The RTEMS build instructions. We use 4.xx Release 1.
|
||||
|
@ -21,19 +21,28 @@
|
||||
|
||||
%if %{rtems_tools_build}
|
||||
#
|
||||
# Pull the latest changes from git each build. Override if this is not what you
|
||||
# want.
|
||||
# If the RSB is released look for a release tarball else use git.
|
||||
#
|
||||
%if %{defined rtems_tools_version}
|
||||
%define rtems_tools_git_checkout ?checkout=%{rtems_tools_version}
|
||||
%if %{rsb_released}
|
||||
%source set rtems-tools %{rtems_release_url}/%{rtems_tools_version}/rtems-tools-%{rtems_tools_version}.tar.xz
|
||||
%else
|
||||
%define rtems_tools_version HEAD
|
||||
%define rtems_tools_git_checkout %{nil}
|
||||
#
|
||||
# rtems_git_commit_hash : The commit hash else the branch is tracked.
|
||||
#
|
||||
%if ! %{defined rtems_tools_version}
|
||||
%define rtems_tools_version HEAD
|
||||
%endif
|
||||
%if %{defined rtems_tools_git_commit_hash}
|
||||
%define rtems_tools_git_checkout ?checkout=%{defined rtems_tools_git_commit_hash}
|
||||
%else
|
||||
%define rtems_tools_git_checkout %{nil}
|
||||
%endif
|
||||
|
||||
%source set rtems-tools git://git.rtems.org/rtems-tools.git?reset=hard?branch=%{rtems_tools_version}?pull%{rtems_tools_git_checkout}
|
||||
%endif
|
||||
%source set rtems-tools git://git.rtems.org/rtems-tools.git?reset=hard?branch=master?pull%{rtems_tools_git_checkout}
|
||||
|
||||
#
|
||||
# The RTEMS Tools build instructions. We use GIT Release 1.
|
||||
#
|
||||
%include tools/rtems-tools-git-1.cfg
|
||||
%include tools/rtems-tools-common-1.cfg
|
||||
%endif
|
||||
|
@ -2,8 +2,10 @@
|
||||
# RTEMS Tools for 4.11.
|
||||
#
|
||||
|
||||
# Wait for the release and until then track head.
|
||||
# %define rtems_tools_version 2015c854c54ac13d3712ddb58e946659dcc617dc
|
||||
#
|
||||
# Track the release branch.
|
||||
#
|
||||
%define rtems_tools_version %{rsb_version}
|
||||
|
||||
#
|
||||
# The RTEMS Tools build instructions. We use GIT Release 1.
|
||||
|
54
rtems/config/tools/rtems-tools-common-1.cfg
Normal file
54
rtems/config/tools/rtems-tools-common-1.cfg
Normal file
@ -0,0 +1,54 @@
|
||||
#
|
||||
# RTEMS Tools Version 2.
|
||||
#
|
||||
# This configuration file configure's, builds and install's RTEMS Tools.
|
||||
#
|
||||
|
||||
Name: rtems-tools-%{rtems_tools_version}-%{release}
|
||||
Summary: RTEMS Tools %{rtems_tools_version} for host %{_host}
|
||||
Version: %{rtems_tools_version}
|
||||
Release: %{release}
|
||||
URL: http://www.rtems.org/
|
||||
BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n)
|
||||
License: BSD-2-Caluse + GPL-2.0
|
||||
|
||||
#
|
||||
# Prepare the source code.
|
||||
#
|
||||
%prep
|
||||
# save the build top directory and cd back to it rather than
|
||||
# using 'cd ..' because some shells change $PWD to a symlink's
|
||||
# target location and 'cd ..' fails.
|
||||
build_top=$(pwd)
|
||||
|
||||
source_dir_rtems_tools="%{name}"
|
||||
%source setup rtems-tools -q -D -n %{name}
|
||||
%patch setup rtems-tools -p1
|
||||
|
||||
cd ${build_top}
|
||||
|
||||
%build
|
||||
build_top=$(pwd)
|
||||
|
||||
#
|
||||
# Provide the host for a Cxc build.
|
||||
#
|
||||
if test "%{_build}" != "%{_host}" ; then
|
||||
RT_HOST="-host=%{_host}"
|
||||
else
|
||||
RT_HOST=
|
||||
fi
|
||||
|
||||
cd ${source_dir_rtems_tools}
|
||||
./waf configure ${RT_HOST} --prefix=%{_prefix}
|
||||
./waf
|
||||
cd ${build_top}
|
||||
|
||||
%install
|
||||
build_top=$(pwd)
|
||||
|
||||
%{__rmdir} $SB_BUILD_ROOT
|
||||
|
||||
cd ${source_dir_rtems_tools}
|
||||
./waf --destdir=$SB_BUILD_ROOT install
|
||||
cd ${build_top}
|
@ -45,8 +45,9 @@ version: none, none, ''
|
||||
release: none, none, ''
|
||||
buildname: none, none, '%{name}'
|
||||
|
||||
# The default is not release.
|
||||
is_rsb_release: none, none, '0'
|
||||
# The default is not released.
|
||||
rsb_released: none, none, '0'
|
||||
rsb_version: none, none, 'no-version'
|
||||
|
||||
# GNU triples needed to build packages
|
||||
_host: triplet, required, ''
|
||||
|
@ -111,8 +111,10 @@ class build:
|
||||
return name
|
||||
|
||||
def _generate_report_(self, header, footer = None):
|
||||
ereport.generate('rsb-report-%s.txt' % self.macros['name'],
|
||||
self.opts, header, footer)
|
||||
label, result = self.opts.with_arg('error-report')
|
||||
if label.startswith('without') and result == 'no':
|
||||
ereport.generate('rsb-report-%s.txt' % self.macros['name'],
|
||||
self.opts, header, footer)
|
||||
|
||||
def __init__(self, name, create_tar_files, opts, macros = None):
|
||||
try:
|
||||
|
@ -303,9 +303,8 @@ class command_line:
|
||||
|
||||
def sb_released(self):
|
||||
if version.released():
|
||||
self.defaults['is_rsb_released'] = '1'
|
||||
self.defaults['_sbreleased'] = '1'
|
||||
self.defaults['_sbversion'] = version.str()
|
||||
self.defaults['rsb_released'] = '1'
|
||||
self.defaults['rsb_version'] = version.str()
|
||||
|
||||
def sb_git(self):
|
||||
repo = git.repo(self.defaults.expand('%{_sbdir}'), self)
|
||||
|
Loading…
x
Reference in New Issue
Block a user