mirror of
https://git.rtems.org/rtems-source-builder
synced 2024-10-09 07:15:10 +08:00

Add arch build files. This allows archs to have different versions and patches for specific tools. Break the RTEMS config directory up into separate directories to make long term maintenance easier. This required a change to config.py to handle the config files being in subdirs of the config directory. The defaults have been updated to include the install SB root so packages built before a package are available. Add makeinfo to the required tools. GDB (and others) need it to build without error.
93 lines
2.6 KiB
INI
93 lines
2.6 KiB
INI
#
|
|
# Binutils 2.xx Version 1.
|
|
#
|
|
# This configuration file configure's, make's and install's binutils.
|
|
#
|
|
|
|
%include %{_configdir}/checks.cfg
|
|
|
|
Name: %{_target}-binutils-%{binutils_version}-%{release}
|
|
Summary: Binutils v%{binutils_version} for target %{_target} on host %{_host}
|
|
Version: %{binutils_version}
|
|
Release: %{release}
|
|
URL: http://sources.redhat.com/binutils
|
|
BuildRoot: %{_tmppath}/%{name}-root-%(%{__id_u} -n)
|
|
|
|
#
|
|
# Source
|
|
#
|
|
%ifn %{defined Source0}
|
|
Source0: ftp://ftp.gnu.org/gnu/binutils/binutils-%{binutils_version}.tar.bz2
|
|
VersionControl0: cvs -z 9 -d :pserver:anoncvs@sourceware.org:/cvs/src co binutils
|
|
%endif
|
|
|
|
#
|
|
# Prepare the source code.
|
|
#
|
|
%prep
|
|
%setup -q -c -T -n %{name}-%{version}
|
|
%setup -q -D -T -n %{name}-%{version} -a0
|
|
cd binutils-%{binutils_version}
|
|
%{?patch0:%patch0 -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" \
|
|
../binutils-%{binutils_version}/configure \
|
|
--build=%{_build} --host=%{_host} \
|
|
--target=%{_target} \
|
|
--verbose --disable-nls \
|
|
%{?with_deterministic_archives:--enable-deterministic-archives} \
|
|
--without-included-gettext \
|
|
--disable-win32-registry \
|
|
--disable-werror \
|
|
--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
|
|
|
|
# Dropped in FSF-binutils-2.9.5, but Cygwin still ships it.
|
|
rm -rf $SB_BUILD_ROOT%{_infodir}/configure.info*
|
|
|
|
rm -f $SB_BUILD_ROOT%{_infodir}/dir
|
|
touch $SB_BUILD_ROOT%{_infodir}/dir
|
|
|
|
# binutils does not install share/locale, however it uses it
|
|
mkdir -p $SB_BUILD_ROOT%{_prefix}/share/locale
|
|
|
|
# We don't ship host files
|
|
rm -f ${SB_BUILD_ROOT}%{_libdir}/libiberty*
|
|
|
|
# manpages without corresponding tools
|
|
if test ! -f ${SB_BUILD_ROOT}%{_bindir}/%{_target}-dlltool%{_exeext}; then
|
|
rm -f ${SB_BUILD_ROOT}%{_mandir}/man1/%{_target}-dlltool*
|
|
fi
|
|
if test ! -f ${SB_BUILD_ROOT}%{_bindir}/%{_target}-nlmconv%{_exeext}; then
|
|
rm -f ${SB_BUILD_ROOT}%{_mandir}/man1/%{_target}-nlmconv*
|
|
fi
|
|
if test ! -f ${SB_BUILD_ROOT}%{_bindir}/%{_target}-windres%{_exeext}; then
|
|
rm -f ${SB_BUILD_ROOT}%{_mandir}/man1/%{_target}-windres*
|
|
fi
|
|
if test ! -f ${SB_BUILD_ROOT}%{_bindir}/%{_target}-windmc%{_exeext}; then
|
|
rm -f ${SB_BUILD_ROOT}%{_mandir}/man1/%{_target}-windmc*
|
|
fi
|
|
|
|
cd ..
|