source: rtems/doc/develenv/direct.t @ 818ab36a

4.104.114.84.95
Last change on this file since 818ab36a was 818ab36a, checked in by Joel Sherrill <joel.sherrill@…>, on 03/24/03 at 16:40:49

2003-03-24 Joel Sherrill <joel@…>

  • direct.t, sample.t, utils.t: Significantly updated.
  • Property mode set to 100644
File size: 24.6 KB
RevLine 
[ae68ff0]1@c
[6449498]2@c  COPYRIGHT (c) 1988-2002.
[ae68ff0]3@c  On-Line Applications Research Corporation (OAR).
4@c  All rights reserved.
5@c
[139b2e4a]6@c  $Id$
7@c
[ae68ff0]8
9@chapter Directory Structure
10
11The RTEMS directory structure is designed to meet
12the following requirements:
13
14@itemize @bullet
15@item encourage development of modular components.
16
17@item isolate processor and target dependent code, while
18allowing as much common source code as possible to be shared
[aa41429]19across multiple processors and target boards.
[ae68ff0]20
21@item allow multiple RTEMS users to perform simultaneous
22compilation of RTEMS and its support facilities for different
23processors and targets.
24@end itemize
25
26The resulting directory structure has processor and
[aa41429]27board dependent source files isolated from generic files.  When
28RTEMS is configured and built, object directories and
29an install point will be automatically created based upon
30the target CPU family and BSP selected. 
31
32The placement of object files based upon the selected BSP name
33ensures that object files are not mixed across CPUs or targets.
34This in combination with the makefiles allows the specific
[ae68ff0]35compilation options to be tailored for a particular target
36board.  For example, the efficiency of the memory subsystem for
37a particular target board may be sensitive to the alignment of
38data structures, while on another target board with the same
39processor memory may be very limited.  For the first target, the
40options could specify very strict alignment requirements, while
[818ab36a]41on the second the data structures could be @i{packed} to conserve
[ae68ff0]42memory.  It is impossible to achieve this degree of flexibility
43without providing source code.
[aa41429]44
[818ab36a]45The RTEMS source tree is organized based on the following variables:
[ae68ff0]46
47@itemize @bullet
48
[aa41429]49@item functionality,
50@item target processor family,
51@item target processor model,
52@item peripherals, and
53@item target board.
[ae68ff0]54
55@end itemize
56
[aa41429]57Each of the following sections will describe the
58contents of the directories in the RTEMS source
59tree.  The top of the tree will be referenced
60as @code{$@{RTEMS_ROOT@}} in this discussion.
[ae68ff0]61
62@c
[aa41429]63@c  Top Level Tree
[ae68ff0]64@c
65
[aa41429]66@c @ifset use-ascii
[ae68ff0]67@example
68@group
[aa41429]69                      rtems-VERSION
70                           |
71   +--------+----+----+----+--+-----+---+------+-----+
72   |        |    |    |       |     |   |      |     |
73aclocal automake c contrib  cpukit doc make scripts tools
[ae68ff0]74@end group
75@end example
[aa41429]76@c @end ifset
[ae68ff0]77
78@ifset use-tex
79@end ifset
80
81@ifset use-html
82@html
83@end html
84@end ifset
85
86@table @code
[aa41429]87@item $@{RTEMS_ROOT@}/aclocal/
88This directory contains the custom M4 macros which are available to
89the various GNU autoconf @code{configure.ac} scripts throughout
90the RTEMS source tree.  GNU autoconf interprets @code{configure.ac}
91files to produce the @code{configure} files used to tailor
92RTEMS build for a particular host and target environment.  The
93contents of this directory will not be discussed further in this
94document.
95
96@item $@{RTEMS_ROOT@}/automake/
97This directory contains the custom GNU automake fragments
98which are used to support the various @code{Makefile.am}
99files throughout the RTEMS source tree.  The
100contents of this directory will not be discussed
101further in this document.
102
103@item $@{RTEMS_ROOT@}/c/
104This directory is the root of the portions of the RTEMS source
105tree which must be built tailored for a particular CPU model
106or BSP.  The contents of this directory will be discussed
107in the @ref{Directory Structure c/ Directory} section.
108
109@item $@{RTEMS_ROOT@}/contrib/
110This directory contains contributed support software.  Currently
111this directory contains the RPM specifications for cross-compilers
112hosted on GNU/Linux that target Cygwin and Solaris.  The
113cross-compilers produced using these specifications are then
114used in a Canadian cross build procedure to produce the Cygwin
115and Solaris hosted RTEMS toolsets on a GNU/Linux host.  This
116directory will not be discussed further in this document.
117
118@item $@{RTEMS_ROOT@}/cpukit/
119This directory is the root for all of the "multilib'able"
120portions of RTEMS.  This is a GNU way of saying the the
121contents of this directory can be compiled like the
122C Library (@code{libc.a}) and the functionality is
123neither CPU model nor BSP specific.  The source code
124for most RTEMS services reside under this directory.
125The contents of this directory will be discussed
126in the @ref{Directory Structure CPUKit Directory} section.
127
128@item $@{RTEMS_ROOT@}/doc/
129This directory is the root for all RTEMS documentation.
130The source for RTEMS is written in GNU TeXinfo and
131used to produce HTML, PDF, and "info" files.
132The RTEMS documentation is configured, built,
133and installed separately from the RTEMS executive and tests.
134The contents of this directory will be discussed
135in the @ref{Directory Structure Documentation Directory} section.
136
137@item $@{RTEMS_ROOT@}/make/
138This directory contains files which support the
139RTEMS Makefile's.  From a user's perspective, the
140most important parts are found in the @code{custom/}
141subdirectory.  Each ".cfg" file in this directory
142is associated with a specific BSP and describes
143the CPU model, compiler flags, and procedure to
144a produce an executable for the target board.
145These files are described in detail in the
146@b{RTEMS BSP and Device Driver Development Guide}
147and will not be discussed further in this document.
148
149@item $@{RTEMS_ROOT@}/scripts/
150This directory contains the RPM specifications for the
151prebuilt cross-compilation toolsets provided by the
152RTEMS project.  There are separate subdirectories
153for each of the components in the RTEMS Cross Compilation
154Environment including @code{binutils/}, @code{gcc3newlib/},
155and @code{gdb/}.  This directory is configured, built,
156and installed separately from the RTEMS executive
157and tests.  This directory will not be discussed further
158in this document.
159
160@item $@{RTEMS_ROOT@}/tools/
161This directory contains RTEMS specific support utilities which
162execute on the development host.  These utilities are divided
163into subdirectories based upon whether they are used in the process
164of building RTEMS and applications, are CPU specific, or are
165used to assist in updating the RTEMS source tree and applications.
166The support utilities used in the process of building RTEMS are
167described in @ref{RTEMS Specific Utilities}.  These are the
168only components of this subtree that will be discussed in this
169document.
[ae68ff0]170
[aa41429]171@end table
[ae68ff0]172
173
174
[aa41429]175@c
176@c  c/ Directions
177@c
[818ab36a]178@section c/ Directory
[ae68ff0]179
[aa41429]180The @code{$@{RTEMS_ROOT@}/c/} directory was formerly
181the root directory of all RTEMS source code.  At this time, it contains
182the root directory for only those RTEMS components
183which must be compiled or linked in a way that is specific to a
184particular CPU model or board.  This directory contains the
185following subdirectories:
186
187@table @code
188@item $@{RTEMS_ROOT@}/c/src/
189This directory is logically the root for the RTEMS components
190which are CPU model or board dependent.  Thus this directory
191is the root for the BSPs and the various Test Suites as well
192as CPU model and BSP dependent libraries.  The contents of
193this directory are discussed in the
194@ref{Directory Structure c/src/ Directory} section.
195
196@item $@{RTEMS_ROOT@}/c/make/
197This directory is used to generate the file @code{target.cfg}
198which is installed as part of the Application Makefiles.  This
199file contains settings for various Makefile variables to
200tailor them to the particular CPU model and BSP configured.
[ae68ff0]201
202@end table
203
[aa41429]204@c
205@c c/src/ Directory
206@c
[818ab36a]207@subsection c/src/ Directory
[ae68ff0]208
[aa41429]209As mentioned previously, this directory is logically
210the root for the RTEMS components
211which are CPU model or board dependent.  The
212following is a list of the subdirectories in this
213directorie and a description of each.
[ae68ff0]214
[aa41429]215@table @code
216@item $@{RTEMS_ROOT@}/c/src/ada-tests/
217This directory contains the test suite for the Ada
218language bindings to the Classic API.
219
220@item $@{RTEMS_ROOT@}/c/src/lib/
[818ab36a]221This directory contains the directories @code{libbsp}
222and @code{libcpu/} which contain the source code for
223the Board Support Packages (BSPs) and CPU Model
224specific source code for RTEMS. 
225
226The @code{libbsp/} is organized based upon the CPU
227family and boards BSPs.  The contents of @code{libbsp/}
228are discussed briefly in
229@ref{Directory Structure c/src/lib/libbsp BSP Directory}
230and presented in detail in the
231@b{RTEMS BSP and Device Driver Development Guide}.
232
233The @code{libcpu/} directory is also organized by
234CPU family with further divisions based upon CPU
235model and features that are shared across CPU models
236such as caching and DMA.
[aa41429]237
238@item $@{RTEMS_ROOT@}/c/src/libchip/
239This directory contains device drivers for various
240peripheral chips which are designed to be CPU and
241board dependent.  This directory contains a variety
242of drivers for serial devices, network interface
243controllers, and real-time clocks.
244
245@item $@{RTEMS_ROOT@}/c/src/libmisc/
246This directory contains support facilities which
247are RTEMS specific but otherwise unclassified.  In
248general, they do not adhere to a standard API. 
249Among the support facilities in this directory are
250a @code{/dev/null} device driver, the Stack
251Overflow Checker, a mini-shell, the CPU and
252rate monotonic period usage monitoring libraries,
253and a utility to "dump a buffer" in a nicely
254formatted way similar to many ROM monitors.
255
256@item $@{RTEMS_ROOT@}/c/src/libnetworking/
257This directory contains the networking components which
258might be tailored based upon the particular BSP.  This
259includes the RTEMS telnetd, httpd, and ftpd servers.
260
261@item $@{RTEMS_ROOT@}/c/src/librdbg/
262This directory contains the Ethernet-based remote debugging
263stub.  This software must be built to be intimately aware
264of a particular CPU model.
265
266@item $@{RTEMS_ROOT@}/c/src/librtems++/
[818ab36a]267This directory contains C++ classes which map to the RTEMS
268Classic API.
[aa41429]269
270@item $@{RTEMS_ROOT@}/c/src/make/
[818ab36a]271This directory is used to generate the bulk of the supporting
272rules files which are installed as part of the Application Makefiles.
273This file contains settings for various Makefile variables to
274tailor them to the particular CPU model and BSP configured.
[aa41429]275
276@item $@{RTEMS_ROOT@}/c/src/optman/
[818ab36a]277This directory contains stubs for the RTEMS Classic API
278Managers which are considered optional and whose use
279may be explicitly forbidden by an application.  All of the
280directive implementations in this Optional Managers
281return @code{E_NOTCONFIGURED}.
[aa41429]282
283@item $@{RTEMS_ROOT@}/c/src/tests/
284This directory contains the test suites for the
285various RTEMS APIs and support libraries.  This
286contents of this directory are discussed in the
[818ab36a]287@ref{Directory Structure c/src/tests/ Test Suites} section.
[aa41429]288
289@item $@{RTEMS_ROOT@}/c/src/wrapup/
[818ab36a]290This directory is responsible for taking the individual
291libraries and objects built in each of the components
292in the RTEMS source tree and bundling them together to form
293the single RTEMS library @code{librtemsbsp.a}.  This
294library contains all BSP and CPU model specific software.
[aa41429]295
296@end table
[ae68ff0]297
298@c
[818ab36a]299@c  c/src/lib/libbsp BSP Directory
[ae68ff0]300@c
301
[818ab36a]302@subsubsection c/src/lib/libbsp BSP Directory
[ae68ff0]303
304The "libbsp" directory contains a directory for each CPU family supported
305by RTEMS.  Beneath each CPU directory is a directory for each BSP for that
306processor family.
307
308@c
309@c  Tree 7 - C BSP Library
310@c
311
[db91520]312The "libbsp" directory provides all the BSPs provided with this
[ae68ff0]313release of the RTEMS executive.  The subdirectories are
314divided,  as discussed previously, based on specific processor
315family, then further breaking down into specific target board
316environments.  The "shmdr" subdirectory provides the
317implementation of a shared memory driver which supports the
318multiprocessing portion of the executive.  In addition, two
319starting point subdirectories are provided for reference.  The
320"no_cpu" subdirectory provides a template BSP which can be used
321to develop a specific BSP for an unsupported target board.  The
322"stubdr" subdirectory provides stubbed out BSPs.  These files
323may aid in preliminary testing of the RTEMS development
324environment that has been built for no particular target in mind.
325
326Below each CPU dependent directory is a directory for each target BSP
327supported in this release.
328
329Each BSP provides the modules which comprise an RTEMS BSP.  The
330modules are separated into the subdirectories "clock", "console",
331"include", "shmsupp", "startup", and "timer" as shown in the following
332figure:
333
334@c
335@c  Tree 8 - Each BSP
336@c
337
[818ab36a]338@c @ifset use-ascii
[ae68ff0]339@example
340@group
341                           Each BSP
342                               |
343  +-----------+----------+-----+-----+----------+----------+
344  |           |          |           |          |          |
345clock      console    include     shmsupp    startup     timer
346@end group
347@end example
[818ab36a]348@c @end ifset
[ae68ff0]349
[818ab36a]350@c
351@c  c/src/tests/ Test Suites
352@c
353@subsection c/src/tests/ Test Suites
354
355This directory provides all of the RTEMS Test Suite
356except those for the Classic API Ada95 binding
357This includes the single processor tests, multiprocessor tests,
358timing tests, library tests, and sample tests.   Additionally,
359subdirectories for support functions and test related header
360files are provided.  The following table lists the test suites
361currently included with the RTEMS and the directory in which
362they may be located:
363
364@table @code
365
366@item $@{RTEMS_ROOT@}/c/src/tests/itrontests/
367This directory contains the test suite for the
368RTEMS ITRON API.
369
370@item $@{RTEMS_ROOT@}/c/src/tests/libtests/
371This directory contains the test suite for the
372various RTEMS support components.
373
374@item $@{RTEMS_ROOT@}/c/src/tests/mptests/
375This directory contains the test suite for the
376multiprocessor support in the Classic API.
377The tests provided address two node configurations
378and provide coverage for the multiprocessor code found
379in RTEMS.
380
381@item $@{RTEMS_ROOT@}/c/src/tests/psxtests/
382This directory contains the test suite for the
383RTEMS POSIX API.
384
385@item $@{RTEMS_ROOT@}/c/src/tests/samples/
386This directory provides sample application tests
387which aid in the testing a newly built RTEMS environment, a new
388BSP, or as starting points for the development of an application
389using the RTEMS executive.  They are discussed in
390@ref{Sample Applications}.
391
392@item $@{RTEMS_ROOT@}/c/src/tests/sptests/
393This directory contains the test suite for the RTEMS
394Classic API when executing on a single processor.
395The tests were originally designed to provide
396near complete test coverage for the the entire
397executive code.  With the addition of multiple APIs,
398this is no longer the case as some SuperCore functionality
399is not available through the Classic API.  Thus
400some functionality in the SuperCore is only covered
401by tests in the POSIX API and ITRON API Test Suites.
402
403@item $@{RTEMS_ROOT@}/c/src/tests/support/
404This directory contains support software and header files
405for the various test suites.
406
407@item $@{RTEMS_ROOT@}/c/src/tests/tmitrontests/
408This directory contains the timing test suite for
409the RTEMS ITRON API.
410
411@item $@{RTEMS_ROOT@}/c/src/tests/tmtests/
412This directory contains the timing test suite for
413the RTEMS Classic API.  This include tests that
414benchmark each directive in the Classic API
415as well as a set of critical SuperCore functions.
416These tests are important for helping to verify
417that RTEMS performs as expected on your target hardware.
418It is not uncommon to discover mistakes in board
419initialization such as caching being disabled as
420a side-effect of analyzing the results of these tests.
421
422@item $@{RTEMS_ROOT@}/c/src/tests/tools/
423This directory contains tools which execute on
424the development host and aid in executing and
425evaluating the results of the test suite.  The
426tools @code{difftest} compares the output of one
427or more tests with the expected output.  If you
428place the output of all the @code{tmtests/} in
429a single file, then the utility @code{sorttimes}
430will be able to produce a report organizing the
431execution times by manager.
432
433@end table
[ae68ff0]434
435
[aa41429]436@c
[818ab36a]437@c  CPUKit Directory
[aa41429]438@c
[818ab36a]439@section CPUKit Directory
[ae68ff0]440
[818ab36a]441@c The @code{cpukit/} directory structure is as follows:
[ae68ff0]442
443@c
[818ab36a]444@c  CPUKit Tree
[ae68ff0]445@c
446
[818ab36a]447@c @ifset use-ascii
448@c @example
449@c @group
450@c                        CPUKit
451@c                          |
452@c   +-----------+----------+-----------+----------+
453@c   |           |          |           |          |
454@c posix       rtems       sapi       score     wrapup
455@c @end group
456@c @end example
457@c @end ifset
[ae68ff0]458
[818ab36a]459The @code{cpukit/} directory contains a set of subdirectories which
460contains the source files comprising the executive portion of
461the RTEMS development environment as well as portable support
462libraries such as support for the C Library and filesystems.
463The API specific and "SuperCore" (e.g. @code{score/} directory)
464source code files are separated into distinct directory trees.
[ae68ff0]465
[818ab36a]466The following is a description of each of the subdirectories
467under @code{cpukit/}:
[ae68ff0]468
[818ab36a]469@table @code
[ae68ff0]470
[818ab36a]471@item $@{RTEMS_ROOT@}/cpukit/aclocal/
472This directory contains the custom M4 macros which are available to
473the various GNU autoconf @code{configure.ac} scripts throughout
474the CPU Kit portion of the RTEMS source tree.
475GNU autoconf interprets @code{configure.ac}
476files to produce the @code{configure} files used to tailor
477RTEMS build for a particular host and target environment.  The
478contents of this directory will not be discussed further in this
479document.
[ae68ff0]480
[818ab36a]481@item $@{RTEMS_ROOT@}/cpukit/ada/
482This directory contains the Ada95 language bindings to the
483RTEMS Classic API.
484
485@item $@{RTEMS_ROOT@}/cpukit/automake/
486This directory contains files which are "Makefile fragments."
487They are included as required by the various @code{Makefile.am}
488files throughout the CPU Kit portion of the RTEMS source tree.
489
490@item $@{RTEMS_ROOT@}/cpukit/include/
491This directory contains header files which are private to
492RTEMS and not considered to be owned by any other component
493in the CPU Kit.
494
495@item $@{RTEMS_ROOT@}/cpukit/itron/
496This directory contains the implementation of the
497ITRON API.
498
499@item $@{RTEMS_ROOT@}/cpukit/libblock/
500This directory contains support code for using
501Block Devices such as hard drives, floppies, and
502CD-ROMs.  It includes the generic IO primitives
503for block device drivers, disk caching support,
504and a RAM disk block device driver.
505
506@item $@{RTEMS_ROOT@}/cpukit/libcsupport/
507This directory contains the RTEMS specific support routines
508for the Newlib C Library.  This includes what are referred
509to as system calls and found in section 2 of the traditional
510UNIX manual.   In addition, it contains a thread-safe
511implementation of the Malloc family of routines as well
512as BSD and POSIX services not found in Newlib.
513
514@item $@{RTEMS_ROOT@}/cpukit/libfs/
515This directory contains the various non-networked
516filesystem implementations for RTEMS.  It includes
517the In-Memory FileSystem (IMFS), the mini-IMFS,
518and FAT filesystems.
519
520@item $@{RTEMS_ROOT@}/cpukit/libnetworking/
521This directory contains the port of the FreeBSD
522TCP/IP stack to RTEMS.
523
524@item $@{RTEMS_ROOT@}/cpukit/librpc/
525This directory contains the port of the FreeBSD
526RPC/XDR source to RTEMS.
527
528@item $@{RTEMS_ROOT@}/cpukit/posix/
529This directory contains the RTEMS implementation
530of the threading portions of the POSIX API. 
531
532@item $@{RTEMS_ROOT@}/cpukit/rtems/
533This directory contains the implementation of the
534Classic API.
535
536@item $@{RTEMS_ROOT@}/cpukit/sapi/
537This directory contains the implementation of RTEMS
538services which are required but beyond the realm
539of any standardization efforts.  It includes
540initialization, shutdown, and IO services.
541
542@item $@{RTEMS_ROOT@}/cpukit/score/
543This directory contains the "SuperCore" of RTEMS.
544All APIs are implemented in terms of SuperCore services.
545For example, Classic API tasks, POSIX threads, and ITRON
546tasks are all implemented in terms of SuperCore threads.
547This provides a common infrastructure and a high degree
548of interoperability between the APIs.  For example,
549services from all APIs may be used by any task/thread
550independent of the API used to create it.
551
552Within the @code{score/} directory the CPU dependent modules are found.
553The @code{score/cpu/} subdirectory contains a subdirectory for each
554target CPU supported by the @value{RELEASE} release of the RTEMS
555executive.  Each processor directory contains the CPU dependent
556code necessary to host RTEMS.  The @code{no_cpu} directory provides a
557starting point for developing a new port to an unsupported
558processor.  The files contained within the @code{no_cpu} directory
559may also be used as a reference for the other ports to specific
560processors.
[ae68ff0]561
[818ab36a]562@item $@{RTEMS_ROOT@}/cpukit/wrapup/
563This directory is responsible for taking the individual
564libraries and objects built in each of the components
565in the RTEMS CPU Kit source tree and bundling them
566together to form the single RTEMS library @code{librtemscpu.a}.  This
567library contains all BSP and CPU model specific software.
[ae68ff0]568
[818ab36a]569@end table
[ae68ff0]570
571@c
[818ab36a]572@c  Documentation Directory
[ae68ff0]573@c
[818ab36a]574@section Documentation Directory
[ae68ff0]575
[818ab36a]576This directory contains the source code for all RTEMS documentation
577in @code{TexInfo} format as well as utilities used in the generation
578of the RTEMS documentation set.  This source code is used to produce
579the RTEMS documentation in various formats including PDF, HTML,
580and PostScript.
[ae68ff0]581
[818ab36a]582@table @code
[ae68ff0]583
[818ab36a]584@item $@{RTEMS_ROOT@}/doc/FAQ/
585This directory contains the source code for the @cite{RTEMS Frequently Asked
586Questions (FAQ) Collection}.
587
588@item $@{RTEMS_ROOT@}/doc/user/
589This directory contains the source code for the @cite{RTEMS
590Applications C User's Guide} which documents the Classic API.
591
592@item $@{RTEMS_ROOT@}/doc/ada_user/
593This directory contains the source code for the @cite{RTEMS
594Applications Ada User's Guide} which documents the Ada95
595binding to the Classic API.  This manual is produced from
596from the same source base as the @cite{RTEMS Application
597C User's Guide}.
598
599@item $@{RTEMS_ROOT@}/doc/bsp_howto/
600This directory contains the source code for the
601@cite{RTEMS BSP and Device Driver Development Guide}.
602
603@item $@{RTEMS_ROOT@}/doc/common/
604This directory contains the source code for the files which
605are shared across multiple manuals in the RTEMS Documentation Set.
606This includes the copyright page as well as the timing
607tables which can be filled in on a per BSP basis in the
608CPU supplements.
609
610@item $@{RTEMS_ROOT@}/doc/develenv/
611This directory contains the source code for the
612@cite{RTEMS Development Environment Guide}.  This is
613the document you are currently reading.
614
615@item $@{RTEMS_ROOT@}/doc/filesystem/
616This directory contains the source code for the
617@cite{RTEMS Filesystem Design Guide}.  This manual
618is a continuous work in process as it attempts to
619capture the design of the interface between system
620calls and filesystem implementations as well as the
621information required by those implementing filesystems.
622
623@item $@{RTEMS_ROOT@}/doc/gnu_docs/
624This directory contains the scripts which assist in
625generating HTML for the GNU tools in the RTEMS Cross
626Development Environment set.
627
628@item $@{RTEMS_ROOT@}/doc/images/
629This directory contains the source code for the graphics
630used in the HTML version of the RTEMS Documentation.
631
632@item $@{RTEMS_ROOT@}/doc/itron3.0/
633This directory contains the source code for the
634@cite{RTEMS ITRON 3.0 API User's Guide}.
635
636@item $@{RTEMS_ROOT@}/doc/networking/
637This directory contains the source code for the
638@cite{RTEMS Network Supplement}. 
639
640@item $@{RTEMS_ROOT@}/doc/new_chapters/
641This directory contains the source code for the new documentation
642components which have not yet been collected into a new manual or
643merged into an existing document.  Currently, this primarily
644contains draft documentation for some portions of
645the facilities implemented in @code{$@{RTEMS_ROOT@}/c/src/libmisc/}.
646
647@item $@{RTEMS_ROOT@}/doc/porting/
648This directory contains the source code for the
649@cite{RTEMS Porting Guide}.
650
651@item $@{RTEMS_ROOT@}/doc/posix1003.1/
652This directory contains the source code for the
653@cite{RTEMS POSIX 1003.1 Compliance Guide}.
654
655@item $@{RTEMS_ROOT@}/doc/posix_users/
656This directory contains the source code for the
657@cite{RTEMS POSIX API User's Guide}.  It is important to
658note that RTEMS' support for POSIX is a combination of
659functionality provided by RTEMS and the Newlib C Library
660so some functionality is documented by Newlib.
661
662@item $@{RTEMS_ROOT@}/doc/relnotes/
663This directory contains the source code for a formally
664release notes document.  This has not been used for
665recent RTEMS releases.
666
667@item $@{RTEMS_ROOT@}/doc/rgdb_specs/
668This directory contains the source code for the
669@cite{RTEMS Remote Debugger Server Specifications}.
670
671@item $@{RTEMS_ROOT@}/doc/rtems_gdb/
672This directory contains the source code for the
673@cite{RTEMS/GDB User's Guide}.
674
675@item $@{RTEMS_ROOT@}/doc/started/
676This directory contains the source code for the
677@cite{Getting Started with RTEMS for C/C++ Users} manual.
678
679@item $@{RTEMS_ROOT@}/doc/started_ada/
680This directory contains the source code for the
681@cite{Getting Started with RTEMS for Ada Users} manual.
682
683@item $@{RTEMS_ROOT@}/doc/supplements/
684This directory contains the source code for the various
685RTEMS CPU Supplements.
686the
687
688@item $@{RTEMS_ROOT@}/doc/tools/
689This directory contains the source code for the tools
690used on the development host to assist in producing the
691RTEMS Documentation.  The most important of these tools
692is @code{bmenu} which generates the hierarchical node
693linking commands based upon chapter, section, and
694subsection organization.
[ae68ff0]695
[818ab36a]696@end table
Note: See TracBrowser for help on using the repository browser.