#
|
#
|
# spec file for binutils package targetting rtems
|
# spec file for binutils package targetting rtems
|
#
|
#
|
# Copyright (c) 1999 OARCorp, Huntsville, AL
|
# Copyright (c) 1999 OARCorp, Huntsville, AL
|
#
|
#
|
# please send bugfixes or comments to joel@OARcorp.com
|
# please send bugfixes or comments to joel@OARcorp.com
|
#
|
#
|
|
|
Vendor: OAR Corporation
|
Vendor: OAR Corporation
|
Distribution: Linux
|
Distribution: Linux
|
Name: @target_alias@-gnat-binutils-collection
|
Name: @target_alias@-gnat-binutils-collection
|
Summary: binutils for target @target_alias@
|
Summary: binutils for target @target_alias@
|
Group: gnatrtems
|
Group: gnatrtems
|
Release: @Release@
|
Release: @Release@
|
License: GPL/LGPL
|
License: GPL/LGPL
|
|
|
Provides: rtems-base-gnat-binutils @target_alias@-gnat-binutils
|
Provides: rtems-base-gnat-binutils @target_alias@-gnat-binutils
|
|
|
Autoreqprov: on
|
Autoreqprov: on
|
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
|
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
|
Prefix: /opt
|
Prefix: /opt
|
|
|
Version: @binutils_version@
|
Version: @binutils_version@
|
Source0: ftp://ftp.gnu.org/pub/gnu/binutils/binutils-@binutils_version@.tar.gz
|
Source0: ftp://ftp.gnu.org/pub/gnu/binutils/binutils-@binutils_version@.tar.gz
|
Patch0: binutils-@binutils_version@-rtems-@binutils_patch_version@.diff
|
Patch0: binutils-@binutils_version@-rtems-@binutils_patch_version@.diff
|
#
|
#
|
# The original sources are not included in the source RPM.
|
# The original sources are not included in the source RPM.
|
# If we included them, then the source RPMs for each target
|
# If we included them, then the source RPMs for each target
|
# would duplicate MBs of source unnecessarily. This is
|
# would duplicate MBs of source unnecessarily. This is
|
# a duplication of over 30 MBs of source for each of
|
# a duplication of over 30 MBs of source for each of
|
# the more than 10 targets it is possible to build.
|
# the more than 10 targets it is possible to build.
|
#
|
#
|
# You can get them yourself from the Internet and copy them to
|
# You can get them yourself from the Internet and copy them to
|
# your /usr/src/redhat/SOURCES directory ($RPM_SOURCE_DIR).
|
# your /usr/src/redhat/SOURCES directory ($RPM_SOURCE_DIR).
|
# Or you can try the ftp options of rpm :-)
|
# Or you can try the ftp options of rpm :-)
|
#
|
#
|
NoSource: 0
|
NoSource: 0
|
|
|
%description
|
%description
|
|
|
RTEMS is an open source operating system for embedded systems.
|
RTEMS is an open source operating system for embedded systems.
|
|
|
This is binutils sources with patches for RTEMS.
|
This is binutils sources with patches for RTEMS.
|
|
|
%package -n rtems-base-gnat-binutils
|
%package -n rtems-base-gnat-binutils
|
Summary: base package for rtems binutils
|
Summary: base package for rtems binutils
|
Group: rtems
|
Group: rtems
|
|
|
%description -n rtems-base-gnat-binutils
|
%description -n rtems-base-gnat-binutils
|
|
|
RTEMS is an open source operating system for embedded systems.
|
RTEMS is an open source operating system for embedded systems.
|
|
|
This is the base for binutils regardless of target CPU.
|
This is the base for binutils regardless of target CPU.
|
|
|
%package -n @target_alias@-gnat-binutils
|
%package -n @target_alias@-gnat-binutils
|
Summary: rtems binutils for @target_alias@
|
Summary: rtems binutils for @target_alias@
|
Group: rtems
|
Group: rtems
|
Requires: rtems-base-gnat-binutils
|
Requires: rtems-base-gnat-binutils
|
|
|
%description -n @target_alias@-gnat-binutils
|
%description -n @target_alias@-gnat-binutils
|
|
|
RTEMS is an open source operating system for embedded systems.
|
RTEMS is an open source operating system for embedded systems.
|
|
|
This is the GNU binutils for RTEMS targetting @target_alias@.
|
This is the GNU binutils for RTEMS targetting @target_alias@.
|
|
|
Authors:
|
Authors:
|
--------
|
--------
|
Joel Sherrill (joel@oarcorp.com)
|
Joel Sherrill (joel@oarcorp.com)
|
...
|
...
|
|
|
%prep
|
%prep
|
# untar the sources inside @target_alias@-gnat-binutils
|
# untar the sources inside @target_alias@-gnat-binutils
|
%setup -c -n @target_alias@-gnat-binutils -a 0
|
%setup -c -n @target_alias@-gnat-binutils -a 0
|
|
|
%patch0 -p0
|
%patch0 -p0
|
test -d build || mkdir build
|
test -d build || mkdir build
|
|
|
%build
|
%build
|
cd build
|
cd build
|
../binutils-@binutils_version@/configure --target=@target_alias@ \
|
../binutils-@binutils_version@/configure --target=@target_alias@ \
|
--verbose --prefix=/opt/gnatrtems
|
--verbose --prefix=/opt/gnatrtems
|
|
|
make all
|
make all
|
make info
|
make info
|
|
|
%install
|
%install
|
cd build
|
cd build
|
make prefix=$RPM_BUILD_ROOT/opt/gnatrtems install
|
make prefix=$RPM_BUILD_ROOT/opt/gnatrtems install
|
make prefix=$RPM_BUILD_ROOT/opt/gnatrtems install-info
|
make prefix=$RPM_BUILD_ROOT/opt/gnatrtems install-info
|
# A bug in binutils: binutils does not install share/locale
|
# A bug in binutils: binutils does not install share/locale
|
# however it uses it
|
# however it uses it
|
../binutils-@binutils_version@/mkinstalldirs \
|
../binutils-@binutils_version@/mkinstalldirs \
|
$RPM_BUILD_ROOT/opt/gnatrtems/share/locale
|
$RPM_BUILD_ROOT/opt/gnatrtems/share/locale
|
|
|
# gzip info files
|
# gzip info files
|
gzip -f $RPM_BUILD_ROOT/opt/gnatrtems/info/*.info 2>/dev/null
|
gzip -f $RPM_BUILD_ROOT/opt/gnatrtems/info/*.info 2>/dev/null
|
gzip -f $RPM_BUILD_ROOT/opt/gnatrtems/info/*.info-? 2>/dev/null
|
gzip -f $RPM_BUILD_ROOT/opt/gnatrtems/info/*.info-? 2>/dev/null
|
|
|
if test -f $RPM_BUILD_ROOT/opt/gnatrtems/info/configure.info.gz;
|
if test -f $RPM_BUILD_ROOT/opt/gnatrtems/info/configure.info.gz;
|
then
|
then
|
# These common files are only present in binutils >= 2.9.5
|
# These common files are only present in binutils >= 2.9.5
|
find $RPM_BUILD_ROOT/opt/gnatrtems/info -name 'configure.*' | \
|
find $RPM_BUILD_ROOT/opt/gnatrtems/info -name 'configure.*' | \
|
sed -e "s,^$RPM_BUILD_ROOT,,g" > ../files
|
sed -e "s,^$RPM_BUILD_ROOT,,g" > ../files
|
else
|
else
|
touch ../files
|
touch ../files
|
fi
|
fi
|
# These target specific files are only present in binutils >= 2.9.5
|
# These target specific files are only present in binutils >= 2.9.5
|
if test -f /opt/gnatrtems/bin/@target_alias@-readelf@exe_ext@;
|
if test -f /opt/gnatrtems/bin/@target_alias@-readelf@exe_ext@;
|
then
|
then
|
echo /opt/gnatrtems/bin/@target_alias@-readelf@exe_ext@ > ../files.target
|
echo /opt/gnatrtems/bin/@target_alias@-readelf@exe_ext@ > ../files.target
|
else
|
else
|
touch ../files.target
|
touch ../files.target
|
fi
|
fi
|
|
|
|
|
|
|
%post
|
%post
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
then
|
then
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
test x"$f" != x"" && for i in $f; do
|
test x"$f" != x"" && for i in $f; do
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
done
|
done
|
fi
|
fi
|
|
|
%postun
|
%postun
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
then
|
then
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
test x"$f" != x"" && for i in $f; do
|
test x"$f" != x"" && for i in $f; do
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
done
|
done
|
fi
|
fi
|
|
|
%files -n rtems-base-gnat-binutils -f files
|
%files -n rtems-base-gnat-binutils -f files
|
%dir /opt/gnatrtems/info
|
%dir /opt/gnatrtems/info
|
%doc /opt/gnatrtems/info/dir
|
%doc /opt/gnatrtems/info/dir
|
%doc /opt/gnatrtems/info/as.info.gz
|
%doc /opt/gnatrtems/info/as.info.gz
|
%doc /opt/gnatrtems/info/as.info-?.gz
|
%doc /opt/gnatrtems/info/as.info-?.gz
|
%doc /opt/gnatrtems/info/bfd.info.gz
|
%doc /opt/gnatrtems/info/bfd.info.gz
|
%doc /opt/gnatrtems/info/bfd.info-?.gz
|
%doc /opt/gnatrtems/info/bfd.info-?.gz
|
%doc /opt/gnatrtems/info/binutils.info.gz
|
%doc /opt/gnatrtems/info/binutils.info.gz
|
%doc /opt/gnatrtems/info/binutils.info-?.gz
|
%doc /opt/gnatrtems/info/binutils.info-?.gz
|
%doc /opt/gnatrtems/info/ld.info.gz
|
%doc /opt/gnatrtems/info/ld.info.gz
|
%doc /opt/gnatrtems/info/ld.info-?.gz
|
%doc /opt/gnatrtems/info/ld.info-?.gz
|
%doc /opt/gnatrtems/info/gasp.info.gz
|
%doc /opt/gnatrtems/info/gasp.info.gz
|
%doc /opt/gnatrtems/info/standards.info.gz
|
%doc /opt/gnatrtems/info/standards.info.gz
|
|
|
%dir /opt/gnatrtems/man
|
%dir /opt/gnatrtems/man
|
%dir /opt/gnatrtems/man/man1
|
%dir /opt/gnatrtems/man/man1
|
|
|
%dir /opt/gnatrtems/include
|
%dir /opt/gnatrtems/include
|
/opt/gnatrtems/include/bfd.h
|
/opt/gnatrtems/include/bfd.h
|
/opt/gnatrtems/include/ansidecl.h
|
/opt/gnatrtems/include/ansidecl.h
|
/opt/gnatrtems/include/bfdlink.h
|
/opt/gnatrtems/include/bfdlink.h
|
|
|
%dir /opt/gnatrtems/lib
|
%dir /opt/gnatrtems/lib
|
/opt/gnatrtems/lib/libbfd*
|
/opt/gnatrtems/lib/libbfd*
|
/opt/gnatrtems/lib/libiberty*
|
/opt/gnatrtems/lib/libiberty*
|
/opt/gnatrtems/lib/libopcodes*
|
/opt/gnatrtems/lib/libopcodes*
|
|
|
%dir /opt/gnatrtems/share
|
%dir /opt/gnatrtems/share
|
%dir /opt/gnatrtems/share/locale
|
%dir /opt/gnatrtems/share/locale
|
|
|
%files -n @target_alias@-gnat-binutils -f files.target
|
%files -n @target_alias@-gnat-binutils -f files.target
|
%doc /opt/gnatrtems/man/man1/@target_alias@-*.1
|
%doc /opt/gnatrtems/man/man1/@target_alias@-*.1
|
|
|
%dir /opt/gnatrtems/bin
|
%dir /opt/gnatrtems/bin
|
/opt/gnatrtems/bin/@target_alias@-addr2line@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-addr2line@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-ar@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-ar@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-as@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-as@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-c++filt@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-c++filt@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-gasp@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-gasp@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-ld@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-ld@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-nm@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-nm@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-objcopy@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-objcopy@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-objdump@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-objdump@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-ranlib@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-ranlib@exe_ext@
|
# readelf is not in older binutils so get it from file list
|
# readelf is not in older binutils so get it from file list
|
# /opt/gnatrtems/bin/@target_alias@-readelf@exe_ext@
|
# /opt/gnatrtems/bin/@target_alias@-readelf@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-size@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-size@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-strings@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-strings@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-strip@exe_ext@
|
/opt/gnatrtems/bin/@target_alias@-strip@exe_ext@
|
|
|
%dir /opt/gnatrtems/@target_alias@
|
%dir /opt/gnatrtems/@target_alias@
|
%dir /opt/gnatrtems/@target_alias@/bin
|
%dir /opt/gnatrtems/@target_alias@/bin
|
/opt/gnatrtems/@target_alias@/bin/ar@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/ar@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/as@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/as@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/ld@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/ld@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/nm@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/nm@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/ranlib@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/ranlib@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/strip@exe_ext@
|
/opt/gnatrtems/@target_alias@/bin/strip@exe_ext@
|
|
|
%dir /opt/gnatrtems/@target_alias@/lib
|
%dir /opt/gnatrtems/@target_alias@/lib
|
/opt/gnatrtems/@target_alias@/lib/ldscripts
|
/opt/gnatrtems/@target_alias@/lib/ldscripts
|
|
|