SCOREC / core

parallel finite element unstructured meshes
Other
179 stars 63 forks source link

Add release build to github workflow #359

Closed jacobmerson closed 2 years ago

jacobmerson commented 2 years ago

Adding release build to GitHub actions

see issue #358 . The current release build fails, but the GitHub actions tests are passing. To make sure we notice these issues cropping up I have (attempted) to add a release build to the GitHub actions workflow.

jacobmerson commented 2 years ago

It turns out the release build wasn't the only issue causing my build to fail. That being said, we should probably be testing that both the debug and release builds work since bob.cmake inserts a bunch of flags depending on build type and most developers don't bother to check if code is compiling with multiple build types.

jacobmerson commented 2 years ago

To replicate the errors I was seeing I updated ubuntu to use ubuntu-latest which will use more modern compilers which tends to catch more issues.

Ultimately, the -Werror flag should not be in the release build as discussed in #316

cwsmith commented 2 years ago

@jacobmerson This looks good. Thank you. Are you all set with this?

jacobmerson commented 2 years ago

The pipeline works and I'm set with that. Do you need me to fix the build errors (existing issues in PUMI) before merge?

cwsmith commented 2 years ago

Either way (new PR or here) works for me.

jacobmerson commented 2 years ago

As I track this down I noticed that the compiler is not getting selected correctly. gcc is used for the clang build as well.

jacobmerson commented 2 years ago

@cwsmith we are nearing completion with this and you could probably merge as is (although I should cleanup the commit history). One interesting side effect is that the field_io test fails for the gcc release build. This may indicate that there is some undefined behavior lurking that creates a problem with the gcc optimizer. Do you need me to try to track this down before merge? Hopefully we can replicate with gcc-10 on the SCOREC systems.

If you are happy to merge as is, I will rebase the commits to make them nice.

jacobmerson commented 2 years ago

@cwsmith I don't have merge permissions for core. Can you merge when you get a chance? I squashed the commits into something reasonable.