source: rtems/README.configure @ 62181b21

4.11
Last change on this file since 62181b21 was 9b4422a2, checked in by Joel Sherrill <joel.sherrill@…>, on May 3, 2012 at 3:09:24 PM

Remove All CVS Id Strings Possible Using a Script

Script does what is expected and tries to do it as
smartly as possible.

+ remove occurrences of two blank comment lines

next to each other after Id string line removed.

+ remove entire comment blocks which only exited to

contain CVS Ids

+ If the processing left a blank line at the top of

a file, it was removed.

  • Property mode set to 100644
File size: 7.1 KB
Line 
11. Autoconf support
2===================
3
4This version of RTEMS is configured with GNU autoconf. RTEMS can be
5configured and built either standalone or together with the compiler
6tools in the Cygnus one-tree structure. Using autoconf also means
7that RTEMS now can be built in a separate build directory.
8
9To re-generate auto*tool generated files (configure, Makefile.in etc),
10autoconf-2.68 and automake-1.11.1 are required.
11
122. Installation
13===============
14
15To configure RTEMS for a specific target, run configure in the build
16directory. In addition to the standard configure options, the following
17RTEMS-specific option are supported:
18
19      --disable-rtems-inlines
20      --disable-posix
21      --disable-networking
22      --enable-cxx
23      --enable-multiprocessing
24      --enable-rtemsbsp="bsp1 bsp2 ..."
25      --enable-tests
26      --enable-rdbg            (only valid for i386 and some PowerPC BSPs)
27      --enable-docs
28
29In addition, the following standard autoconf options are frequently
30used when configuring RTEMS installations:
31
32      --prefix=INSTALL_DIRECTORY
33
34By default, inline routines are used instead of macros where possible.
35Macros can be selected using the --disable-inlines option.  [NOTE:
36Some APIs may not support macro versions of their inline routines.]
37
38By default, the RTEMS POSIX 1003.1b interface is built for targets that support
39it. It can be disabled with the --disable-posix option.
40
41By default, the RTEMS networking support is built for targets which
42support it.  It can be specifically disabled for those targets
43with the --disable-networking option.
44
45By default, the RTEMS remote debugger server support is not built.
46It can be specifically enabled for the targets that support it.
47with the --enable-rdbg option. NB : the RTEMS networking support
48must be enabled to support the remote debugger server.
49
50By default, the RTEMS support of C++ is disabled.  It can be enabled
51with the --enable-cxx option. If the rtems++ C++ library is installed
52it will also be build.
53
54By default, the RTEMS test suites are NOT configured -- only the
55sample tests are built.  --enable-tests will configure
56the RTEMS test suite. The default speeds up the build
57and configure process when the tests are not desired.
58
59By default, RTEMS is built using arguments and build rules which require a
60gcc supporting the -specs option, ie. a gcc >= 2.8.
61[The --disable-gcc28 option, which has been present in former releases, has
62been removed.]
63
64By default, multiprocessing is is not built.  It can be enabled
65for those BSPs supporting it by the --enable-multiprocessing option.
66
67By default, all bsps for a target are built. The bare BSP is not built
68unless directly specified. There are  two ways of changing this:
69
70+ use the --enable-rtemsbsp option which will set the specified
71  bsps as the default bsps, or
72+ set the RTEMS_BSP variable during make (see below).
73
74The --enable-rtemsbsp= option configures RTEMS for a specific board
75within a target architecture.  Remember that the target specifies the
76CPU family while the BSP specifies the precise board you will be using.
77The following targets are supported:
78
79      arm-rtems4.10
80      avr-rtems4.10
81      bfin-rtems4.10
82      h8300-rtems4.10
83      i386-rtems4.10
84      lm32-rtems4.10
85      m32c-rtems4.10
86      m32r-rtems4.10
87      m68k-rtems4.10
88      mips-rtems4.10
89      no_cpu-rtems4.10
90      powerpc-rtems4.10
91      sh-rtems4.10
92      sparc-rtems4.10
93
94The cross-compiler is set to $(target)-gcc by default.
95
96To build, run make in the build directory. To specify which bsps to build,
97add the RTEMS_BSP="bsp1 bsp2 .." to the make command.  Specifying multiple
98BSPs to build only works from the top level build directory.
99
100Installation is done under $(prefix)/rtems.
101
102As an example, to build and install the mvme136 and mvme162 bsps for m68k do:
103
104      (path_to_rtems_src)/configure --target=m68k-rtems4.11
105
106      make RTEMS_BSP="mvme136 mvme162"
107     
108      make install RTEMS_BSP="mvme136 mvme162"
109
110The sample tests are built by 'make all' when configured with
111--enable-tests=samples.  Use --enable-tests=all to build the full
112test suite.
113
114Documentation is built separately from the source code.
115
1163. To use the installed RTEMS library
117=====================================
118
119To use the installed RTEMS bsps to build applications, the application
120makefile has to include a bsp-specific makefile that will define the
121RTEMS variables necessary to find include files and libraries. The
122bsp-specific makefile is installed at
123
124      $(RTEMS_MAKEFILE_PATH)/Makefile.inc
125
126For the erc32 bsp installed at /usr/local/cross, the environment
127variable RTEMS_MAKEFILE_PATH would be set as follows to the
128following:
129
130/usr/local/cross/sparc-rtems/rtems/erc32/Makefile.inc
131
1324. Supported target bsps
133========================
134
135The following bsps are supported:
136
137arm             : csb336 csb337 edb7312 gba gp32 nds rtl22x rtl22xx_t
138                  smdk2410
139
140avr:            : avrtest
141
142bfin            : eZKit533 bf537Stamp
143
144h8300           : h8sim
145
146i386            : i386ex pc386 pc386dx pc486 pc586 pc686 pck6 ts_386ex
147                NOTE: The "pc386" BSP can be compiled to support a
148                      variety of PC configurations including PC-104
149                      based solutions.
150
151lm32:           : lm32_evr
152
153m32c            : m32csim
154
155m32r            : m32rsim
156
157m68k            : av5282 csb360 gen68302 gen68360 gen68360_040
158                genmcf548x idp mcf5206elite mcf52235 mcf5235 mcf5239
159                m5484FireEngine mrm332 mvme136 mvme147s mvme162 mvme162lx
160                mvme167 ods68302 pgh360 sim68000 simcpu32 uC5282 COBRA5475
161
162no_cpu          : no_bsp  (porting example)
163
164mips            : csb350 genmongoosev hurricane jmr3904 rbtx4925 rbtx4938
165                p4600 p4650
166
167powerpc         : brs5l ep1a gen5200 gen83xx haleakala hsc_cm01 icecube
168                mbx821_001 mbx821_002 mbx821_002b mbx860_001b mbx860_002
169                mbx860_005b mcp750 mvme2100 mvme2307 mtx603e
170                mvme5500 mpc55xxevb mpc8260ads mpc8313erdb mpc8349eamds
171                pghplus pm520_cr825 pm520_ze30 psim score603e ss555
172                tqm8xx_stk8xx virtex
173
174                  NOTE: The "motorola_powerpc" BSP is a single BSP which
175                  can be conditionally compiled to support most Motorola
176                  VMEbus, CompactPCI, and MTX boards.)
177
178                  NOTE: The mbx8xx, gen5200, gen83xx, and tqm8xx BSPs are
179                  designed to handle a variety of boards based on the same
180                  family of system on chips CPUs
181
182sh              : gensh1 gensh2 gensh4 simsh1 simsh2 simsh4
183
184sparc           : erc32 sis leon2 leon3
185
1865. Makefile structure
187=====================
188
189The makefiles have been re-organized. Most gnu-based bsps now use three
190main makefiles:
191    + custom/default.cfg,
192    + custom/bsp.cfg and
193    + compilers/gcc-target-default.cfg.
194
195Default.cfg sets the default values of certain common build options.
196
197Bsp.cfg set bsp-specific build options and can also override the
198default settings.
199
200Gcc-target-default.cfg contains the common gcc definitions.
201
2026. Adding a bsp
203===============
204
205Please refer to the BSP and Device Driver Guide.
206
207
2087. Tested configurations
209========================
210
211All gnu-based bsps have been built on Linux.
212
2138. Prerequisites
214================
215
216Gawk version 2 or higher.
217GNU make version 3.72 or higher.
218Bash.
219gcc version > 2.8
220
221NOTE: These prerequisites are probably out of date but autoconf should detect
222      any problems.
Note: See TracBrowser for help on using the repository browser.