|Commit message (Collapse)||Author||Files||Lines|
* custom/erc32.cfg: Revert accidental commit.
* custom/bf537Stamp.cfg, custom/erc32.cfg: Add skyeye alias for
* custom/bf537skyeye.cfg: New file.
application. Share as much logic as possible for .num file and size information. Let BSPs provide custom rules to tranform executable from linked .exe to downloadable RTEMS Application Loadable File (RALF) .ralf file.
* leaf.cfg, compilers/gcc-no_bsp.cfg: Add optional manager stub
for Classic API Barrier.
* custom/erc32nfp.cfg: Remove CPU_U32_FIX.
* custom/erc32.cfg: Ditto.
* custom/leon2.cfg: Ditto.
* custom/erc32.cfg: Remove NO_TABLE_MOVE. Remove FPU_REVB.
* custom/erc32nfp.cfg: Remove NO_TABLE_MOVE. Remove FPU_REVB.
* custom/leon2.cfg: Remove NO_TABLE_MOVE.
* custom/erc32.cfg: Remove erc32nfp support, GCC272.
* custom/erc32nfp.cfg: Merge in portions from erc32.cfg.
* custom/armulator.cfg: Remove make-target-options.
* custom/erc32.cfg: Remove CONSOLE_USE_INTERRUPTS, SIMSPARC_FAST_IDLE
(now in erc32/configure.ac).
* custom/leon2.cfg: Remove CONSOLE_USE_INTERRUPTS,
SIMSPARC_FAST_IDLE (now in leon2/configure.ac).
Remove CONSOLE_USE_POLLED (Unused).
* custom/mvme167.cfg: Remove CD2401_INT_LEVEL, CD2401_IO_MODE,
CD2401_USE_TERMIOS (now in mvme167/configure.ac).
* custom/mvme162.cfg: Remove references to mvme162lx.
Abandon gcc272. Remove make-target-options.
* custom/mvme162lx.cfg: Add portions formerly in mvme162.cfg.
custom/Cygwin-posix.cfg: Remove -U__STRICT_ANSI__, make-target-options.
custom/FreeBSD-posix.cfg: Remove make-target-options.
custom/erc32.cfg: Remove CONSOLE_USE_POLLED, CONSOLE_USE_INTERRUPTS.
custom/i386ex.cfg: Remove make-target-options.
custom/i960sim.cfg: Remove make-target-options.
custom/mvme2307.cfg: Remove CONSOLE_USE_POLLED, CONSOLE_USE_INTERRUPTS.
custom/rxgen960.cfg: Remove make-target-options, cleanup comments.
custom/score603e.cfg: Remove CONSOLE_USE_POLLED, CONSOLE_USE_INTERRUPTS.
custom/vegaplus.cfg: Remove make-target-options.
* custom/Makefile.am: Modified to reflect addition of files.
* custom/erc32.cfg: Modified to support addition of no-FP ERC32 variant.
* custom/erc32nfp.cfg, custom/leon1.cfg, custom/leon2.cfg: New file.
* custom/erc32.cfg: Add comment on -mno-v8, -mcypress.
* custom/gen68302.cfg: Comment out LIBC_LIB[C|M].
* custom/gen68340.cfg: Comment out LIBC_LIB[C|M].
* custom/gen68360.cfg: Comment out LIBC_LIB[C|M].
* custom/idp.cfg: Comment out LIBC_LIB[C|M].
* custom/mvme162.cfg: Comment out LIBC_LIB[C|M].
* custom/ods68302.cfg: Comment out LIBC_LIB[C|M].
that is yet another multilib-related structual cleanup patch:
* Make RTEMS_TEST_NO_PAUSE a tests/ subpackage specific option.
- Remove RTEMS_TEST_NO_PAUSE from custom/*.cfg, targopts.h and
- Add autoconf macros RTEMS_*_RTEMS_TEST_NO_PAUSE
- Add RTEMS_*_RTEMS_TEST_NO_PAUSE support to sptests/configure.ins
and tmtests/configure.in. These are the only subdirectories which
currently apply RTEMS_TEST_NO_PAUSE.
- Add autoconf-DEFS support to all test subpackages' configure.ins
below tests/. I.e. AC_DEFINES now get explicitly propagated as
preprocessor defines into Makefiles, cf. AM_CPPFLAGS in
tests/*/*.am, instead of using a global config-files.
- Remove NDEBUG from custom/*.cfg.
* AC_DEFINE POSIX_API, ITRON_API and MULTIPROCESSING in
- All other sources now should relay on the values from cpuopts.h
and should not define them themselves.
- Several related changes to many configure.ins
* Bug-fixes to RTEMS_*_RTEMS_DEBUG macros (Actually workarounds to
quoting bugs in autoconf).
* This patch is rather immature and only tested for a small subset
of BSPs (requires the tests to be enabled and therefore takes an
tremendous amount of disc space and time.)
* The patches to *cfg were generated by a script. Expect file
formating changes :)
that is yet another multilib-related structual cleanup patch:
* Make RTEMS_DEBUG a global per-cpu configuration option
* Remove RTEMS_DEBUG from targopts.h
* Add a global --enable-rtems-debug option disabled by default.
* Add RTEMS_DEBUG to cpuopts.h
* Remove all references to RTEMS_DEBUG from custom/*.cfg
* RTEMS_DEBUG is set in c/src/exec/configure.in only
(RTEMS_CHECK_RTEMS_DEBUG) and should be defined in cpuopts.h only.
BSPs should not redefine it, but use the value being provided by
=> With multilibs, users have to choose: Either enable RTEMS_DEBUG
for all BSPs and CPU_MODELs of a cpu or not.
* Only few BSPs had RTEMS_DEBUG enabled, therefore I set the default
* This patch influences the per-BSP building scheme. Existing BSPs
which set RTEMS_DEBUG in their make-target-options rule might have
problems at runtime.
.. a major configuration cleanup
... major enhancement of automake support.
... and it contains a *major* breakthough:
Automake support for libchip and libmisc *LEAF* directories.
To implement this I have used several nasty tricks
* The basical trick is to wrap an old Makefile.in's contents into a
Makefile.am and still continue to use (i.e include) the old
* Replaced each INSTALL_IF_CHANGE and INSTALL_VARIANT with make
* Add a gnu-make ifdef AUTOMAKE to main.cfg to avoid conflicts between
automake and RTEMS make rules
* Replaced each install:: and preinstall:: rule with make dependencies
* Replaced SUB_DIRS with SUBDIRS in all Makefile.ins (Automake
* Removed each manually added autoconf substitution which automake
This is not yet full automake support, because using the temporary
installation directory, preinstallation in general and building variants
are in contradiction to automake's basic working principles ...
... the new Makefile.ams work still somewhat clumsy
... nevertheless they work (quite well).
At first glance this patch is small, but
* it affects the whole configuration system.
* it opens the road to introducing automake to all Makefile.ins
currently not being under automake control.
JOEL> Does this remove or add any files?
Both, all Makefile.ins below libchip and libmisc get replaced with
definitions of CONSOLE_USE_POLLED to be !CONSOLE_USE_INTERRUPTS
instead of ~CONSOLE_USE_INTERRUPTS.
+ interrupt masking correction
+ FPU rev.B workaround
+ minor erc32 related fixes
made no attempt to divide the comments up and place them with just
the appropriate files. Here is an excerpt from Ralf's email:
Changes including comments on changes I made after cycling through
all the targets:
* Added ranlib support. Now all targets use "ranlib" instead of "ar -s"
to build an index for a library. If ranlib isn't detected during
configuration, check if ar -s is working and try "ar -s" instead of
* Removed $(XXX_FOR_TARGET) from make/target.cfg.in, use $(XXX) instead now.
* gcc-target-default.cfg: LINK_XXXX-defines reworked to solve the -l
problem under posix (cf gcc-target-default.cfg)
* rtems-glom replaced by Makefile-rules inside of the wrapup/Makefile.in
that has been using rtems-glom until now.
* Removed CCC and friends in gcc-target-default.cfg, as they have been
breaking CXX support.
* Removed CONFIG.$(TARGET_ARCH).CC lines from several custom/*.cfg
files, because this is now set in custom/default.cfg.
* Added aclocal/ar-s.m4, check whether "ar -s" is working
* Added aclocal/cygwin.m4 and aclocal/exeext.m4.
* Reworked aclocal/canonicalize-tools.m4: Added ar -s check; fixes for
problems when XXX_FOR_TARGET is given via environment variables (didn't
work for gcc until now), adding cygwin check, improved autoconf-cache
* Removed -l from make rule dependencies. LINK_LIBS is now allowed to
contain -L and -l. LINK_OBJS and LINK_FILES must not contain -L or -l.
gcc28 make-exe rules now link using $(LINK_OBJS) $(LINK_LIBS) => Almost
all custom/*.cfg are modified. This is very likely to break something
because of typos or having missed to edit a file.
Open problems, known bugs, things I didn't do:
* custom/p4000.cfg seems to be out of date and requires to be reviewed.
(JRS NOTE: It is subordinate p4650 and p4600 -- both of which build ok
after minor changes.)
* custom/psim.cfg needs to be reviewed, I added some changes to it, I am
(JRS NOTE: psim had a minor problem endif/endef swapped but runs fine.)
* rtems-glom.in can now be removed.
* gcc*.cfg files "make depend" rules don't honor language specific flags
(e.g CXXFLAGS is ignored for *.cc) - Nothing to worry about now, but may
cause problems for hosts/targets not using gcc or rtems-add-ons that use
* AFAIS, the no_bsp BSP can't be build anymore, i.e. configure refused
to configure for it whatever I tried.
* The toplevel and toplevel+1 README files are quite out-dated
* cygwin.m4 isn't of much use for rtems. In most cases (cf.
aclocal/*.m4) it is worked around by directly using $host_os. I think
I'll remove it soon after the next snapshot
* Before release the cygwin patch needs to be tested under cygwin. I may
have broken/missed something (esp. the sed-pattern to convert \\ into /
may be broken).
* You should try to build/run the posix-BSP under solaris - I don't
expect problems, but I am not 100% sure, esp. with regard to ranlib/ar -s.
* You should consider to convert all make/compilers/*.cfg files into
make/compilers/*.cfg.in files and let autoconf generate the *.cfg. This
may help getting rid of some if/then/else statements and help
hard-coding some defines into those files in future and shouldn't
* Not having installed libc.a/libm.a on a host may still break building
rtems, esp. when using -disable-gcc28 as the gcc27-configuration scheme
directly accesses libc.a and libm.a. The problem should not appear when
using gcc28 because it references libc/libm only through -lc and -lm
which may be static or dynamic (I didn't test this).
* shgen is not yet included (I didn't yet have enough time to integrate it).
* I know about a few more configure-probs (esp. cross-checking
+ warn/refuse to configure when --enable-libcdir and
--enable-gcc28 are given.
+ force --enable-libcdir when --disable-gcc28 is given
* Replaced KSHELL with @KSH@ in some shell scripts generated by configure.in.
* Added a dependency to aclocal/*.m4 in the toplevel Makefile => configure
and aclocal.m4 will now be rebuild when any aclocal/*.m4 file is changed
* Some changes to aclocal/gcc-pipe.m4 and aclocal/gcc-specs.m4
* Replaced i[]86-unknown-freebsd2.[] with i[]86-*freebsd2.*
in configure.in, as I suppose there might exist a variety of valid vendors
(2nd field of the name-tripple)
* Disabled override MAKEFLAGS in toplevel Makefile.in - Potential
side-effects are not really clear to me.
* In mvme162.cfg, $(LINK_LIBS) is missing in the CC line in gcc28's make-exe
rule (yet another one I missed to edit). Just append $(LINK_LIBS) to
the "CC" line, like I hopefully did to ALL other custom/*.cfg files.
* the problem with mvme162lx.cfg is a follow-up problem of the
* mvme162/console and idp/console had variables named Buffer which
conflicted with similarly named variables in some tests.
eliminates the need to build the entire application with the
STACK_CHECKER_ON macro defined.