Commit Graph

54 Commits

Author SHA1 Message Date
Joel Sherrill
01629105c2 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to rename all
.s files to .S in conformance with GNU conventions.  This is a
minor step along the way to supporting automake.
1998-12-14 23:15:38 +00:00
Joel Sherrill
97e2729d1a Added --disable-multiprocessing flag and modified a lot of files to make
it work.
1998-11-23 17:38:09 +00:00
Joel Sherrill
11cfb6f7f6 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
1. Rtems contains some perl scripts that use hard-coded paths to
      /usr/bin/perl or /usr/local/bin/perl I have already fixed these
      problems by adding some checks to configure.in.   While doing this,
      I also cleaned up some more autoconf related problems for generating
      shell scripts.  This patch might seem a bit scary to you, but I am
      quite confident it won't break something (I've been testing it for
      almost a week now, however it might introduce typos for a limited
      number configurations I don't have access to - But it shouldn't be
      a problem for you to test them :-).

   I expect to get this finished tonight, hence you will very likely
   have the patch when you get up tomorrow.

   Changes:

   * Check for PERL and disable all PERL scripts if perl wasn't found.
   * Generate all KSHELL-scripts with autoconf instead of make-script
   * Automatic dependency handling for autoconf generated KSHELL or PERL
     scripts (make/rtems.cfg)

   Notes:
   * this patch contains new files and deletes some other files.
   * The patch is relative to rtems-4.0.0-beta4 with my previous
     rtems-rc-981014-1.diff patch applied.

   Testing:
      I tested it with sh-rtems and posix under linux. Now all targets
      which are touched by this patch and which are not used while building
      for sh-rtems and posix still need to be tested. AFAIS, only the
      sparc/erc32 BSP should be affected by this criterion. And if you
      like to, you should also consider testing it on a Cygwin32 and a
      Solaris host for one arbitrary BSP.
1998-10-14 20:19:30 +00:00
Joel Sherrill
06e326b67f UNIX port now builds and runs cleanly with both C++ support enabled
and disabled.
1998-05-22 12:28:35 +00:00
Joel Sherrill
9d09d13808 Added main() which did not require C++ support. A different main
is used based on whether C++ is enabled or disabled.
1998-05-22 11:03:03 +00:00
Joel Sherrill
0d48220948 Remove --start-group/--end-group pair to support non-GNU ld's. 1998-05-21 16:38:54 +00:00
Joel Sherrill
5c844076a2 Update from Ralf Corsepius. 1998-05-18 14:41:33 +00:00
Joel Sherrill
c719991664 moved tools to bsp directory 1998-04-30 10:46:52 +00:00
Joel Sherrill
008faafd4c Added shared directory. 1998-04-27 14:18:38 +00:00
Joel Sherrill
bd9c3d1e76 Numerous changes which in total greatly reduced the amount of source
code in each BSP's bspstart.c.  These changes were:

  + confdefs.h now knows libio's semaphore requirements
  + shared/main.c now copies Configuration to BSP_Configuration
  + shared/main.c fills in the Cpu_table with default values

