New version from Ralf.

This commit is contained in:
Joel Sherrill
1999-10-20 15:29:12 +00:00
parent 1410dc36c7
commit 10629f7435
28 changed files with 3358 additions and 214 deletions

34
scripts/Makefile.am Normal file
View File

@@ -0,0 +1,34 @@
AUTOMAKE_OPTIONS = foreign
SUBDIRS = . binutils gccnewlib
noinst_SCRIPTS = \
setup \
buildall \
mkbinutils_subpackage_version \
mkbinutilspec \
mkbspspec \
mkgccnewlibspec \
mkgdbspec \
mkrpms \
mkspec \
mktoolspec
TEMPLATES = \
gccnewlib.spec.in \
gdb.spec.in \
rtems.spec.in \
toolchain.spec.in
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

347
scripts/Makefile.in Normal file
View File

@@ -0,0 +1,347 @@
# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DESTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
BINUTILSVERS = @BINUTILSVERS@
GCCNEWLIBVERS = @GCCNEWLIBVERS@
GDBVERS = @GDBVERS@
MAKEINFO = @MAKEINFO@
PACKAGE = @PACKAGE@
RPM_SPECSdir = @RPM_SPECSdir@
VERSION = @VERSION@
AUTOMAKE_OPTIONS = foreign
SUBDIRS = . binutils gccnewlib
noinst_SCRIPTS = setup buildall mkbinutils_subpackage_version mkbinutilspec mkbspspec mkgccnewlibspec mkgdbspec mkrpms mkspec mktoolspec
TEMPLATES = gccnewlib.spec.in gdb.spec.in rtems.spec.in toolchain.spec.in
noinst_DATA = setup.def $(TEMPLATES)
EXTRA_DIST = $(noinst_DATA) $(noinst_SCRIPTS)
CONFIGURE_DEPENDENCIES = setup.cache
DISTCLEANFILES = setup.cache
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_CLEAN_FILES = mkbinutilspec mkgccnewlibspec
SCRIPTS = $(noinst_SCRIPTS)
DATA = $(noinst_DATA)
DIST_COMMON = README Makefile.am Makefile.in TODO aclocal.m4 configure \
configure.in install-sh missing mkbinutilspec.in mkgccnewlibspec.in \
mkinstalldirs
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
$(ACLOCAL_M4): configure.in
cd $(srcdir) && $(ACLOCAL)
config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
cd $(srcdir) && $(AUTOCONF)
mkbinutilspec: $(top_builddir)/config.status mkbinutilspec.in
cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
mkgccnewlibspec: $(top_builddir)/config.status mkgccnewlibspec.in
cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
@SET_MAKE@
all-recursive install-data-recursive install-exec-recursive \
installdirs-recursive install-recursive uninstall-recursive \
check-recursive installcheck-recursive info-recursive dvi-recursive:
@set fnord $(MAKEFLAGS); amf=$$2; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@set fnord $(MAKEFLAGS); amf=$$2; \
dot_seen=no; \
rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
rev="$$subdir $$rev"; \
test "$$subdir" = "." && dot_seen=yes; \
done; \
test "$$dot_seen" = "no" && rev=". $$rev"; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
tags: TAGS
ID: $(HEADERS) $(SOURCES) $(LISP)
list='$(SOURCES) $(HEADERS)'; \
unique=`for i in $$list; do echo $$i; done | \
awk ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
here=`pwd` && cd $(srcdir) \
&& mkid -f$$here/ID $$unique $(LISP)
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS)'; \
unique=`for i in $$list; do echo $$i; done | \
awk ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
|| (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags $$unique $(LISP) -o $$here/TAGS)
mostlyclean-tags:
clean-tags:
distclean-tags:
-rm -f TAGS ID
maintainer-clean-tags:
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
-rm -rf $(distdir)
GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
mkdir $(distdir)/=build
mkdir $(distdir)/=inst
dc_install_base=`cd $(distdir)/=inst && pwd`; \
cd $(distdir)/=build \
&& ../configure --srcdir=.. --prefix=$$dc_install_base \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) dist
-rm -rf $(distdir)
@banner="$(distdir).tar.gz is ready for distribution"; \
dashes=`echo "$$banner" | sed s/./=/g`; \
echo "$$dashes"; \
echo "$$banner"; \
echo "$$dashes"
dist: distdir
-chmod -R a+r $(distdir)
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
-rm -rf $(distdir)
dist-all: distdir
-chmod -R a+r $(distdir)
GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
-rm -rf $(distdir)
distdir: $(DISTFILES)
-rm -rf $(distdir)
mkdir $(distdir)
-chmod 777 $(distdir)
@for file in $(DISTFILES); do \
d=$(srcdir); \
if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \
done
for subdir in $(SUBDIRS); do \
if test "$$subdir" = .; then :; else \
test -d $(distdir)/$$subdir \
|| mkdir $(distdir)/$$subdir \
|| exit 1; \
chmod 777 $(distdir)/$$subdir; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
|| exit 1; \
fi; \
done
info-am:
info: info-recursive
dvi-am:
dvi: dvi-recursive
check-am: all-am
check: check-recursive
installcheck-am:
installcheck: installcheck-recursive
install-exec-am:
install-exec: install-exec-recursive
install-data-am:
install-data: install-data-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-recursive
uninstall-am:
uninstall: uninstall-recursive
all-am: Makefile $(SCRIPTS) $(DATA)
all-redirect: all-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs: installdirs-recursive
installdirs-am:
mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
maintainer-clean-generic:
mostlyclean-am: mostlyclean-tags mostlyclean-generic
mostlyclean: mostlyclean-recursive
clean-am: clean-tags clean-generic mostlyclean-am
clean: clean-recursive
distclean-am: distclean-tags distclean-generic clean-am
distclean: distclean-recursive
-rm -f config.status
maintainer-clean-am: maintainer-clean-tags maintainer-clean-generic \
distclean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
maintainer-clean: maintainer-clean-recursive
-rm -f config.status
.PHONY: install-data-recursive uninstall-data-recursive \
install-exec-recursive uninstall-exec-recursive installdirs-recursive \
uninstalldirs-recursive all-recursive check-recursive \
installcheck-recursive info-recursive dvi-recursive \
mostlyclean-recursive distclean-recursive clean-recursive \
maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
install-exec install-data-am install-data install-am install \
uninstall-am uninstall all-redirect all-am all installdirs-am \
installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
setup.cache: setup.def
cp setup.def $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@@ -1,7 +1 @@
use mk* to insert tool version numbers. :)
make gcc/newlib work
write gdb one.
/opt/rtems/@target_alias@/include/readline*

