163 Commits

Author SHA1 Message Date
Chris Johns
f199d42e47 linkers: Speed up reading large executables for all cases except inlining
- Only load the function DWARF data if checking inlines
2022-05-18 18:17:33 +10:00
Karel Gardas
ff68bccc25 rtemstoolkit:libelf: sync _libelf_config.h with FreeBSD
This fixes compilation issue on Apple M1.
2022-05-17 21:19:49 +10:00
Alex White
072f88f4d4 rtemstoolkit/rld-path.cpp: Fix double free 2022-03-09 16:06:09 -06:00
Alex White
6b31bb03aa rtemstoolkit/mailer.py: Fix parsing of options with no optarg 2021-11-12 08:25:48 -06:00
Alex White
ba4648bf68 rtems-bsp-builder: Fix mail support
This fixes a problem with mailer options support that occurred because
check.py uses argparse.ArgumentParser instead of tester.rt.options.
2021-10-29 16:44:02 -05:00
Ryan Long
5519a635fd rld-rapp.cpp: Add catch for exception
CID 1471643: Uncaught exception

Closes #4502
2021-10-08 08:58:32 -05:00
Chris Johns
b4245dd209 tester/covoar: Fix clang compile errors, revert uneeded changes 2021-09-03 14:43:47 +10:00
Ryan Long
2cf693aee9 rld-dwarf.cpp: Initialize member variables
Initialize member variables not listed.

CID 1503019: Uninitialized scalar field.

Closes #4500
2021-09-01 10:31:25 -05:00
Ryan Long
68348ad39f rtems-utils.h: Create ostream_guard 2021-07-27 13:40:40 -05:00
Alex White
ac56fce7c1 covoar: Store address-to-line info outside of DWARF
This adds the AddressToLineMapper class and supporting classes to
assume responsibility of tracking address-to-line information.

This allows the DWARF library to properly cleanup all of its resources
and leads to significant memory savings.

Closes #4383
2021-06-17 16:00:08 -05:00
Alex White
f18e6d8e15 rtemstoolkit/mailer.py: Fix option ordering for add_arguments
The ordering of keys cannot be guaranteed in a dictionary. This changes
the options iteration to no longer rely on key ordering.

Closes #4402
2021-05-10 10:39:39 -05:00
Alex White
82b752a438 rtemstoolkit/mailer.py: Add --use-gitconfig option
This adds the option to pull mail-related configuration values from the
user's git configuration.

Closes #4384
2021-04-14 09:32:11 -05:00
Alex White
3b1407fb20 rtemstoolkit/mailer.py: Add SMTP login options
This adds more options so that the user can authenticate with the SMTP
server.

Updates #4384
2021-04-13 16:44:42 -05:00
Alex White
92f7f67297 rtemstoolkit: Filter mail options from log output
This filters mail-related options out before logging the command line
options. This is needed to prevent leaking potentially sensitive
information via logs and emails.

Updates #4384
2021-04-13 16:44:42 -05:00
Alex White
1a575af817 rtemstoolkit/mailer.py: Return full smtp-host arg value
This fixes mail.smtp_host() so that it returns the full argument value
rather than just the second character.

Updates #4384
2021-04-13 16:44:42 -05:00
Hesham Almatary
fe59a1495d rld-cc: Add -target to recognised cflags
-target *-*-* flag is necessary for LLVM/Clang while cross-compiling
2021-04-01 10:59:21 +02:00
Joel Sherrill
49fac039a1 Revert rld-process: Add named tempfile constructor
This patch reflected a temporary workaround which avoided regenerating
the temporary files for each symbol set. The need for redundant processing
is being eliminated in an upcoming patch series.

Hash: 420d7a13672991a1480d06ac02190f2976b9253b

From 420d7a13672991a1480d06ac02190f2976b9253b Mon Sep 17 00:00:00 2001
From: Alex White <alex.white@oarcorp.com>
Date: Wed, 3 Mar 2021 09:48:00 -0600
Subject: rld-process: Add named tempfile constructor

This adds a new tempfile constructor for creating a named tempfile
rather than generating the name.
2021-03-31 10:41:25 -05:00
Alex White
420d7a1367 rld-process: Add named tempfile constructor
This adds a new tempfile constructor for creating a named tempfile
rather than generating the name.
2021-03-30 13:15:57 -05:00
Alex White
0fe7902aee rld-dwarf: Fix file::get_source
The file::get_source method was giving "unknown:-1" for valid
addresses. This has been fixed.
2021-03-30 13:15:57 -05:00
Alex White
85eb59e217 rld-dwarf: Add function::has_entry_pc 2021-03-30 13:15:57 -05:00
Chris Johns
d9aecc20b3 rtemstoolkit/dwarf: Dump the DIE offset 2020-09-26 10:49:27 +10:00
Chris Johns
84181adf61 rtemstoolkit/configuration: Treat an empty variable as an empty list 2020-09-26 10:49:27 +10:00
Chris Johns
87262b429d Move all python commands to use env python
- If you host does not provide a python command consult the User
  manual for ways you can run the python commands.

- Full package paths are being used to avoid namespace pollution and
  crosstalk.
2020-09-26 10:49:27 +10:00
Chris Johns
463831374c linker/exeinfo: Optionally output full flags when listing object files
- Start adding support to dump configuration tables
2020-09-15 13:10:56 +10:00
Chris Johns
0ad4aaafc2 linker/rap: Ignore relocation records with no section
Uodates #4096
2020-09-11 15:59:47 +10:00
Chris Johns
6de89d9268 linkers/ld: Output all reloc records to the RAP file
Updates #3969
2020-05-05 11:31:04 +10:00
Chris Johns
ca7b290f94 rtemstoolkit/execute: Handle unicode input on python2
- Allow unicode as a type on python2. The unicode type is not
  present on python3 so make the support conditional.
- Add some more diag prints to aid debugging.

Closes #3964
2020-03-30 09:55:02 +11:00
Gedare Bloom
11a481fb94 execute.py: fix long line 2020-03-19 09:33:14 -06:00
Sebastian Huber
763f10232f rtemstoolkit: Detect native SPARCV9 ELF arch 2020-03-05 10:44:45 +01:00
Sebastian Huber
c7315a218a rtemstoolkit: Use multiprocessing.cpu_count()
The previous implementation does not work on some Linux distributions,
e.g. Debian on sparc64.  Use a standard function instead.
2020-03-05 10:33:07 +01:00
Sebastian Huber
00b9f1d825 rtemstoolkit: Support more Linux distributions
The platform.dist() function is not always available.
2020-03-05 10:26:15 +01:00
Vijay Kumar Banerjee
2852cac71a rtemstoolkit/path: Add support to copy single file 2020-01-28 08:36:35 +11:00
Hesham Almatary
e6e610d262 rld-rap: Ignore relocations with section index 0 2019-11-12 10:20:05 +00:00
Hesham Almatary
dcfccb1072 Add RISC-V machine to rld-elf 2019-11-12 10:19:53 +00:00
Chris Johns
4cb2ddc568 rtemstoolkit: Interpolate realing rtems configuration files. 2019-10-18 02:20:36 +11:00
Chris Johns
4cd76f2bd8 waf: Do not filter flags to be unique using set()
Filtering the flags to be unique using `set()` changes the order and
this results in waf thinking the flags have changed rebuilding various
pieces of code.
2019-09-05 09:47:01 +10:00
Chris Johns
c1e38871b2 rtemstoolkit/dwarf: Fix some C++ handling issues. 2019-09-02 10:11:37 +10:00
Chris Johns
757578d3ab rtemstoolkit/configuration: Fix interpolation support.
- It was disabled always. Now optional by the constructor.
2019-06-12 09:48:28 +10:00
Chris Johns
2b27eec2ae rtemstoolkit/macros: Improve the macro output.
- Support optionally reporting just the keys and their values.
2019-06-11 11:00:30 +10:00
Chris Johns
89dcdbc9ff rtemstoolkit/configuration: Add get_sections() to get the sections.
- Fix module access when catching exceptions.
2019-06-11 11:00:30 +10:00
Chris Johns
af9b561e92 rtemstoolkit/path: Merge RSB changes. 2019-06-11 11:00:30 +10:00
Chris Johns
5dd75b028a rtemstoolkit/log: Add info(). 2019-06-11 11:00:30 +10:00
Chris Johns
9b153bc20f rtemstoolkit/host: Make the load() public. 2019-06-11 11:00:30 +10:00
Chris Johns
7568306148 rtemstoolkit/check: Optionally check exe silently. 2019-06-11 11:00:30 +10:00
Chris Johns
cbff4c8ca2 rtemstoolkit/macros: Convert all keys to str from unicode. 2019-06-11 08:37:25 +10:00
Chris Johns
d7979dece6 waf: Update the check_cc tests to a newer method supported by waf.
- Fix a minor issue in covoar's use of 64bit calls.
2019-05-27 10:08:27 +10:00
Vijay Kumar Banerjee
6c79a16e20 rtemstoolkit/path : print OSError in mkdir 2019-05-21 15:53:38 +10:00
Vijay Kumar Banerjee
9f197dea76 rtemstoolkit/path : Add listdir function 2019-05-21 15:53:38 +10:00
Chris Johns
925448a452 rtemstoolkit: columns are only ints. 2019-05-05 10:48:49 +10:00
Joel Sherrill
9277878fed rtemstoolkit/mailer.py: Check for no --smtp-host arg being provided 2019-02-21 17:52:49 -06:00