Skip to content

Conversation

@migueldiascosta
Copy link
Member

@migueldiascosta migueldiascosta commented Jan 4, 2018

this is mostly because --try-amend does not support dictionaries, and supporting it for arbitrary easyconfig parameters would require defining a new (too convoluted?) argument syntax

improvements/alternatives?

param, value = spec.split('=')
toolchainopts.update({param: value})
build_specs.update({'toolchainopts': toolchainopts})

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In case someone uses --extra-toolchains without arguments, is this caught somewhere?
If not, only set try_to_generate if toolchainopts is actually non-empty, and don't call build_specs.update if it is empty.

Or perhaps error out if it is empty?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks for looking into this

if it is empty the options parser will error out saying that option it requires an argument

but if it is malformed, that's another issue, for instance if there is no '=' the split above will fail with no more values to unpack...

the correct usage allows something like --extra-toolchainopts=usempi=True,openmp=True,optarch="Intel:-O2;GCC=-O3", maybe this should be made clearer somewhere?

@boegel boegel added this to the next release milestone Aug 31, 2018
@boegel boegel modified the milestones: 3.7.1, next release Oct 4, 2018
@boegel
Copy link
Member

boegel commented Nov 19, 2018

@migueldiascosta Needs a sync with develop to fix merge conflict.

I think it makes sense to rework this a bit to make it use the parse_param_value function that is being added in #2665 (syntax is a little bit different, but there's little point in supporting two different ways of specifying a dict-value?

@boegel boegel modified the milestones: 3.8.0, 3.8.1 Nov 19, 2018
@migueldiascosta
Copy link
Member Author

@boegel will get back to this after #2665 is merged, then

@migueldiascosta migueldiascosta changed the title support for injecting additional toolchainopts support for injecting additional toolchainopts (WIP) Nov 20, 2018
@boegel boegel modified the milestones: 3.8.1, 3.9.0 Jan 16, 2019
@boegel boegel modified the milestones: next release (3.9.1), 3.x May 14, 2019
@boegel boegel modified the milestones: 3.x, 4.x Feb 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants