OpenCores
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

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.