From ed9b44a95c7e40725168d30fa217745d33e32577 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Tue, 9 Jun 2026 21:59:47 -0500 Subject: [PATCH 01/11] Cleanup and use jnr-parent pom --- pom.xml | 75 +++++++++++++++------------------------------------------ 1 file changed, 19 insertions(+), 56 deletions(-) diff --git a/pom.xml b/pom.xml index 7e13807b..ffad85c6 100644 --- a/pom.xml +++ b/pom.xml @@ -1,6 +1,13 @@ 4.0.0 - com.github.jnr + + + com.github.jnr + jnr-parent + 0.0.1-SNAPSHOT + ../pom.xml + + jffi jar 1.3.16-SNAPSHOT @@ -125,49 +132,8 @@ release - - maven-source-plugin - - - attach-sources - - jar-no-fork - - - - - - maven-javadoc-plugin - - - attach-javadocs - - jar - - - - - none - - maven-gpg-plugin - 3.2.4 - - - sign-artifacts - verify - - sign - - - - - - --pinentry-mode - loopback - - @@ -182,12 +148,18 @@ org.apache.maven.plugins maven-compiler-plugin - 3.8.1 - - true - true - + + maven-source-plugin + + + maven-javadoc-plugin + + + org.sonatype.central + central-publishing-maven-plugin + + org.apache.maven.plugins maven-jar-plugin @@ -385,15 +357,6 @@ - - org.sonatype.central - central-publishing-maven-plugin - 0.7.0 - true - - central - - From 6e6de8499bfc198c0782f8a4f1f85e2ab16bf537 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Wed, 17 Jun 2026 17:58:41 +0200 Subject: [PATCH 02/11] Remove relative path to parent and bundle plugin version --- pom.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/pom.xml b/pom.xml index ffad85c6..11a26c07 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,6 @@ com.github.jnr jnr-parent 0.0.1-SNAPSHOT - ../pom.xml jffi @@ -180,7 +179,6 @@ org.apache.felix maven-bundle-plugin - 2.4.0 false From 75d547b10ce23059bfe00e094ec2683a9030470d Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Wed, 17 Jun 2026 18:09:43 +0200 Subject: [PATCH 03/11] Use snapshot repository This is necessary to pick up the parent pom between releases. --- pom.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pom.xml b/pom.xml index 11a26c07..d42e63a6 100644 --- a/pom.xml +++ b/pom.xml @@ -41,6 +41,20 @@ + + + Central Portal Snapshots + central-portal-snapshots + https://central.sonatype.com/repository/maven-snapshots/ + + false + + + true + + + + junit From 2bfcfab7967f6250cf8f7f81b1898790842a2e2b Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Wed, 17 Jun 2026 18:13:23 +0200 Subject: [PATCH 04/11] Build with 17 but test with specified version --- .github/workflows/ci.yml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9b810880..ca09f0c5 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,11 +17,15 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Set up JDK ${{ matrix.java-version }} + - name: Set up JDK 17 for build uses: actions/setup-java@v1.4.3 with: - java-version: ${{ matrix.java-version }} + java-version: 17 - name: Build run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V + - name: Set up JDK ${{ matrix.java-version }} for test + uses: actions/setup-java@v1.4.3 + with: + java-version: ${{ matrix.java-version }} - name: Test run: ant test From 0837c6d4790f1ace62eab05a6a02df4cadf65f20 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Thu, 18 Jun 2026 15:25:03 +0200 Subject: [PATCH 05/11] Compensate for java9 profile in parent setting release=8 The parent config for compiler plugin on Java 9+ sets release=8, but we want to leave it unset for the compile to access Unsafe appropriate to the current JDK level. --- pom.xml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index d42e63a6..4e3af012 100644 --- a/pom.xml +++ b/pom.xml @@ -68,8 +68,6 @@ true true UTF-8 - 8 - 8 make @@ -123,7 +121,7 @@ - ${maven.compiler.target} + 8 **/*.java @@ -140,6 +138,9 @@ [9,) + + ${java.specification.version} + release From 45269c3f87753b667c379383972e504191de1ec9 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Sun, 21 Jun 2026 10:14:55 +0200 Subject: [PATCH 06/11] Update for toolchain and parent defaults --- pom.xml | 125 ++++++++++++-------------------------------------------- 1 file changed, 25 insertions(+), 100 deletions(-) diff --git a/pom.xml b/pom.xml index 4e3af012..e4aabb0e 100644 --- a/pom.xml +++ b/pom.xml @@ -67,7 +67,6 @@ true true - UTF-8 make @@ -96,88 +95,41 @@ gmake - - java9 - - - - org.apache.maven.plugins - maven-compiler-plugin - - - - default-compile - compile - - - com/kenai/jffi/UnsafeMemoryIO.java - - - - - java9-compile - compile - compile - - - - 8 - - - **/*.java - - - com/kenai/jffi/UnsafeMemoryIO.java - - - - - - - - - [9,) - - - ${java.specification.version} - - - - release - - - - maven-gpg-plugin - - - - - true - - - org.apache.maven.plugins maven-compiler-plugin + + + + default-compile + + + 8 + + + com/kenai/jffi/UnsafeMemoryIO.java + + + + + java9-compile + compile + compile + + + com/kenai/jffi/UnsafeMemoryIO.java + + + + - - maven-source-plugin - - - maven-javadoc-plugin - - - org.sonatype.central - central-publishing-maven-plugin - - org.apache.maven.plugins maven-jar-plugin - 3.2.0 default-jar @@ -237,33 +189,6 @@ - org.codehaus.mojo build-helper-maven-plugin From 86a17749ce763d78d64265fb7bfbbef06f2b72ee Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Sun, 21 Jun 2026 10:18:45 +0200 Subject: [PATCH 07/11] Disable fail-fast --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ca09f0c5..c6245d79 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,6 +12,7 @@ jobs: strategy: matrix: java-version: ['8', '11', '17', '21', '25'] + fail-fast: false runs-on: ubuntu-latest From 2a8b56a4b281a5660da0df692d693915138f80e0 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Sun, 21 Jun 2026 10:23:04 +0200 Subject: [PATCH 08/11] Tweaks for toolchain use in jffi jffi still runs tests via ant so we need to set up the test JDK separately. --- .github/workflows/ci.yml | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c6245d79..05bc841b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,26 +7,32 @@ on: branches: [ master ] jobs: - test: + + mvn-test-x86: + + runs-on: ${{ matrix.os }} strategy: matrix: - java-version: ['8', '11', '17', '21', '25'] + os: [ubuntu-latest, macos-latest] + java-test-version: ['8', '11', '17', '21', '25'] fail-fast: false - runs-on: ubuntu-latest - steps: - uses: actions/checkout@v2 - name: Set up JDK 17 for build - uses: actions/setup-java@v1.4.3 + uses: actions/setup-java@v5 with: - java-version: 17 + distribution: 'zulu' + java-version: | + 8 + 17 - name: Build run: mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V - - name: Set up JDK ${{ matrix.java-version }} for test - uses: actions/setup-java@v1.4.3 + - name: Set up JDK ${{ matrix.java-test-version }} for test + uses: actions/setup-java@v5 with: - java-version: ${{ matrix.java-version }} + distribution: 'zulu' + java-version: ${{ matrix.java-test-version }} - name: Test run: ant test From 5c1077eaa89b7096a8c882236249eb286e379490 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Sun, 21 Jun 2026 10:31:32 +0200 Subject: [PATCH 09/11] Install prerequisites to compile tests on macOS --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 05bc841b..ea27c420 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -34,5 +34,8 @@ jobs: with: distribution: 'zulu' java-version: ${{ matrix.java-test-version }} + - name: Install dependencies on macOS + if: matrix.os == 'macos-latest' + run: brew install texinfo automake autoconf - name: Test run: ant test From f761f8dd494b54dcd0bfd4ebc6d0a9cf3f97ff51 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Sun, 21 Jun 2026 11:06:31 +0200 Subject: [PATCH 10/11] Update to release version of parent --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e4aabb0e..a032b9cb 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.github.jnr jnr-parent - 0.0.1-SNAPSHOT + 0.0.1 jffi From ea18e4800785d586133fbe08a6e159bcd9075050 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Sun, 21 Jun 2026 11:17:27 +0200 Subject: [PATCH 11/11] Remove snapshot repository inherited from parent --- pom.xml | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/pom.xml b/pom.xml index a032b9cb..fcf44f00 100644 --- a/pom.xml +++ b/pom.xml @@ -41,20 +41,6 @@ - - - Central Portal Snapshots - central-portal-snapshots - https://central.sonatype.com/repository/maven-snapshots/ - - false - - - true - - - - junit