mirror of
https://github.com/boostorg/phoenix.git
synced 2026-01-20 04:42:22 +00:00
* Suppress `-Wdeprecated-copy` on Clang 13 Clang 13 now also emits `-Wdeprecated-copy` when a copy assign operator is deleted. Since we need both `actor` to be an aggregate and to disallow assignment -- the only other way is to suppress the warning. * Fix CI: replace `os: "ubuntu-xx.04"` workers with containers ubuntu-16.04 is already removed from GHA and ubuntu-18.04 will be soon removed too * Fix CI: Install only necessary stuff in containers * Run CI in any branch
915 lines
32 KiB
YAML
915 lines
32 KiB
YAML
name: GitHub Actions CI
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
|
|
jobs:
|
|
posix:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- name: "TOOLSET=gcc-4.4 CXXSTD=98,0x Job 0"
|
|
buildtype: "boost"
|
|
packages: "g++-4.4 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:14.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-4.4"
|
|
cxxstd: "98,0x"
|
|
job_uuid: "b6589fc6ab"
|
|
- name: "TOOLSET=gcc-4.6 CXXSTD=03,0x Job 1"
|
|
buildtype: "boost"
|
|
packages: "g++-4.6 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-4.6"
|
|
cxxstd: "03,0x"
|
|
job_uuid: "356a192b79"
|
|
- name: "TOOLSET=gcc-4.7 CXXSTD=03,11 Job 2"
|
|
buildtype: "boost"
|
|
packages: "g++-4.7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-4.7"
|
|
cxxstd: "03,11"
|
|
job_uuid: "da4b9237ba"
|
|
- name: "TOOLSET=gcc-4.8 CXXSTD=03,11 Job 3"
|
|
buildtype: "boost"
|
|
packages: "g++-4.8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-4.8"
|
|
cxxstd: "03,11"
|
|
job_uuid: "77de68daec"
|
|
- name: "TOOLSET=gcc-4.8 CXXSTD=1y Job 4"
|
|
buildtype: "boost"
|
|
packages: "g++-4.8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-4.8"
|
|
cxxstd: "1y"
|
|
job_uuid: "1b64538924"
|
|
- name: "TOOLSET=gcc-4.9 CXXSTD=03,11 Job 5"
|
|
buildtype: "boost"
|
|
packages: "g++-4.9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-4.9"
|
|
cxxstd: "03,11"
|
|
job_uuid: "ac3478d69a"
|
|
- name: "TOOLSET=gcc-4.9 CXXSTD=14 Job 6"
|
|
buildtype: "boost"
|
|
packages: "g++-4.9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-4.9"
|
|
cxxstd: "14"
|
|
job_uuid: "c1dfd96eea"
|
|
- name: "TOOLSET=gcc-5 CXXSTD=03,11 Job 7"
|
|
buildtype: "boost"
|
|
packages: "g++-5 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-5"
|
|
cxxstd: "03,11"
|
|
job_uuid: "902ba3cda1"
|
|
- name: "TOOLSET=gcc-5 CXXSTD=14,17 Job 8"
|
|
buildtype: "boost"
|
|
packages: "g++-5 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-5"
|
|
cxxstd: "14,17"
|
|
job_uuid: "fe5dbbcea5"
|
|
- name: "TOOLSET=gcc-6 CXXSTD=03,11 Job 9"
|
|
buildtype: "boost"
|
|
packages: "g++-6 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-6"
|
|
cxxstd: "03,11"
|
|
job_uuid: "0ade7c2cf9"
|
|
- name: "TOOLSET=gcc-6 CXXSTD=14,17 Job 10"
|
|
buildtype: "boost"
|
|
packages: "g++-6 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-6"
|
|
cxxstd: "14,17"
|
|
job_uuid: "b1d5781111"
|
|
- name: "TOOLSET=gcc-7 CXXSTD=03,11 Job 11"
|
|
buildtype: "boost"
|
|
packages: "g++-7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-7"
|
|
cxxstd: "03,11"
|
|
job_uuid: "17ba079149"
|
|
- name: "TOOLSET=gcc-7 CXXSTD=14,17 Job 12"
|
|
buildtype: "boost"
|
|
packages: "g++-7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-7"
|
|
cxxstd: "14,17"
|
|
job_uuid: "7b52009b64"
|
|
- name: "TOOLSET=gcc-8 CXXSTD=03,11 Job 13"
|
|
buildtype: "boost"
|
|
packages: "g++-8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-8"
|
|
cxxstd: "03,11"
|
|
job_uuid: "bd307a3ec3"
|
|
- name: "TOOLSET=gcc-8 CXXSTD=14,17 Job 14"
|
|
buildtype: "boost"
|
|
packages: "g++-8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-8"
|
|
cxxstd: "14,17"
|
|
job_uuid: "fa35e19212"
|
|
- name: "TOOLSET=gcc-8 CXXSTD=2a Job 15"
|
|
buildtype: "boost"
|
|
packages: "g++-8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-8"
|
|
cxxstd: "2a"
|
|
job_uuid: "f1abd67035"
|
|
- name: "TOOLSET=gcc-9 CXXSTD=03,11,14 SANITIZED Job 16"
|
|
buildtype: "boost"
|
|
packages: "g++-9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-9"
|
|
cxxstd: "03,11,14"
|
|
job_uuid: "1574bddb75"
|
|
- name: "TOOLSET=gcc-9 CXXSTD=17,2a SANITIZED Job 17"
|
|
buildtype: "boost"
|
|
packages: "g++-9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "gcc-9"
|
|
cxxstd: "17,2a"
|
|
job_uuid: "0716d9708d"
|
|
- name: "TOOLSET=clang-3.5 CXXSTD=03,11 Job 18"
|
|
buildtype: "boost"
|
|
packages: "clang-3.5 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.5"
|
|
cxxstd: "03,11"
|
|
job_uuid: "9e6a55b6b4"
|
|
- name: "TOOLSET=clang-3.6 CXXSTD=03,11 Job 19"
|
|
buildtype: "boost"
|
|
packages: "clang-3.6 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.6"
|
|
cxxstd: "03,11"
|
|
job_uuid: "b3f0c7f6bb"
|
|
- name: "TOOLSET=clang-3.6 CXXSTD=14,1z Job 20"
|
|
buildtype: "boost"
|
|
packages: "clang-3.6 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.6"
|
|
cxxstd: "14"
|
|
job_uuid: "91032ad7bb"
|
|
- name: "TOOLSET=clang-3.7 CXXSTD=03,11 Job 21"
|
|
buildtype: "boost"
|
|
packages: "clang-3.7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.7"
|
|
cxxstd: "03,11"
|
|
job_uuid: "472b07b9fc"
|
|
- name: "TOOLSET=clang-3.7 CXXSTD=14,1z Job 22"
|
|
buildtype: "boost"
|
|
packages: "clang-3.7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.7"
|
|
cxxstd: "14"
|
|
job_uuid: "12c6fc06c9"
|
|
- name: "TOOLSET=clang-3.8 CXXSTD=03,11 Job 23"
|
|
buildtype: "boost"
|
|
packages: "clang-3.8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.8"
|
|
cxxstd: "03,11"
|
|
job_uuid: "d435a6cdd7"
|
|
- name: "TOOLSET=clang-3.8 CXXSTD=14,1z Job 24"
|
|
buildtype: "boost"
|
|
packages: "clang-3.8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.8"
|
|
cxxstd: "14"
|
|
job_uuid: "4d134bc072"
|
|
- name: "TOOLSET=clang-3.9 CXXSTD=03,11 Job 25"
|
|
buildtype: "boost"
|
|
packages: "clang-3.9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.9"
|
|
cxxstd: "03,11"
|
|
job_uuid: "f6e1126ced"
|
|
- name: "TOOLSET=clang-3.9 CXXSTD=14,1z Job 26"
|
|
buildtype: "boost"
|
|
packages: "clang-3.9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-3.9"
|
|
cxxstd: "14"
|
|
job_uuid: "887309d048"
|
|
- name: "TOOLSET=clang-4.0 CXXSTD=03,11 Job 27"
|
|
buildtype: "boost"
|
|
packages: "clang-4.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-4.0"
|
|
cxxstd: "03,11"
|
|
job_uuid: "bc33ea4e26"
|
|
- name: "TOOLSET=clang-4.0 CXXSTD=14,1z Job 28"
|
|
buildtype: "boost"
|
|
packages: "clang-4.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-4.0"
|
|
cxxstd: "14"
|
|
job_uuid: "0a57cb53ba"
|
|
- name: "TOOLSET=clang-5.0 CXXSTD=03,11 Job 29"
|
|
buildtype: "boost"
|
|
packages: "clang-5.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "5.0"
|
|
toolset: "clang-5.0"
|
|
cxxstd: "03,11"
|
|
job_uuid: "7719a1c782"
|
|
- name: "TOOLSET=clang-5.0 CXXSTD=14,17 Job 30"
|
|
buildtype: "boost"
|
|
packages: "clang-5.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "5.0"
|
|
toolset: "clang-5.0"
|
|
cxxstd: "14,17"
|
|
job_uuid: "22d200f867"
|
|
- name: "TOOLSET=clang-5.0 CXXSTD=2a Job 31"
|
|
buildtype: "boost"
|
|
packages: "clang-5.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "5.0"
|
|
toolset: "clang-5.0"
|
|
cxxstd: "2a"
|
|
job_uuid: "632667547e"
|
|
- name: "TOOLSET=clang-6.0 CXXSTD=03,11 Job 32"
|
|
buildtype: "boost"
|
|
packages: "clang-6.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "6.0"
|
|
toolset: "clang-6.0"
|
|
cxxstd: "03,11"
|
|
job_uuid: "cb4e5208b4"
|
|
- name: "TOOLSET=clang-6.0 CXXSTD=14,17 Job 33"
|
|
buildtype: "boost"
|
|
packages: "clang-6.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "6.0"
|
|
toolset: "clang-6.0"
|
|
cxxstd: "14,17"
|
|
job_uuid: "b6692ea5df"
|
|
- name: "TOOLSET=clang-6.0 CXXSTD=2a Job 34"
|
|
buildtype: "boost"
|
|
packages: "clang-6.0 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "6.0"
|
|
toolset: "clang-6.0"
|
|
cxxstd: "2a"
|
|
job_uuid: "f1f836cb4e"
|
|
- name: "TOOLSET=clang-7 CXXSTD=03,11 Job 35"
|
|
buildtype: "boost"
|
|
packages: "clang-7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "7"
|
|
toolset: "clang-7"
|
|
cxxstd: "03,11"
|
|
job_uuid: "972a67c481"
|
|
- name: "TOOLSET=clang-7 CXXSTD=14,17 Job 36"
|
|
buildtype: "boost"
|
|
packages: "clang-7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "7"
|
|
toolset: "clang-7"
|
|
cxxstd: "14,17"
|
|
job_uuid: "fc074d5013"
|
|
- name: "TOOLSET=clang-7 CXXSTD=2a Job 37"
|
|
buildtype: "boost"
|
|
packages: "clang-7 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: "xenial"
|
|
llvm_ver: "7"
|
|
toolset: "clang-7"
|
|
cxxstd: "2a"
|
|
job_uuid: "cb7a1d775e"
|
|
- name: "TOOLSET=clang-8 CXXSTD=03,11,14 Job 38"
|
|
buildtype: "boost"
|
|
packages: "clang-8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-8"
|
|
cxxstd: "03,11,14"
|
|
job_uuid: "5b384ce32d"
|
|
- name: "TOOLSET=clang-8 CXXSTD=17,2a Job 39"
|
|
buildtype: "boost"
|
|
packages: "clang-8 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:16.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-8"
|
|
cxxstd: "17,2a"
|
|
job_uuid: "ca3512f4df"
|
|
- name: "TOOLSET=clang-9 CXXSTD=03,11,14 SANITIZED Job 40"
|
|
buildtype: "boost"
|
|
packages: "clang-9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:18.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-9"
|
|
cxxstd: "03,11,14"
|
|
job_uuid: "af3e133428"
|
|
- name: "TOOLSET=clang-9 CXXSTD=17,2a SANITIZED Job 41"
|
|
buildtype: "boost"
|
|
packages: "clang-9 ccache"
|
|
packages_to_remove: ""
|
|
os: "ubuntu-latest"
|
|
container: "ubuntu:18.04"
|
|
cxx: "g++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
toolset: "clang-9"
|
|
cxxstd: "17,2a"
|
|
job_uuid: "761f22b2c1"
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
container: ${{ matrix.container }}
|
|
|
|
steps:
|
|
- name: Check if running in container
|
|
if: matrix.container != ''
|
|
run: echo "GHA_CONTAINER=${{ matrix.container }}" >> $GITHUB_ENV
|
|
- name: If running in container, upgrade packages
|
|
if: matrix.container != ''
|
|
run: |
|
|
apt-get -o Acquire::Retries=3 update && DEBIAN_FRONTEND=noninteractive apt-get -o Acquire::Retries=3 install -y sudo software-properties-common wget apt-transport-https git ccache g++
|
|
sudo apt-add-repository ppa:git-core/ppa
|
|
sudo apt-get -o Acquire::Retries=3 update && apt-get -o Acquire::Retries=3 -y install git
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: linux
|
|
shell: bash
|
|
env:
|
|
CXX: ${{ matrix.cxx }}
|
|
SOURCES: ${{ matrix.sources }}
|
|
LLVM_OS: ${{ matrix.llvm_os }}
|
|
LLVM_VER: ${{ matrix.llvm_ver }}
|
|
PACKAGES: ${{ matrix.packages }}
|
|
PACKAGES_TO_REMOVE: ${{ matrix.packages_to_remove }}
|
|
JOB_BUILDTYPE: ${{ matrix.buildtype }}
|
|
TOOLSET: ${{ matrix.toolset }}
|
|
CXXSTD: ${{ matrix.cxxstd }}
|
|
COMPILER: ${{ matrix.compiler }}
|
|
TRAVIS_BRANCH: ${{ github.base_ref }}
|
|
TRAVIS_OS_NAME: "linux"
|
|
JOB_UUID: ${{ matrix.job_uuid }}
|
|
run: |
|
|
echo '==================================> SETUP'
|
|
echo '==================================> PACKAGES'
|
|
set -e
|
|
if [ -n "$PACKAGES_TO_REMOVE" ]; then sudo apt-get purge -y $PACKAGES_TO_REMOVE; fi
|
|
echo ">>>>> APT: REPO.."
|
|
for i in {1..3}; do sudo -E apt-add-repository -y "ppa:ubuntu-toolchain-r/test" && break || sleep 2; done
|
|
|
|
if test -n "${LLVM_OS}" ; then
|
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
|
|
if test -n "${LLVM_VER}" ; then
|
|
sudo -E apt-add-repository "deb http://apt.llvm.org/${LLVM_OS}/ llvm-toolchain-${LLVM_OS}-${LLVM_VER} main"
|
|
else
|
|
# Snapshot (i.e. trunk) build of clang
|
|
sudo -E apt-add-repository "deb http://apt.llvm.org/${LLVM_OS}/ llvm-toolchain-${LLVM_OS} main"
|
|
fi
|
|
fi
|
|
echo ">>>>> APT: UPDATE.."
|
|
sudo -E apt-get -o Acquire::Retries=3 update
|
|
if test -n "${SOURCES}" ; then
|
|
echo ">>>>> APT: INSTALL SOURCES.."
|
|
for SOURCE in $SOURCES; do
|
|
sudo -E apt-add-repository ppa:$SOURCE
|
|
done
|
|
fi
|
|
echo ">>>>> APT: INSTALL ${PACKAGES}.."
|
|
sudo -E DEBIAN_FRONTEND=noninteractive apt-get -o Acquire::Retries=3 -y --no-install-suggests --no-install-recommends install ${PACKAGES}
|
|
|
|
echo '==================================> INSTALL AND COMPILE'
|
|
set -e
|
|
export TRAVIS_BUILD_DIR=$(pwd)
|
|
export TRAVIS_BRANCH=${TRAVIS_BRANCH:-$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')}
|
|
export VCS_COMMIT_ID=$GITHUB_SHA
|
|
export GIT_COMMIT=$GITHUB_SHA
|
|
export REPO_NAME=$(basename $GITHUB_REPOSITORY)
|
|
export USER=$(whoami)
|
|
export CC=${CC:-gcc}
|
|
export PATH=~/.local/bin:/usr/local/bin:$PATH
|
|
|
|
if [ "$JOB_BUILDTYPE" == "boost" ]; then
|
|
|
|
echo '==================================> BEFORE_INSTALL'
|
|
|
|
. .github/scripts/before-install.sh
|
|
|
|
echo '==================================> INSTALL'
|
|
|
|
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
|
cd ..
|
|
git clone --depth 1 -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost-root
|
|
cd boost-root
|
|
git submodule init libs/algorithm
|
|
git submodule init libs/any
|
|
git submodule init libs/array
|
|
git submodule init libs/assert
|
|
git submodule init libs/assign
|
|
git submodule init libs/atomic
|
|
git submodule init libs/bind
|
|
git submodule init libs/chrono
|
|
git submodule init libs/circular_buffer
|
|
git submodule init libs/concept_check
|
|
git submodule init libs/config
|
|
git submodule init libs/container
|
|
git submodule init libs/container_hash
|
|
git submodule init libs/conversion
|
|
git submodule init libs/core
|
|
git submodule init libs/date_time
|
|
git submodule init libs/detail
|
|
git submodule init libs/endian
|
|
git submodule init libs/exception
|
|
git submodule init libs/filesystem
|
|
git submodule init libs/foreach
|
|
git submodule init libs/format
|
|
git submodule init libs/function
|
|
git submodule init libs/function_types
|
|
git submodule init libs/functional
|
|
git submodule init libs/fusion
|
|
git submodule init libs/integer
|
|
git submodule init libs/intrusive
|
|
git submodule init libs/io
|
|
git submodule init libs/iostreams
|
|
git submodule init libs/iterator
|
|
git submodule init libs/lambda
|
|
git submodule init libs/lexical_cast
|
|
git submodule init libs/locale
|
|
git submodule init libs/log
|
|
git submodule init libs/math
|
|
git submodule init libs/move
|
|
git submodule init libs/mp11
|
|
git submodule init libs/mpl
|
|
git submodule init libs/multi_index
|
|
git submodule init libs/numeric/conversion
|
|
git submodule init libs/optional
|
|
git submodule init libs/parameter
|
|
git submodule init libs/pool
|
|
git submodule init libs/predef
|
|
git submodule init libs/preprocessor
|
|
git submodule init libs/property_tree
|
|
git submodule init libs/proto
|
|
git submodule init libs/ptr_container
|
|
git submodule init libs/python
|
|
git submodule init libs/random
|
|
git submodule init libs/range
|
|
git submodule init libs/ratio
|
|
git submodule init libs/rational
|
|
git submodule init libs/regex
|
|
git submodule init libs/serialization
|
|
git submodule init libs/signals2
|
|
git submodule init libs/smart_ptr
|
|
git submodule init libs/spirit
|
|
git submodule init libs/static_assert
|
|
git submodule init libs/system
|
|
git submodule init libs/thread
|
|
git submodule init libs/throw_exception
|
|
git submodule init libs/tokenizer
|
|
git submodule init libs/tti
|
|
git submodule init libs/tuple
|
|
git submodule init libs/type_index
|
|
git submodule init libs/type_traits
|
|
git submodule init libs/typeof
|
|
git submodule init libs/unordered
|
|
git submodule init libs/utility
|
|
git submodule init libs/variant
|
|
git submodule init libs/winapi
|
|
git submodule init libs/xpressive
|
|
git submodule init libs/headers tools/boost_install tools/build
|
|
git submodule update --jobs 8
|
|
rm -rf libs/phoenix
|
|
cp -rp $TRAVIS_BUILD_DIR libs/phoenix
|
|
ln -s $(pwd)/libs/phoenix $TRAVIS_BUILD_DIR
|
|
./bootstrap.sh
|
|
./b2 headers
|
|
if [ $TRAVIS_OS_NAME = osx ]; then
|
|
export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
|
true brew install ccache
|
|
fi
|
|
|
|
echo "using ${TOOLSET%%-*} : ${TOOLSET#*-} : ccache `echo $TOOLSET | sed 's/clang/clang++/;s/gcc/g++/'` ;" > ~/user-config.jam
|
|
|
|
echo '==================================> SCRIPT'
|
|
|
|
./b2 libs/phoenix/test toolset=$TOOLSET cxxstd=$CXXSTD ${SANITIZED+cxxflags=-fsanitize=address,undefined} ${SANITIZED+'linkflags=-fsanitize=address,undefined -fuse-ld=gold'}
|
|
|
|
fi
|
|
osx:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- name: "TOOLSET=clang COMPILER=clang++ CXXSTD=03,11 Job 42"
|
|
buildtype: "boost"
|
|
packages: ""
|
|
os: "macos-10.15"
|
|
cxx: "clang++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
xcode_version: 11.7
|
|
toolset: "clang"
|
|
compiler: "clang++"
|
|
cxxstd: "03,11"
|
|
job_uuid: "92cfceb39d"
|
|
- name: "TOOLSET=clang COMPILER=clang++ CXXSTD=14,1z Job 43"
|
|
buildtype: "boost"
|
|
packages: ""
|
|
os: "macos-10.15"
|
|
cxx: "clang++"
|
|
sources: ""
|
|
llvm_os: ""
|
|
llvm_ver: ""
|
|
xcode_version: 11.7
|
|
toolset: "clang"
|
|
compiler: "clang++"
|
|
cxxstd: "14,1z"
|
|
job_uuid: "0286dd552c"
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Set DEVELOPER_DIR
|
|
if: matrix.xcode_version != ''
|
|
run: echo "DEVELOPER_DIR=/Applications/Xcode_${{ matrix.xcode_version }}.app/Contents/Developer" >> $GITHUB_ENV
|
|
- name: Test DEVELOPER_DIR
|
|
run: echo $DEVELOPER_DIR
|
|
|
|
- name: "osx"
|
|
shell: bash
|
|
env:
|
|
CXX: ${{ matrix.cxx }}
|
|
SOURCES: ${{ matrix.sources }}
|
|
LLVM_OS: ${{ matrix.llvm_os }}
|
|
LLVM_VER: ${{ matrix.llvm_ver }}
|
|
PACKAGES: ${{ matrix.packages }}
|
|
JOB_BUILDTYPE: ${{ matrix.buildtype }}
|
|
TOOLSET: ${{ matrix.toolset }}
|
|
CXXSTD: ${{ matrix.cxxstd }}
|
|
COMPILER: ${{ matrix.compiler }}
|
|
TRAVIS_BRANCH: ${{ github.base_ref }}
|
|
TRAVIS_OS_NAME: "osx"
|
|
JOB_UUID: ${{ matrix.job_uuid }}
|
|
run: |
|
|
echo '==================================> SETUP'
|
|
set -e
|
|
sudo mv /Library/Developer/CommandLineTools /Library/Developer/CommandLineTools.bck
|
|
echo '==================================> PACKAGES'
|
|
echo '==================================> INSTALL AND COMPILE'
|
|
set -e
|
|
export TRAVIS_BUILD_DIR=$(pwd)
|
|
export TRAVIS_BRANCH=${TRAVIS_BRANCH:-$(echo $GITHUB_REF | awk 'BEGIN { FS = "/" } ; { print $3 }')}
|
|
export VCS_COMMIT_ID=$GITHUB_SHA
|
|
export GIT_COMMIT=$GITHUB_SHA
|
|
export REPO_NAME=$(basename $GITHUB_REPOSITORY)
|
|
export USER=$(whoami)
|
|
export CC=${CC:-gcc}
|
|
export PATH=~/.local/bin:/usr/local/bin:$PATH
|
|
|
|
if [ "$JOB_BUILDTYPE" == "boost" ]; then
|
|
|
|
echo '==================================> BEFORE_INSTALL'
|
|
|
|
. .github/scripts/before-install.sh
|
|
|
|
echo '==================================> INSTALL'
|
|
|
|
BOOST_BRANCH=develop && [ "$TRAVIS_BRANCH" == "master" ] && BOOST_BRANCH=master || true
|
|
cd ..
|
|
git clone --depth 1 -b $BOOST_BRANCH https://github.com/boostorg/boost.git boost-root
|
|
cd boost-root
|
|
git submodule init libs/algorithm
|
|
git submodule init libs/any
|
|
git submodule init libs/array
|
|
git submodule init libs/assert
|
|
git submodule init libs/assign
|
|
git submodule init libs/atomic
|
|
git submodule init libs/bind
|
|
git submodule init libs/chrono
|
|
git submodule init libs/circular_buffer
|
|
git submodule init libs/concept_check
|
|
git submodule init libs/config
|
|
git submodule init libs/container
|
|
git submodule init libs/container_hash
|
|
git submodule init libs/conversion
|
|
git submodule init libs/core
|
|
git submodule init libs/date_time
|
|
git submodule init libs/detail
|
|
git submodule init libs/endian
|
|
git submodule init libs/exception
|
|
git submodule init libs/filesystem
|
|
git submodule init libs/foreach
|
|
git submodule init libs/format
|
|
git submodule init libs/function
|
|
git submodule init libs/function_types
|
|
git submodule init libs/functional
|
|
git submodule init libs/fusion
|
|
git submodule init libs/integer
|
|
git submodule init libs/intrusive
|
|
git submodule init libs/io
|
|
git submodule init libs/iostreams
|
|
git submodule init libs/iterator
|
|
git submodule init libs/lambda
|
|
git submodule init libs/lexical_cast
|
|
git submodule init libs/locale
|
|
git submodule init libs/log
|
|
git submodule init libs/math
|
|
git submodule init libs/move
|
|
git submodule init libs/mp11
|
|
git submodule init libs/mpl
|
|
git submodule init libs/multi_index
|
|
git submodule init libs/numeric/conversion
|
|
git submodule init libs/optional
|
|
git submodule init libs/parameter
|
|
git submodule init libs/pool
|
|
git submodule init libs/predef
|
|
git submodule init libs/preprocessor
|
|
git submodule init libs/property_tree
|
|
git submodule init libs/proto
|
|
git submodule init libs/ptr_container
|
|
git submodule init libs/python
|
|
git submodule init libs/random
|
|
git submodule init libs/range
|
|
git submodule init libs/ratio
|
|
git submodule init libs/rational
|
|
git submodule init libs/regex
|
|
git submodule init libs/serialization
|
|
git submodule init libs/signals2
|
|
git submodule init libs/smart_ptr
|
|
git submodule init libs/spirit
|
|
git submodule init libs/static_assert
|
|
git submodule init libs/system
|
|
git submodule init libs/thread
|
|
git submodule init libs/throw_exception
|
|
git submodule init libs/tokenizer
|
|
git submodule init libs/tti
|
|
git submodule init libs/tuple
|
|
git submodule init libs/type_index
|
|
git submodule init libs/type_traits
|
|
git submodule init libs/typeof
|
|
git submodule init libs/unordered
|
|
git submodule init libs/utility
|
|
git submodule init libs/variant
|
|
git submodule init libs/winapi
|
|
git submodule init libs/xpressive
|
|
git submodule init libs/headers tools/boost_install tools/build
|
|
git submodule update --jobs 8
|
|
rm -rf libs/phoenix
|
|
cp -rp $TRAVIS_BUILD_DIR libs/phoenix
|
|
ln -s $(pwd)/libs/phoenix $TRAVIS_BUILD_DIR
|
|
./bootstrap.sh
|
|
./b2 headers
|
|
if [ $TRAVIS_OS_NAME = osx ]; then
|
|
export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
|
true brew install ccache
|
|
fi
|
|
|
|
echo "using ${TOOLSET%%-*} : ${TOOLSET#*-} : ccache `echo $TOOLSET | sed 's/clang/clang++/;s/gcc/g++/'` ;" > ~/user-config.jam
|
|
|
|
echo '==================================> SCRIPT'
|
|
|
|
./b2 libs/phoenix/test toolset=$TOOLSET cxxstd=$CXXSTD ${SANITIZED+cxxflags=-fsanitize=address,undefined} ${SANITIZED+'linkflags=-fsanitize=address,undefined -fuse-ld=gold'}
|
|
|
|
fi
|