Merge pull request #3302 from Shreeshrii/PR1

Actions CI: Remove gcc from macOS CI
This commit is contained in:
Egor Pugin 2021-02-15 17:07:57 +03:00 committed by GitHub
commit a219d64811
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 76 additions and 80 deletions

View File

@ -1,6 +1,6 @@
name: autotools
# autotools build of tesseract and training tools on ubuntu, macos homebrew and macports.
# run command line tests, basicapitest and unittests.
on:
#push:
schedule:
@ -15,25 +15,25 @@ jobs:
fail-fast: false
matrix:
config:
- { name: ubuntu-18.04-clang-7-autotools, os: ubuntu-18.04, cc: clang-7, cxx: clang++-7 }
- { name: ubuntu-18.04-clang-8-autotools, os: ubuntu-18.04, cc: clang-8, cxx: clang++-8 } #installed
- { name: ubuntu-18.04-clang-9-autotools, os: ubuntu-18.04, cc: clang-9, cxx: clang++-9 } #installed
- { name: ubuntu-18.04-clang-10-autotools, os: ubuntu-18.04, cc: clang-10, cxx: clang++-10 }
- { name: ubuntu-18.04-clang-7-autotools, os: ubuntu-18.04, cxx: clang++-7 }
- { name: ubuntu-18.04-clang-8-autotools, os: ubuntu-18.04, cxx: clang++-8 } #installed
- { name: ubuntu-18.04-clang-9-autotools, os: ubuntu-18.04, cxx: clang++-9 } #installed
- { name: ubuntu-18.04-clang-10-autotools, os: ubuntu-18.04, cxx: clang++-10 }
- { name: ubuntu-18.04-gcc-7-autotools, os: ubuntu-18.04, cc: gcc-7, cxx: g++-7 } #installed
- { name: ubuntu-18.04-gcc-8-autotools, os: ubuntu-18.04, cc: gcc-8, cxx: g++-8 } #installed
- { name: ubuntu-18.04-gcc-9-autotools, os: ubuntu-18.04, cc: gcc-9, cxx: g++-9 } #installed
- { name: ubuntu-18.04-gcc-10-autotools, os: ubuntu-18.04, cc: gcc-10, cxx: g++-10 } #installed
- { name: ubuntu-18.04-gcc-7-autotools, os: ubuntu-18.04, cxx: g++-7 } #installed
- { name: ubuntu-18.04-gcc-8-autotools, os: ubuntu-18.04, cxx: g++-8 } #installed
- { name: ubuntu-18.04-gcc-9-autotools, os: ubuntu-18.04, cxx: g++-9 } #installed
- { name: ubuntu-18.04-gcc-10-autotools, os: ubuntu-18.04, cxx: g++-10 } #installed
- { name: ubuntu-20.04-clang-7-autotools, os: ubuntu-20.04, cc: clang-7, cxx: clang++-7 }
- { name: ubuntu-20.04-clang-8-autotools, os: ubuntu-20.04, cc: clang-8, cxx: clang++-8 } #installed
- { name: ubuntu-20.04-clang-9-autotools, os: ubuntu-20.04, cc: clang-9, cxx: clang++-9 } #installed
- { name: ubuntu-20.04-clang-10-autotools, os: ubuntu-20.04, cc: clang-10, cxx: clang++-10 } #installed
- { name: ubuntu-20.04-clang-7-autotools, os: ubuntu-20.04, cxx: clang++-7 }
- { name: ubuntu-20.04-clang-8-autotools, os: ubuntu-20.04, cxx: clang++-8 } #installed
- { name: ubuntu-20.04-clang-9-autotools, os: ubuntu-20.04, cxx: clang++-9 } #installed
- { name: ubuntu-20.04-clang-10-autotools, os: ubuntu-20.04, cxx: clang++-10 } #installed
- { name: ubuntu-20.04-gcc-7-autotools, os: ubuntu-20.04, cc: gcc-7, cxx: g++-7 } #installed
- { name: ubuntu-20.04-gcc-8-autotools, os: ubuntu-20.04, cc: gcc-8, cxx: g++-8 } #installed
- { name: ubuntu-20.04-gcc-9-autotools, os: ubuntu-20.04, cc: gcc-9, cxx: g++-9 } #installed
- { name: ubuntu-20.04-gcc-10-autotools, os: ubuntu-20.04, cc: gcc-10, cxx: g++-10 } #installed
- { name: ubuntu-20.04-gcc-7-autotools, os: ubuntu-20.04, cxx: g++-7 } #installed
- { name: ubuntu-20.04-gcc-8-autotools, os: ubuntu-20.04, cxx: g++-8 } #installed
- { name: ubuntu-20.04-gcc-9-autotools, os: ubuntu-20.04, cxx: g++-9 } #installed
- { name: ubuntu-20.04-gcc-10-autotools, os: ubuntu-20.04, cxx: g++-10 } #installed
steps:
- uses: actions/checkout@v2
@ -48,7 +48,7 @@ jobs:
- name: Install Compiler
run: |
sudo apt-get install -y ${{ matrix.config.cxx }} ${{ matrix.config.cc }}
sudo apt-get install -y ${{ matrix.config.cxx }}
- name: Install dependencies
run: |
@ -80,7 +80,7 @@ jobs:
run: |
make check
- name: Display Tesseract and Training Tools Version
- name: Display Version for tesseract, lstmtraining, text2image
run: |
tesseract -v
lstmtraining -v
@ -128,10 +128,8 @@ jobs:
fail-fast: false
matrix:
config:
- { name: macos-10.15-clang-12-autotools, os: macos-10.15, cc: clang, cxx: clang++ } # default clang-12
- { name: macos-10.15-gcc-8-autotools, os: macos-10.15, cc: gcc-8, cxx: g++-8 } #installed
- { name: macos-10.15-gcc-9-autotools, os: macos-10.15, cc: gcc-9, cxx: g++-9 } #installed
- { name: macos-10.15-gcc-10-autotools, os: macos-10.15, cc: gcc-10, cxx: g++-10 } #installed
- { name: macos-10.15-clang-12-autotools, os: macos-10.15, cxx: clang++ }
- { name: macos-10.15-gcc-10-autotools, os: macos-10.15, cxx: g++-10 }
steps:
- uses: actions/checkout@v2
@ -152,7 +150,7 @@ jobs:
brew install cabextract
brew install libarchive curl
- name: Setup
- name: Setup Tesseract
run: |
mkdir -p m4
./autogen.sh
@ -170,14 +168,21 @@ jobs:
make training -j 8
sudo make install training-install
- name: Make and run Unit Tests (Fails with gcc)
- name: Make and run Unit Tests (clang)
if: startsWith(matrix.config.cxx, 'clang')
run: |
make check
continue-on-error: true
- name: Display Tesseract and Training Tools Version
- name: Make and run Unit Tests (unset LANG needed for g++-8, g++-9, g++-10 on macOS)
if: startsWith(matrix.config.cxx, 'g')
shell: bash
run: |
unset LANG LC_ALL LC_CTYPE
locale
make check
- name: Display Version for tesseract, lstmtraining, text2image
run: |
${{ matrix.config.cxx }} --version
tesseract -v
lstmtraining -v
text2image -v
@ -215,7 +220,7 @@ jobs:
run: |
cat test-suite.log
if: always()
# ============================================================================================
ports:
@ -224,10 +229,7 @@ jobs:
fail-fast: false
matrix:
config:
- { name: macos-10.15-clang-12-autotools, os: macos-10.15, cc: clang, cxx: clang++ } # defualt clang-12
- { name: macos-10.15-gcc-8-autotools, os: macos-10.15, cc: gcc-8, cxx: g++-8 } #installed
- { name: macos-10.15-gcc-9-autotools, os: macos-10.15, cc: gcc-9, cxx: g++-9 } #installed
- { name: macos-10.15-gcc-10-autotools, os: macos-10.15, cc: gcc-10, cxx: g++-10 } #installed
- { name: macos-10.15-clang-12-autotools, os: macos-10.15, cxx: clang++ }
steps:
- uses: actions/checkout@v2
@ -247,12 +249,12 @@ jobs:
- name: Install Dependencies
run: |
sudo port install autoconf autoconf-archive automake libtool pkgconfig
sudo port install leptonica libomp
sudo port install leptonica
sudo port install cairo pango
sudo port install icu +devel
sudo port install cabextract libarchive curl
- name: Setup
- name: Setup Tesseract
run: |
mkdir -p m4
./autogen.sh
@ -271,12 +273,12 @@ jobs:
make training -j 8
sudo make install training-install
- name: Make and run Unit Tests (Fails with gcc)
- name: Make and run Unit Tests (clang)
if: startsWith(matrix.config.cxx, 'clang')
run: |
make check
continue-on-error: true
- name: Display Version
- name: Display Version for tesseract, lstmtraining, text2image
run: |
tesseract -v
lstmtraining -v
@ -315,4 +317,4 @@ jobs:
run: |
cat test-suite.log
if: always()

