Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Add Azure Pipelines configuration for CI builds using CMake #172
This AzP provides comprehensive setup for CI builds:
This configuration allows any contributor to set up CI pipelines with AzP at
Sample build matrix available at https://dev.azure.com/mloskot/geos/_build/
Thanks @mloskot . For some reason I can not access the pipeline page on this PC (browser extension gone haywire) but I will check it out later to look at the output, build times, etc. Initial thought is that this should replace AppVeyor and Travis, so either needs to include autotools or wait until we are able to replace autools w/cmake. cmake versions should probably be set to the minimum (3.8 for Linux, higher for Windows). I'm also wondering why we test building w/C++14, 17, and 20 standards?
@pramsey Yes, it pretty much does do it all with some exceptions like no C++11 in Visual Studio or may not be building C++11 with latest GCC/clang as time-to-build optimisation or some C++ versions may be skipped where not supported by the compiler version.
As you can see in my sample pipeline, it already helps to discover C++ portability issues.
In fact, there should be more:
Something for future.
For numeric/float/bit intensive codebases, testing variety of compilers and versions of the same compilers and C++ language support within particular compiler version does help to find bugs.
I am not going to propose to replace those.
GEOS requires C++11 only as minimum supported version.
Users should be able to compile their GEOS clients as C++11 or any later version of C++.