CMake Update#768
Conversation
|
pre-commit.ci autofix |
Codecov Report
@@ Coverage Diff @@
## main #768 +/- ##
=======================================
Coverage 99.06% 99.06%
=======================================
Files 16 16
Lines 3964 3964
=======================================
Hits 3927 3927
Misses 37 37 Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
| containerImage: gcc:8 | ||
| cli11.std: 17 | ||
| gcc4.8: | ||
| containerImage: gcc:4.8 |
There was a problem hiding this comment.
Is there a reason this can't just change to helics/buildenv:gcc4-8-builder? Does .ci/azure-cmake.yml break?
There was a problem hiding this comment.
My guess would be no, but CMake is already installed so just seemed a waste of time, I will put it back to make sure.
There was a problem hiding this comment.
I put it back in the Docker section, installing CMake takes about 30 seconds on the CI test, so we can reduce the build time slightly by leaving it in its own section, or just leave the extra CMake install in place.
There was a problem hiding this comment.
We've got enough jobs where I'm not too worried about it. I'd rather like to move to GHA eventually & then we can probably use the CMake action. Keeping this simple makes it easier to move. ;)
update conan and azure-pipelines to fix gcc 4.8 issue make the CLI11 target sources only for newer CMake Change the cmake to use subdirectory and move the library generation and warnings to separate files.
| @@ -1,5 +1,5 @@ | |||
| function(add_cli_exe T) | |||
| add_executable(${T} ${ARGN} ${CLI11_headers}) | |||
| add_executable(${T} ${ARGN}) | |||
There was a problem hiding this comment.
By removing the headers, doesn't this mean you can't access these in an IDE anymore? (Though if you are using the build-ahead mode, you can - so maybe that's why?)
There was a problem hiding this comment.
In an IDE, the files are now added to the CLI11 Project, which is new. They are added as build in precompile mode or with newer CMakes they are added as private sources in the interface library.
Change the CMake to use subdirectory and move the library generation …and warnings to separate files.