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

define multiple target build methodology #9

Open
thejta opened this issue Nov 20, 2019 · 1 comment
Open

define multiple target build methodology #9

thejta opened this issue Nov 20, 2019 · 1 comment

Comments

@thejta
Copy link
Collaborator

thejta commented Nov 20, 2019

There are at least 3 different targets that we need to build edbg for:

  1. hostOS
  2. petitboot
  3. ebmc

Each of these environments have different build requirements and necessary supported function.

For example, ebmc will need istep support. But neither hostOS or petitboot need that function. That particular use case can be controlled by existing defines like ECMD_REMOVE_INIT_FUNCTIONS.

However, we will have cases internal to the code as well. One such case is ebmc needs to define a different help text path than hostOS/petitboot.

To solve this, I purpose each build target get its own compile define. That compile define can then be used to control the enabling of things like ECMD_REMOVE defines as well as unique paths in common edbg code.

I would purpose:
hostOS = EDBG_BUILD_HOSTOS
petitboot = EDBG_BUILD_PETITBOOT
ebmc = EDBG_BUILD_EBMC

When existing defines already do the job, we need to make sure to use those. We don't want the code littered with build target specific defines. Defines would be controlled by src/common/ecmdDefines.H (which isn't in master yet, but I have locally) and largely removed from being passed in on the command line of the compile.

@thejta
Copy link
Collaborator Author

thejta commented Dec 4, 2019

This has been implemented in #12

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

No branches or pull requests

1 participant