Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/espressif/esp-xtensaconfig-lib

GCC/binutils/GDB plugin for run-time loading of Xtensa CPU configuration
https://github.com/espressif/esp-xtensaconfig-lib

Last synced: 2 days ago
JSON representation

GCC/binutils/GDB plugin for run-time loading of Xtensa CPU configuration

Awesome Lists containing this project

README

        

This GCC/binutils/GDB plugin configures xtensa GCC, binutils and GDB for the
specific xtensa CPU. It will only load into GCC, binutils and GDB versions
that support such dynamic configuration. Without this plugin GCC and binutils
will produce code for the default xtensa core: the FSF one, or for the core
configured with the xtensa configuration overlay.

Building:

Fetch submodules

git submodule update --init

Run to build libraries for all available configurations

make lib

in the current directory.

The following parts of the toolchain still need to be configured statically:
- target gdbserver needs proper include/xtensa-config.h
gdb/gdbserver/xtensa-config.c and gdb/gdbserver/xtensa-xtregs.c in the
binutils-gdb.

Note:

the GCC Runtime Library Exception
(https://www.gnu.org/licenses/gcc-exception-3.1.en.html) has rules that apply
here. If you want to distribute the binary produced by GCC using this plugin,
the plugin code (including the xtensa configuration overlay) must be available
under a GPL-compatible license. The people to whom you distribute the binary
produced by GCC must be able to themselves build the plugin used to create
the binary.