4
4
push :
5
5
branches :
6
6
- master
7
- - try-github-actions
7
+ - try-github-actions-for-windows
8
8
paths :
9
9
- .github/workflows/cmake.yml
10
10
- ' **CMakeLists.txt'
62
62
strategy :
63
63
fail-fast : true
64
64
matrix :
65
- os : [ macos-latest, ubuntu-latest ]
65
+ os : [ macos-latest, ubuntu-latest, windows-latest ]
66
66
fflags : [
67
67
" -Wall -Wno-unused-dummy-argument -Wno-unused-variable -Wno-unused-label -Werror=conversion -fimplicit-none -frecursive -fcheck=all" ,
68
68
" -Wall -Wno-unused-dummy-argument -Wno-unused-variable -Wno-unused-label -Werror=conversion -fimplicit-none -frecursive -fcheck=all -fopenmp" ]
@@ -72,26 +72,28 @@ jobs:
72
72
- name : Checkout LAPACK
73
73
uses : actions/checkout@8e5e7e5ab8b370d6c329ec480221332ada57f0ab # v3.5.2
74
74
75
+ - name : Install ninja-build tool
76
+ uses : seanmiddleditch/gha-setup-ninja@16b940825621068d98711680b6c3ff92201f8fc0 # v3
77
+
75
78
- name : Use GCC-11 on MacOS
76
79
if : ${{ matrix.os == 'macos-latest' }}
77
80
run : >
78
- cmake -B build
81
+ cmake -B build -G Ninja
79
82
-D CMAKE_C_COMPILER="gcc-11"
80
83
-D CMAKE_Fortran_COMPILER="gfortran-11"
81
84
-D USE_FLAT_NAMESPACE:BOOL=ON
82
85
83
- # - name: Use Unix Makefiles on Windows
84
- # if: ${{ matrix.os == 'windows-latest' }}
85
- # run: >
86
- # cmake -B build
87
- # -G "Unix Makefiles"
88
- # -D CMAKE_C_FLAGS="${{env.CFLAGS}} -Wl,--stack=1000000000"
86
+ - name : Special flags for Windows
87
+ if : ${{ matrix.os == 'windows-latest' }}
88
+ run : >
89
+ cmake -B build -G Ninja
90
+ -D CMAKE_EXE_LINKER_FLAGS="-Wl,--stack=2097152"
89
91
90
92
- name : Configure CMake
91
93
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
92
94
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
93
95
run : >
94
- cmake -B build
96
+ cmake -B build -G Ninja
95
97
-D CMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
96
98
-D CMAKE_INSTALL_PREFIX=${{github.workspace}}/lapack_install
97
99
-D CBLAS:BOOL=ON
@@ -107,18 +109,18 @@ jobs:
107
109
run : |
108
110
ctest -D ExperimentalStart
109
111
ctest -D ExperimentalConfigure
110
- ctest -D ExperimentalBuild -j2
112
+ ctest -D ExperimentalBuild
111
113
112
114
- name : Test with OpenMP
113
115
working-directory : ${{github.workspace}}/build
114
- if : ${{ contains( matrix.fflags, 'openmp' ) }}
116
+ if : ${{ contains( matrix.fflags, 'openmp' ) && (matrix.os != 'windows-latest') }}
115
117
run : |
116
118
ctest -D ExperimentalTest --schedule-random -j1 --output-on-failure --timeout 100
117
119
ctest -D ExperimentalSubmit
118
120
119
121
- name : Test
120
122
working-directory : ${{github.workspace}}/build
121
- if : ${{ !contains( matrix.fflags, 'openmp' ) }}
123
+ if : ${{ !contains( matrix.fflags, 'openmp' ) && (matrix.os != 'windows-latest') }}
122
124
run : |
123
125
ctest -D ExperimentalTest --schedule-random -j2 --output-on-failure --timeout 100
124
126
ctest -D ExperimentalSubmit
0 commit comments