13
13
jobs :
14
14
15
15
linux-and-mac :
16
+ name : Linux and MacOS build
16
17
# if: ${{ false }}
17
18
runs-on : ${{ matrix.config.os }}
18
- name : ${{ matrix.config.os }} BUILD=${{ matrix.config.build }} CC=${{ matrix.config.cc }} CXX=${{ matrix.config.cxx }} AUTOTOOLS=${{ matrix.config.autotools }}
19
19
20
20
strategy :
21
- fail-fast : false
21
+ # fail-fast: false
22
22
matrix :
23
23
config :
24
24
# - {os: ubuntu-16.04, build: 'static', cc: 'gcc-4.4', cxx: 'g++-4.4', autotools: 'no', cppstd: 'gnu++0x'}
25
25
# - {os: ubuntu-16.04, build: 'static', cc: 'gcc-4.6', cxx: 'g++-4.6', autotools: 'no', cppstd: 'gnu++0x'}
26
- - {os: ubuntu-16.04, build: 'static', cc: 'gcc-4.7', cxx: 'g++-4.7', autotools: 'no', cppstd: 'gnu++11'}
27
- - {os: ubuntu-16.04, build: 'static', cc: 'gcc-4.8', cxx: 'g++-4.8', autotools: 'no', cppstd: 'c++11'}
26
+ # - {os: ubuntu-16.04, build: 'static', cc: 'gcc-4.7', cxx: 'g++-4.7', autotools: 'no', cppstd: 'gnu++11'}
27
+ # - {os: ubuntu-16.04, build: 'static', cc: 'gcc-4.8', cxx: 'g++-4.8', autotools: 'no', cppstd: 'c++11'}
28
28
- {os: ubuntu-16.04, build: 'static', cc: 'gcc-5', cxx: 'g++-5', autotools: 'no', cppstd: 'c++11'}
29
29
- {os: ubuntu-16.04, build: 'static', cc: 'gcc-6', cxx: 'g++-6', autotools: 'no', cppstd: 'c++11'}
30
30
- {os: ubuntu-latest, build: 'static', cc: 'gcc-7', cxx: 'g++-7', autotools: 'no', cppstd: 'c++11'}
31
- - {os: ubuntu-latest, build: 'shared', cc: 'gcc', cxx: 'g++', autotools: 'yes', cppstd: 'c++11'}
32
- - {os: ubuntu-latest, build: 'static', cc: 'gcc', cxx: 'g++', autotools: 'yes', cppstd: 'c++11'}
31
+ - {os: ubuntu-latest, build: 'shared', cc: 'gcc', cxx: 'g++', autotools: 'yes', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
32
+ - {os: ubuntu-latest, build: 'static', cc: 'gcc', cxx: 'g++', autotools: 'yes', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
33
33
- {os: ubuntu-latest, build: 'shared', cc: 'gcc', cxx: 'g++', autotools: 'no', cppstd: 'c++11'}
34
34
- {os: ubuntu-latest, build: 'static', cc: 'gcc', cxx: 'g++', autotools: 'no', cppstd: 'c++11'}
35
- - {os: ubuntu-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11'}
36
- - {os: ubuntu-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11'}
37
- - {os: ubuntu-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11'}
38
- - {os: ubuntu-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11'}
39
- - {os: macOS-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11'}
40
- - {os: macOS-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11'}
41
- - {os: macOS-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11'}
42
- - {os: macOS-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11'}
35
+ - {os: ubuntu-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
36
+ - {os: ubuntu-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
37
+ - {os: ubuntu-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
38
+ - {os: ubuntu-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
39
+ - {os: macOS-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
40
+ - {os: macOS-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'yes', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
41
+ - {os: macOS-latest, build: 'shared', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
42
+ - {os: macOS-latest, build: 'static', cc: 'clang', cxx: 'clang++', autotools: 'no', cppstd: 'c++11', cflags: '-g -fsanitize=address' }
43
43
44
44
env :
45
- ASAN_OPTIONS : detect_odr_violation=0
45
+ ASAN_OPTIONS : ${{ matrix.config.asan }}
46
46
AUTOTOOLS : ${{ matrix.config.autotools }}
47
+ EXTRA_CFLAGS : ${{ matrix.config.cflags }}
48
+ EXTRA_CXXFLAGS : ${{ matrix.config.cflags }}
49
+ EXTRA_LDFLAGS : ${{ matrix.config.cflags }}
50
+ SASS_LIBSASS_PATH : libsass
47
51
COVERAGE : no
48
52
BUILD : ${{ matrix.config.build }}
49
53
CXX : ${{ matrix.config.cxx }}
@@ -125,20 +129,31 @@ jobs:
125
129
env :
126
130
MAKE_OPTS : LIBSASS_CPPSTD=${{ matrix.config.cppstd }}
127
131
run : ./script/ci-build-libsass
132
+ - name : Call LibSass make install
133
+ run : sudo EXTRA_CFLAGS="$EXTRA_CFLAGS" EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS" EXTRA_LDFLAGS="$EXTRA_LDFLAGS" make install
134
+ - name : Call SassC make install
135
+ run : sudo EXTRA_CFLAGS="$EXTRA_CFLAGS" EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS" EXTRA_LDFLAGS="$EXTRA_LDFLAGS" make -C sassc install
136
+ - name : Check sassc help call
137
+ run : sassc --term-colors --help
128
138
129
139
130
140
windows-msvc :
131
- runs-on : windows-latest
141
+ runs-on : ${{ matrix.config.os }}
132
142
name : Windows MSVC build
143
+ # if: ${{ false }}
133
144
134
145
strategy :
135
- fail-fast : false
146
+ # fail-fast: false
136
147
matrix :
137
148
config :
138
- - {build: Release, platform: Win64}
139
- - {build: Debug, platform: Win64}
140
- - {build: Release, platform: Win32}
141
- - {build: Debug, platform: Win32}
149
+ - {os: 'windows-latest', build: Release, platform: Win64, version: 'latest'}
150
+ - {os: 'windows-latest', build: Debug, platform: Win64, version: 'latest'}
151
+ - {os: 'windows-latest', build: Release, platform: Win32, version: 'latest'}
152
+ - {os: 'windows-latest', build: Debug, platform: Win32, version: 'latest'}
153
+ - {os: 'windows-2016', build: Release, platform: Win64, version: '[15.0,16.0]'}
154
+ - {os: 'windows-2016', build: Debug, platform: Win64, version: '[15.0,16.0]'}
155
+ - {os: 'windows-2016', build: Release, platform: Win32, version: '[15.0,16.0]'}
156
+ - {os: 'windows-2016', build: Debug, platform: Win32, version: '[15.0,16.0]'}
142
157
143
158
steps :
144
159
- name : Change git config to preserve line-endings
@@ -156,28 +171,40 @@ jobs:
156
171
run : gem install minitest
157
172
- name : Add msbuild to PATH
158
173
174
+ with :
175
+ vs-version : ${{ matrix.config.version }}
159
176
- name : Clone and checkout sassc repository
160
- run : git clone https://github.com/sass /sassc.git
177
+ run : git clone https://github.com/mgreter /sassc.git --branch refactor/libsass-4-alpha
161
178
- name : Clone and checkout sass-spec repository
162
- run : git clone https://github.com/sass /sass-spec.git
179
+ run : git clone https://github.com/mgreter /sass-spec.git --branch refactor/libsass-4-alpha
163
180
- name : Compile libsass ${{ matrix.config.build }} build for ${{ matrix.config.platform }}
164
- run : msbuild /m:4 /p:"Configuration=${{ matrix.config.build }};Platform=${{ matrix.config.platform }}" sassc\win\sassc.sln
181
+ run : msbuild /m:4 /p:Configuration=${{ matrix.config.build }} /p:Platform=${{ matrix.config.platform }} sassc\win\sassc.sln
182
+ - name : Check sassc help call
183
+ run : sassc\bin\sassc.exe --term-colors --help
165
184
- name : Execute spec test runner
185
+ if : matrix.config.build != 'Debug'
166
186
run : ruby sass-spec/sass-spec.rb --probe-todo --impl libsass -c sassc/bin/sassc.exe -s sass-spec/spec
167
187
168
188
windows-mingw :
169
189
runs-on : windows-latest
170
190
name : Windows MinGW build
171
191
172
192
strategy :
173
- fail-fast : false
193
+ # fail-fast: false
174
194
matrix :
175
195
config :
176
196
- {build: shared, platform: x64}
177
197
- {build: static, platform: x64}
178
198
- {build: shared, platform: x86}
179
199
- {build: static, platform: x86}
180
200
201
+ env :
202
+ ASAN_OPTIONS : ${{ matrix.config.asan }}
203
+ EXTRA_CFLAGS : ${{ matrix.config.cflags }}
204
+ EXTRA_CXXFLAGS : ${{ matrix.config.cflags }}
205
+ # SASS_LIBSASS_PATH: libsass
206
+ # COVERAGE: no
207
+
181
208
steps :
182
209
- name : Change git config to preserve line-endings
183
210
run : |
@@ -197,19 +224,20 @@ jobs:
197
224
- name : Install ruby minitest module
198
225
run : gem install minitest
199
226
- name : Clone and checkout sassc repository
200
- run : git clone https://github.com/sass /sassc.git
227
+ run : git clone https://github.com/mgreter /sassc.git --branch refactor/libsass-4-alpha
201
228
- name : Clone and checkout sass-spec repository
202
- run : git clone https://github.com/sass/sass-spec.git
203
- - name : Add libsass library path to be found
204
- if : matrix.config.build == 'shared'
205
- run : echo "/d/a/libsass/libsass/lib" >> $GITHUB_PATH
229
+ run : git clone https://github.com/mgreter/sass-spec.git --branch refactor/libsass-4-alpha
206
230
- name : Compile libsass ${{ matrix.config.build }} build for ${{ matrix.config.platform }}
207
- run : make ${{ matrix.config.build }} BUILD=${{ matrix.config.build }}
231
+ run : make -j5 ${{ matrix.config.build }} BUILD=${{ matrix.config.build }} CC=gcc
232
+ - name : Listening results
233
+ run : dir lib
208
234
- name : Copy library over to pass call test
209
235
if : matrix.config.build == 'shared'
210
- run : copy /a/libsass/libsass/ lib/ libsass.dll sassc/ bin/
236
+ run : copy lib\ libsass.dll sassc\ bin
211
237
- name : Compile sassc ${{ matrix.config.build }} build for ${{ matrix.config.platform }}
212
- run : make sassc BUILD=${{ matrix.config.build }}
238
+ run : make -j5 sassc BUILD=${{ matrix.config.build }} CC=gcc
239
+ - name : Check sassc help call
240
+ run : sassc\bin\sassc.exe --term-colors --help
213
241
- name : Execute spec test runner
214
242
run : ruby sass-spec/sass-spec.rb --probe-todo --impl libsass -c sassc/bin/sassc.exe -s sass-spec/spec
215
243
0 commit comments