Add scons options for compilation verbosity - #104
Conversation
|
I'll add the news item after we discussed the rest and came to an agreement ;-) |
|
If we move towards nanobind, the proposed branch switched to cmake, so it may supersede this. And it would remove |
|
Yeah but how soon will that be, realistically? |
|
We are pushing hard on the nanobind migration for pdffit2, and diffpy because we weren't able to release at 3.14 with boost. We could either put effort into that, or the nanobind migration and given our limited bandwidth we prefer the latter. But we could use some additional c++ eyes on the code. So far, we found it wasn't such a huge lift, but we don't have much testing done yet. @clemisch when it comes time to make the news, consider installing |
|
@sbillinge this looks good to me. I normally merge changes which are only affecting limited functionality in pyobjcryst, but as this one touches the build system and I do not know how it integrates with your |
|
@stevenhua0320 @stevengeorge128 @SYMSCAE @cadenmyers13 if any of you can volunteer to try and do a build from this branch and make sure these changes don't break the build, it would be great. We want to mimic what happens in the auto build on GH actions, but in particular it is just the build steps. I think if it works on one platform and one python version we can merge and try a matrix build using GH actions to do a full test. |
|
Hi @clemisch , probably it's better to set default warning level as "default"? Also I would hesitate on suppressing linker warnings. Please see if that makes sense, thanks! |
|
@SYMSCAE Sure, I think it makes sense that you folks decide the defaults! I just want the option to control it :-) Feel free to push changes in this branch, should be enabled already. |
|
Thanks @SYMSCAE ! I think that, greater verbosity is probably better for us so that if a build fails we see everything. We basically never look at the logs unless something fails. So I think it would be good to add back linker warnings and maybe make the default back to default if we can as the default option. |
|
I changed defaults to |
(essentially the same as diffpy/libobjcryst#32)
Currently the manual compilation with
scons devis quite noisy: it prints all compiler commands and all compiler warnings. There is no flag to control it.For development I found that annoying, mainly because it's hard to spot an error in the wall of warnings.
This PR adds scons flags
verbose: true|false = falseandwarnigns: all|default|none = none.verbosecontrols if compiler commands are printed.warningscontrols compiler warnings. For the latter:I think it's more common to show warnings on demand rather than by default, but that's kinda subjective and I'm happy to change the default to
warnings=allandverbose=true. That would mimick current behavior.