Commit Graph

99 Commits

Author SHA1 Message Date
Joel Sherrill
7a86dc4404 Improved missing directory message. 1998-09-24 20:30:09 +00:00
Joel Sherrill
8a496e462e Patch from Aleksey (Quality Quorum <qqi@world.std.com>):
1. Finally fixes raw interrupts for pc386
    2. Makes some minor cleanup in console and startup
    3. Makes rtems_termios_dequeue_characters() to return count of
       outstanding chars - it allows to simplify console isrs a little
       bit.
    4. pc386 uart modified to be friendlier to termios parameter changes,
       to have minor performance improvement and to take advantage of
       of above termios modification.
1998-09-23 13:20:34 +00:00
Joel Sherrill
bfcf4cb3db Updates to tree to make it build with all desired changes and the conversion
of the SONIC driver to the new FreeBSD stack instead of KA9Q.
1998-09-11 23:35:09 +00:00
Joel Sherrill
b67245d03b Patch from Chris Johns <ccj@acm.org>:
I have managed to build the bsp ods68302 and the rtti test case I made
    with egcs-1.1b and binutils-2.9.1.

    I have built our C++ application and got no link errors so it looks like
    this is now working. I am yet to test the code but getting the thing to
    link was the problem.

    Please find a patch attached which removes the -fno-rtti option.
1998-09-10 12:31:27 +00:00
Joel Sherrill
dffa3046d2 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
The patch (rtems-rc-980821.diff) I had sent recently to fix the "make
    install" problem in rtems-980821/make/ still contained a bug (Thanks to
    Eric N. for reporting it).

    The patch enclosed to this mail is a corrected version of this patch,
    which finally should fix this problem.
