Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 9ff8c38

Browse files
committedNov 6, 2021
Build as a universal binary on MacOSX.
1 parent f593f8f commit 9ff8c38

File tree

2 files changed

+641
-640
lines changed

2 files changed

+641
-640
lines changed
 

‎.cirrus.yml

+640-640
Original file line numberDiff line numberDiff line change
@@ -2,123 +2,123 @@
22
# Pull Request Tasks
33
#
44

5-
task:
6-
only_if: $CIRRUS_PR != ''
7-
8-
timeout_in: 120m
9-
10-
matrix:
11-
- name: "x86-64 Linux glibc"
12-
container:
13-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
14-
environment:
15-
IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
16-
- name: "x86-64 Linux musl"
17-
container:
18-
image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
19-
environment:
20-
IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
21-
22-
container:
23-
cpu: 8
24-
memory: 4
25-
26-
libs_cache:
27-
folder: build/libs
28-
fingerprint_script:
29-
- echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
30-
populate_script: make libs build_flags=-j8
31-
upload_caches:
32-
- libs
33-
34-
release_configure_script:
35-
- make configure arch=x86-64 config=release
36-
release_build_script:
37-
- make build config=release
38-
release_test_script:
39-
- make test-ci config=release
40-
debug_configure_script:
41-
- make configure arch=x86-64 config=debug
42-
debug_build_script:
43-
- make build config=debug
44-
debug_test_script:
45-
- make test-ci config=debug
46-
47-
task:
48-
only_if: $CIRRUS_PR != ''
49-
50-
timeout_in: 120m
51-
52-
arm_container:
53-
image: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
54-
cpu: 8
55-
memory: 4
56-
57-
environment:
58-
IMAGE: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
59-
60-
name: "aarch64 Linux glibc"
61-
62-
libs_cache:
63-
folder: build/libs
64-
fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
65-
populate_script: make libs build_flags=-j8
66-
upload_caches:
67-
- libs
68-
69-
release_configure_script:
70-
- make configure arch=armv8-a config=release
71-
release_build_script:
72-
- make build config=release
73-
release_test_script:
74-
- make test-ci config=release
75-
debug_configure_script:
76-
- make configure arch=armv8-a config=debug
77-
debug_build_script:
78-
- make build config=debug
79-
debug_test_script:
80-
- make test-ci config=debug
81-
82-
task:
83-
only_if: $CIRRUS_PR != ''
84-
85-
timeout_in: 120m
86-
87-
freebsd_instance:
88-
image: freebsd-13-0-release-amd64
89-
cpu: 8
90-
memory: 24
91-
92-
name: "x86-64 FreeBSD"
93-
94-
os_configuration_script:
95-
- sysctl net.inet.tcp.keepinit=1000
96-
97-
install_script:
98-
- echo "FETCH_RETRY = 6" >> /usr/local/etc/pkg.conf
99-
- echo "IGNORE_OSVERSION = yes" >> /usr/local/etc/pkg.conf
100-
- pkg update
101-
- pkg install -y cmake gmake libunwind git
102-
103-
libs_cache:
104-
folder: build/libs
105-
fingerprint_script: echo "`md5 lib/CMakeLists.txt` freebsd-13.0 20210710"
106-
populate_script: gmake libs build_flags=-j8
107-
upload_caches:
108-
- libs
109-
110-
release_configure_script:
111-
- gmake configure arch=x86-64 config=release
112-
release_build_script:
113-
- gmake build config=release
114-
release_test_script:
115-
- gmake test-ci config=release
116-
debug_configure_script:
117-
- gmake configure arch=x86-64 config=debug
118-
debug_build_script:
119-
- gmake build config=debug
120-
debug_test_script:
121-
- gmake test-ci config=debug
5+
# task:
6+
# only_if: $CIRRUS_PR != ''
7+
8+
# timeout_in: 120m
9+
10+
# matrix:
11+
# - name: "x86-64 Linux glibc"
12+
# container:
13+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
14+
# environment:
15+
# IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
16+
# - name: "x86-64 Linux musl"
17+
# container:
18+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
19+
# environment:
20+
# IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
21+
22+
# container:
23+
# cpu: 8
24+
# memory: 4
25+
26+
# libs_cache:
27+
# folder: build/libs
28+
# fingerprint_script:
29+
# - echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
30+
# populate_script: make libs build_flags=-j8
31+
# upload_caches:
32+
# - libs
33+
34+
# release_configure_script:
35+
# - make configure arch=x86-64 config=release
36+
# release_build_script:
37+
# - make build config=release
38+
# release_test_script:
39+
# - make test-ci config=release
40+
# debug_configure_script:
41+
# - make configure arch=x86-64 config=debug
42+
# debug_build_script:
43+
# - make build config=debug
44+
# debug_test_script:
45+
# - make test-ci config=debug
46+
47+
# task:
48+
# only_if: $CIRRUS_PR != ''
49+
50+
# timeout_in: 120m
51+
52+
# arm_container:
53+
# image: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
54+
# cpu: 8
55+
# memory: 4
56+
57+
# environment:
58+
# IMAGE: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
59+
60+
# name: "aarch64 Linux glibc"
61+
62+
# libs_cache:
63+
# folder: build/libs
64+
# fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
65+
# populate_script: make libs build_flags=-j8
66+
# upload_caches:
67+
# - libs
68+
69+
# release_configure_script:
70+
# - make configure arch=armv8-a config=release
71+
# release_build_script:
72+
# - make build config=release
73+
# release_test_script:
74+
# - make test-ci config=release
75+
# debug_configure_script:
76+
# - make configure arch=armv8-a config=debug
77+
# debug_build_script:
78+
# - make build config=debug
79+
# debug_test_script:
80+
# - make test-ci config=debug
81+
82+
# task:
83+
# only_if: $CIRRUS_PR != ''
84+
85+
# timeout_in: 120m
86+
87+
# freebsd_instance:
88+
# image: freebsd-13-0-release-amd64
89+
# cpu: 8
90+
# memory: 24
91+
92+
# name: "x86-64 FreeBSD"
93+
94+
# os_configuration_script:
95+
# - sysctl net.inet.tcp.keepinit=1000
96+
97+
# install_script:
98+
# - echo "FETCH_RETRY = 6" >> /usr/local/etc/pkg.conf
99+
# - echo "IGNORE_OSVERSION = yes" >> /usr/local/etc/pkg.conf
100+
# - pkg update
101+
# - pkg install -y cmake gmake libunwind git
102+
103+
# libs_cache:
104+
# folder: build/libs
105+
# fingerprint_script: echo "`md5 lib/CMakeLists.txt` freebsd-13.0 20210710"
106+
# populate_script: gmake libs build_flags=-j8
107+
# upload_caches:
108+
# - libs
109+
110+
# release_configure_script:
111+
# - gmake configure arch=x86-64 config=release
112+
# release_build_script:
113+
# - gmake build config=release
114+
# release_test_script:
115+
# - gmake test-ci config=release
116+
# debug_configure_script:
117+
# - gmake configure arch=x86-64 config=debug
118+
# debug_build_script:
119+
# - gmake build config=debug
120+
# debug_test_script:
121+
# - gmake test-ci config=debug
122122

