diff --git a/create-export-package-metadata-pom.xml b/create-export-package-metadata-pom.xml new file mode 100644 index 0000000000..2cc5179512 --- /dev/null +++ b/create-export-package-metadata-pom.xml @@ -0,0 +1,44 @@ + + 4.0.0 + + net.java.dev.jna + create-export-package-metadata + 1.0.0 + bundle + + + UTF-8 + + + + ${sourceDirectory} + ${outputDirectory} + + + org.apache.felix + maven-bundle-plugin + 5.1.8 + true + + + ${exportedPackages} + ${importedPackages} + + + + + bundle-manifest + process-classes + + manifest + + + + + + + + diff --git a/create-export-package-metadata.sh b/create-export-package-metadata.sh new file mode 100644 index 0000000000..9fd6807ccb --- /dev/null +++ b/create-export-package-metadata.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env sh +set -e + +extract_export_package_value_for_buildxml() { + sed -z -E 's:\r?\n ::g' "$1" | grep '^Export-Package' | sed 's/^Export-Package: //' | sed 's/",/",\n/g' | sed 's/1\.0\.0/${osgi.version}/g' | sed 's/"/\"/g' +} + +rm -rf tmp +mkdir tmp +cp -r src tmp +mvn -f create-export-package-metadata-pom.xml clean package -DsourceDirectory=tmp/src -DoutputDirectory=tmp/target -DexportedPackages=com.sun.jna,com.sun.jna.ptr,com.sun.jna.win32 +cp -r contrib/platform/src tmp +mvn -f create-export-package-metadata-pom.xml clean package -DsourceDirectory=tmp/src -DoutputDirectory=tmp/target-platform -DexportedPackages=com.sun.jna.platform,com.sun.jna.platform.dnd,com.sun.jna.platform.linux,com.sun.jna.platform.mac,com.sun.jna.platform.unix,com.sun.jna.platform.unix.aix,com.sun.jna.platform.unix.solaris,com.sun.jna.platform.win32,com.sun.jna.platform.win32.COM,com.sun.jna.platform.win32.COM.tlb,com.sun.jna.platform.win32.COM.tlb.imp,com.sun.jna.platform.win32.COM.util,com.sun.jna.platform.win32.COM.util.annotation,com.sun.jna.platform.wince -DimportedPackages=com.sun.jna,com.sun.jna.ptr,com.sun.jna.win32 + +echo 'build.xml: Export-Package:' +echo +extract_export_package_value_for_buildxml tmp/target/META-INF/MANIFEST.MF +echo +echo + +echo 'contrib/platform/build.xml: Export-Package:' +echo +extract_export_package_value_for_buildxml tmp/target-platform/META-INF/MANIFEST.MF +echo +echo + +rm -r tmp