@@ -27,7 +27,7 @@ common_steps_template: &COMMON_STEPS_TEMPLATE
27
27
-DINCLUDE_INSTALL_DIR=$installDir/import \
28
28
-DLDC_LINK_MANUALLY=OFF \
29
29
"${extraFlags[@]}"
30
- ninja -j$PARALLELISM all ldc2-unittest all-test-runners
30
+ ninja -j$PARALLELISM obj/ldc2.o all ldc2-unittest all-test-runners
31
31
bin/ldc2 -version
32
32
always :
33
33
run_compiler_unittests_script : |
@@ -190,10 +190,22 @@ install_ubuntu_prerequisites_template: &INSTALL_UBUNTU_PREREQUISITES_TEMPLATE
190
190
fi
191
191
apt-get -q update
192
192
apt-get -yq install \
193
- git-core cmake ninja-build $gcc_pkg \
193
+ git-core ninja-build $gcc_pkg \
194
194
zlib1g-dev $libcurl_pkg curl gdb python3 python3-pip tzdata unzip zip \
195
195
$EXTRA_APT_PACKAGES
196
196
python3 --version
197
+ # Download & extract CMake
198
+ curl -fL --retry 3 --max-time 300 -o cmake.tar.gz https://github.com/Kitware/CMake/releases/download/v3.27.1/cmake-3.27.1-linux-$CI_ARCH.tar.gz
199
+ mkdir cmake
200
+ tar -xf cmake.tar.gz --strip 1 -C cmake
201
+ rm cmake.tar.gz
202
+ # Download & extract custom Ninja on x86_64
203
+ if [[ "$CI_ARCH" == "x86_64" ]]; then
204
+ curl -fL --retry 3 --max-time 60 -O https://github.com/symmetryinvestments/ninja/releases/download/v1.11.1-sym1/ninja-linux.zip
205
+ mkdir ninja
206
+ unzip ninja-linux.zip -d ninja
207
+ rm ninja-linux.zip
208
+ fi
197
209
# Download & extract host LDC
198
210
curl -fL --retry 3 --max-time 300 -o ldc2.tar.xz https://github.com/ldc-developers/ldc/releases/download/v$HOST_LDC_VERSION/ldc2-$HOST_LDC_VERSION-linux-$CI_ARCH.tar.xz
199
211
mkdir host-ldc
@@ -207,12 +219,12 @@ install_macos_prerequisites_template: &INSTALL_MACOS_PREREQUISITES_TEMPLATE
207
219
cd $CIRRUS_WORKING_DIR/..
208
220
sysctl -n hw.logicalcpu
209
221
# Download & extract CMake
210
- curl -fL --retry 3 --max-time 300 -o cmake.tar.gz https://github.com/Kitware/CMake/releases/download/v3.20.3 /cmake-3.20.3 -macos-universal.tar.gz
222
+ curl -fL --retry 3 --max-time 300 -o cmake.tar.gz https://github.com/Kitware/CMake/releases/download/v3.27.1 /cmake-3.27.1 -macos-universal.tar.gz
211
223
mkdir cmake
212
224
tar -xf cmake.tar.gz --strip 3 -C cmake
213
225
rm cmake.tar.gz
214
226
# Download & extract Ninja
215
- curl -fL --retry 3 --max-time 60 -O https://github.com/ninja-build /ninja/releases/download/v1.10.2 /ninja-mac.zip
227
+ curl -fL --retry 3 --max-time 60 -O https://github.com/symmetryinvestments /ninja/releases/download/v1.11.1-sym1 /ninja-mac.zip
216
228
mkdir ninja
217
229
tar -xf ninja-mac.zip -C ninja
218
230
rm ninja-mac.zip
@@ -253,6 +265,7 @@ task:
253
265
EXTRA_APT_PACKAGES : " llvm-dev libclang-common-10-dev"
254
266
EXTRA_CMAKE_FLAGS : " -DMULTILIB=ON -DRT_SUPPORT_SANITIZERS=ON -DBUILD_LTO_LIBS=ON"
255
267
PARALLELISM : 8
268
+ PATH : ${CIRRUS_WORKING_DIR}/../cmake/bin:${CIRRUS_WORKING_DIR}/../ninja:${PATH}
256
269
<< : *INSTALL_UBUNTU_PREREQUISITES_TEMPLATE
257
270
<< : *COMMON_STEPS_TEMPLATE
258
271
@@ -271,6 +284,7 @@ task:
271
284
EXTRA_APT_PACKAGES : " gdmd llvm-dev libclang-common-15-dev"
272
285
EXTRA_CMAKE_FLAGS : " -DBUILD_SHARED_LIBS=ON -DBUILD_LTO_LIBS=ON -DD_COMPILER=gdmd -DLDC_LINK_MANUALLY=ON"
273
286
PARALLELISM : 8
287
+ PATH : ${CIRRUS_WORKING_DIR}/../cmake/bin:${CIRRUS_WORKING_DIR}/../ninja:${PATH}
274
288
# for gdmd:
275
289
LANG : C.UTF-8
276
290
<< : *INSTALL_UBUNTU_PREREQUISITES_TEMPLATE
@@ -290,6 +304,7 @@ task:
290
304
EXTRA_APT_PACKAGES : " llvm-dev libclang-common-10-dev"
291
305
EXTRA_CMAKE_FLAGS : " -DBUILD_LTO_LIBS=ON"
292
306
PARALLELISM : 8
307
+ PATH : ${CIRRUS_WORKING_DIR}/../cmake/bin:${CIRRUS_WORKING_DIR}/../ninja:${PATH}
293
308
<< : *INSTALL_UBUNTU_PREREQUISITES_TEMPLATE
294
309
<< : *COMMON_STEPS_TEMPLATE
295
310
@@ -347,6 +362,7 @@ task:
347
362
-DLLVM_ROOT_DIR=$CIRRUS_WORKING_DIR/../llvm
348
363
-DD_COMPILER=$CIRRUS_WORKING_DIR/../bootstrap-ldc/bin/ldmd2
349
364
PARALLELISM : 4
365
+ PATH : ${CIRRUS_WORKING_DIR}/../cmake/bin:${PATH}
350
366
CLANG_VERSION : ' 15.0.3' # 15.0.6 requires a more recent libstdc++.so.6 than shipped with Ubuntu 20
351
367
CC : $CIRRUS_WORKING_DIR/../clang/bin/clang
352
368
CXX : $CIRRUS_WORKING_DIR/../clang/bin/clang++
@@ -390,7 +406,7 @@ task:
390
406
-DD_COMPILER=$PWD/../host-ldc/bin/ldmd2 \
391
407
-DBUILD_SHARED_LIBS=OFF \
392
408
-DBUILD_LTO_LIBS=ON
393
- ninja -j$PARALLELISM
409
+ ninja -j$PARALLELISM obj/ldc2.o all
394
410
bin/ldc2 -version
395
411
<< : *COMMON_STEPS_TEMPLATE
396
412
<< : *PACKAGING_STEPS_TEMPLATE
0 commit comments