Commit Graph

29 Commits

Author SHA1 Message Date
Joel Sherrill
fa21a8439f New files from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. His comments:
* c/src/exec/score/tools/sh - NEW DIRECTORY - contains shgen
    Most of it should be self-explanatory. I am a little bit concerned about
    host-dependent features (getopt, floating point libraries). This
    shouldn't disturb much now, as this tool should be compileable on all
    gnu-based hosts and is only applicable for the sh. But in case somebody
    complains, we may need to add autoconf checks or even restructurize
    parts of rtems (IMO, rtems needs to be restructurized - remember the
    "turning rtems upside down" issue).
1998-07-17 15:17:29 +00:00
Joel Sherrill
98100d275f Monstrous patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 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 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.
1998-06-27 17:09:47 +00:00
Joel Sherrill
9a6994b490 Added freebsd support from Dario Alcocer <alcocer@connectnet.com>. 1998-06-18 15:22:35 +00:00
Joel Sherrill
42dc81e206 Renamed hppa1_1 to hppa1.1 1998-03-23 23:08:10 +00:00
Joel Sherrill
e4829a055d renamed ppc to powerpc 1998-03-23 22:54:55 +00:00
Joel Sherrill
79597c724b Removed use of dc. David Fiddes reported that this is part of the
GNU tool bc which is not always installed under Linux and seldom
present under non-UNIX environments like Win32.
1998-02-27 18:18:47 +00:00
Joel Sherrill
60b791ada1 updated copyright to 1998 1998-02-17 23:46:28 +00:00
Joel Sherrill
818c361b94 Renamed init.o to exinit.o to avoid naming conflicts with tests. 1998-02-17 23:34:15 +00:00
Joel Sherrill
b68e057ebe Fixed to correctly operate on target variants like debug and profile. 1998-02-07 19:56:00 +00:00
Joel Sherrill
5c3511e5cf Big patch form Ralf Corsepius described in this email:
Here is the result of my nightly work to get RTEMS_ROOT=$srcdir working
  with different shells and relative/absolute paths.

  What I did is relatively simple in principle:
  Instead of setting RTEMS_ROOT in configure.in and then let configure
  substitute @RTEMS_ROOT@ inside the Makefiles, I now let each Makefile
  set RTEMS_ROOT from each Makefile's @top_srcdir@ value.

  The difference is subtile, but with enormous side effects:
  - If RTEMS_ROOT is set in configure, then the same single value will be
  propagated to all Makefiles. This breaks using relative paths, as the
  relative path to the root of the source tree is used inside of all
  subdirectory Makefiles.
  - Now each Makefile.in sets RTEMS_ROOT = @top_srcdir@.  top_srcdir  is
  computed individually by configure for each single Makefile.in, hereby
  receiving the correct value, no matter if relative or absolute paths are
  used.

  To get this working, I needed to remove setting RTEMS_ROOT from
  target.cfg.in, because this overrides the value of RTEMS_ROOT from each
  individual Makefile.


  Furthermore, I removed RTEMS_CUSTOM from the Makefiles and replaced all
  "include $(RTEMS_CUSTOM)" directives with"include
  $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP)". Perhaps you don't like this,
  but I think, to have one variable less is clearer and easier to
  understand than having several variables refering to the next one.


  I enclose a small patch to this mail, which
  - fixes the config.h problem (to finally clearify misunderstands)
  - removes assignment/subsitution of RTEMS_ROOT from configure.in
  - contains a workaround for the application Makefile's RTEMS_ROOT
  problem (reported by Eric)
  - removes some unused lines from the toplevel Makefile.in
  - removes assignment of RTEMS_ROOT from make/target.cfg.in
1998-01-30 21:49:51 +00:00
Joel Sherrill
48971e5ed0 Cleaned up a bit. 1998-01-23 17:06:36 +00:00
Joel Sherrill
cb5bfe40fd Removed CONFIG_DIR and PROJECT_HOME directories. 1998-01-20 19:41:09 +00:00
Joel Sherrill
2ab1b3ac52 Now generating this file with autoconf to avoid having to embed so
much target specific information in the script.
1997-12-22 17:28:32 +00:00
Joel Sherrill
674c900f24 Modified a lot of files to take a first cut at supporting building from
any directory in the build tree.  The only variable which must be set
before the command "gmake" is invoked is RTEMS_BSP (e.g. RTEMS_BSP=erc32).
1997-12-10 16:58:00 +00:00
Joel Sherrill
68732ef351 Corrected comment. 1997-11-30 18:35:22 +00:00
Joel Sherrill
98e4ebf594 Fixed typo in the pointer to the license terms. 1997-10-08 15:45:54 +00:00
Joel Sherrill
a2016b9965 Removed include directory at "build" point and the link of this directory
to lib/include.

Went to using a PROJECT_INCLUDE variable.
1997-10-08 14:42:08 +00:00
Joel Sherrill
03f2154e51 headers updated to reflect new style copyright notice as part
of switching to the modified GNU GPL.
1997-04-22 17:20:27 +00:00
Joel Sherrill
c6e895df6e added ifdef around variables to eliminate warnings when cross 1997-04-07 21:22:59 +00:00
Joel Sherrill
254b445071 This set of changes is the build of what was required to convert to
GNU autoconf.  This is the first large step in allowing an RTEMS
user to perform a one-tree build (per crossgcc FAQ) including RTEMS
in the build process.  With this change RTEMS is configured in
built in the same style as the GNU tools, yet retains the basic
structure of its traditional Makefiles (ala Tony Bennett).
Jiri Gaisler (jgais@wd.estec.esa.nl) deserves (and received)
a big thank you for doing this.

There are still issues to be resolved but as of this commit, all target
which can be built on a linux host have been using a modified version
of the source Jiri submitted.  This source was merged and most targets
built in the tree before this commit.

There are some issues which remain to be resolved but they are primarily
related to host OS dependencies, script issues, the use of gawk
for hack_specs, and the dependence on gcc snapshots.  These will
be resolved.
1997-04-01 23:07:52 +00:00
Joel Sherrill
a5f56a4398 *** empty log message *** 1996-05-23 15:35:32 +00:00
Joel Sherrill
8389628c1b updates from Tony Bennett 1996-04-22 16:53:46 +00:00
Joel Sherrill
76b6fd0cba minor changes so it would compile in a cross environment 1995-12-05 15:28:21 +00:00
Joel Sherrill
11290355c9 all targets compile .. tony's patches in place 1995-09-29 17:19:16 +00:00
Joel Sherrill
37f4c2d99f Modified UNIX simulator port so all references to native unix
stuff is in the executive source proper in the file cpu.c.  This
should help avoid conflicts between RTEMS POSIX files and UNIX files.
1995-09-27 20:53:58 +00:00
Joel Sherrill
b3ac6a8dfe Initial attempt at building HP PA-RISC using Solaris hosted tools.
Changed back to Newlib for Solaris UNIX simulator.
1995-09-12 19:45:42 +00:00
Joel Sherrill
63edbb3fbc Fixed missing RCS Ids 1995-08-22 16:57:18 +00:00
Joel Sherrill
88d594a3d5 Fully tested on all in-house targets 1995-05-24 21:39:42 +00:00
Joel Sherrill
ac7d5ef06a Initial revision 1995-05-11 17:39:37 +00:00