URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
Compare Revisions
- This comparison shows the changes necessary to convert path
/or1k/trunk/rtems-20020807/doc/started_ada
- from Rev 1028 to Rev 1765
- ↔ Reverse comparison
Rev 1028 → Rev 1765
/Makefile.in
0,0 → 1,546
# Makefile.in generated by automake 1.6.2 from Makefile.am. |
# @configure_input@ |
|
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 |
# 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. |
|
@SET_MAKE@ |
|
# |
# COPYRIGHT (c) 1988-2002. |
# On-Line Applications Research Corporation (OAR). |
# All rights reserved. |
# |
# Makefile.am,v 1.7 2002/03/28 00:53:34 joel Exp |
# |
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 |
pkgdatadir = $(datadir)/@PACKAGE@ |
pkglibdir = $(libdir)/@PACKAGE@ |
pkgincludedir = $(includedir)/@PACKAGE@ |
top_builddir = .. |
|
ACLOCAL = @ACLOCAL@ |
AUTOCONF = @AUTOCONF@ |
AUTOMAKE = @AUTOMAKE@ |
AUTOHEADER = @AUTOHEADER@ |
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd |
INSTALL = @INSTALL@ |
INSTALL_PROGRAM = @INSTALL_PROGRAM@ |
INSTALL_DATA = @INSTALL_DATA@ |
install_sh_DATA = $(install_sh) -c -m 644 |
install_sh_PROGRAM = $(install_sh) -c |
install_sh_SCRIPT = $(install_sh) -c |
INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
INSTALL_HEADER = $(INSTALL_DATA) |
transform = @program_transform_name@ |
NORMAL_INSTALL = : |
PRE_INSTALL = : |
POST_INSTALL = : |
NORMAL_UNINSTALL = : |
PRE_UNINSTALL = : |
POST_UNINSTALL = : |
|
EXEEXT = @EXEEXT@ |
OBJEXT = @OBJEXT@ |
PATH_SEPARATOR = @PATH_SEPARATOR@ |
AMTAR = @AMTAR@ |
AWK = @AWK@ |
BMENU2 = @BMENU2@ |
DEPDIR = @DEPDIR@ |
DVIPS = @DVIPS@ |
ENDIF = @ENDIF@ |
EPSTOPDF = @EPSTOPDF@ |
GS = @GS@ |
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ |
LN_S = @LN_S@ |
MAINT = @MAINT@ |
MAKE = @MAKE@ |
PACKAGE = @PACKAGE@ |
PERL = @PERL@ |
PROJECT_ROOT = @PROJECT_ROOT@ |
PROJECT_TOPdir = @PROJECT_TOPdir@ |
RTEMS_TOPdir = @RTEMS_TOPdir@ |
STRIP = @STRIP@ |
TEXI2DVI = @TEXI2DVI@ |
TEXI2PDF = @TEXI2PDF@ |
TEXI2WWW = @TEXI2WWW@ |
VERSION = @VERSION@ |
am__include = @am__include@ |
am__quote = @am__quote@ |
htmldir = @htmldir@ |
install_sh = @install_sh@ |
pkgdocdir = @pkgdocdir@ |
|
PROJECT = started_ada |
EDITION = 1 |
|
SUFFIXES = .t .pdf .eps .html |
|
MAINTAINERCLEANFILES = $(PROJECT) $(PROJECT)-[0-9] $(PROJECT)-[0-9][0-9] $(GENERATED_FILES) |
|
MOSTLYCLEANFILES = $(PDF_IMAGES) index.html $(PROJECT)*.html rtems_header.html \ |
rtems_footer.html |
|
CLEANFILES = $(PROJECT).pdf |
|
dvidir = $(pkgdocdir)/dvi |
|
psdir = $(pkgdocdir)/ps |
|
pdfdir = $(pkgdocdir)/pdf |
|
@USE_HTML_TRUE@html_project_DATA = index.html $(PROJECT)*.html |
|
@USE_DVI_TRUE@dvi_DATA = $(PROJECT).dvi |
|
@USE_DVI_TRUE@@USE_PS_TRUE@ps_DATA = $(PROJECT).ps |
|
@USE_PDF_TRUE@pdf_DATA = $(PROJECT).pdf |
AM_MAKEINFOFLAGS = -I .. |
|
html_projectdir = $(htmldir)/$(PROJECT) |
|
TEXI2WWW_ARGS = \ |
-I $(srcdir) -I $(top_srcdir) \ |
-dirfile ../index.html \ |
-header rtems_header.html \ |
-footer rtems_footer.html \ |
-icons ../images |
|
|
GENERATED_FILES = buildada.texi buildrt.texi gdb.texi intro.texi \ |
require.texi sample.texi |
|
|
COMMON_FILES = $(top_srcdir)/common/setup.texi \ |
$(top_srcdir)/common/cpright.texi |
|
|
FILES = tversions.texi |
|
info_TEXINFOS = started_ada.texi |
started_ada_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES) |
|
EXTRA_DIST = buildada.t gdb.t intro.t require.t sample.t |
subdir = started_ada |
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs |
CONFIG_CLEAN_FILES = |
CFLAGS = @CFLAGS@ |
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ |
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) |
CCLD = $(CC) |
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ |
DIST_SOURCES = |
TEXINFO_TEX = $(top_srcdir)/../texinfo.tex |
INFO_DEPS = started_ada |
DVIS = started_ada.dvi |
TEXINFOS = started_ada.texi |
DATA = $(dvi_DATA) $(html_project_DATA) $(pdf_DATA) $(ps_DATA) |
|
DIST_COMMON = $(started_ada_TEXINFOS) ChangeLog Makefile.am Makefile.in \ |
stamp-vti version.texi |
all: all-am |
|
.SUFFIXES: |
.SUFFIXES: .t .pdf .eps .html .dvi .info .ps .texi |
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/project.am $(top_srcdir)/main.am $(top_srcdir)/configure.ac $(ACLOCAL_M4) |
cd $(top_srcdir) && \ |
$(AUTOMAKE) --foreign started_ada/Makefile |
Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in $(top_builddir)/config.status |
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe) |
|
$(srcdir)/version.texi: @MAINTAINER_MODE_TRUE@ $(srcdir)/stamp-vti |
@: |
$(srcdir)/stamp-vti: started_ada.texi $(top_srcdir)/configure.ac |
@(set `$(SHELL) $(top_srcdir)/../mdate-sh $(srcdir)/started_ada.texi`; \ |
echo "@set UPDATED $$1 $$2 $$3"; \ |
echo "@set UPDATED-MONTH $$2 $$3"; \ |
echo "@set EDITION $(VERSION)"; \ |
echo "@set VERSION $(VERSION)") > vti.tmp |
@cmp -s vti.tmp $(srcdir)/version.texi \ |
|| (echo "Updating $(srcdir)/version.texi"; \ |
cp vti.tmp $(srcdir)/version.texi) |
-@rm -f vti.tmp |
@cp $(srcdir)/version.texi $@ |
|
mostlyclean-vti: |
-rm -f vti.tmp |
|
maintainer-clean-vti: |
@MAINTAINER_MODE_TRUE@ -rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi |
|
started_ada: started_ada.texi $(srcdir)/version.texi $(started_ada_TEXINFOS) |
started_ada.dvi: started_ada.texi $(srcdir)/version.texi $(started_ada_TEXINFOS) |
|
.texi.info: |
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] |
cd $(srcdir) \ |
&& $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) \ |
`echo $< | sed 's,.*/,,'` |
|
@USE_DVI_FALSE@.texi.dvi: |
@USE_DVI_FALSE@ TEXINPUTS="$(top_srcdir)/..$(PATH_SEPARATOR)$$TEXINPUTS" \ |
@USE_DVI_FALSE@ MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ |
@USE_DVI_FALSE@ $(TEXI2DVI) $< |
|
.texi: |
@cd $(srcdir) && rm -f $@ $@-[0-9] $@-[0-9][0-9] |
cd $(srcdir) \ |
&& $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) \ |
`echo $< | sed 's,.*/,,'` |
|
MAKEINFO = @MAKEINFO@ |
@USE_DVI_FALSE@@USE_PS_TRUE@.dvi.ps: |
@USE_DVI_FALSE@@USE_PS_TRUE@ $(DVIPS) $< -o $@ |
@USE_DVI_TRUE@@USE_PS_FALSE@.dvi.ps: |
@USE_DVI_TRUE@@USE_PS_FALSE@ $(DVIPS) $< -o $@ |
@USE_DVI_FALSE@@USE_PS_FALSE@.dvi.ps: |
@USE_DVI_FALSE@@USE_PS_FALSE@ $(DVIPS) $< -o $@ |
|
uninstall-info-am: |
$(PRE_UNINSTALL) |
@if (install-info --version && \ |
install-info --version | fgrep -i -v debian) >/dev/null 2>&1; then \ |
list='$(INFO_DEPS)'; \ |
for file in $$list; do \ |
echo " install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$file"; \ |
install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$file; \ |
done; \ |
else :; fi |
@$(NORMAL_UNINSTALL) |
@list='$(INFO_DEPS)'; \ |
for file in $$list; do \ |
(if cd $(DESTDIR)$(infodir); then \ |
echo " rm -f $$file $$file-[0-9] $$file-[0-9][0-9])"; \ |
rm -f $$file $$file-[0-9] $$file-[0-9][0-9]; \ |
else :; fi); \ |
done |
|
dist-info: $(INFO_DEPS) |
list='$(INFO_DEPS)'; \ |
for base in $$list; do \ |
d=$(srcdir); \ |
for file in $$d/$$base*; do \ |
relfile=`expr "$$file" : "$$d/\(.*\)"`; \ |
test -f $(distdir)/$$relfile || \ |
cp -p $$file $(distdir)/$$relfile; \ |
done; \ |
done |
|
mostlyclean-aminfo: |
-rm -f started_ada.aux started_ada.cp started_ada.cps started_ada.dvi \ |
started_ada.fn started_ada.fns started_ada.ky started_ada.log \ |
started_ada.pg started_ada.ps started_ada.toc started_ada.tp \ |
started_ada.vr |
|
maintainer-clean-aminfo: |
cd $(srcdir) && \ |
list='$(INFO_DEPS)'; for i in $$list; do \ |
rm -f $$i; \ |
if test "`echo $$i-[0-9]*`" != "$$i-[0-9]*"; then \ |
rm -f $$i-[0-9]*; \ |
fi; \ |
done |
dviDATA_INSTALL = $(INSTALL_DATA) |
install-dviDATA: $(dvi_DATA) |
@$(NORMAL_INSTALL) |
$(mkinstalldirs) $(DESTDIR)$(dvidir) |
@list='$(dvi_DATA)'; for p in $$list; do \ |
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " $(dviDATA_INSTALL) $$d$$p $(DESTDIR)$(dvidir)/$$f"; \ |
$(dviDATA_INSTALL) $$d$$p $(DESTDIR)$(dvidir)/$$f; \ |
done |
|
uninstall-dviDATA: |
@$(NORMAL_UNINSTALL) |
@list='$(dvi_DATA)'; for p in $$list; do \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " rm -f $(DESTDIR)$(dvidir)/$$f"; \ |
rm -f $(DESTDIR)$(dvidir)/$$f; \ |
done |
html_projectDATA_INSTALL = $(INSTALL_DATA) |
install-html_projectDATA: $(html_project_DATA) |
@$(NORMAL_INSTALL) |
$(mkinstalldirs) $(DESTDIR)$(html_projectdir) |
@list='$(html_project_DATA)'; for p in $$list; do \ |
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " $(html_projectDATA_INSTALL) $$d$$p $(DESTDIR)$(html_projectdir)/$$f"; \ |
$(html_projectDATA_INSTALL) $$d$$p $(DESTDIR)$(html_projectdir)/$$f; \ |
done |
|
uninstall-html_projectDATA: |
@$(NORMAL_UNINSTALL) |
@list='$(html_project_DATA)'; for p in $$list; do \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " rm -f $(DESTDIR)$(html_projectdir)/$$f"; \ |
rm -f $(DESTDIR)$(html_projectdir)/$$f; \ |
done |
pdfDATA_INSTALL = $(INSTALL_DATA) |
install-pdfDATA: $(pdf_DATA) |
@$(NORMAL_INSTALL) |
$(mkinstalldirs) $(DESTDIR)$(pdfdir) |
@list='$(pdf_DATA)'; for p in $$list; do \ |
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " $(pdfDATA_INSTALL) $$d$$p $(DESTDIR)$(pdfdir)/$$f"; \ |
$(pdfDATA_INSTALL) $$d$$p $(DESTDIR)$(pdfdir)/$$f; \ |
done |
|
uninstall-pdfDATA: |
@$(NORMAL_UNINSTALL) |
@list='$(pdf_DATA)'; for p in $$list; do \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " rm -f $(DESTDIR)$(pdfdir)/$$f"; \ |
rm -f $(DESTDIR)$(pdfdir)/$$f; \ |
done |
psDATA_INSTALL = $(INSTALL_DATA) |
install-psDATA: $(ps_DATA) |
@$(NORMAL_INSTALL) |
$(mkinstalldirs) $(DESTDIR)$(psdir) |
@list='$(ps_DATA)'; for p in $$list; do \ |
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " $(psDATA_INSTALL) $$d$$p $(DESTDIR)$(psdir)/$$f"; \ |
$(psDATA_INSTALL) $$d$$p $(DESTDIR)$(psdir)/$$f; \ |
done |
|
uninstall-psDATA: |
@$(NORMAL_UNINSTALL) |
@list='$(ps_DATA)'; for p in $$list; do \ |
f="`echo $$p | sed -e 's|^.*/||'`"; \ |
echo " rm -f $(DESTDIR)$(psdir)/$$f"; \ |
rm -f $(DESTDIR)$(psdir)/$$f; \ |
done |
tags: TAGS |
TAGS: |
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) |
|
top_distdir = .. |
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION) |
|
distdir: $(DISTFILES) |
$(mkinstalldirs) $(distdir)/$(top_srcdir)/common |
@list='$(DISTFILES)'; for file in $$list; do \ |
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ |
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ |
if test "$$dir" != "$$file" && test "$$dir" != "."; then \ |
dir="/$$dir"; \ |
$(mkinstalldirs) "$(distdir)$$dir"; \ |
else \ |
dir=''; \ |
fi; \ |
if test -d $$d/$$file; then \ |
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ |
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ |
fi; \ |
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ |
else \ |
test -f $(distdir)/$$file \ |
|| cp -p $$d/$$file $(distdir)/$$file \ |
|| exit 1; \ |
fi; \ |
done |
$(MAKE) $(AM_MAKEFLAGS) \ |
top_distdir="${top_distdir}" distdir="$(distdir)" \ |
dist-info |
check-am: all-am |
check: check-am |
all-am: Makefile $(INFO_DEPS) $(DATA) |
|
installdirs: |
$(mkinstalldirs) $(DESTDIR)$(infodir) $(DESTDIR)$(dvidir) $(DESTDIR)$(html_projectdir) $(DESTDIR)$(pdfdir) $(DESTDIR)$(psdir) |
|
install: install-am |
install-exec: install-exec-am |
install-data: install-data-am |
uninstall: uninstall-am |
|
install-am: all-am |
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am |
|
installcheck: installcheck-am |
install-strip: |
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ |
INSTALL_STRIP_FLAG=-s \ |
`test -z '$(STRIP)' || \ |
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install |
mostlyclean-generic: |
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) |
|
clean-generic: |
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) |
|
distclean-generic: |
-rm -f Makefile $(CONFIG_CLEAN_FILES) |
|
maintainer-clean-generic: |
@echo "This command is intended for maintainers to use" |
@echo "it deletes files that may require special tools to rebuild." |
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) |
clean: clean-am |
|
clean-am: clean-generic mostlyclean-am |
|
distclean: distclean-am |
|
distclean-am: clean-am distclean-generic |
|
dvi: dvi-am |
|
dvi-am: $(DVIS) |
|
info: info-am |
|
info-am: $(INFO_DEPS) |
|
install-data-am: install-dviDATA install-html_projectDATA \ |
install-info-am install-pdfDATA install-psDATA |
|
install-exec-am: |
|
install-info: install-info-am |
|
install-info-am: $(INFO_DEPS) |
@$(NORMAL_INSTALL) |
$(mkinstalldirs) $(DESTDIR)$(infodir) |
@list='$(INFO_DEPS)'; \ |
for file in $$list; do \ |
d=$(srcdir); \ |
for ifile in echo $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9]; do \ |
if test -f $$ifile; then \ |
relfile=`expr "$$ifile" : "$$d/\(.*\)"`; \ |
echo " $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile"; \ |
$(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile; \ |
else : ; fi; \ |
done; \ |
done |
@$(POST_INSTALL) |
@if (install-info --version && \ |
install-info --version | fgrep -i -v debian) >/dev/null 2>&1; then \ |
list='$(INFO_DEPS)'; \ |
for file in $$list; do \ |
echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file";\ |
install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file || :;\ |
done; \ |
else : ; fi |
install-man: |
|
installcheck-am: |
|
maintainer-clean: maintainer-clean-am |
|
maintainer-clean-am: distclean-am maintainer-clean-aminfo \ |
maintainer-clean-generic maintainer-clean-vti |
|
mostlyclean: mostlyclean-am |
|
mostlyclean-am: mostlyclean-aminfo mostlyclean-generic mostlyclean-vti |
|
uninstall-am: uninstall-dviDATA uninstall-html_projectDATA \ |
uninstall-info-am uninstall-pdfDATA uninstall-psDATA |
|
.PHONY: all all-am check check-am clean clean-generic dist-info \ |
distclean distclean-generic distdir dvi dvi-am info info-am \ |
install install-am install-data install-data-am install-dviDATA \ |
install-exec install-exec-am install-html_projectDATA \ |
install-info install-info-am install-man install-pdfDATA \ |
install-psDATA install-strip installcheck installcheck-am \ |
installdirs maintainer-clean maintainer-clean-aminfo \ |
maintainer-clean-generic maintainer-clean-vti mostlyclean \ |
mostlyclean-aminfo mostlyclean-generic mostlyclean-vti \ |
uninstall uninstall-am uninstall-dviDATA \ |
uninstall-html_projectDATA uninstall-info-am uninstall-pdfDATA \ |
uninstall-psDATA |
|
|
@EPSTOPDF_TRUE@.eps.pdf: |
@EPSTOPDF_TRUE@ $(EPSTOPDF) $< --outfile=$@ |
|
$(PROJECT).pdf: $(PROJECT).texi $($(PROJECT)_TEXINFOS) $(PDF_IMAGES) |
|
rtems_header.html: $(top_srcdir)/rtems_header.html.in version.texi |
@sed -e s%\.\./images/%$(top_builddir)/images/%g \ |
-e s%\@VERSION\@%@VERSION@%g \ |
< $< > $@ |
rtems_footer.html: $(top_srcdir)/rtems_footer.html.in version.texi |
@sed -e s%\.\./images/%$(top_builddir)/%g \ |
-e s%\@VERSION\@%@VERSION@%g \ |
< $< > $@ |
|
index.html $(PROJECT)*.html: $(PROJECT).texi \ |
rtems_header.html rtems_footer.html |
$(TEXI2WWW) $(TEXI2WWW_ARGS) -base $(PROJECT) $< |
|
@USE_DVI_TRUE@.texi.dvi: |
@USE_DVI_TRUE@ $(TEXI2DVI) -q -I $(srcdir) -I $(top_srcdir) $< |
@USE_DVI_TRUE@@USE_PS_TRUE@.dvi.ps: |
@USE_DVI_TRUE@@USE_PS_TRUE@ TEXINPUTS="$(srcdir)$(PATH_SEPARATOR)$$TEXINPUTS" \ |
@USE_DVI_TRUE@@USE_PS_TRUE@ $(DVIPS) $< -o $@ |
|
@TEXI2PDF_TRUE@@USE_PDF_TRUE@.texi.pdf: |
@TEXI2PDF_TRUE@@USE_PDF_TRUE@ rm -f *.aux *.cp *.fn *.ky *.pg *.tp *.toc *.vr |
@TEXI2PDF_TRUE@@USE_PDF_TRUE@ $(TEXI2PDF) -q -I $(srcdir) -I $(top_srcdir) $< |
|
$(srcdir)/intro.texi: intro.t tversions.texi |
$(BMENU2) -c -p "Top" \ |
-u "Top" \ |
-n "Requirements" < $< > $@ |
|
$(srcdir)/require.texi: require.t tversions.texi |
$(BMENU2) -c -p "GNAT Chat Mailing List" \ |
-u "Top" \ |
-n "Building the GNAT Cross Compiler Toolset" < $< > $@ |
|
$(srcdir)/buildada.texi: buildada.t tversions.texi |
$(BMENU2) -c -p "Insure GCC and GNAT Environment Variables Are Not Set" \ |
-u "Top" \ |
-n "Building RTEMS" < $< > $@ |
|
$(srcdir)/buildrt.texi: ../started/buildrt.t tversions.texi |
$(BMENU2) -c -p "Error Messages Indicating Configuration Problems" \ |
-u "Top" \ |
-n "Building the Sample Application" < $< > $@ |
|
$(srcdir)/sample.texi: sample.t tversions.texi |
$(BMENU2) -c -p "Using the bit_rtems Script" \ |
-u "Top" \ |
-n "Building the GNU Debugger" < $< > $@ |
|
$(srcdir)/gdb.texi: gdb.t tversions.texi |
$(BMENU2) -c -p "Application Executable" \ |
-u "Top" \ |
-n "" < $< > $@ |
# 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: |
/sample.t
0,0 → 1,57
@c |
@c COPYRIGHT (c) 1988-2002. |
@c On-Line Applications Research Corporation (OAR). |
@c All rights reserved. |
@c |
@c sample.t,v 1.6 2002/01/17 21:47:46 joel Exp |
@c |
|
@chapter Building the Sample Application |
|
@section Unpack the Sample Application |
|
Use the following command to unarchive the sample application: |
|
@example |
cd tools |
tar xzf ../archive/hello_world_ada.tgz |
@end example |
|
@section Create a BSP Specific Makefile |
|
Provided are example Makefiles for multiple BSPs. Copy one of these to |
the file Makefile.<BOARD_SUPPORT_PACKAGE> and edit it as appropriate for |
your local configuration. |
|
Use the <INSTALLATION_POINT> and <BOARD_SUPPORT_PACKAGE> specified when |
configuring and installing RTEMS. |
|
@section Build the Sample Application |
|
Use the following command to start the build of the sample application: |
|
@example |
cd tools/hello_world_ada |
make -f Makefile.<BOARD_SUPPORT_PACKAGE> |
@end example |
|
NOTE: GNU make is the preferred @code{make} utility. Other @code{make} |
implementations may work but all testing is done with GNU make. |
|
If the BSP specific modifications to the Makefile were correct and |
no errors are detected during the sample application build, it is |
reasonable to assume that the build of the GNAT/RTEMS Cross Compiler Tools |
for RTEMS and RTEMS itself for the selected host and target |
combination was done properly. |
|
@section Application Executable |
|
If the sample application has successfully been build, then the application |
executable is placed in the following directory: |
|
@example |
tools/hello_world_ada/o-optimize/<filename>.exe |
@end example |
|
How this executable is downloaded to the target board is very dependent |
on the BOARD_SUPPORT_PACKAGE selected. |
/started_ada.texi
0,0 → 1,108
\input texinfo @c -*-texinfo-*- |
@c %**start of header |
@setfilename started_ada |
@setcontentsaftertitlepage |
@syncodeindex vr fn |
@synindex ky cp |
@paragraphindent 0 |
@c %**end of header |
|
@c |
@c COPYRIGHT (c) 1988-2002. |
@c On-Line Applications Research Corporation (OAR). |
@c All rights reserved. |
@c |
@c started_ada.texi,v 1.8 2002/01/17 21:47:46 joel Exp |
@c |
|
@c |
@c Master file for the Getting Started (C) Guide |
@c |
|
@include version.texi |
@include common/setup.texi |
|
@c |
@c Now set all the tool version dependent information |
@c |
@include tversions.texi |
|
@ifset use-ascii |
@dircategory RTEMS On-Line Manual |
@direntry |
* Getting Started with GNAT/RTEMS: (started_ada) |
@end direntry |
@end ifset |
|
@c |
@c Title Page Stuff |
@c |
|
@c |
@c I don't really like having a short title page. --joel |
@c |
@c @shorttitlepage Getting Started with RTEMS |
|
@setchapternewpage odd |
@settitle Getting Started with GNAT/RTEMS |
@titlepage |
@finalout |
|
@title Getting Started with GNAT/RTEMS |
@subtitle Edition @value{EDITION}, for @value{VERSION} |
@sp 1 |
@subtitle @value{UPDATED} |
@author On-Line Applications Research Corporation |
@page |
@include common/cpright.texi |
@end titlepage |
|
@c This prevents a black box from being printed on "overflow" lines. |
@c The alternative is to rework a sentence to avoid this problem. |
|
@include intro.texi |
@include require.texi |
@include buildada.texi |
@include buildrt.texi |
@include sample.texi |
@include gdb.texi |
|
@ifinfo |
@node Top, Introduction, (dir), (dir) |
@top started_ada |
|
This is the online version of the Getting Started with GNAT/RTEMS. |
|
@menu |
* Introduction:: |
* Requirements:: |
* Building the GNAT Cross Compiler Toolset:: |
* Building RTEMS:: |
* Building the Sample Application:: |
* Building the GNU Debugger:: |
@end menu |
|
@c * Command and Variable Index:: |
@c * Concept Index:: |
@end ifinfo |
@c |
@c |
@c Need to copy the emacs stuff and "trailer stuff" (index, toc) into here |
@c |
|
@c @node Command and Variable Index, Concept Index, GDB for DINK32, Top |
@c @unnumbered Command and Variable Index |
|
@c There are currently no Command and Variable Index entries. |
|
@c @printindex fn |
|
@c @node Concept Index, , Command and Variable Index, Top |
@c @unnumbered Concept Index |
|
@c There are currently no Concept Index entries. |
@c @printindex cp |
|
@contents |
@bye |
|
/stamp-vti
0,0 → 1,4
@set UPDATED 17 January 2002 |
@set UPDATED-MONTH January 2002 |
@set EDITION ss-20020717 |
@set VERSION ss-20020717 |
/tversions.texi
0,0 → 1,96
@c |
@c COPYRIGHT (c) 1988-2002. |
@c On-Line Applications Research Corporation (OAR). |
@c All rights reserved. |
@c |
@c tversions.texi,v 1.5 2002/01/17 21:47:46 joel Exp |
@c |
|
@c |
@c This file contains all toolset version dependent information |
@c |
|
@c |
@c Comment out setting the "XYZ-RTEMSPATCH" variable if there is no |
@c patch required. The documentation will detect this and print |
@c an appropriate message in a short section. |
@c |
|
|
@c |
@c GCC Version |
@c |
|
@set GCC-VERSION gcc 2.8.1 |
@set GCC-TAR gcc-2.8.1.tar.gz |
@set GCC-UNTAR gcc-2.8.1 |
@set GCC-FTPSITE ftp.gnu.org |
@set GCC-FTPDIR /pub/gnu/gcc |
@set GCC-RTEMSPATCH gcc-2.8.1-rtems-gnat-3.13p-20000429.diff.gz |
|
@c |
@c GNAT Version |
@c |
|
@set GNAT-VERSION gnat 3.13p |
@set GNAT-TAR gnat-3.13p-src.tar.gz |
@set GNAT-UNTAR gnat-3.13p-src |
@set GNAT-FTPSITE NONE |
@set GNAT-FTPDIR NO_DIRECTORY |
@set GNAT-RTEMSPATCH gnat-3.13p-rtems-20000829.diff |
|
@c |
@c BINUTILS Version |
@c |
|
@c The "official" binutils |
@set BINUTILS-VERSION binutils 2.10 |
@set BINUTILS-TAR binutils-2.10.tar.gz |
@set BINUTILS-UNTAR binutils-2.10 |
@set BINUTILS-FTPSITE ftp.gnu.org |
@set BINUTILS-FTPDIR /pub/gnu/binutils |
@set BINUTILS-RTEMSPATCH binutils-2.10-rtems-gnat-3.13p-20001107.diff |
|
@c When forced to use a snapshot |
@c @set BINUTILS-VERSION gas 980314 |
@c @set BINUTILS-TAR gas-980314.tgz |
@c @set BINUTILS-UNTAR gas-980314 |
@c @set BINUTILS-FTPSITE ftp.OARcorp.com |
@c @set BINUTILS-FTPDIR /oarcorp/private/beta3/ada_tools |
@c @set BINUTILS-RTEMSPATCH binutils-2.8.1-rtems-diff-980321.gz |
|
@c |
@c NEWLIB Version |
@c |
|
@set NEWLIB-VERSION newlib 1.8.2 |
@set NEWLIB-TAR newlib-1.8.2.tar.gz |
@set NEWLIB-UNTAR newlib-1.8.2 |
@set NEWLIB-FTPSITE sources.redhat.com |
@set NEWLIB-FTPDIR /pub/newlib |
@set NEWLIB-RTEMSPATCH newlib-1.8.2-rtems-20000606.diff.gz |
|
@c |
@c GDB Version |
@c |
|
@set GDB-VERSION gdb 4.17 |
@set GDB-TAR gdb-4.17.tar.gz |
@set GDB-UNTAR gdb-4.17 |
@set GDB-FTPSITE ftp.gnu.org |
@set GDB-FTPDIR /pub/gnu/gdb/ |
@set GDB-RTEMSPATCH gdb-4.17-rtems-gnat-3.13p-20000918.diff |
@c @set GDB-GNATPATCH gdb-ada-patch-1.17.8.gz |
|
@c |
@c RTEMS Version |
@c |
|
@set RTEMS-VERSION RTEMS 4.5.1 |
@set RTEMS-TAR rtems-4.5.1.tgz |
@set RTEMS-UNTAR rtems-4.5.1 |
@set RTEMS-FTPSITE ftp.OARcorp.com |
@set RTEMS-FTPDIR /pub/rtems/releases/4.5.1 |
@set BUILDTOOLS-TAR c_build_scripts-4.5.1.tgz |
|
|
/ChangeLog
0,0 → 1,15
2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de> |
|
* Makefile.am: Remove AUTOMAKE_OPTIONS. |
|
2002-01-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de> |
|
* Makefile.am: include main.am, require automake-1.5. |
|
2001-01-17 Joel Sherrill <joel@OARcorp.com> |
|
* .cvsignore: Added rtems_header.html and rtems_footer.html. |
|
2000-08-10 Joel Sherrill <joel@OARcorp.com> |
|
* ChangeLog: New file. |
/buildada.t
0,0 → 1,702
@c |
@c COPYRIGHT (c) 1988-2002. |
@c On-Line Applications Research Corporation (OAR). |
@c All rights reserved. |
@c |
@c buildada.t,v 1.20 2002/01/17 21:47:46 joel Exp |
@c |
|
@chapter Building the GNAT Cross Compiler Toolset |
|
This chapter describes the steps required to acquire the |
source code for a GNU cross compiler toolset, apply |
any required RTEMS specific patches, compile that |
toolset and install it. |
|
@section Create the Archive and Build Directories |
|
Start by making the @code{archive} directory to contain the downloaded |
source code and the @code{tools} directory to be used as a build |
directory. The command sequence to do this is shown |
below: |
|
@example |
mkdir archive |
mkdir tools |
@end example |
|
This will result in an initial directory structure similar to the |
one shown in the following figure: |
|
@example |
@group |
/whatever/prefix/you/choose/ |
archive/ |
tools/ |
|
@end group |
@end example |
|
@c @ifset use-html |
@c @html |
@c <IMG SRC="sfile12c.jpg" WIDTH=417 HEIGHT=178 |
@c ALT="Starting Directory Organization"> |
@c @end html |
@c @end ifset |
|
@section Get All the Pieces |
|
This section lists the components of an RTEMS cross development system. |
Included are the locations of each component as well as any required RTEMS |
specific patches. |
|
@subheading @value{GCC-VERSION} |
@example |
FTP Site: @value{GCC-FTPSITE} |
Directory: @value{GCC-FTPDIR} |
File: @value{GCC-TAR} |
@ifset use-html |
@c URL: @uref{ftp://@value{GCC-FTPSITE}@value{GCC-FTPDIR}/@value{GCC-TAR},Download @value{GCC-VERSION}} |
URL: ftp://@value{GCC-FTPSITE}@value{GCC-FTPDIR}/@value{GCC-TAR} |
@end ifset |
@end example |
|
@subheading @value{GNAT-VERSION} |
@example |
FTP Site: @value{GNAT-FTPSITE} |
Directory: @value{GNAT-FTPDIR} |
File: @value{GNAT-TAR} |
@ifset use-html |
@c URL: @uref{ ftp://@value{GNAT-FTPSITE}@value{GNAT-FTPDIR}/@value{GNAT-TAR}, Download @value{GNAT-VERSION}} |
URL: ftp://@value{GNAT-FTPSITE}@value{GNAT-FTPDIR}/@value{GNAT-TAR} |
@end ifset |
@end example |
|
@subheading @value{BINUTILS-VERSION} |
@example |
FTP Site: @value{BINUTILS-FTPSITE} |
Directory: @value{BINUTILS-FTPDIR} |
File: @value{BINUTILS-TAR} |
@ifset use-html |
@c URL: @uref{ftp://@value{BINUTILS-FTPSITE}@value{BINUTILS-FTPDIR}/@value{BINUTILS-TAR}, Download @value{BINUTILS-VERSION}} |
URL: ftp://@value{BINUTILS-FTPSITE}@value{BINUTILS-FTPDIR}/@value{BINUTILS-TAR} |
@end ifset |
@end example |
|
@subheading @value{NEWLIB-VERSION} |
@example |
FTP Site: @value{NEWLIB-FTPSITE} |
Directory: @value{NEWLIB-FTPDIR} |
File: @value{NEWLIB-TAR} |
@ifset use-html |
@c URL: @uref{ftp://@value{NEWLIB-FTPSITE}@value{NEWLIB-FTPDIR}/@value{NEWLIB-TAR}, Download @value{NEWLIB-VERSION}} |
URL: ftp://@value{NEWLIB-FTPSITE}@value{NEWLIB-FTPDIR}/@value{NEWLIB-TAR} |
@end ifset |
@end example |
|
@subheading @value{RTEMS-VERSION} |
@example |
FTP Site: @value{RTEMS-FTPSITE} |
Directory: @value{RTEMS-FTPDIR} |
File: @value{RTEMS-TAR} |
@ifset use-html |
@c URL: @uref{ftp://@value{RTEMS-FTPSITE}@value{RTEMS-FTPDIR}, Download RTEMS components} |
URL: ftp://@value{RTEMS-FTPSITE}@value{RTEMS-FTPDIR} |
@end ifset |
@end example |
|
@subheading RTEMS Hello World |
@example |
FTP Site: @value{RTEMS-FTPSITE} |
Directory: @value{RTEMS-FTPDIR} |
File: hello_world_ada.tgz |
@ifset use-html |
@c URL: @uref{ftp://@value{RTEMS-FTPSITE}@value{RTEMS-FTPDIR}/ada_tools/hello_world_ada.tgz, Download RTEMS Hello World} |
URL: ftp://@value{RTEMS-FTPSITE}@value{RTEMS-FTPDIR}/ada_tools/hello_world_ada.tgz |
@end ifset |
@end example |
|
@subheading RTEMS Specific Tool Patches and Scripts |
@example |
FTP Site: @value{RTEMS-FTPSITE} |
Directory: @value{RTEMS-FTPDIR}/ada_tools/source |
File: @value{BUILDTOOLS-TAR} |
@ifset BINUTILS-RTEMSPATCH |
File: @value{BINUTILS-RTEMSPATCH} |
@end ifset |
@ifset NEWLIB-RTEMSPATCH |
File: @value{NEWLIB-RTEMSPATCH} |
@end ifset |
@ifset GCC-RTEMSPATCH |
File: @value{GCC-RTEMSPATCH} |
@end ifset |
@ifset GNAT-RTEMSPATCH |
File: @value{GNAT-RTEMSPATCH} |
@end ifset |
@ifset use-html |
@c URL: @uref{ftp://@value{RTEMS-FTPSITE}@value{RTEMS-FTPDIR}/ada_tools/source, Download RTEMS patches} |
URL: ftp://@value{RTEMS-FTPSITE}@value{RTEMS-FTPDIR}/ada_tools/source |
@end ifset |
@end example |
|
@section Unarchiving the Tools |
|
While in the @code{tools} directory, unpack the compressed |
tar files using the following command sequence: |
|
@example |
cd tools |
tar xzf ../archive/@value{GCC-TAR} |
tar xzf ../archive/@value{GNAT-TAR} |
tar xzf ../archive/@value{BINUTILS-TAR} |
tar xzf ../archive/@value{NEWLIB-TAR} |
tar xzf ../archive/@value{BUILDTOOLS-TAR} |
@end example |
|
After the compressed tar files have been unpacked, the following |
directories will have been created under tools. |
|
@itemize @bullet |
@item @value{BINUTILS-UNTAR} |
@item @value{GCC-UNTAR} |
@item @value{GNAT-UNTAR} |
@item @value{NEWLIB-UNTAR} |
@end itemize |
|
There will also be a set of scripts in the current directory |
which aid in building the tools and RTEMS. They are: |
|
@itemize @bullet |
@item bit_ada |
@item bit_gdb |
@item bit_rtems |
@item common.sh |
@item user.cfg |
@end itemize |
|
When the @code{bit_ada} script is executed later in this process, |
it will automatically create two other subdirectories: |
|
@itemize @bullet |
@item src |
@item build-$@{CPU@}-tools |
@end itemize |
|
Similarly, the @code{bit_gdb} script will create the |
subdirectory @code{build-$@{CPU@}-gdb} and |
the @code{bit_rtems} script will create the |
subdirectory @code{build-$@{CPU@}-rtems}. |
|
The directory tree should look something like the following figure: |
|
@example |
@group |
/whatever/prefix/you/choose/ |
archive/ |
@value{GCC-TAR} |
@value{GNAT-TAR} |
@value{BINUTILS-TAR} |
@value{NEWLIB-TAR} |
@value{RTEMS-TAR} |
@value{BUILDTOOLS-TAR} |
@ifset GCC-RTEMSPATCH |
@value{GCC-RTEMSPATCH} |
@end ifset |
@ifset BINUTILS-RTEMSPATCH |
@value{BINUTILS-RTEMSPATCH} |
@end ifset |
@ifset NEWLIB-RTEMSPATCH |
@value{NEWLIB-RTEMSPATCH} |
@end ifset |
@ifset GNAT-RTEMSPATCH |
@value{GNAT-RTEMSPATCH} |
@end ifset |
hello_world_ada.tgz |
bit_ada |
tools/ |
@value{BINUTILS-UNTAR}/ |
@value{GCC-UNTAR}/ |
@value{GNAT-UNTAR}/ |
@value{NEWLIB-UNTAR}/ |
bit_ada |
bit_gdb |
bit_rtems |
common.sh |
user.cfg |
@end group |
@end example |
|
@c @ifset use-html |
@c @html |
@c <IMG SRC="bit_ada.jpg" WIDTH=816 HEIGHT=267 ALT="Directory Organization"> |
@c @end html |
@c @end ifset |
|
@c |
@c Host Specific Notes |
@c |
|
@section Host Specific Notes |
|
@subsection Solaris 2.x |
|
The build scripts are written in "shell". The program @code{/bin/sh} |
on Solaris 2.x is not robust enough to execute these scripts. If you |
are on a Solaris 2.x host, then change the first line of the files |
@code{bit_ada}, @code{bit_gdb}, and @code{bit_rtems} to use the |
@code{/bin/ksh} shell instead. |
|
@c |
@c Reading the Documentation |
@c |
|
@section Reading the Tools Documentation |
|
Each of the tools in the GNU development suite comes with documentation. |
It is in the reader's and tool maintainers' interest that one read the |
documentation before posting a problem to a mailing list or news group. |
|
|
@c |
@c GCC patches |
@c |
|
@section Apply RTEMS Patch to GCC |
|
@ifclear GCC-RTEMSPATCH |
No RTEMS specific patches are required for @value{GCC-VERSION} to |
support @value{RTEMS-VERSION}. |
@end ifclear |
|
@ifset GCC-RTEMSPATCH |
|
Apply the patch using the following command sequence: |
|
@example |
cd tools/@value{GCC-UNTAR} |
zcat ../../archive/@value{GCC-RTEMSPATCH} | patch -p1 |
@end example |
|
Check to see if any of these patches have been rejected using the following |
sequence: |
|
@example |
cd tools/@value{GCC-UNTAR} |
find . -name "*.rej" -print |
@end example |
|
If any files are found with the .rej extension, a patch has been rejected. |
This should not happen with a good patch file which is properly applied. |
|
@end ifset |
|
@c |
@c BINUTILS patches |
@c |
|
@section Apply RTEMS Patch to binutils |
|
@ifclear BINUTILS-RTEMSPATCH |
No RTEMS specific patches are required for @value{BINUTILS-VERSION} to |
support @value{RTEMS-VERSION}. |
@end ifclear |
|
@ifset BINUTILS-RTEMSPATCH |
Apply the patch using the following command sequence: |
|
@example |
cd tools/@value{BINUTILS-UNTAR} |
zcat ../../archive/@value{BINUTILS-RTEMSPATCH} | patch -p1 |
@end example |
|
Check to see if any of these patches have been rejected using the following |
sequence: |
|
@example |
cd tools/@value{BINUTILS-UNTAR} |
find . -name "*.rej" -print |
@end example |
|
If any files are found with the .rej extension, a patch has been rejected. |
This should not happen with a good patch file which is properly applied. |
|
@end ifset |
|
@c |
@c Newlib patches |
@c |
|
@section Apply RTEMS Patch to newlib |
|
@ifclear NEWLIB-RTEMSPATCH |
No RTEMS specific patches are required for @value{NEWLIB-VERSION} to |
support @value{RTEMS-VERSION}. |
@end ifclear |
|
@ifset NEWLIB-RTEMSPATCH |
|
Apply the patch using the following command sequence: |
|
@example |
cd tools/@value{NEWLIB-UNTAR} |
zcat ../../archive/@value{NEWLIB-RTEMSPATCH} | patch -p1 |
@end example |
|
Check to see if any of these patches have been rejected using the following |
sequence: |
|
@example |
cd tools/@value{NEWLIB-UNTAR} |
find . -name "*.rej" -print |
@end example |
|
If any files are found with the .rej extension, a patch has been rejected. |
This should not happen with a good patch file which is properly applied. |
|
@end ifset |
|
@c |
@c GNAT patches |
@c |
|
@section Apply RTEMS Patch to GNAT |
|
@ifclear GNAT-RTEMSPATCH |
No RTEMS specific patches are required for @value{GNAT-VERSION} to |
support @value{RTEMS-VERSION}. |
@end ifclear |
|
@ifset GNAT-RTEMSPATCH |
|
Apply the patch using the following command sequence: |
|
@example |
cd tools/@value{GNAT-UNTAR} |
zcat ../../archive/@value{GNAT-RTEMSPATCH} | patch -p1 |
@end example |
|
Check to see if any of these patches have been rejected using the following |
sequence: |
|
@example |
cd tools/@value{GNAT-UNTAR} |
find . -name "*.rej" -print |
@end example |
|
If any files are found with the .rej extension, a patch has been rejected. |
This should not happen with a good patch file which is properly applied. |
|
@end ifset |
|
@c |
@c Copy the ada directory |
@c |
|
|
@section Copy the ada Subdirectory to the GCC Source Tree |
|
Copy the ada subtree in the patched subtree of |
tools/@value{GNAT-UNTAR}/src to the |
tools/@value{GCC-UNTAR} directory: |
|
@example |
cd tools/@value{GNAT-UNTAR}/src |
cp -r ada ../../@value{GCC-UNTAR} |
@end example |
|
|
@c |
@c Localizing the Configuration |
@c |
|
@section Localizing the Configuration |
|
Edit the @code{user.cfg} file to alter the settings of various |
variables which are used to tailor the build process. |
Each of the variables set in @code{user.cfg} may be modified |
as described below: |
|
@table @code |
@item INSTALL_POINT |
is the location where you wish the GNU C/C++ cross compilation tools for |
RTEMS to be built. It is recommended that the directory chosen to receive |
these tools be named so that it is clear from which gcc distribution it |
was generated and for which target system the tools are to produce code for. |
|
@b{WARNING}: The @code{INSTALL_POINT} should not be a subdirectory |
under the build directory. The build directory will be removed |
automatically upon successful completion of the build procedure. |
|
@item BINUTILS |
is the directory under tools that contains @value{BINUTILS-UNTAR}. |
For example: |
|
@example |
BINUTILS=@value{BINUTILS-UNTAR} |
@end example |
|
@item GCC |
is the directory under tools that contains @value{GCC-UNTAR}. |
For example, |
|
@example |
GCC=@value{GCC-UNTAR} |
@end example |
|
Note that the gnat version is not needed because the gnat source |
is built as part of building gcc. |
|
@item NEWLIB |
is the directory under tools that contains @value{NEWLIB-UNTAR}. |
For example: |
|
@example |
NEWLIB=@value{NEWLIB-UNTAR} |
@end example |
|
@item BUILD_DOCS |
is set to "yes" if you want to install documentation. This requires |
that tools supporting documentation production be installed. This |
currently is limited to the GNU texinfo package. |
For example: |
|
@example |
BUILD_DOCS=yes |
@end example |
|
@item BUILD_OTHER_LANGUAGES |
is set to "yes" if you want to build languages other than C and C++. At |
the current time, the set of alternative languages includes Java, Fortran, |
and Objective-C. These alternative languages do not always build cross. |
Hence this option defaults to "no". |
|
For example: |
|
@example |
BUILD_OTHER_LANGUAGES=yes |
@end example |
|
@b{NOTE:} Based upon the version of the compiler being used, it may not |
be possible to build languages other than C and C++ cross. In many cases, |
the language run-time support libraries are not "multilib'ed". Thus the |
executable code in these libraries will be for the default compiler settings |
and not necessarily be correct for your CPU model. |
|
@item RTEMS |
is the directory under tools that contails @value{RTEMS-UNTAR}. |
|
@item ENABLE_RTEMS_POSIX |
is set to "yes" if you want to enable the RTEMS POSIX API support. |
At this time, this feature is not supported by the UNIX ports of RTEMS |
and is forced to "no" for those targets. This corresponds to the |
@code{configure} option @code{--enable-posix}. |
|
This must be enabled to support the GNAT/RTEMS run-time. |
|
@item ENABLE_RTEMS_ITRON |
is set to "yes" if you want to enable the RTEMS ITRON API support. |
At this time, this feature is not supported by the UNIX ports of RTEMS |
and is forced to "no" for those targets. This corresponds to the |
@code{configure} option @code{--enable-itron}. |
|
@item ENABLE_RTEMS_MP |
is set to "yes" if you want to enable the RTEMS multiprocessing |
support. This feature is not supported by all RTEMS BSPs and |
is automatically forced to "no" for those BSPs. This corresponds to the |
@code{configure} option @code{--enable-multiprocessing}. |
|
@item ENABLE_RTEMS_CXX |
is set to "yes" if you want to build the RTEMS C++ support including |
the C++ Wrapper for the Classic API. This corresponds to the |
@code{configure} option @code{--enable-cxx}. |
|
@item ENABLE_RTEMS_TESTS |
is set to "yes" if you want to build the RTEMS Test Suite. If this |
is set to "no", then only the Sample Tests will be built. Setting |
this option to "yes" significantly increases the amount of disk |
space required to build RTEMS. |
This corresponds to the @code{configure} option @code{--enable-tests}. |
|
@item ENABLE_RTEMS_TCPIP |
is set to "yes" if you want to build the RTEMS TCP/IP Stack. If a |
particular BSP does not support TCP/IP, then this feature is automatically |
disabled. This corresponds to the @code{configure} option |
@code{--enable-tcpip}. |
|
@item ENABLE_RTEMS_NONDEBUG |
is set to "yes" if you want to build RTEMS in a fully optimized |
state. This corresponds to executing @code{make} after configuring |
the source tree. |
|
@item ENABLE_RTEMS_DEBUG |
is set to "yes" if you want to build RTEMS in a debug version. |
When built for debug, RTEMS will include run-time code to |
perform consistency checks such as heap consistency checks. |
Although the precise compilation arguments are BSP dependent, |
the debug version of RTEMS is usually built at a lower optimization |
level. This is usually done to reduce inlining which can make |
tracing code execution difficult. This corresponds to executing |
@code{make VARIANT=debug} after configuring |
the source tree. |
|
@item INSTALL_RTEMS |
is set to "yes" if you want to install RTEMS after building it. |
This corresponds to executing @code{make install} after configuring |
and building the source tree. |
|
@item ENABLE_RTEMS_MAINTAINER_MODE |
is set to "yes" if you want to enabled maintainer mode functionality |
in the RTEMS Makefile. This is disabled by default and it is not |
expected that most users will want to enable this. When this option |
is enabled, the build process may attempt to regenerate files that |
require tools not required when this option is disabled. |
This corresponds to the @code{configure} option |
@code{--enable-maintainer-mode}. |
|
@end table |
|
@section Running the bit_ada Script |
|
After the @code{bit_ada} script has been modified to reflect the |
local installation, the modified @code{bit_ada} script is run |
using the following sequence: |
|
@example |
cd tools |
./bit_ada <target configuration> |
@end example |
|
Where <target configuration> is one of the following: |
|
@itemize @bullet |
@item hppa1.1 |
@item i386 |
@item i386-elf |
@item i386-go32 |
@item i960 |
@item m68k |
@item mips64orion |
@item powerpc |
@item sh |
@item sparc |
@end itemize |
|
NOTE: The above list of target configurations is the list of RTEMS supported |
targets. Only a subset of these have been tested with GNAT/RTEMS. For more |
information, contact your GNAT/RTEMS representative. |
|
The build process can take a while to complete. Many users find it |
handy to run the build process in the background, capture the output |
in a file, and monitor the output. This can be done as follows: |
|
@example |
./bit_ada <target configuration> >bit.log 2>&1 & |
tail -f bit.log |
@end example |
|
If no errors are encountered, the @code{bit_ada} script will conclude by |
printing messages similar to the following: |
|
@example |
|
The src and build-i386-tools subdirectory may now be removed. |
|
Started: Fri Apr 10 10:14:07 CDT 1998 |
Finished: Fri Apr 10 12:01:33 CDT 1998 |
@end example |
|
If the @code{bit_ada} script successfully completes, then the |
GNU C/C++ cross compilation tools are installed. |
|
If the @code{bit_ada} script does not successfully complete, then investigation |
will be required to determine the source of the error. |
|
@c |
@c Common Problems |
@c |
|
@section Common Problems |
|
@subsection Error Message Indicates Invalid Option to Assembler |
|
If a message like this is printed then the new cross compiler |
is most likely using the native assembler instead of the cross |
assembler or vice-versa (native compiler using new cross assembler). |
This can occur for one of the following reasons: |
|
@itemize @bullet |
|
@item Binutils Patch Improperly Applied |
@item Binutils Not Built |
@item Current Directory is in Your PATH |
|
@end itemize |
|
If you are using binutils 2.9.1 or newer with certain older versions of |
gcc, they do not agree on what the name of the newly |
generated cross assembler is. Older binutils called it @code{as.new} |
which became @code{as.new.exe} under Windows. This is not a valid |
file name, so @code{as.new} is now called @code{as-new}. By using the latest |
released tool versions and RTEMS patches, this problem will be avoided. |
|
If binutils did not successfully build the cross assembler, then |
the new cross gcc (@code{xgcc}) used to build the libraries can not |
find it. Make sure the build of the binutils succeeded. |
|
If you include the current directory in your PATH, then there |
is a chance that the native compiler will accidentally use |
the new cross assembler instead of the native one. This usually |
indicates that "." is before the standard system directories |
in your PATH. As a general rule, including "." in your PATH |
is a security risk and should be avoided. Remove "." from |
your PATH. |
|
NOTE: In some environments, it may be difficult to remove "." |
completely from your PATH. In this case, make sure that "." |
is after the system directories containing "as" and "ld". |
|
@subsection Error Messages Indicating Configuration Problems |
|
If you see error messages like the following, |
|
@itemize @bullet |
|
@item cannot configure libiberty |
@item coff-emulation not found |
@item etc. |
|
@end itemize |
|
Then it is likely that one or more of your gnu tools is |
already configured locally in its source tree. You can check |
for this by searching for the @code{config.status} file |
in the various tool source trees. The following command |
does this for the binutils source: |
|
@example |
find @value{BINUTILS-UNTAR} -name config.status -print |
@end example |
|
The solution for this is to execute the command |
@code{make distclean} in each of the GNU tools |
root source directory. This should remove all |
generated files including Makefiles. |
|
This situation usually occurs when you have previously |
built the tool source for some non-RTEMS target. The |
generated configuration specific files are still in |
the source tree and the include path specified during |
the RTEMS build accidentally picks up the previous |
configuration. The include path used is something like |
this: |
|
@example |
-I../../@value{BINUTILS-UNTAR}/gcc -I/@value{BINUTILS-UNTAR}/gcc/include -I. |
@end example |
|
Note that the tool source directory is searched before the |
build directory. |
|
This situation can be avoided entirely by never using |
the source tree as the build directory -- even for |
|
/Makefile.am
0,0 → 1,57
# |
# COPYRIGHT (c) 1988-2002. |
# On-Line Applications Research Corporation (OAR). |
# All rights reserved. |
# |
# Makefile.am,v 1.7 2002/03/28 00:53:34 joel Exp |
# |
|
|
PROJECT = started_ada |
EDITION = 1 |
|
include $(top_srcdir)/project.am |
include $(top_srcdir)/main.am |
|
GENERATED_FILES = buildada.texi buildrt.texi gdb.texi intro.texi \ |
require.texi sample.texi |
|
COMMON_FILES = $(top_srcdir)/common/setup.texi \ |
$(top_srcdir)/common/cpright.texi |
|
FILES = tversions.texi |
|
info_TEXINFOS = started_ada.texi |
started_ada_TEXINFOS = $(FILES) $(COMMON_FILES) $(GENERATED_FILES) |
|
$(srcdir)/intro.texi: intro.t tversions.texi |
$(BMENU2) -c -p "Top" \ |
-u "Top" \ |
-n "Requirements" < $< > $@ |
|
$(srcdir)/require.texi: require.t tversions.texi |
$(BMENU2) -c -p "GNAT Chat Mailing List" \ |
-u "Top" \ |
-n "Building the GNAT Cross Compiler Toolset" < $< > $@ |
|
$(srcdir)/buildada.texi: buildada.t tversions.texi |
$(BMENU2) -c -p "Insure GCC and GNAT Environment Variables Are Not Set" \ |
-u "Top" \ |
-n "Building RTEMS" < $< > $@ |
|
$(srcdir)/buildrt.texi: ../started/buildrt.t tversions.texi |
$(BMENU2) -c -p "Error Messages Indicating Configuration Problems" \ |
-u "Top" \ |
-n "Building the Sample Application" < $< > $@ |
|
$(srcdir)/sample.texi: sample.t tversions.texi |
$(BMENU2) -c -p "Using the bit_rtems Script" \ |
-u "Top" \ |
-n "Building the GNU Debugger" < $< > $@ |
|
$(srcdir)/gdb.texi: gdb.t tversions.texi |
$(BMENU2) -c -p "Application Executable" \ |
-u "Top" \ |
-n "" < $< > $@ |
|
EXTRA_DIST = buildada.t gdb.t intro.t require.t sample.t |
/intro.t
0,0 → 1,162
@c |
@c COPYRIGHT (c) 1988-2002. |
@c On-Line Applications Research Corporation (OAR). |
@c All rights reserved. |
@c |
@c intro.t,v 1.8 2002/01/17 21:47:46 joel Exp |
@c |
|
@chapter Introduction |
|
The purpose of this document is to guide you through the process of |
installing a GNU cross development environment to use with RTEMS. |
|
If you are already familiar with the concepts behind a cross compiler and |
have a background in Unix, these instructions should provide the bare |
essentials for performing a setup of the following items: |
|
@itemize @bullet |
@item GNAT/RTEMS Cross Compilation Tools on your host system |
@item RTEMS OS for the target host |
@item GDB Debugger |
@end itemize |
|
The remainder of this chapter provides background information on real-time |
embedded systems and cross development and an overview of other |
resources of interest on the Internet. If you are not familiar with |
real-time embedded systems or the other areas, please read those sections. |
These sections will help familiarize you with the |
types of systems RTEMS is designed to be used in and the cross development |
process used when developing RTEMS applications. |
|
@section Real-Time Embedded Systems |
|
Real-time embedded systems are found in practically every facet of our |
everyday lives. Today's systems range from the common telephone, automobile |
control systems, and kitchen appliances to complex air traffic control |
systems, military weapon systems, an d production line control including |
robotics and automation. However, in the current climate of rapidly changing |
technology, it is difficult to reach a consensus on the definition of a |
real-time embedded system. Hardware costs are continuing to rapidly decline |
while at the same time the hardware is increasing in power and functionality. |
As a result, embedded systems that were not considered viable two years ago |
are suddenly a cost effective solution. In this domain, it is not uncommon |
for a single hardware configuration to employ a variety of architectures and |
technologies. Therefore, we shall define an embedded system as any computer |
system that is built into a larger system consisting of multiple technologies |
such as digital and analog electronics, mechanical devices, and sensors. |
|
Even as hardware platforms become more powerful, most embedded systems are |
critically dependent on the real-time software embedded in the systems |
themselves. Regardless of how efficiently the hardware operates, the |
performance of the embedded real-time software determines the success of the |
system. As the complexity of the embedded hardware platform grows, so does |
the size and complexity of the embedded software. Software systems must |
routinely perform activities which were only dreamed of a short time ago. |
These large, complex, real-time embedded applications now commonly contain |
one million lines of code or more. |
|
Real-time embedded systems have a complex set of characteristics that |
distinguish them from other software applications. Real-time embedded |
systems are driven by and must respond to real world events while adhering to |
rigorous requirements imposed by the environment with which they interact. |
The correctness of the system depends not only on the results of |
computations, but also on the time at which the results are produced. The |
most important and complex characteristic of real-time application systems is |
that they must receive and respond to a set of external stimuli within rigid |
and critical time constraints. |
|
A single real-time application can be composed of both soft and hard |
real-time components. A typical example of a hard real-time system is a |
nuclear reactor control system that must not only detect failures, but must |
also respond quickly enough to prevent a meltdown. This application also has |
soft real-time requirements because it may involve a man-machine interface. |
Providing an interactive input to the control system is not as critical as |
setting off an alarm to indicate a failure condition. However, th e |
interactive system component must respond within an acceptable time limit to |
allow the operator to interact efficiently with the control system. |
|
@section Cross Development |
|
Today almost all real-time embedded software systems are developed in a |
@b{cross development} environment using cross development tools. In the cross |
development environment, software development activities are typically |
performed on one computer system, the @b{host} system, while the result of the |
development effort (produced by the cross tools) is a software system that |
executes on the @b{target} platform. The requirements for the target platform are |
usually incompatible and quite often in direct conflict with the requirements |
for the host. Moreover, the target hardware is often custom designed for a |
particular project. This means that the cross development toolset must allow |
the developer to customize the tools to address target specific run-time |
issues. The toolset must have provisions for board dependent initialization |
code, device drivers, and error handling code. |
|
The host computer is optimized to support the code development cycle with |
support for code editors, compilers, and linkers requiring large disk drives, |
user development windows, and multiple developer connections. Thus the host |
computer is typically a traditional UNIX workstation such as are available |
from SUN or Silicon Graphics, or a PC running either a version of MS-Windows |
or UNIX. The host system may also be required to execute office productivity |
applications to allow the software developer to write documentation, make |
presentations, or track the project's progress using a project management |
tool. This necessitates that the host computer be general purpose with |
resources such as a thirty-two or sixty-four bit processor, large amounts of |
RAM, a monitor, mouse, keyboard, hard and floppy disk drives, CD-ROM drive, |
and a graphics card. It is likely that the system will be multimedia capable |
and have some networking capability. |
|
Conversely, the target platform generally has limited traditional computer |
resources. The hardware is designed for the particular functionality and |
requirements of the embedded system and optimized to perform those tasks |
effectively. Instead of hard driverss and keyboards, it is composed of |
sensors, relays, and stepper motors. The per-unit cost of the target platform |
is typically a critical concern. No hardware component is included without |
being cost justified. As a result, the processor of the target system is |
often from a different processor family than that of the host system and |
usually has lower performance. In addition to the processor families |
targeted only for use in embedded systems, there are versions of nearly every |
general-purpose process or specifically tailored for real-time embedded |
systems. For example, many of the processors targeting the embedded market |
do not include hardware floating point units, but do include peripherals such |
as timers, serial controllers, or network interfaces. |
|
@section Resources on the Internet |
|
This section describes various resources on the Internet which are of |
use to GNAT/RTEMS users. |
|
@subsection RTEMS Mailing List |
|
rtems-users@@OARcorp.com |
|
This mailing list is dedicated to the discussion of issues related |
to RTEMS, including GNAT/RTEMS. If you have questions about RTEMS, |
wish to make suggestions, or just want to pick up hints, this is a |
good list to subscribe to. Subscribe by sending an empty mail |
message to rtems-users-subscribe@@OARcorp.com. Messages sent |
to rtems-users@@OARcorp.com are posted to the list. |
|
@subsection CrossGCC Mailing List |
|
crossgcc@@cygnus.com |
|
This mailing list is dedicated to the use of the GNU tools in |
cross development environments. Most of the discussions |
focus on embedded issues. Subscribe by sending a message with |
the one line "subscribe" to crossgcc-request@@cygnus.com. |
|
The crossgcc FAQ as well as a number of patches and utiliities |
of interest to cross development system users are available |
at ftp://ftp.cygnus.com/pub/embedded/crossgcc. |
|
@subsection GNAT Chat Mailing List |
|
chat@@gnat.com |
|
This mailing list is dedicated to the general discussion |
of GNAT specific issues. The discussions try to avoid |
more general Ada95 language issues which have other |
forums. Subscribe by sending a message with |
the one line "subscribe" to chat-request@@gnat.com. |
|
|
/version.texi
0,0 → 1,4
@set UPDATED 17 January 2002 |
@set UPDATED-MONTH January 2002 |
@set EDITION ss-20020717 |
@set VERSION ss-20020717 |
/gdb.t
0,0 → 1,235
@c |
@c COPYRIGHT (c) 1988-2002. |
@c On-Line Applications Research Corporation (OAR). |
@c All rights reserved. |
@c |
@c gdb.t,v 1.6 2002/01/17 21:47:46 joel Exp |
@c |
|
@chapter Building the GNU Debugger |
|
GDB is not currently RTEMS aware. The following configurations have been |
successfully used with RTEMS applications: |
|
@itemize @bullet |
@item Sparc Instruction Simulator (SIS) |
@item PowerPC Instruction Simulator (PSIM) |
@item DINK32 |
@end itemize |
|
Other configurations of gdb have successfully been used by RTEMS users |
but are not documented here. |
|
@section Unarchive the gdb Distribution |
|
Use the following commands to unarchive the gdb distribution: |
|
@example |
cd tools |
tar xzf ../archive/@value{GDB-TAR} |
@end example |
|
The directory @value{GDB-UNTAR} is created under the tools directory. |
|
@c |
@c GDB GNAT Patch |
@c |
|
@section Apply GNAT Patch to GDB |
|
@ifclear GDB-GNATPATCH |
No GNAT specific patches are required for @value{GDB-VERSION} to |
support @value{RTEMS-VERSION} and @value{GNAT-VERSION}. |
@end ifclear |
|
@ifset GDB-GNATPATCH |
|
Apply the patch using the following command sequence: |
|
@example |
cd tools/@value{GDB-UNTAR} |
zcat archive/@value{GDB-GNATPATCH} | patch -p1 |
@end example |
|
Check to see if any of these patches have been rejected using the following |
sequence: |
|
@example |
cd tools/@value{GDB-UNTAR} |
find . -name "*.rej" -print |
@end example |
|
If any files are found with the .rej extension, a patch has been rejected. |
This should not happen with a good patch file. |
|
To see the files that have been modified use the sequence: |
|
@example |
cd tools/@value{GDB-UNTAR} |
find . -name "*.orig" -print |
@end example |
|
The files that are found, have been modified by the patch file. |
|
@end ifset |
|
@c |
@c GDB RTEMS Patch |
@c |
|
@section Apply RTEMS Patch to GDB |
|
@ifclear GDB-RTEMSPATCH |
No RTEMS specific patches are required for @value{GDB-VERSION} to |
support @value{RTEMS-VERSION}. |
@end ifclear |
|
@ifset GDB-RTEMSPATCH |
|
Apply the patch using the following command sequence: |
|
@example |
cd tools/@value{GDB-UNTAR} |
zcat archive/@value{GDB-RTEMSPATCH} | patch -p1 |
@end example |
|
Check to see if any of these patches have been rejected using the following |
sequence: |
|
@example |
cd tools/@value{GDB-UNTAR} |
find . -name "*.rej" -print |
@end example |
|
If any files are found with the .rej extension, a patch has been rejected. |
This should not happen with a good patch file. |
|
To see the files that have been modified use the sequence: |
|
@example |
cd tools/@value{GDB-UNTAR} |
find . -name "*.orig" -print |
@end example |
|
The files that are found, have been modified by the patch file. |
|
@end ifset |
|
|
@section GDB with Sparc Instruction Simulation (SIS) |
|
@subheading Make the Build Directory |
|
Create a build directory for the SIS Debugger |
|
@example |
cd tools |
mkdir build-sis |
@end example |
|
@subheading Configure for the Build |
|
Configure the GNU Debugger for the |
Sparc Instruction Simulator (SIS): |
|
@example |
cd tools/build-sis |
../@value{GDB-UNTAR}/configure --target-sparc-erc32-aout \ |
--program-prefix=sparc-rtems- \ |
--disable-gdbtk \ |
--enable-targets=all \ |
--prefix=<INSTALL_POINT_FOR_SIS> |
@end example |
|
Where <INSTALL_POINT_FOR_SIS> is a unique location where the gdb |
with SIS will be created. |
|
@subheading Make the Debugger |
|
From tools/build-sis execute the following command sequence: |
|
@example |
make all install |
@end example |
|
NOTE: The @code{make} utility used should be GNU make. |
|
@section GDB with PowerPC Instruction Simulator |
|
@subheading Make the Build Directory |
|
Create a build directory for the SIS Debugger |
|
@example |
cd tools |
mkdir build-ppc |
@end example |
|
@subheading Configure for the Build |
|
Configure the GNU Debugger for the PowerPC |
Instruction Simulator (PSIM): |
|
@example |
cd tools/build-ppc |
../@value{GDB-UNTAR}/configure \ |
--target=powerpc-unknown-eabi \ |
--program-prefix=powerpc-rtems- \ |
--enable-sim-powerpc \ |
--enable-sim-timebase \ |
--enable-sim-inline \ |
--enable-sim-hardware \ |
--enable-targets=all \ |
--prefix=<INSTALL_POINT_FOR_PPC> |
@end example |
|
Where <INSTALL_POINT_FOR_PPC> is a unique location where the gdb |
with PSIM will be created. |
|
|
@subheading Make the Debugger |
|
From tools/build-ppc execute the following command sequence: |
|
@example |
make all install |
@end example |
|
NOTE: The @code{make} utility used should be GNU make. |
|
@section GDB for DINK32 |
|
@subheading Make the Build Directory |
|
Create a build directory for the DINK32 Debugger |
|
@example |
cd tools |
mkdir build-dink32 |
@end example |
|
@subheading Configure for the Build |
|
Configure the GNU Debugger to communicate with |
the DINK32 ROM monitor: |
|
@example |
cd tools/build-dink32 |
../@value{GDB-UNTAR}/configure --target-powerpc-elf \ |
--program-prefix=powerpc-rtems- \ |
--enable-targets=all \ |
--prefix=<INSTALL_POINT_FOR_DINK32> |
@end example |
|
Where <INSTALL_POINT_FOR_DINK32> is a unique location where the |
gdb Dink32 will be created. |
|
@subheading Make the Debugger |
|
From tools/build-dink32 execute the following command sequence: |
|
@example |
make all install |
@end example |
|
NOTE: The @code{make} utility used should be GNU make. |
/require.t
0,0 → 1,122
@c |
@c COPYRIGHT (c) 1988-2002. |
@c On-Line Applications Research Corporation (OAR). |
@c All rights reserved. |
@c |
@c require.t,v 1.9 2002/01/17 21:47:46 joel Exp |
@c |
|
@chapter Requirements |
|
A fairly large amount of disk space is required to perform the build of the |
GNU C/C++ Cross Compiler Tools for RTEMS. The following table may help in |
assessing the amount of disk space required for your installation: |
|
@example |
+------------------------------------+--------------------------+ |
| Component | Disk Space Required | |
+------------------------------------+--------------------------+ |
| archive directory | 40 Mbytes | |
| tools src unarchived | 200 Mbytes | |
| each individual build directory | up to 500 Mbytes | |
| each installation directory | 20-200 Mbytes | |
+------------------------------------+--------------------------+ |
@end example |
|
It is important to understand that the above requirements only address |
the GNU C/C++ Cross Compiler Tools themselves. Adding additional |
languages such as Fortran or Objective-C can increase the size |
of the build and installation directories. Also, the unarchived |
source and build directories can be removed after the tools are |
installed. |
|
After the tools themselves are installed, RTEMS must be built |
and installed for each Board Support Package that you wish |
to use. Thus the precise amount of disk space required |
for each installation directory depends highly on the number |
of RTEMS BSPs which are to be installed. If a single BSP is |
installed, then the additional size of each install directory |
will tend to be in the 40-60 Mbyte range. |
|
There are a number of factors which must be taken into |
account in oreder to estimate the amount of disk space required |
to build RTEMS itself. Attempting to build multiple BSPs in |
a single step increases the disk space requirements. Similarly |
enabling optional features increases the build and install |
space requirements. In particular, enabling and building |
the RTEMS tests results in a significant increase in build |
space requirements but since the test are not installed has |
no impact on installation requirements. |
|
The instructions in this manual should work on any computer running |
a UNIX variant. Some native GNU tools are used by this procedure |
including: |
|
@itemize @bullet |
@item GCC |
@item GNAT |
@item GNU make |
@end itemize |
|
In addition, some native utilities may be deficient for building |
the GNU tools. |
|
@section Native GNAT |
|
The native GNAT must be installed in the default location or built |
from source. No GCC or GNAT environment variables should be set during |
the build or use of the cross GNAT/RTEMS toolset as this could result in |
an unpredictable mix of native and cross toolsets. |
|
Binaries for native GNAT installations are available at the primary |
GNAT ftp site (@value{GNAT-FTP}. Installation instructions are |
included with the binary GNAT distributions. The binary installation |
should be installed in the default location or installed in a |
non-default location and used ONLY to build a native GNAT from source. |
This final native GNAT will be used to build the GNAT/RTEMS cross |
development toolset. |
|
@subsection Verifying Correct Operation of Native GNAT |
|
It is imperative that the native GNAT installation work correctly for |
the installation of GNAT/RTEMS to succeed. It is recommended that the |
user verify that the native GNAT is installed correctly by performing |
these tests: |
|
@subsubsection Native Hello World Test |
|
Place the following Ada source code in hello.adb: |
|
@example |
with Text_IO; use Text_IO; |
|
procedure Hello is |
begin |
Put_Line ( "Hello World"); |
end Hello; |
@end example |
|
Use the following command sequence to ompile and execute the above program: |
|
@example |
gnatmake hello |
./hello |
@end example |
|
If the message @code{Hello World} is printed, then the native installation |
of GNAT operates well enough to proceed. |
|
@subsubsection Insure GCC and GNAT Environment Variables Are Not Set |
|
If any of the following commands produce output, then you have |
environment variables overriding the default behavior of the |
native GNAT toolset. These variables will conflict with the cross |
toolset. Please resolve this problem before proceeding further. |
|
@example |
echo $GCC_EXEC_PREFIX |
echo $ADA_INCLUDE_PATH |
echo $ADA_OBJECTS_PATH |
echo $LD_RUN_PATH |
echo $C_INCLUDE_PATH |
@end example |
.
Property changes :
Added: svn:ignore
## -0,0 +1,26 ##
+Makefile
+Makefile.in
+buildada.texi
+buildrt.texi
+gdb.texi
+index.html
+intro.texi
+mdate-sh
+require.texi
+sample.texi
+started_ada
+started_ada*.html
+started_ada.aux
+started_ada.cp
+started_ada.dvi
+started_ada.fn
+started_ada.ky
+started_ada.log
+started_ada.pdf
+started_ada.pg
+started_ada.ps
+started_ada.toc
+started_ada.tp
+started_ada.vr
+rtems_header.html
+rtems_footer.html