Update ci.yml

This commit is contained in:
Recep Aslantas
2025-01-23 00:58:02 +03:00
parent 925f9c1d1a
commit eb37a28ff5

View File

@@ -188,31 +188,51 @@ jobs:
- name: Set SIMD flags - name: Set SIMD flags
run: | run: |
if [ "${{ matrix.simd }}" == "none" ]; then if ($Env:RUNNER_OS -eq 'Windows') {
export CFLAGS="" if ($Env:SIMD -eq 'none') {
elif [ "${{ matrix.simd }}" == "sse" ]; then $Env:CFLAGS=""
export CFLAGS="-msse" } elseif ($Env:SIMD -eq 'sse') {
elif [ "${{ matrix.simd }}" == "sse2" ]; then $Env:CFLAGS="-arch:SSE"
export CFLAGS="-msse2" } elseif ($Env:SIMD -eq 'sse2') {
elif [ "${{ matrix.simd }}" == "sse3" ]; then $Env:CFLAGS="-arch:SSE2"
export CFLAGS="-msse3" } elseif ($Env:SIMD -eq 'sse3') {
elif [ "${{ matrix.simd }}" == "sse4" ]; then $Env:CFLAGS="-arch:SSE3"
export CFLAGS="-msse4" } elseif ($Env:SIMD -eq 'sse4') {
elif [ "${{ matrix.simd }}" == "avx" ]; then $Env:CFLAGS="-arch:SSE4"
export CFLAGS="-mavx" } elseif ($Env:SIMD -eq 'avx') {
elif [ "${{ matrix.simd }}" == "avx2" ]; then $Env:CFLAGS="-arch:AVX"
export CFLAGS="-mavx2" } elseif ($Env:SIMD -eq 'avx2') {
elif [ "${{ matrix.simd }}" == "neon" ]; then $Env:CFLAGS="-arch:AVX2"
export CFLAGS="-mfpu=neon" } elseif ($Env:SIMD -eq 'neon') {
fi $Env:CFLAGS="-arch:NEON"
}
} else {
if [ "${{ matrix.simd }}" == "none" ]; then
export CFLAGS=""
elif [ "${{ matrix.simd }}" == "sse" ]; then
export CFLAGS="-msse"
elif [ "${{ matrix.simd }}" == "sse2" ]; then
export CFLAGS="-msse2"
elif [ "${{ matrix.simd }}" == "sse3" ]; then
export CFLAGS="-msse3"
elif [ "${{ matrix.simd }}" == "sse4" ]; then
export CFLAGS="-msse4"
elif [ "${{ matrix.simd }}" == "avx" ]; then
export CFLAGS="-mavx"
elif [ "${{ matrix.simd }}" == "avx2" ]; then
export CFLAGS="-mavx2"
elif [ "${{ matrix.simd }}" == "neon" ]; then
export CFLAGS="-mfpu=neon"
fi
}
- name: Configure CMake - name: Configure CMake
run: | run: |
if [ "${{ runner.os }}" == "Windows" ]; then if ($Env:RUNNER_OS -eq 'Windows') {
cmake -B build -G "Visual Studio 17 2022" -A x64 -T host=x64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="$CFLAGS" -DCGLM_STATIC=ON -DCGLM_USE_TEST=ON cmake -B build -G "Visual Studio 17 2022" -A x64 -T host=x64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="$Env:CFLAGS" -DCGLM_STATIC=ON -DCGLM_USE_TEST=ON
else } else {
cmake -B build -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="$CFLAGS" -DCGLM_STATIC=ON -DCGLM_USE_TEST=ON cmake -B build -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_FLAGS="$CFLAGS" -DCGLM_STATIC=ON -DCGLM_USE_TEST=ON
fi }
- name: Build - name: Build
run: cmake --build build run: cmake --build build
@@ -243,23 +263,43 @@ jobs:
- name: Set SIMD flags - name: Set SIMD flags
run: | run: |
if [ "${{ matrix.simd }}" == "none" ]; then if ($Env:RUNNER_OS -eq 'Windows') {
export CFLAGS="" if ($Env:SIMD -eq 'none') {
elif [ "${{ matrix.simd }}" == "sse" ]; then $Env:CFLAGS=""
export CFLAGS="-msse" } elseif ($Env:SIMD -eq 'sse') {
elif [ "${{ matrix.simd }}" == "sse2" ]; then $Env:CFLAGS="-arch:SSE"
export CFLAGS="-msse2" } elseif ($Env:SIMD -eq 'sse2') {
elif [ "${{ matrix.simd }}" == "sse3" ]; then $Env:CFLAGS="-arch:SSE2"
export CFLAGS="-msse3" } elseif ($Env:SIMD -eq 'sse3') {
elif [ "${{ matrix.simd }}" == "sse4" ]; then $Env:CFLAGS="-arch:SSE3"
export CFLAGS="-msse4" } elseif ($Env:SIMD -eq 'sse4') {
elif [ "${{ matrix.simd }}" == "avx" ]; then $Env:CFLAGS="-arch:SSE4"
export CFLAGS="-mavx" } elseif ($Env:SIMD -eq 'avx') {
elif [ "${{ matrix.simd }}" == "avx2" ]; then $Env:CFLAGS="-arch:AVX"
export CFLAGS="-mavx2" } elseif ($Env:SIMD -eq 'avx2') {
elif [ "${{ matrix.simd }}" == "neon" ]; then $Env:CFLAGS="-arch:AVX2"
export CFLAGS="-mfpu=neon" } elseif ($Env:SIMD -eq 'neon') {
fi $Env:CFLAGS="-arch:NEON"
}
} else {
if [ "${{ matrix.simd }}" == "none" ]; then
export CFLAGS=""
elif [ "${{ matrix.simd }}" == "sse" ]; then
export CFLAGS="-msse"
elif [ "${{ matrix.simd }}" == "sse2" ]; then
export CFLAGS="-msse2"
elif [ "${{ matrix.simd }}" == "sse3" ]; then
export CFLAGS="-msse3"
elif [ "${{ matrix.simd }}" == "sse4" ]; then
export CFLAGS="-msse4"
elif [ "${{ matrix.simd }}" == "avx" ]; then
export CFLAGS="-mavx"
elif [ "${{ matrix.simd }}" == "avx2" ]; then
export CFLAGS="-mavx2"
elif [ "${{ matrix.simd }}" == "neon" ]; then
export CFLAGS="-mfpu=neon"
fi
}
- name: Build with meson - name: Build with meson
run: | run: |
@@ -287,31 +327,31 @@ jobs:
- name: Set SIMD flags - name: Set SIMD flags
run: | run: |
if [ "${{ matrix.simd }}" == "none" ]; then if ($Env:SIMD -eq 'none') {
$env:CFLAGS="" $Env:CFLAGS=""
elif [ "${{ matrix.simd }}" == "sse" ]; then } elseif ($Env:SIMD -eq 'sse') {
$env:CFLAGS="-arch:SSE" $Env:CFLAGS="-arch:SSE"
elif [ "${{ matrix.simd }}" == "sse2" ]; then } elseif ($Env:SIMD -eq 'sse2') {
$env:CFLAGS="-arch:SSE2" $Env:CFLAGS="-arch:SSE2"
elif [ "${{ matrix.simd }}" == "sse3" ]; then } elseif ($Env:SIMD -eq 'sse3') {
$env:CFLAGS="-arch:SSE3" $Env:CFLAGS="-arch:SSE3"
elif [ "${{ matrix.simd }}" == "sse4" ]; then } elseif ($Env:SIMD -eq 'sse4') {
$env:CFLAGS="-arch:SSE4" $Env:CFLAGS="-arch:SSE4"
elif [ "${{ matrix.simd }}" == "avx" ]; then } elseif ($Env:SIMD -eq 'avx') {
$env:CFLAGS="-arch:AVX" $Env:CFLAGS="-arch:AVX"
elif [ "${{ matrix.simd }}" == "avx2" ]; then } elseif ($Env:SIMD -eq 'avx2') {
$env:CFLAGS="-arch:AVX2" $Env:CFLAGS="-arch:AVX2"
elif [ "${{ matrix.simd }}" == "neon" ]; then } elseif ($Env:SIMD -eq 'neon') {
$env:CFLAGS="-arch:NEON" $Env:CFLAGS="-arch:NEON"
fi }
- name: Build (x86) - name: Build (x86)
working-directory: win working-directory: win
run: msbuild cglm.vcxproj /p:Configuration=Release /p:Platform=x86 /p:PlatformToolset=v143 /p:BuildInParallel=true /p:AdditionalOptions="$env:CFLAGS" run: msbuild cglm.vcxproj /p:Configuration=Release /p:Platform=x86 /p:PlatformToolset=v143 /p:BuildInParallel=true /p:AdditionalOptions="$Env:CFLAGS"
- name: Build (x64) - name: Build (x64)
working-directory: win working-directory: win
run: msbuild cglm.vcxproj /p:Configuration=Release /p:Platform=x64 /p:PlatformToolset=v143 /p:BuildInParallel=true /p:AdditionalOptions="$env:CFLAGS" run: msbuild cglm.vcxproj /p:Configuration=Release /p:Platform=x64 /p:PlatformToolset=v143 /p:BuildInParallel=true /p:AdditionalOptions="$Env:CFLAGS"
build_documentation: build_documentation:
name: Documentation name: Documentation