[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master f8a78ba 15/30: Add a CI build using clang wit
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master f8a78ba 15/30: Add a CI build using clang with autotools too |
Date: |
Wed, 24 Mar 2021 15:31:09 -0400 (EDT) |
branch: master
commit f8a78baf03860a8cacc1bf9cb006c4a764cf017f
Author: Vadim Zeitlin <vadim@tt-solutions.com>
Commit: Gregory W. Chicares <gchicares@sbcglobal.net>
Add a CI build using clang with autotools too
Note that the build also uses libc++, rather than libstdc++ that clang
under Linux uses by default, to test not only another compiler, but also
another standard library implementation.
And also because compiling unwind.cpp with clang/libstdc++ doesn't work
currently (while when using libc++ this file is not compiled at all).
---
.github/workflows/ci.yml | 18 ++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index c8aeb79..9fe3c6d 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -25,8 +25,12 @@ jobs:
- name: Linux using autotools
mingw: false
autotools: true
+ - name: Linux with clang
+ compiler: clang
+ mingw: false
+ autotools: true
env:
- LMI_COMPILER: gcc
+ LMI_COMPILER: ${{ matrix.compiler || 'gcc' }}
LMI_TRIPLET: ${{ matrix.triplet || 'x86_64-pc-linux-gnu' }}
steps:
@@ -66,6 +70,10 @@ jobs:
packages="$packages libunwind-dev libdw-dev libgtk-3-dev"
fi
+ if [ "${{ matrix.compiler }}" = clang ]; then
+ packages="$packages clang libc++abi-dev libc++-dev"
+ fi
+
sudo apt-get -qq install $packages
- name: Fix up libtool
@@ -81,6 +89,12 @@ jobs:
else
compiler=${LMI_COMPILER}
fi
+
+ if [ "${{ matrix.compiler }}" = clang ]; then
+ echo "CC=clang" >> $GITHUB_ENV
+ echo "CXX=clang++ -stdlib=libc++" >> $GITHUB_ENV
+ fi
+
gcc_version=$($compiler -dumpversion|tr -d '\r')
echo "gcc_version=$gcc_version" >> $GITHUB_ENV
@@ -145,7 +159,7 @@ jobs:
run: |
for lib in regex filesystem; do
cd /opt/lmi/third_party/src/boost/libs/${lib}/src
- ${LMI_COMPILER} -std=c++17 -Wno-deprecated-declarations
-DBOOST_NO_AUTO_PTR -Dregister='' -fPIC -I../../.. -c *.cpp
+ ${CXX-${LMI_COMPILER}} -std=c++17 -Wno-deprecated-declarations
-DBOOST_NO_AUTO_PTR -Dregister='' -fPIC -I../../.. -c *.cpp
ar rc
/opt/lmi/local/${LMI_COMPILER}_${LMI_TRIPLET}/lib/libboost_${lib}.a *.o
done
- [lmi-commits] [lmi] master updated (038e34d -> 0b85c14), Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 2b7e012 02/30: Rename tests in automake Makefile to use foo_test convention too, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 06a8f83 01/30: Add libtest_common to automake Makefile, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master dad090e 05/30: Add build directory to PATH when running lmi tests with autotools, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 80c978c 10/30: Run apt-get only once to install all packages in the CI workflow, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 35acf2a 03/30: Force linking CLI alert initialization functions into the tests, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master db6123b 06/30: Use -frounding-math option when building with autotools too, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 2c9d788 12/30: Run apt-get quietly in GitHub Actions CI workflow, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master f8a78ba 15/30: Add a CI build using clang with autotools too,
Greg Chicares <=
- [lmi-commits] [lmi] master c5d4a99 17/30: Show config.log if configure step in the CI build fails, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master d5728f4 19/30: Show the test suite log if running tests failed in the CI build, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 48c0613 20/30: Fix Boost detection and use in configure with clang in C++17 mode, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 41bd0a3 22/30: Update wx submodule to avoid clang warning in wx/hashmap.h, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 1f94454 25/30: Disable clang -Wstring-plus-int warning, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 12922c2 27/30: Generate product files in the CI builds using autotools too, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 80e1b14 23/30: Fix caching of wxWidgets and wxPdfDoc libraries, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master f4a91e3 28/30: Move XSD and XSL copy command to a more appropriate CI job step, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 593a712 29/30: Actually update wx, Greg Chicares, 2021/03/24
- [lmi-commits] [lmi] master 0b85c14 30/30: Improve documentation, Greg Chicares, 2021/03/24