- GitHub discontinued Actions runners for macos-10 and macos-11, so we
build cboe on macos-12 now
- The path to Xcode.app has changed
- mac scons build wanted a new include statement for vector
- hint scons to look for boost 1.85, not 1.58.
- boost-spirit dependency needed to be installed
- Visual Studio wanted boost/filesystem.hpp included in more places
- a deprecated enum was removed from new versions of boost, so we use
its replacement enum now
- vcpkg repository is now pinned to a commit where boost 1.84 libraries
work smoothly, there should be no more surprises
- vcpkg dependencies now cache, so successive CI runs are dramatically
faster
- for win-scons, we need to use 'call' in our batch script to source
vcvarsall.bat
- I updated the includepath and libpath we pass to win-scons to match
reality, but it still can't find any vcpkg libraries. This will need
further sleuthing
The compiler can now be defined with `scons CC=clang CXX=clang++`
and/or with the `CC` and `CXX` environment variables.
The build will pick the default C and C++ compilers of the user's
system, so probably GCC on most, and Clang and some of them (e.g. on
Travis which is configured to use Clang).
Also cleaned up unnecessary definitions which are already part of the
base environment, and removed the unnecessary (default on Linux) and
Clang-only -stdlib=libstdc++ definition (still needed on macOS).
Also add options to configure the compilers for C and C++ (no C code yet
but C libraries may be added in the future, and we wouldn't to mix e.g.
gcc for C and clang++ for C++).
Several issues was detected with linux build:
- travis_wait raise timeout
- --jobs=2 sometimes fails
- add flag BOOST_NO_CXX11_SCOPED_ENUMS to fix compilation with old boost filesystme
- add missing tool xmllint