Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Metal depend script #251

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open

WIP: Metal depend script #251

wants to merge 2 commits into from

Conversation

keith-packard
Copy link
Contributor

Here's the start of a method for building applications that use freedom metal from source,
rather than creating a library for freedom-metal and then linking against that.

The core of the change is a new script, metal_depend.py, which lives in the freedom-metal
repository. That takes a .dts file and constructs the set of freedom metal source files required.

Along with that script, there are two makefile fragments:

  1. metal-depend.make -- this has instructions for building the DTS-based files for a project, but not for compiling any sources. You get the metal header files, a metal.mk file which holds the sources needed by the target and a linker script.

  2. freedom-metal.make -- this has complete instructions for building a freedom-metal application. It uses metal-depend.make.

TODO:

  • Provide a way to select which linker script to use.

Let applications override our definition of __iob by declaring it as
'weak'

Signed-off-by: Keith Packard <keithp@keithp.com>
This finds the necessary freedom metal sources from the device tree
file and then constructs the application from that, rather than
linking againts a library.

There are also a couple of helper makefile fragments:

 * metal-depend.make

   Contains instructions for building generated files from the BSP

 * freedom-metal.make

   Contains instructions for building a complete application

Signed-off-by: Keith Packard <keithp@keithp.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant