* configure.ac: Add check for weak function attribute.
Remove AM_CONDITIONAL([RTEMS_LIBSHELL].
Add AM_CONDITIONAL(LIBSHELL), AM_CONDITIONAL(LIBSERDBG).
* capture/Makefile.am: Use *.a instead of *-tmp.a.
* cpuuse/Makefile.am: Use *.a instead of *-tmp.a.
* devnull/Makefile.am: Use *.a instead of *-tmp.a.
* dummy/Makefile.am: Use *.a instead of *-tmp.a.
* dumpbuf/Makefile.am: Use *.a instead of *-tmp.a.
* monitor/Makefile.am: Use *.a instead of *-tmp.a.
* mw-fb/Makefile.am: Use *.a instead of *-tmp.a.
* rtmonuse/Makefile.am: Use *.a instead of *-tmp.a.
* serdbg/Makefile.am: Use *.a instead of *-tmp.a.
Build iff LIBSERDBG is true.
* shell/Makefile.am: Use *.a instead of *-tmp.a.
Build iff LIBSHELL is true.
* stackchk/Makefile.am: Use *.a instead of *-tmp.a.
* untar/Makefile.am: Use *.a instead of *-tmp.a.
* wrapup/Makefile.am: Reflect changes above.
* capture/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* cpuuse/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* devnull/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* dummy/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* dumpbuf/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* monitor/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* mw-fb/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* rtmonuse/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* serdbg/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* shell/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* stackchk/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* untar/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* wrapup/Makefile.am: Don't include @RTEMS_BSP@.cfg.
* capture/Makefile.am: Use .$(OBJEXT) instead of .o.
* cpuuse/Makefile.am: Use .$(OBJEXT) instead of .o.
* devnull/Makefile.am: Use .$(OBJEXT) instead of .o.
* dummy/Makefile.am: Use .$(OBJEXT) instead of .o.
* dumpbuf/Makefile.am: Use .$(OBJEXT) instead of .o.
* monitor/Makefile.am: Use .$(OBJEXT) instead of .o.
* mw-fb/Makefile.am: Use .$(OBJEXT) instead of .o.
* rtmonuse/Makefile.am: Use .$(OBJEXT) instead of .o.
* serdbg/Makefile.am: Use .$(OBJEXT) instead of .o.
* shell/Makefile.am: Use .$(OBJEXT) instead of .o.
* stackchk/Makefile.am: Use .$(OBJEXT) instead of .o.
* untar/Makefile.am: Use .$(OBJEXT) instead of .o.
* capture/capture-cli.c, cpuuse/cpuuse.c, monitor/mon-monitor.c,
monitor/mon-object.c, monitor/monitor.h: Corrected use of
_Objects_Information_table now that it is a two dimensional
array based upon API and class. In addition, in the monitor,
corrected an error which occured when a target has 64 bit pointers.
* monitor/mon-command.c: Per PR192 the RTEMS monitor makes everything
lowercase. The capture engine need to set triggers or watches on task
with uppercase names.
Also stop the monitor repeating command when enter is pressed.
* untar/Makefile.am: Use 'PREINSTALL_FILES ='.
* monitor/Makefile.am: Use 'PREINSTALL_FILES ='.
* shell/Makefile.am: Use 'PREINSTALL_FILES ='.
* devnull/Makefile.am: Use 'PREINSTALL_FILES ='.
* dumpbuf/Makefile.am: Use 'PREINSTALL_FILES ='.
* mw-fb/Makefile.am: Use 'PREINSTALL_FILES ='.
* stackchk/Makefile.am: Use 'PREINSTALL_FILES ='.
* rtmonuse/Makefile.am: Use 'PREINSTALL_FILES ='.
* cpuuse/Makefile.am: Use 'PREINSTALL_FILES ='.
* rootfs/Makefile.am: Use 'PREINSTALL_FILES ='.
* monitor/mon-command.c: Add support for partial command matching.
The monitor used to have this functionality before it was overhauled
to support addition of user commands.
* monitor/mon-prmisc.c: Correct print line.
* shell/Makefile.am: Added new file telnetd.c.
* shell/telnetd.c, shell/telnetd.h, shell/pty.c: New files.
* shell/shell.c, shell/cmds.c, shell/shell.h: Numerous improvments:
- The shell_init has a new parameter 'forever' because in
/dev/console you need that this process runs forever but in
tcp/ip not. (respawn?)
- A new task for every session opened trought tcp/ip telnet client.
(the chargen,daytime and more are possible of implementation but
I ask me if they are necesary)
- Exit from the session delete the task and when the client fails too.
- More cmds have been implemented. (very reduced version of these)
umask, chmod, id, whoami, rm, cat, ...
- A reduced line edit has been implemented.
Ctrl-C abort the input,
Ctrl-d in the first position gives EOF (logout).
'\b' and DEL makes the rubout operation.
I think that readline() for every session spents a lot of resources.
a BSP (c4xsim) supporting the simulator included with gdb. This port
was done by Joel Sherrill and Jennifer Averett of OAR Corporation.
Also included with this port is a space/time optimization to eliminate
FP context switch management on CPUs without hardware or software FP.
An issue with this port was that sizeof(unsigned32) = sizeof(unsigned8)
on this CPU. This required addressing alignment checks and assumptions
as well as fixing code that assumed sizeof(unsigned32) == 4.
that breaks when the target has 16 bit address space. One of the H8
multilibs is a 16-bit address space CPU. When a real attempt is
made to support this CPU model, the code that assumes an address
is 32 bits will have to change. This constant is probably not
flagging all impacted code.
to:
I have also added the ability to register and unregister commands. This
allows me to create a set of monitor commands for the network stack plus
basic memory dump/patch commands (needs a working probe interface). I
will also look at a basic ls/cd/rm/mv/cp command set at some stage.
I have been thinking about changing the monitor in the future to more
like a light weight RTEMS shell, `eshell' for embedded shell. This is a
story for another day but is a process or getting the commands to map to
the filesystem (eg, major=commands, minor=command) and supporting an
environment. The filesystem provide a structure for the commands.
that contains:
* Removes remaining (now illegal) references to $(SRC) from a couple of
Makefile.ams
* Removes duplicate AC_CONFIG_SUBDIRS macro from c/configure.in
* Moves ENABLE_LIBCDIR into RTEMS_PROG_C[C|XX]_FOR_TARGET (hides LIBCDIR
from most configure scripts, i.e. LIBCDIR becomes less visible)
* Adds RTEMS_PROG_C[C|XX]_FOR_TARGET and RTEMS_CANONICALIZE_TOOLS to
libbsp/*/configure.ins (A minor bug in previous implementations, which
only has an impact when switching to GNU/Cygnus canonicalization)
* Cleans up several bogus comments.
* Removes MKLIB
* Switches the version number to 4.5.0 (for testing version number
handling)