Compare commits
11 Commits
6198908e86
...
016731aec9
Author | SHA1 | Date |
---|---|---|
Sebastian Messmer | 016731aec9 | |
Sebastian Messmer | 1f4d782cd1 | |
Sebastian Messmer | 9f76875378 | |
Sebastian Messmer | c5187bb0d7 | |
Sebastian Messmer | 2c86a6ed37 | |
Sebastian Messmer | 804509aff9 | |
Sebastian Meßmer | 245b84526e | |
Sebastian Messmer | 2338bb24f8 | |
Sebastian Messmer | 8eb7e85cad | |
Sebastian Messmer | 3930a86a74 | |
Sebastian Meßmer | 699a3c020c |
|
@ -14,21 +14,33 @@ runs:
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
echo 'Acquire::Retries "20";' | sudo tee -a /etc/apt/apt.conf.d/80-retries
|
echo 'Acquire::Retries "20";' | sudo tee -a /etc/apt/apt.conf.d/80-retries
|
||||||
if [[ "${{inputs.os}}" == "ubuntu-18.04" ]]; then
|
if [[ "${{inputs.os}}" == "ubuntu-22.04" ]]; then
|
||||||
echo Adding apt repositories for newer clang versions on Ubuntu 18.04
|
echo Adding apt repositories for newer clang versions on Ubuntu 22.04
|
||||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
|
||||||
sudo touch /etc/apt/sources.list.d/clang.list
|
sudo touch /etc/apt/sources.list.d/clang.list
|
||||||
sudo chmod o+w /etc/apt/sources.list.d/clang.list
|
sudo chmod o+w /etc/apt/sources.list.d/clang.list
|
||||||
echo "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main" >> /etc/apt/sources.list.d/clang.list
|
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy main" >> /etc/apt/sources.list.d/clang.list
|
||||||
echo "deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-11 main" >> /etc/apt/sources.list.d/clang.list
|
echo "deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-16 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb-src http://apt.llvm.org/jammy/ llvm-toolchain-jammy-16 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
sudo chmod o-w /etc/apt/sources.list.d/clang.list
|
sudo chmod o-w /etc/apt/sources.list.d/clang.list
|
||||||
elif [[ "${{inputs.os}}" == "ubuntu-20.04" ]]; then
|
elif [[ "${{inputs.os}}" == "ubuntu-20.04" ]]; then
|
||||||
echo Adding apt repositories for newer clang versions on Ubuntu 20.04
|
echo Adding apt repositories for newer clang versions on Ubuntu 20.04
|
||||||
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
|
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -
|
||||||
sudo touch /etc/apt/sources.list.d/clang.list
|
sudo touch /etc/apt/sources.list.d/clang.list
|
||||||
sudo chmod o+w /etc/apt/sources.list.d/clang.list
|
sudo chmod o+w /etc/apt/sources.list.d/clang.list
|
||||||
echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main" >> /etc/apt/sources.list.d/clang.list
|
echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal main" >> /etc/apt/sources.list.d/clang.list
|
||||||
echo "deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main" >> /etc/apt/sources.list.d/clang.list
|
echo "deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-13 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-14 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-14 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-15 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-15 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-16 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
|
echo "deb-src http://apt.llvm.org/focal/ llvm-toolchain-focal-16 main" >> /etc/apt/sources.list.d/clang.list
|
||||||
sudo chmod o-w /etc/apt/sources.list.d/clang.list
|
sudo chmod o-w /etc/apt/sources.list.d/clang.list
|
||||||
fi
|
fi
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
|
|
|
@ -10,4 +10,4 @@ runs:
|
||||||
- name: Install macOS dependencies
|
- name: Install macOS dependencies
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
brew install ninja macfuse libomp ccache md5sha1sum ${{inputs.extra_homebrew_packages}}
|
brew install ninja macfuse libomp ccache md5sha1sum pkg-config ${{inputs.extra_homebrew_packages}}
|
||||||
|
|
|
@ -9,9 +9,11 @@ jobs:
|
||||||
matrix:
|
matrix:
|
||||||
name: [""]
|
name: [""]
|
||||||
os:
|
os:
|
||||||
- macos-10.15
|
- macos-11
|
||||||
- ubuntu-18.04
|
- macos-12
|
||||||
|
- macos-13
|
||||||
- ubuntu-20.04
|
- ubuntu-20.04
|
||||||
|
- ubuntu-22.04
|
||||||
compiler:
|
compiler:
|
||||||
- cxx: g++-7
|
- cxx: g++-7
|
||||||
cc: gcc-7
|
cc: gcc-7
|
||||||
|
@ -37,6 +39,24 @@ jobs:
|
||||||
macos_cc: gcc-10
|
macos_cc: gcc-10
|
||||||
apt_package: g++-10
|
apt_package: g++-10
|
||||||
homebrew_package: gcc@10
|
homebrew_package: gcc@10
|
||||||
|
- cxx: g++-11
|
||||||
|
cc: gcc-11
|
||||||
|
macos_cxx: g++-11
|
||||||
|
macos_cc: gcc-11
|
||||||
|
apt_package: g++-11
|
||||||
|
homebrew_package: gcc@11
|
||||||
|
- cxx: g++-12
|
||||||
|
cc: gcc-12
|
||||||
|
macos_cxx: g++-12
|
||||||
|
macos_cc: gcc-12
|
||||||
|
apt_package: g++-12
|
||||||
|
homebrew_package: gcc@12
|
||||||
|
- cxx: g++-13
|
||||||
|
cc: gcc-13
|
||||||
|
macos_cxx: g++-13
|
||||||
|
macos_cc: gcc-13
|
||||||
|
apt_package: g++-13
|
||||||
|
homebrew_package: gcc@13
|
||||||
- cxx: clang++-7
|
- cxx: clang++-7
|
||||||
cc: clang-7
|
cc: clang-7
|
||||||
macos_cxx: /usr/local/opt/llvm@7/bin/clang++
|
macos_cxx: /usr/local/opt/llvm@7/bin/clang++
|
||||||
|
@ -55,13 +75,42 @@ jobs:
|
||||||
macos_cc: /usr/local/opt/llvm@9/bin/clang
|
macos_cc: /usr/local/opt/llvm@9/bin/clang
|
||||||
apt_package: clang-9
|
apt_package: clang-9
|
||||||
homebrew_package: llvm@9
|
homebrew_package: llvm@9
|
||||||
# TODO Clang-10 on linux? macos homebrew doesn't seem to have it
|
- cxx: clang++-10
|
||||||
|
cc: clang-10
|
||||||
|
macos_cxx: /usr/local/opt/llvm@10/bin/clang++
|
||||||
|
macos_cc: /usr/local/opt/llvm@10/bin/clang
|
||||||
|
apt_package: clang-10
|
||||||
|
homebrew_package: llvm@10
|
||||||
- cxx: clang++-11
|
- cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
macos_cxx: /usr/local/opt/llvm@11/bin/clang++
|
macos_cxx: /usr/local/opt/llvm@11/bin/clang++
|
||||||
macos_cc: /usr/local/opt/llvm@11/bin/clang
|
macos_cc: /usr/local/opt/llvm@11/bin/clang
|
||||||
apt_package: clang-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
homebrew_package: llvm@11
|
homebrew_package: llvm@11
|
||||||
|
- cxx: clang++-12
|
||||||
|
cc: clang-12
|
||||||
|
macos_cxx: /usr/local/opt/llvm@12/bin/clang++
|
||||||
|
macos_cc: /usr/local/opt/llvm@12/bin/clang
|
||||||
|
apt_package: clang-12 libomp5-12 libomp-12-dev
|
||||||
|
homebrew_package: llvm@12
|
||||||
|
- cxx: clang++-13
|
||||||
|
cc: clang-13
|
||||||
|
macos_cxx: /usr/local/opt/llvm@13/bin/clang++
|
||||||
|
macos_cc: /usr/local/opt/llvm@13/bin/clang
|
||||||
|
apt_package: clang-13 libomp5-13 libomp-13-dev
|
||||||
|
homebrew_package: llvm@13
|
||||||
|
- cxx: clang++-14
|
||||||
|
cc: clang-14
|
||||||
|
macos_cxx: /usr/local/opt/llvm@14/bin/clang++
|
||||||
|
macos_cc: /usr/local/opt/llvm@14/bin/clang
|
||||||
|
apt_package: clang-14 libomp5-14 libomp-14-dev
|
||||||
|
homebrew_package: llvm@14
|
||||||
|
- cxx: clang++-15
|
||||||
|
cc: clang-15
|
||||||
|
macos_cxx: /usr/local/opt/llvm@15/bin/clang++
|
||||||
|
macos_cc: /usr/local/opt/llvm@15/bin/clang
|
||||||
|
apt_package: clang-15 libomp5-15 libomp-15-dev
|
||||||
|
homebrew_package: llvm@15
|
||||||
# Apple Clang
|
# Apple Clang
|
||||||
# - cxx: clang++
|
# - cxx: clang++
|
||||||
# cc: clang
|
# cc: clang
|
||||||
|
@ -78,19 +127,74 @@ jobs:
|
||||||
run_tests: [true]
|
run_tests: [true]
|
||||||
run_clang_tidy: [false]
|
run_clang_tidy: [false]
|
||||||
exclude:
|
exclude:
|
||||||
# Apple CI machines cannot install LLVM 7 via homebrew anymore
|
# MacOS CI doesn't have Clang 7, 8, 9, 10, 11 or GCC 7, 8 anymore
|
||||||
- os: macos-10.15
|
- os: macos-11
|
||||||
compiler: {cxx: clang++-7, cc: clang-7, macos_cxx: /usr/local/opt/llvm@7/bin/clang++, macos_cc: /usr/local/opt/llvm@7/bin/clang, apt_package: clang-7, homebrew_package: llvm@7}
|
compiler: {cxx: clang++-7, cc: clang-7, macos_cxx: /usr/local/opt/llvm@7/bin/clang++, macos_cc: /usr/local/opt/llvm@7/bin/clang, apt_package: clang-7, homebrew_package: llvm@7}
|
||||||
# GCC 10 on Ubuntu 18.04 doesn't seem to work, potentially because cmake doesn't know yet that the STL now depends on pthread. See https://github.com/pothosware/SoapySDRPlay3/issues/5
|
- os: macos-11
|
||||||
- os: ubuntu-18.04
|
compiler: {cxx: clang++-8, cc: clang-8, macos_cxx: /usr/local/opt/llvm@8/bin/clang++, macos_cc: /usr/local/opt/llvm@8/bin/clang, apt_package: clang-8, homebrew_package: llvm@8}
|
||||||
compiler: {cxx: g++-10, cc: gcc-10, macos_cxx: g++-10, macos_cc: gcc-10, apt_package: g++-10, homebrew_package: gcc@10}
|
- os: macos-11
|
||||||
|
compiler: {cxx: clang++-9, cc: clang-9, macos_cxx: /usr/local/opt/llvm@9/bin/clang++, macos_cc: /usr/local/opt/llvm@9/bin/clang, apt_package: clang-9, homebrew_package: llvm@9}
|
||||||
|
- os: macos-11
|
||||||
|
compiler: {cxx: clang++-10, cc: clang-10, macos_cxx: /usr/local/opt/llvm@10/bin/clang++, macos_cc: /usr/local/opt/llvm@10/bin/clang, apt_package: clang-10, homebrew_package: llvm@10}
|
||||||
|
- os: macos-11
|
||||||
|
compiler: {cxx: clang++-11, cc: clang-11, macos_cxx: /usr/local/opt/llvm@11/bin/clang++, macos_cc: /usr/local/opt/llvm@11/bin/clang, apt_package: "clang-11 libomp5-11 libomp-11-dev", homebrew_package: llvm@11}
|
||||||
|
- os: macos-11
|
||||||
|
compiler: {cxx: g++-7, cc: gcc-7, macos_cxx: g++-7, macos_cc: gcc-7, homebrew_package: gcc@7, apt_package: g++-7}
|
||||||
|
- os: macos-11
|
||||||
|
compiler: {cxx: g++-8, cc: gcc-8, macos_cxx: g++-8, macos_cc: gcc-8, homebrew_package: gcc@8, apt_package: g++-8}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: clang++-7, cc: clang-7, macos_cxx: /usr/local/opt/llvm@7/bin/clang++, macos_cc: /usr/local/opt/llvm@7/bin/clang, apt_package: clang-7, homebrew_package: llvm@7}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: clang++-8, cc: clang-8, macos_cxx: /usr/local/opt/llvm@8/bin/clang++, macos_cc: /usr/local/opt/llvm@8/bin/clang, apt_package: clang-8, homebrew_package: llvm@8}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: clang++-9, cc: clang-9, macos_cxx: /usr/local/opt/llvm@9/bin/clang++, macos_cc: /usr/local/opt/llvm@9/bin/clang, apt_package: clang-9, homebrew_package: llvm@9}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: clang++-10, cc: clang-10, macos_cxx: /usr/local/opt/llvm@10/bin/clang++, macos_cc: /usr/local/opt/llvm@10/bin/clang, apt_package: clang-10, homebrew_package: llvm@10}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: clang++-11, cc: clang-11, macos_cxx: /usr/local/opt/llvm@11/bin/clang++, macos_cc: /usr/local/opt/llvm@11/bin/clang, apt_package: "clang-11 libomp5-11 libomp-11-dev", homebrew_package: llvm@11}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: g++-7, cc: gcc-7, macos_cxx: g++-7, macos_cc: gcc-7, homebrew_package: gcc@7, apt_package: g++-7}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: g++-8, cc: gcc-8, macos_cxx: g++-8, macos_cc: gcc-8, homebrew_package: gcc@8, apt_package: g++-8}
|
||||||
|
- os: macos-12
|
||||||
|
compiler: {cxx: g++-9, cc: gcc-9, macos_cxx: g++-9, macos_cc: gcc-9, homebrew_package: gcc@9, apt_package: g++-9}
|
||||||
|
- os: macos-13
|
||||||
|
compiler: {cxx: clang++-7, cc: clang-7, macos_cxx: /usr/local/opt/llvm@7/bin/clang++, macos_cc: /usr/local/opt/llvm@7/bin/clang, apt_package: clang-7, homebrew_package: llvm@7}
|
||||||
|
- os: macos-13
|
||||||
|
compiler: {cxx: clang++-8, cc: clang-8, macos_cxx: /usr/local/opt/llvm@8/bin/clang++, macos_cc: /usr/local/opt/llvm@8/bin/clang, apt_package: clang-8, homebrew_package: llvm@8}
|
||||||
|
- os: macos-13
|
||||||
|
compiler: {cxx: clang++-10, cc: clang-10, macos_cxx: /usr/local/opt/llvm@10/bin/clang++, macos_cc: /usr/local/opt/llvm@10/bin/clang, apt_package: clang-10, homebrew_package: llvm@10}
|
||||||
|
- os: macos-13
|
||||||
|
compiler: {cxx: clang++-11, cc: clang-11, macos_cxx: /usr/local/opt/llvm@11/bin/clang++, macos_cc: /usr/local/opt/llvm@11/bin/clang, apt_package: "clang-11 libomp5-11 libomp-11-dev", homebrew_package: llvm@11}
|
||||||
|
# Ubuntu 20.04 doesn't have GCC 12, 13 yet
|
||||||
|
- os: ubuntu-20.04
|
||||||
|
compiler: {cxx: g++-12, cc: gcc-12, macos_cxx: g++-12, macos_cc: gcc-12, homebrew_package: gcc@12, apt_package: g++-12}
|
||||||
|
- os: ubuntu-20.04
|
||||||
|
compiler: {cxx: g++-13, cc: gcc-13, macos_cxx: g++-13, macos_cc: gcc-13, homebrew_package: gcc@13, apt_package: g++-13}
|
||||||
|
# Ubuntu 22.04 doesn't have gcc 7, 8 or clang 7, 8, 9, 10 anymore
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
compiler: {cxx: g++-7, cc: gcc-7, macos_cxx: g++-7, macos_cc: gcc-7, homebrew_package: gcc@7, apt_package: g++-7}
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
compiler: {cxx: g++-8, cc: gcc-8, macos_cxx: g++-8, macos_cc: gcc-8, homebrew_package: gcc@8, apt_package: g++-8}
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
compiler: {cxx: clang++-7, cc: clang-7, macos_cxx: /usr/local/opt/llvm@7/bin/clang++, macos_cc: /usr/local/opt/llvm@7/bin/clang, apt_package: clang-7, homebrew_package: llvm@7}
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
compiler: {cxx: clang++-8, cc: clang-8, macos_cxx: /usr/local/opt/llvm@8/bin/clang++, macos_cc: /usr/local/opt/llvm@8/bin/clang, apt_package: clang-8, homebrew_package: llvm@8}
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
compiler: {cxx: clang++-9, cc: clang-9, macos_cxx: /usr/local/opt/llvm@9/bin/clang++, macos_cc: /usr/local/opt/llvm@9/bin/clang, apt_package: clang-9, homebrew_package: llvm@9}
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
compiler: {cxx: clang++-10, cc: clang-10, macos_cxx: /usr/local/opt/llvm@10/bin/clang++, macos_cc: /usr/local/opt/llvm@10/bin/clang, apt_package: clang-10, homebrew_package: llvm@10}
|
||||||
|
# Clang 11 on Ubuntu seems to have a bug that fails CI
|
||||||
|
- os: ubuntu-22.04
|
||||||
|
compiler: {cxx: clang++-11, cc: clang-11, macos_cxx: /usr/local/opt/llvm@11/bin/clang++, macos_cc: /usr/local/opt/llvm@11/bin/clang, apt_package: "clang-11 libomp5-11 libomp-11-dev", homebrew_package: llvm@11}
|
||||||
|
build_type: Debug
|
||||||
include:
|
include:
|
||||||
- name: Local dependencies
|
- name: Local dependencies
|
||||||
os: ubuntu-18.04
|
os: ubuntu-22.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
build_type: RelWithDebInfo
|
build_type: RelWithDebInfo
|
||||||
extra_cmake_flags: -DDEPENDENCY_CONFIG=../cmake-utils/DependenciesFromLocalSystem.cmake
|
extra_cmake_flags: -DDEPENDENCY_CONFIG=../cmake-utils/DependenciesFromLocalSystem.cmake
|
||||||
extra_cxxflags: ""
|
extra_cxxflags: ""
|
||||||
|
@ -99,11 +203,11 @@ jobs:
|
||||||
run_build: true
|
run_build: true
|
||||||
run_tests: true
|
run_tests: true
|
||||||
- name: Local dependencies
|
- name: Local dependencies
|
||||||
os: ubuntu-20.04
|
os: ubuntu-22.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
build_type: RelWithDebInfo
|
build_type: RelWithDebInfo
|
||||||
extra_cmake_flags: -DDEPENDENCY_CONFIG=../cmake-utils/DependenciesFromLocalSystem.cmake
|
extra_cmake_flags: -DDEPENDENCY_CONFIG=../cmake-utils/DependenciesFromLocalSystem.cmake
|
||||||
extra_cxxflags: ""
|
extra_cxxflags: ""
|
||||||
|
@ -112,7 +216,7 @@ jobs:
|
||||||
run_build: true
|
run_build: true
|
||||||
run_tests: true
|
run_tests: true
|
||||||
- name: Werror gcc
|
- name: Werror gcc
|
||||||
os: ubuntu-20.04
|
os: ubuntu-22.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: g++-9
|
cxx: g++-9
|
||||||
cc: gcc-9
|
cc: gcc-9
|
||||||
|
@ -124,11 +228,11 @@ jobs:
|
||||||
run_build: true
|
run_build: true
|
||||||
run_tests: false
|
run_tests: false
|
||||||
- name: Werror clang
|
- name: Werror clang
|
||||||
os: ubuntu-20.04
|
os: ubuntu-22.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang++-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
build_type: RelWithDebInfo
|
build_type: RelWithDebInfo
|
||||||
extra_cmake_flags: -DUSE_WERROR=on
|
extra_cmake_flags: -DUSE_WERROR=on
|
||||||
extra_cxxflags: ""
|
extra_cxxflags: ""
|
||||||
|
@ -136,11 +240,11 @@ jobs:
|
||||||
run_build: true
|
run_build: true
|
||||||
run_tests: false
|
run_tests: false
|
||||||
- name: No compatibility
|
- name: No compatibility
|
||||||
os: ubuntu-20.04
|
os: ubuntu-22.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang++-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
build_type: RelWithDebInfo
|
build_type: RelWithDebInfo
|
||||||
extra_cmake_flags: ""
|
extra_cmake_flags: ""
|
||||||
extra_cxxflags: "-DCRYFS_NO_COMPATIBILITY"
|
extra_cxxflags: "-DCRYFS_NO_COMPATIBILITY"
|
||||||
|
@ -149,11 +253,12 @@ jobs:
|
||||||
run_build: true
|
run_build: true
|
||||||
run_tests: true
|
run_tests: true
|
||||||
- name: ASAN
|
- name: ASAN
|
||||||
|
# TODO Update to ubuntu-22.04
|
||||||
os: ubuntu-20.04
|
os: ubuntu-20.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang++-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
build_type: Debug
|
build_type: Debug
|
||||||
# OpenMP crashes under asan. Disable OpenMP.
|
# OpenMP crashes under asan. Disable OpenMP.
|
||||||
# TODO is it enough to replace this with omp_num_threads: 1 ?
|
# TODO is it enough to replace this with omp_num_threads: 1 ?
|
||||||
|
@ -164,11 +269,12 @@ jobs:
|
||||||
run_build: true
|
run_build: true
|
||||||
run_tests: true
|
run_tests: true
|
||||||
- name: UBSAN
|
- name: UBSAN
|
||||||
|
# TODO Update to ubuntu-22.04
|
||||||
os: ubuntu-20.04
|
os: ubuntu-20.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang++-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
build_type: Debug
|
build_type: Debug
|
||||||
# OpenMP crashes under ubsan. Disable OpenMP.
|
# OpenMP crashes under ubsan. Disable OpenMP.
|
||||||
# TODO is it enough to replace this with omp_num_threads: 1 ?
|
# TODO is it enough to replace this with omp_num_threads: 1 ?
|
||||||
|
@ -179,11 +285,12 @@ jobs:
|
||||||
run_build: true
|
run_build: true
|
||||||
run_tests: true
|
run_tests: true
|
||||||
- name: TSAN
|
- name: TSAN
|
||||||
|
# TODO Update to ubuntu-22.04
|
||||||
os: ubuntu-20.04
|
os: ubuntu-20.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang++-11
|
apt_package: clang-11 libomp5-11 libomp-11-dev
|
||||||
build_type: Debug
|
build_type: Debug
|
||||||
extra_cmake_flags: ""
|
extra_cmake_flags: ""
|
||||||
extra_cxxflags: "-O2 -fsanitize=thread -fno-omit-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-common"
|
extra_cxxflags: "-O2 -fsanitize=thread -fno-omit-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -fno-common"
|
||||||
|
@ -193,11 +300,11 @@ jobs:
|
||||||
gtest_args: "--gtest_filter=-LoggingTest.LoggingAlsoWorksAfterFork:AssertTest_*:BacktraceTest.*:SubprocessTest.*:SignalCatcherTest.*_thenDies:SignalHandlerTest.*_thenDies:SignalHandlerTest.givenMultipleSigIntHandlers_whenRaising_thenCatchesCorrectSignal:CliTest_Setup.*:CliTest_IntegrityCheck.*:*/CliTest_WrongEnvironment.*:CliTest_Unmount.*:CliTest.WorksWithCommasInBasedir"
|
gtest_args: "--gtest_filter=-LoggingTest.LoggingAlsoWorksAfterFork:AssertTest_*:BacktraceTest.*:SubprocessTest.*:SignalCatcherTest.*_thenDies:SignalHandlerTest.*_thenDies:SignalHandlerTest.givenMultipleSigIntHandlers_whenRaising_thenCatchesCorrectSignal:CliTest_Setup.*:CliTest_IntegrityCheck.*:*/CliTest_WrongEnvironment.*:CliTest_Unmount.*:CliTest.WorksWithCommasInBasedir"
|
||||||
extra_env_vars_for_test: OMP_NUM_THREADS=1
|
extra_env_vars_for_test: OMP_NUM_THREADS=1
|
||||||
- name: clang-tidy
|
- name: clang-tidy
|
||||||
os: ubuntu-20.04
|
os: ubuntu-22.04
|
||||||
compiler:
|
compiler:
|
||||||
cxx: clang++-11
|
cxx: clang++-11
|
||||||
cc: clang-11
|
cc: clang-11
|
||||||
apt_package: clang++-11 clang-tidy-11
|
apt_package: clang-11 clang-tidy-11 libomp5-11 libomp-11-dev
|
||||||
build_type: RelWithDebInfo
|
build_type: RelWithDebInfo
|
||||||
extra_cmake_flags: ""
|
extra_cmake_flags: ""
|
||||||
extra_cxxflags: ""
|
extra_cxxflags: ""
|
||||||
|
@ -253,9 +360,6 @@ jobs:
|
||||||
shell: bash
|
shell: bash
|
||||||
run: |
|
run: |
|
||||||
# Using "python3 -m pip" instead of "pip3" to make sure we get the same pip that we queried the cache dir for the Github Cache action
|
# Using "python3 -m pip" instead of "pip3" to make sure we get the same pip that we queried the cache dir for the Github Cache action
|
||||||
if [[ "${{matrix.os}}" == "ubuntu-18.04" ]]; then
|
|
||||||
python3 -m pip install setuptools
|
|
||||||
fi
|
|
||||||
python3 -m pip install conan==1.59
|
python3 -m pip install conan==1.59
|
||||||
- name: Save pip cache
|
- name: Save pip cache
|
||||||
# note: this access key has write access to the cache. This can't run on PRs.
|
# note: this access key has write access to the cache. This can't run on PRs.
|
||||||
|
|
|
@ -1,6 +1,11 @@
|
||||||
Version 0.11.4 (unreleased)
|
Version 0.11.5 (unreleased)
|
||||||
---------------
|
---------------
|
||||||
* Fixed build issue on Fedora (see https://github.com/cryfs/cryfs/pull/448 )
|
* Fix an issue when using `-o` atime mount options
|
||||||
|
|
||||||
|
Version 0.11.4
|
||||||
|
---------------
|
||||||
|
* Fixed build issue with GCC 13 (see https://github.com/cryfs/cryfs/pull/448 )
|
||||||
|
* Fixed build issue with Python 3.12 (see https://github.com/cryfs/cryfs/issues/459 )
|
||||||
|
|
||||||
Version 0.11.3
|
Version 0.11.3
|
||||||
---------------
|
---------------
|
||||||
|
|
|
@ -338,12 +338,24 @@ void extractAllAtimeOptionsAndRemoveOnesUnknownToLibfuse_(string* csv_options, v
|
||||||
vector<string> extractAllAtimeOptionsAndRemoveOnesUnknownToLibfuse_(vector<string>* fuseOptions) {
|
vector<string> extractAllAtimeOptionsAndRemoveOnesUnknownToLibfuse_(vector<string>* fuseOptions) {
|
||||||
vector<string> result;
|
vector<string> result;
|
||||||
bool lastOptionWasDashO = false;
|
bool lastOptionWasDashO = false;
|
||||||
for (string& option : *fuseOptions) {
|
for (size_t i = 0; i < fuseOptions->size(); ++i)
|
||||||
if (lastOptionWasDashO) {
|
{
|
||||||
extractAllAtimeOptionsAndRemoveOnesUnknownToLibfuse_(&option, &result);
|
string &option = (*fuseOptions)[i];
|
||||||
|
if (lastOptionWasDashO)
|
||||||
|
{
|
||||||
|
extractAllAtimeOptionsAndRemoveOnesUnknownToLibfuse_(&option, &result);
|
||||||
|
if (option.empty()) {
|
||||||
|
// All options were removed, remove the empty argument
|
||||||
|
fuseOptions->erase(fuseOptions->begin() + i);
|
||||||
|
--i;
|
||||||
|
// And also remove the now value-less '-o' before it
|
||||||
|
fuseOptions->erase(fuseOptions->begin() + i);
|
||||||
|
--i;
|
||||||
}
|
}
|
||||||
lastOptionWasDashO = (option == "-o");
|
}
|
||||||
|
lastOptionWasDashO = (option == "-o");
|
||||||
}
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -406,9 +406,9 @@ def get_config_from_root(root):
|
||||||
# configparser.NoOptionError (if it lacks "VCS="). See the docstring at
|
# configparser.NoOptionError (if it lacks "VCS="). See the docstring at
|
||||||
# the top of versioneer.py for instructions on writing your setup.cfg .
|
# the top of versioneer.py for instructions on writing your setup.cfg .
|
||||||
setup_cfg = os.path.join(root, "setup.cfg")
|
setup_cfg = os.path.join(root, "setup.cfg")
|
||||||
parser = configparser.SafeConfigParser()
|
parser = configparser.ConfigParser()
|
||||||
with open(setup_cfg, "r") as f:
|
with open(setup_cfg, "r") as f:
|
||||||
parser.readfp(f)
|
parser.read_file(f)
|
||||||
VCS = parser.get("versioneer", "VCS") # mandatory
|
VCS = parser.get("versioneer", "VCS") # mandatory
|
||||||
|
|
||||||
def get(parser, name):
|
def get(parser, name):
|
||||||
|
|
|
@ -39,10 +39,12 @@ TEST(BacktraceTest, ContainsTopLevelLine)
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
|
#if !(defined(__clang__) && defined(NDEBUG))
|
||||||
std::string call_process_exiting_with_nullptr_violation()
|
std::string call_process_exiting_with_nullptr_violation()
|
||||||
{
|
{
|
||||||
return call_process_exiting_with("nullptr");
|
return call_process_exiting_with("nullptr");
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
std::string call_process_exiting_with_exception(const std::string &message)
|
std::string call_process_exiting_with_exception(const std::string &message)
|
||||||
{
|
{
|
||||||
return call_process_exiting_with("exception", message);
|
return call_process_exiting_with("exception", message);
|
||||||
|
@ -109,6 +111,8 @@ TEST(BacktraceTest, ContainsBacktrace)
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !(defined(__clang__) && defined(NDEBUG))
|
||||||
|
// TODO Can we also make this work on clang in Release mode?
|
||||||
TEST(BacktraceTest, ShowBacktraceOnNullptrAccess)
|
TEST(BacktraceTest, ShowBacktraceOnNullptrAccess)
|
||||||
{
|
{
|
||||||
auto output = call_process_exiting_with_nullptr_violation();
|
auto output = call_process_exiting_with_nullptr_violation();
|
||||||
|
@ -118,6 +122,7 @@ TEST(BacktraceTest, ShowBacktraceOnNullptrAccess)
|
||||||
EXPECT_THAT(output, HasSubstr("cpputils::backtrace"));
|
EXPECT_THAT(output, HasSubstr("cpputils::backtrace"));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
TEST(BacktraceTest, ShowBacktraceOnSigSegv)
|
TEST(BacktraceTest, ShowBacktraceOnSigSegv)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue