| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 a somewhat experimental, multilib-related patch:
Changes:
* Use RTEMS_ENV_RTEMSCPU instead of RTEMS_ENV_RTEMSBSP in
configure.ins below exec/.
At the moment, RTEMS_ENV_RTEMSCPU is more or less an optical change
to emphasize that these subdirectories shall not depend on RTEMS_BSP
than a real behavioral change.
* Add AC_DEFINE_* to several aclocal/*.m4 macros to prepare
autoheader/autoconf generated targopts.h and similiar configuration
headers.
* c/src/configure.in: remove exec from cfg_subdirs if multilibs are
enabled (c/src is build per bsp, exec shall be build per cpu in c/
or from the toplevel in future, when multilibs are enabled.)
Notes:
* This patch should not have any impact on the current building scheme.
* --enable-multilib still does not work.
* running bootstrap from the toplevel directory is required.
CVS: ----------------------------------------------------------------------
CVS: Enter Log. Lines beginning with `CVS:' are removed automatically
CVS:
CVS: Committing in .
CVS:
CVS: Modified Files:
CVS: c/src/tests/libtests/termios/init.c
CVS: ----------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that is part of the multilib/gnu-canonicalization movement:
Changes:
* New m4-macro: aclocal/multilib.am
* Suppress multiprocessing if --enable-multilib is given to
configure
Notes:
For now this patch only suppresses multiprocessing if
--enable-multilib is given to configure and should not have any
other side-effects, ie. it works around a minor issue which prevents
introduction of multilibs in general.
The RTEMS_ENABLE_MULTILIB_MASTER macro is the core part to build
real multilibs, but can not be applied before other multilib related
issues with RTEMS have been solved. (e.g. sptables.h, bsp_specs,
Cygnus/Gnu canonicalization, _RTEMS_version, targopts.h, changing
the installation point/tooldir support, etc.).
|
|
|
|
|
|
|
|
|
| |
<corsepiu@faw.uni-ulm.de> that addresses a couple of
minor configuration issues which popped up when
experimenting with multilibs.
Note: The multigen generated make/custom/bare-*.cfg will still be
non-functional, even after having applied this patch.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
.. 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
*.cfg files.
* Replaced each INSTALL_IF_CHANGE and INSTALL_VARIANT with make
dependencies
* 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
convention)
* Removed each manually added autoconf substitution which automake
performs automatically.
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).
WARNING:
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
Makefile.ams.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The patch below actuallly consists of two patches:
1) moving librpc to c/src/librpc similar to what has been done to librtems++
2) reworked configure scripts, many safety and dependency checks added to
aclocal/*.m4 macros + configuration fixes.
To apply:
mkdir c/src/librpc
mkdir c/src/librpc/src
cp c/src/lib/librpc/*.c c/src/librpc/src
cp c/src/lib/librpc/Makefile.in c/src/librpc/src
mkdir c/src/librpc/include
mkdir c/src/librpc/include/rpc
cp c/src/lib/include/rpc/* c/src/librpc/include/rpc
patch -p1 < ../rtems-rc-19990820-7.diff
rm -rf c/src/lib/librpc
rm -rf c/src/lib/include/rpc
./autogen
The additional checks in aclocal/*m4 macros add rather restrictive, sometimes
unnecessarily restrictive constraints on the sequence of how macros can be
used in a configure.in script. Adding them has let my problems with some more
complicated configuration options vanish. Apparently some macros had not been
in the required order .
----
Now I still get some linking errors for some cpus and bsps, esp when linking
cdtest, but also at other locations:
e.g. this happens for mips64orion/p4600:
# make[5]: Entering directory
`/lfs/poseidon/users/rtems/src/multi/build/mips64orion-rtems/c/p4600/tests/samples/hello'
/opt/rtems/bin/mips64orion-rtems-gcc --pipe -B../../../../../../p4600/lib/
-specs bsp_specs -qrtems -DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3
-mcpu=4600 -G0 -I../../../../../../p4600/lib/include/networking -g -Wall
-ansi -fasm -O4 -fomit-frame-pointer -o o-p4600/hello.exe
o-p4600/init.o ../../../../../../p4600/lib/no-dpmem.rel
../../../../../../p4600/lib/no-event.rel
../../../../../../p4600/lib/no-msg.rel ../../../../../../p4600/lib/no-mp.rel
../../../../../../p4600/lib/no-part.rel
../../../../../../p4600/lib/no-signal.rel
../../../../../../p4600/lib/no-timer.rel
../../../../../../p4600/lib/no-rtmon.rel
/opt/rtems/mips64orion-rtems/lib/libc.a(dtoa.o): In function `_dtoa_r':
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
/opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol
collect2: ld returned 1 exit status
# mips64orion-rtems-gcc -v
Reading specs from /opt/rtems/lib/gcc-lib/mips64orion-rtems/2.95.1/specs
gcc version 2.95.1 19990816 (release)
# mips64orion-rtems-ld -v
GNU ld version 2.9.5 (with BFD 2.9.5)
|
|
|
|
|
| |
applied. This modified many Makefiles and custom files and makes many more
settings (network, multiprocessing, etc) gnerated by autoconf.
|
|
in a previous patch.
|