Avoid getBytes("UTF-8") callback, proper float support (#31) #190
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| name: Build and Test | |
| on: | |
| push: | |
| branches: | |
| - dev | |
| - main | |
| pull_request: | |
| branches: | |
| - dev | |
| - main | |
| jobs: | |
| macos-build: | |
| runs-on: macos-latest | |
| strategy: | |
| matrix: | |
| jarch: [aarch64, x86_64] | |
| java: ['8', '11', '15', '17', '20', '25'] | |
| include: | |
| - jarch: aarch64 | |
| javaarch: arm64 | |
| - jarch: x86_64 | |
| javaarch: x64 | |
| steps: | |
| - name: Set up Doxygen | |
| run: brew install doxygen | |
| - uses: actions/checkout@v6 | |
| - name: Set up Java | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: ${{ matrix.java }} | |
| architecture: ${{ matrix.javaarch }} | |
| distribution: zulu | |
| cache: maven | |
| - name: Build/test code with Maven | |
| run: | | |
| mvn --activate-profiles ffsampledsp-${{ matrix.jarch }}-macos \ | |
| --no-transfer-progress \ | |
| --batch-mode \ | |
| --file pom.xml \ | |
| install | |
| - name: Upload CodeCov Report | |
| uses: codecov/codecov-action@v2 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| if: matrix.os == 'macos-15' && matrix.java == '9' && matrix.jarch == 'x86_64' | |
| - name: Build tagtraum site | |
| run: | | |
| mvn --no-transfer-progress \ | |
| --batch-mode \ | |
| --activate-profiles ffsampledsp-aarch64-macos \ | |
| --file pom.xml \ | |
| clean install site:site | |
| if: matrix.os == 'macos-latest' && matrix.java == '9' && matrix.jarch == 'x86_64' | |
| windows-build: | |
| runs-on: windows-latest | |
| strategy: | |
| matrix: | |
| arch: [x64, x86] | |
| java: ['8', '11', '15', '17', '25'] | |
| include: | |
| - arch: x64 | |
| jarch: x86_64 | |
| sys: mingw64 | |
| env: x86_64 | |
| - arch: x86 | |
| jarch: i386 | |
| sys: mingw32 | |
| env: i686 | |
| exclude: | |
| - arch: x86 | |
| java: '15' | |
| - arch: x86 | |
| java: '17' | |
| - arch: x86 | |
| java: '25' | |
| defaults: | |
| run: | |
| shell: "msys2 {0}" | |
| steps: | |
| - uses: msys2/setup-msys2@v2 | |
| with: | |
| msystem: ${{ matrix.sys }} | |
| install: mingw-w64-${{ matrix.env }}-toolchain | |
| path-type: inherit | |
| - uses: actions/checkout@v6 | |
| - name: Set up Doxygen | |
| run: pacman --noconfirm -S mingw-w64-${{ matrix.env }}-doxygen | |
| - name: Set up Java | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: ${{ matrix.java }} | |
| architecture: ${{ matrix.arch }} | |
| distribution: zulu | |
| cache: maven | |
| - name: Build/test code with Maven | |
| run: | | |
| mvn --activate-profiles ffsampledsp-${{ matrix.jarch }}-win \ | |
| --no-transfer-progress \ | |
| --batch-mode \ | |
| --file pom.xml \ | |
| install | |
| - name: Print lib/include dir | |
| if: always() | |
| run: | | |
| ls -la ffsampledsp-${{ matrix.jarch }}-win\\target\\lib | |
| ls -la ffsampledsp-${{ matrix.jarch }}-win\\target\\native\\include | |
| linux-build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| java: ['8', '11', '15', '17', '20', '25'] | |
| arch: [x64] | |
| include: | |
| - arch: x64 | |
| jarch: x86_64 | |
| skiptests: "false" | |
| steps: | |
| - name: Set up Doxygen and native build dependencies | |
| run: sudo apt-get install -y doxygen libbz2-dev zlib1g-dev | |
| - uses: actions/checkout@v6 | |
| - name: Set up Java | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: ${{ matrix.java }} | |
| distribution: zulu | |
| cache: maven | |
| - name: Build/test code with Maven | |
| run: | | |
| mvn --activate-profiles ffsampledsp-${{ matrix.jarch }}-linux \ | |
| --no-transfer-progress \ | |
| --batch-mode \ | |
| --file pom.xml \ | |
| install \ | |
| -Dmaven.test.skip=${{ matrix.skiptests }} | |
| - name: Print lib dir | |
| if: always() | |
| run: ls -la ffsampledsp-${{ matrix.jarch }}-linux/target/lib | |
| linux-arm-build: | |
| runs-on: ubuntu-24.04-arm | |
| strategy: | |
| matrix: | |
| java: ['8', '11', '15', '17', '20', '25'] | |
| steps: | |
| - name: Set up Doxygen and native build dependencies | |
| run: sudo apt-get install -y doxygen libbz2-dev zlib1g-dev | |
| - uses: actions/checkout@v6 | |
| - name: Set up Java | |
| uses: actions/setup-java@v5 | |
| with: | |
| java-version: ${{ matrix.java }} | |
| architecture: arm64 | |
| distribution: zulu | |
| cache: maven | |
| - name: Verify Java setup | |
| run: | | |
| echo "JAVA_HOME: $JAVA_HOME" | |
| ls -la "$JAVA_HOME/bin/java" | |
| java -version | |
| which java | |
| gcc --version | |
| - name: Build/test code with Maven | |
| run: | | |
| mvn --activate-profiles ffsampledsp-aarch64-linux \ | |
| --no-transfer-progress \ | |
| --batch-mode \ | |
| --file pom.xml \ | |
| install | |
| - name: Print lib dir | |
| if: always() | |
| run: >- | |
| ls -la ffsampledsp-aarch64-linux/target/lib || | |
| echo "ff_idctdsp_init_aarch64 count:" || | |
| nm ffsampledsp-aarch64-linux/target/lib/libavcodec.so | grep -c ff_idctdsp_init_aarch64 |