mirror of
https://github.com/google/flatbuffers.git
synced 2026-07-01 03:31:37 +00:00
Attempt at adding Github Actions CI
This commit is contained in:
88
.github/workflows/build.yml
vendored
Normal file
88
.github/workflows/build.yml
vendored
Normal file
@@ -0,0 +1,88 @@
|
|||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-linux:
|
||||||
|
name: Build Linux
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
cxx: [g++-9, clang++-9]
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v1
|
||||||
|
- name: cmake
|
||||||
|
run: CXX=${{ matrix.cxx }} cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release .
|
||||||
|
- name: build
|
||||||
|
run: make -j4
|
||||||
|
- name: test
|
||||||
|
run: ./flattests
|
||||||
|
- name: upload build artifacts
|
||||||
|
uses: actions/upload-artifact@v1
|
||||||
|
with:
|
||||||
|
name: Linux flatc binary ${{ matrix.cxx }}
|
||||||
|
path: flatc
|
||||||
|
|
||||||
|
build-windows:
|
||||||
|
name: Build Windows
|
||||||
|
runs-on: windows-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v1
|
||||||
|
- name: Add msbuild to PATH
|
||||||
|
uses: microsoft/setup-msbuild@v1.0.0
|
||||||
|
- name: cmake
|
||||||
|
run: cmake -G "Visual Studio 16 2019" -A x64 -DCMAKE_BUILD_TYPE=Release .
|
||||||
|
- name: build
|
||||||
|
run: msbuild.exe FlatBuffers.sln /p:Configuration=Release /p:Platform=x64
|
||||||
|
- name: test
|
||||||
|
run: Release\flattests.exe
|
||||||
|
- name: upload build artifacts
|
||||||
|
uses: actions/upload-artifact@v1
|
||||||
|
with:
|
||||||
|
name: Windows flatc binary
|
||||||
|
path: Release\flatc.exe
|
||||||
|
|
||||||
|
build-mac:
|
||||||
|
name: Build Mac
|
||||||
|
runs-on: macos-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v1
|
||||||
|
- name: cmake
|
||||||
|
run: cmake -G "Xcode" -DCMAKE_BUILD_TYPE=Release .
|
||||||
|
- name: build
|
||||||
|
run: xcodebuild -toolchain clang -configuration Release -target flattests
|
||||||
|
- name: test
|
||||||
|
run: Release/flattests
|
||||||
|
- name: upload build artifacts
|
||||||
|
uses: actions/upload-artifact@v1
|
||||||
|
with:
|
||||||
|
name: Mac flatc binary
|
||||||
|
path: Release/flatc
|
||||||
|
|
||||||
|
|
||||||
|
# FIXME: to make this work, this apparently needs:
|
||||||
|
# - a newer version of gradle in build.gradle (e.g. 3.2.1)
|
||||||
|
# - google() in the repos in build.gradle
|
||||||
|
# - gradle version 4.6 in gradle-wrapper.properties ?
|
||||||
|
# - some kind of flavor declaration?
|
||||||
|
# All while not breaking the existing Travis Android build.
|
||||||
|
# good luck.
|
||||||
|
|
||||||
|
# build-android:
|
||||||
|
# name: Build Android (on Linux)
|
||||||
|
# runs-on: ubuntu-latest
|
||||||
|
# steps:
|
||||||
|
# - uses: actions/checkout@v1
|
||||||
|
# - name: set up JDK 1.8
|
||||||
|
# uses: actions/setup-java@v1
|
||||||
|
# with:
|
||||||
|
# java-version: 1.8
|
||||||
|
# - name: build
|
||||||
|
# working-directory: android
|
||||||
|
# run: bash ./gradlew buildDebug
|
||||||
Reference in New Issue
Block a user