-
Notifications
You must be signed in to change notification settings - Fork 3k
progen addition #1487
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
progen addition #1487
Conversation
e2a916d
to
514bbf8
Compare
TEMPLATE_DIR = dirname(__file__) | ||
DOT_IN_RELATIVE_PATH = False | ||
|
||
# mapping mbed to progen targets | ||
PROGEN_TARGETS = { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have you thought about moving this definition into the target's definition in targets.py?
It could either be a separate attribute, like self.exporters_supported = { 'progen': 'mbed-lpc1768' }
or self.exporters_supported = { 'progen': True }
(to use the default name) for the LPC1768. Not too sure how it should look, but I'm worried about maintaining a separate list of target mappings that people can miss when they're adding new platforms.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can add a new member to a target:
MY_TARGET():
self.progen_target = 'mbed-lpc1768'
Then in Exporters, we would try to get that one, otherwise use the target name as it is now ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Makes sense to me, although is it possible that progen will not support a given target? If so, we should have some way of indicating that.
Or more ideally, each target is not supported by default and we specify which ones are.
@bridadan That is a great idea! |
68e32ac
to
08f2d8f
Compare
Debugger comes from a target, template not used currently.
Mapping to ProGenDefinitions, as they don't always match.
08f2d8f
to
3575c11
Compare
Rebased, added progen_target to Targets. It is used only when progen is active for exporters (currently none). I have tested it with uvision locally, I'll send a new PR with uvision progen exporter later. |
test this please HOST_OSES=ALL |
[Build 186] |
Changes look good to me. Even though the build bot says failure, those are existing issues and your changes did not cause new regressions. |
@bridadan Thanks ! I'll wait one more day for review, and will merge this week |
Adding progen to Exporter class. This is just a boilerplate for the future addition/replacement for tool exporters. I sent earlier bigger PR to replace uvision/iar. This should be easier to integrate, as it should not change anything.
This enables anyone to add new tools or replace our current tools by progen. To see how to, look at my other branch, uvision4 integration: https://github.com/0xc0170/mbed/blob/62950c9fc4b75170971a096b0f548b65695f139c/workspace_tools/export/uvision4.py
@sg- @bridadan @screamerbg