Skip to content

Commit

Permalink
Use computed CMake generators
Browse files Browse the repository at this point in the history
So far these have been hard-coded, but to properly support vs17, we
need to compute them and use the computed values.
  • Loading branch information
cmb69 committed Sep 7, 2024
1 parent a46d016 commit d164e44
Show file tree
Hide file tree
Showing 14 changed files with 27 additions and 16 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/freetype_cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
id: virtuals
run: powershell winlib-builder/scripts/compute-virtuals -version ${{github.event.inputs.php}} -arch ${{matrix.arch}}
- name: Configure freetype
run: cd freetype && md build && cd build && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
run: cd freetype && md build && cd build && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
- name: Build freetype
run: cd freetype\build && cmake --build . --config RelWithDebInfo
- name: Install freetype
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/libavif.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,10 @@ jobs:
uses: ilammy/setup-nasm@v1
- name: Configure aom for x64
if: matrix.arch == 'x64'
run: cd libavif\ext\aom && md build.libavif && cd build.libavif && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -DENABLE_DOCS=0 -DENABLE_EXAMPLES=0 -DENABLE_TESTDATA=0 -DENABLE_TESTS=0 -DENABLE_TOOLS=0 -DENABLE_NASM=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE4_1=1 -DENABLE_SSE4_2=1 -DENABLE_AVX=1 -DENABLE_AVX2=1 ..
run: cd libavif\ext\aom && md build.libavif && cd build.libavif && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -DENABLE_DOCS=0 -DENABLE_EXAMPLES=0 -DENABLE_TESTDATA=0 -DENABLE_TESTS=0 -DENABLE_TOOLS=0 -DENABLE_NASM=1 -DENABLE_SSE2=1 -DENABLE_SSE3=1 -DENABLE_SSSE3=1 -DENABLE_SSE4_1=1 -DENABLE_SSE4_2=1 -DENABLE_AVX=1 -DENABLE_AVX2=1 ..
- name: Configure aom for x86
if: matrix.arch == 'x86'
run: cd libavif\ext\aom && md build.libavif && cd build.libavif && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -DENABLE_DOCS=0 -DENABLE_EXAMPLES=0 -DENABLE_TESTDATA=0 -DENABLE_TESTS=0 -DENABLE_TOOLS=0 -DENABLE_NASM=1 -DENABLE_SSE2=0 -DENABLE_SSE3=0 -DENABLE_SSSE3=0 -DENABLE_SSE4_1=0 -DENABLE_SSE4_2=0 -DENABLE_AVX=0 -DENABLE_AVX2=0 ..
run: cd libavif\ext\aom && md build.libavif && cd build.libavif && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -DENABLE_DOCS=0 -DENABLE_EXAMPLES=0 -DENABLE_TESTDATA=0 -DENABLE_TESTS=0 -DENABLE_TOOLS=0 -DENABLE_NASM=1 -DENABLE_SSE2=0 -DENABLE_SSE3=0 -DENABLE_SSSE3=0 -DENABLE_SSE4_1=0 -DENABLE_SSE4_2=0 -DENABLE_AVX=0 -DENABLE_AVX2=0 ..
- name: Build aom
run: cd libavif\ext\aom\build.libavif && cmake --build . --config Release
- name: Install aom
Expand All @@ -53,7 +53,7 @@ jobs:
xcopy Release\aom.lib .\aom_a.lib*
xcopy .\aom_a.lib ..\..\..\..\install\lib\
- name: Configure libavif
run: cd libavif && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DAVIF_CODEC_AOM=1 -DAVIF_LOCAL_AOM=1 -DAVIF_ENABLE_WERROR=0 -DBUILD_SHARED_LIBS=0 .
run: cd libavif && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DAVIF_CODEC_AOM=1 -DAVIF_LOCAL_AOM=1 -DAVIF_ENABLE_WERROR=0 -DBUILD_SHARED_LIBS=0 .
- name: Build libavif
run: cd libavif && cmake --build . --config RelWithDebInfo
- name: Install libavif
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/libjpeg.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
id: virtuals
run: powershell winlib-builder/scripts/compute-virtuals -version ${{github.event.inputs.php}} -arch ${{matrix.arch}}
- name: Configure libjpeg
run: cd libjpeg && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DWITH_JPEG8=1 -DWITH_CRT_DLL=1 -DENABLE_SHARED=0 -DWITH_TURBOJPEG=0 .
run: cd libjpeg && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DWITH_JPEG8=1 -DWITH_CRT_DLL=1 -DENABLE_SHARED=0 -DWITH_TURBOJPEG=0 .
- name: Build libjpeg
run: cd libjpeg && cmake --build . --config RelWithDebInfo
- name: Install libjpeg
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/liblzma.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
id: virtuals
run: powershell winlib-builder/scripts/compute-virtuals -version ${{github.event.inputs.php}} -arch ${{matrix.arch}}
- name: Configure liblzma
run: cd liblzma && md build && cd build && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
run: cd liblzma && md build && cd build && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
- name: Build liblzma
run: cd liblzma\build && cmake --build . --config RelWithDebInfo
- name: Install liblzma
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/libmemcached.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
run: choco install winflexbison3
- run: path
- name: Configure libmemcached
run: cd libmemcached && md build && cd build && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
run: cd libmemcached && md build && cd build && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
- name: Build libmemcached
run: cd libmemcached\build && cmake --build . --config RelWithDebInfo
- name: Install libmemcached
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/librdkafka.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
- name: Patch librdkafka
run: cd librdkafka && git apply --ignore-whitespace ..\winlib-builder\patches\librdkafka.patch
- name: Configure librdkafka
run: cd librdkafka && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DWITH_ZSTD=ON -DWITH_SSL=ON -DWITH_ZLIB=ON -DCMAKE_PREFIX_PATH:PATH=${{github.workspace}}\deps -DZLIB_LIBRARY:PATH=${{github.workspace}}\deps\lib\zlib_a.lib -DZSTD_LIBRARY:PATH=${{github.workspace}}\deps\lib\libzstd_a.lib .
run: cd librdkafka && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DWITH_ZSTD=ON -DWITH_SSL=ON -DWITH_ZLIB=ON -DCMAKE_PREFIX_PATH:PATH=${{github.workspace}}\deps -DZLIB_LIBRARY:PATH=${{github.workspace}}\deps\lib\zlib_a.lib -DZSTD_LIBRARY:PATH=${{github.workspace}}\deps\lib\libzstd_a.lib .
- name: Build librdkafka
run: cd librdkafka && cmake --build . --config RelWithDebInfo
- name: Install librdkafka
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/libssh2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
- name: Fetch dependencies
run: powershell winlib-builder/scripts/fetch-deps -lib libssh2 -version ${{github.event.inputs.php}} -vs ${{steps.virtuals.outputs.vs}} -arch ${{matrix.arch}} -stability ${{github.event.inputs.stability}}
- name: Configure libssh2
run: cd libssh2 && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DCRYPTO_BACKEND=OpenSSL -DOPENSSL_ROOT_DIR:PATH=${{github.workspace}}/deps -DENABLE_ZLIB_COMPRESSION=ON -DZLIB_INCLUDE_DIR:PATH=${{github.workspace}}/deps/include -DZLIB_LIBRARY:FILEPATH=${{github.workspace}}/deps/lib/zlib_a.lib -DBUILD_SHARED_LIBS=ON .
run: cd libssh2 && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DCRYPTO_BACKEND=OpenSSL -DOPENSSL_ROOT_DIR:PATH=${{github.workspace}}/deps -DENABLE_ZLIB_COMPRESSION=ON -DZLIB_INCLUDE_DIR:PATH=${{github.workspace}}/deps/include -DZLIB_LIBRARY:FILEPATH=${{github.workspace}}/deps/lib/zlib_a.lib -DBUILD_SHARED_LIBS=ON .
- name: Build libssh2
run: cd libssh2 && cmake --build . --config RelWithDebInfo
- name: Install libssh2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/libtidy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
- name: Fetch dependencies
run: powershell winlib-builder/scripts/fetch-deps -lib libtidy -version ${{github.event.inputs.php}} -vs ${{steps.virtuals.outputs.vs}} -arch ${{matrix.arch}} -stability ${{github.event.inputs.stability}}
- name: Configure libtidy
run: cd libtidy && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
run: cd libtidy && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
- name: Build libtidy
run: cd libtidy && cmake --build . --config RelWithDebInfo
- name: Install libtidy
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/libzip.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,10 @@ jobs:
run: powershell winlib-builder/scripts/fetch-deps -lib libzip -version ${{github.event.inputs.php}} -vs ${{steps.virtuals.outputs.vs}} -arch ${{matrix.arch}} -stability ${{github.event.inputs.stability}}
- name: Configure libzip for PHP < 8.0
if: github.event.inputs.php < 8.0
run: cd libzip && md build && cd build && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DZLIB_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DZLIB_LIBRARY:PATH=${{github.workspace}}\deps\lib\zlib_a.lib -DBZIP2_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DBZIP2_LIBRARIES:PATH=${{github.workspace}}\deps\lib\libbz2_a.lib -DBUILD_TOOLS=OFF -DBUILD_REGRESS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_DOC=OFF ..
run: cd libzip && md build && cd build && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DZLIB_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DZLIB_LIBRARY:PATH=${{github.workspace}}\deps\lib\zlib_a.lib -DBZIP2_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DBZIP2_LIBRARIES:PATH=${{github.workspace}}\deps\lib\libbz2_a.lib -DBUILD_TOOLS=OFF -DBUILD_REGRESS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_DOC=OFF ..
- name: Configure libzip for PHP >= 8.0
if: github.event.inputs.php >= 8.0
run: cd libzip && md build && cd build && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DZLIB_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DZLIB_LIBRARY:PATH=${{github.workspace}}\deps\lib\zlib_a.lib -DBZIP2_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DBZIP2_LIBRARIES:PATH=${{github.workspace}}\deps\lib\libbz2_a.lib -DLIBLZMA_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DLIBLZMA_LIBRARY:PATH=${{github.workspace}}\deps\lib\liblzma_a.lib -DBUILD_TOOLS=OFF -DBUILD_REGRESS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_DOC=OFF ..
run: cd libzip && md build && cd build && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} -DZLIB_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DZLIB_LIBRARY:PATH=${{github.workspace}}\deps\lib\zlib_a.lib -DBZIP2_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DBZIP2_LIBRARIES:PATH=${{github.workspace}}\deps\lib\libbz2_a.lib -DLIBLZMA_INCLUDE_DIR:PATH=${{github.workspace}}\deps\include -DLIBLZMA_LIBRARY:PATH=${{github.workspace}}\deps\lib\liblzma_a.lib -DBUILD_TOOLS=OFF -DBUILD_REGRESS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_DOC=OFF ..
- name: Build libzip
run: cd libzip\build && cmake --build . --config RelWithDebInfo
- name: Install libzip
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/libzstd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
- name: Patch libzstd
run: cd libzstd && git apply --ignore-whitespace ..\winlib-builder\patches\libzstd.patch
- name: Configure libzstd
run: cd libzstd\build\cmake && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
run: cd libzstd\build\cmake && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
- name: Build libzstd
run: cd libzstd\build\cmake && cmake --build . --config RelWithDebInfo
- name: Install libzstd
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/nghttp2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
- name: Fetch dependencies
run: powershell winlib-builder/scripts/fetch-deps -lib nghttp2 -version ${{github.event.inputs.php}} -vs ${{steps.virtuals.outputs.vs}} -arch ${{matrix.arch}} -stability ${{github.event.inputs.stability}}
- name: Configure nghttp2
run: cd nghttp2 && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
run: cd nghttp2 && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
- name: Build nghttp2
run: cd nghttp2 && cmake --build . --config RelWithDebInfo --target nghttp2
- name: Install nghttp2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pslib.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
id: virtuals
run: powershell winlib-builder/scripts/compute-virtuals -version ${{github.event.inputs.php}} -arch ${{matrix.arch}}
- name: Configure pslib
run: cd pslib && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
run: cd pslib && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} .
- name: Build pslib
run: cd pslib && cmake --build . --config RelWithDebInfo
- name: Install pslib
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/wineditline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
id: virtuals
run: powershell winlib-builder/scripts/compute-virtuals -version ${{github.event.inputs.php}} -arch ${{matrix.arch}}
- name: Configure wineditline
run: cd wineditline && md build && cd build && cmake -G "Visual Studio 16 2019" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
run: cd wineditline && md build && cd build && cmake -G "${{steps.virtuals.outputs.cmakegen}}" -A ${{steps.virtuals.outputs.msarch}} -T ${{steps.virtuals.outputs.msts}} ..
- name: Build wineditline
run: cd wineditline\build && cmake --build . --config RelWithDebInfo
- name: Install wineditline
Expand Down
11 changes: 11 additions & 0 deletions scripts/compute-virtuals.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,16 @@ if (-not $msarch) {
throw "no suitable MS arch available"
}

$cmakegens = @{
"vc15" = "Visual Studio 15 2017"
"vc16" = "Visual Studio 16 2019"
"vs17" = "Visual Studio 17 2022"
}
$cmakegen = $cmakegens.$vs
if (-not $cmakegen) {
throw "no suitable CMake generator available"
}

& {
Write-Output "vs=$vs"
Write-Output "vsnum=$vsnum"
Expand All @@ -86,4 +96,5 @@ if (-not $msarch) {
Write-Output "msts=$msts"
Write-Output "msarch=$msarch"
Write-Output "winsdk=$winsdk"
Write-Output "cmakegen=$cmakegen"
} | Out-File -Append -FilePath $env:GITHUB_OUTPUT

0 comments on commit d164e44

Please sign in to comment.