Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 30 additions & 68 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,147 +6,109 @@ jobs:
build-linux:
name: "Build - Linux"
runs-on: ubuntu-latest
container: wpilib/ubuntu-base:22.04
container: wpilib/ubuntu-base:24.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true

- name: Build
run: ./gradlew build

- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: Linux
path: build/allOutputs

build-linux-arm32:
name: "Build - Linux Arm32"
runs-on: ubuntu-latest
container: wpilib/raspbian-cross-ubuntu:bullseye-22.04
steps:
- uses: actions/checkout@v4
with:
submodules: true

- name: Build
run: ./gradlew build -Pforcecrossbuild=linux-arm32

- uses: actions/upload-artifact@v4
with:
name: Linux Arm32
path: build/allOutputs

build-linux-arm64:
name: "Build - Linux Arm64"
runs-on: ubuntu-latest
container: wpilib/aarch64-cross-ubuntu:bullseye-22.04
container: wpilib/aarch64-cross-ubuntu:2027-bookworm-24.04
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true

- name: Build
run: ./gradlew build -Pforcecrossbuild=linux-arm64

- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: Linux Arm64
path: build/allOutputs

build-linux-athena:
name: "Build - Linux Athena"
runs-on: ubuntu-latest
container: wpilib/roborio-cross-ubuntu:2024-22.04
steps:
- uses: actions/checkout@v4
with:
submodules: true

- name: Build
run: ./gradlew build -Pforcecrossbuild=linux-athena

- uses: actions/upload-artifact@v4
with:
name: Linux Athena
path: build/allOutputs

build-windows:
strategy:
fail-fast: false
matrix:
include:
- artifact-name: Win64
architecture: x64
vc: vcvars64.bat
- artifact-name: Win32
architecture: x86
vc: vcvars32.bat
vc: amd64
- artifact-name: WinArm64
architecture: x64
vc: vcvarsamd64_arm64.bat
vc: amd64_arm64
build-options: "-Pforcecrossbuild=windows-arm64"
name: "Build - ${{ matrix.artifact-name }}"
runs-on: windows-2019
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true

- uses: actions/setup-java@v4
- uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'zulu'
architecture: ${{ matrix.architecture }}
java-version: 25
distribution: 'temurin'

- uses: ilammy/setup-nasm@v1

- uses: ilammy/msvc-dev-cmd@v1.13.0
with:
arch: ${{ matrix.vc }}

- name: Build with Gradle
run: |
@call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Enterprise\\VC\\Auxiliary\\Build\\${{ matrix.vc }}"
gradlew build ${{ matrix.build-options }}
run: gradlew build ${{ matrix.build-options }}
shell: cmd

- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: ${{ matrix.artifact-name }}
path: build/allOutputs

build-macos:
env:
MACOSX_DEPLOYMENT_TARGET: 10.14
MACOSX_DEPLOYMENT_TARGET: 11
name: "Build - macOS"
runs-on: macos-13
runs-on: macos-15
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
submodules: true

- name: Build
run: ./gradlew build

- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: macOS
path: build/allOutputs

combine:
name: Combine
needs: [ build-linux, build-windows, build-macos, build-linux-athena, build-linux-arm32, build-linux-arm64 ]
needs: [ build-linux, build-windows, build-macos, build-linux-arm64 ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
repository: wpilibsuite/build-tools
- uses: actions/download-artifact@v4
- uses: actions/download-artifact@v8
with:
path: combiner/products/build/allOutputs
- name: Flatten Artifacts
run: rsync -a --delete combiner/products/build/allOutputs/*/* combiner/products/build/allOutputs/
- uses: actions/setup-java@v4
- uses: actions/setup-java@v5
with:
java-version: 11
distribution: 'zulu'
java-version: 25
distribution: 'temurin'
- name: Combine
if: |
!startsWith(github.ref, 'refs/tags/v')
Expand All @@ -163,7 +125,7 @@ jobs:
RUN_AZURE_ARTIFACTORY_RELEASE: 'TRUE'
ARTIFACTORY_PUBLISH_USERNAME: ${{ secrets.ARTIFACTORY_USERNAME }}
ARTIFACTORY_PUBLISH_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }}
- uses: actions/upload-artifact@v4
- uses: actions/upload-artifact@v7
with:
name: Maven
path: ~/releases
18 changes: 4 additions & 14 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ import org.gradle.internal.os.OperatingSystem

plugins {
id "maven-publish"
id "de.undercouch.download" version "5.4.0"
id "de.undercouch.download" version "5.6.0"
}

// Project Version
ext.pub_version = "0.105-1"
ext.pub_version = "2027-0.120-1"

static def get_platform() {
def platform
Expand All @@ -15,8 +15,6 @@ static def get_platform() {

if (os_arch == 'amd64') {
os_arch = 'x86_64'
} else if (os_arch == 'i386') {
os_arch = 'x86'
} else if (os_arch == 'aarch64' || os_arch == 'arm64') {
os_arch = 'arm64'
}
Expand All @@ -35,20 +33,12 @@ static def get_platform() {
}

static def get_platform_path(platform) {
if (platform == "linux-athena") {
return "linux/athena"
} else if (platform == "linux-arm32") {
return "linux/arm32"
} else if (platform == "linux-arm64") {
if (platform == "linux-arm64") {
return "linux/arm64"
} else if (platform == "linux-x86") {
return "linux/x86"
} else if (platform == "linux-x86_64") {
return "linux/x86-64"
} else if (platform == "osx-universal") {
return "osx/universal"
} else if (platform == "windows-x86") {
return "windows/x86"
} else if (platform == "windows-x86_64") {
return "windows/x86-64"
} else if (platform == "windows-arm64") {
Expand Down Expand Up @@ -116,5 +106,5 @@ task build {
apply from: "publish.gradle"

wrapper {
gradleVersion = '8.5'
gradleVersion = '9.4.1'
}
5 changes: 0 additions & 5 deletions cmake/aarch64-bullseye-gnu.toolchain.cmake

This file was deleted.

4 changes: 0 additions & 4 deletions cmake/arm-frc-gnueabi.toolchain.cmake

This file was deleted.

98 changes: 0 additions & 98 deletions cmake/arm-pi-gnueabihf.toolchain.cmake

This file was deleted.

Loading