-
Notifications
You must be signed in to change notification settings - Fork 67
/
Copy path.cirrus.yml
59 lines (58 loc) · 4.35 KB
/
.cirrus.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# Use, modification, and distribution are
# subject to the Boost Software License, Version 1.0. (See accompanying
# file LICENSE.txt)
#
# Copyright René Ferdinand Rivera Morell 2020-2021.
freebsd_task:
# All the GCC's and Clang's currently supported by FreeBSD ports.
matrix:
- { name: 'FreeBSD, GCC 14', env: { CXX: 'g++14', PACKAGE: 'lang/gcc14', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, GCC 13', env: { CXX: 'g++13', PACKAGE: 'gcc13', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, GCC 12', env: { CXX: 'g++12', PACKAGE: 'gcc12', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, GCC 11', env: { CXX: 'g++11', PACKAGE: 'gcc11', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, GCC 10', env: { CXX: 'g++10', PACKAGE: 'gcc10', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-14-1' } }
# - { name: 'FreeBSD, GCC 9', env: { CXX: 'g++9', PACKAGE: 'gcc9', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-14-1' } }
# - { name: 'FreeBSD, GCC 8', env: { CXX: 'g++8', PACKAGE: 'gcc8', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-14-1' } }
# - { name: 'FreeBSD, GCC 7', env: { CXX: 'g++7', PACKAGE: 'gcc7', TOOLSET: gcc }, freebsd_instance: { image_family: 'freebsd-12-2' } }
- { name: 'FreeBSD, Clang 19', env: { CXX: 'clang++19', PACKAGE: 'devel/llvm19', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 18', env: { CXX: 'clang++18', PACKAGE: 'devel/llvm18', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 17', env: { CXX: 'clang++17', PACKAGE: 'devel/llvm17', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 16', env: { CXX: 'clang++16', PACKAGE: 'devel/llvm16', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 15', env: { CXX: 'clang++15', PACKAGE: 'devel/llvm15', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 14', env: { CXX: 'clang++14', PACKAGE: 'devel/llvm14', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 13', env: { CXX: 'clang++13', PACKAGE: 'devel/llvm13', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 12', env: { CXX: 'clang++12', PACKAGE: 'devel/llvm12', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
- { name: 'FreeBSD, Clang 11', env: { CXX: 'clang++11', PACKAGE: 'devel/llvm11', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
# - { name: 'FreeBSD, Clang 10', env: { CXX: 'clang++10', PACKAGE: 'devel/llvm10', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
# - { name: 'FreeBSD, Clang 9', env: { CXX: 'clang++90', PACKAGE: 'devel/llvm90', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
# - { name: 'FreeBSD, Clang 8', env: { CXX: 'clang++80', PACKAGE: 'devel/llvm80' , TOOLSET: clang}, freebsd_instance: { image_family: 'freebsd-14-1' } }
# - { name: 'FreeBSD, Clang 7', env: { CXX: 'clang++70', PACKAGE: 'devel/llvm70', TOOLSET: clang }, freebsd_instance: { image_family: 'freebsd-14-1' } }
# To install with ports we need to initialize the package manager. To avoid
# confirmation prompts we need to set an env var.
install_script: [
"uname -a",
"env ASSUME_ALWAYS_YES=YES pkg bootstrap",
"env ASSUME_ALWAYS_YES=YES pkg install wget",
"env ASSUME_ALWAYS_YES=YES pkg install ncurses",
"env ASSUME_ALWAYS_YES=YES pkg install ${PACKAGE}"
]
# Install B2.
install_b2_script: [
"set -e",
"export \"PCD=${PWD}\" ; cd ${HOME}",
"wget -nv https://github.com/bfgroup/b2/archive/release.tar.gz",
"tar -zxf release.tar.gz",
"cd b2-release",
"CXX= ./bootstrap.sh",
"sudo ./b2 install toolset=clang",
"cd \"${PCD}\""
]
# Test.
test_script: [
"set -e",
"CXX_PATH=`which ${CXX}`",
"echo \"using ${TOOLSET} : : ${CXX_PATH} ;\" > ${HOME}/user-config.jam",
"cd test",
"b2 --verbose-test -a toolset=${TOOLSET} ${B2_ARGS} predef-info",
"b2 --debug-configuration -a toolset=${TOOLSET} ${B2_ARGS} predef predef-headers"
]