This removed the need for rtems_libio_config() and the constant
BSP_LIBIO_MAX_FDS in every BSP.  Plus now the maximum number of open
files can now be set on the gcc command line.
1998-04-15 20:50:31 +00:00
Joel Sherrill
b6394ae434 Transitioned to shared bsp_libc_init() and cleaned up comments. 1998-04-15 15:13:01 +00:00
Joel Sherrill
9b64c2d5f7 Per suggestion from Eric Norum, went from one initial extension set
to multiple.  This lets the stack check extension be installed
at system initialization time and avoids the BSP having to
even know about its existence.
1998-04-15 00:10:03 +00:00
Joel Sherrill
4381e50e1e Ralf Corsepius suggested a way to get rid of UNIX compiler files and use gcc-target-default.cfg 1998-04-14 22:44:49 +00:00
Joel Sherrill
c244a9ee2c Stack checker extension now accounted for in confdefs.h 1998-04-14 21:32:12 +00:00
Joel Sherrill
3b89891244 Now accounts for region used by RTEMS malloc and extension used
by newlib.
1998-04-14 20:54:26 +00:00
Joel Sherrill
8f95b5f67b Moved bsp_postdriver_hook() to a shared file and made it a common
component.
1998-03-30 14:01:19 +00:00
Joel Sherrill
60b791ada1 updated copyright to 1998 1998-02-17 23:46:28 +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
421dfef68e Corrected Linux port for glibc2 1998-01-30 20:59:22 +00:00
Joel Sherrill
2936b425fd Solaris port updates from Chris Johns 1998-01-23 17:45:05 +00:00
Joel Sherrill
cb5bfe40fd Removed CONFIG_DIR and PROJECT_HOME directories. 1998-01-20 19:41:09 +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
ce41c5bb62 Removed warnings. 1997-11-18 22:32:38 +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
f80faebea7 Modified to support the BSP family concept. 1997-08-27 20:33:11 +00:00
Joel Sherrill
3dd837212a Corrected typo 1997-08-04 22:03:03 +00:00
Joel Sherrill
e71ce0712c updated with new license information per Tony Bennett. 1997-04-22 17:47:16 +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
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
634e746544 All RTEMS system call implementation renamed to be __rtems_*. 1997-01-29 00:28:47 +00:00
Joel Sherrill
e6d4b1d086 added initial posix configuration support 1996-05-28 13:13:34 +00:00
Joel Sherrill
1f94ed6bfd Updates from Tony Bennett. 1996-04-22 16:50:17 +00:00
Joel Sherrill
34f3d17b24 Updates from Tony Bennett. rtems_environp removed among other minor things. 1996-04-22 16:49:53 +00:00
Joel Sherrill
8cbbe312b6 Dispersal of internal thread handler resulted in the SYSI task being
only required in a multiprocessor system.  It was replace by the MPCI
Receive Server.  As a result, the CPU Table field for extra stack for
the SYSI task was changed to be extra stack for the MPCI Receive Server.
1996-02-21 14:47:03 +00:00
Joel Sherrill
c64e4ed482 updates from Tony Bennett for PA and UNIX ports 1996-01-15 21:50:28 +00:00
Joel Sherrill
5c491aef41 changes remerged after lost in disk crash -- recovered from snapshot, partially recovered working tree, etc 1995-12-20 15:39:19 +00:00
Joel Sherrill
8bdcfc474f changes remerged after disk crash -- history lost 1995-12-19 20:26:32 +00:00
Joel Sherrill
4aac8187e8 created 1995-12-06 15:47:43 +00:00
Joel Sherrill
97005786d8 SPARC port passes all tests 1995-10-30 21:54:45 +00:00
Joel Sherrill
eb5a7e07df fixed missing CVS IDs 1995-10-06 20:48:38 +00:00
Joel Sherrill
1cefaced31 moved to new development machine and went to gcc 2.7.0 1995-10-06 16:33:30 +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
3a4ae6c210 The word "RTEMS" almost completely removed from the core.
Configuration Table Template file added and all tests
modified to use this.  All gvar.h and conftbl.h files
removed from test directories.

Configuration parameter maximum_devices added.

Core semaphore and mutex handlers added and RTEMS API Semaphore
Manager updated to reflect this.

Initialization sequence changed to invoke API specific initialization
routines.  Initialization tasks table now owned by RTEMS Tasks Manager.

Added user extension for post-switch.

Utilized user extensions to implement API specific functionality
like signal dispatching.

Added extensions to the System Initialization Thread so that an
API can register a function to be invoked while the system
is being initialized.  These are largely equivalent to the
pre-driver and post-driver hooks.

Added the Modules file oar-go32_p5, modified oar-go32, and modified
the file make/custom/go32.cfg to look at an environment varable which
determines what CPU model is being used.

All BSPs updated to reflect named devices and clock driver's IOCTL
used by the Shared Memory Driver.  Also merged clock isr into
main file and removed ckisr.c where possible.

Updated spsize to reflect new and moved variables.

Makefiles for the executive source and include files updated to show
break down of files into Core, RTEMS API, and Neither.

Header and inline files installed into subdirectory based on whether
logically in the Core or a part of the RTEMS API.
1995-09-11 19:35:39 +00:00
Joel Sherrill
b06e68ef1f Numerous miscellaneous features incorporated from Tony Bennett
(tbennett@divnc.com) including the following major additions:

  + variable length messages
  + named devices
  + debug monitor
  + association tables/variables
1995-08-17 19:51:51 +00:00
Joel Sherrill
c1403ef153 Added flush of output on exit. On some UNIX's using the native library
resulted in no output when the output was redirected until this was done.
Redirection is important because runtest redirects test output.

Added support for numerous environment variables which make it easier
to run a multi-node system using a single executable and to tailor
the size of the workspace and heap.
1995-08-11 14:30:27 +00:00
Joel Sherrill
aa9f19454a Initialization of semaphores was incorrect. It did not force
the count to "1" to indicate availability.

Interrupt support was added.

Problem where newlib's errno "overrides" that set by system calls
was addressed.

Fixed bug which resulted in all nodes using the same semaphore although
an array of semaphores was allocated.
1995-08-11 14:27:23 +00:00
Joel Sherrill
0e4c603b8e clean up -- interrupt support is in place 1995-08-11 14:24:44 +00:00
Joel Sherrill
ad3bf6670f Changed order of include files. 1995-08-02 20:01:56 +00:00