9696 -DCMAKE_VERBOSE_MAKEFILE=YES `
9797 -DBUILD_SHARED_LIBS="$($shared_libs)" `
9898 -DENABLE_BOOST_FILESYSTEM="$($use_boost)" `
99- -DBUILD_TESTING=YES
99+ -DENABLE_CXX_INTERFACE=YES `
100+ -DBUILD_TESTING=YES `
101+ -DCMAKE_VERBOSE_MAKEFILE=ON
100102
101103 - name : Build Debug
102104 run : cmake --build "${{ github.workspace }}/cmake-build" --config "Debug" --parallel
@@ -112,6 +114,39 @@ jobs:
112114 cmake --build "${{ github.workspace }}/cmake-build" --config "Debug" --target INSTALL
113115 cmake --build "${{ github.workspace }}/cmake-build" --config "Release" --target INSTALL
114116
117+ - name : Test C++ Interface
118+ run : |
119+ if("${{ matrix.fslib }}" -eq "boost") {
120+ $use_boost = "ON"
121+ } else {
122+ $use_boost = "OFF"
123+ }
124+ if("${{ matrix.arch }}" -eq "X64") {
125+ $triplet = "x64-windows"
126+ } else {
127+ $triplet = "x86-windows"
128+ }
129+ if("${{ matrix.libs }}" -eq "shared") {
130+ $runtime = "DLL"
131+ } else {
132+ $runtime = ""
133+ $triplet = $triplet + "-static"
134+ }
135+
136+ cmake -G "Visual Studio 17 2022" `
137+ -A "${{ matrix.arch }}" `
138+ -S "${{ github.workspace }}/tests/cxx-interface" `
139+ -B "${{ github.workspace }}/cmake-build-cxx-api" `
140+ -DCMAKE_PREFIX_PATH="${{ github.workspace }}/install" `
141+ -DCMAKE_MSVC_RUNTIME_LIBRARY="MultiThreaded$<$<CONFIG:Debug>:Debug>$($runtime)" `
142+ -DCMAKE_TOOLCHAIN_FILE="${Env:VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake" `
143+ -DVCPKG_TARGET_TRIPLET="$($triplet)" `
144+ -DENABLE_BOOST_FILESYSTEM="$($use_boost)" `
145+ -DCMAKE_VERBOSE_MAKEFILE=ON
146+
147+ cmake --build "${{ github.workspace }}/cmake-build-cxx-api" --config "Debug"
148+ cmake --build "${{ github.workspace }}/cmake-build-cxx-api" --config "Release"
149+
115150 - name : Upload Artifact
116151 uses : actions/upload-artifact@v4
117152 with :
0 commit comments