name: CI Build on: [ push, pull_request ] jobs: build-java: strategy: matrix: os: [ubuntu-latest, macos-latest] name: Build Java [${{ matrix.os }}] runs-on: ${{ matrix.os }} steps: - name: Checkout repository uses: actions/checkout@v2 - name: Set up Java 8 uses: actions/setup-java@v1 with: java-version: 8 - name: Build uses: eskatos/gradle-command-action@v1 with: arguments: build build-natives: strategy: matrix: os: [ubuntu-latest, macos-latest] type: [win32, win64, linux32, linux64, mac64] include: - os: ubuntu-latest type: win32 expected: imgui-binding/build/libsNative/windows32/imgui-java.dll - os: ubuntu-latest type: win64 expected: imgui-binding/build/libsNative/windows64/imgui-java64.dll - os: ubuntu-latest type: linux32 expected: imgui-binding/build/libsNative/linux32/libimgui-java.so - os: ubuntu-latest type: linux64 expected: imgui-binding/build/libsNative/linux64/libimgui-java64.so - os: macos-latest type: mac64 expected: imgui-binding/build/libsNative/macosx64/libimgui-java64.dylib exclude: - os: ubuntu-latest type: mac64 - os: macos-latest type: win32 - os: macos-latest type: win64 - os: macos-latest type: linux32 - os: macos-latest type: linux64 name: Build Natives [${{ matrix.os }}]-[${{ matrix.type }}] runs-on: ${{ matrix.os }} steps: - name: Checkout repository and submodules uses: actions/checkout@v2 with: submodules: recursive - name: Set up Java 8 uses: actions/setup-java@v1 with: java-version: 8 - name: Ant Version run: ant -version - if: matrix.os == 'ubuntu-latest' name: Install MinGW-w64/GCC/G++ run: sudo apt-get install mingw-w64 gcc-multilib g++-multilib - name: Build [${{ matrix.type }}] uses: eskatos/gradle-command-action@v1 with: arguments: :imgui-binding:generateLibs -Denvs=${{ matrix.type }} -Dlocal - name: Check [${{ matrix.expected }}] uses: andstor/file-existence-action@v1 with: files: ${{ matrix.expected }}