-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Added "native" kwarg to add_XXX_args. Closes #3669. #3921
Conversation
## Projects args can be set separately for cross and native builds (potentially breaking change) | ||
|
||
It has been a longstanding bug (or let's call it a "delayed bug fix") | ||
that if yodo this: |
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.
Nitpick: Typo yodo
.
a52bd24
to
e515aab
Compare
keyword `native` has been added to all functions that add arguments, | ||
namely `add_global_arguments`, `add_global_link_arguments`, | ||
`add_project_arguments` and `add_project_link_arguments` that behaves | ||
like the following: |
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.
This paragraph does not mention that from now on the flag will only be used when the cross compiler is invoked.
#ifdef ARG_CROSS | ||
#error "Global is cross but arg_native is set." | ||
#endif | ||
#endif |
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.
Would be good to add indentation here so that the if/else/endif nesting is clearer.
- `native` is a boolean specifying whether the arguments should be | ||
applied to the native or cross compilation. If omitted, the flags | ||
are added to native targets if compiling natively and cross targets | ||
if cross compiling. Available since 0.48.0 |
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.
This para is a bit confusing. I would reword it as:
- `native` when set to `true`, the arguments will be added only for
native compilations when cross-compiling. If omitted or `false`,
the arguments are added to native targets if compiling natively
and cross targets if cross compiling. Available since 0.48.0
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.
That's not the same wording. If set to false
then they won't be added to native targets ever. The table goes (or should go at least) like this:
true => only to native builds
false => only to cross builds
omitted => native builds when native compiling, cross builds _only_ when cross building
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.
Perhaps it's better to put it in a table form? Should be easier to parse than a paragraph.
## Added only to native compilations, not used in cross compilations. | ||
add_project_arguments(..., native : true) | ||
|
||
## Added only to corss compilations, not used in native compilations. |
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.
typo corss
Per #3972 and #3969, what you actually want is not You could instead have have:
|
Should work now. |
We have |
Typos fixed and merged manually so closing. |
No description provided.