forked from Imagelibrary/rtems
is working mostly for sparc at least. There is one major problem -- the current process generates a unique source file per RPM when in fact all of the source files are nearly the same -- it is only the spec part of the rpm which differs. The new file mkbinutils_subpackage_version is an attempt to address this. It does part of the job right -- one source file produces multiple binary RPMs. BUT the end user can not produce the resulting RPMS themselves from SRPMS unless they also build all targets.
117 lines
3.0 KiB
RPMSpec
117 lines
3.0 KiB
RPMSpec
#
|
|
# spec file for package rtems
|
|
#
|
|
# Copyright (c) 1999 OARCorp, Huntsville, AL
|
|
#
|
|
# please send bugfixes or comments to joel@OARcorp.com
|
|
#
|
|
|
|
# neededforbuild @target_alias@-binutils @target_alias@-gcc
|
|
|
|
Vendor: OAR Corporation
|
|
Distribution: Linux
|
|
Name: @target_alias@-gcc-newlib
|
|
Release: @Release@
|
|
Copyright: 1999 OARCorp
|
|
Group: unsorted
|
|
Provides: @target_alias@-gcc-newlib
|
|
|
|
Autoreqprov: on
|
|
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
|
|
|
|
Version: @Version@
|
|
Summary: rtems gcc and newlib C Library for target @target_alias@
|
|
Source0: gcc-2.95.1.tar.gz
|
|
Source1: newlib-1.8.2.tar.gz
|
|
Patch0: gcc-2.95.1-rtems-19991015.diff
|
|
Patch1: newlib-1.8.2-rtems-19991015.diff
|
|
|
|
Buildroot: /tmp
|
|
# Patch:
|
|
%description
|
|
RTEMS is an open source operating system for embedded systems.
|
|
|
|
This is gcc and newlib C Library for @target_alias@.
|
|
|
|
Authors:
|
|
--------
|
|
Joel Sherrill (joel@oarcorp.com)
|
|
...
|
|
|
|
%prep
|
|
# untar the sources inside @target_alias@-gcc-newlib -@Version@
|
|
%setup -c -n @target_alias@-gcc-newlib -a 0 -a 1
|
|
|
|
%patch0 -p0
|
|
%patch1 -p0
|
|
|
|
( cd gcc-2.95.1
|
|
|
|
# Now link the C library into the source tree
|
|
ln -s ../newlib-1.8.2/newlib .
|
|
)
|
|
|
|
%build
|
|
test -d build || mkdir build
|
|
( cd build
|
|
../gcc-2.95.1/configure --target=@target_alias@ \
|
|
--with-gnu-as --with-gnu-ld --with-newlib --verbose \
|
|
--prefix=/opt/rtems
|
|
|
|
test -d $RPM_BUILD_ROOT/opt \
|
|
|| mkdir $RPM_BUILD_ROOT/opt
|
|
test -d $RPM_BUILD_ROOT/opt/rtems \
|
|
|| mkdir $RPM_BUILD_ROOT/opt/rtems
|
|
test -d $RPM_BUILD_ROOT/opt/rtems/@target_alias@ \
|
|
|| mkdir $RPM_BUILD_ROOT/opt/rtems/@target_alias@
|
|
test -d $RPM_BUILD_ROOT/opt/rtems/@target_alias@/include \
|
|
|| mkdir $RPM_BUILD_ROOT/opt/rtems/@target_alias@/include
|
|
test -d $RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include \
|
|
|| mkdir $RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include
|
|
|
|
srclimits=../gcc-2.95.1/newlib/libc/sys/rtems/include/limits.h
|
|
for dir in $RPM_BUILD_ROOT/opt/rtems/@target_alias@/include \
|
|
$RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include
|
|
do
|
|
cp ${srclimits} ${dir}
|
|
done
|
|
|
|
#make LANGUAGES="c c++" all
|
|
make all
|
|
make info
|
|
|
|
cd gcc
|
|
rm -f stmp-multilib
|
|
find . -name "*.a" -print | xargs -e rm -f
|
|
|
|
make all
|
|
cd ..
|
|
)
|
|
|
|
%install
|
|
( cd build
|
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install
|
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install-info
|
|
)
|
|
|
|
%files
|
|
%doc /opt/rtems/info/chill.info*
|
|
%doc /opt/rtems/info/cpp.info*
|
|
%doc /opt/rtems/info/gcc.info*
|
|
%doc /opt/rtems/info/g77.info*
|
|
%doc /opt/rtems/info/libc.info*
|
|
%doc /opt/rtems/info/libm.info*
|
|
%doc /opt/rtems/man/man1/cccp.1
|
|
%doc /opt/rtems/man/man1/@target_alias@-gcc.1
|
|
%doc /opt/rtems/man/man1/@target_alias@-g++.1
|
|
|
|
/opt/rtems/bin/cpp
|
|
/opt/rtems/bin/@target_alias@-c++
|
|
/opt/rtems/bin/@target_alias@-g++
|
|
/opt/rtems/bin/@target_alias@-gcc
|
|
/opt/rtems/bin/@target_alias@-gcj
|
|
/opt/rtems/lib/gcc-lib/@target_alias@/2.95.1
|
|
/opt/rtems/@target_alias@/include*
|
|
/opt/rtems/@target_alias@/sys-include
|
|
/opt/rtems/@target_alias@/lib*
|