Skip to content

Fix Tycho build for native fragments and make multi-platform plugins buildable#14

Merged
strimo378 merged 2 commits intomainfrom
codex/fix-mvn-build
Jan 21, 2026
Merged

Fix Tycho build for native fragments and make multi-platform plugins buildable#14
strimo378 merged 2 commits intomainfrom
codex/fix-mvn-build

Conversation

@strimo378
Copy link
Copy Markdown
Collaborator

Motivation

  • The Tycho/Tycho+Maven build failed because native fragment bundles were packaged as plain OSGi bundles without proper Eclipse/Tycho packaging, lacked OSGi metadata and native artifacts, and Tycho validation rejected cross-platform native entries.
  • Make the reactor build reproducible in CI and allow the feature/p2 assembly to resolve by producing proper Eclipse plugin artifacts and shipping placeholder native libs until real native binaries are built.

Description

  • Converted bundle modules to Tycho eclipse-plugin packaging for com.emmtrix.isl.core, com.emmtrix.isl.jni, and all com.emmtrix.isl.native.* fragments and added minimal OSGi manifests and build.properties so Tycho can package them.
  • Added placeholder native artifacts under each fragment at src/main/resources/native/<os>/<arch>/ (isl_wrapper.dll, libisl_wrapper.so, libisl_wrapper.dylib) to satisfy Bundle-NativeCode requirements until real CMake-built binaries are produced.
  • Prevented Tycho classpath/native validation from failing fragments on non-matching hosts by disabling the default validate-classpath execution for the native fragment modules via a tycho-compiler-plugin execution override.
  • Enabled reactor dependency wrapping for the Tycho target platform by adding target-platform-configuration with <pomDependencies>wrapAsBundle</pomDependencies> to the parent pom.xml so reactor modules can be resolved by the feature build.

Testing

  • Ran a full Tycho/Maven build with mvn -V -B -DskipTests=false clean verify, and the reactor build completed successfully (the JUnit/Tycho test modules ran during the build).
  • The included smoke and end-to-end tests executed as part of the build (tests/java, tests/osgi-smoke, tests/p2-e2e) and reported passing in the build output.
  • The Tycho feature and update-site packaging steps completed and produced the p2 ZIP artifact in releng/com.emmtrix.isl.site/target during the successful run.

Codex Task

@strimo378 strimo378 merged commit 7fa8527 into main Jan 21, 2026
@strimo378 strimo378 deleted the codex/fix-mvn-build branch January 21, 2026 10:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant