forked from Imagelibrary/rtems
First cut at adding RPM scripts for building GNAT/RTEMS RPMs.
This commit is contained in:
28
scripts-ada/Makefile.am
Normal file
28
scripts-ada/Makefile.am
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
AUTOMAKE_OPTIONS = foreign
|
||||||
|
|
||||||
|
SUBDIRS = . binutils gnatnewlib gdb rtems
|
||||||
|
|
||||||
|
noinst_SCRIPTS = \
|
||||||
|
setup \
|
||||||
|
buildall \
|
||||||
|
mkbinutilspec \
|
||||||
|
mkbspspec \
|
||||||
|
mkgnatnewlibspec \
|
||||||
|
mkgdbspec \
|
||||||
|
mkrpms \
|
||||||
|
mkspec
|
||||||
|
|
||||||
|
TEMPLATES =
|
||||||
|
|
||||||
|
noinst_DATA = \
|
||||||
|
setup.def $(TEMPLATES)
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
$(noinst_DATA) \
|
||||||
|
$(noinst_SCRIPTS)
|
||||||
|
|
||||||
|
CONFIGURE_DEPENDENCIES = setup.cache
|
||||||
|
setup.cache: setup.def
|
||||||
|
cp setup.def $@
|
||||||
|
|
||||||
|
DISTCLEANFILES = setup.cache
|
||||||
5
scripts-ada/README
Normal file
5
scripts-ada/README
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
#
|
||||||
|
# $Id$
|
||||||
|
#
|
||||||
|
|
||||||
|
This directory contains the scripts used to build RPMS for GNAT/RTEMS.
|
||||||
6
scripts-ada/TODO
Normal file
6
scripts-ada/TODO
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
#
|
||||||
|
# $Id$
|
||||||
|
#
|
||||||
|
|
||||||
|
There is plenty left to do on this :)
|
||||||
|
|
||||||
61
scripts-ada/binutils/Makefile.am
Normal file
61
scripts-ada/binutils/Makefile.am
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
## $Id$
|
||||||
|
|
||||||
|
AUTOMAKE_OPTIONS = foreign
|
||||||
|
|
||||||
|
MKBINUTILSSPEC = $(SHELL) $(top_builddir)/mkbinutilspec
|
||||||
|
|
||||||
|
MKBINUTILSSPEC_DEPS = \
|
||||||
|
$(top_builddir)/mkbinutilspec binutils.spec.in $(top_builddir)/setup.cache
|
||||||
|
|
||||||
|
hppa1.1-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . hppa1.1-rtems
|
||||||
|
|
||||||
|
i386-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . i386-rtems
|
||||||
|
|
||||||
|
i960-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . i960-rtems
|
||||||
|
|
||||||
|
m68k-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . m68k-rtems
|
||||||
|
|
||||||
|
m68k-rtemself-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . m68k-rtemself
|
||||||
|
|
||||||
|
mips64orion-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . mips64orion-rtems
|
||||||
|
|
||||||
|
powerpc-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . powerpc-rtems
|
||||||
|
|
||||||
|
sh-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . sh-rtems
|
||||||
|
|
||||||
|
sh-rtemself-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . sh-rtemself
|
||||||
|
|
||||||
|
sparc-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
|
||||||
|
$(MKBINUTILSSPEC) -cfg $(top_builddir)/setup.cache -o . sparc-rtems
|
||||||
|
|
||||||
|
TEMPLATES = \
|
||||||
|
binutils.spec.in
|
||||||
|
|
||||||
|
RPM_SPECS_DATA = \
|
||||||
|
hppa1.1-rtems-$(BINUTILSVERS).spec \
|
||||||
|
i386-rtems-$(BINUTILSVERS).spec \
|
||||||
|
i960-rtems-$(BINUTILSVERS).spec \
|
||||||
|
m68k-rtems-$(BINUTILSVERS).spec \
|
||||||
|
m68k-rtemself-$(BINUTILSVERS).spec \
|
||||||
|
mips64orion-rtems-$(BINUTILSVERS).spec \
|
||||||
|
powerpc-rtems-$(BINUTILSVERS).spec \
|
||||||
|
sh-rtems-$(BINUTILSVERS).spec \
|
||||||
|
sh-rtemself-$(BINUTILSVERS).spec \
|
||||||
|
sparc-rtems-$(BINUTILSVERS).spec
|
||||||
|
|
||||||
|
noinst_DATA = \
|
||||||
|
$(TEMPLATES)
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
$(TEMPLATES)
|
||||||
|
|
||||||
|
CLEANFILES = $(RPM_SPECS_DATA)
|
||||||
187
scripts-ada/binutils/binutils.spec.in
Normal file
187
scripts-ada/binutils/binutils.spec.in
Normal file
@@ -0,0 +1,187 @@
|
|||||||
|
#
|
||||||
|
# spec file for binutils package targetting rtems
|
||||||
|
#
|
||||||
|
# Copyright (c) 1999 OARCorp, Huntsville, AL
|
||||||
|
#
|
||||||
|
# please send bugfixes or comments to joel@OARcorp.com
|
||||||
|
#
|
||||||
|
|
||||||
|
Vendor: OAR Corporation
|
||||||
|
Distribution: Linux
|
||||||
|
Name: @target_alias@-binutils-collection
|
||||||
|
Summary: binutils for target @target_alias@
|
||||||
|
Group: rtems
|
||||||
|
Release: @Release@
|
||||||
|
Copyright: 1999 OARCorp
|
||||||
|
|
||||||
|
Provides: rtems-base-binutils @target_alias@-binutils
|
||||||
|
|
||||||
|
Autoreqprov: on
|
||||||
|
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
|
||||||
|
Prefix: /opt
|
||||||
|
|
||||||
|
Version: @binutils_version@
|
||||||
|
Source0: ftp://ftp.gnu.org/pub/gnu/binutils/binutils-@binutils_version@.tar.gz
|
||||||
|
Patch0: binutils-@binutils_version@-rtems-@binutils_patch_version@.diff
|
||||||
|
#
|
||||||
|
# The original sources are not included in the source RPM.
|
||||||
|
# If we included them, then the source RPMs for each target
|
||||||
|
# would duplicate MBs of source unnecessarily. This is
|
||||||
|
# a duplication of over 30 MBs of source for each of
|
||||||
|
# the more than 10 targets it is possible to build.
|
||||||
|
#
|
||||||
|
# You can get them yourself from the Internet and copy them to
|
||||||
|
# your /usr/src/redhat/SOURCES directory ($RPM_SOURCE_DIR).
|
||||||
|
# Or you can try the ftp options of rpm :-)
|
||||||
|
#
|
||||||
|
NoSource: 0
|
||||||
|
|
||||||
|
%description
|
||||||
|
|
||||||
|
RTEMS is an open source operating system for embedded systems.
|
||||||
|
|
||||||
|
This is binutils sources with patches for RTEMS.
|
||||||
|
|
||||||
|
%package -n rtems-base-binutils
|
||||||
|
Summary: base package for rtems binutils
|
||||||
|
Group: rtems
|
||||||
|
|
||||||
|
%description -n rtems-base-binutils
|
||||||
|
|
||||||
|
RTEMS is an open source operating system for embedded systems.
|
||||||
|
|
||||||
|
This is the base for binutils regardless of target CPU.
|
||||||
|
|
||||||
|
%package -n @target_alias@-binutils
|
||||||
|
Summary: rtems binutils for @target_alias@
|
||||||
|
Group: rtems
|
||||||
|
Requires: rtems-base-binutils
|
||||||
|
|
||||||
|
%description -n @target_alias@-binutils
|
||||||
|
|
||||||
|
RTEMS is an open source operating system for embedded systems.
|
||||||
|
|
||||||
|
This is the GNU binutils for RTEMS targetting @target_alias@.
|
||||||
|
|
||||||
|
Authors:
|
||||||
|
--------
|
||||||
|
Joel Sherrill (joel@oarcorp.com)
|
||||||
|
...
|
||||||
|
|
||||||
|
%prep
|
||||||
|
# untar the sources inside @target_alias@-binutils
|
||||||
|
%setup -c -n @target_alias@-binutils -a 0
|
||||||
|
|
||||||
|
%patch0 -p0
|
||||||
|
test -d build || mkdir build
|
||||||
|
|
||||||
|
%build
|
||||||
|
cd build
|
||||||
|
../binutils-@binutils_version@/configure --target=@target_alias@ \
|
||||||
|
--verbose --prefix=/opt/rtems
|
||||||
|
|
||||||
|
make all
|
||||||
|
make info
|
||||||
|
|
||||||
|
%install
|
||||||
|
cd build
|
||||||
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install
|
||||||
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install-info
|
||||||
|
# A bug in binutils: binutils does not install share/locale
|
||||||
|
# however it uses it
|
||||||
|
../binutils-@binutils_version@/mkinstalldirs \
|
||||||
|
$RPM_BUILD_ROOT/opt/rtems/share/locale
|
||||||
|
|
||||||
|
# gzip info files
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info 2>/dev/null
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info-? 2>/dev/null
|
||||||
|
|
||||||
|
if test -f $RPM_BUILD_ROOT/opt/rtems/info/configure.info.gz;
|
||||||
|
then
|
||||||
|
# These are only present in binutils >= 2.9.5
|
||||||
|
find $RPM_BUILD_ROOT/opt/rtems/info -name 'configure.*' | \
|
||||||
|
sed -e "s,^$RPM_BUILD_ROOT,,g" > ../files
|
||||||
|
else
|
||||||
|
touch ../files
|
||||||
|
fi
|
||||||
|
|
||||||
|
%post
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test x"$f" != x"" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
%postun
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test x"$f" != x"" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
%files -n rtems-base-binutils -f files
|
||||||
|
%dir /opt/rtems/info
|
||||||
|
%doc /opt/rtems/info/dir
|
||||||
|
%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
|
||||||
|
%doc /opt/rtems/info/binutils.info.gz
|
||||||
|
%doc /opt/rtems/info/binutils.info-?.gz
|
||||||
|
%doc /opt/rtems/info/ld.info.gz
|
||||||
|
%doc /opt/rtems/info/ld.info-?.gz
|
||||||
|
%doc /opt/rtems/info/gasp.info.gz
|
||||||
|
%doc /opt/rtems/info/standards.info.gz
|
||||||
|
|
||||||
|
%dir /opt/rtems/man
|
||||||
|
%dir /opt/rtems/man/man1
|
||||||
|
|
||||||
|
%dir /opt/rtems/include
|
||||||
|
/opt/rtems/include/bfd.h
|
||||||
|
/opt/rtems/include/ansidecl.h
|
||||||
|
/opt/rtems/include/bfdlink.h
|
||||||
|
|
||||||
|
%dir /opt/rtems/lib
|
||||||
|
/opt/rtems/lib/libbfd*
|
||||||
|
/opt/rtems/lib/libiberty*
|
||||||
|
/opt/rtems/lib/libopcodes*
|
||||||
|
|
||||||
|
%dir /opt/rtems/share
|
||||||
|
%dir /opt/rtems/share/locale
|
||||||
|
|
||||||
|
%files -n @target_alias@-binutils
|
||||||
|
%doc /opt/rtems/man/man1/@target_alias@-*.1
|
||||||
|
|
||||||
|
%dir /opt/rtems/bin
|
||||||
|
/opt/rtems/bin/@target_alias@-addr2line@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-ar@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-as@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-c++filt@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-gasp@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-ld@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-nm@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-objcopy@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-objdump@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-ranlib@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-readelf@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-size@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-strings@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-strip@exe_ext@
|
||||||
|
|
||||||
|
%dir /opt/rtems/@target_alias@
|
||||||
|
%dir /opt/rtems/@target_alias@/bin
|
||||||
|
/opt/rtems/@target_alias@/bin/ar@exe_ext@
|
||||||
|
/opt/rtems/@target_alias@/bin/as@exe_ext@
|
||||||
|
/opt/rtems/@target_alias@/bin/ld@exe_ext@
|
||||||
|
/opt/rtems/@target_alias@/bin/nm@exe_ext@
|
||||||
|
/opt/rtems/@target_alias@/bin/ranlib@exe_ext@
|
||||||
|
/opt/rtems/@target_alias@/bin/strip@exe_ext@
|
||||||
|
|
||||||
|
%dir /opt/rtems/@target_alias@/lib
|
||||||
|
/opt/rtems/@target_alias@/lib/ldscripts
|
||||||
192
scripts-ada/buildall.in
Normal file
192
scripts-ada/buildall.in
Normal file
@@ -0,0 +1,192 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
#
|
||||||
|
# Generate all the specs and then cycle through building them.
|
||||||
|
#
|
||||||
|
|
||||||
|
RTEMS_DIR=`dirname $0`
|
||||||
|
CFG=./setup.cache
|
||||||
|
dst=@RPM_SPECSdir@
|
||||||
|
|
||||||
|
usage()
|
||||||
|
{
|
||||||
|
echo "$0 [options] <target_alias>"
|
||||||
|
echo " options:"
|
||||||
|
echo " -cfg <setup.cache>"
|
||||||
|
echo " -o <rpm-spec-dir>"
|
||||||
|
exit 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
while test $# -ge 1; do
|
||||||
|
case $1 in
|
||||||
|
-cfg)
|
||||||
|
test $# -ge 2 || usage
|
||||||
|
shift
|
||||||
|
CFG=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-o)
|
||||||
|
test $# -ge 2 || usage
|
||||||
|
shift
|
||||||
|
dst=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
echo "invalid option $1";
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
TARGETS="${TARGETS} $1"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# This is the full list .. hppa1.1 does not build now.
|
||||||
|
#ALL_TARGETS="hppa1.1-rtems i386-rtems i960-rtems m68k-rtems \
|
||||||
|
# m68k-rtemself mips64orion-rtems \
|
||||||
|
# powerpc-rtems sh-rtems sh-rtemself sparc-rtems"
|
||||||
|
|
||||||
|
# This is the full buildable set.
|
||||||
|
if [ "X${TARGETS}" = "X" ] ; then
|
||||||
|
TARGETS="i386-rtems i960-rtems m68k-rtems \
|
||||||
|
mips64orion-rtems powerpc-rtems sh-rtems sparc-rtems"
|
||||||
|
fi
|
||||||
|
|
||||||
|
. $CFG
|
||||||
|
|
||||||
|
binutils=${binutils_version}
|
||||||
|
gcc=${gcc_version}
|
||||||
|
gdb=${gdb_version}
|
||||||
|
newlib=${newlib_version}
|
||||||
|
# also use binutils_rpm_release
|
||||||
|
buildroot=/tmp
|
||||||
|
|
||||||
|
testing=no
|
||||||
|
do_binutils=yes
|
||||||
|
do_gnatnewlib=yes
|
||||||
|
do_gdb=yes
|
||||||
|
|
||||||
|
#
|
||||||
|
# Now get started
|
||||||
|
#
|
||||||
|
start=`date`
|
||||||
|
|
||||||
|
echo PATH=$PATH
|
||||||
|
|
||||||
|
if [ ${testing} = yes ] ; then
|
||||||
|
ECHO=echo
|
||||||
|
fi
|
||||||
|
|
||||||
|
installed_count=`rpm -qa | grep rtems | wc -l`
|
||||||
|
if [ ${installed_count} -ne 0 ] ; then
|
||||||
|
echo This script should be run with NO rtems RPMs installed.
|
||||||
|
echo It appears that the following rtems RPMs are installed:
|
||||||
|
echo
|
||||||
|
rpm -qa | grep rtems
|
||||||
|
echo
|
||||||
|
echo Please remove these and restart this script.
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo Copying specs files.
|
||||||
|
if [ ${testing} = no ] ; then
|
||||||
|
cd ${RTEMS_DIR}
|
||||||
|
|
||||||
|
# ./configure || exit 1
|
||||||
|
make || exit 1
|
||||||
|
|
||||||
|
# Now generate all the specs
|
||||||
|
for target in ${TARGETS}
|
||||||
|
do
|
||||||
|
tspecs=`find . -name "${target}*"`
|
||||||
|
if [ "X${tspecs}" = "X" ] ; then
|
||||||
|
echo RPM specifications were not generated for ${tspec}.
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
${ECHO} cp -r ${tspecs} ${dst}
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
# clean up a bit before we start
|
||||||
|
cd ${dst}
|
||||||
|
test -d log || mkdir log
|
||||||
|
|
||||||
|
# do all the tools
|
||||||
|
for target in ${TARGETS}
|
||||||
|
do
|
||||||
|
if [ ${do_binutils} = yes ] ; then
|
||||||
|
logfile=log/${target}-binutils
|
||||||
|
specfile=${dst}/${target}-binutils-${binutils}.spec
|
||||||
|
echo "rpm -ba ${specfile} >${logfile} 2>&1"
|
||||||
|
if [ ${testing} = no ] ; then
|
||||||
|
rpm -ba ${specfile} >${logfile} 2>&1
|
||||||
|
fi
|
||||||
|
${ECHO} rm -rf ${dst}/../BUILD/${target}-binutils*
|
||||||
|
${ECHO} rm -rf ${buildroot}/opt/rtems
|
||||||
|
else
|
||||||
|
echo Skipping binutils for ${target}
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# build gcc/newlib
|
||||||
|
#
|
||||||
|
|
||||||
|
if [ ${do_gnatnewlib} = yes ] ; then
|
||||||
|
# now build gcc/newlib
|
||||||
|
# NOTE: This requires having binutils installed and we immediately
|
||||||
|
# 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
|
||||||
|
if [ ! -f ${binutils_rpm} ] ; then
|
||||||
|
echo There is no RPM for binutils for ${target}.
|
||||||
|
echo Looked for ${binutils_rpm}.
|
||||||
|
fi
|
||||||
|
${ECHO} rpm -i ${base_binutils_rpm}
|
||||||
|
${ECHO} rpm -i ${binutils_rpm}
|
||||||
|
|
||||||
|
logfile=log/${target}-gnatnewlib
|
||||||
|
specfile=${dst}/${target}-gcc-${gcc}-newlib-${newlib}.spec
|
||||||
|
echo "rpm -ba ${specfile} >${logfile} 2>&1"
|
||||||
|
if [ ${testing} = no ] ; then
|
||||||
|
rpm -ba ${specfile} >${logfile} 2>&1
|
||||||
|
fi
|
||||||
|
${ECHO} rm -rf ${dst}/../BUILD/${target}-gcc*
|
||||||
|
${ECHO} rm -rf ${buildroot}/opt/rtems
|
||||||
|
|
||||||
|
echo uninstalling binutils for ${target}
|
||||||
|
if [ ${testing} = no ] ; then
|
||||||
|
rpm -e `rpm -qa | grep rtems`
|
||||||
|
rm -rf /opt/rtems/*
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo Skipping gcc/newlib for ${target}
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# build gdb
|
||||||
|
#
|
||||||
|
|
||||||
|
if [ ${do_gdb} = yes ] ; then
|
||||||
|
# now build gdb
|
||||||
|
logfile=log/${target}-gdb
|
||||||
|
specfile=${dst}/${target}-gdb-${gdb}.spec
|
||||||
|
echo "rpm -ba ${specfile} >${logfile} 2>&1"
|
||||||
|
if [ ${testing} = no ] ; then
|
||||||
|
rpm -ba ${specfile} >${logfile} 2>&1
|
||||||
|
fi
|
||||||
|
${ECHO} rm -rf ${dst}/../BUILD/${target}-gdb*
|
||||||
|
${ECHO} rm -rf ${buildroot}/opt/rtems
|
||||||
|
else
|
||||||
|
echo Skipping gdb for ${target}
|
||||||
|
fi
|
||||||
|
|
||||||
|
done
|
||||||
|
|
||||||
|
# Now we are done
|
||||||
|
|
||||||
|
stop=`date`
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "Started: " $start
|
||||||
|
echo "Finished: " $stop
|
||||||
|
exit 0
|
||||||
51
scripts-ada/configure.in
Normal file
51
scripts-ada/configure.in
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
## $Id$
|
||||||
|
|
||||||
|
AC_INIT(binutils)
|
||||||
|
AM_INIT_AUTOMAKE(scripts,20000125-0,no)
|
||||||
|
|
||||||
|
AC_EXEEXT
|
||||||
|
|
||||||
|
test -f ./setup.cache || cp ${srcdir}/setup.def ./setup.cache
|
||||||
|
. ./setup.cache
|
||||||
|
|
||||||
|
# Some linux distributions use /usr/src/packages
|
||||||
|
# redhat uses /usr/src/redhat
|
||||||
|
# others might use /usr/src
|
||||||
|
AC_MSG_CHECKING(for rpm SPECS directory)
|
||||||
|
if test -d /usr/src/packages/SPECS;
|
||||||
|
then
|
||||||
|
RPM_SPECSdir=/usr/src/packages/SPECS;
|
||||||
|
elif test -d /usr/src/redhat/SPECS;
|
||||||
|
then
|
||||||
|
RPM_SPECSdir=/usr/src/redhat/SPECS;
|
||||||
|
elif test -d /usr/src/SPECS/;
|
||||||
|
then
|
||||||
|
RPM_SPECSdir=/usr/src/SPECS;
|
||||||
|
fi
|
||||||
|
if test x"$RPM_SPECSdir" = x"" ; then
|
||||||
|
AC_MSG_ERROR(not found)
|
||||||
|
fi
|
||||||
|
AC_MSG_RESULT($RPM_SPECSdir)
|
||||||
|
AC_SUBST(RPM_SPECSdir)
|
||||||
|
|
||||||
|
GCCNEWLIBVERS="gcc-${gcc_version}-newlib-${newlib_version}"
|
||||||
|
AC_SUBST(GCCNEWLIBVERS)
|
||||||
|
BINUTILSVERS="binutils-${binutils_version}"
|
||||||
|
AC_SUBST(BINUTILSVERS)
|
||||||
|
GDBVERS="gdb-${gdb_version}"
|
||||||
|
AC_SUBST(GDBVERS)
|
||||||
|
BSPVERS="${rtems_version}"
|
||||||
|
AC_SUBST(RTEMS_VERSION)
|
||||||
|
AC_SUBST(BSPVERS)
|
||||||
|
|
||||||
|
AC_OUTPUT(
|
||||||
|
Makefile
|
||||||
|
buildall
|
||||||
|
mkbinutilspec
|
||||||
|
mkgnatnewlibspec
|
||||||
|
mkgdbspec
|
||||||
|
mkbspspec
|
||||||
|
binutils/Makefile
|
||||||
|
gnatnewlib/Makefile
|
||||||
|
gdb/Makefile
|
||||||
|
)
|
||||||
59
scripts-ada/gdb/Makefile.am
Normal file
59
scripts-ada/gdb/Makefile.am
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
AUTOMAKE_OPTIONS = foreign
|
||||||
|
|
||||||
|
MKGDBSPEC = $(SHELL) $(top_builddir)/mkgdbspec
|
||||||
|
|
||||||
|
MKGDBSPEC_DEPS = \
|
||||||
|
$(top_builddir)/mkgdbspec gdb.spec.in $(top_builddir)/setup.cache
|
||||||
|
|
||||||
|
hppa1.1-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . hppa1.1-rtems
|
||||||
|
|
||||||
|
i386-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . i386-rtems
|
||||||
|
|
||||||
|
i960-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . i960-rtems
|
||||||
|
|
||||||
|
m68k-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . m68k-rtems
|
||||||
|
|
||||||
|
m68k-rtemself-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . m68k-rtemself
|
||||||
|
|
||||||
|
mips64orion-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . mips64orion-rtems
|
||||||
|
|
||||||
|
powerpc-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . powerpc-rtems
|
||||||
|
|
||||||
|
sh-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . sh-rtems
|
||||||
|
|
||||||
|
sh-rtemself-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . sh-rtemself
|
||||||
|
|
||||||
|
sparc-rtems-$(GDBVERS).spec: $(MKGDBSPEC_DEPS)
|
||||||
|
$(MKGDBSPEC) -cfg $(top_builddir)/setup.cache -o . sparc-rtems
|
||||||
|
|
||||||
|
TEMPLATES = \
|
||||||
|
gdb.spec.in
|
||||||
|
|
||||||
|
RPM_SPECS_DATA = \
|
||||||
|
hppa1.1-rtems-$(GDBVERS).spec \
|
||||||
|
i386-rtems-$(GDBVERS).spec \
|
||||||
|
i960-rtems-$(GDBVERS).spec \
|
||||||
|
m68k-rtems-$(GDBVERS).spec \
|
||||||
|
m68k-rtemself-$(GDBVERS).spec \
|
||||||
|
mips64orion-rtems-$(GDBVERS).spec \
|
||||||
|
powerpc-rtems-$(GDBVERS).spec \
|
||||||
|
sh-rtems-$(GDBVERS).spec \
|
||||||
|
sh-rtemself-$(GDBVERS).spec \
|
||||||
|
sparc-rtems-$(GDBVERS).spec
|
||||||
|
|
||||||
|
noinst_DATA = \
|
||||||
|
$(TEMPLATES)
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
$(TEMPLATES)
|
||||||
|
|
||||||
|
CLEANFILES = $(RPM_SPECS_DATA)
|
||||||
144
scripts-ada/gdb/gdb.spec.in
Normal file
144
scripts-ada/gdb/gdb.spec.in
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
#
|
||||||
|
# spec file for package rtems
|
||||||
|
#
|
||||||
|
# Copyright (c) 1999 OARCorp, Huntsville, AL
|
||||||
|
#
|
||||||
|
# please send bugfixes or comments to joel@OARcorp.com
|
||||||
|
#
|
||||||
|
|
||||||
|
# neededforbuild -- nothing
|
||||||
|
|
||||||
|
Vendor: OAR Corporation
|
||||||
|
Distribution: Linux
|
||||||
|
Name: @target_alias@-gdb-collection
|
||||||
|
Release: @Release@
|
||||||
|
Copyright: 1999 OARCorp
|
||||||
|
Group: rtems
|
||||||
|
Provides: rtems-base-gdb @target_alias@-gdb
|
||||||
|
|
||||||
|
Autoreqprov: on
|
||||||
|
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
|
||||||
|
|
||||||
|
Version: @gdb_version@
|
||||||
|
Summary: gdb for target @target_alias@
|
||||||
|
Source0: ftp://ftp.gnu.org/pub/gnu/gdb-@gdb_version@.tar.gz
|
||||||
|
Patch0: gdb-@gdb_version@-rtems-@gdb_patch_version@.diff
|
||||||
|
#
|
||||||
|
# The original sources are not included in the source RPM.
|
||||||
|
# If we included them, then the source RPMs for each target
|
||||||
|
# would duplicate MBs of source unnecessarily. This is
|
||||||
|
# a duplication of over 30 MBs of source for each of
|
||||||
|
# the more than 10 targets it is possible to build.
|
||||||
|
#
|
||||||
|
# You can get them yourself from the Internet and copy them to
|
||||||
|
# your /usr/src/redhat/SOURCES directory ($RPM_SOURCE_DIR).
|
||||||
|
# Or you can try the ftp options of rpm :-)
|
||||||
|
#
|
||||||
|
NoSource: 0
|
||||||
|
|
||||||
|
|
||||||
|
%description
|
||||||
|
RTEMS is an open source operating system for embedded systems.
|
||||||
|
|
||||||
|
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:
|
||||||
|
--------
|
||||||
|
Joel Sherrill (joel@oarcorp.com)
|
||||||
|
...
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
echo RPM_BUILD_ROOT=${RPM_BUILD_ROOT}
|
||||||
|
# untar the sources inside @target_alias@-gdb
|
||||||
|
%setup -c -n @target_alias@-gdb -a 0
|
||||||
|
|
||||||
|
%patch0 -p0
|
||||||
|
|
||||||
|
%build
|
||||||
|
test -d build || mkdir build
|
||||||
|
cd build
|
||||||
|
../gdb-@gdb_version@/configure --target=@target_alias@ \
|
||||||
|
--verbose --prefix=/opt/rtems @extra_configure_arguments@
|
||||||
|
|
||||||
|
make all
|
||||||
|
make info
|
||||||
|
|
||||||
|
%install
|
||||||
|
cd build
|
||||||
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install
|
||||||
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install-info
|
||||||
|
|
||||||
|
# gzip info files
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info 2>/dev/null
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info-? 2>/dev/null
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info-?? 2>/dev/null
|
||||||
|
|
||||||
|
%post
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
%postun
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
%files -n rtems-base-gdb
|
||||||
|
|
||||||
|
%dir /opt/rtems/info
|
||||||
|
%doc /opt/rtems/info/gdb.info*
|
||||||
|
%doc /opt/rtems/info/mmalloc.info*
|
||||||
|
%doc /opt/rtems/info/readline.info*
|
||||||
|
|
||||||
|
%dir /opt/rtems/man
|
||||||
|
%dir /opt/rtems/man/man1
|
||||||
|
|
||||||
|
%dir /opt/rtems/include
|
||||||
|
# We install libbfd from binutils
|
||||||
|
# /opt/rtems/include/bfd.h
|
||||||
|
# /opt/rtems/include/bfdlink.h
|
||||||
|
|
||||||
|
%dir /opt/rtems/lib
|
||||||
|
# We install libbfd from binutils
|
||||||
|
# /opt/rtems/lib/libbfd*
|
||||||
|
# We use libiberty from gcc
|
||||||
|
# /opt/rtems/lib/libiberty*
|
||||||
|
|
||||||
|
%files -n @target_alias@-gdb
|
||||||
|
%doc /opt/rtems/man/man1/@target_alias@-gdb.1
|
||||||
|
|
||||||
|
%dir /opt/rtems/bin
|
||||||
|
/opt/rtems/bin/@target_alias@-gdb@exe_ext@
|
||||||
|
|
||||||
61
scripts-ada/gnatnewlib/Makefile.am
Normal file
61
scripts-ada/gnatnewlib/Makefile.am
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
## $Id$
|
||||||
|
|
||||||
|
AUTOMAKE_OPTIONS = foreign
|
||||||
|
|
||||||
|
MKGNATNEWLIBSPEC = $(SHELL) $(top_builddir)/mkgnatnewlibspec
|
||||||
|
|
||||||
|
MKGNATNEWLIBSPEC_DEPS = \
|
||||||
|
$(top_builddir)/mkgnatnewlibspec gnatnewlib.spec.in $(top_builddir)/setup.cache
|
||||||
|
|
||||||
|
hppa1.1-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . hppa1.1-rtems
|
||||||
|
|
||||||
|
i386-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . i386-rtems
|
||||||
|
|
||||||
|
i960-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . i960-rtems
|
||||||
|
|
||||||
|
m68k-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . m68k-rtems
|
||||||
|
|
||||||
|
m68k-rtemself-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . m68k-rtemself
|
||||||
|
|
||||||
|
mips64orion-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . mips64orion-rtems
|
||||||
|
|
||||||
|
powerpc-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . powerpc-rtems
|
||||||
|
|
||||||
|
sh-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . sh-rtems
|
||||||
|
|
||||||
|
sh-rtemself-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . sh-rtemself
|
||||||
|
|
||||||
|
sparc-rtems-$(GNATNEWLIBVERS).spec: $(MKGNATNEWLIBSPEC_DEPS)
|
||||||
|
$(MKGNATNEWLIBSPEC) -cfg $(top_builddir)/setup.cache -o . sparc-rtems
|
||||||
|
|
||||||
|
TEMPLATES = \
|
||||||
|
gnatnewlib.spec.in
|
||||||
|
|
||||||
|
RPM_SPECS_DATA = \
|
||||||
|
hppa1.1-rtems-$(GNATNEWLIBVERS).spec \
|
||||||
|
i386-rtems-$(GNATNEWLIBVERS).spec \
|
||||||
|
i960-rtems-$(GNATNEWLIBVERS).spec \
|
||||||
|
m68k-rtems-$(GNATNEWLIBVERS).spec \
|
||||||
|
m68k-rtemself-$(GNATNEWLIBVERS).spec \
|
||||||
|
mips64orion-rtems-$(GNATNEWLIBVERS).spec \
|
||||||
|
powerpc-rtems-$(GNATNEWLIBVERS).spec \
|
||||||
|
sh-rtems-$(GNATNEWLIBVERS).spec \
|
||||||
|
sh-rtemself-$(GNATNEWLIBVERS).spec \
|
||||||
|
sparc-rtems-$(GNATNEWLIBVERS).spec
|
||||||
|
|
||||||
|
noinst_DATA = \
|
||||||
|
$(TEMPLATES)
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
$(TEMPLATES)
|
||||||
|
|
||||||
|
CLEANFILES = $(RPM_SPECS_DATA)
|
||||||
296
scripts-ada/gnatnewlib/gnatnewlib.spec.in
Normal file
296
scripts-ada/gnatnewlib/gnatnewlib.spec.in
Normal file
@@ -0,0 +1,296 @@
|
|||||||
|
#
|
||||||
|
# spec file for building gcc for rtems
|
||||||
|
#
|
||||||
|
# Copyright (c) 1999 OARCorp, Huntsville, AL
|
||||||
|
#
|
||||||
|
# please send bugfixes or comments to joel@OARcorp.com
|
||||||
|
#
|
||||||
|
|
||||||
|
Vendor: OAR Corporation
|
||||||
|
Distribution: Linux
|
||||||
|
Name: @target_alias@-gnat-gcc-newlib
|
||||||
|
Summary: gnat, gcc, and newlib C Library for @target_alias@.
|
||||||
|
Group: rtems
|
||||||
|
Release: @Release@
|
||||||
|
Copyright: 1999 OARCorp
|
||||||
|
|
||||||
|
Provides: rtems-base-gnat @target_alias@-gnat
|
||||||
|
Requires: @target_alias@-binutils
|
||||||
|
|
||||||
|
Autoreqprov: on
|
||||||
|
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
|
||||||
|
|
||||||
|
Version: gnat@gnat_version@newlib@newlib_version@
|
||||||
|
Source0: ftp://ftp.gnu.org/pub/gnu/gcc/gcc-@gcc_version@.tar.gz
|
||||||
|
Source1: ftp://sourceware.cygnus/com/pub/newlib/newlib-@newlib_version@.tar.gz
|
||||||
|
Source2: ftp://cs.nyu.edu/pub/gnat/gnat-@gnat_version@.tar.gz
|
||||||
|
Patch0: gcc-@gcc_version@-gnatrtems-@gcc_patch_version@.diff
|
||||||
|
Patch1: newlib-@newlib_version@-rtems-@newlib_patch_version@.diff
|
||||||
|
Buildroot: /tmp
|
||||||
|
|
||||||
|
#
|
||||||
|
# The original sources are not included in the source RPM.
|
||||||
|
# If we included them, then the source RPMs for each target
|
||||||
|
# would duplicate MBs of source unnecessarily. This is
|
||||||
|
# a duplication of over 30 MBs of source for each of
|
||||||
|
# the more than 10 targets it is possible to build.
|
||||||
|
#
|
||||||
|
# You can get them yourself from the Internet and copy them to
|
||||||
|
# your /usr/src/redhat/SOURCES directory ($RPM_SOURCE_DIR).
|
||||||
|
# Or you can try the ftp options of rpm :-)
|
||||||
|
#
|
||||||
|
NoSource: 0, 1, 2
|
||||||
|
|
||||||
|
%description
|
||||||
|
RTEMS is an open source operating system for embedded systems.
|
||||||
|
|
||||||
|
This is gcc's and newlib C Library's sources with patches for RTEMS.
|
||||||
|
|
||||||
|
The original sources are not included in the source RPM.
|
||||||
|
If we included them, then the source RPMs for each target
|
||||||
|
would duplicate MBs of source unnecessarily. This is
|
||||||
|
a duplication of over 30 MBs of source for each of
|
||||||
|
the more than 10 targets it is possible to build.
|
||||||
|
|
||||||
|
You can get them yourself from the Internet and copy them to
|
||||||
|
your /usr/src/redhat/SOURCES directory ($RPM_SOURCE_DIR).
|
||||||
|
Or you can try the ftp options of rpm :-)
|
||||||
|
|
||||||
|
%package -n rtems-base-gnat
|
||||||
|
Summary: base package for rtems gnat, gcc, and newlib C Library
|
||||||
|
Group: rtems
|
||||||
|
|
||||||
|
%description -n rtems-base-gnat
|
||||||
|
|
||||||
|
RTEMS is an open source operating system for embedded systems.
|
||||||
|
|
||||||
|
This is the files for gnat, gcc, and newlib that are shared by all targets.
|
||||||
|
|
||||||
|
%package -n @target_alias@-gnat
|
||||||
|
Summary: rtems gnat, gcc, and newlib C Library for @target_alias@
|
||||||
|
Group: rtems
|
||||||
|
Requires: @target_alias@-binutils rtems-base-gcc
|
||||||
|
|
||||||
|
%description -n @target_alias@-gnat
|
||||||
|
RTEMS is an open source operating system for embedded systems.
|
||||||
|
|
||||||
|
This is gnat, gcc, and newlib C Library for @target_alias@.
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
# untar the sources inside @target_alias@-gcc-newlib
|
||||||
|
%setup -c -n @target_alias@-gcc-newlib -a 0 -a 1 -a 2
|
||||||
|
|
||||||
|
%patch0 -p0
|
||||||
|
%patch1 -p0
|
||||||
|
|
||||||
|
# Copy the C library into gcc's source tree
|
||||||
|
ln -s ../newlib-@newlib_version@/newlib gcc-@gcc_version@
|
||||||
|
test -d build || mkdir build
|
||||||
|
|
||||||
|
cp -r ../gnat-@gnat_version@-src/src/ada gcc-@gcc_version@
|
||||||
|
|
||||||
|
%patch2 -p0
|
||||||
|
|
||||||
|
touch gcc-@gcc_version@/ada/treeprs.ads
|
||||||
|
touch gcc-@gcc_version@/ada/a-[es]info.h
|
||||||
|
touch gcc-@gcc_version@/ada/nmake.ad[bs]
|
||||||
|
|
||||||
|
%build
|
||||||
|
cd build
|
||||||
|
../gcc-@gcc_version@/configure --target=@target_alias@ \
|
||||||
|
--with-gnu-as --with-gnu-ld --with-newlib --verbose \
|
||||||
|
--prefix=/opt/rtems
|
||||||
|
|
||||||
|
# for now we are building all the languages
|
||||||
|
# '--enable-languages=c,c++'
|
||||||
|
|
||||||
|
make all
|
||||||
|
make info
|
||||||
|
|
||||||
|
# Since gcc now finds the RTEMS limits.h, this should not be needed
|
||||||
|
# cd gcc
|
||||||
|
# rm -f stmp-multilib
|
||||||
|
# find . -name "*.a" -print | xargs -e rm -f
|
||||||
|
#
|
||||||
|
# make all
|
||||||
|
# cd ..
|
||||||
|
|
||||||
|
%install
|
||||||
|
cd build
|
||||||
|
# Bug in gcc-2.95.1: It doesn't build this installation directory
|
||||||
|
# If it doesn't find it, gcc doesn't install @target_alias@/bin/gcc
|
||||||
|
../gcc-@gcc_version@/mkinstalldirs \
|
||||||
|
$RPM_BUILD_ROOT/opt/rtems/@target_alias@/bin
|
||||||
|
|
||||||
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install
|
||||||
|
cd @target_alias@/newlib
|
||||||
|
make prefix=$RPM_BUILD_ROOT/opt/rtems install-info
|
||||||
|
|
||||||
|
# cd back to build/
|
||||||
|
cd ../..
|
||||||
|
|
||||||
|
# gzip info files
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info 2>/dev/null
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info-? 2>/dev/null
|
||||||
|
gzip -f $RPM_BUILD_ROOT/opt/rtems/info/*.info-?? 2>/dev/null
|
||||||
|
|
||||||
|
rm -f dirs ;
|
||||||
|
echo "%dir /opt/rtems/lib" >> dirs ;
|
||||||
|
echo "%dir /opt/rtems/lib/gcc-lib" >> dirs ;
|
||||||
|
echo "%dir /opt/rtems/lib/gcc-lib/@target_alias@" >> dirs ;
|
||||||
|
|
||||||
|
# Collect multilib subdirectories
|
||||||
|
TGTDIR="$RPM_BUILD_ROOT/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@"
|
||||||
|
find $TGTDIR \
|
||||||
|
\( -type d -a ! -path "$TGTDIR/include*" \) -print | \
|
||||||
|
sed -e "s,^$RPM_BUILD_ROOT,%dir ,g" >> dirs
|
||||||
|
|
||||||
|
# Collect files to go into different packages
|
||||||
|
cp dirs files.chill
|
||||||
|
cp dirs files.gcc
|
||||||
|
cp dirs files.g77
|
||||||
|
cp dirs files.objc
|
||||||
|
cp dirs files.gcj
|
||||||
|
|
||||||
|
f=`find $TGTDIR ! -type d -print | sed -e "s,^$RPM_BUILD_ROOT,,g"`;
|
||||||
|
for i in $f; do
|
||||||
|
case $i in
|
||||||
|
*chill*) echo "$i" >> files.chill ;;
|
||||||
|
*f771) ;;
|
||||||
|
*cc1obj) ;;
|
||||||
|
*libobjc*) echo "$i" >> files.objc ;;
|
||||||
|
*include/objc*) ;;
|
||||||
|
*jc1) ;;
|
||||||
|
*jvgenmain) ;;
|
||||||
|
*) echo "$i" >> files.gcc ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
%files -n @target_alias@-gcc -f build/files.gcc
|
||||||
|
%dir /opt/rtems/info
|
||||||
|
%doc /opt/rtems/info/dir
|
||||||
|
%doc /opt/rtems/info/cpp.info*
|
||||||
|
%doc /opt/rtems/info/gcc.info*
|
||||||
|
%doc /opt/rtems/info/libc.info*
|
||||||
|
%doc /opt/rtems/info/libm.info*
|
||||||
|
|
||||||
|
%dir /opt/rtems/man
|
||||||
|
%dir /opt/rtems/man/man1
|
||||||
|
%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
|
||||||
|
|
||||||
|
%dir /opt/rtems/bin
|
||||||
|
/opt/rtems/bin/cpp@exe_ext@
|
||||||
|
/opt/rtems/bin/gcov@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-c++@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-g++@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-gcc@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-protoize@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-unprotoize@exe_ext@
|
||||||
|
|
||||||
|
%dir /opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@/include
|
||||||
|
|
||||||
|
%dir /opt/rtems/include
|
||||||
|
/opt/rtems/include/g++-3
|
||||||
|
/opt/rtems/@target_alias@
|
||||||
|
|
||||||
|
%post -n @target_alias@-gcc
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
%postun -n @target_alias@-gcc
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
%files -n @target_alias@-chill -f build/files.chill
|
||||||
|
%dir /opt/rtems/bin
|
||||||
|
/opt/rtems/bin/@target_alias@-chill@exe_ext@
|
||||||
|
|
||||||
|
%dir /opt/rtems/info
|
||||||
|
%doc /opt/rtems/info/dir
|
||||||
|
%doc /opt/rtems/info/chill.info*
|
||||||
|
|
||||||
|
%post -n @target_alias@-chill
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
%postun -n @target_alias@-chill
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
%files -n @target_alias@-gcj -f build/files.gcj
|
||||||
|
%dir /opt/rtems/bin
|
||||||
|
/opt/rtems/bin/jcf-dump@exe_ext@
|
||||||
|
/opt/rtems/bin/jv-scan@exe_ext@
|
||||||
|
/opt/rtems/bin/gcjh@exe_ext@
|
||||||
|
/opt/rtems/bin/@target_alias@-gcj@exe_ext@
|
||||||
|
|
||||||
|
/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@/jc1@exe_ext@
|
||||||
|
/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@/jvgenmain@exe_ext@
|
||||||
|
|
||||||
|
|
||||||
|
%files -n @target_alias@-g77 -f build/files.g77
|
||||||
|
%dir /opt/rtems/bin
|
||||||
|
/opt/rtems/bin/@target_alias@-g77@exe_ext@
|
||||||
|
|
||||||
|
%dir /opt/rtems/info
|
||||||
|
%doc /opt/rtems/info/g77.info*
|
||||||
|
|
||||||
|
%dir /opt/rtems/man
|
||||||
|
%dir /opt/rtems/man/man1
|
||||||
|
%doc /opt/rtems/man/man1/@target_alias@-g77.1
|
||||||
|
|
||||||
|
/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@/f771@exe_ext@
|
||||||
|
|
||||||
|
%post -n @target_alias@-g77
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
%postun -n @target_alias@-g77
|
||||||
|
if test -d $RPM_INSTALL_PREFIX/rtems/info;
|
||||||
|
then
|
||||||
|
rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
|
||||||
|
test -n "$f" && for i in $f; do
|
||||||
|
install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
%files -n @target_alias@-objc -f build/files.objc
|
||||||
|
/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@/cc1obj@exe_ext@
|
||||||
|
/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@/include/objc
|
||||||
251
scripts-ada/install-sh
Executable file
251
scripts-ada/install-sh
Executable file
@@ -0,0 +1,251 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# install - install a program, script, or datafile
|
||||||
|
# This comes from X11R5 (mit/util/scripts/install.sh).
|
||||||
|
#
|
||||||
|
# Copyright 1991 by the Massachusetts Institute of Technology
|
||||||
|
#
|
||||||
|
# Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
|
# documentation for any purpose is hereby granted without fee, provided that
|
||||||
|
# the above copyright notice appear in all copies and that both that
|
||||||
|
# copyright notice and this permission notice appear in supporting
|
||||||
|
# documentation, and that the name of M.I.T. not be used in advertising or
|
||||||
|
# publicity pertaining to distribution of the software without specific,
|
||||||
|
# written prior permission. M.I.T. makes no representations about the
|
||||||
|
# suitability of this software for any purpose. It is provided "as is"
|
||||||
|
# without express or implied warranty.
|
||||||
|
#
|
||||||
|
# Calling this script install-sh is preferred over install.sh, to prevent
|
||||||
|
# `make' implicit rules from creating a file called install from it
|
||||||
|
# when there is no Makefile.
|
||||||
|
#
|
||||||
|
# This script is compatible with the BSD install script, but was written
|
||||||
|
# from scratch. It can only install one file at a time, a restriction
|
||||||
|
# shared with many OS's install programs.
|
||||||
|
|
||||||
|
|
||||||
|
# set DOITPROG to echo to test this script
|
||||||
|
|
||||||
|
# Don't use :- since 4.3BSD and earlier shells don't like it.
|
||||||
|
doit="${DOITPROG-}"
|
||||||
|
|
||||||
|
|
||||||
|
# put in absolute paths if you don't have them in your path; or use env. vars.
|
||||||
|
|
||||||
|
mvprog="${MVPROG-mv}"
|
||||||
|
cpprog="${CPPROG-cp}"
|
||||||
|
chmodprog="${CHMODPROG-chmod}"
|
||||||
|
chownprog="${CHOWNPROG-chown}"
|
||||||
|
chgrpprog="${CHGRPPROG-chgrp}"
|
||||||
|
stripprog="${STRIPPROG-strip}"
|
||||||
|
rmprog="${RMPROG-rm}"
|
||||||
|
mkdirprog="${MKDIRPROG-mkdir}"
|
||||||
|
|
||||||
|
transformbasename=""
|
||||||
|
transform_arg=""
|
||||||
|
instcmd="$mvprog"
|
||||||
|
chmodcmd="$chmodprog 0755"
|
||||||
|
chowncmd=""
|
||||||
|
chgrpcmd=""
|
||||||
|
stripcmd=""
|
||||||
|
rmcmd="$rmprog -f"
|
||||||
|
mvcmd="$mvprog"
|
||||||
|
src=""
|
||||||
|
dst=""
|
||||||
|
dir_arg=""
|
||||||
|
|
||||||
|
while [ x"$1" != x ]; do
|
||||||
|
case $1 in
|
||||||
|
-c) instcmd="$cpprog"
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
-d) dir_arg=true
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
-m) chmodcmd="$chmodprog $2"
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
-o) chowncmd="$chownprog $2"
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
-g) chgrpcmd="$chgrpprog $2"
|
||||||
|
shift
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
-s) stripcmd="$stripprog"
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
-t=*) transformarg=`echo $1 | sed 's/-t=//'`
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
|
||||||
|
*) if [ x"$src" = x ]
|
||||||
|
then
|
||||||
|
src=$1
|
||||||
|
else
|
||||||
|
# this colon is to work around a 386BSD /bin/sh bug
|
||||||
|
:
|
||||||
|
dst=$1
|
||||||
|
fi
|
||||||
|
shift
|
||||||
|
continue;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ x"$src" = x ]
|
||||||
|
then
|
||||||
|
echo "install: no input file specified"
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ x"$dir_arg" != x ]; then
|
||||||
|
dst=$src
|
||||||
|
src=""
|
||||||
|
|
||||||
|
if [ -d $dst ]; then
|
||||||
|
instcmd=:
|
||||||
|
chmodcmd=""
|
||||||
|
else
|
||||||
|
instcmd=mkdir
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
|
||||||
|
# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
|
||||||
|
# might cause directories to be created, which would be especially bad
|
||||||
|
# if $src (and thus $dsttmp) contains '*'.
|
||||||
|
|
||||||
|
if [ -f $src -o -d $src ]
|
||||||
|
then
|
||||||
|
true
|
||||||
|
else
|
||||||
|
echo "install: $src does not exist"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ x"$dst" = x ]
|
||||||
|
then
|
||||||
|
echo "install: no destination specified"
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If destination is a directory, append the input filename; if your system
|
||||||
|
# does not like double slashes in filenames, you may need to add some logic
|
||||||
|
|
||||||
|
if [ -d $dst ]
|
||||||
|
then
|
||||||
|
dst="$dst"/`basename $src`
|
||||||
|
else
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
## this sed command emulates the dirname command
|
||||||
|
dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
|
||||||
|
|
||||||
|
# Make sure that the destination directory exists.
|
||||||
|
# this part is taken from Noah Friedman's mkinstalldirs script
|
||||||
|
|
||||||
|
# Skip lots of stat calls in the usual case.
|
||||||
|
if [ ! -d "$dstdir" ]; then
|
||||||
|
defaultIFS='
|
||||||
|
'
|
||||||
|
IFS="${IFS-${defaultIFS}}"
|
||||||
|
|
||||||
|
oIFS="${IFS}"
|
||||||
|
# Some sh's can't handle IFS=/ for some reason.
|
||||||
|
IFS='%'
|
||||||
|
set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
|
||||||
|
IFS="${oIFS}"
|
||||||
|
|
||||||
|
pathcomp=''
|
||||||
|
|
||||||
|
while [ $# -ne 0 ] ; do
|
||||||
|
pathcomp="${pathcomp}${1}"
|
||||||
|
shift
|
||||||
|
|
||||||
|
if [ ! -d "${pathcomp}" ] ;
|
||||||
|
then
|
||||||
|
$mkdirprog "${pathcomp}"
|
||||||
|
else
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
|
||||||
|
pathcomp="${pathcomp}/"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ x"$dir_arg" != x ]
|
||||||
|
then
|
||||||
|
$doit $instcmd $dst &&
|
||||||
|
|
||||||
|
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
|
||||||
|
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
|
||||||
|
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
|
||||||
|
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
|
||||||
|
else
|
||||||
|
|
||||||
|
# If we're going to rename the final executable, determine the name now.
|
||||||
|
|
||||||
|
if [ x"$transformarg" = x ]
|
||||||
|
then
|
||||||
|
dstfile=`basename $dst`
|
||||||
|
else
|
||||||
|
dstfile=`basename $dst $transformbasename |
|
||||||
|
sed $transformarg`$transformbasename
|
||||||
|
fi
|
||||||
|
|
||||||
|
# don't allow the sed command to completely eliminate the filename
|
||||||
|
|
||||||
|
if [ x"$dstfile" = x ]
|
||||||
|
then
|
||||||
|
dstfile=`basename $dst`
|
||||||
|
else
|
||||||
|
true
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Make a temp file name in the proper directory.
|
||||||
|
|
||||||
|
dsttmp=$dstdir/#inst.$$#
|
||||||
|
|
||||||
|
# Move or copy the file name to the temp name
|
||||||
|
|
||||||
|
$doit $instcmd $src $dsttmp &&
|
||||||
|
|
||||||
|
trap "rm -f ${dsttmp}" 0 &&
|
||||||
|
|
||||||
|
# and set any options; do chmod last to preserve setuid bits
|
||||||
|
|
||||||
|
# If any of these fail, we abort the whole thing. If we want to
|
||||||
|
# ignore errors from any of these, just make sure not to ignore
|
||||||
|
# errors from the above "$doit $instcmd $src $dsttmp" command.
|
||||||
|
|
||||||
|
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
|
||||||
|
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
|
||||||
|
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
|
||||||
|
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
|
||||||
|
|
||||||
|
# Now rename the file to the real destination.
|
||||||
|
|
||||||
|
$doit $rmcmd -f $dstdir/$dstfile &&
|
||||||
|
$doit $mvcmd $dsttmp $dstdir/$dstfile
|
||||||
|
|
||||||
|
fi &&
|
||||||
|
|
||||||
|
|
||||||
|
exit 0
|
||||||
190
scripts-ada/missing
Executable file
190
scripts-ada/missing
Executable file
@@ -0,0 +1,190 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# Common stub for a few missing GNU programs while installing.
|
||||||
|
# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
|
||||||
|
# Franc,ois Pinard <pinard@iro.umontreal.ca>, 1996.
|
||||||
|
|
||||||
|
# This program is free software; you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
# any later version.
|
||||||
|
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA.
|
||||||
|
|
||||||
|
if test $# -eq 0; then
|
||||||
|
echo 1>&2 "Try \`$0 --help' for more information"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
case "$1" in
|
||||||
|
|
||||||
|
-h|--h|--he|--hel|--help)
|
||||||
|
echo "\
|
||||||
|
$0 [OPTION]... PROGRAM [ARGUMENT]...
|
||||||
|
|
||||||
|
Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
|
||||||
|
error status if there is no known handling for PROGRAM.
|
||||||
|
|
||||||
|
Options:
|
||||||
|
-h, --help display this help and exit
|
||||||
|
-v, --version output version information and exit
|
||||||
|
|
||||||
|
Supported PROGRAM values:
|
||||||
|
aclocal touch file \`aclocal.m4'
|
||||||
|
autoconf touch file \`configure'
|
||||||
|
autoheader touch file \`config.h.in'
|
||||||
|
automake touch all \`Makefile.in' files
|
||||||
|
bison create \`y.tab.[ch]', if possible, from existing .[ch]
|
||||||
|
flex create \`lex.yy.c', if possible, from existing .c
|
||||||
|
lex create \`lex.yy.c', if possible, from existing .c
|
||||||
|
makeinfo touch the output file
|
||||||
|
yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
|
||||||
|
;;
|
||||||
|
|
||||||
|
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
|
||||||
|
echo "missing - GNU libit 0.0"
|
||||||
|
;;
|
||||||
|
|
||||||
|
-*)
|
||||||
|
echo 1>&2 "$0: Unknown \`$1' option"
|
||||||
|
echo 1>&2 "Try \`$0 --help' for more information"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
|
||||||
|
aclocal)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is missing on your system. You should only need it if
|
||||||
|
you modified \`acinclude.m4' or \`configure.in'. You might want
|
||||||
|
to install the \`Automake' and \`Perl' packages. Grab them from
|
||||||
|
any GNU archive site."
|
||||||
|
touch aclocal.m4
|
||||||
|
;;
|
||||||
|
|
||||||
|
autoconf)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is missing on your system. You should only need it if
|
||||||
|
you modified \`configure.in'. You might want to install the
|
||||||
|
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
|
||||||
|
archive site."
|
||||||
|
touch configure
|
||||||
|
;;
|
||||||
|
|
||||||
|
autoheader)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is missing on your system. You should only need it if
|
||||||
|
you modified \`acconfig.h' or \`configure.in'. You might want
|
||||||
|
to install the \`Autoconf' and \`GNU m4' packages. Grab them
|
||||||
|
from any GNU archive site."
|
||||||
|
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' configure.in`
|
||||||
|
test -z "$files" && files="config.h"
|
||||||
|
touch_files=
|
||||||
|
for f in $files; do
|
||||||
|
case "$f" in
|
||||||
|
*:*) touch_files="$touch_files "`echo "$f" |
|
||||||
|
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
|
||||||
|
*) touch_files="$touch_files $f.in";;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
touch $touch_files
|
||||||
|
;;
|
||||||
|
|
||||||
|
automake)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is missing on your system. You should only need it if
|
||||||
|
you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
|
||||||
|
You might want to install the \`Automake' and \`Perl' packages.
|
||||||
|
Grab them from any GNU archive site."
|
||||||
|
find . -type f -name Makefile.am -print |
|
||||||
|
sed 's/\.am$/.in/' |
|
||||||
|
while read f; do touch "$f"; done
|
||||||
|
;;
|
||||||
|
|
||||||
|
bison|yacc)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is missing on your system. You should only need it if
|
||||||
|
you modified a \`.y' file. You may need the \`Bison' package
|
||||||
|
in order for those modifications to take effect. You can get
|
||||||
|
\`Bison' from any GNU archive site."
|
||||||
|
rm -f y.tab.c y.tab.h
|
||||||
|
if [ $# -ne 1 ]; then
|
||||||
|
eval LASTARG="\${$#}"
|
||||||
|
case "$LASTARG" in
|
||||||
|
*.y)
|
||||||
|
SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
|
||||||
|
if [ -f "$SRCFILE" ]; then
|
||||||
|
cp "$SRCFILE" y.tab.c
|
||||||
|
fi
|
||||||
|
SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
|
||||||
|
if [ -f "$SRCFILE" ]; then
|
||||||
|
cp "$SRCFILE" y.tab.h
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
if [ ! -f y.tab.h ]; then
|
||||||
|
echo >y.tab.h
|
||||||
|
fi
|
||||||
|
if [ ! -f y.tab.c ]; then
|
||||||
|
echo 'main() { return 0; }' >y.tab.c
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
|
||||||
|
lex|flex)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is missing on your system. You should only need it if
|
||||||
|
you modified a \`.l' file. You may need the \`Flex' package
|
||||||
|
in order for those modifications to take effect. You can get
|
||||||
|
\`Flex' from any GNU archive site."
|
||||||
|
rm -f lex.yy.c
|
||||||
|
if [ $# -ne 1 ]; then
|
||||||
|
eval LASTARG="\${$#}"
|
||||||
|
case "$LASTARG" in
|
||||||
|
*.l)
|
||||||
|
SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
|
||||||
|
if [ -f "$SRCFILE" ]; then
|
||||||
|
cp "$SRCFILE" lex.yy.c
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
if [ ! -f lex.yy.c ]; then
|
||||||
|
echo 'main() { return 0; }' >lex.yy.c
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
|
||||||
|
makeinfo)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is missing on your system. You should only need it if
|
||||||
|
you modified a \`.texi' or \`.texinfo' file, or any other file
|
||||||
|
indirectly affecting the aspect of the manual. The spurious
|
||||||
|
call might also be the consequence of using a buggy \`make' (AIX,
|
||||||
|
DU, IRIX). You might want to install the \`Texinfo' package or
|
||||||
|
the \`GNU make' package. Grab either from any GNU archive site."
|
||||||
|
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
|
||||||
|
if test -z "$file"; then
|
||||||
|
file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
|
||||||
|
file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
|
||||||
|
fi
|
||||||
|
touch $file
|
||||||
|
;;
|
||||||
|
|
||||||
|
*)
|
||||||
|
echo 1>&2 "\
|
||||||
|
WARNING: \`$1' is needed, and you do not seem to have it handy on your
|
||||||
|
system. You might have modified some files without having the
|
||||||
|
proper tools for further handling them. Check the \`README' file,
|
||||||
|
it often tells you about the needed prerequirements for installing
|
||||||
|
this package. You may also peek at any GNU archive site, in case
|
||||||
|
some other package would contain this missing \`$1' program."
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
exit 0
|
||||||
62
scripts-ada/mkbinutilspec.in
Normal file
62
scripts-ada/mkbinutilspec.in
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Usage: mkbinutilspec CPU
|
||||||
|
#
|
||||||
|
|
||||||
|
RTEMS_DIR=`dirname $0`/@top_srcdir@
|
||||||
|
|
||||||
|
CFG=setup.cache
|
||||||
|
dst=@RPM_SPECSdir@
|
||||||
|
exe_ext=@EXEEXT@
|
||||||
|
|
||||||
|
usage()
|
||||||
|
{
|
||||||
|
echo "$0 [options] <target_alias>"
|
||||||
|
echo " options:"
|
||||||
|
echo " -cfg <setup.cache>"
|
||||||
|
echo " -o <rpm-spec-dir>"
|
||||||
|
exit 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
while test $# -ge 2; do
|
||||||
|
case $1 in
|
||||||
|
-cfg)
|
||||||
|
shift
|
||||||
|
CFG=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
dst=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
echo "invalid option $1";
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if test ! $# -eq 1;
|
||||||
|
then
|
||||||
|
echo "Invalid number of arguments"
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
# target to build for
|
||||||
|
target_alias=$1
|
||||||
|
|
||||||
|
. ./$CFG
|
||||||
|
|
||||||
|
specfile=${dst}/$target_alias-binutils-${binutils_version}.spec
|
||||||
|
|
||||||
|
sed -e "s%@Release@%${binutils_rpm_release}%g" \
|
||||||
|
-e "s%@rpm_build_root@%${rpm_build_root}%g" \
|
||||||
|
-e "s%@target_alias@%${target_alias}%g" \
|
||||||
|
-e "s%@binutils_version@%${binutils_version}%g" \
|
||||||
|
-e "s%@binutils_patch_version@%${binutils_patch_version}%g" \
|
||||||
|
-e "s%@exe_ext@%${exe_ext}%g" \
|
||||||
|
< ${RTEMS_DIR}/binutils/binutils.spec.in \
|
||||||
|
> ${specfile}
|
||||||
|
|
||||||
|
echo Generated ${specfile}
|
||||||
62
scripts-ada/mkbspspec.in
Normal file
62
scripts-ada/mkbspspec.in
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
|
||||||
|
RTEMS_DIR=`dirname $0`/@top_srcdir@
|
||||||
|
RTEMS_VERSION=@RTEMS_VERSION@
|
||||||
|
|
||||||
|
CFG=setup.cache
|
||||||
|
dst=@RPM_SPECSdir@
|
||||||
|
exe_ext=@EXEEXT@
|
||||||
|
|
||||||
|
usage()
|
||||||
|
{
|
||||||
|
echo "$0 [options] <target_alias> <bsp>"
|
||||||
|
echo " options:"
|
||||||
|
echo " -cfg <setup.cache>"
|
||||||
|
echo " -o <rpm-spec-dir>"
|
||||||
|
exit 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
while test $# -ge 3; do
|
||||||
|
case $1 in
|
||||||
|
-cfg)
|
||||||
|
shift
|
||||||
|
CFG=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
dst=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
echo "invalid option $1";
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if test ! $# -eq 2;
|
||||||
|
then
|
||||||
|
echo "Invalid number of arguments"
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
# target to build for
|
||||||
|
target_alias=$1
|
||||||
|
bsp=$2
|
||||||
|
|
||||||
|
. ./$CFG
|
||||||
|
|
||||||
|
specfile=${dst}/$target_alias-$bsp-${rtems_version}.spec
|
||||||
|
|
||||||
|
sed -e "s%@Release@%${rtems_rpm_release}%g" \
|
||||||
|
-e "s%@bsp@%${bsp}%g" \
|
||||||
|
-e "s%@rtems_version@%${rtems_version}%g" \
|
||||||
|
-e "s%@rpm_build_root@%${rpm_build_root}%g" \
|
||||||
|
-e "s%@target_alias@%${target_alias}%g" \
|
||||||
|
-e "s%@exe_ext@%${exe_ext}%g" \
|
||||||
|
< ${RTEMS_DIR}/rtems/rtems.spec.in \
|
||||||
|
> ${specfile}
|
||||||
|
|
||||||
|
echo Generated ${specfile}
|
||||||
88
scripts-ada/mkgdbspec.in
Normal file
88
scripts-ada/mkgdbspec.in
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Usage: mkgdbspec CPU
|
||||||
|
#
|
||||||
|
|
||||||
|
RTEMS_DIR=`dirname $0`/@top_srcdir@
|
||||||
|
|
||||||
|
CFG=setup.cache
|
||||||
|
dst=@RPM_SPECSdir@
|
||||||
|
exe_ext=@EXEEXT@
|
||||||
|
|
||||||
|
usage()
|
||||||
|
{
|
||||||
|
echo "$0 [options] <target_alias>"
|
||||||
|
echo " options:"
|
||||||
|
echo " -cfg <setup.cache>"
|
||||||
|
echo " -o <rpm-spec-dir>"
|
||||||
|
exit 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
while test $# -ge 2; do
|
||||||
|
case $1 in
|
||||||
|
-cfg)
|
||||||
|
shift
|
||||||
|
CFG=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
dst=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
echo "invalid option $1";
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if test ! $# -eq 1;
|
||||||
|
then
|
||||||
|
echo "Invalid number of arguments"
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
# target to build for
|
||||||
|
target_alias=$1
|
||||||
|
|
||||||
|
. ./$CFG
|
||||||
|
|
||||||
|
specfile=${dst}/$target_alias-gdb-${gdb_version}.spec
|
||||||
|
|
||||||
|
case ${target_alias} in
|
||||||
|
powerpc*)
|
||||||
|
extra_configure_arguments="--enable-sim --enable-sim-powerpc --enable-sim-timebase --enable-sim-hardware"
|
||||||
|
# Enabling this causes the program image to be huge and causes
|
||||||
|
# some gcc/hosts combinations to run out of memory.
|
||||||
|
# --enable-sim-inline
|
||||||
|
;;
|
||||||
|
sparc*)
|
||||||
|
extra_configure_arguments="--enable-sim"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
sed -e "s%@Release@%${gdb_rpm_release}%g" \
|
||||||
|
-e "s%@rpm_build_root@%${rpm_build_root}%g" \
|
||||||
|
-e "s%@target_alias@%${target_alias}%g" \
|
||||||
|
-e "s%@gdb_version@%${gdb_version}%g" \
|
||||||
|
-e "s%@gdb_patch_version@%${gdb_patch_version}%g" \
|
||||||
|
-e "s%@extra_configure_arguments@%${extra_configure_arguments}%g" \
|
||||||
|
-e "s%@exe_ext@%${exe_ext}%g" \
|
||||||
|
< ${RTEMS_DIR}/gdb/gdb.spec.in \
|
||||||
|
> ${specfile}
|
||||||
|
|
||||||
|
case ${target_alias} in
|
||||||
|
powerpc*)
|
||||||
|
echo "/opt/rtems/bin/${target_alias}-run${exe_ext}"
|
||||||
|
;;
|
||||||
|
sparc*)
|
||||||
|
echo "/opt/rtems/bin/${target_alias}-run${exe_ext}"
|
||||||
|
echo "/opt/rtems/bin/${target_alias}-sis${exe_ext}"
|
||||||
|
;;
|
||||||
|
*) ;;
|
||||||
|
esac >> ${specfile}
|
||||||
|
|
||||||
|
echo Generated ${specfile}
|
||||||
71
scripts-ada/mkgnatnewlibspec.in
Normal file
71
scripts-ada/mkgnatnewlibspec.in
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Usage: mktoolspec CPU
|
||||||
|
#
|
||||||
|
|
||||||
|
RTEMS_DIR=`dirname $0`/@top_srcdir@
|
||||||
|
|
||||||
|
CFG=setup.cache
|
||||||
|
dst=@RPM_SPECSdir@
|
||||||
|
exe_ext=@EXEEXT@
|
||||||
|
|
||||||
|
usage()
|
||||||
|
{
|
||||||
|
echo "$0 [options] <target_alias>"
|
||||||
|
echo " options:"
|
||||||
|
echo " -cfg <setup.cache>"
|
||||||
|
echo " -o <rpm-spec-dir>"
|
||||||
|
exit 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
specsrc=${RTEMS_DIR}/gnatnewlib/gnatnewlib.spec.in
|
||||||
|
|
||||||
|
while test $# -ge 2; do
|
||||||
|
case $1 in
|
||||||
|
-cfg)
|
||||||
|
shift
|
||||||
|
CFG=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-o)
|
||||||
|
shift
|
||||||
|
dst=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-a) # alternate specs file
|
||||||
|
shift
|
||||||
|
specsrc=$1
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-*)
|
||||||
|
echo "invalid option $1";
|
||||||
|
usage
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
if test ! $# -eq 1;
|
||||||
|
then
|
||||||
|
echo "Invalid number of arguments"
|
||||||
|
usage
|
||||||
|
fi
|
||||||
|
|
||||||
|
# target to build for
|
||||||
|
target_alias=$1
|
||||||
|
|
||||||
|
. ./$CFG
|
||||||
|
|
||||||
|
specfile=${dst}/$target_alias-gcc-${gcc_version}-newlib-${newlib_version}.spec
|
||||||
|
|
||||||
|
sed -e "s%@Release@%${gnatnewlib_rpm_release}%g" \
|
||||||
|
-e "s%@target_alias@%${target_alias}%g" \
|
||||||
|
-e "s%@rpm_build_root@%${rpm_build_root}%g" \
|
||||||
|
-e "s%@gcc_version@%${gcc_version}%g" \
|
||||||
|
-e "s%@gcc_patch_version@%${gcc_patch_version}%g" \
|
||||||
|
-e "s%@newlib_version@%${newlib_version}%g" \
|
||||||
|
-e "s%@newlib_patch_version@%${newlib_patch_version}%g" \
|
||||||
|
-e "s%@exe_ext@%${exe_ext}%g" \
|
||||||
|
< ${specsrc} \
|
||||||
|
> ${specfile}
|
||||||
|
|
||||||
|
echo Generated ${specfile}.
|
||||||
40
scripts-ada/mkinstalldirs
Executable file
40
scripts-ada/mkinstalldirs
Executable file
@@ -0,0 +1,40 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
# mkinstalldirs --- make directory hierarchy
|
||||||
|
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
|
||||||
|
# Created: 1993-05-16
|
||||||
|
# Public domain
|
||||||
|
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
errstatus=0
|
||||||
|
|
||||||
|
for file
|
||||||
|
do
|
||||||
|
set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
|
||||||
|
shift
|
||||||
|
|
||||||
|
pathcomp=
|
||||||
|
for d
|
||||||
|
do
|
||||||
|
pathcomp="$pathcomp$d"
|
||||||
|
case "$pathcomp" in
|
||||||
|
-* ) pathcomp=./$pathcomp ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if test ! -d "$pathcomp"; then
|
||||||
|
echo "mkdir $pathcomp"
|
||||||
|
|
||||||
|
mkdir "$pathcomp" || lasterr=$?
|
||||||
|
|
||||||
|
if test ! -d "$pathcomp"; then
|
||||||
|
errstatus=$lasterr
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
pathcomp="$pathcomp/"
|
||||||
|
done
|
||||||
|
done
|
||||||
|
|
||||||
|
exit $errstatus
|
||||||
|
|
||||||
|
# mkinstalldirs ends here
|
||||||
32
scripts-ada/mkrpms
Normal file
32
scripts-ada/mkrpms
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
#
|
||||||
|
# A simple shell script to build several rpms in a row.
|
||||||
|
#
|
||||||
|
# Used for testing rtems.spec.in
|
||||||
|
#
|
||||||
|
|
||||||
|
# Some linux distributions use /usr/src/packages
|
||||||
|
# redhat uses /usr/src/redhat
|
||||||
|
# others might use /usr/src
|
||||||
|
if test -d /usr/src/packages/SPECS;
|
||||||
|
then
|
||||||
|
dst=/usr/src/packages/SPECS;
|
||||||
|
elif test -d /usr/src/redhat/SPECS;
|
||||||
|
then
|
||||||
|
dst=/usr/src/redhat/SPECS;
|
||||||
|
elif test -d /usr/src/SPECS/;
|
||||||
|
then
|
||||||
|
dst=/usr/src/SPECS;
|
||||||
|
fi
|
||||||
|
|
||||||
|
./mkspec pc386 i386-rtems
|
||||||
|
rpm -ba $dst/rtems-i386-rtems-pc386.spec
|
||||||
|
|
||||||
|
./mkspec gensh1 sh-rtemself
|
||||||
|
rpm -ba $dst/rtems-sh-rtemself-gensh1.spec
|
||||||
|
|
||||||
|
./mkspec mcp750 powerpc-rtems
|
||||||
|
rpm -ba $dst/rtems-powerpc-rtems-mcp750.spec
|
||||||
|
|
||||||
|
|
||||||
19
scripts-ada/mkspec
Normal file
19
scripts-ada/mkspec
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
|
||||||
|
RTEMS_DIR=`dirname $0`
|
||||||
|
RTEMS_VERSION=`grep Version ${RTEMS_DIR}/../VERSION | \
|
||||||
|
sed -e 's%RTEMS[ ]*Version[ ]*\(.*\)[ ]*%\1%g'`
|
||||||
|
|
||||||
|
target_alias=$1
|
||||||
|
bsp=$2
|
||||||
|
release=0
|
||||||
|
|
||||||
|
#${RTEMS_DIR}/scripts/mkbspspec $bsp $target_alias
|
||||||
|
#${RTEMS_DIR}/scripts/mkbinutilspec $target_alias
|
||||||
|
#${RTEMS_DIR}/scripts/mkgnatnewlibspec $target_alias
|
||||||
|
#${RTEMS_DIR}/scripts/mkgdbspec $target_alias
|
||||||
|
./mkbinutilspec $target_alias
|
||||||
|
./mkgnatnewlibspec $target_alias
|
||||||
|
./mkgdbspec $target_alias
|
||||||
|
|
||||||
104
scripts-ada/setup
Executable file
104
scripts-ada/setup
Executable file
@@ -0,0 +1,104 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
CFG=setup.cache
|
||||||
|
|
||||||
|
# RTEMS tools setup
|
||||||
|
|
||||||
|
if test ! -f ./$CFG;
|
||||||
|
then
|
||||||
|
echo -n "restoring default setup.cache .."
|
||||||
|
cp ./setup.def ./$CFG
|
||||||
|
echo " done"
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo -n "loading setup from ./$CFG .."
|
||||||
|
. ./$CFG
|
||||||
|
echo " done"
|
||||||
|
echo
|
||||||
|
|
||||||
|
menu_setup()
|
||||||
|
{
|
||||||
|
while true;
|
||||||
|
do
|
||||||
|
echo
|
||||||
|
echo " GNAT/RTEMS Source packages setup"
|
||||||
|
echo
|
||||||
|
echo "0 binutils version : $binutils_version"
|
||||||
|
echo "1 binutils patch version : $binutils_patch_version"
|
||||||
|
echo "2 binutils rpm release : $binutils_rpm_release"
|
||||||
|
echo "3 gcc version : $gcc_version"
|
||||||
|
echo "4 gcc patch version : $gcc_patch_version"
|
||||||
|
echo "5 gnat version : $gnat_version"
|
||||||
|
echo "6 gnat patch version : $gnat_patch_version"
|
||||||
|
echo "7 newlib version : $newlib_version"
|
||||||
|
echo "8 newlib patch version : $newlib_patch_version"
|
||||||
|
echo "9 gnat/newlib rpm release : $gccnewlib_rpm_release"
|
||||||
|
echo "a gdb version : $gdb_version"
|
||||||
|
echo "b gdb patch version : $gdb_patch_version"
|
||||||
|
echo "c gdb rpm release : $gdb_rpm_release"
|
||||||
|
echo "d rtems version : $rtems_version"
|
||||||
|
echo "e rtems rpm release : $rtems_rpm_release"
|
||||||
|
echo "f rpm build root : $rpm_build_root"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo -n "[0-9a-f] or any other key to quit >"
|
||||||
|
read sel
|
||||||
|
case $sel in
|
||||||
|
0) echo -n "BINUTILS source >" ; read binutils_version ;;
|
||||||
|
1) echo -n "BINUTILS patch version >" ; read binutils_patch_version ;;
|
||||||
|
2) echo -n "BINUTILS RPM release >" ; read binutils_rpm_release ;;
|
||||||
|
3) echo -n "GCC source >" ; read gcc_version ;;
|
||||||
|
4) echo -n "GCC patch version>" ; read gcc_patch_version ;;
|
||||||
|
5) echo -n "GNAT source >" ; read gnat_version ;;
|
||||||
|
6) echo -n "GNAT patch version>" ; read gnat_patch_version ;;
|
||||||
|
7) echo -n "NEWLIB source >" ; read newlib_version ;;
|
||||||
|
8) echo -n "NEWLIB patch version>" ; read newlib_patch_version ;;
|
||||||
|
9) echo -n "GNAT/NEWLIB RPM release >" ; read gnatnewlib_rpm_release ;;
|
||||||
|
a) echo -n "GDB source >" ; read gdb_version ;;
|
||||||
|
b) echo -n "GDB patch version>" ; read gdb_patch_version ;;
|
||||||
|
c) echo -n "GDB RPM release >" ; read gdb_rpm_release ;;
|
||||||
|
d) echo -n "RTEMS source >" ; read rtems_version ;;
|
||||||
|
e) echo -n "RTEMS RPM release >" ; read rtems_rpm_release ;;
|
||||||
|
f) echo -n "RPM build root >" ; read rpm_build_root ;;
|
||||||
|
*)
|
||||||
|
return 0 ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
save_setup()
|
||||||
|
{
|
||||||
|
echo -n "saving setup to $CFG .."
|
||||||
|
|
||||||
|
echo "# RTEMS tools setup" > $CFG
|
||||||
|
echo "binutils_version=$binutils_version" >> $CFG
|
||||||
|
echo "binutils_patch_version=$binutils_patch_version" >> $CFG
|
||||||
|
echo "binutils_rpm_release=$binutils_rpm_release" >> $CFG
|
||||||
|
echo "newlib_version=$newlib_version" >> $CFG
|
||||||
|
echo "newlib_patch_version=$newlib_patch_version" >> $CFG
|
||||||
|
echo "gcc_version=$gcc_version" >> $CFG
|
||||||
|
echo "gcc_patch_version=$gcc_patch_version" >> $CFG
|
||||||
|
echo "gnat_version=$gcc_version" >> $CFG
|
||||||
|
echo "gnat_patch_version=$gcc_patch_version" >> $CFG
|
||||||
|
echo "gnatnewlib_rpm_release=$gccnewlib_rpm_release" >> $CFG
|
||||||
|
echo "gdb_version=$gdb_version" >> $CFG
|
||||||
|
echo "gdb_patch_version=$gdb_patch_version" >> $CFG
|
||||||
|
echo "gdb_rpm_release=$gdb_rpm_release" >> $CFG
|
||||||
|
echo "rtems_version=$rtems_version" >> $CFG
|
||||||
|
echo "rtems_rpm_release=$rtems_rpm_release" >> $CFG
|
||||||
|
echo "rpm_build_root=$rpm_build_root" >> $CFG
|
||||||
|
|
||||||
|
echo " done"
|
||||||
|
test -f Makefile || ./configure
|
||||||
|
}
|
||||||
|
|
||||||
|
menu_setup
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo -n "Save setup [y|n] >"
|
||||||
|
read sel
|
||||||
|
case $sel in
|
||||||
|
''|y*|Y*) save_setup ;;
|
||||||
|
*) ;;
|
||||||
|
esac
|
||||||
17
scripts-ada/setup.def
Normal file
17
scripts-ada/setup.def
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
# RTEMS tools setup
|
||||||
|
binutils_version=2.9.5.0.22
|
||||||
|
binutils_patch_version=20000114
|
||||||
|
binutils_rpm_release=1
|
||||||
|
newlib_version=1.8.2
|
||||||
|
newlib_patch_version=20000104
|
||||||
|
gcc_version=2.8.1
|
||||||
|
gcc_patch_version=20000106
|
||||||
|
gnat_version=3.12p
|
||||||
|
gnat_patch_version=20000126
|
||||||
|
gnatnewlib_rpm_release=2
|
||||||
|
gdb_version=4.17
|
||||||
|
gdb_patch_version=20000126
|
||||||
|
gdb_rpm_release=1
|
||||||
|
rtems_version=19991117
|
||||||
|
rtems_rpm_release=1
|
||||||
|
rpm_build_root=/tmp
|
||||||
Reference in New Issue
Block a user