123123
task:
124124
only_if: $CIRRUS_PR != ''
@@ -153,526 +153,526 @@ task:
153153
debug_test_script:
154154
- make test-ci config=debug
155155

156-
task:
157-
only_if: $CIRRUS_PR != ''
158-
159-
timeout_in: 120m
160-
161-
windows_container:
162-
image: ponylang/ponyc-ci-x86-64-pc-windows-msvc-builder:20210430
163-
os_version: 2019
164-
cpu: 8
165-
memory: 24
166-
167-
name: "x86-64 Windows MSVC"
168-
169-
libs_cache:
170-
folder: build/libs
171-
fingerprint_script:
172-
- ps: (Get-FileHash -Path lib\CMakeLists.txt).Hash + "Windows 20210430"
173-
populate_script:
174-
- ps: .\make.ps1 -Command libs -Generator "Visual Studio 16 2019"
175-
upload_caches:
176-
- libs
177-
178-
release_config_script:
179-
- ps: .\make.ps1 -Command configure -Config Release -Generator "Visual Studio 16 2019"
180-
release_build_script:
181-
- ps: .\make.ps1 -Command build -Config Release -Generator "Visual Studio 16 2019"
182-
release_test_script:
183-
- ps: .\make.ps1 -Command test -Config Release -Generator "Visual Studio 16 2019"
184-
debug_config_script:
185-
- ps: .\make.ps1 -Command configure -Config Debug -Generator "Visual Studio 16 2019"
186-
debug_build_script:
187-
- ps: .\make.ps1 -Command build -Config Debug -Generator "Visual Studio 16 2019"
188-
debug_test_script:
189-
- ps: .\make.ps1 -Command test -Config Debug -Generator "Visual Studio 16 2019"
190-
191-
task:
192-
only_if: $CIRRUS_PR != ''
193-
194-
container:
195-
image: ponylang/ponyc-ci-cross-arm:20210430
196-
cpu: 8
197-
memory: 6
198-
199-
environment:
200-
IMAGE: ponylang/ponyc-ci-cross-arm:20210430
201-
202-
name: "arm Linux glibc"
203-
204-
libs_cache:
205-
folder: build/libs
206-
fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
207-
populate_script: make libs build_flags=-j8
208-
upload_caches:
209-
- libs
210-
211-
configure_script:
212-
- make configure
213-
build_script:
214-
- make build
215-
test_script:
216-
- make test-ci
217-
libponyrt_cross_script:
218-
- make cross-libponyrt CC=arm-linux-gnueabi-gcc CXX=arm-linux-gnueabi-g++ arch=armv7-a cross_cflags="-march=armv7-a -mtune=cortex-a9" cross_lflags="-O3;-march=arm"
219-
test_stdlib_cross_script:
220-
- make test-cross-ci PONYPATH=../armv7-a/release cross_triple=arm-unknown-linux-gnueabi cross_arch=armv7-a cross_cpu=cortex-a9 cross_linker=arm-linux-gnueabi-gcc cross_runner="qemu-arm-static -cpu cortex-a9 -L /usr/local/arm-linux-gnueabi/libc"
221-
222-
task:
223-
only_if: $CIRRUS_PR != ''
224-
225-
container:
226-
image: ponylang/ponyc-ci-cross-armhf:20210430
227-
cpu: 8
228-
memory: 6
229-
230-
environment:
231-
IMAGE: ponylang/ponyc-ci-cross-armhf:20210430
232-
233-
name: "armhf Linux glibc"
234-
235-
libs_cache:
236-
folder: build/libs
237-
fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
238-
populate_script: make libs build_flags=-j8
239-
upload_caches:
240-
- libs
241-
242-
configure_script:
243-
- make configure
244-
build_script:
245-
- make build
246-
test_script:
247-
- make test-ci
248-
libponyrt_cross_script:
249-
- make cross-libponyrt CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ arch=armv7-a cross_cflags="-march=armv7-a -mtune=cortex-a9" cross_lflags="-O3;-march=arm"
250-
test_stdlib_cross_script:
251-
- make test-cross-ci PONYPATH=../armv7-a/release cross_triple=arm-unknown-linux-gnueabihf cross_arch=armv7-a cross_cpu=cortex-a9 cross_linker=arm-linux-gnueabihf-gcc cross_runner="qemu-arm-static -cpu cortex-a9 -L /usr/local/arm-linux-gnueabihf/libc"
252-
253-
#
254-
# Nightly build tasks
255-
#
256-
257-
task:
258-
only_if: $CIRRUS_CRON == "nightly"
259-
260-
matrix:
261-
- name: "nightly: x86-64-unknown-linux-rocky8"
262-
container:
263-
image: ponylang/ponyc-ci-x86-64-unknown-linux-rocky8-builder:20210707
264-
environment:
265-
CACHE_BUSTER: 20210707
266-
TRIPLE_VENDOR: unknown
267-
TRIPLE_OS: linux-rocky8
268-
- name: "nightly: x86-64-unknown-linux-centos8"
269-
container:
270-
image: ponylang/ponyc-ci-x86-64-unknown-linux-centos8-builder:20210225
271-
environment:
272-
CACHE_BUSTER: 20210225
273-
TRIPLE_VENDOR: unknown
274-
TRIPLE_OS: linux-centos8
275-
- name: "nightly: x86-64-unknown-linux-gnu"
276-
container:
277-
image: ponylang/ponyc-ci-x86-64-unknown-linux-gnu-builder:20200423
278-
environment:
279-
CACHE_BUSTER: 20210224
280-
TRIPLE_VENDOR: unknown
281-
TRIPLE_OS: linux-gnu
282-
- name: "nightly: x86-64-unknown-linux-ubuntu18.04"
283-
container:
284-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu18.04-builder:20210714
285-
environment:
286-
CACHE_BUSTER: 20210714
287-
TRIPLE_VENDOR: unknown
288-
TRIPLE_OS: linux-ubuntu18.04
289-
- name: "nightly: x86-64-unknown-linux-ubuntu20.04"
290-
container:
291-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
292-
environment:
293-
CACHE_BUSTER: 20210224
294-
TRIPLE_VENDOR: unknown
295-
TRIPLE_OS: linux-ubuntu20.04
296-
- name: "nightly: x86-64-unknown-linux-ubuntu21.04"
297-
container:
298-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu21.04-builder:20210920
299-
environment:
300-
CACHE_BUSTER: 20210920
301-
TRIPLE_VENDOR: unknown
302-
TRIPLE_OS: linux-ubuntu21.04
303-
- name: "nightly: x86-64-unknown-linux-musl"
304-
container:
305-
image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
306-
environment:
307-
CACHE_BUSTER: 20210224
308-
TRIPLE_VENDOR: unknown
309-
TRIPLE_OS: linux-musl
310-
311-
container:
312-
cpu: 8
313-
memory: 24
314-
315-
environment:
316-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
317-
318-
libs_cache:
319-
folder: build/libs
320-
fingerprint_script:
321-
- echo "`md5sum lib/CMakeLists.txt` ${TRIPLE_VENDOR}-${TRIPLE_OS} ${CACHE_BUSTER}"
322-
populate_script: make libs build_flags=-j8
323-
upload_caches:
324-
- libs
325-
326-
nightly_script:
327-
- bash .ci-scripts/x86-64-nightly.bash
328-
329-
task:
330-
only_if: $CIRRUS_CRON == "nightly"
331-
332-
freebsd_instance:
333-
image: freebsd-13-0-release-amd64
334-
cpu: 8
335-
memory: 24
336-
337-
name: "nightly: x86-64-unknown-freebsd-13.0"
338-
339-
environment:
340-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
341-
342-
install_script:
343-
- echo "FETCH_RETRY = 6" >> /usr/local/etc/pkg.conf
344-
- echo "IGNORE_OSVERSION = yes" >> /usr/local/etc/pkg.conf
345-
- pkg update
346-
- pkg install -y bash cmake gmake libunwind git py38-pip
347-
- pip install --upgrade cloudsmith-cli
348-
349-
libs_cache:
350-
folder: build/libs
351-
fingerprint_script: echo "`md5 lib/CMakeLists.txt` freebsd-13.0 20210710"
352-
populate_script: gmake libs build_flags=-j8
353-
upload_caches:
354-
- libs
355-
356-
nightly_script:
357-
- bash .ci-scripts/x86-64-unknown-freebsd-13.0-nightly.bash
358-
359-
task:
360-
only_if: $CIRRUS_CRON == "nightly"
361-
362-
osx_instance:
363-
image: big-sur-xcode-12.5
364-
365-
name: "nightly: x86-64-apple-darwin"
366-
367-
environment:
368-
TRIPLE_VENDOR: apple
369-
TRIPLE_OS: darwin
370-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
371-
372-
libs_cache:
373-
folder: build/libs
374-
fingerprint_script: echo "`md5 lib/CMakeLists.txt` macos big-sur-xcode-12.5 20210710"
375-
populate_script: make libs build_flags=-j12
376-
upload_caches:
377-
- libs
378-
379-
install_script:
380-
- brew install coreutils python
381-
- pip3 install --upgrade cloudsmith-cli
382-
383-
nightly_script:
384-
- export TZ=utc
385-
- bash .ci-scripts/x86-64-nightly.bash
386-
387-
task:
388-
only_if: $CIRRUS_CRON == "nightly"
389-
390-
windows_container:
391-
image: ponylang/ponyc-ci-x86-64-pc-windows-msvc-builder:20210430
392-
os_version: 2019
393-
cpu: 8
394-
memory: 24
395-
396-
name: "nightly: x86-64-pc-windows-msvc"
397-
398-
environment:
399-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
400-
401-
libs_cache:
402-
folder: build/libs
403-
fingerprint_script:
404-
- ps: (Get-FileHash -Path lib\CMakeLists.txt).Hash + "Windows 20210430"
405-
populate_script:
406-
- ps: .\make.ps1 -Command libs -Generator "Visual Studio 16 2019"
407-
upload_caches:
408-
- libs
409-
410-
config_script:
411-
- ps: .\make.ps1 -Command configure -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version nightly
412-
build_script:
413-
- ps: .\make.ps1 -Command build -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version nightly
414-
install_script:
415-
- ps: .\make.ps1 -Command install -Config Release -Prefix "build\install\release"
416-
package_script:
417-
- ps: .\make.ps1 -Command package -Config Release -Prefix "build\install\release" -Version nightly
418-
upload_script:
419-
- ps: $version = (Get-Date).ToString("yyyyMMdd"); cloudsmith push raw --version $version --api-key $env:CLOUDSMITH_API_KEY --summary "Pony compiler" --description "https://github.com/ponylang/ponyc" ponylang/nightlies build\ponyc-x86-64-pc-windows-msvc.zip
420-
421-
#
422-
# Release build tasks
423-
#
424-
425-
task:
426-
only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
427-
428-
matrix:
429-
- name: "release: x86-64-unknown-linux-rocky8"
430-
container:
431-
image: ponylang/ponyc-ci-x86-64-unknown-linux-rocky8-builder:20210707
432-
environment:
433-
CACHE_BUSTER: 20210707
434-
TRIPLE_VENDOR: unknown
435-
TRIPLE_OS: linux-rocky8
436-
- name: "release: x86-64-unknown-linux-centos8"
437-
container:
438-
image: ponylang/ponyc-ci-x86-64-unknown-linux-centos8-builder:20210225
439-
environment:
440-
CACHE_BUSTER: 20210225
441-
TRIPLE_VENDOR: unknown
442-
TRIPLE_OS: linux-centos8
443-
- name: "release: x86-64-unknown-linux-gnu"
444-
container:
445-
image: ponylang/ponyc-ci-x86-64-unknown-linux-gnu-builder:20200423
446-
environment:
447-
CACHE_BUSTER: 20200423
448-
TRIPLE_VENDOR: unknown
449-
TRIPLE_OS: linux-gnu
450-
- name: "release: x86-64-unknown-linux-ubuntu18.04"
451-
container:
452-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu18.04-builder:20210714
453-
environment:
454-
CACHE_BUSTER: 20210714
455-
TRIPLE_VENDOR: unknown
456-
TRIPLE_OS: linux-ubuntu18.04
457-
- name: "release: x86-64-unknown-linux-ubuntu20.04"
458-
container:
459-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
460-
environment:
461-
CACHE_BUSTER: 20200830
462-
TRIPLE_VENDOR: unknown
463-
TRIPLE_OS: linux-ubuntu20.04
464-
- name: "release: x86-64-unknown-linux-ubuntu21.04"
465-
container:
466-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu21.04-builder:20210920
467-
environment:
468-
CACHE_BUSTER: 20210920
469-
TRIPLE_VENDOR: unknown
470-
TRIPLE_OS: linux-ubuntu21.04
471-
- name: "release: x86-64-unknown-linux-musl"
472-
container:
473-
image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
474-
environment:
475-
CACHE_BUSTER: 20200421
476-
TRIPLE_VENDOR: unknown
477-
TRIPLE_OS: linux-musl
478-
479-
container:
480-
cpu: 8
481-
memory: 24
482-
483-
environment:
484-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
485-
486-
libs_cache:
487-
folder: build/libs
488-
fingerprint_script:
489-
- echo "`md5sum lib/CMakeLists.txt` ${TRIPLE_VENDOR}-${TRIPLE_OS} ${CACHE_BUSTER}"
490-
populate_script: make libs build_flags=-j8
491-
upload_caches:
492-
- libs
493-
494-
release_script:
495-
- bash .ci-scripts/x86-64-release.bash
496-
497-
task:
498-
only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
499-
500-
freebsd_instance:
501-
image: freebsd-13-0-release-amd64
502-
cpu: 8
503-
memory: 24
504-
505-
name: "release: x86-64-unknown-freebsd-13.0"
506-
507-
environment:
508-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
509-
510-
install_script:
511-
- echo "FETCH_RETRY = 6" >> /usr/local/etc/pkg.conf
512-
- echo "IGNORE_OSVERSION = yes" >> /usr/local/etc/pkg.conf
513-
- pkg update
514-
- pkg install -y bash cmake gmake libunwind git py38-pip
515-
- pip install --upgrade cloudsmith-cli
516-
517-
libs_cache:
518-
folder: build/libs
519-
fingerprint_script: echo "`md5 lib/CMakeLists.txt` freebsd-13.0 20210710"
520-
populate_script: gmake libs build_flags=-j8
521-
upload_caches:
522-
- libs
523-
524-
release_script:
525-
- bash .ci-scripts/x86-64-unknown-freebsd-13.0-release.bash
526-
527-
task:
528-
only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
529-
530-
osx_instance:
531-
image: big-sur-xcode-12.5
532-
533-
name: "release: x86-64-apple-darwin"
534-
535-
environment:
536-
TRIPLE_VENDOR: apple
537-
TRIPLE_OS: darwin
538-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
539-
540-
libs_cache:
541-
folder: build/libs
542-
fingerprint_script: echo "`md5 lib/CMakeLists.txt` macos big-sur-xcode-12.5 20210710"
543-
populate_script: make libs build_flags=-j12
544-
upload_caches:
545-
- libs
546-
547-
install_script:
548-
- brew install coreutils python
549-
- pip3 install --upgrade cloudsmith-cli
550-
551-
release_script:
552-
- export TZ=utc
553-
- bash .ci-scripts/x86-64-release.bash
554-
555-
task:
556-
only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
557-
558-
windows_container:
559-
image: ponylang/ponyc-ci-x86-64-pc-windows-msvc-builder:20210430
560-
os_version: 2019
561-
cpu: 8
562-
memory: 24
563-
564-
name: "release: x86-64-pc-windows-msvc"
565-
566-
environment:
567-
CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
568-
569-
libs_cache:
570-
folder: build/libs
571-
fingerprint_script:
572-
- ps: (Get-FileHash -Path lib\CMakeLists.txt).Hash + "Windows 20210430"
573-
populate_script:
574-
- ps: .\make.ps1 -Command libs -Generator "Visual Studio 16 2019"
575-
upload_caches:
576-
- libs
577-
578-
config_script:
579-
- ps: .\make.ps1 -Command configure -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version (Get-Content .\VERSION)
580-
build_script:
581-
- ps: .\make.ps1 -Command build -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version (Get-Content .\VERSION)
582-
install_script:
583-
- ps: .\make.ps1 -Command install -Config Release -Prefix "build\install\release"
584-
package_script:
585-
- ps: .\make.ps1 -Command package -Config Release -Prefix "build\install\release" -Version (Get-Content .\VERSION)
586-
upload_script:
587-
- ps: $version = (Get-Content .\VERSION); cloudsmith push raw --version $version --api-key $env:CLOUDSMITH_API_KEY --summary "Pony compiler" --description "https://github.com/ponylang/ponyc" ponylang/releases build\ponyc-x86-64-pc-windows-msvc.zip
588-
589-
# Nightly stress tests using message-ubench
590-
task:
591-
only_if: $CIRRUS_CRON == "stress"
592-
593-
timeout_in: 120m
594-
595-
matrix:
596-
- name: "Stress Test: x86-64-unknown-linux-ubuntu20.04 [release]"
597-
container:
598-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
599-
environment:
600-
IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
601-
TARGET: test-stress-release
602-
- name: "Stress Test: x86-64-unknown-linux-ubuntu20.04 [debug]"
603-
container:
604-
image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
605-
environment:
606-
IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
607-
TARGET: test-stress-debug
608-
depends_on:
609-
- "Stress Test: x86-64-unknown-linux-ubuntu20.04 [release]"
610-
- name: "Stress Test: x86-64-unknown-linux-musl [release]"
611-
container:
612-
image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
613-
environment:
614-
IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
615-
TARGET: test-stress-release
616-
- name: "Stress Test: x86-64-unknown-linux-musl [debug]"
617-
container:
618-
image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
619-
environment:
620-
IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
621-
TARGET: test-stress-debug
622-
depends_on:
623-
- "Stress Test: x86-64-unknown-linux-musl [release]"
624-
625-
container:
626-
cpu: 8
627-
memory: 4
628-
629-
libs_cache:
630-
folder: build/libs
631-
fingerprint_script:
632-
- echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
633-
populate_script: make libs build_flags=-j8
634-
upload_caches:
635-
- libs
636-
637-
configure_script:
638-
- make configure config=debug
639-
build_script:
640-
- make build config=debug
641-
stress_test_script:
642-
- make ${TARGET} config=debug
643-
644-
task:
645-
only_if: $CIRRUS_CRON == "stress"
646-
647-
timeout_in: 120m
648-
649-
arm_container:
650-
image: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
651-
cpu: 8
652-
memory: 4
653-
654-
matrix:
655-
- name: "Stress Test: aarch64-unknown-linux-ubuntu20.04 [release]"
656-
environment:
657-
IMAGE: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
658-
TARGET: test-stress-release
659-
- name: "Stress Test: aarch64-unknown-linux-ubuntu20.04 [debug]"
660-
environment:
661-
IMAGE: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
662-
TARGET: test-stress-debug
663-
depends_on:
664-
- "Stress Test: aarch64-unknown-linux-ubuntu20.04 [release]"
665-
666-
libs_cache:
667-
folder: build/libs
668-
fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
669-
populate_script: make libs build_flags=-j8
670-
upload_caches:
671-
- libs
672-
673-
configure_script:
674-
- make configure arch=armv8-a config=debug
675-
build_script:
676-
- make build config=debug
677-
stress_test_script:
678-
- make ${TARGET} config=debug
156+
# task:
157+
# only_if: $CIRRUS_PR != ''
158+
159+
# timeout_in: 120m
160+
161+
# windows_container:
162+
# image: ponylang/ponyc-ci-x86-64-pc-windows-msvc-builder:20210430
163+
# os_version: 2019
164+
# cpu: 8
165+
# memory: 24
166+
167+
# name: "x86-64 Windows MSVC"
168+
169+
# libs_cache:
170+
# folder: build/libs
171+
# fingerprint_script:
172+
# - ps: (Get-FileHash -Path lib\CMakeLists.txt).Hash + "Windows 20210430"
173+
# populate_script:
174+
# - ps: .\make.ps1 -Command libs -Generator "Visual Studio 16 2019"
175+
# upload_caches:
176+
# - libs
177+
178+
# release_config_script:
179+
# - ps: .\make.ps1 -Command configure -Config Release -Generator "Visual Studio 16 2019"
180+
# release_build_script:
181+
# - ps: .\make.ps1 -Command build -Config Release -Generator "Visual Studio 16 2019"
182+
# release_test_script:
183+
# - ps: .\make.ps1 -Command test -Config Release -Generator "Visual Studio 16 2019"
184+
# debug_config_script:
185+
# - ps: .\make.ps1 -Command configure -Config Debug -Generator "Visual Studio 16 2019"
186+
# debug_build_script:
187+
# - ps: .\make.ps1 -Command build -Config Debug -Generator "Visual Studio 16 2019"
188+
# debug_test_script:
189+
# - ps: .\make.ps1 -Command test -Config Debug -Generator "Visual Studio 16 2019"
190+
191+
# task:
192+
# only_if: $CIRRUS_PR != ''
193+
194+
# container:
195+
# image: ponylang/ponyc-ci-cross-arm:20210430
196+
# cpu: 8
197+
# memory: 6
198+
199+
# environment:
200+
# IMAGE: ponylang/ponyc-ci-cross-arm:20210430
201+
202+
# name: "arm Linux glibc"
203+
204+
# libs_cache:
205+
# folder: build/libs
206+
# fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
207+
# populate_script: make libs build_flags=-j8
208+
# upload_caches:
209+
# - libs
210+
211+
# configure_script:
212+
# - make configure
213+
# build_script:
214+
# - make build
215+
# test_script:
216+
# - make test-ci
217+
# libponyrt_cross_script:
218+
# - make cross-libponyrt CC=arm-linux-gnueabi-gcc CXX=arm-linux-gnueabi-g++ arch=armv7-a cross_cflags="-march=armv7-a -mtune=cortex-a9" cross_lflags="-O3;-march=arm"
219+
# test_stdlib_cross_script:
220+
# - make test-cross-ci PONYPATH=../armv7-a/release cross_triple=arm-unknown-linux-gnueabi cross_arch=armv7-a cross_cpu=cortex-a9 cross_linker=arm-linux-gnueabi-gcc cross_runner="qemu-arm-static -cpu cortex-a9 -L /usr/local/arm-linux-gnueabi/libc"
221+
222+
# task:
223+
# only_if: $CIRRUS_PR != ''
224+
225+
# container:
226+
# image: ponylang/ponyc-ci-cross-armhf:20210430
227+
# cpu: 8
228+
# memory: 6
229+
230+
# environment:
231+
# IMAGE: ponylang/ponyc-ci-cross-armhf:20210430
232+
233+
# name: "armhf Linux glibc"
234+
235+
# libs_cache:
236+
# folder: build/libs
237+
# fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
238+
# populate_script: make libs build_flags=-j8
239+
# upload_caches:
240+
# - libs
241+
242+
# configure_script:
243+
# - make configure
244+
# build_script:
245+
# - make build
246+
# test_script:
247+
# - make test-ci
248+
# libponyrt_cross_script:
249+
# - make cross-libponyrt CC=arm-linux-gnueabihf-gcc CXX=arm-linux-gnueabihf-g++ arch=armv7-a cross_cflags="-march=armv7-a -mtune=cortex-a9" cross_lflags="-O3;-march=arm"
250+
# test_stdlib_cross_script:
251+
# - make test-cross-ci PONYPATH=../armv7-a/release cross_triple=arm-unknown-linux-gnueabihf cross_arch=armv7-a cross_cpu=cortex-a9 cross_linker=arm-linux-gnueabihf-gcc cross_runner="qemu-arm-static -cpu cortex-a9 -L /usr/local/arm-linux-gnueabihf/libc"
252+
253+
# #
254+
# # Nightly build tasks
255+
# #
256+
257+
# task:
258+
# only_if: $CIRRUS_CRON == "nightly"
259+
260+
# matrix:
261+
# - name: "nightly: x86-64-unknown-linux-rocky8"
262+
# container:
263+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-rocky8-builder:20210707
264+
# environment:
265+
# CACHE_BUSTER: 20210707
266+
# TRIPLE_VENDOR: unknown
267+
# TRIPLE_OS: linux-rocky8
268+
# - name: "nightly: x86-64-unknown-linux-centos8"
269+
# container:
270+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-centos8-builder:20210225
271+
# environment:
272+
# CACHE_BUSTER: 20210225
273+
# TRIPLE_VENDOR: unknown
274+
# TRIPLE_OS: linux-centos8
275+
# - name: "nightly: x86-64-unknown-linux-gnu"
276+
# container:
277+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-gnu-builder:20200423
278+
# environment:
279+
# CACHE_BUSTER: 20210224
280+
# TRIPLE_VENDOR: unknown
281+
# TRIPLE_OS: linux-gnu
282+
# - name: "nightly: x86-64-unknown-linux-ubuntu18.04"
283+
# container:
284+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu18.04-builder:20210714
285+
# environment:
286+
# CACHE_BUSTER: 20210714
287+
# TRIPLE_VENDOR: unknown
288+
# TRIPLE_OS: linux-ubuntu18.04
289+
# - name: "nightly: x86-64-unknown-linux-ubuntu20.04"
290+
# container:
291+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
292+
# environment:
293+
# CACHE_BUSTER: 20210224
294+
# TRIPLE_VENDOR: unknown
295+
# TRIPLE_OS: linux-ubuntu20.04
296+
# - name: "nightly: x86-64-unknown-linux-ubuntu21.04"
297+
# container:
298+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu21.04-builder:20210920
299+
# environment:
300+
# CACHE_BUSTER: 20210920
301+
# TRIPLE_VENDOR: unknown
302+
# TRIPLE_OS: linux-ubuntu21.04
303+
# - name: "nightly: x86-64-unknown-linux-musl"
304+
# container:
305+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
306+
# environment:
307+
# CACHE_BUSTER: 20210224
308+
# TRIPLE_VENDOR: unknown
309+
# TRIPLE_OS: linux-musl
310+
311+
# container:
312+
# cpu: 8
313+
# memory: 24
314+
315+
# environment:
316+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
317+
318+
# libs_cache:
319+
# folder: build/libs
320+
# fingerprint_script:
321+
# - echo "`md5sum lib/CMakeLists.txt` ${TRIPLE_VENDOR}-${TRIPLE_OS} ${CACHE_BUSTER}"
322+
# populate_script: make libs build_flags=-j8
323+
# upload_caches:
324+
# - libs
325+
326+
# nightly_script:
327+
# - bash .ci-scripts/x86-64-nightly.bash
328+
329+
# task:
330+
# only_if: $CIRRUS_CRON == "nightly"
331+
332+
# freebsd_instance:
333+
# image: freebsd-13-0-release-amd64
334+
# cpu: 8
335+
# memory: 24
336+
337+
# name: "nightly: x86-64-unknown-freebsd-13.0"
338+
339+
# environment:
340+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
341+
342+
# install_script:
343+
# - echo "FETCH_RETRY = 6" >> /usr/local/etc/pkg.conf
344+
# - echo "IGNORE_OSVERSION = yes" >> /usr/local/etc/pkg.conf
345+
# - pkg update
346+
# - pkg install -y bash cmake gmake libunwind git py38-pip
347+
# - pip install --upgrade cloudsmith-cli
348+
349+
# libs_cache:
350+
# folder: build/libs
351+
# fingerprint_script: echo "`md5 lib/CMakeLists.txt` freebsd-13.0 20210710"
352+
# populate_script: gmake libs build_flags=-j8
353+
# upload_caches:
354+
# - libs
355+
356+
# nightly_script:
357+
# - bash .ci-scripts/x86-64-unknown-freebsd-13.0-nightly.bash
358+
359+
# task:
360+
# only_if: $CIRRUS_CRON == "nightly"
361+
362+
# osx_instance:
363+
# image: big-sur-xcode-12.5
364+
365+
# name: "nightly: x86-64-apple-darwin"
366+
367+
# environment:
368+
# TRIPLE_VENDOR: apple
369+
# TRIPLE_OS: darwin
370+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
371+
372+
# libs_cache:
373+
# folder: build/libs
374+
# fingerprint_script: echo "`md5 lib/CMakeLists.txt` macos big-sur-xcode-12.5 20210710"
375+
# populate_script: make libs build_flags=-j12
376+
# upload_caches:
377+
# - libs
378+
379+
# install_script:
380+
# - brew install coreutils python
381+
# - pip3 install --upgrade cloudsmith-cli
382+
383+
# nightly_script:
384+
# - export TZ=utc
385+
# - bash .ci-scripts/x86-64-nightly.bash
386+
387+
# task:
388+
# only_if: $CIRRUS_CRON == "nightly"
389+
390+
# windows_container:
391+
# image: ponylang/ponyc-ci-x86-64-pc-windows-msvc-builder:20210430
392+
# os_version: 2019
393+
# cpu: 8
394+
# memory: 24
395+
396+
# name: "nightly: x86-64-pc-windows-msvc"
397+
398+
# environment:
399+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
400+
401+
# libs_cache:
402+
# folder: build/libs
403+
# fingerprint_script:
404+
# - ps: (Get-FileHash -Path lib\CMakeLists.txt).Hash + "Windows 20210430"
405+
# populate_script:
406+
# - ps: .\make.ps1 -Command libs -Generator "Visual Studio 16 2019"
407+
# upload_caches:
408+
# - libs
409+
410+
# config_script:
411+
# - ps: .\make.ps1 -Command configure -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version nightly
412+
# build_script:
413+
# - ps: .\make.ps1 -Command build -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version nightly
414+
# install_script:
415+
# - ps: .\make.ps1 -Command install -Config Release -Prefix "build\install\release"
416+
# package_script:
417+
# - ps: .\make.ps1 -Command package -Config Release -Prefix "build\install\release" -Version nightly
418+
# upload_script:
419+
# - ps: $version = (Get-Date).ToString("yyyyMMdd"); cloudsmith push raw --version $version --api-key $env:CLOUDSMITH_API_KEY --summary "Pony compiler" --description "https://github.com/ponylang/ponyc" ponylang/nightlies build\ponyc-x86-64-pc-windows-msvc.zip
420+
421+
# #
422+
# # Release build tasks
423+
# #
424+
425+
# task:
426+
# only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
427+
428+
# matrix:
429+
# - name: "release: x86-64-unknown-linux-rocky8"
430+
# container:
431+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-rocky8-builder:20210707
432+
# environment:
433+
# CACHE_BUSTER: 20210707
434+
# TRIPLE_VENDOR: unknown
435+
# TRIPLE_OS: linux-rocky8
436+
# - name: "release: x86-64-unknown-linux-centos8"
437+
# container:
438+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-centos8-builder:20210225
439+
# environment:
440+
# CACHE_BUSTER: 20210225
441+
# TRIPLE_VENDOR: unknown
442+
# TRIPLE_OS: linux-centos8
443+
# - name: "release: x86-64-unknown-linux-gnu"
444+
# container:
445+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-gnu-builder:20200423
446+
# environment:
447+
# CACHE_BUSTER: 20200423
448+
# TRIPLE_VENDOR: unknown
449+
# TRIPLE_OS: linux-gnu
450+
# - name: "release: x86-64-unknown-linux-ubuntu18.04"
451+
# container:
452+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu18.04-builder:20210714
453+
# environment:
454+
# CACHE_BUSTER: 20210714
455+
# TRIPLE_VENDOR: unknown
456+
# TRIPLE_OS: linux-ubuntu18.04
457+
# - name: "release: x86-64-unknown-linux-ubuntu20.04"
458+
# container:
459+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
460+
# environment:
461+
# CACHE_BUSTER: 20200830
462+
# TRIPLE_VENDOR: unknown
463+
# TRIPLE_OS: linux-ubuntu20.04
464+
# - name: "release: x86-64-unknown-linux-ubuntu21.04"
465+
# container:
466+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu21.04-builder:20210920
467+
# environment:
468+
# CACHE_BUSTER: 20210920
469+
# TRIPLE_VENDOR: unknown
470+
# TRIPLE_OS: linux-ubuntu21.04
471+
# - name: "release: x86-64-unknown-linux-musl"
472+
# container:
473+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
474+
# environment:
475+
# CACHE_BUSTER: 20200421
476+
# TRIPLE_VENDOR: unknown
477+
# TRIPLE_OS: linux-musl
478+
479+
# container:
480+
# cpu: 8
481+
# memory: 24
482+
483+
# environment:
484+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
485+
486+
# libs_cache:
487+
# folder: build/libs
488+
# fingerprint_script:
489+
# - echo "`md5sum lib/CMakeLists.txt` ${TRIPLE_VENDOR}-${TRIPLE_OS} ${CACHE_BUSTER}"
490+
# populate_script: make libs build_flags=-j8
491+
# upload_caches:
492+
# - libs
493+
494+
# release_script:
495+
# - bash .ci-scripts/x86-64-release.bash
496+
497+
# task:
498+
# only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
499+
500+
# freebsd_instance:
501+
# image: freebsd-13-0-release-amd64
502+
# cpu: 8
503+
# memory: 24
504+
505+
# name: "release: x86-64-unknown-freebsd-13.0"
506+
507+
# environment:
508+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
509+
510+
# install_script:
511+
# - echo "FETCH_RETRY = 6" >> /usr/local/etc/pkg.conf
512+
# - echo "IGNORE_OSVERSION = yes" >> /usr/local/etc/pkg.conf
513+
# - pkg update
514+
# - pkg install -y bash cmake gmake libunwind git py38-pip
515+
# - pip install --upgrade cloudsmith-cli
516+
517+
# libs_cache:
518+
# folder: build/libs
519+
# fingerprint_script: echo "`md5 lib/CMakeLists.txt` freebsd-13.0 20210710"
520+
# populate_script: gmake libs build_flags=-j8
521+
# upload_caches:
522+
# - libs
523+
524+
# release_script:
525+
# - bash .ci-scripts/x86-64-unknown-freebsd-13.0-release.bash
526+
527+
# task:
528+
# only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
529+
530+
# osx_instance:
531+
# image: big-sur-xcode-12.5
532+
533+
# name: "release: x86-64-apple-darwin"
534+
535+
# environment:
536+
# TRIPLE_VENDOR: apple
537+
# TRIPLE_OS: darwin
538+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
539+
540+
# libs_cache:
541+
# folder: build/libs
542+
# fingerprint_script: echo "`md5 lib/CMakeLists.txt` macos big-sur-xcode-12.5 20210710"
543+
# populate_script: make libs build_flags=-j12
544+
# upload_caches:
545+
# - libs
546+
547+
# install_script:
548+
# - brew install coreutils python
549+
# - pip3 install --upgrade cloudsmith-cli
550+
551+
# release_script:
552+
# - export TZ=utc
553+
# - bash .ci-scripts/x86-64-release.bash
554+
555+
# task:
556+
# only_if: $CIRRUS_TAG =~ '^\d+\.\d+\.\d+$'
557+
558+
# windows_container:
559+
# image: ponylang/ponyc-ci-x86-64-pc-windows-msvc-builder:20210430
560+
# os_version: 2019
561+
# cpu: 8
562+
# memory: 24
563+
564+
# name: "release: x86-64-pc-windows-msvc"
565+
566+
# environment:
567+
# CLOUDSMITH_API_KEY: ENCRYPTED[!2cb1e71c189cabf043ac3a9030b3c7708f9c4c983c86d07372ae58ad246a07c54e40810d038d31c3cf3ed8888350caca!]
568+
569+
# libs_cache:
570+
# folder: build/libs
571+
# fingerprint_script:
572+
# - ps: (Get-FileHash -Path lib\CMakeLists.txt).Hash + "Windows 20210430"
573+
# populate_script:
574+
# - ps: .\make.ps1 -Command libs -Generator "Visual Studio 16 2019"
575+
# upload_caches:
576+
# - libs
577+
578+
# config_script:
579+
# - ps: .\make.ps1 -Command configure -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version (Get-Content .\VERSION)
580+
# build_script:
581+
# - ps: .\make.ps1 -Command build -Config Release -Generator "Visual Studio 16 2019" -Prefix "build\install\release" -Version (Get-Content .\VERSION)
582+
# install_script:
583+
# - ps: .\make.ps1 -Command install -Config Release -Prefix "build\install\release"
584+
# package_script:
585+
# - ps: .\make.ps1 -Command package -Config Release -Prefix "build\install\release" -Version (Get-Content .\VERSION)
586+
# upload_script:
587+
# - ps: $version = (Get-Content .\VERSION); cloudsmith push raw --version $version --api-key $env:CLOUDSMITH_API_KEY --summary "Pony compiler" --description "https://github.com/ponylang/ponyc" ponylang/releases build\ponyc-x86-64-pc-windows-msvc.zip
588+
589+
# # Nightly stress tests using message-ubench
590+
# task:
591+
# only_if: $CIRRUS_CRON == "stress"
592+
593+
# timeout_in: 120m
594+
595+
# matrix:
596+
# - name: "Stress Test: x86-64-unknown-linux-ubuntu20.04 [release]"
597+
# container:
598+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
599+
# environment:
600+
# IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
601+
# TARGET: test-stress-release
602+
# - name: "Stress Test: x86-64-unknown-linux-ubuntu20.04 [debug]"
603+
# container:
604+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
605+
# environment:
606+
# IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-ubuntu20.04-builder:20200830
607+
# TARGET: test-stress-debug
608+
# depends_on:
609+
# - "Stress Test: x86-64-unknown-linux-ubuntu20.04 [release]"
610+
# - name: "Stress Test: x86-64-unknown-linux-musl [release]"
611+
# container:
612+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
613+
# environment:
614+
# IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
615+
# TARGET: test-stress-release
616+
# - name: "Stress Test: x86-64-unknown-linux-musl [debug]"
617+
# container:
618+
# image: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
619+
# environment:
620+
# IMAGE: ponylang/ponyc-ci-x86-64-unknown-linux-musl-builder:20210420
621+
# TARGET: test-stress-debug
622+
# depends_on:
623+
# - "Stress Test: x86-64-unknown-linux-musl [release]"
624+
625+
# container:
626+
# cpu: 8
627+
# memory: 4
628+
629+
# libs_cache:
630+
# folder: build/libs
631+
# fingerprint_script:
632+
# - echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
633+
# populate_script: make libs build_flags=-j8
634+
# upload_caches:
635+
# - libs
636+
637+
# configure_script:
638+
# - make configure config=debug
639+
# build_script:
640+
# - make build config=debug
641+
# stress_test_script:
642+
# - make ${TARGET} config=debug
643+
644+
# task:
645+
# only_if: $CIRRUS_CRON == "stress"
646+
647+
# timeout_in: 120m
648+
649+
# arm_container:
650+
# image: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
651+
# cpu: 8
652+
# memory: 4
653+
654+
# matrix:
655+
# - name: "Stress Test: aarch64-unknown-linux-ubuntu20.04 [release]"
656+
# environment:
657+
# IMAGE: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
658+
# TARGET: test-stress-release
659+
# - name: "Stress Test: aarch64-unknown-linux-ubuntu20.04 [debug]"
660+
# environment:
661+
# IMAGE: ponylang/ponyc-ci-aarch64-unknown-linux-ubuntu20.04-builder:20211003
662+
# TARGET: test-stress-debug
663+
# depends_on:
664+
# - "Stress Test: aarch64-unknown-linux-ubuntu20.04 [release]"
665+
666+
# libs_cache:
667+
# folder: build/libs
668+
# fingerprint_script: echo "`md5sum lib/CMakeLists.txt` ${IMAGE}"
669+
# populate_script: make libs build_flags=-j8
670+
# upload_caches:
671+
# - libs
672+
673+
# configure_script:
674+
# - make configure arch=armv8-a config=debug
675+
# build_script:
676+
# - make build config=debug
677+
# stress_test_script:
678+
# - make ${TARGET} config=debug

‎lib/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ set(LLVM_ENABLE_ZLIB OFF)
129129
set(LLVM_ENABLE_ZLIB:STRING OFF)
130130

131131
if(${CMAKE_HOST_SYSTEM_NAME} MATCHES "Darwin")
132+
set(CMAKE_OSX_ARCHITECTURES “x86_64;arm64") # build as a "universal binary"
132133
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mmacosx-version-min=10.14 -DUSE_SCHEDULER_SCALING_PTHREADS")
133134
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++ -mmacosx-version-min=10.14")
134135
endif()

0 commit comments

Comments
 (0)
Please sign in to comment.