summaryrefslogtreecommitdiffhomepage
path: root/.github
diff options
context:
space:
mode:
authorTakeshi Watanabe <[email protected]>2019-12-14 00:39:54 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2020-05-24 22:34:28 +0900
commit4ce3997ca4821394ed9ce572daace59383a62b41 (patch)
tree4e88e8d922d43bc7ce3fedaa500f803bc5b652f2 /.github
parent93e78fcde1d4b9b7e9e7d86eeace95df0907aa0e (diff)
downloadmruby-4ce3997ca4821394ed9ce572daace59383a62b41.tar.gz
mruby-4ce3997ca4821394ed9ce572daace59383a62b41.zip
Start GitHub Actions; close #4903
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/build.yml108
1 files changed, 108 insertions, 0 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 000000000..d743d4ffb
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,108 @@
+name: Build & Test
+
+on: [push, pull_request]
+
+jobs:
+ Ubuntu-1604:
+ runs-on: ubuntu-16.04
+ steps:
+ - uses: actions/checkout@v1
+ - name: apt
+ run: sudo apt install ruby gperf bison
+ - name: build and test
+ run: rake -m -j4 all test
+ env:
+ MRUBY_CONFIG: travis_config.rb
+
+ Ubuntu-1804-gcc:
+ runs-on: ubuntu-18.04
+ steps:
+ - uses: actions/checkout@v1
+ - name: apt
+ run: sudo apt install ruby gperf bison gcc g++
+ - name: build and test
+ run: rake -m -j4 all test
+ env:
+ MRUBY_CONFIG: travis_config.rb
+ CC: gcc
+ CXX: g++
+
+ Ubuntu-1804-clang:
+ runs-on: ubuntu-18.04
+ steps:
+ - uses: actions/checkout@v1
+ - name: apt
+ run: sudo apt install ruby gperf bison
+ - name: build and test
+ run: rake -m -j4 all test
+ env:
+ MRUBY_CONFIG: travis_config.rb
+ CC: clang
+ CXX: clang++
+
+ macOS:
+ runs-on: macos-latest
+ steps:
+ - uses: actions/checkout@v1
+ - name: brew
+ run: brew install ruby gperf bison
+ - name: build and test
+ run: rake -m -j4 all test
+ env:
+ MRUBY_CONFIG: travis_config.rb
+
+ Windows-MinGW:
+ runs-on: windows-latest
+ steps:
+ - uses: actions/checkout@v1
+ - name: chocolatey
+ run: choco install -y ruby winflexbison gperf
+ - name: build and test
+ run: rake -E '$stdout.sync=true' -j4 test
+ env:
+ MRUBY_CONFIG: travis_config.rb
+ YACC: win_bison
+ CFLAGS: -g -O1 -Wall -Wundef
+
+ Windows-Cygwin:
+ runs-on: windows-latest
+ steps:
+ - uses: actions/checkout@v1
+ - uses: actions/cache@v1
+ with:
+ path: C:\Users\runneradmin\AppData\Local\Temp\chocolatey
+ key: ${{ runner.os }}-cygwin-chocolatey-${{ matrix.os }}-${{ github.sha }}
+ restore-keys: |
+ ${{ runner.os }}-cygwin-chocolatey-${{ matrix.os }}-
+ ${{ runner.os }}-cygwin-chocolatey-
+ - name: chocolatey
+ run: choco install -y cygwin
+ - name: Install cygwin packages
+ shell: cmd
+ run: C:\tools\cygwin\cygwinsetup.exe -qgnNdO -R C:/tools/cygwin -l C:/tools/cygwin/package -s http://mirrors.kernel.org/sourceware/cygwin/ -P gcc-core,gcc-g++,bison,make,gperf,ruby
+ - name: Set ENV
+ run: |
+ echo '::set-env name=PATH::C:\tools\cygwin\bin;C:\tools\cygwin\usr\bin'
+ - name: build and test
+ shell: cmd
+ run: C:\tools\cygwin\bin\ruby.exe /usr/bin/rake -m -j4 -v -E 'STDOUT.sync=true' test
+ env:
+ MRUBY_CONFIG: travis_config.rb
+
+ Windows-VC:
+ runs-on: windows-latest
+ steps:
+ - uses: actions/checkout@v1
+ - name: chocolatey
+ run: choco install -y ruby winflexbison gperf
+ - name: build and test
+ shell: cmd
+ run: |
+ call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
+ rake -E "STDOUT.sync=true" -m -j4 -v test
+ env:
+ MRUBY_CONFIG: appveyor_config.rb
+ YACC: win_bison
+ # TODO(take-cheeze): Re-enable /O2
+ CFLAGS: "/c /nologo /W3 /we4013 /Zi /MD /D_CRT_SECURE_NO_WARNINGS"
+ CXXFLAGS: "/c /nologo /W3 /Zi /MD /EHs /D_CRT_SECURE_NO_WARNINGS"