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
76 changes: 54 additions & 22 deletions .github/workflows/continuous.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,14 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
config: [Debug, Release]
include:
- os: ubuntu-latest
config: Debug
integration_tests_flag: &integration_tests_off ''
name: Linux
- os: ubuntu-latest
config: Release
integration_tests_flag: &integration_tests_on '-DWMTK_BUILD_INTEGRATION_TESTS=ON'
name: Linux
steps:
- name: Checkout repository
Expand Down Expand Up @@ -54,14 +58,10 @@ jobs:
run: |
mkdir -p build
cd build
WMTK_INTEGRATION_TESTS_FLAG=""
if [ "${{ matrix.config }}" = "Release" ]; then
WMTK_INTEGRATION_TESTS_FLAG="-DWMTK_BUILD_INTEGRATION_TESTS=ON"
fi
cmake .. \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_BUILD_TYPE=${{ matrix.config }} \
${WMTK_INTEGRATION_TESTS_FLAG}
${{ matrix.integration_tests_flag }}

- name: Build
run: cd build; make -j2; ccache --show-stats
Expand All @@ -79,8 +79,19 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [macos-latest, macos-14]
config: [Debug, Release]
include:
- os: macos-latest
config: Debug
integration_tests_flag: *integration_tests_off
- os: macos-latest
config: Release
integration_tests_flag: *integration_tests_on
- os: macos-14
config: Debug
integration_tests_flag: *integration_tests_off
- os: macos-14
config: Release
integration_tests_flag: *integration_tests_on

steps:
- name: Checkout repository
Expand Down Expand Up @@ -110,13 +121,10 @@ jobs:
run: |
mkdir -p build
cd build
WMTK_INTEGRATION_TESTS_FLAG=""
if [ "${{ matrix.config }}" = "Release" ]; then
WMTK_INTEGRATION_TESTS_FLAG="-DWMTK_BUILD_INTEGRATION_TESTS=ON"
fi
cmake .. \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_BUILD_TYPE=${{ matrix.config }}
-DCMAKE_BUILD_TYPE=${{ matrix.config }} \
${{ matrix.integration_tests_flag }}

- name: Build
run: cd build; make -j2; ccache --show-stats
Expand All @@ -129,14 +137,34 @@ jobs:
####################

Windows:
name: Windows (${{ matrix.config }})
runs-on: windows-2022
name: ${{ matrix.name }} (${{ matrix.config }})
runs-on: ${{ matrix.os }}
env:
SCCACHE_IDLE_TIMEOUT: "12000"
strategy:
fail-fast: false
matrix:
config: [Debug, Release]
include:
- os: windows-2022
name: Windows 2022
config: Debug
vs_path: &vs_path_2022 'C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat'
integration_tests_flag: *integration_tests_off
- os: windows-2022
name: Windows 2022
config: Release
vs_path: *vs_path_2022
integration_tests_flag: *integration_tests_on
- os: windows-2025-vs2026
name: Windows 2025 (VS 2026)
config: Debug
vs_path: &vs_path_2026 'C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\Tools\VsDevCmd.bat'
integration_tests_flag: *integration_tests_off
- os: windows-2025-vs2026
name: Windows 2025 (VS 2026)
config: Release
vs_path: *vs_path_2026
integration_tests_flag: *integration_tests_on

steps:
- name: Checkout repository
Expand Down Expand Up @@ -172,22 +200,26 @@ jobs:
- name: Configure
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" -arch=x64
set WMTK_INTEGRATION_TESTS_FLAG=
if "${{ matrix.config }}"=="Release" set WMTK_INTEGRATION_TESTS_FLAG=-DWMTK_BUILD_INTEGRATION_TESTS=ON
echo Runner OS: ${{ matrix.os }}
echo Build Config: ${{ matrix.config }}
echo VS Dev Cmd: ${{ matrix.vs_path }}
call "${{ matrix.vs_path }}" -arch=x64
cmake -G Ninja ^
-DCMAKE_CXX_COMPILER_LAUNCHER=sccache ^
-DCMAKE_POLICY_DEFAULT_CMP0141=NEW ^
-DCMAKE_MSVC_DEBUG_INFORMATION_FORMAT=Embedded ^
-DCMAKE_BUILD_TYPE=${{ matrix.config }} ^
%WMTK_INTEGRATION_TESTS_FLAG% ^
${{ matrix.integration_tests_flag }} ^
-B build ^
-S .

- name: Build
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" -arch=x64
echo Runner OS: ${{ matrix.os }}
echo Build Config: ${{ matrix.config }}
echo VS Dev Cmd: ${{ matrix.vs_path }}
call "${{ matrix.vs_path }}" -arch=x64
cmake --build build -j2 && sccache --show-stats

- name: Tests
Expand Down
10 changes: 10 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,16 @@ if(WMTK_WITH_CCACHE AND CCACHE_PROGRAM)
endforeach()
endif()

################################################################################
# CMake Policies
################################################################################

cmake_policy(SET CMP0054 NEW) # Only interpret if() arguments as variables or keywords when unquoted.
cmake_policy(SET CMP0076 NEW) # target_sources() command converts relative paths to absolute.
if(CMAKE_VERSION VERSION_GREATER_EQUAL "3.24")
cmake_policy(SET CMP0135 NEW) # Set the timestamps of all extracted contents to the time of the extraction.
endif()

# ###############################################################################
project(WildMeshingToolkit DESCRIPTION "A mesh optimization toolkit")

Expand Down
2 changes: 1 addition & 1 deletion cmake/recipes/delaunay_psm.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ include(FetchContent)
FetchContent_Declare(
delauanay_psm
GIT_REPOSITORY https://github.com/wildmeshing/Delaunay_psm
GIT_TAG 80242c22dc09ee215bc7037e561af0c4779e6cc7
GIT_TAG 85225e697ce496e744589b1576718754499e03a4
)
FetchContent_MakeAvailable(delauanay_psm)

Expand Down
2 changes: 1 addition & 1 deletion components/tetwild/wmtk/components/tetwild/tetwild.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -440,7 +440,7 @@ TetWildMesh::ExportStruct tetwild_with_export(nlohmann::json json_params)
if (json_params["DEBUG_hausdorff"]) {
const int n_samples = 10000;
Eigen::MatrixXd B;
Eigen::MatrixXi FI;
Eigen::VectorX<int64_t> FI; // must be int64 for new MSVC compiler
Eigen::MatrixXd X;

igl::random_points_on_mesh(n_samples, V, F, B, FI, X);
Expand Down
Loading