[rtems-tools commit] New commits on branch master
Chris Johns
chrisj at rtems.org
Fri Sep 12 22:41:59 UTC 2014
commit 543a4d1e17ccfd3233f4d775f5e97637436cd2e2
Merge: 3162858 e0b8975
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 13 08:49:31 2014 +1000
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.
commit e0b897585349fadaedc4849d7da8653f33f3d44a
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 13 08:48:17 2014 +1000
Remove invalid file that was added.
commit 7168ab3da54950809ea579e37afff4e18454ad5c
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Sep 10 13:10:45 2014 +1000
rtems-tld: Add a printk generator.
commit 5afb2b8d5bce8d03e9aef4666555c86831808c44
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Sep 10 13:10:20 2014 +1000
rtems-tld: Fix warnings in the generated code.
commit 2d5de2e120c17dfbb58f1cf16cf1a509e7e633e3
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Sep 10 11:16:26 2014 +1000
Fix the error message.
commit 67369b148b84250d467af890fddc871ef01deb1a
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Sep 10 11:15:29 2014 +1000
Fix the tempfile output code to handle line breaks better.
commit 30a7f069e71decf2bd6b9fc396e2e0cc7173d0e5
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Sep 10 11:14:06 2014 +1000
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.
commit b7ad4a2431429ad262f93efea693a480ad0c9ea6
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Sep 9 08:40:13 2014 +1000
linkers: If no RTEMS path is provied see if the prefix can be used.
commit 6fb14092151645e40a207161f1b0a89b5a848a97
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Sep 9 08:20:41 2014 +1000
rtems-tld: Add entry and exit trace support.
commit 2126ea7ff045df25fe6588e8820e02504744549d
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Sep 8 19:29:41 2014 +1000
rtems-tld: Generate arg and ret code in the wrapper.
commit 17c836402fe28360d9805eed1584dd0e2dd33db5
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Sep 8 16:37:32 2014 +1000
Fix building on CentOS 6.5.
commit 6506aa14aad5db5f4f3fab80bec12964148f13ad
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Sep 8 16:06:48 2014 +1000
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.
commit b28e8b311550ba5296c814dfdfa1136517ce00a1
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Sep 7 14:31:18 2014 +1000
Refactor the rld-rtems support to remove the globals.
commit 32cd4fcc17bbd969410f5f8d165cb7793cce972c
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Sep 7 10:47:00 2014 +1000
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.
commit 3f5e31f86df56008fe3f45e56116a44df24f2c48
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Sep 7 10:45:36 2014 +1000
Chanhe the base temp file name to 'rld--'.
commit c4c8218373044fa22b61355f9b39fbfd9bdad12d
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 6 21:59:25 2014 +1000
Fix rtems-ld to keep tmep files around while building.
commit 88071359647afc58d1dfcd02df36466d78de62a4
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 6 20:19:45 2014 +1000
Refactor the CC flags. Fix the various linkers. The trace linker is compiling.
commit a916fa4230128a1496b9c0ce12d1fd085d4737aa
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 6 20:19:08 2014 +1000
Fxi the split call.
commit a72a9e357d2db00fb05ab2f752033eea88408420
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 6 20:17:56 2014 +1000
Add a path str. Remove the duplicate split call.
commit b233be7a3fe7d5a26fd9de5dded6bfbee1d7a000
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 6 20:15:48 2014 +1000
Trim the return value from a package file.
commit 31bf37564b273a085f1fbda47b0b55fe8c913736
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Sep 5 18:18:11 2014 +1000
Remove march/mcpu and add RTEMS BSP and cflags support.
commit 7ccb6701589449dd33cb1b41a7bfdf69ad5f0a26
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Sep 5 18:16:40 2014 +1000
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.
commit 2f48445837ea827663701a220ab7895ab13b1d30
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Sep 5 18:10:46 2014 +1000
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.
commit 40fd7a088afe6df7f65058619f660640506ee581
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Sep 1 13:26:47 2014 +1000
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.
commit e5165d2d0a02443f82198ec00459bfbc4c150709
Author: Peng Fan <Peng.Fan at freescale.com>
Date: Sat Aug 9 20:32:50 2014 +0800
Fix getopt_long usage
When passing shorhand options, getopt_long sometimes does not handle
them correctly.
Signed-off-by: Peng Fan <Peng.Fan at freescale.com>
commit 097f1fdf569e631f5fae95f27e0ec2a2f626bcbc
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Aug 7 18:15:06 2014 +1000
rtms-tld: Refactor the code to match a better configuration format.
commit 4fd758e4f69bb6fca1aee16502d10fdeb80fc79b
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Aug 5 23:02:35 2014 +1000
rtems-tld: Add wrapper support and start the generator coding.
commit a136346d141384afc9b99215a500328b68a97eec
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Aug 5 23:01:15 2014 +1000
Fix temporary file handling and add tempfile write support.
Move the static objects into the rld-process file and change the
clean up to a call.
Add support to write to tempfiles.
commit 058d5024e91f4c4116636c73e3efa687330bdbeb
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Aug 4 15:09:39 2014 +1000
rtems-tld: Add generator loading support.
commit 0a2102442e0093e1a6527e4574b714f4a0ddf0a3
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Aug 4 09:50:56 2014 +1000
rtems-tld: Add recursive parsing of headers and defines.
commit b6d7f5ff2ea1db4d60e190f22a1c13a80b8819a0
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Aug 4 09:19:55 2014 +1000
rtems-tld: Add trace configuration support.
Extend the configuration support to provide the needed configuration
required to generate the C stub support.
commit ea299027e85c686b8f36b2564ada99803708b373
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Aug 1 16:44:32 2014 +1000
Add initial support for the RTEM Trace Linker.
The RTEMS Trace Linker or rtems-rld creates an RTEMS executable with
trace support built in without any changes the existing code.
This commit is an initial starting point with function signatures
being read from INI files.
commit 2ce23a3d6ff611de42493fe389901d5346f56beb
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Aug 1 16:47:11 2014 +1000
Fix building on Windows with the latest MSVC.
Remove some warnings.
commit 427acf320cad6449b33f196dddf4226342de0631
Author: Peng Fan <Peng.Fan at freescale.com>
Date: Thu Jul 24 11:09:03 2014 +0800
std::list should be sorted before unique
std::list should be sorted first, then unique can remove duplicated
objects. Otherwise there will be many duplicated objects.
Signed-off-by: Peng Fan <Peng.Fan at freescale.com>
commit 53ed116b90e9b9a920a6c0f939d28c035913d0ea
Author: Peng Fan <van.freenix at gmail.com>
Date: Fri Aug 30 21:42:58 2013 +0800
Implement a new tool 'rtems-ra'
rtems-ra supports converting an elf archive file into a rap archive file.
It also support add, replace and delete rap files from the rap archive
file.
commit 64309e0b782526d01895dc5fa7d90a8de86eac2d
Author: Peng Fan <van.freenix at gmail.com>
Date: Sat Aug 24 18:19:15 2013 +0800
Ignore common section and null(index 0) section
Signed-off-by: Peng Fan <van.freenix at gmail.com>
commit 37a7a7c92fa1a758db764a3481593e6c6b608137
Author: Peng Fan <van.freenix at gmail.com>
Date: Sat Aug 24 18:10:54 2013 +0800
RA format support for rtems-ld
1. Automatically place object files in archive files into a ra file,
using new option --runtime-lib
2. Add a new option --one-file to decide whether the collected
object files should be merged into the rap file or not.
Signed-off-by: Peng Fan <van.freenix at gmail.com>
commit 5eb6604773609b2e749919a583f820c8ce05a8da
Author: Peng Fan <van.freenix at gmail.com>
Date: Thu Aug 29 19:41:23 2013 +0800
Fix archive writer
1. align to even address
2. Fix the use of GElf_Ehdr and Elf32_Ehdr
3. Fix the header related
commit 59c3ebd7f4b6c56dc2f0a12d6111ee067010070a
Author: Peng Fan <van.freenix at gmail.com>
Date: Sun Aug 4 22:35:42 2013 +0800
Add rpath support
commit 347c9b585e7a8bb5e2f44e1becdfbf12538a7a18
Author: Peng Fan <van.freenix at gmail.com>
Date: Thu Aug 1 16:15:07 2013 +0800
Add section size for rap details
Add elf section size to the section details, because gdb will use the size of
a section.
commit 39f48c9047be57df78b95d660b568283afb46da0
Author: Peng Fan <van.freenix at gmail.com>
Date: Fri Jul 26 17:45:01 2013 +0800
Add object file details to RAP format
This change added the object file details to the RAP format so aid debugging
support. The information can be optionally stripped for production images
not needed this information if space is an issue,with '--rap-strip' assigned
to rtems-ld.
commit 76d3b8962c9e0164941d1b6a47a4b6a716aca700
Author: Peng Fan <van.freenix at gmail.com>
Date: Mon Jul 22 09:44:15 2013 +0800
collect 'STT_NOTYPE' symbols
commit f2915943d15c33f8448eef5558be62505816cf51
Author: Peng Fan <van.freenix at gmail.com>
Date: Mon Jul 22 00:39:21 2013 +0800
fix relocation records order
commit c14133efafd2c09e228a74d9d1f491bcad966e6e
Author: Peng Fan <van.freenix at gmail.com>
Date: Thu Jul 18 11:05:02 2013 +0800
Add support for relocations which reference local symbols
Signed-off-by: Peng Fan <van.freenix at gmail.com>
commit e23ef3b6ab0e24a2da1e8145ac97eb35de2436b0
Author: Peng Fan <van.freenix at gmail.com>
Date: Thu Jul 18 10:53:18 2013 +0800
Fixed fsec
If one object file contains .rodata and .rodata.str1.4 sections,
.rodata contains rela reloc entries, but .rodata.str1.4 do not
contain reloc entris.'.rodata' and '.rodata.str1.4' will be both
included in '.const'.Then using this patch to fix the rela problem
Signed-off-by: Peng Fan <van.freenix at gmail.com>
commit 4b31ced3e125101d85acbcce8566775bcfdeb46d
Author: Peng Fan <van.freenix at gmail.com>
Date: Thu Jul 18 10:49:09 2013 +0800
Fixed layout problem
Fixed when only one elf object file is passed to rtems-ld.And fixed the error when
one object file has rela relocation records, but the other does not contain relocation
records.
Signed-off-by: Peng Fan <van.freenix at gmail.com>
commit f4cf8f47b19c20a894810108bcb2250d96661cca
Author: Peng Fan <van.freenix at gmail.com>
Date: Fri Jul 19 07:32:41 2013 +0800
arch specific section support
commit 26b46b1d36770b49316da13adf3ee897a630a3e0
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Mar 1 15:42:08 2013 +1100
Fix RELA in RAP formats.
Fixed the RELA handling in the merging of the object sections into the
RAP sections. A method in the rap::image class was not being used any
more and that code transferred the RELA setting from the object sections
to the image section. This change adds also transfers the rela field.
commit 69a123b71891df04747276387339f14e0535e4e6
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Mar 1 13:58:56 2013 +1100
Support the gcc option '-Wl'.
Support and ignore the '-Wl,options' command line option to allow
build system that use this flag to call the RTEMS linker.
commit 6c4218becf5ce542d11b036d63f66a2f4817db7f
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Mar 1 11:51:37 2013 +1100
Fix the trace help.
commit 6fae4de3c84c55ddd4cfdfae66f32f6a07378d4b
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Mar 1 11:25:48 2013 +1100
Fix errors building on CentOS.
commit 2bcaf0cdd3dafbb3bc4fa25fff572b38bbaf4958
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Jan 23 14:04:11 2013 +1100
Update the documentation
commit e78e2b0ce584aaba4a81001641203510003e9829
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Jan 22 22:08:09 2013 +1100
Documentation.
commit 32d5401a9a167862f5eca50ea34b378a368e4143
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Jan 15 17:03:04 2013 +1100
Fixed the layout output to give to all the needed detail.
commit 6801aa22cfdbea69481e7cc191a31a88b44a40ed
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Jan 1 12:04:24 2013 +1100
Use find_in_strtab when collecting symbols. Remove debug.
commit f43851acc0b2a9380c797dff8419c1acf0626dfa
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Dec 31 18:29:10 2012 +1100
Sort the relocation records by offset for a section.
commit 4e7ec707b08096c8e3a4ea8c826775bf4af74355
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Dec 31 18:12:25 2012 +1100
Make layout offsets match image offsets. Add a better strtab search.
The offsets of sections in objects have to be computed in load order
so the offsets work. For example an object could have a sections with
an alignment of 4 and 16 so the 4 may align with the current load
offset and the 16 is padded to align it. This is the way the image is
loaded and so the layout needs to follow these rules.
The strtab search needs to be better. An STL string find was finding
patrial strings and causing errors on the target.
commit 06a2cf6eb32e24c532ac3ca5c793a110dc42a5a5
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Dec 31 18:11:47 2012 +1100
Sort the relocations by offset to make the overlay work.
commit 544de91e99b9fbca79916424addb1b987257a6d3
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 29 10:20:22 2012 +1100
Fix managing weak symbols.
Weak symbols where not being managed correctly. The symbols table
is now a class with externals and weaks as separate symtabs so
the externals can be searched first then the weaks and if not
found an unresolved error is raised. This was found creating
a libbsdport RAP file where the drivers in the all driver table
resolved to the weak symbols and so linking in nothing.
Fixing the weak symbols as found in the libbsdport library
triggered a new resolver bug. The object files now contain the
resolver state and this is used to determine if an object file
has been resolved or is currently being resolved avoiding
rescursive loops with dependent object files.
The resolver trace output is a little easier to read.
commit 800d4fd7484cd23bb7e0d19ac5225a54ba9cd492
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Dec 24 17:18:23 2012 +1100
Add the symsect offset to the section reloc.
commit 073d2441dc32da94471ebffb6fa47c28b996f2fa
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Dec 24 17:17:53 2012 +1100
Trace the reloc addend.
commit f31cded659d6a0b05a2bd574fcc01d0bc899e061
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Dec 23 17:45:34 2012 +1100
Improved section trace output.
Moved the section trace output to after the offsets have been
computed and add this to the output. This allows a simple way
to track the offset in an ELF section to the offset in the RAP
section.
commit 58250099cd88a63c840185ab7803cdc70b21317c
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Dec 23 17:04:11 2012 +1100
Change the long opt from map to overlay.
commit 287569cc8a552435a7fcad8c5837fd38c8cd369f
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Dec 23 16:57:35 2012 +1100
Add an overlay output.
An overlay shows the hex dump of the section data with the relocation
records so you can see the relationship between the relocations and
the section data.
commit b9f631e5608498ea3f03685acd9567df1cbfbca2
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Dec 23 16:54:59 2012 +1100
Add a memory dump utility.
commit 3e902c68adb61ce1fd369b89563187a107b4f6bc
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Dec 21 17:14:50 2012 +1100
Fix the reloc symbol name.
commit c4873564c9bf94b47cdee8a636d52368fe5fd294
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Dec 21 17:12:07 2012 +1100
Finish a dump of the RAP file. Fix expanding.
commit 6c28ffbf012644e633f6804a8f4d6bbb35f53c67
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Dec 21 17:10:18 2012 +1100
Set header length. Make sections public.
Set the compressed file length in the RAP header. Move
the string from the outputter to the RAP file.
Make the sections public by moving to the RAP header.
commit 4e9b3247a650138c308b1f7969a6320f5d1c1a09
Author: Chris Johns <chrisj at rtems.org>
Date: Fri Dec 21 17:08:17 2012 +1100
Decompressor fixes.
Make reading compressed files more robust returning the amount
of data that can be read. Also add >> operartors to get the
data. Add exceptions when a read fails.
commit 74e89db40dfc2625a76bc1432e050d947e6a86a6
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Dec 19 16:24:48 2012 +1100
Turn off the debug.
commit 8bb0d53e5826952a2fb7af5a497521e00a3cc514
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Dec 19 16:24:24 2012 +1100
RAP file utility. Decompressors RAP files.
commit db216fec03f2252de4fa85e6808432690169e7d0
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Dec 19 16:22:37 2012 +1100
Decompression support added.
The compressor can now decompress LZ77 files.
commit b2b811cbc702a3b761f51a63af5f2e0db0aa0d14
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Dec 18 20:57:00 2012 +1100
Fixes to load libbsdports on i386.
Numerous fixes to load the the libbsdport RAP file on the i386.
commit 53221a04855a6d476b4300498321ecc509651c82
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Dec 18 20:52:18 2012 +1100
Add object::get_section.
Add a method to return a section given the ELF section index.
Add more trace output for debugging.
commit b5a59dd96fddf5e6b346aacb3a9dcd41da463c91
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Dec 18 20:51:41 2012 +1100
Use cerr for errors and not cout.
commit 194160c9a365cf963ae090adecf012f73a7592a7
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Dec 18 20:48:35 2012 +1100
Update the data out pointer.
The data pointer was not updating when looping.
Fix the total stats to track the data in the buffer.
commit 13b9f2b1d7059404f9121837d7ac1d69f87b7ee1
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Dec 18 20:47:27 2012 +1100
Add a new trace level.
commit f10123a72f5a198ac9d251f97d20701dc4ce7d2e
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 15 23:30:46 2012 +1100
Const sections are not PROGBITS and ALLOC and not EXECINTR or WRITE.
commit d54e81c9716ef507c2fa94083d7dd0f5ee8916fd
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 15 23:19:21 2012 +1100
Debug trace changes.
commit b89ad2c6cb92e5f3c71b37af28714f1c46c7d2d8
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 15 22:44:58 2012 +1100
i386 related fixes
Fix the size of the section calculated in image::lay_out. It did not
correctly adjust for alignment. Make the sections being written
correctly align.
commit f4d580bc73fff6d1aede6ac47e1339bb2c33d8e0
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Dec 13 10:07:32 2012 +1100
Add the section offset to the symbol value.
commit 42f766f0ca91ac4e24ab502ff4c491699635f3e5
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Dec 12 21:51:03 2012 +1100
Relocation fixes.
These changes implement a suitable relocation output in the image.
The code is still not working 100% but these changes are a big
improvement.
commit 90d8d43e4b08c4641e107c6b340c42cc12b38640
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 8 09:07:30 2012 +1100
Add support to demand load relocation records.
Support has been added to load relocation record on demand. The
relocation records are not read when the object file is first
opened and read. They are read only when being written to the
output file. This save loading lots of records into memory
from libraries to be thrown away.
The RAP format now supports writing out relocation records.
commit be8e1886a3ff79105e1adde0ea0208ec5fead4cf
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 8 09:05:12 2012 +1100
Add doxygen support.
commit 825a10ea70a4e413384b65dccf67d18aeff46ae7
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 1 21:22:24 2012 +1100
The symbol string is the offset into the symbol table.
commit 9ba89e17b046751c498dcb1e51256c348b7c0d67
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 1 08:09:02 2012 +1100
Remove the trace on hack.
commit 803c60a946748179db8090aac2ad5548635df5a0
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Dec 1 08:05:47 2012 +1100
RAP format up to relocation records completed.
Do not write the script into the RAP file rather just write the
init and fini labels. These are appended to the string table and
offsets in the string table added to the image.
Fi the sizes so the sections can be correctly loaded on the target.
commit 1a5bdef7a557ed1d7ac609f45ad307f9a361c21a
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Nov 29 19:05:19 2012 +1100
Add support for a custom RAP file format.
The file is a header and a searies of LZ77 blocks which hold the
application. The format allows for easy streaming and loading
on the target without needing the rewind or seek around the
file.
commit 93e80d5bbe9931f143b844ca01226332f3193a6c
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Nov 29 19:04:12 2012 +1100
Compress as blocks.
The LZ77 compressor works with blocks. Each block is prefixed with
a header that defines the output size of the block being compressed.
commit 9c70d1577de567b4132b7d3a97babe65def17906
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Nov 29 19:03:37 2012 +1100
Remove the \0 character after the header.
commit 662c504ee04083c1efed21b68ddf6b22d9d55215
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Nov 29 19:02:28 2012 +1100
Add the index to the section.
The index is referenced in the symbol and relocation records of ELF files
therefore we need to search for them.
commit ea6f8d4c8974aa2186d44359dad0b5230eb7ffae
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Nov 29 19:01:43 2012 +1100
Add access to the value and info fields of a symbols.
commit dc1c7447a4845a78d278ac0b38899d4f13997425
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Nov 27 11:19:15 2012 +1100
Add machine related data to allow better checking.
commit d99913fc5cc6f30befabc6e27e0a3452c3bbe9b5
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Nov 27 11:17:02 2012 +1100
Remove size_t stream operator.
On Darwin the operator works which on CentOS and FreeBSD it is seen
to be redefining the uint32_t stream operator. Too hard to provide
a generic solution so just cast in the user code.
commit 8190102ee77746684af26db5813b1c6ba3eb383c
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 12:14:06 2012 +1100
Update to the latest framwork requirements.
commit ae353d3bb0924ffd9b033e1c2267720032670009
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 11:50:21 2012 +1100
Comment clean up.
commit eb825b1deb6e5ee0397e958a55ad3b9bdecea4ff
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 11:09:35 2012 +1100
Add RAP format support.
commit cad8b53e6efdb4cfbf3c960225cb9c3c96fb1096
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 11:09:06 2012 +1100
Updated to reflect the framework changes.
commit a458e271640c6b488749663b01ac128368efb352
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 11:07:06 2012 +1100
Add exit label, ELF application and Application.
Add an exit label that is called when removing an application.
Change the "applicatiion" to "elf_application" and add a custom
format called the RAP format for applications.
commit 076d935331399c7abd6bb4f7859d1fd815234307
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 11:04:57 2012 +1100
Add writing from images as well as streaming operators.
Add the ability to write to the compressed stream directly from
files::images.
Add streaming operator support which is always in a standard byte
format in the output image.
commit a5fcdd51b5c159cd3c46b115179edaf0520e3a7d
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 11:00:34 2012 +1100
No archive begin/end on symbols load, image initialise fix, add sections.
Remove archive_begin/archive_end calls when loading symbols. The symbols
reference object files and they may reference archive and so the archives
need to be open and available. The archive begin/end must be handled at
a higher level in the program.
Fixed image initialisation where some constructors did not initialise
all class variables.
Add section support to the rld::files namespace. This allows section
information to be added to an object file without the ELF file
needing to available therefore removing the need for object file
remaining open all the time. These sections are a copy of the
information and can be copied and moved as needed. This is used
to make layouts.
commit 4c89c2ddd11707e877c1031f7ccc8819c625b106
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 10:59:19 2012 +1100
Update the section details.
commit c6b714f92fce13641551d4fca64a04f170a2aa02
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 10:57:29 2012 +1100
Load the sections by default. It is not much extra overhead.
Clean up the error messages.
Remove the copy constructor call on creating sections.
Change the symbols trace to the new symbols trace level.
commit 1d60a4ae57d82a78c12307d57cf451bf342f9873
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 26 10:46:40 2012 +1100
Split trace to have without and with symbols.
commit 3f37835cf44e5a18cbc8ec26f92e89a89f0fb2e2
Author: Chris Johns <chrisj at rtems.org>
Date: Thu Nov 22 16:22:22 2012 +1100
Split out the compression code for reuse.
commit c2657cdc11669b1eb3da3557a4be5f2f4003b97e
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 17:40:44 2012 +1100
Clean archive names for every output format other than scripts.
commit 7b2762fe1438b2250b0968e5f9f43b6066ed4d77
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 13:36:32 2012 +1100
Make the entry point an unresolved symbol.
commit 43ec8b0e3e0c2715dbd903829124c9c8456a6cc1
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 13:36:04 2012 +1100
Set the default value for empty symbols to 0 to match the const char* signature.
commit c46980ee88fcb10b396b79102659e6107e4f69d9
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 13:04:47 2012 +1100
Add entry point support.
commit b770b0c8da63ddc0b535f431278306060195e8f5
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 13:04:19 2012 +1100
Make getting objects const.
commit 9ba4e484abefbc500f9555601be7175cb42ed0ad
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 12:12:50 2012 +1100
Remove the warning about the warnings option on newer gccs.
commit 6565f0c056c667d14bd781d8254d6ca1a59531fe
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 12:12:21 2012 +1100
Enforce the header is created before using it on Linux.
commit c1d16362b806a0f735e9dd8f3de3dff98197cb18
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 12:11:49 2012 +1100
Add header to remove warning on Linux.
commit eb3481120687bc6dbf86eebb8f269da6802ff64b
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 11:07:12 2012 +1100
Output application format files.
Added support for an RTEMS RAP format application file. The format is:
<header>
<LZ77>
<Application Script>
<[1..n] ELF Object files>
</LZ77>
Where the header is a text string of fields delimited by ',' and terminated
with a line feed (\n). It is variable length:
RTEMS-APP,0000000,01.00.00,LZ77,00000000\n\0
where:
RTEMS-APP : file tag for quick acceptance and rejection
Length : the length of the application in bytes including the
: header
Version : Version of the application format.
Compress : The compression format.
Checksum : CCITT CRC32 checksum.
Following the header is a nul ('\0') character then an LZ77 container
with the application loader script followed by the ELF object files.
Note, the script format will be documented else where.
Note, the final version may add a 32bit length field before each part
in the compressed container to delimit the size of the file to be
read. This is currently not in this version.
commit a1d49302836ad78c9c64b6d9bf35a6155aa8e7c5
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 11:05:04 2012 +1100
Set the correct header size field.
commit fe19d0684ada32a5a9d010144585e48db17c6aff
Author: Chris Johns <chrisj at rtems.org>
Date: Wed Nov 21 10:40:01 2012 +1100
Fix archive GNU extension and make image read/write follow POSIX.
Fix the finding of a file name in the GNU extension for long names
in GNU archives so the correct location is referenced.
Made the image read and write routines keep reading if not all the
requested data is read or written due to possible signals.
commit fd8a2c559f29dba37ff8de43ead42f89e160eaa2
Author: Chris Johns <chrisj at rtems.org>
Date: Tue Nov 20 19:53:24 2012 +1100
Add support to write a metadata ELF file.
This also adds support to the ELF classes that wrap libelf. While
this is now done and seems to work I will not be using an ELF
file to hold the metadata after all.
commit 9b66527bebda528a8f65ae1376c2085fc409fe21
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 19 13:13:52 2012 +1100
Only look for standard library paths if standard libraries and enabled.
commit 596e5fa59110601c6b72b24d6308187939a1ad21
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 19 10:37:37 2012 +1100
Add set_header support to the ELF files.
commit 1976825c7894963e5201c8c95ba56a6684f1c7ff
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 19 10:36:34 2012 +1100
Resolve the ld and user undefines.
commit ead8da1e335868bbcf000ceba3459cce08c949ee
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 19 10:35:51 2012 +1100
Add configure option --c-opts to allow special options for testing.
commit 8ad4837168f300663484665b3ee86907310e064b
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Nov 19 10:35:15 2012 +1100
Fix warning from clang.
commit f1cf3a9dd35d03ef0ccd51aca6ee914534198424
Author: Chris Johns <chrisj at rtems.org>
Date: Sun Nov 18 07:37:02 2012 +1100
Better handling of archive open/close and begin/end.
commit 065ac15a4062baca80310476e2c8eea50c0002ce
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Nov 17 17:42:22 2012 +1100
Remove dead code.
commit 977c3de534bb5cce7935b47138efc2eac8e5ae23
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Nov 17 17:34:33 2012 +1100
Refactor the ELF support to allow ELF write suppport.
The refactoring allows better reuse of the ELF support and cleans up
some hacks from the generic file and archive handling improving the
separation of the file handling from the file format, ie ELF. The
handling of ELF object files and ELF object files inside archives
is cleaner.
The refactor cleaned up the symbol handling where the symbols now
reside in the ELF file object and references are take in symbol
pointer containers and symbol table containers.
The main purpose of the refactor is to allow support for creating
and writing ELF files.
Also added an rtems-syms command where special symbol support
can be added.
commit 0b65a28b57c070c4baa3820b4a6c4c4494b6bfef
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Nov 17 17:31:56 2012 +1100
Fix spelling.
commit 16e43468ec1462736dc7fa4786528990f637da64
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Oct 22 18:46:59 2012 -0700
Add FastLZ support.
commit 810d0ad976ec5f15796deea08600b8d1708131da
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Oct 22 17:58:34 2012 -0700
Fix repeats in output when cmd line objects depend on each other.
If an object on the command line depends on another object the output
code wrote the object files and then the dependent files and a
command line object file that is dependent ended up in the object
and dependent lists. A simple merge and unique fixed it.
Also moved the script generation code into a separate function
that can be used in a application container.
commit 7ec2c5a27c744c88c08417c4ca384f79ee52113d
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Oct 22 07:12:47 2012 -0700
Ignore working files.
commit 8f0740b7c734fe2f6e300894ad9aa685792358c1
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Oct 22 07:12:29 2012 -0700
Script to test the linker. Run after building the linker.
commit 898fa1327f332920b974e9a96023ce1817caa184
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Oct 22 07:11:04 2012 -0700
Fix the verbose level.
commit 8d1ab1f6642f3a6b5469361b5b2d3f666303ed2d
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Oct 22 07:10:45 2012 -0700
Add script output dbug messages.
commit ef4061f226f97654ce8d2c88f0803e08c84b588b
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Oct 22 07:10:23 2012 -0700
Fix the command line arguments help.
commit 746192499f21a467b00d3c9c10ffd818d59e44e1
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Sep 17 10:13:55 2012 +1000
Rename rld-gcc. Add -C option.
Add a -C (also --cc) option to allow the CC to be used when linking to be
provided by the user rather than using the path. This support allows user
who work with the full path to tools rather than the environment to make
use of the linker without them needing to play with environment table.
Rename rld-gcc.[h.cpp] to rld-cc.[h,cpp] because gcc may not be the
only compiler/linker used by the RTEMS project.
commit aef6d9018087bd74d9796307b62d5ebb0e37ac90
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Sep 17 09:37:29 2012 +1000
Update the help to something useful.
commit 1ec9633dec471b9bed39de2a4069be4823910081
Author: Chris Johns <chrisj at rtems.org>
Date: Mon Sep 17 09:37:07 2012 +1000
Add rebuild and tags build commands
commit 993aa67acf6d9c921d0e238f9a6bc98e6059f41f
Author: Chris Johns <chrisj at rtems.org>
Date: Sat Sep 15 17:58:00 2012 +1000
Fix the waf script.
commit ec24a379bcea34b0b080c84908e4cace969893f7
Author: Chris Johns <chrisj at rtems.org>
Date: Mon May 7 08:47:11 2012 +1000
Add to git.
More information about the vc
mailing list