| Commit message (Collapse) | Author | Files | Lines |
|
Adjust various build files. Remove automatic generation of the
c/src/lib/libbsp/*/acinclude.m4 files from bootstrap script.
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
The size of the sample executables without this option were:
text data bss dec hex filename
142464 1648 12112 156224 26240 base_sp.exe
149936 1616 11712 163264 27dc0 hello.exe
78896 1184 8048 88128 15840 minimum.exe
591504 5552 23600 620656 97870 fileio.exe
161440 1728 12224 175392 2ad20 nsecs.exe
210240 2016 12720 224976 36ed0 paranoia.exe
146256 1648 12144 160048 27130 ticker.exe
144464 1664 15552 161680 27790 unlimited.exe
898944 21440 19200 939584 e5640 cxx_iostream.exe
241824 2064 12256 256144 3e890 cdtest.exe
236368 2144 13936 252448 3da20 capture.exe
The size of the sample executables with this option enabled were:
text data bss dec hex filename
134224 1600 12064 147888 241b0 base_sp.exe
140768 1552 11648 153968 25970 hello.exe
70592 1152 7984 79728 13770 minimum.exe
574528 5504 23264 603296 934a0 fileio.exe
154256 1696 12160 168112 290b0 nsecs.exe
201504 1984 12656 216144 34c50 paranoia.exe
138752 1600 12096 152448 25380 ticker.exe
135600 1616 15488 152704 25480 unlimited.exe
218080 2064 11904 232048 38a70 cxx_iostream.exe
225776 2000 12176 239952 3a950 cdtest.exe
225952 2080 13888 241920 3b100 capture.exe
|
|
|
|
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.
|
|
* make/custom/mvme167.cfg: Remove RTEMS_BSP_FAMILY.
|
|
* make/custom/mvme167.cfg: New (relocated from /make/custom).
|
|
PR 1371/bsps
* custom/mvme167.cfg: mvme167 needs to convert ELF -> pure binary RALF.
|
|
* custom/av5282.cfg, custom/csb360.cfg, custom/gen68302.cfg,
custom/gen68340.cfg, custom/gen68360.cfg, custom/mcf5206elite.cfg,
custom/mcf5235.cfg, custom/mrm332.cfg, custom/mvme136.cfg,
custom/mvme147.cfg, custom/mvme162.cfg, custom/mvme162lx.cfg,
custom/mvme167.cfg, custom/ods68302.cfg, custom/sim68000.cfg,
custom/simcpu32.cfg, custom/uC5282.cfg: Change CCFLAGS to use the
-mcpu= option for Coldfires now supported in GCC 4.3.0.
2008-06-10 Matthew Riek <matthew.riek@ibiscomputer.com.au>
* custom/mcf52235.cfg: New.
|
|
* custom/av5282.cfg, custom/bare.cfg, custom/default.cfg,
custom/gba.cfg, custom/gp32.cfg, custom/i386ex.cfg, custom/idp.cfg,
custom/mbx8xx.cfg, custom/mcf5235.cfg, custom/mcp750.cfg,
custom/mrm332.cfg, custom/mtx603e.cfg, custom/mvme136.cfg,
custom/mvme147.cfg, custom/mvme162.cfg, custom/mvme162lx.cfg,
custom/mvme167.cfg, custom/mvme2100.cfg, custom/mvme2307.cfg,
custom/mvme3100.cfg, custom/mvme5500.cfg, custom/nios2_iss.cfg,
custom/pc386.cfg, custom/posix.cfg, custom/score603e.cfg,
custom/sim68000.cfg, custom/simcpu32.cfg, custom/ss555.cfg,
custom/ts_386ex.cfg, custom/uC5282.cfg, custom/virtex.cfg: Switch to
explicit .exe instead of EXEEXT to get it to work.
|
|
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.
|
|
|
|
* custom/av5282.cfg, custom/bare.cfg, custom/dmv152.cfg,
custom/gen405.cfg, custom/gen5200.cfg, custom/gen68302.cfg,
custom/gen68340.cfg, custom/gen68360.cfg, custom/helas403.cfg,
custom/hurricane.cfg, custom/i386ex.cfg, custom/idp.cfg,
custom/mbx8xx.cfg, custom/mcf5206elite.cfg, custom/mcf5235.cfg,
custom/mcp750.cfg, custom/mpc8260ads.cfg, custom/mrm332.cfg,
custom/mtx603e.cfg, custom/mvme136.cfg, custom/mvme147.cfg,
custom/mvme162.cfg, custom/mvme162lx.cfg, custom/mvme167.cfg,
custom/mvme2100.cfg, custom/mvme2307.cfg, custom/mvme5500.cfg,
custom/ods68302.cfg, custom/pc386.cfg, custom/psim.cfg,
custom/rbtx4925.cfg, custom/sim68000.cfg, custom/simcpu32.cfg,
custom/ss555.cfg, custom/ts_386ex.cfg, custom/uC5282.cfg:
CFLAGS_OPTIMIZE_V = -O2.
|
|
|
|
|
|
|
|
|
|
* custom/mvme167.cfg: Remove PRINTK_MINOR, CONSOLE_MINOR (move to
the BSP's configure-script).
Remove BSP_CPPFLAGS (Obsolete).
|
|
* custom/cvme961.cfg: Remove GCC272 support.
* custom/dmv152.cfg: Remove GCC272 support.
* custom/efi332.cfg: Remove GCC272 support.
* custom/efi68k.cfg: Remove GCC272 support.
* custom/eth_comm.cfg: Remove GCC272 support.
* custom/gen405.cfg: Remove GCC272 support.
* custom/gen68302.cfg: Remove GCC272 support.
* custom/gen68340.cfg: Remove GCC272 support.
* custom/gen68360.cfg: Remove GCC272 support.
* custom/genmongoosev.cfg: Remove GCC272 support.
* custom/helas403.cfg: Remove GCC272 support.
* custom/i386ex.cfg: Remove GCC272 support.
* custom/i960sim.cfg: Remove GCC272 support.
* custom/idp.cfg: Remove GCC272 support.
* custom/leon2.cfg: Remove GCC272 support.
* custom/mbx8xx.cfg: Remove GCC272 support.
* custom/mcf5206elite.cfg: Remove GCC272 support.
* custom/mpc8260ads.cfg: Remove GCC272 support.
* custom/mrm332.cfg: Remove GCC272 support.
* custom/mvme136.cfg: Remove GCC272 support.
* custom/mvme147.cfg: Remove GCC272 support.
* custom/mvme167.cfg: Remove GCC272 support.
* custom/ods68302.cfg: Remove GCC272 support.
* custom/p4000.cfg: Remove GCC272 support.
* custom/p4600.cfg: Remove GCC272 support.
* custom/p4650.cfg: Remove GCC272 support.
* custom/pc386.cfg: Remove GCC272 support.
* custom/portsw.cfg: Remove GCC272 support.
* custom/psim.cfg: Remove GCC272 support.
* custom/rxgen960.cfg: Remove GCC272 support.
* custom/score603e.cfg: Remove GCC272 support.
* custom/sim68000.cfg: Remove GCC272 support.
* custom/simhppa.cfg: Remove GCC272 support.
* custom/simsh4.cfg: Remove GCC272 support.
* custom/ts_386ex.cfg: Remove GCC272 support.
|
|
* 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/mbx8xx.cfg, custom/mvme167.cfg: Rewrote use of strip command
to avoid using the apparently broken or deprecated -o argument.
|
|
* custom/mvme167.cfg (CPP_CFLAGS): Corrected to only include
compiler arguments that specify CPU model options.
|
|
* mvme167.cfg: Add specification of printk port, console port
and serial I/O mode. Arrange for the stripped executable to
be copied up the build tree.
|
|
removes warnings from the network.c file and has slight additions
to the configuration file to support Java.
|
|
that is yet another multilib-related structual cleanup patch:
Changes:
* Make RTEMS_TEST_NO_PAUSE a tests/ subpackage specific option.
- Remove RTEMS_TEST_NO_PAUSE from custom/*.cfg, targopts.h and
cpuopts.h.
- Add autoconf macros RTEMS_*_RTEMS_TEST_NO_PAUSE
(aclocal/rtems-test-no-pause.m4).
- 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
exec/configure.in, only.
- 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).
Notes:
* 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:
Changes:
* 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
Notes:
* 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
cpuopts.h.
=> 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
to disabled.
* 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.
|
|
that decouples exec/ for the sh, m68k and i960 from targopts.h.
NOTE: The change to system.h is a hack to enable cpuopts.h
for some targets, but keep using targopts.h for others - I know it
does *not* work for sparc, mips, i386 and ppc. This will have
to be addressed as work continues on multilibing.
|
|
<charles.gauthier@iit.nrc.ca>, and Darlene A. Stewart
<Darlene.Stewart@nrc.ca> to add support for a number of very
significant things:
+ BSPs for many variations on the Motorola MBX8xx board series
+ Cache Manager including initial support for m68040
and PowerPC
+ Rework of mpc8xx libcpu code so all mpc8xx CPUs now use
same code base.
+ Rework of eth_comm BSP to utiltize above.
John reports this works on the 821 and 860
|
|
|
|
|
|
applied. This modified many Makefiles and custom files and makes many more
settings (network, multiprocessing, etc) gnerated by autoconf.
|
|
|
|
FP issues on this target:
The default variants of libc, libm and libgcc assume that a 68881
coprocessor is present. Without the FPSP, any floating point operation,
including printf() with a "%f" format specifier, is likely to cause an
unimplemented instruction exception.
The FPSP works with the default variants of libc, libm and libgcc. It does not
work in conjunction with the msoft-float variants. The paranoia test goes into
an infinite loop at milestone 40. I am guessing that floor() is returning an
incorrect value.
The msoft-float variants of libc, libm and libgcc appear to do floating point
I/O properly. They only failed in paranoia. Offhand, I can't think of why they
would conflict with the FPSP, so I think that there is something wrong with the
msoft-float code. It might be my installation.
Given my experiences, I decided to install the FPSP in bsp_start(), and to link
against the default variants of libc, libm and libgcc. This causes the
executables to increase in size by about 60 KB. The README file and the
mvme167.cfg specify how to remove the FPSP, and how to link against the
msoft-float variants of the libraries. This is not what Eric Norum had done: on
my host, his gen68360_040 port links RTEMS code with the msoft-float variants
of libc and libm, and the default variant of libgcc. In this configuration, the
output of printf() with "%f" is garbage on my target.
|
|
|
|
|
|
|
|
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
handling.
* 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
insecure about.
(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
external packages.
* 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
disturb now.
* 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
--enable-* flags).
+ 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[[3456]]86-unknown-freebsd2.[[12]] with i[[3456]]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.cfg-bug.
* 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.
|
|
|
|
|