View File

@ -1,15 +1,13 @@
name: cmake
# cmake build of tesseract and training tools with gcc and clang on ubuntu.
# cmake build of tesseract and training tools with gcc and clang on macOS homebrew using Ninja.
# cmake build of tesseract and training tools on ubuntu and macOS homebrew using Ninja.
# test command line version of tesseract. run basicapitest.
on:
#push:
schedule:
- cron: 0 21 * * *
jobs:
build:
basictests:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
strategy:
@ -17,36 +15,36 @@ jobs:
matrix:
config:
- { name: macos-10.15-clang-12-cmake, os: macos-10.15, cc: clang, cxx: clang++ } # defualt
- { name: macos-10.15-clang-11-cmake, os: macos-10.15, cc: '$(brew --prefix llvm)/bin/clang', cxx: '$(brew --prefix llvm)/bin/clang++' } #installed
- { name: macos-10.15-gcc-8-cmake, os: macos-10.15, cc: gcc-8, cxx: g++-8 } #installed
- { name: macos-10.15-gcc-9-cmake, os: macos-10.15, cc: gcc-9, cxx: g++-9 } #installed
- { name: macos-10.15-gcc-10-cmake, os: macos-10.15, cc: gcc-10, cxx: g++-10 } #installed
- { name: macos-10.15-clang-12-cmake, os: macos-10.15, cxx: clang++ } # defualt
- { name: macos-10.15-clang-11-cmake, os: macos-10.15, cxx: '$(brew --prefix llvm)/bin/clang++' } #installed
- { name: macos-10.15-gcc-8-cmake, os: macos-10.15, cxx: g++-8 } #installed
- { name: macos-10.15-gcc-9-cmake, os: macos-10.15, cxx: g++-9 } #installed
- { name: macos-10.15-gcc-10-cmake, os: macos-10.15, cxx: g++-10 } #installed
- { name: ubuntu-18.04-clang-7-cmake, os: ubuntu-18.04, cc: clang-7, cxx: clang++-7 }
- { name: ubuntu-18.04-clang-8-cmake, os: ubuntu-18.04, cc: clang-8, cxx: clang++-8 } #installed
- { name: ubuntu-18.04-clang-9-cmake, os: ubuntu-18.04, cc: clang-9, cxx: clang++-9 } #installed
- { name: ubuntu-18.04-clang-10-cmake, os: ubuntu-18.04, cc: clang-10, cxx: clang++-10 }
- { name: ubuntu-18.04-clang-7-cmake, os: ubuntu-18.04, cxx: clang++-7 }
- { name: ubuntu-18.04-clang-8-cmake, os: ubuntu-18.04, cxx: clang++-8 } #installed
- { name: ubuntu-18.04-clang-9-cmake, os: ubuntu-18.04, cxx: clang++-9 } #installed
- { name: ubuntu-18.04-clang-10-cmake, os: ubuntu-18.04, cxx: clang++-10 }
- { name: ubuntu-18.04-gcc-7-cmake, os: ubuntu-18.04, cc: gcc-7, cxx: g++-7 } #installed
- { name: ubuntu-18.04-gcc-8-cmake, os: ubuntu-18.04, cc: gcc-8, cxx: g++-8 } #installed
- { name: ubuntu-18.04-gcc-9-cmake, os: ubuntu-18.04, cc: gcc-9, cxx: g++-9 } #installed
- { name: ubuntu-18.04-gcc-10-cmake, os: ubuntu-18.04, cc: gcc-10, cxx: g++-10 } #installed
- { name: ubuntu-18.04-gcc-7-cmake, os: ubuntu-18.04, cxx: g++-7 } #installed
- { name: ubuntu-18.04-gcc-8-cmake, os: ubuntu-18.04, cxx: g++-8 } #installed
- { name: ubuntu-18.04-gcc-9-cmake, os: ubuntu-18.04, cxx: g++-9 } #installed
- { name: ubuntu-18.04-gcc-10-cmake, os: ubuntu-18.04, cxx: g++-10 } #installed
- { name: ubuntu-20.04-clang-7-cmake, os: ubuntu-20.04, cc: clang-7, cxx: clang++-7 }
- { name: ubuntu-20.04-clang-8-cmake, os: ubuntu-20.04, cc: clang-8, cxx: clang++-8 } #installed
- { name: ubuntu-20.04-clang-9-cmake, os: ubuntu-20.04, cc: clang-9, cxx: clang++-9 } #installed
- { name: ubuntu-20.04-clang-10-cmake, os: ubuntu-20.04, cc: clang-10, cxx: clang++-10 } #installed
- { name: ubuntu-20.04-clang-7-cmake, os: ubuntu-20.04, cxx: clang++-7 }
- { name: ubuntu-20.04-clang-8-cmake, os: ubuntu-20.04, cxx: clang++-8 } #installed
- { name: ubuntu-20.04-clang-9-cmake, os: ubuntu-20.04, cxx: clang++-9 } #installed
- { name: ubuntu-20.04-clang-10-cmake, os: ubuntu-20.04, cxx: clang++-10 } #installed
- { name: ubuntu-20.04-gcc-7-cmake, os: ubuntu-20.04, cc: gcc-7, cxx: g++-7 } #installed
- { name: ubuntu-20.04-gcc-8-cmake, os: ubuntu-20.04, cc: gcc-8, cxx: g++-8 } #installed
- { name: ubuntu-20.04-gcc-9-cmake, os: ubuntu-20.04, cc: gcc-9, cxx: g++-9 } #installed
- { name: ubuntu-20.04-gcc-10-cmake, os: ubuntu-20.04, cc: gcc-10, cxx: g++-10 } #installed
- { name: ubuntu-20.04-gcc-7-cmake, os: ubuntu-20.04, cxx: g++-7 } #installed
- { name: ubuntu-20.04-gcc-8-cmake, os: ubuntu-20.04, cxx: g++-8 } #installed
- { name: ubuntu-20.04-gcc-9-cmake, os: ubuntu-20.04, cxx: g++-9 } #installed
- { name: ubuntu-20.04-gcc-10-cmake, os: ubuntu-20.04, cxx: g++-10 } #installed
steps:
- name: Install compilers on Linux
run: |
sudo apt-get install ${{ matrix.config.cc }} ${{ matrix.config.cxx }} -y
sudo apt-get install ${{ matrix.config.cxx }} -y
if: runner.os == 'Linux'
# sudo apt-get install libarchive-dev libcurl4-openssl-dev libcurl4 curl -y
@ -84,7 +82,6 @@ jobs:
-G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DOPENMP_BUILD=OFF \
-DCMAKE_C_COMPILER=${{ matrix.config.cc }} \
-DCMAKE_CXX_COMPILER=${{ matrix.config.cxx }} \
-DCMAKE_INSTALL_PREFIX:PATH=inst
if: runner.os == 'Linux'
@ -102,7 +99,6 @@ jobs:
-G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DOPENMP_BUILD=OFF \
-DCMAKE_C_COMPILER=${{ matrix.config.cc }} \
-DCMAKE_CXX_COMPILER=${{ matrix.config.cxx }} \
-DCMAKE_INSTALL_PREFIX:PATH=inst
if: runner.os == 'macOS'
@ -150,7 +146,6 @@ jobs:
- name: Display Compiler Version
run: |
${{ matrix.config.cc }} --version
${{ matrix.config.cxx }} --version
git log -3 --pretty=format:'%h %ad %s | %an'
if: always()

