Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 33 additions & 0 deletions .github/workflows/CI-unixish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,39 @@ jobs:
run: |
ls lib/*.cpp | xargs -n 1 -P $(nproc) g++ -fsyntax-only -std=c++0x -Ilib -Iexternals -Iexternals/picojson -Iexternals/simplecpp -Iexternals/tinyxml2 -DNONNEG

build_cmake_boost:

strategy:
matrix:
os: [macos-13, macos-15] # non-macos platforms are already built with Boost in other contexts
fail-fast: false # Prefer quick result

runs-on: ${{ matrix.os }}

env:
# TODO: figure out why there are cache misses with PCH enabled
CCACHE_SLOPPINESS: pch_defines,time_macros

steps:
- uses: actions/checkout@v4
with:
persist-credentials: false

- name: ccache
uses: hendrikmuhs/[email protected]
with:
key: ${{ github.workflow }}-${{ github.job }}-${{ matrix.os }}

# coreutils contains "nproc"
- name: Install missing software on macos
run: |
brew install coreutils boost

- name: CMake build on macOS (with Boost)
run: |
cmake -S . -B cmake.output.boost -G "Unix Makefiles" -DBUILD_TESTS=On -DCMAKE_DISABLE_PRECOMPILE_HEADERS=On -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
cmake --build cmake.output.boost -- -j$(nproc)

build:

strategy:
Expand Down
3 changes: 3 additions & 0 deletions test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,9 @@ if (BUILD_TESTS)
target_include_directories(testrunner SYSTEM PRIVATE ${tinyxml2_INCLUDE_DIRS})
endif()
target_externals_include_directories(testrunner PRIVATE ${PROJECT_SOURCE_DIR}/externals/simplecpp/)
if (Boost_FOUND)
target_include_directories(testrunner SYSTEM PRIVATE ${Boost_INCLUDE_DIRS})
endif()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Having to updated all the consumers when dependencies change is very fragile and error-prone. #7658 fixes that issue.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but that should not be merged so close to the release. And fixing such a minor issue within implicitly in a major rework is not great.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its always a small fix while technical debt piles up. Its best to take the opportunity to fix the issue once and for all.

if (HAVE_RULES)
target_link_libraries(testrunner ${PCRE_LIBRARY})
endif()
Expand Down