diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..dd90d58 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,25 @@ +name: libdivvun CI Build + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: dependencies + run: | + sudo apt-get -qy update + sudo apt-get -qfy install wget ca-certificates + wget -q https://apertium.projectjj.com/apt/install-nightly.sh -O - | sudo bash + sudo apt-get -qfy install --no-install-recommends autotools-dev gawk hfst-ospell-dev libarchive-dev libcg3-dev libhfst-dev libpugixml-dev libutfcpp-dev libxml2-utils pkg-config python3-dev python3-setuptools swig zip + - name: autoreconf + run: autoreconf -fvi + - name: configure + run: ./configure --enable-checker --enable-cgspell --enable-python-bindings + - name: build + run: make -j4 V=1 VERBOSE=1 + - name: tests + run: make test V=1 VERBOSE=1 + - name: make install + run: sudo make install diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 54c53eb..0000000 --- a/.travis.yml +++ /dev/null @@ -1,76 +0,0 @@ -language: cpp - -sudo: required -dist: focal - -addons: - apt: - packages: - - gcc-10 - - g++-10 - - g++ - - gcc - - libstdc++-10-dev - - libpugixml-dev - - libxml2-utils - - libarchive-dev - coverity_scan: - project: - name: $TRAVIS_REPO_SLUG - version: $TRAVIS_COMMIT - description: "Build submitted via Travis CI" - notification_email: unhammer+dill@mm.st - build_command_prepend: "./autogen.sh && ./configure --enable-checker --disable-python-bindings && make clean" - build_command: "make -j4" - branch_pattern: coverity_scan - -script: - # Unquoted because the .yml doesn't support arrays, but explicitly defined here at least - - scripts/travis-build ${CONFIGURE} - -before_install: - - if [[ $TRAVIS_BRANCH = coverity_scan ]]; then echo "We only coverity_scan for one square of the matrix, exiting"; exit 0; fi - -# We include some more configure options, but just for one square of the matrix so we don't overload poor travis: -matrix: - include: - - os: osx - compiler: clang - env: CONFIGURE="--enable-checker --enable-cgspell --enable-python-bindings" - osx_image: xcode12.2 - - os: osx - compiler: gcc - env: CONFIGURE="--enable-checker --enable-cgspell --enable-python-bindings" - osx_image: xcode12.2 - - os: linux - compiler: gcc - env: CONFIGURE="--enable-checker --enable-cgspell --enable-python-bindings" - - os: linux - compiler: clang - env: CONFIGURE="--enable-checker --disable-cgspell --enable-python-bindings" - - os: linux - compiler: clang - env: CONFIGURE="--enable-checker --disable-python-bindings" # gtweb-01 runs Centos7 which doesn't have python3 in normal repos - - os: linux - compiler: clang - env: CONFIGURE="--disable-checker --enable-cgspell" - - os: linux - compiler: clang - env: CONFIGURE="--disable-checker --disable-cgspell" - # This one should only run for coverity_scan (and be the only one that runs on coverity_scan): - - os: linux - compiler: clang - before_install: if [[ $TRAVIS_BRANCH = coverity_scan ]]; then echo "Running coverity_scan on this configuration …"; echo -n | openssl s_client -connect scan.coverity.com:443 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-certificates.crt; else exit 0; fi - env: COVERITY_SCAN=true - -cache: - directories: - - $HOME/gtd-cache - - $HOME/Library/Caches/Homebrew - -# Unfortunately installing g++ isn't enough, need to export CXX for it to find the compiler when gcc (why?) -env: - global: - # The next declaration is the encrypted COVERITY_SCAN_TOKEN, created - # via the "travis encrypt" command using the project repo's public key - - secure: "2lUcvNAdm5QO5m2r9eZQ6TAD8qiU8S0DzntXLUBPFtWmjD6atuptMr+6mVfgjG67eIfr05Q3v9jTpkb7JzSdqeB+foju6m/9iBtDXFRHfaED3OenWrI4ovFCRy+ClbT7rfHlwUYz/DKEAK8JEcDbqMG9hO4R9BTiPGJ7I0VuQxSeuSpVsxO+2CMqmEoLhtSs7+T929kn/fvVpvmHxYpmqswU1Hbjkb0SEYqmHlrNRWn/dFhYsm9EtRoBMX2NSC5MPGg+kadGZQQdhQJx8iODes+rVsLJs2sRVIcRy8te3R0Dn5FkCZUap+ntsGa1aGQufgaUCf4gwbGMAK0Ad6Wsyf/iuZmplKzr5U5MY4JI7Tmk0SzqndHYX9xL2CdtoHDxllK3UpgqNgUspkBdIwVdEol9jT2AtSngsl9MF5Z/u/yYgTaUyEEF8hNq7JLZR/EsrMcBhWi/ClV/7T2657h31AzMzP3eUxOW8XmX0Y25g/xicMvtGeE0t7ArGmCqFpM/417E3tmhZ2D/hInsprGetSwCuU7NJUhqPo61/+EnQ3njTFV4ooqwIS+93cx42yiueAldjgeAebpmKSxkbcO8Ayj5sVAAJQTCthDiCFVYvL3AT/VdS1NAB1HbLyku/tCxOmdKIlO5+MZqKlfr2nb0G57CLTt/3ac6Hb2WmgmgUNI="