272 Commits

Author SHA1 Message Date
Chris Johns
fdb1fe685a linkers: Add base image symbol to ELF object file generation.
This change adds support to the rtems-syms code to generate a suitable
ELF object you can link to the base image kernel in the embed mode or
you can load with the run-time load mode.

The change fixes a bug in the framework where local ELF symbols
were being placed in the external symbol table. The external
symbol table has been removed and a global, weak and local set
of tables is now provided as this is more aligned with the ELF
format.
2014-10-30 17:55:18 +11:00
Chris Johns
aac294948c linkers: Add kernel symbol support.
The rtems-sym tool has been changed from a basic map tool to now
provide an object file in the specific architecture containing
the symbols in the RTEMS kernel. It can still generate a map.

The object can be embedded or loaded. It cannot be both.
2014-10-28 01:14:02 -07:00
Chris Johns
3fd45d35eb toolkit: Fix the map formatting. 2014-10-28 01:13:47 -07:00
Chris Johns
df7fd269ad toolkit: Update the comment. 2014-10-28 01:13:19 -07:00
Hesham ALMatary
23bbbfdb6f Add new OpenRISC/or1ksim BSP script using qemu 2014-09-29 15:00:47 -05:00
Chris Johns
6ae559c96b rtems-tld: Make printk the default generator. 2014-09-22 08:23:39 +10:00
Chris Johns
5025439f9d rtems-tld: Add config options, fix void args, and SCore traces. 2014-09-21 14:24:37 +10:00
Chris Johns
149a8a6361 rtems-tld: Remove forced trace message. 2014-09-21 08:50:56 +10:00
Chris Johns
435d879bb6 rtk: Build fastlz into the rld library.
Do not build as an object per program.
2014-09-13 12:26:45 +10:00
Chris Johns
73eb48a045 rtk: Fix buffer leak in rld::path::abs_path. 2014-09-13 12:20:19 +10:00
Chris Johns
87e0e76be5 Refactor code into the RTEMS Toolkit. 2014-09-13 12:09:16 +10:00
Chris Johns
749ddf1ed5 waf: Include waf in the souce tree and updated README on building.
Add support to build all parts of The RTEMS Tools project.
2014-09-13 10:47:07 +10:00
Chris Johns
543a4d1e17 Merge branch 'git://git.rtems.org/chrisj/rtl-host.git' to linkers.
This merge brings the rtl-hosts.git personal repo into the RTEMS Tools
project.
2014-09-13 08:49:31 +10:00
Chris Johns
e0b8975853 Remove invalid file that was added. 2014-09-13 08:48:17 +10:00
Chris Johns
7168ab3da5 rtems-tld: Add a printk generator. 2014-09-10 13:10:45 +10:00
Chris Johns
5afb2b8d5b rtems-tld: Fix warnings in the generated code. 2014-09-10 13:10:20 +10:00
Chris Johns
2d5de2e120 Fix the error message. 2014-09-10 11:16:26 +10:00
Chris Johns
67369b148b Fix the tempfile output code to handle line breaks better. 2014-09-10 11:15:29 +10:00
Chris Johns
30a7f069e7 Make the verbose take the level and return the level if valid.
This makes the verbose a single and removes the need to have the
logic of the test in the code.
2014-09-10 11:14:06 +10:00
Chris Johns
b7ad4a2431 linkers: If no RTEMS path is provied see if the prefix can be used. 2014-09-09 08:40:13 +10:00
Chris Johns
6fb1409215 rtems-tld: Add entry and exit trace support. 2014-09-09 08:20:41 +10:00
Chris Johns
2126ea7ff0 rtems-tld: Generate arg and ret code in the wrapper. 2014-09-08 19:29:41 +10:00
Chris Johns
17c836402f Fix building on CentOS 6.5. 2014-09-08 16:37:32 +10:00
Chris Johns
6506aa14aa RTEMS trace linker builds trace applications.
The trace linker builds the both_hello example in examples-v2.

Move the various string support functions into a C++ file and stop being
inlined. Make them return const std::string.

Add ld support to rld-cc.

Add search path support to rld-config so installed common files can be used.

Fix the path bugs.

Add an absolute path function to rld-path.
2014-09-08 16:06:48 +10:00
Chris Johns
b28e8b3115 Refactor the rld-rtems support to remove the globals. 2014-09-07 14:31:18 +10:00
Chris Johns
32cd4fcc17 rtems-tld: Add --wrapper option to aid testing.
The --wrapper option lets a user control the wrapper file name and
location to aid testing.

Add keep support to tempfiles so specific tempfile can be set
to be kept.

Add unlink to the rld::path namespace.
2014-09-07 10:47:00 +10:00
Chris Johns
3f5e31f86d Chanhe the base temp file name to 'rld--'. 2014-09-07 10:45:36 +10:00
Chris Johns
c4c8218373 Fix rtems-ld to keep tmep files around while building. 2014-09-06 21:59:25 +10:00
Chris Johns
8807135964 Refactor the CC flags. Fix the various linkers. The trace linker is compiling. 2014-09-06 20:19:45 +10:00
Chris Johns
a916fa4230 Fxi the split call. 2014-09-06 20:19:08 +10:00
Chris Johns
a72a9e357d Add a path str. Remove the duplicate split call. 2014-09-06 20:17:56 +10:00
Chris Johns
b233be7a3f Trim the return value from a package file. 2014-09-06 20:15:48 +10:00
Chris Johns
31bf37564b Remove march/mcpu and add RTEMS BSP and cflags support. 2014-09-05 18:18:11 +10:00
Chris Johns
7ccb670158 Add support for RTEMS BSP or user supplied CFLAGS. Remove march/mcpu.
Added support to read an RTEMS BSP pkgconfig file and ste the CC
flags.
2014-09-05 18:16:40 +10:00
Chris Johns
2f48445837 Return the requested label.
This completes this code to a basic working level. It usable for the
RTEMS pc files but not as a full pkgconfig replacement. The python
version in the RSB is more complete.
2014-09-05 18:10:46 +10:00
Chris Johns
40fd7a088a rld: Split the file into a path module for path specific functions.
This allows resued for other parts of the system not dependent on
objcet files or archives.
2014-09-01 13:26:47 +10:00
Peng Fan
e5165d2d0a Fix getopt_long usage
When passing shorhand options, getopt_long sometimes does not handle
them correctly.

Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
2014-09-01 09:59:01 +10:00
Chris Johns
3162858a3a gdb-python: Update so 'rtems task' lists the classic tasks.
This is a first pass at cleaning up the support. To use:

 $ waf configure --prefix=$HOME/development/rtems/4.11
 $ waf build install

Start GDB and break at Init:

 (gdb) py import rtems
 (gdb) rtems task

will list the classic API tasks.
2014-08-26 14:57:57 +10:00
Chris Johns
4dbd0db60d Fix README mistakes. 2014-08-25 09:52:42 +10:00
Chris Johns
504e1de9de gdb-python: Add waf script to install under a prefix. 2014-08-25 09:52:42 +10:00
Chris Johns
f750e82bbc gdb-python: Clean up and ignore waf generated files. 2014-08-25 09:52:42 +10:00
Dhananjay Balan
bd0b98d55e Add cpu registers to task output. 2014-08-25 09:52:42 +10:00
Dhananjay Balan
5a4834c641 Remove the header. 2014-08-25 09:52:41 +10:00
Dhananjay Balan
61154bf302 Add watchdog seconds command
- prints the watchdog chain managed at second boundaries.
2014-08-25 09:52:41 +10:00
Dhananjay Balan
1fcff75505 Fix wdticks command
- Type is Chain_Control
 - chain.node.next -> null
2014-08-25 09:52:41 +10:00
Dhananjay Balan
a4d0739522 Add helper func.
- tests a bit at specified position.
2014-08-25 09:52:41 +10:00
Dhananjay Balan
a7176a8a7e Add watchdog ticks command.
- ToDo : Fix watchdog states.
2014-08-25 09:52:41 +10:00
Dhananjay Balan
04d95ec2b2 Added register class
- sparc.register, basic represenation of sparc's registers.
2014-08-25 09:52:41 +10:00
Dhananjay Balan
788a71578f Add sparc PSR
- added a class to print SPARC status register
2014-08-25 09:52:41 +10:00
Dhananjay Balan
7a415d4e43 Catch empty task names,
- All the tasks do not have a name.
2014-08-25 09:52:41 +10:00