diff --git a/.appveyor.yml b/.appveyor.yml index a82710c2..b10afe49 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -5,6 +5,7 @@ os: Visual Studio 2015 branches: except: + - /^github.*/ - /^gitlab.*/ - /^travis.*/ diff --git a/.github/travis_init.sh b/.github/travis_init.sh index 1b60d282..b6a5e34c 100644 --- a/.github/travis_init.sh +++ b/.github/travis_init.sh @@ -147,12 +147,16 @@ if [[ -z $BM_CROSS ]]; then v=${BM_C:6:3}; CC="clang-$v"; CXX="clang++-$v"; SCAN_BUILD="scan-build-$v" ;; clang-[789]-m??) v=${BM_C:6:1}; CC="clang-$v"; CXX="clang++-$v"; SCAN_BUILD="scan-build-$v" ;; + clang-1[0-9]-m??) + v=${BM_C:6:2}; CC="clang-$v"; CXX="clang++-$v"; SCAN_BUILD="scan-build-$v" ;; gcc | gcc-m?? | gcc-mx32) CC="gcc"; CXX="g++" ;; # standard system compiler gcc-[34].[0-9]-m?? | gcc-[34].[0-9]-mx32) v=${BM_C:4:3}; CC="gcc-$v"; CXX="g++-$v" ;; gcc-[56789]-m?? | gcc-[56789]-mx32) v=${BM_C:4:1}; CC="gcc-$v"; CXX="g++-$v" ;; + gcc-1[0-9]-m?? | gcc-1[0-9]-mx32) + v=${BM_C:4:2}; CC="gcc-$v"; CXX="g++-$v" ;; esac fi fi @@ -188,7 +192,7 @@ mkbuilddirs() { # search for an existing $toptop_builddir if [[ -z $toptop_builddir ]]; then for d in . ..; do - for subdir in "local" appveyor circle gitlab travis .; do + for subdir in "local" appveyor circle github gitlab travis .; do dd=$d/build/$subdir if [[ -d $dd ]]; then toptop_builddir=$(readlink -en -- "$dd") diff --git a/.github/workflows/ci-build-linux.yml b/.github/workflows/ci-build-linux.yml new file mode 100644 index 00000000..257b14ce --- /dev/null +++ b/.github/workflows/ci-build-linux.yml @@ -0,0 +1,63 @@ +# Support for GitHub Actions -- https://github.com/features/actions +# Copyright (C) Markus Franz Xaver Johannes Oberhumer + +name: GitHub CI + +on: + push: + branches: + - '*' + - '!appveyor*' + - '!gitlab*' + - '!travis*' + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# A workflow run is made up of one or more jobs that can run sequentially or in parallel +jobs: + # This workflow contains a single job called "build" + build: + + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + include: + - { os: ubuntu-20.04, C: clang-10-m64 } + - { os: ubuntu-20.04, C: gcc-10-m64 } + #- { os: ubuntu-20.04, X: rebuild-stubs } + + # Steps represent a sequence of tasks that will be executed as part of the job + steps: + #if: contains(matrix.os, 'ubuntu') + + # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + - uses: actions/checkout@v2 + with: { submodules: true } + + - name: 'Step: prepare sources' + run: | + export C=${{matrix.C}} B=${{matrix.B}} T=${{matrix.T}} X=${{matrix.X}} TRAVIS_OS_NAME=linux + uname -a; pwd; id; umask + #cat /etc/os-release || true + #env + cd ..; mkdir -p deps build/github; cd deps + wget -q -O - https://github.com/upx/upx/releases/download/v3.00/ucl-1.03.tar.xz | tar -xJ + wget -q -O - https://github.com/upx/upx/releases/download/v3.00/zlib-1.2.8.tar.xz | tar -xJ + git clone https://github.com/upx/upx-testsuite + if [[ $X =~ (^|\+)rebuild-stubs($|\+) ]]; then + wget -q -O - https://github.com/upx/upx-stubtools/releases/download/v20160918/bin-upx-20160918.tar.xz | tar -xJ + fi + + - name: 'Step: build' + run: | + export C=${{matrix.C}} B=${{matrix.B}} T=${{matrix.T}} X=${{matrix.X}} TRAVIS_OS_NAME=linux + bash ./.github/travis_build.sh + + - name: 'Step: run testsuite' + run: | + export C=${{matrix.C}} B=${{matrix.B}} T=${{matrix.T}} X=${{matrix.X}} TRAVIS_OS_NAME=linux + bash ./.github/travis_testsuite_1.sh + +# vim:set ts=2 sw=2 et: diff --git a/.travis.yml b/.travis.yml index 08bc96b8..3473d48c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,7 @@ notifications: { email: { on_success: never, on_failure: change } } branches: except: - /^appveyor.*/ + - /^github.*/ - /^gitlab.*/ # Ubuntu 12.04 LTS "Precise"