View File

@ -1,24 +1,25 @@
name: unittest
# autotools build on ubuntu and macos homebrew, unittests with address sanitizers.
# LSTMTrainerTest.DeterminismTest fails on Ubuntu 18.04 clang++-9 Issue #3258
# autotools build on ubuntu and macOS homebrew.
# unittests with address sanitizers.
# [ FAILED ] LSTMTrainerTest.DeterminismTest - clang version 9.0.0-2~ubuntu18.04.2
on:
#push:
schedule:
- cron: 0 19 * * *
jobs:
build:
sanitizers:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: false
matrix:
config:
- { name: ubuntu-18.04-gcc-unittest, os: ubuntu-18.04, cc: gcc, cxx: g++ }
- { name: ubuntu-20.04-gcc-unittest, os: ubuntu-20.04, cc: gcc, cxx: g++ }
- { name: ubuntu-20.04-clang-unittest, os: ubuntu-20.04, cc: clang, cxx: clang++ }
- { name: macos-10.15-gcc-unittest, os: macos-10.15, cc: gcc, cxx: g++ }
- { name: macos-10.15-clang-unittest, os: macos-10.15, cc: clang, cxx: clang++ }
- { name: macos-10.15-clang-unittest, os: macos-10.15, cxx: clang++ }
- { name: ubuntu-18.04-clang-8-unittest, os: ubuntu-18.04, cxx: clang++-8 }
- { name: ubuntu-18.04-gcc-unittest, os: ubuntu-18.04, cxx: g++ }
- { name: ubuntu-20.04-clang-10-unittest, os: ubuntu-20.04, cxx: clang++-10 }
- { name: ubuntu-20.04-gcc-unittest, os: ubuntu-20.04, cxx: g++ }
steps:
- uses: actions/checkout@v2
@ -46,7 +47,6 @@ jobs:
- name: Configure (Linux)
run: |
./configure '--disable-shared' \
'CC=${{ matrix.config.cc }}' \
'CXX=${{ matrix.config.cxx }}' \
'CXXFLAGS=-g -O2 -fsanitize=address,undefined'
if: runner.os == 'Linux'
@ -54,10 +54,9 @@ jobs:
- name: Configure (MacOS Homebrew)
run: |
./configure '--disable-shared' '--with-pic' \
'CC=${{ matrix.config.cc }}' \
'CXX=${{ matrix.config.cxx }}' \
'CXXFLAGS=-g -O2 -fsanitize=address,undefined' \
'PKG_CONFIG_PATH=/usr/local/opt/icu4c/lib/pkgconfig:/usr/local/opt/libarchive/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig'
"PKG_CONFIG_PATH=$(brew --prefix)/opt/icu4c/lib/pkgconfig:$(brew --prefix)/opt/libarchive/lib/pkgconfig:$(brew --prefix)/opt/libffi/lib/pkgconfig"
if: runner.os == 'macOS'
- name: Make and Install Tesseract