104
scripts/aclocal.m4 vendored Normal file
View File

@@ -0,0 +1,104 @@
dnl aclocal.m4 generated automatically by aclocal 1.4
dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
dnl PARTICULAR PURPOSE.
# Do all the work for Automake. This macro actually does too much --
# some checks are only needed if your package does certain things.
# But this isn't really a big deal.
# serial 1
dnl Usage:
dnl AM_INIT_AUTOMAKE(package,version, [no-define])
AC_DEFUN(AM_INIT_AUTOMAKE,
[AC_REQUIRE([AC_PROG_INSTALL])
PACKAGE=[$1]
AC_SUBST(PACKAGE)
VERSION=[$2]
AC_SUBST(VERSION)
dnl test to see if srcdir already configured
if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
fi
ifelse([$3],,
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
AC_REQUIRE([AM_SANITY_CHECK])
AC_REQUIRE([AC_ARG_PROGRAM])
dnl FIXME This is truly gross.
missing_dir=`cd $ac_aux_dir && pwd`
AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
AC_REQUIRE([AC_PROG_MAKE_SET])])
#
# Check to make sure that the build environment is sane.
#
AC_DEFUN(AM_SANITY_CHECK,
[AC_MSG_CHECKING([whether build environment is sane])
# Just in case
sleep 1
echo timestamp > conftestfile
# Do `set' in a subshell so we don't clobber the current shell's
# arguments. Must try -L first in case configure is actually a
# symlink; some systems play weird games with the mod time of symlinks
# (eg FreeBSD returns the mod time of the symlink's containing
# directory).
if (
set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
if test "[$]*" = "X"; then
# -L didn't work.
set X `ls -t $srcdir/configure conftestfile`
fi
if test "[$]*" != "X $srcdir/configure conftestfile" \
&& test "[$]*" != "X conftestfile $srcdir/configure"; then
# If neither matched, then we have a broken ls. This can happen
# if, for instance, CONFIG_SHELL is bash and it inherits a
# broken ls alias from the environment. This has actually
# happened. Such a system could not be considered "sane".
AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
alias in your environment])
fi
test "[$]2" = conftestfile
)
then
# Ok.
:
else
AC_MSG_ERROR([newly created file is older than distributed files!
Check your system clock])
fi
rm -f conftest*
AC_MSG_RESULT(yes)])
dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
dnl The program must properly implement --version.
AC_DEFUN(AM_MISSING_PROG,
[AC_MSG_CHECKING(for working $2)
# Run test in a subshell; some versions of sh will print an error if
# an executable is not found, even if stderr is redirected.
# Redirect stdin to placate older versions of autoconf. Sigh.
if ($2 --version) < /dev/null > /dev/null 2>&1; then
$1=$2
AC_MSG_RESULT(found)
else
$1="$3/missing $2"
AC_MSG_RESULT(missing)
fi
AC_SUBST($1)])

View File

@@ -0,0 +1,50 @@
AUTOMAKE_OPTIONS = foreign
MKBINUTILSSPEC = $(SHELL) $(top_srcdir)/mkbinutilspec
MKBINUTILSSPEC_DEPS = ../mkbinutilspec binutils.spec.in ../setup.cache
i386-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . i386-rtems
sh-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . sh-rtems
powerpc-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . powerpc-rtems
sparc-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . sparc-rtems
m68k-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . m68k-rtems
mips64orion-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . mips64orion-rtems
i960-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . i960-rtems
hppa1.1-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . hppa1.1-rtems
TEMPLATES = \
binutils.spec.in
RPM_SPECS_DATA = \
i386-rtems-$(BINUTILSVERS).spec \
sh-rtems-$(BINUTILSVERS).spec \
powerpc-rtems-$(BINUTILSVERS).spec \
sparc-rtems-$(BINUTILSVERS).spec \
m68k-rtems-$(BINUTILSVERS).spec \
mips64orion-rtems-$(BINUTILSVERS).spec \
i960-rtems-$(BINUTILSVERS).spec \
hppa1.1-rtems-$(BINUTILSVERS).spec
noinst_DATA = \
$(TEMPLATES)
EXTRA_DIST = \
$(TEMPLATES)
CLEANFILES = $(RPM_SPECS_DATA)

View File

@@ -0,0 +1,234 @@
# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DESTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
BINUTILSVERS = @BINUTILSVERS@
GCCNEWLIBVERS = @GCCNEWLIBVERS@
GDBVERS = @GDBVERS@
MAKEINFO = @MAKEINFO@
PACKAGE = @PACKAGE@
RPM_SPECSdir = @RPM_SPECSdir@
VERSION = @VERSION@
AUTOMAKE_OPTIONS = foreign
MKBINUTILSSPEC = $(SHELL) $(top_srcdir)/mkbinutilspec
MKBINUTILSSPEC_DEPS = ../mkbinutilspec binutils.spec.in ../setup.cache
TEMPLATES = binutils.spec.in
RPM_SPECS_DATA = i386-rtems-$(BINUTILSVERS).spec sh-rtems-$(BINUTILSVERS).spec powerpc-rtems-$(BINUTILSVERS).spec sparc-rtems-$(BINUTILSVERS).spec m68k-rtems-$(BINUTILSVERS).spec mips64orion-rtems-$(BINUTILSVERS).spec i960-rtems-$(BINUTILSVERS).spec hppa1.1-rtems-$(BINUTILSVERS).spec
noinst_DATA = $(TEMPLATES)
EXTRA_DIST = $(TEMPLATES)
CLEANFILES = $(RPM_SPECS_DATA)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_CLEAN_FILES =
DATA = $(RPM_SPECS_DATA) $(noinst_DATA)
DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps binutils/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
install-RPM_SPECSDATA: $(RPM_SPECS_DATA)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(RPM_SPECSdir)
@list='$(RPM_SPECS_DATA)'; for p in $$list; do \
if test -f $(srcdir)/$$p; then \
echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(RPM_SPECSdir)/$$p"; \
$(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(RPM_SPECSdir)/$$p; \
else if test -f $$p; then \
echo " $(INSTALL_DATA) $$p $(DESTDIR)$(RPM_SPECSdir)/$$p"; \
$(INSTALL_DATA) $$p $(DESTDIR)$(RPM_SPECSdir)/$$p; \
fi; fi; \
done
uninstall-RPM_SPECSDATA:
@$(NORMAL_UNINSTALL)
list='$(RPM_SPECS_DATA)'; for p in $$list; do \
rm -f $(DESTDIR)$(RPM_SPECSdir)/$$p; \
done
tags: TAGS
TAGS:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = binutils
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
d=$(srcdir); \
if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \
done
info-am:
info: info-am
dvi-am:
dvi: dvi-am
check-am: all-am
check: check-am
installcheck-am:
installcheck: installcheck-am
install-exec-am:
install-exec: install-exec-am
install-data-am: install-RPM_SPECSDATA
install-data: install-data-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am
uninstall-am: uninstall-RPM_SPECSDATA
uninstall: uninstall-am
all-am: Makefile $(DATA)
all-redirect: all-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs:
$(mkinstalldirs) $(DESTDIR)$(RPM_SPECSdir)
mostlyclean-generic:
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
maintainer-clean-generic:
mostlyclean-am: mostlyclean-generic
mostlyclean: mostlyclean-am
clean-am: clean-generic mostlyclean-am
clean: clean-am
distclean-am: distclean-generic clean-am
distclean: distclean-am
maintainer-clean-am: maintainer-clean-generic distclean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
maintainer-clean: maintainer-clean-am
.PHONY: uninstall-RPM_SPECSDATA install-RPM_SPECSDATA tags distdir \
info-am info dvi-am dvi check check-am installcheck-am installcheck \
install-exec-am install-exec install-data-am install-data install-am \
install uninstall-am uninstall all-redirect all-am all installdirs \
mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
i386-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . i386-rtems
sh-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . sh-rtems
powerpc-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . powerpc-rtems
sparc-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . sparc-rtems
m68k-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . m68k-rtems
mips64orion-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . mips64orion-rtems
i960-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . i960-rtems
hppa1.1-rtems-$(BINUTILSVERS).spec: $(MKBINUTILSSPEC_DEPS)
$(MKBINUTILSSPEC) -cfg ../setup.cache -o . hppa1.1-rtems
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@@ -0,0 +1,152 @@
#
# spec file for package 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
Release: @Release@
Copyright: 1999 OARCorp
Group: unsorted
Provides: @target_alias@-binutils
Autoreqprov: on
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
Buildroot: /tmp
Prefix: /opt
Version: binutils@binutils_version@
Summary: binutils for target @target_alias@
Source0: binutils-@binutils_version@.tar.gz
Patch0: binutils-@binutils_version@-rtems-@binutils_patch_version@.diff
%description
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
%build
test -d build || mkdir 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 -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 -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
%doc /opt/rtems/man/man1/@target_alias@-*.1
%dir /opt/rtems/bin
/opt/rtems/bin/@target_alias@-addr2line
/opt/rtems/bin/@target_alias@-ar
/opt/rtems/bin/@target_alias@-as
/opt/rtems/bin/@target_alias@-c++filt
/opt/rtems/bin/@target_alias@-gasp
/opt/rtems/bin/@target_alias@-ld
/opt/rtems/bin/@target_alias@-nm
/opt/rtems/bin/@target_alias@-objcopy
/opt/rtems/bin/@target_alias@-objdump
/opt/rtems/bin/@target_alias@-ranlib
/opt/rtems/bin/@target_alias@-readelf
/opt/rtems/bin/@target_alias@-size
/opt/rtems/bin/@target_alias@-strings
/opt/rtems/bin/@target_alias@-strip
%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
%dir /opt/rtems/@target_alias@
%dir /opt/rtems/@target_alias@/bin
/opt/rtems/@target_alias@/bin/ar
/opt/rtems/@target_alias@/bin/as
/opt/rtems/@target_alias@/bin/ld
/opt/rtems/@target_alias@/bin/nm
/opt/rtems/@target_alias@/bin/ranlib
/opt/rtems/@target_alias@/bin/strip
%dir /opt/rtems/@target_alias@/lib
%dir /opt/rtems/@target_alias@/lib/ldscripts
/opt/rtems/@target_alias@/lib/ldscripts/*

View File

@@ -3,8 +3,6 @@
# Generate all the specs and then cycle through building them.
#
RTEMS_DIR=`dirname $0`
# 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 \
@@ -17,38 +15,7 @@ ALL_TARGETS="i386-rtems i960-rtems m68k-rtems \
# This is what we are building this time
#TARGETS=${ALL_TARGETS}
TARGETS="sh-rtems"
testing=no
binutils=990901
gcc=2.95.1
gdb=4.18
newlib=1.8.2
buildroot=/opt/tmp
#
# 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
TARGETS="i386-rtems m68k-rtems powerpc-rtems sh-rtems"
# Some linux distributions use /usr/src/packages
# redhat uses /usr/src/redhat
@@ -67,79 +34,41 @@ fi
# Now generate all the specs
for target in ${TARGETS}
do
${ECHO} ${RTEMS_DIR}/mkspec ${target}
./mkspec ${target}
done
# clean up a bit before we start
cd ${dst}
test -d log || mkdir log
# do all the tools
# do all the binutils
for target in ${TARGETS}
do
logfile=log/${target}-binutils
specfile=${dst}/${target}-binutils-${binutils}.spec
echo "rpm -ba --buildroot=${buildroot} ${specfile} >${logfile} 2>&1"
if [ ${testing} = no ] ; then
rpm -ba --buildroot=${buildroot} ${specfile} >${logfile} 2>&1
fi
${ECHO} rm -rf ${dst}/../BUILD/${target}-binutils*
${ECHO} rm -rf ${buildroot}/opt
rpm -ba --buildroot=/opt/tmp \
${dst}/${target}-binutils.spec >log/${target}-binutils 2>&1
rm -rf ${dst}/../BUILD/${target}-binutils
rm -rf /opt/tmp/opt
# now build gdb
logfile=log/${target}-gdb
specfile=${dst}/${target}-gdb-${gdb}.spec
echo "rpm -ba --buildroot=${buildroot} ${specfile} >${logfile} 2>&1"
if [ ${testing} = no ] ; then
rpm -ba --buildroot=${buildroot} ${specfile} >${logfile} 2>&1
fi
${ECHO} rm -rf ${dst}/../BUILD/${target}-gdb*
${ECHO} rm -rf ${buildroot}/opt
rpm -ba --buildroot=/opt/tmp \
${dst}/${target}-gdb.spec >log/${target}-gdb 2>&1
rm -rf ${dst}/../BUILD/${target}-gdb
rm -rf /opt/tmp/opt
# now build gcc/newlib
# NOTE: This requires having binutils installed and we immediately
# remove it once finished.
${ECHO} rpm -i ${dst}/../RPMS/i386/${target}-binutils-${binutils}-0.i386.rpm
rpm -i ${dst}/../RPMS/i386/${target}-binutils-19991011-0.i386.rpm
logfile=log/${target}-gccnewlib
specfile=${dst}/${target}-gcc-${gcc}-newlib-${newlib}.spec
echo "rpm -ba --buildroot=${buildroot} ${specfile} >${logfile} 2>&1"
if [ ${testing} = no ] ; then
rpm -ba --buildroot=${buildroot} ${specfile} >${logfile} 2>&1
fi
${ECHO} rm -rf ${dst}/../BUILD/${target}-gcc*
${ECHO} rm -rf ${buildroot}/opt
rpm -ba --buildroot=/opt/tmp \
${dst}/${target}-gcc_newlib.spec >log/${target}-gccnewlib 2>&1
rm -rf ${dst}/../BUILD/${target}-gcc_newlib
rm -rf /opt/tmp/opt
echo uninstalling binutils for ${target}
if [ ${testing} = no ] ; then
rpm -e `rpm -qa | grep rtems`
fi
rpm -e `rpm -qa | grep rtems`
done
staging_dir=/usr3/rtems_cds/test_cd/linux
mv ${dst}/../RPMS/i386/*.rpm /usr3/rtems_cds/test_cd/RPMS
mv ${dst}/../SRPMS/*.rpm /usr3/rtems_cds/test_cd/SRPMS
${ECHO} mkdir ${staging_dir}
${ECHO} mkdir ${staging_dir}/RPMS
${ECHO} mkdir ${staging_dir}/SRPMS
echo Moving RPMs to CD staging directory
for file in `ls -1 ${dst}/../RPMS/i386/*.rpm 2>/dev/null`
do
${ECHO} mv ${file} ${staging_dir}/RPMS
done
echo Moving SRPMs to CD staging directory
for file in `ls -1 ${dst}/../SRPMS/*.rpm 2>/dev/null`
do
${ECHO} mv ${file} ${staging_dir}/SRPMS
done
# Now we are done
stop=`date`
echo
echo "Started: " $start
echo "Finished: " $stop
exit 0

1082
scripts/configure vendored Normal file

File diff suppressed because it is too large Load Diff

40
scripts/configure.in Normal file
View File

@@ -0,0 +1,40 @@
AC_INIT(binutils)
AM_INIT_AUTOMAKE(scripts,19991020-0,no)
test -f ./setup.cache || cp ./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_SPECSdirs=/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)
AC_OUTPUT(
Makefile
mkbinutilspec
mkgccnewlibspec
binutils/Makefile
gccnewlib/Makefile
)

View File

@@ -6,8 +6,6 @@
# 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
@@ -39,7 +37,7 @@ Authors:
...
%prep
# untar the sources inside @target_alias@-gcc-newlib
# untar the sources inside @target_alias@-gcc-newlib -@Version@
%setup -c -n @target_alias@-gcc-newlib -a 0 -a 1
%patch0 -p0
@@ -48,7 +46,7 @@ Authors:
( cd gcc-@gcc_version@
# Now link the C library into the source tree
ln -s ../newlib-@newlib_version@/newlib .
ln -s ../newlib-1.8.2/newlib .
)
%build
@@ -56,18 +54,10 @@ test -d build || mkdir build
( cd build
../gcc-@gcc_version@/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
--prefix=/opt/rtems --enable-languages="c c++"
../gcc-@gcc_version@/mkinstalldirs \
$RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include \
$RPM_BUILD_ROOT/opt/rtems/@target_alias@/include
srclimits=../gcc-@gcc_version@/newlib/libc/sys/rtems/include/limits.h
for dir in $RPM_BUILD_ROOT/opt/rtems/@target_alias@/include \
@@ -93,39 +83,56 @@ test -d build || mkdir build
make prefix=$RPM_BUILD_ROOT/opt/rtems install
cd @target_alias@/newlib
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
)
%files
%dir /opt/rtems
%dir /opt/rtems/bin
%dir /opt/rtems/info
%dir /opt/rtems/lib
%dir /opt/rtems/lib/gcc-lib
%dir /opt/rtems/lib/gcc-lib/@target_alias@
%dir /opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@
%dir /opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@/include
%dir /opt/rtems/@target_alias@
%dir /opt/rtems/@target_alias@/include
%dir /opt/rtems/@target_alias@/sys-include
%dir /opt/rtems/@target_alias@/lib
%dir /opt/rtems/man
%dir /opt/rtems/man/man1
%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
%dir /opt/rtems/info
%doc /opt/rtems/info/dir
%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*
%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
/opt/rtems/bin/@target_alias@-c++
/opt/rtems/bin/@target_alias@-g++
/opt/rtems/bin/@target_alias@-gcc
/opt/rtems/bin/@target_alias@-gcj
%dir /opt/rtems/lib
%dir /opt/rtems/lib/gcc-lib
%dir /opt/rtems/lib/gcc-lib/@target_alias@
/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@
/opt/rtems/@target_alias@/include
/opt/rtems/@target_alias@/sys-include

View File

@@ -0,0 +1,51 @@
AUTOMAKE_OPTIONS = foreign
MKGCCNEWLIBSPEC = $(SHELL) ../mkgccnewlibspec
MKGCCNEWLIBSPEC_DEPS = \
../mkgccnewlibspec gccnewlib.spec.in ../setup.cache
i386-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . i386-rtems
sh-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . sh-rtems
powerpc-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . powerpc-rtems
sparc-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . sparc-rtems
m68k-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . m68k-rtems
mips64orion-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . mips64orion-rtems
i960-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . i960-rtems
hppa1.1-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . hppa1.1-rtems
TEMPLATES = \
gccnewlib.spec.in
RPM_SPECS_DATA = \
i386-rtems-$(GCCNEWLIBVERS).spec \
sh-rtems-$(GCCNEWLIBVERS).spec \
powerpc-rtems-$(GCCNEWLIBVERS).spec \
sparc-rtems-$(GCCNEWLIBVERS).spec \
m68k-rtems-$(GCCNEWLIBVERS).spec \
mips64orion-rtems-$(GCCNEWLIBVERS).spec \
i960-rtems-$(GCCNEWLIBVERS).spec \
hppa1.1-rtems-$(GCCNEWLIBVERS).spec
noinst_DATA = \
$(TEMPLATES)
EXTRA_DIST = \
$(TEMPLATES)
CLEANFILES = $(RPM_SPECS_DATA)

View File

@@ -0,0 +1,235 @@
# Makefile.in generated automatically by automake 1.4 from Makefile.am
# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DESTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS)
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
BINUTILSVERS = @BINUTILSVERS@
GCCNEWLIBVERS = @GCCNEWLIBVERS@
GDBVERS = @GDBVERS@
MAKEINFO = @MAKEINFO@
PACKAGE = @PACKAGE@
RPM_SPECSdir = @RPM_SPECSdir@
VERSION = @VERSION@
AUTOMAKE_OPTIONS = foreign
MKGCCNEWLIBSPEC = $(SHELL) ../mkgccnewlibspec
MKGCCNEWLIBSPEC_DEPS = ../mkgccnewlibspec gccnewlib.spec.in ../setup.cache
TEMPLATES = gccnewlib.spec.in
RPM_SPECS_DATA = i386-rtems-$(GCCNEWLIBVERS).spec sh-rtems-$(GCCNEWLIBVERS).spec powerpc-rtems-$(GCCNEWLIBVERS).spec sparc-rtems-$(GCCNEWLIBVERS).spec m68k-rtems-$(GCCNEWLIBVERS).spec mips64orion-rtems-$(GCCNEWLIBVERS).spec i960-rtems-$(GCCNEWLIBVERS).spec hppa1.1-rtems-$(GCCNEWLIBVERS).spec
noinst_DATA = $(TEMPLATES)
EXTRA_DIST = $(TEMPLATES)
CLEANFILES = $(RPM_SPECS_DATA)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_CLEAN_FILES =
DATA = $(RPM_SPECS_DATA) $(noinst_DATA)
DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP_ENV = --best
all: all-redirect
.SUFFIXES:
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps gccnewlib/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
install-RPM_SPECSDATA: $(RPM_SPECS_DATA)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(RPM_SPECSdir)
@list='$(RPM_SPECS_DATA)'; for p in $$list; do \
if test -f $(srcdir)/$$p; then \
echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(RPM_SPECSdir)/$$p"; \
$(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(RPM_SPECSdir)/$$p; \
else if test -f $$p; then \
echo " $(INSTALL_DATA) $$p $(DESTDIR)$(RPM_SPECSdir)/$$p"; \
$(INSTALL_DATA) $$p $(DESTDIR)$(RPM_SPECSdir)/$$p; \
fi; fi; \
done
uninstall-RPM_SPECSDATA:
@$(NORMAL_UNINSTALL)
list='$(RPM_SPECS_DATA)'; for p in $$list; do \
rm -f $(DESTDIR)$(RPM_SPECSdir)/$$p; \
done
tags: TAGS
TAGS:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = gccnewlib
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
d=$(srcdir); \
if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \
else \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \
done
info-am:
info: info-am
dvi-am:
dvi: dvi-am
check-am: all-am
check: check-am
installcheck-am:
installcheck: installcheck-am
install-exec-am:
install-exec: install-exec-am
install-data-am: install-RPM_SPECSDATA
install-data: install-data-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am
uninstall-am: uninstall-RPM_SPECSDATA
uninstall: uninstall-am
all-am: Makefile $(DATA)
all-redirect: all-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install
installdirs:
$(mkinstalldirs) $(DESTDIR)$(RPM_SPECSdir)
mostlyclean-generic:
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
maintainer-clean-generic:
mostlyclean-am: mostlyclean-generic
mostlyclean: mostlyclean-am
clean-am: clean-generic mostlyclean-am
clean: clean-am
distclean-am: distclean-generic clean-am
distclean: distclean-am
maintainer-clean-am: maintainer-clean-generic distclean-am
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
maintainer-clean: maintainer-clean-am
.PHONY: uninstall-RPM_SPECSDATA install-RPM_SPECSDATA tags distdir \
info-am info dvi-am dvi check check-am installcheck-am installcheck \
install-exec-am install-exec install-data-am install-data install-am \
install uninstall-am uninstall all-redirect all-am all installdirs \
mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
i386-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . i386-rtems
sh-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . sh-rtems
powerpc-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . powerpc-rtems
sparc-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . sparc-rtems
m68k-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . m68k-rtems
mips64orion-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . mips64orion-rtems
i960-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . i960-rtems
hppa1.1-rtems-$(GCCNEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS)
$(MKGCCNEWLIBSPEC) -cfg ../setup.cache -o . hppa1.1-rtems
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@@ -0,0 +1,140 @@
#
# spec file for package rtems
#
# Copyright (c) 1999 OARCorp, Huntsville, AL
#
# please send bugfixes or comments to joel@OARcorp.com
#
Vendor: OAR Corporation
Distribution: Linux
Name: @target_alias@-gcc-newlib
Release: @Release@
Copyright: 1999 OARCorp
Group: unsorted
Provides: @target_alias@-gcc-newlib
Requires: @target_alias@-binutils
Autoreqprov: on
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
Version: gcc@gcc_version@newlib@newlib_version@
Summary: rtems gcc and newlib C Library for target @target_alias@
Source0: gcc-@gcc_version@.tar.gz
Source1: newlib-@newlib_version@.tar.gz
Patch0: gcc-@gcc_version@-rtems-@gcc_patch_version@.diff
Patch1: newlib-@newlib_version@-rtems-@newlib_patch_version@.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-@gcc_version@
# 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-@gcc_version@/configure --target=@target_alias@ \
--with-gnu-as --with-gnu-ld --with-newlib --verbose \
--prefix=/opt/rtems
../gcc-@gcc_version@/mkinstalldirs \
$RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include \
$RPM_BUILD_ROOT/opt/rtems/@target_alias@/include
srclimits=../gcc-@gcc_version@/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
cd @target_alias@/newlib
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
)
%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
%dir /opt/rtems/info
%doc /opt/rtems/info/dir
%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*
%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
/opt/rtems/bin/@target_alias@-c++
/opt/rtems/bin/@target_alias@-g++
/opt/rtems/bin/@target_alias@-gcc
/opt/rtems/bin/@target_alias@-gcj
%dir /opt/rtems/lib
%dir /opt/rtems/lib/gcc-lib
%dir /opt/rtems/lib/gcc-lib/@target_alias@
/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@
/opt/rtems/@target_alias@/include
/opt/rtems/@target_alias@/sys-include
/opt/rtems/@target_alias@/lib

View File

@@ -19,10 +19,10 @@ Provides: @target_alias@-gdb
Autoreqprov: on
Packager: corsepiu@faw.uni-ulm.de and joel@OARcorp.com
Version: gdb@gdb_version@
Version: @Version@
Summary: gdb for target @target_alias@
Source0: gdb-@gdb_version@.tar.gz
Patch0: gdb-@gdb_version@-rtems-@gdb_patch_version@.diff
Source0: gdb-4.18.tar.gz
Patch0: gdb-4.18-rtems-19991015.diff
Buildroot: /tmp
# Patch:
@@ -37,7 +37,7 @@ Authors:
...
%prep
# untar the sources inside @target_alias@-gdb
# untar the sources inside @target_alias@-gdb-@Version@
%setup -c -n @target_alias@-gdb -a 0
%patch0 -p0
@@ -45,7 +45,7 @@ Authors:
%build
test -d build || mkdir build
( cd build
../gdb-@gdb_version@/configure --target=@target_alias@ \
../gdb-4.18/configure --target=@target_alias@ \
--verbose --prefix=/opt/rtems
test -d $RPM_BUILD_ROOT/opt \
@@ -64,14 +64,6 @@ test -d build || mkdir build
)
%files
%dir /opt/rtems
%dir /opt/rtems/bin
%dir /opt/rtems/include
%dir /opt/rtems/info
%dir /opt/rtems/lib
%dir /opt/rtems/man
%dir /opt/rtems/man/man1
%doc /opt/rtems/info/gdb.info*
%doc /opt/rtems/info/mmalloc.info*
%doc /opt/rtems/info/readline.info*

251
scripts/install-sh Executable file
View 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/missing Executable file
View 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

View File

@@ -1,32 +1,54 @@
#!/bin/sh
#
# Usage: mktoolspec CPU
# Usage: mkbinutilspec CPU
#
RTEMS_DIR=`dirname $0`
CFG=user.cfg
dst=/usr/src/packages/SPECS
usage()
{
echo "$0 [options] <target_alias>"
echo " options:"
echo " -cfg <user.cfg>"
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
# RPM release number
rpm_release=0
# binutils version number
binutils_version=990901
binutils_patch_version=19991015
# 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
. ./$CFG
specfile=${dst}/$target_alias-binutils-${binutils_version}.spec
@@ -34,7 +56,7 @@ sed -e "s%@Release@%${rpm_release}%g" \
-e "s%@target_alias@%${target_alias}%g" \
-e "s%@binutils_version@%${binutils_version}%g" \
-e "s%@binutils_patch_version@%${binutils_patch_version}%g" \
< ${RTEMS_DIR}/binutils.spec.in \
< ${RTEMS_DIR}/binutils/binutils.spec.in \
> ${specfile}
echo Generated ${specfile}.
echo Generated ${specfile}

62
scripts/mkbinutilspec.in Normal file
View File

@@ -0,0 +1,62 @@
#!/bin/sh
#
# Usage: mkbinutilspec CPU
#
RTEMS_DIR=`dirname $0`
CFG=user.cfg
dst=@RPM_SPECSdir@
usage()
{
echo "$0 [options] <target_alias>"
echo " options:"
echo " -cfg <user.cfg>"
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
# RPM release number
rpm_release=0
. ./$CFG
specfile=${dst}/$target_alias-binutils-${binutils_version}.spec
sed -e "s%@Release@%${rpm_release}%g" \
-e "s%@target_alias@%${target_alias}%g" \
-e "s%@binutils_version@%${binutils_version}%g" \
-e "s%@binutils_patch_version@%${binutils_patch_version}%g" \
< ${RTEMS_DIR}/binutils/binutils.spec.in \
> ${specfile}
echo Generated ${specfile}

View File

@@ -5,41 +5,60 @@
RTEMS_DIR=`dirname $0`
CFG=user.cfg
dst=/usr/src/packages/SPECS
usage()
{
echo "$0 [options] <target_alias>"
echo " options:"
echo " -cfg <user.cfg>"
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
# RPM release number
rpm_release=0
# gcc version number
gcc_version=2.95.1
gcc_patch_version=19991015
# newlib version number
newlib_version=1.8.2
newlib_patch_version=19991015
# 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
. ./$CFG
specfile=${dst}/$target_alias-gcc-${gcc_version}-newlib-${newlib_version}.spec
sed -e "s%@Release@%${rpm_release}%g" \
-e "s%@target_alias@%${target_alias}%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" \
< ${RTEMS_DIR}/gccnewlib.spec.in \
< ${RTEMS_DIR}/gccnewlib/gccnewlib.spec.in \
> ${specfile}
echo Generated ${specfile}.

View File

@@ -0,0 +1,64 @@
#!/bin/sh
#
# Usage: mktoolspec CPU
#
RTEMS_DIR=`dirname $0`
CFG=user.cfg
dst=@RPM_SPECSdir@
usage()
{
echo "$0 [options] <target_alias>"
echo " options:"
echo " -cfg <user.cfg>"
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
# RPM release number
rpm_release=0
. ./$CFG
specfile=${dst}/$target_alias-gcc-${gcc_version}-newlib-${newlib_version}.spec
sed -e "s%@Release@%${rpm_release}%g" \
-e "s%@target_alias@%${target_alias}%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" \
< ${RTEMS_DIR}/gccnewlib/gccnewlib.spec.in \
> ${specfile}
echo Generated ${specfile}.

View File

@@ -4,15 +4,11 @@
#
RTEMS_DIR=`dirname $0`
RTEMS_VERSION=`grep Version ${RTEMS_DIR}/../VERSION | \
sed -e 's%RTEMS[ ]*Version[ ]*\(.*\)[ ]*%\1%g'`
target_alias=$1
# RPM release number
rpm_release=0
# gdb version number
gdb_version=4.18
gdb_patch_version=19991015
release=0
# Some linux distributions use /usr/src/packages
# redhat uses /usr/src/redhat
@@ -28,14 +24,12 @@ then
dst=/usr/src/SPECS;
fi
specfile=${dst}/$target_alias-gdb-${gdb_version}.spec
sed -e "s%@Release@%${rpm_release}%g" \
-e "s%@target_alias@%${target_alias}%g" \
-e "s%@gdb_version@%${gdb_version}%g" \
-e "s%@gdb_patch_version@%${gdb_patch_version}%g" \
sed -e "s%@Version@%${RTEMS_VERSION}%g" \
-e "s%@bsp@%${bsp}%g" \
-e "s%@Release@%${release}%g" \
-e "s%@target_alias@%${target_alias}%g" \
< ${RTEMS_DIR}/gdb.spec.in \
> ${specfile}
> ${dst}/$target_alias-gdb.spec
case ${target} in
powerpc*)
@@ -46,6 +40,6 @@ case ${target} in
echo "/opt/rtems/bin/@target_alias@-sis"
;;
*) ;;
esac >> ${specfile}
esac >> ${dst}/$target_alias-gdb.spec
echo Generated ${specfile}.
echo Generated ${dst}/$target_alias-gdb.spec.

40
scripts/mkinstalldirs Executable file
View 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

View File

@@ -13,7 +13,7 @@ release=0
#${RTEMS_DIR}/scripts/mkbinutilspec $target_alias
#${RTEMS_DIR}/scripts/mkgccnewlibspec $target_alias
#${RTEMS_DIR}/scripts/mkgdbspec $target_alias
${RTEMS_DIR}/mkbinutilspec $target_alias
${RTEMS_DIR}/mkgccnewlibspec $target_alias
${RTEMS_DIR}/mkgdbspec $target_alias
./mkbinutilspec $target_alias
./mkgccnewlibspec $target_alias
./mkgdbspec $target_alias

View File

@@ -6,8 +6,6 @@
# please send bugfixes or comments to joel@OARcorp.com
#
# neededforbuild @target_alias@-binutils @target_alias@-gcc
Vendor: OAR Corporation
Distribution: Linux
Name: rtems-@target_alias@-@bsp@
@@ -57,14 +55,26 @@ Authors:
make RTEMS_BSP=@bsp@
%install
make RTEMS_BSP=@bsp@ prefix=$RPM_BUILD_ROOT/opt/rtems/@target_alias@ install
%files
%dir /opt/rtems/@target_alias@/@bsp@
/opt/rtems/@target_alias@/@bsp@/*
/opt/rtems/@target_alias@/make/*
/opt/rtems/@target_alias@/bin/install-if-change
/opt/rtems/@target_alias@/bin/packhex
/opt/rtems/@target_alias@/bin/unhex
/opt/rtems/@target_alias@/bin/lock-directory
/opt/rtems/@target_alias@/bin/unlock-directory
/opt/rtems/@target_alias@/bin/eolstrip
/opt/rtems/@target_alias@/bin/cklength
find $RPM_BUILD_ROOT/opt/rtems/@target_alias@/@bsp@ -type d | \
sed "s,^$RPM_BUILD_ROOT,%dir ,g" > files
find $RPM_BUILD_ROOT/opt/rtems/@target_alias@/@bsp@ -type f | \
sed "s,^$RPM_BUILD_ROOT,,g" >> files
find $RPM_BUILD_ROOT/opt/rtems/@target_alias@/make -type d | \
sed "s,^$RPM_BUILD_ROOT,%dir ,g" >> files
find $RPM_BUILD_ROOT/opt/rtems/@target_alias@/make -type f | \
sed "s,^$RPM_BUILD_ROOT,,g" >> files
%post
if test "$RPM_INSTALL_PREFIX" != "/opt/";
then
if test -f $RPM_INSTALL_PREFIX/rtems/@target_alias@/make/target.cfg;
then
sed -e 's,/opt/rtems/,$RPM_INSTALL_PREFIX/rtems,g' \
< $RPM_INSTALL_PREFIX/rtems/@target_alias@/make/target.cfg \
> $RPM_INSTALL_PREFIX/rtems/@target_alias@/make/target.cfg~
mv $RPM_INSTALL_PREFIX/rtems/@target_alias@/make/target.cfg~ \
$RPM_INSTALL_PREFIX/rtems/@target_alias@/make/target.cfg
fi
fi
%files -f files

83
scripts/setup Executable file
View File

@@ -0,0 +1,83 @@
#!/bin/bash
CFG=setup.cache
# RTEMS tools setup
test -f ./CFG || echo "restoring default setup.cache" && cp ./setup.def ./$CFG
echo -n "loading setup from ./$CFG .."
. ./$CFG
echo "done"
echo
menu_setup()
{
while true;
do
echo
echo " Source packages setup"
echo
echo "1 binutils version : $binutils_version"
echo "2 binutils patch version : $binutils_patch_version"
echo "3 gcc version : $gcc_version"
echo "4 gcc patch version : $gcc_patch_version"
echo "5 newlib version : $newlib_version"
echo "6 newlib patch version : $newlib_patch_version"
echo "7 gdb version : $gdb_version"
echo "8 gdb patch version : $gdb_patch_version"
echo
echo -n "[1-8] or any other key to quit >"
read sel
case $sel in
1) echo -n "BINUTILS source >"
read binutils_version ;;
2) echo -n "BINUTILS patch version >"
read binutils_patch_version ;;
3) echo -n "GCC source >"
read gcc_version ;;
4) echo -n "GCC patch version>"
read gcc_patch_version ;;
5) echo -n "NEWLIB source >"
read newlib_version ;;
6) echo -n "NEWLIB patch version>"
read newlib_patch_version ;;
7) echo -n "GDB source >"
read GDB_SOURCE ;;
8) echo -n "GDB patch version>"
read gdb_patch_version ;;
*)
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 "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 "gdb_version=$gdb_version" >> $CFG
echo "gdb_patch_version=$gdb_patch_version" >> $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

9
scripts/setup.cache Normal file
View File

@@ -0,0 +1,9 @@
# RTEMS tools setup
binutils_version=2.9.5
binutils_patch_version=19991015
newlib_version=1.8.2
newlib_patch_version=19991015
gcc_version=2.95.1
gcc_patch_version=19991015
gdb_version=4.18
gdb_patch_version=19991015

9
scripts/setup.def Normal file
View File

@@ -0,0 +1,9 @@
# RTEMS tools setup
binutils_version=2.9.5
binutils_patch_version=19991015
newlib_version=1.8.2
newlib_patch_version=19991015
gcc_version=2.95.1
gcc_patch_version=19991015
gdb_version=4.18
gdb_patch_version=19991015