1998-08-24 14:44:54 +00:00
Joel Sherrill
cce81a748f A patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
Here is another patch to hopefully enhance rtems' configuration.

    Motivation: Try to support other c-compilers besides gcc (I tried to
    build rtems under Solaris using sun's WSPro c-compiler).

    Here is a couple of small patches concerning the host compiler
    configuration, which fix/work-around the worst problems when using sun's
    WSPro c-compiler.

    Changes:
        * Replaced make/compilers/gcc.cfg with make/compilers/gcc.cfg.in, ie.
          gcc.cfg is generated by configure now.
        * Removed a line containing a hard-coded "gcc" from gcc.cfg (BUG-fix).
        * Add -g to host compiler flags only if configure reported -g to work
        * Add -Wall to host compiler flags only if configure reported that the
          host compiler is gcc (WSPro's cc chokes on -Wall).
        * Some modifications to make/Makefile.in
        * Adapted make/custom/default.cfg to the new location of gcc.cfg

    BTW, gcc.cfg/gcc.cfg.in seems to be full of unused code (DEBUG-VARIANTS
    etc.) which deserves to be cleaned up, IMO.

    IMO, a similar patch should be applied to gcc-target-default.cfg
1998-08-21 17:43:22 +00:00
Joel Sherrill
28e7d7faed Patches from Eric Norum 1998-08-20 22:04:22 +00:00
Joel Sherrill
0280cb66f5 FreeBSD stack compiles for the first time (except libc/strsep.c) 1998-08-20 14:39:09 +00:00
Joel Sherrill
2d7d605fdf Patch from Aleksey <qqi@world.std.com>:
It fixes netboot build problem, KA9Q configuration
    for pc386, some compiler wardning, it also removed some stuff
    ifdef'ed with '#if 0'.
1998-08-19 14:41:23 +00:00
Joel Sherrill
06fa582130 Patches from Ralf Corsepius <corsepiu@faw.uni-ulm.de> and myself to
make solaris target buildable.

    > 1.  The ipc check fails since solaris does not define union semun.
    > The unix port code actually defines this type itself on solaris.  Doing
    > the same thing lets it get configured.  Then...

    > 2.  It looks like BSDINSTALL is not defined properly.

    BSDINSTALL is defined in make/host.cfg.in as
    BSDINSTALL=@INSTALL@

    @INSTALL@ is generated by autoconf's standard macro AC_PROG_INSTALL, which
    is widely used in almost any autoconf/automake configured package. In case
    there is really something wrong with it, then it must be considered a bug
    in autoconf.

    I can see a doubious fragment in AC_PROG_INSTALL, which is used when no
    appropriate bsd-install is found.

Finally Ralf saw a problem with the find on solaris which I also saw and
fixed.
1998-08-19 12:56:20 +00:00
Joel Sherrill
b93a1ab9ff Cleaned up the ka9q definition. 1998-08-19 12:42:35 +00:00
Joel Sherrill
0e3c009625 changed load address 1998-08-05 15:44:09 +00:00
Joel Sherrill
8c6e195ae3 Patch from David Fiddes <D.J.Fiddes@hw.ac.uk> to make ASFLAGS include the
CPU_ASFLAGS.
1998-08-01 14:41:45 +00:00
Joel Sherrill
032c100ec2 Added HAS_RTC and enabled KA9Q. 1998-07-30 15:56:59 +00:00
Joel Sherrill
30cde042bb Added missing parts of patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. 1998-07-28 16:50:14 +00:00
Joel Sherrill
db29826d0f Switching console interrupts on and off as we test. 1998-07-25 16:20:57 +00:00
Joel Sherrill
dbab462feb Patch from Eric Valette <valette@crf.canon.fr> and Emmanuel Raguet
<raguet@crf.canon.fr> to make their patches work together.
1998-07-24 16:09:51 +00:00
Joel Sherrill
dbaf51a44b Patch from Emmanuel Raguet <raguet@crf.canon.fr>:
Here is a patch for KA9Q stack.

    This patch contains an Ethernet Driver for Western Digital,
    some fixes for the UDP and TCP protocols (for endian conversion)
    and some little programs which allow the test of UDP and TCP
    sockets via Ethernet.

    I have tested that on an Intel machine. If someone can test it
    on a big-endian machine, ...
1998-07-23 22:13:10 +00:00
Joel Sherrill
f95d2b53f2 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. Comments:
* Added support for bsd "install" ($(BSDINSTALL)) to host.cfg.in, i.e.
    the standard "install" program that most packages (including automake)
    use. In Makefiles outside of rtems, "install" normally is referenced by
    $(INSTALL), but rtems already uses $(INSTALL) for install-if-change,
    hence I used $(BSDINSTALL) instead to keep up backward compatibility.

    * Removed references to @GREP@ etc. from host.cfg.in, as configure.in
    doesn't check for them (Minor cleanup).

    * Added installation flags INST*FLAGS to host.cfg.in, which should
    replace -m XXXX flags for installation calls.

    *Changes to gcc.cfg to enable it to build host programs from multiple
    sources files.
    Should not disturb existing sources, but neccessary.

    * There was a not-so-minor bug in the configuration files: "make
    install" and "make debug_install" don't work in all subdirectories!! I
    tried to fix this by adding "install" to MTARGETS in main.cfg, which
    seems to solve most of the problems. But there still seem to be rare (?)
    cases where "make debug_install" still seems to have problems.

    * Changes to many host related tool-Makefiles to demonstrate the
    abilities of INST*FLAGS, BSDINSTALL and the new rules in gcc.cfg.
    ..of cause ... but BSDINSTALL is THE standard method to install files
    in most program packages besides rtems. This part of the patch fixes
    some minor protection setting problems, but doesn't support
    TARGET_VARIANTS

    NOTE:
    I hope you will like the BSDINSTALL, INST*FLAGS stuff. It is a step to
    get rid of "install-if-change" and to rely on a more standard
    installation procedure. If you don't like BSDINSTALL, removing it from
    the patch isn't  difficult-  just grep for BSDINSTALL and replace
    BSDINSTALL with INSTALL or MKDIR.


    FINALLY:
    I still have another patch pending (well, not a complete patch yet, it's
    a partial patch to demonstrate the principle), which adds automatic
    rebuilding of files generated by autoconf/configure. At the moment I
    don't dare to submit it, because integrating this patch would require to
    modify all Makefile.ins because we'd need to add a new "include " line
    to each Makefile.in.
1998-07-17 15:49:12 +00:00
Joel Sherrill
9305e52a18 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
Changes to make/custom/gensh1.cfg. Needed for shgen support
1998-07-17 15:18:08 +00:00
Joel Sherrill
25e3f9a1c6 Switched CONSOLE_USE_INTERRUPTS to "1" so console would use interrupts.
Switched PPC_USE_SPRG to "0" so RTEMS use of sprg would not conflict with
any possible sprg usage by the DY-4 ROM monitor.
1998-07-15 13:59:36 +00:00
Joel Sherrill
5b8c1b7041 Yet another EXEEXT patch. This one is from Ralf Corsepius
<corsepiu@faw.uni-ulm.de> and his comments are below:

  Joel, obviously you did apply my previous patch to
  gcc-target-default.cfg -- This should have been gcc.cfg
  (gcc-target-default.cfg should NOT contain any EXEEXT).
1998-07-11 14:23:53 +00:00
Joel Sherrill
cc8a388aac Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. Comments:
> It seems that rules for %{EXEEXT} don't exist in gcc-target-default.cfg

    No, gcc-target-default.cfg is used to compile executables for the target
    only, not for the host.

    EXEEXT may only be used for programs to be run on the host.

    > What should I add please?

    This was a bug in my initial configuration patch to rtems-980616. A
    correction to this patch I had sent to Joel at 26.06.98 doesn't seem to
    have made it into the snapshot.

    Please find attached the patch I had sent to Joel, hopefully this patch
    fixes this problem.
1998-07-10 14:13:59 +00:00
Joel Sherrill
d7d51376cb Now strip elf executables so they are much smaller and quicker to
read from and write to a floppy.
1998-07-09 18:52:07 +00:00
Joel Sherrill
132f19405b Initial submission of gen68340 BSP (should run on a 68349) from
Geoffroy Montel <g_montel@yahoo.com>.
1998-07-01 22:03:20 +00:00
Joel Sherrill
4f0fc115d9 Correction from Aleksey Romanov <qqi@world.std.com> to finish off his patch.
I had trouble merging his original patch and this corrected a reject.
1998-06-29 17:52:43 +00:00
Joel Sherrill
5d18fb057a PC386 BSP enhancements from Aleksey Romanov (Quality Quorum
<qqi@world.std.com>).   Unfortunately after merging these,
the pc386 will not boot using grub for for.  It still does not
work using netboot for me.  Here is his summary of changes:


  rtems/c/src/lib/libbsp/i386/pc386/Makefile.in
  	Added support for new sub-directory

  rtems/c/src/lib/libbsp/i386/pc386/bsp_specs
  	Made possible to build COFF image

  rtems/c/src/lib/libbsp/i386/pc386/console/console.c
  	Added support for serial consoles, selectable by patching
  	binary image, added __assert(), use _IBMPC_inch_sleep()
  	instaed of _IMBPC_inch()

  rtems/c/src/lib/libbsp/i386/pc386/console/inch.c
  	Added _IMBPC_inch_sleep()

  rtems/c/src/lib/libbsp/i386/pc386/console/outch.c
  	Oops - just formatting

  rtems/c/src/lib/libbsp/i386/pc386/include/Makefile.in
  	Added support for new files

  rtems/c/src/lib/libbsp/i386/pc386/include/bsp.h
  	Added support for new features

  rtems/c/src/lib/libbsp/i386/pc386/include/pc386uart.h
  	New file: definitions for serial ports

  rtems/c/src/lib/libbsp/i386/pc386/include/pcibios.h
  	New file: definitions for PCI BIOS

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/Makefile.in
  	New file: makefile in new directory

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/i386-stub-glue.c
  	New file: i386-stub interface

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/i386-stub.c
  	New file: i386-stub itself

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/pc386uart.c
  	New file: serial ports

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/pcibios.c
  	New file: PCI BIOS support

  rtems/c/src/lib/libbsp/i386/pc386/start/start.s
  	Commented out DEBUG_EARLY stuff, everything is working fine

  rtems/c/src/lib/libbsp/i386/pc386/start/start16.s
  	Cleaned up

  rtems/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
  	Added call to console_resereve_resources

  rtems/c/src/lib/libbsp/i386/pc386/startup/exit.c
  	Added support for serial console

  rtems/c/src/lib/libbsp/i386/pc386/startup/ldsegs.s
  	Fixed typo in comments

  rtems/c/src/lib/libbsp/i386/pc386/tools/Makefile.in
  	Changed to reflect cnages in code

  rtems/c/src/lib/libbsp/i386/pc386/tools/bin2boot.c
  	Trivialized, problem - I do not know how to make patch
  	remove obsolete files - there are a lot of them there

  rtems/c/src/lib/libbsp/i386/pc386/tools/binpatch.c
  	New file: utility to do binary patches

  rtems/c/src/lib/libbsp/i386/pc386/wrapup/Makefile.in
  	Added support for new directory

  rtems/make/custom/pc386.cfg
  	Add COFF image building
1998-06-27 18:51:49 +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
43b78f15ae Added definition of RTEMS__mcpu32p__ per patch from Robin Kirkham. 1998-06-25 16:21:07 +00:00
Joel Sherrill
8ed1f8d0b8 New file from Dario Alcocer <alcocer@connectnet.com>. 1998-06-18 19:05:08 +00:00
Joel Sherrill
e5727f3921 Added PPC_USE_DATA_CACHE. 1998-06-13 10:05:15 +00:00
Joel Sherrill
9456087368 Added rule for .cxx and .cpp per suggestion from Geoffroy Montel
<g_montel@yahoo.com>.
1998-06-09 14:21:21 +00:00
Joel Sherrill
1ce50e0e50 Changed spacing 1998-06-03 18:40:21 +00:00
Joel Sherrill
3ac5966643 Changed BSP name to posix. 1998-06-03 18:40:10 +00:00
Joel Sherrill
b938d3d43b Changed ppc to PowerPC in comments. 1998-06-03 18:39:53 +00:00
Joel Sherrill
dc104a4039 Updated to current source and removed warnings. 1998-05-30 11:46:21 +00:00
Joel Sherrill
9c559accc0 New file -- from rtems-LM-980406 based on a 12/97 RTEMS snapshot. 1998-05-30 10:17:57 +00:00
Joel Sherrill
27291bcc55 Changed invocation of bin2boot to match gcc 2.8 rule. 1998-05-27 22:07:40 +00:00
Joel Sherrill
c2c9c7e58f Added names for C++ compilers. 1998-05-27 19:26:09 +00:00
Joel Sherrill
cdf6fcbccb Now uses BSP specific configure variables and compiles for i486 and m68k. 1998-05-22 12:30:19 +00:00
Joel Sherrill
6fa12899c4 Renamed bare BSP specific options to make the dependency obvious. 1998-05-22 12:29:13 +00:00
Joel Sherrill
bd5e4f3baf Added bare bsp from Chris Johns <cjohns@plessey.com.au>. 1998-05-21 18:26:58 +00:00
Joel Sherrill
1e9c9d4643 Per patch from Ralf Corsepius removed redundant lines. 1998-05-21 16:41:56 +00:00
Joel Sherrill
dd84f129c8 Removed undesirable space in TARGET_ARCH assignment line.
Cleaned up command line macro definitions.

Per patch from Ralf Corsepius UNIX ports always needs C++ for rtems-ctor.cc.
1998-05-21 16:41:40 +00:00
Joel Sherrill
d494eeb429 Per patch from Ralf Corsepius UNIX ports always needs C++ for rtems-ctor.cc. 1998-05-21 16:40:46 +00:00
Joel Sherrill
17a8d60365 Some patches in place from Brian Stevens which help the Solaris port
build.  It does not link successfully for him.  It does not compile
for me locally.
1998-05-20 17:02:29 +00:00
Joel Sherrill
7aa10b005e Copied gcc 2.7.2 style make-exe rule to gcc 2.8 conditional. This
lets the makefile work in both cases.
1998-05-20 17:01:39 +00:00
Joel Sherrill
5dd4212fec Changed CPP rule per patch from Ralf Corsepius. 1998-05-20 17:01:04 +00:00
Joel Sherrill
ca0bafa734 Added much stuff formerly in multiple compiler files. 1998-05-18 16:40:13 +00:00
Joel Sherrill
0500c342e1 Added conditional around TARGET_ARCH to prevent accidental overrides. 1998-05-18 16:39:49 +00:00