4.104.114.84.95
Last change
on this file since cc8a388a was
98100d2,
checked in by Joel Sherrill <joel.sherrill@…>, on 06/27/98 at 17:09:47
|
Monstrous patch from Ralf Corsepius <corsepiu@…>. I have
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 i3456?86-unknown-freebsd2.12? with i3456?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.
|
-
Property mode set to
100644
|
File size:
1.4 KB
|
Rev | Line | |
---|
[bffb938] | 1 | # |
---|
[aa8a8c72] | 2 | # $Id$ |
---|
[bffb938] | 3 | # |
---|
[5c3511e] | 4 | # Target specific settings. |
---|
[bffb938] | 5 | # |
---|
| 6 | |
---|
| 7 | prefix = @prefix@ |
---|
| 8 | |
---|
| 9 | CFLAGS = @CFLAGS@ |
---|
| 10 | CPPFLAGS = @CPPFLAGS@ |
---|
| 11 | DEFS = @DEFS@ |
---|
| 12 | LDFLAGS = |
---|
| 13 | LIBS = @LIBS@ |
---|
[aa8a8c72] | 14 | CC_FOR_BUILD = @CC@ |
---|
[bffb938] | 15 | |
---|
[98100d2] | 16 | CC = @CC_FOR_TARGET@ |
---|
| 17 | AS = @AS_FOR_TARGET@ |
---|
| 18 | AR = @AR_FOR_TARGET@ |
---|
| 19 | NM = @NM_FOR_TARGET@ |
---|
| 20 | LD = @LD_FOR_TARGET@ |
---|
| 21 | SIZE = @SIZE_FOR_TARGET@ |
---|
| 22 | OBJCOPY = @OBJCOPY_FOR_TARGET@ |
---|
| 23 | RANLIB = @RANLIB_FOR_TARGET@ |
---|
[bffb938] | 24 | |
---|
[98100d2] | 25 | CXX = @CXX_FOR_TARGET@ |
---|
[aa8a8c72] | 26 | |
---|
[bffb938] | 27 | export CC |
---|
| 28 | export AS |
---|
| 29 | export LD |
---|
| 30 | export NM |
---|
| 31 | export AR |
---|
| 32 | export SIZE |
---|
| 33 | export OBJCOPY |
---|
| 34 | |
---|
[98100d2] | 35 | export CXX |
---|
| 36 | |
---|
[60fa630] | 37 | RTEMS_CROSS_TARGET=@rtems_cv_prog_cc_cross@ |
---|
| 38 | |
---|
[bffb938] | 39 | RTEMS_HOST = @RTEMS_HOST@ |
---|
| 40 | RTEMS_USE_OWN_PDIR = @RTEMS_USE_OWN_PDIR@ |
---|
| 41 | RTEMS_HAS_POSIX_API = @RTEMS_HAS_POSIX_API@ |
---|
| 42 | RTEMS_HAS_KA9Q = @RTEMS_HAS_KA9Q@ |
---|
| 43 | RTEMS_HAS_CPLUSPLUS = @RTEMS_HAS_CPLUSPLUS@ |
---|
| 44 | RTEMS_USE_MACROS = @RTEMS_USE_MACROS@ |
---|
| 45 | RTEMS_USE_GCC272 = @RTEMS_USE_GCC272@ |
---|
| 46 | RTEMS_LIBC_DIR = @RTEMS_LIBC_DIR@ |
---|
[bd5e4f3b] | 47 | RTEMS_CPU = @target_cpu@ |
---|
[6fa1289] | 48 | |
---|
| 49 | # the following are only used for the bare bsp |
---|
| 50 | BARE_CPU_MODEL = @BARE_CPU_MODEL@ |
---|
| 51 | BARE_CPU_CFLAGS = @BARE_CPU_CFLAGS@ |
---|
[bd5e4f3b] | 52 | |
---|
[bffb938] | 53 | INSTALL=$(PROJECT_ROOT)/$(RTEMS_BSP)/build-tools/install-if-change |
---|
| 54 | XCFLAGS=$(CFLAGS_FOR_TARGET) |
---|
| 55 | |
---|
| 56 | export RTEMS_BSP |
---|
| 57 | export RTEMS_CUSTOM |
---|
| 58 | export PROJECT_ROOT |
---|
[aa8a8c72] | 59 | |
---|
| 60 | # List (possibly empty) of required managers |
---|
| 61 | # We require: |
---|
| 62 | # region -- used by lib/libcsupport for malloc() |
---|
| 63 | # ext -- used by libc for libc reentrancy hooks |
---|
| 64 | |
---|
| 65 | MANAGERS_REQUIRED=region ext sem |
---|
| 66 | |
---|
| 67 | # Create a RTEMS executable based on MANAGERS which was set in |
---|
| 68 | # app's Makefile |
---|
| 69 | |
---|
[aa24c61] | 70 | MANAGERS_NOT_WANTED=$(filter-out $(MANAGERS) \ |
---|
| 71 | $(MANAGERS_REQUIRED), $(MANAGER_LIST)) |
---|
[aa8a8c72] | 72 | |
---|
Note: See
TracBrowser
for help on using the repository browser.