Now binutils, gcc, and gdb build into a "base" package that is shared

by all targets and one or more target specific RPMs.  This significantly
reduces the conflicts between the RPMs whether installing one or multiple
targets.
This commit is contained in:
Joel Sherrill
2000-01-25 19:47:32 +00:00
parent 9ce6414850
commit 5eac93c7cc
8 changed files with 40 additions and 13 deletions

View File

@@ -53,7 +53,7 @@ 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@-binutils %package -n @target_alias@-binutils
Summary: rtems gcc and newlib C Library for @target_alias@ Summary: rtems binutils for @target_alias@
Group: rtems Group: rtems
Requires: rtems-base-binutils Requires: rtems-base-binutils
@@ -125,9 +125,9 @@ Authors:
done done
fi fi
%files -n rtems-base-binutils %files -n rtems-base-binutils -f files
%dir /opt/rtems/info %dir /opt/rtems/info
# %doc /opt/rtems/info/dir %doc /opt/rtems/info/dir
%doc /opt/rtems/info/as.info.gz %doc /opt/rtems/info/as.info.gz
%doc /opt/rtems/info/as.info-?.gz %doc /opt/rtems/info/as.info-?.gz
%doc /opt/rtems/info/bfd.info.gz %doc /opt/rtems/info/bfd.info.gz
@@ -155,7 +155,7 @@ Authors:
%dir /opt/rtems/share %dir /opt/rtems/share
%dir /opt/rtems/share/locale %dir /opt/rtems/share/locale
%files -n @target_alias@-binutils -f files %files -n @target_alias@-binutils
%doc /opt/rtems/man/man1/@target_alias@-*.1 %doc /opt/rtems/man/man1/@target_alias@-*.1
%dir /opt/rtems/bin %dir /opt/rtems/bin

View File

@@ -135,11 +135,13 @@ do
# now build gcc/newlib # now build gcc/newlib
# NOTE: This requires having binutils installed and we immediately # NOTE: This requires having binutils installed and we immediately
# remove it once finished. # remove it once finished.
base_binutils_rpm=${dst}/../RPMS/i386/rtems-base-binutils-${binutils}-${binutils_rpm_release}.i386.rpm
binutils_rpm=${dst}/../RPMS/i386/${target}-binutils-${binutils}-${binutils_rpm_release}.i386.rpm binutils_rpm=${dst}/../RPMS/i386/${target}-binutils-${binutils}-${binutils_rpm_release}.i386.rpm
if [ ! -f ${binutils_rpm} ] ; then if [ ! -f ${binutils_rpm} ] ; then
echo There is no RPM for binutils for ${target}. echo There is no RPM for binutils for ${target}.
echo Looked for ${binutils_rpm}. echo Looked for ${binutils_rpm}.
fi fi
${ECHO} rpm -i ${base_binutils_rpm}
${ECHO} rpm -i ${binutils_rpm} ${ECHO} rpm -i ${binutils_rpm}
logfile=log/${target}-gccnewlib logfile=log/${target}-gccnewlib

View File

@@ -10,11 +10,11 @@
Vendor: OAR Corporation Vendor: OAR Corporation
Distribution: Linux Distribution: Linux
Name: @target_alias@-gdb Name: @target_alias@-gdb-collection
Release: @Release@ Release: @Release@
Copyright: 1999 OARCorp Copyright: 1999 OARCorp
Group: rtems Group: rtems
Provides: @target_alias@-gdb Provides: rtems-base-gdb @target_alias@-gdb
Autoreqprov: on Autoreqprov: on
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
@@ -42,11 +42,33 @@ RTEMS is an open source operating system for embedded systems.
This is the GNU gdb for RTEMS targetting @target_alias@. This is the GNU gdb for RTEMS targetting @target_alias@.
%package -n rtems-base-gdb
Summary: base package for rtems gdb
Group: rtems
%description -n rtems-base-gdb
RTEMS is an open source operating system for embedded systems.
This is the base for gdb regardless of target CPU.
%package -n @target_alias@-gdb
Summary: rtems gdb for @target_alias@
Group: rtems
Requires: rtems-base-gdb
%description -n @target_alias@-gdb
RTEMS is an open source operating system for embedded systems.
This is the GNU gdb for RTEMS targetting @target_alias@.
Authors: Authors:
-------- --------
Joel Sherrill (joel@oarcorp.com) Joel Sherrill (joel@oarcorp.com)
... ...
%prep %prep
echo RPM_BUILD_ROOT=${RPM_BUILD_ROOT} echo RPM_BUILD_ROOT=${RPM_BUILD_ROOT}
# untar the sources inside @target_alias@-gdb # untar the sources inside @target_alias@-gdb
@@ -93,7 +115,8 @@ test -d build || mkdir build
done done
fi fi
%files %files -n rtems-base-gdb
%dir /opt/rtems/info %dir /opt/rtems/info
%doc /opt/rtems/info/gdb.info* %doc /opt/rtems/info/gdb.info*
%doc /opt/rtems/info/mmalloc.info* %doc /opt/rtems/info/mmalloc.info*
@@ -101,7 +124,6 @@ test -d build || mkdir build
%dir /opt/rtems/man %dir /opt/rtems/man
%dir /opt/rtems/man/man1 %dir /opt/rtems/man/man1
%doc /opt/rtems/man/man1/@target_alias@-gdb.1
%dir /opt/rtems/include %dir /opt/rtems/include
# We install libbfd from binutils # We install libbfd from binutils
@@ -114,6 +136,9 @@ test -d build || mkdir build
# We use libiberty from gcc # We use libiberty from gcc
# /opt/rtems/lib/libiberty* # /opt/rtems/lib/libiberty*
%files -n @target_alias@-gdb
%doc /opt/rtems/man/man1/@target_alias@-gdb.1
%dir /opt/rtems/bin %dir /opt/rtems/bin
/opt/rtems/bin/@target_alias@-gdb@exe_ext@ /opt/rtems/bin/@target_alias@-gdb@exe_ext@

View File

@@ -55,7 +55,7 @@ sed -e "s%@Release@%${binutils_rpm_release}%g" \
-e "s%@target_alias@%${target_alias}%g" \ -e "s%@target_alias@%${target_alias}%g" \
-e "s%@binutils_version@%${binutils_version}%g" \ -e "s%@binutils_version@%${binutils_version}%g" \
-e "s%@binutils_patch_version@%${binutils_patch_version}%g" \ -e "s%@binutils_patch_version@%${binutils_patch_version}%g" \
-e "s%@ext_ext@%${ext_ext}%g" \ -e "s%@exe_ext@%${exe_ext}%g" \
< ${RTEMS_DIR}/binutils/binutils.spec.in \ < ${RTEMS_DIR}/binutils/binutils.spec.in \
> ${specfile} > ${specfile}

View File

@@ -55,7 +55,7 @@ sed -e "s%@Release@%${rtems_rpm_release}%g" \
-e "s%@rtems_version@%${rtems_version}%g" \ -e "s%@rtems_version@%${rtems_version}%g" \
-e "s%@rpm_build_root@%${rpm_build_root}%g" \ -e "s%@rpm_build_root@%${rpm_build_root}%g" \
-e "s%@target_alias@%${target_alias}%g" \ -e "s%@target_alias@%${target_alias}%g" \
-e "s%@ext_ext@%${ext_ext}%g" \ -e "s%@exe_ext@%${exe_ext}%g" \
< ${RTEMS_DIR}/rtems/rtems.spec.in \ < ${RTEMS_DIR}/rtems/rtems.spec.in \
> ${specfile} > ${specfile}

View File

@@ -64,7 +64,7 @@ sed -e "s%@Release@%${gccnewlib_rpm_release}%g" \
-e "s%@gcc_patch_version@%${gcc_patch_version}%g" \ -e "s%@gcc_patch_version@%${gcc_patch_version}%g" \
-e "s%@newlib_version@%${newlib_version}%g" \ -e "s%@newlib_version@%${newlib_version}%g" \
-e "s%@newlib_patch_version@%${newlib_patch_version}%g" \ -e "s%@newlib_patch_version@%${newlib_patch_version}%g" \
-e "s%@ext_ext@%${ext_ext}%g" \ -e "s%@exe_ext@%${exe_ext}%g" \
< ${specsrc} \ < ${specsrc} \
> ${specfile} > ${specfile}

View File

@@ -70,7 +70,7 @@ sed -e "s%@Release@%${gdb_rpm_release}%g" \
-e "s%@gdb_version@%${gdb_version}%g" \ -e "s%@gdb_version@%${gdb_version}%g" \
-e "s%@gdb_patch_version@%${gdb_patch_version}%g" \ -e "s%@gdb_patch_version@%${gdb_patch_version}%g" \
-e "s%@extra_configure_arguments@%${extra_configure_arguments}%g" \ -e "s%@extra_configure_arguments@%${extra_configure_arguments}%g" \
-e "s%@ext_ext@%${ext_ext}%g" \ -e "s%@exe_ext@%${exe_ext}%g" \
< ${RTEMS_DIR}/gdb/gdb.spec.in \ < ${RTEMS_DIR}/gdb/gdb.spec.in \
> ${specfile} > ${specfile}

View File

@@ -57,7 +57,7 @@ sed -e "s%@Release@%${gccnewlib_rpm_release}%g" \
-e "s%@gcc_patch_version@%${gcc_patch_version}%g" \ -e "s%@gcc_patch_version@%${gcc_patch_version}%g" \
-e "s%@newlib_version@%${newlib_version}%g" \ -e "s%@newlib_version@%${newlib_version}%g" \
-e "s%@newlib_patch_version@%${newlib_patch_version}%g" \ -e "s%@newlib_patch_version@%${newlib_patch_version}%g" \
-e "s%@ext_ext@%${ext_ext}%g" \ -e "s%@exe_ext@%${exe_ext}%g" \
< ${RTEMS_DIR}/gccnewlib/gccnewlib.spec.in \ < ${RTEMS_DIR}/gccnewlib/gccnewlib.spec.in \
> ${specfile} > ${specfile}