From: Mathieu Baudier Date: Fri, 8 Jul 2022 13:28:34 +0000 (+0200) Subject: Improve SWT packaging X-Git-Tag: v2.3.5~31 X-Git-Url: https://git.argeo.org/?a=commitdiff_plain;h=ab325b797629aac81fe729ba182daa48a78c045b;p=gpl%2Fargeo-slc.git Improve SWT packaging --- diff --git a/cms/org.argeo.slc.cms/bnd.bnd b/cms/org.argeo.slc.cms/bnd.bnd index 927563faf..a93353396 100644 --- a/cms/org.argeo.slc.cms/bnd.bnd +++ b/cms/org.argeo.slc.cms/bnd.bnd @@ -1,3 +1,4 @@ Import-Package: \ org.apache.commons.logging,\ +org.osgi.*;version=0.0.0§,\ * \ No newline at end of file diff --git a/ext/osgi.system/.classpath b/ext/osgi.system/.classpath new file mode 100644 index 000000000..81fe078c2 --- /dev/null +++ b/ext/osgi.system/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/ext/osgi.system/.project b/ext/osgi.system/.project new file mode 100644 index 000000000..d7568b09c --- /dev/null +++ b/ext/osgi.system/.project @@ -0,0 +1,28 @@ + + + osgi.system + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + org.eclipse.jdt.core.javanature + + diff --git a/ext/osgi.system/.settings/org.eclipse.jdt.core.prefs b/ext/osgi.system/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 000000000..62ef3488c --- /dev/null +++ b/ext/osgi.system/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,9 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 +org.eclipse.jdt.core.compiler.compliance=17 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=17 diff --git a/ext/osgi.system/.settings/org.eclipse.pde.core.prefs b/ext/osgi.system/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 000000000..e8ff8be0b --- /dev/null +++ b/ext/osgi.system/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +pluginProject.equinox=false +pluginProject.extensions=false +resolve.requirebundle=false diff --git a/ext/osgi.system/.settings/org.eclipse.pde.prefs b/ext/osgi.system/.settings/org.eclipse.pde.prefs new file mode 100644 index 000000000..d2a4d8a8c --- /dev/null +++ b/ext/osgi.system/.settings/org.eclipse.pde.prefs @@ -0,0 +1,35 @@ +compilers.f.unresolved-features=1 +compilers.f.unresolved-plugins=1 +compilers.incompatible-environment=1 +compilers.p.build=1 +compilers.p.build.bin.includes=1 +compilers.p.build.encodings=2 +compilers.p.build.java.compiler=2 +compilers.p.build.java.compliance=1 +compilers.p.build.missing.output=2 +compilers.p.build.output.library=1 +compilers.p.build.source.library=1 +compilers.p.build.src.includes=1 +compilers.p.deprecated=1 +compilers.p.discouraged-class=1 +compilers.p.exec-env-too-low=1 +compilers.p.internal=1 +compilers.p.missing-packages=2 +compilers.p.missing-version-export-package=2 +compilers.p.missing-version-import-package=2 +compilers.p.missing-version-require-bundle=2 +compilers.p.no-required-att=0 +compilers.p.no.automatic.module=1 +compilers.p.not-externalized-att=2 +compilers.p.service.component.without.lazyactivation=1 +compilers.p.unknown-attribute=1 +compilers.p.unknown-class=1 +compilers.p.unknown-element=1 +compilers.p.unknown-identifier=1 +compilers.p.unknown-resource=1 +compilers.p.unresolved-ex-points=0 +compilers.p.unresolved-import=1 +compilers.s.create-docs=false +compilers.s.doc-folder=doc +compilers.s.open-tags=1 +eclipse.preferences.version=1 diff --git a/ext/osgi.system/JavaSE-9.profile b/ext/osgi.system/JavaSE-9.profile new file mode 100644 index 000000000..53b272814 --- /dev/null +++ b/ext/osgi.system/JavaSE-9.profile @@ -0,0 +1,281 @@ +############################################################################### +# Copyright (c) 2009, 2018 IBM Corporation and others. +# +# This program and the accompanying materials +# are made available under the terms of the Eclipse Public License 2.0 +# which accompanies this distribution, and is available at +# https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# IBM Corporation - initial API and implementation +############################################################################### + +# NOTE: The JavaSE-9 profile is not yet finalized. + +org.osgi.framework.system.packages = \ + java.applet,\ + java.awt,\ + java.awt.color,\ + java.awt.datatransfer,\ + java.awt.desktop,\ + java.awt.dnd,\ + java.awt.event,\ + java.awt.font,\ + java.awt.geom,\ + java.awt.im,\ + java.awt.im.spi,\ + java.awt.image,\ + java.awt.image.renderable,\ + java.awt.print,\ + java.beans,\ + java.beans.beancontext,\ + java.io,\ + java.lang,\ + java.lang.annotation,\ + java.lang.instrument,\ + java.lang.invoke,\ + java.lang.management,\ + java.lang.module,\ + java.lang.ref,\ + java.lang.reflect,\ + java.math,\ + java.net,\ + java.net.spi,\ + java.nio,\ + java.nio.channels,\ + java.nio.channels.spi,\ + java.nio.charset,\ + java.nio.charset.spi,\ + java.nio.file,\ + java.nio.file.attribute,\ + java.nio.file.spi,\ + java.rmi,\ + java.rmi.activation,\ + java.rmi.dgc,\ + java.rmi.registry,\ + java.rmi.server,\ + java.security,\ + java.security.acl,\ + java.security.cert,\ + java.security.interfaces,\ + java.security.spec,\ + java.sql,\ + java.text,\ + java.text.spi,\ + java.time,\ + java.time.chrono,\ + java.time.format,\ + java.time.temporal,\ + java.time.zone,\ + java.util,\ + java.util.concurrent,\ + java.util.concurrent.atomic,\ + java.util.concurrent.locks,\ + java.util.function,\ + java.util.jar,\ + java.util.logging,\ + java.util.prefs,\ + java.util.regex,\ + java.util.spi,\ + java.util.stream,\ + java.util.zip,\ + javax.accessibility,\ + javax.activation,\ + javax.activity,\ + javax.annotation,\ + javax.annotation.processing,\ + javax.crypto,\ + javax.crypto.interfaces,\ + javax.crypto.spec,\ + javax.imageio,\ + javax.imageio.event,\ + javax.imageio.metadata,\ + javax.imageio.plugins.bmp,\ + javax.imageio.plugins.jpeg,\ + javax.imageio.spi,\ + javax.imageio.stream,\ + javax.jws,\ + javax.jws.soap,\ + javax.lang.model,\ + javax.lang.model.element,\ + javax.lang.model.type,\ + javax.lang.model.util,\ + javax.management,\ + javax.management.loading,\ + javax.management.modelmbean,\ + javax.management.monitor,\ + javax.management.openmbean,\ + javax.management.relation,\ + javax.management.remote,\ + javax.management.remote.rmi,\ + javax.management.timer,\ + javax.naming,\ + javax.naming.directory,\ + javax.naming.event,\ + javax.naming.ldap,\ + javax.naming.spi,\ + javax.net,\ + javax.net.ssl,\ + javax.print,\ + javax.print.attribute,\ + javax.print.attribute.standard,\ + javax.print.event,\ + javax.rmi,\ + javax.rmi.CORBA,\ + javax.rmi.ssl,\ + javax.script,\ + javax.security.auth,\ + javax.security.auth.callback,\ + javax.security.auth.kerberos,\ + javax.security.auth.login,\ + javax.security.auth.spi,\ + javax.security.auth.x500,\ + javax.security.cert,\ + javax.security.sasl,\ + javax.sound.midi,\ + javax.sound.midi.spi,\ + javax.sound.sampled,\ + javax.sound.sampled.spi,\ + javax.sql,\ + javax.sql.rowset,\ + javax.sql.rowset.serial,\ + javax.sql.rowset.spi,\ + javax.swing,\ + javax.swing.border,\ + javax.swing.colorchooser,\ + javax.swing.event,\ + javax.swing.filechooser,\ + javax.swing.plaf,\ + javax.swing.plaf.basic,\ + javax.swing.plaf.metal,\ + javax.swing.plaf.multi,\ + javax.swing.plaf.nimbus,\ + javax.swing.plaf.synth,\ + javax.swing.table,\ + javax.swing.text,\ + javax.swing.text.html,\ + javax.swing.text.html.parser,\ + javax.swing.text.rtf,\ + javax.swing.tree,\ + javax.swing.undo,\ + javax.tools,\ + javax.transaction,\ + javax.transaction.xa,\ + javax.xml,\ + javax.xml.bind,\ + javax.xml.bind.annotation,\ + javax.xml.bind.annotation.adapters,\ + javax.xml.bind.attachment,\ + javax.xml.bind.helpers,\ + javax.xml.bind.util,\ + javax.xml.crypto,\ + javax.xml.crypto.dom,\ + javax.xml.crypto.dsig,\ + javax.xml.crypto.dsig.dom,\ + javax.xml.crypto.dsig.keyinfo,\ + javax.xml.crypto.dsig.spec,\ + javax.xml.datatype,\ + javax.xml.namespace,\ + javax.xml.parsers,\ + javax.xml.soap,\ + javax.xml.stream,\ + javax.xml.stream.events,\ + javax.xml.stream.util,\ + javax.xml.transform,\ + javax.xml.transform.dom,\ + javax.xml.transform.sax,\ + javax.xml.transform.stax,\ + javax.xml.transform.stream,\ + javax.xml.validation,\ + javax.xml.ws,\ + javax.xml.ws.handler,\ + javax.xml.ws.handler.soap,\ + javax.xml.ws.http,\ + javax.xml.ws.soap,\ + javax.xml.ws.spi,\ + javax.xml.ws.spi.http,\ + javax.xml.ws.wsaddressing,\ + javax.xml.xpath,\ + org.ietf.jgss,\ + org.omg.CORBA,\ + org.omg.CORBA_2_3,\ + org.omg.CORBA_2_3.portable,\ + org.omg.CORBA.DynAnyPackage,\ + org.omg.CORBA.ORBPackage,\ + org.omg.CORBA.portable,\ + org.omg.CORBA.TypeCodePackage,\ + org.omg.CosNaming,\ + org.omg.CosNaming.NamingContextExtPackage,\ + org.omg.CosNaming.NamingContextPackage,\ + org.omg.Dynamic,\ + org.omg.DynamicAny,\ + org.omg.DynamicAny.DynAnyFactoryPackage,\ + org.omg.DynamicAny.DynAnyPackage,\ + org.omg.IOP,\ + org.omg.IOP.CodecFactoryPackage,\ + org.omg.IOP.CodecPackage,\ + org.omg.Messaging,\ + org.omg.PortableInterceptor,\ + org.omg.PortableInterceptor.ORBInitInfoPackage,\ + org.omg.PortableServer,\ + org.omg.PortableServer.CurrentPackage,\ + org.omg.PortableServer.POAManagerPackage,\ + org.omg.PortableServer.POAPackage,\ + org.omg.PortableServer.portable,\ + org.omg.PortableServer.ServantLocatorPackage,\ + org.omg.SendingContext,\ + org.omg.stub.java.rmi,\ + org.w3c.dom,\ + org.w3c.dom.bootstrap,\ + org.w3c.dom.css,\ + org.w3c.dom.events,\ + org.w3c.dom.html,\ + org.w3c.dom.ls,\ + org.w3c.dom.ranges,\ + org.w3c.dom.stylesheets,\ + org.w3c.dom.traversal,\ + org.w3c.dom.views,\ + org.w3c.dom.xpath,\ + org.xml.sax,\ + org.xml.sax.ext,\ + org.xml.sax.helpers +org.osgi.framework.bootdelegation = \ + javax.*,\ + org.ietf.jgss,\ + org.omg.*,\ + org.w3c.*,\ + org.xml.*,\ + sun.*,\ + com.sun.* +org.osgi.framework.executionenvironment = \ + OSGi/Minimum-1.0,\ + OSGi/Minimum-1.1,\ + OSGi/Minimum-1.2,\ + JavaSE/compact1-1.8,\ + JavaSE/compact2-1.8,\ + JavaSE/compact3-1.8,\ + JRE-1.1,\ + J2SE-1.2,\ + J2SE-1.3,\ + J2SE-1.4,\ + J2SE-1.5,\ + JavaSE-1.6,\ + JavaSE-1.7,\ + JavaSE-1.8,\ + JavaSE-9 +org.osgi.framework.system.capabilities = \ + osgi.ee; osgi.ee="OSGi/Minimum"; version:List="1.0, 1.1, 1.2",\ + osgi.ee; osgi.ee="JRE"; version:List="1.0, 1.1",\ + osgi.ee; osgi.ee="JavaSE"; version:List="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 9.0",\ + osgi.ee; osgi.ee="JavaSE/compact1"; version:List="1.8, 9.0",\ + osgi.ee; osgi.ee="JavaSE/compact2"; version:List="1.8, 9.0",\ + osgi.ee; osgi.ee="JavaSE/compact3"; version:List="1.8, 9.0" +osgi.java.profile.name = JavaSE-9 +org.eclipse.jdt.core.compiler.compliance=9 +org.eclipse.jdt.core.compiler.source=9 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=9 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error diff --git a/ext/osgi.system/build.properties b/ext/osgi.system/build.properties new file mode 100644 index 000000000..34d2e4d2d --- /dev/null +++ b/ext/osgi.system/build.properties @@ -0,0 +1,4 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + . diff --git a/ext/osgi.system/profile.list b/ext/osgi.system/profile.list new file mode 100644 index 000000000..cdaf2a3fa --- /dev/null +++ b/ext/osgi.system/profile.list @@ -0,0 +1,2 @@ +java.profiles = \ + JavaSE-9.profile diff --git a/org.argeo.slc.api/src/org/argeo/slc/ManifestConstants.java b/org.argeo.slc.api/src/org/argeo/slc/ManifestConstants.java index 424ba5dd0..4f43cdab1 100644 --- a/org.argeo.slc.api/src/org/argeo/slc/ManifestConstants.java +++ b/org.argeo.slc.api/src/org/argeo/slc/ManifestConstants.java @@ -7,6 +7,8 @@ public enum ManifestConstants { BUNDLE_LICENSE("Bundle-License"), // EXPORT_PACKAGE("Export-Package"), // IMPORT_PACKAGE("Import-Package"), // + // JAVA + AUTOMATIC_MODULE_NAME("Automatic-Module-Name"), // // SLC SLC_CATEGORY("SLC-Category"), // SLC_ORIGIN_M2("SLC-Origin-M2"), // diff --git a/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java b/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java index b9c69dea3..6b61493bc 100644 --- a/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java +++ b/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java @@ -29,6 +29,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Properties; import java.util.TreeMap; import java.util.jar.Attributes; @@ -58,13 +59,35 @@ public class A2Factory { private Path originBase; private Path a2Base; + private Path a2LibBase; + private Path descriptorsBase; + + private Properties uris = new Properties(); + + private boolean includeSources = true; /** key is URI prefix, value list of base URLs */ private Map> mirrors = new HashMap>(); - public A2Factory(Path a2Base) { + public A2Factory(Path a2Base, Path descriptorsBase, boolean includeSources) { + Objects.requireNonNull(a2Base); + Objects.requireNonNull(descriptorsBase); this.originBase = Paths.get(System.getProperty("user.home"), ".cache", "argeo/slc/origin"); this.a2Base = a2Base; + this.a2LibBase = a2Base.resolve("lib"); + this.descriptorsBase = descriptorsBase; + if (!Files.exists(this.descriptorsBase)) + throw new IllegalArgumentException(this.descriptorsBase + " does not exist"); + this.includeSources = includeSources; + + Path urisPath = this.descriptorsBase.resolve("uris.properties"); + if (Files.exists(urisPath)) { + try (InputStream in = Files.newInputStream(urisPath)) { + uris.load(in); + } catch (IOException e) { + throw new IllegalStateException("Cannot load " + urisPath, e); + } + } // TODO make it configurable List eclipseMirrors = new ArrayList<>(); @@ -80,8 +103,9 @@ public class A2Factory { */ /** Process a whole category/group id. */ - public void processCategory(Path targetCategoryBase) { + public void processCategory(Path categoryRelativePath) { try { + Path targetCategoryBase = descriptorsBase.resolve(categoryRelativePath); DirectoryStream bnds = Files.newDirectoryStream(targetCategoryBase, (p) -> p.getFileName().toString().endsWith(".bnd") && !p.getFileName().toString().equals(COMMON_BND) && !p.getFileName().toString().equals(MERGE_BND)); @@ -94,15 +118,17 @@ public class A2Factory { processM2BasedDistributionUnit(duDir); } } catch (IOException e) { - throw new RuntimeException("Cannot process category " + targetCategoryBase, e); + throw new RuntimeException("Cannot process category " + categoryRelativePath, e); } } /** Process a standalone Maven artifact. */ public void processSingleM2ArtifactDistributionUnit(Path bndFile) { try { - String category = bndFile.getParent().getFileName().toString(); - Path targetCategoryBase = a2Base.resolve(category); +// String category = bndFile.getParent().getFileName().toString(); + Path categoryRelativePath = descriptorsBase.relativize(bndFile.getParent()); + Path targetCategoryBase = a2Base.resolve(categoryRelativePath); + Properties fileProps = new Properties(); try (InputStream in = Files.newInputStream(bndFile)) { fileProps.load(in); @@ -111,8 +137,7 @@ public class A2Factory { ? fileProps.getProperty(SLC_ORIGIN_M2_REPO.toString()) : null; - if (!fileProps.containsKey(BUNDLE_SYMBOLICNAME.toString()) - && !fileProps.containsKey(ManifestConstants.SLC_ORIGIN_MANIFEST_NOT_MODIFIED.toString())) { + if (!fileProps.containsKey(BUNDLE_SYMBOLICNAME.toString())) { // use file name as symbolic name String symbolicName = bndFile.getFileName().toString(); symbolicName = symbolicName.substring(0, symbolicName.length() - ".bnd".length()); @@ -139,8 +164,9 @@ public class A2Factory { /** Process multiple Maven artifacts. */ public void processM2BasedDistributionUnit(Path duDir) { try { - String category = duDir.getParent().getFileName().toString(); - Path targetCategoryBase = a2Base.resolve(category); + // String category = duDir.getParent().getFileName().toString(); + Path categoryRelativePath = descriptorsBase.relativize(duDir.getParent()); + Path targetCategoryBase = a2Base.resolve(categoryRelativePath); // merge Path mergeBnd = duDir.resolve(MERGE_BND); @@ -210,8 +236,7 @@ public class A2Factory { } } mergeProps.put(ManifestConstants.SLC_ORIGIN_M2.toString(), artifact.toM2Coordinates()); - if (!mergeProps.containsKey(BUNDLE_SYMBOLICNAME.toString()) - && !mergeProps.containsKey(ManifestConstants.SLC_ORIGIN_MANIFEST_NOT_MODIFIED.toString())) { + if (!mergeProps.containsKey(BUNDLE_SYMBOLICNAME.toString())) { // use file name as symbolic name String symbolicName = p.getFileName().toString(); symbolicName = symbolicName.substring(0, symbolicName.length() - ".bnd".length()); @@ -480,6 +505,8 @@ public class A2Factory { /** Download and integrates sources for a single Maven artifact. */ protected void downloadAndProcessM2Sources(String repoStr, DefaultArtifact artifact, Path targetBundleDir) throws IOException { + if (!includeSources) + return; DefaultArtifact sourcesArtifact = new DefaultArtifact(artifact.toM2Coordinates(), "sources"); URL sourcesUrl = MavenConventionsUtils.mavenRepoUrl(repoStr, sourcesArtifact); Path sourcesDownloaded = download(sourcesUrl, originBase, artifact, true); @@ -540,10 +567,11 @@ public class A2Factory { */ /** Process an archive in Eclipse format. */ - public void processEclipseArchive(Path duDir) { + public void processEclipseArchive(Path relativePath) { try { - String category = duDir.getParent().getFileName().toString(); - Path targetCategoryBase = a2Base.resolve(category); + Path categoryRelativePath = relativePath.getParent(); + // String category = categoryRelativePath.getFileName().toString(); + Path targetCategoryBase = a2Base.resolve(categoryRelativePath); Files.createDirectories(targetCategoryBase); // first delete all directories from previous builds for (Path dir : Files.newDirectoryStream(targetCategoryBase, (p) -> Files.isDirectory(p))) { @@ -552,12 +580,19 @@ public class A2Factory { Files.createDirectories(originBase); + Path duDir = descriptorsBase.resolve(relativePath); Path commonBnd = duDir.resolve(COMMON_BND); Properties commonProps = new Properties(); try (InputStream in = Files.newInputStream(commonBnd)) { commonProps.load(in); } String url = commonProps.getProperty(ManifestConstants.SLC_ORIGIN_URI.toString()); + if (url == null) { + url = uris.getProperty(relativePath.getFileName().toString()); + if (url == null) + throw new IllegalStateException("No url available for " + duDir); + commonProps.put(ManifestConstants.SLC_ORIGIN_URI.toString(), url); + } Path downloaded = tryDownload(url, originBase); FileSystem zipFs = FileSystems.newFileSystem(downloaded, (ClassLoader) null); @@ -598,12 +633,12 @@ public class A2Factory { return FileVisitResult.CONTINUE; } } - if (file.getFileName().toString().contains(".source_")) { + if (includeSources && file.getFileName().toString().contains(".source_")) { processEclipseSourceJar(file, targetCategoryBase); logger.log(Level.DEBUG, () -> "Processed source " + file); } else { - processBundleJar(file, targetCategoryBase, new HashMap<>()); + processBundleJar(file, targetCategoryBase, new HashMap(commonProps)); logger.log(Level.DEBUG, () -> "Processed " + file); } break includeMatchers; @@ -618,7 +653,7 @@ public class A2Factory { createJar(dir); } } catch (IOException e) { - throw new RuntimeException("Cannot process " + duDir, e); + throw new RuntimeException("Cannot process " + relativePath, e); } } @@ -701,29 +736,43 @@ public class A2Factory { // manifest.getEntries().remove(key); // } - String symbolicNameFromEntries = entries.get(BUNDLE_SYMBOLICNAME.toString()); - String versionFromEntries = entries.get(BUNDLE_VERSION.toString()); + String ourSymbolicName = entries.get(BUNDLE_SYMBOLICNAME.toString()); + String ourVersion = entries.get(BUNDLE_VERSION.toString()); - if (symbolicNameFromEntries != null && versionFromEntries != null) { - nameVersion = new DefaultNameVersion(symbolicNameFromEntries, versionFromEntries); + if (ourSymbolicName != null && ourVersion != null) { + nameVersion = new DefaultNameVersion(ourSymbolicName, ourVersion); } else { nameVersion = nameVersionFromManifest(manifest); - if (versionFromEntries != null && !nameVersion.getVersion().equals(versionFromEntries)) { - logger.log(Level.WARNING, "Original version is " + nameVersion.getVersion() - + " while new version is " + versionFromEntries); + if (ourVersion != null && !nameVersion.getVersion().equals(ourVersion)) { + logger.log(Level.WARNING, + "Original version is " + nameVersion.getVersion() + " while new version is " + ourVersion); + entries.put(BUNDLE_VERSION.toString(), ourVersion); } - if (symbolicNameFromEntries != null) { + if (ourSymbolicName != null) { // we always force our symbolic name - nameVersion.setName(symbolicNameFromEntries); + nameVersion.setName(ourSymbolicName); } } targetBundleDir = targetBase.resolve(nameVersion.getName() + "." + nameVersion.getBranch()); + // force Java 9 module name + entries.put(ManifestConstants.AUTOMATIC_MODULE_NAME.toString(), nameVersion.getName()); + // TODO make it less dangerous? // if (Files.exists(targetBundleDir)) { // deleteDirectory(targetBundleDir); // } + boolean isNative = false; + String os = null; + String arch = null; + if (targetBundleDir.startsWith(a2LibBase)) { + isNative = true; + Path libRelativePath = a2LibBase.relativize(targetBundleDir); + os = libRelativePath.getName(0).toString(); + arch = libRelativePath.getName(1).toString(); + } + // copy entries JarEntry entry; entries: while ((entry = jarIn.getNextJarEntry()) != null) { @@ -731,9 +780,43 @@ public class A2Factory { continue entries; if (entry.getName().endsWith(".RSA") || entry.getName().endsWith(".SF")) continue entries; + if (entry.getName().endsWith("module-info.class")) // skip Java 9 module info + continue entries; + if (entry.getName().startsWith("META-INF/versions/")) // skip multi-version + continue entries; + if (entry.getName().startsWith("OSGI-OPT/src/")) // skip embedded sources + continue entries; Path target = targetBundleDir.resolve(entry.getName()); Files.createDirectories(target.getParent()); Files.copy(jarIn, target); + + // native libraries + if (isNative && (entry.getName().endsWith(".so") || entry.getName().endsWith(".dll") + || entry.getName().endsWith(".jnilib"))) { + Path categoryDir = targetBundleDir.getParent(); +// String[] segments = categoryDir.getFileName().toString().split("\\."); +// String arch = segments[segments.length - 1]; +// String os = segments[segments.length - 2]; + boolean copyDll = false; + Path targetDll = categoryDir.resolve(target.getFileName()); + if (nameVersion.getName().equals("com.sun.jna")) { + if (arch.equals("x86_64")) + arch = "x86-64"; + if (os.equals("macosx")) + os = "darwin"; + if (target.getParent().getFileName().toString().equals(os + "-" + arch)) { + copyDll = true; + } + } else { + copyDll = true; + } + if (copyDll) { + if (Files.exists(targetDll)) + Files.delete(targetDll); + Files.copy(target, targetDll); + } + Files.delete(target); + } logger.log(Level.TRACE, () -> "Copied " + target); } @@ -746,12 +829,17 @@ public class A2Factory { if (previousValue != null && !previousValue.equals(value)) { if (ManifestConstants.IMPORT_PACKAGE.toString().equals(key) || ManifestConstants.EXPORT_PACKAGE.toString().equals(key)) - logger.log(Level.WARNING, file.getFileName() + ": " + key + " was modified"); - + logger.log(Level.TRACE, file.getFileName() + ": " + key + " was modified"); else logger.log(Level.WARNING, file.getFileName() + ": " + key + " was " + previousValue + ", overridden with " + value); } + + // hack to remove unresolvable + if (key.equals("Provide-Capability") || key.equals("Require-Capability")) + if (nameVersion.getName().equals("osgi.core") || nameVersion.getName().equals("osgi.cmpn")) { + manifest.getMainAttributes().remove(key); + } } try (OutputStream out = Files.newOutputStream(manifestPath)) { manifest.write(out); @@ -919,9 +1007,8 @@ public class A2Factory { /** For development purproses. */ public static void main(String[] args) { Path factoryBase = Paths.get("../../output/a2").toAbsolutePath().normalize(); - A2Factory factory = new A2Factory(factoryBase); - Path descriptorsBase = Paths.get("../tp").toAbsolutePath().normalize(); + A2Factory factory = new A2Factory(factoryBase, descriptorsBase, true); // factory.processSingleM2ArtifactDistributionUnit(descriptorsBase.resolve("org.argeo.tp.apache").resolve("org.apache.xml.resolver.bnd")); // factory.processM2BasedDistributionUnit(descriptorsBase.resolve("org.argeo.tp.apache/apache-sshd")); @@ -929,31 +1016,43 @@ public class A2Factory { // factory.processCategory(descriptorsBase.resolve("org.argeo.tp.osgi")); // factory.processCategory(descriptorsBase.resolve("org.argeo.tp.eclipse.rcp")); // factory.processCategory(descriptorsBase.resolve("org.argeo.tp")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.apache")); +// factory.processCategory(descriptorsBase.resolve("org.argeo.tp.apache")); // factory.processCategory(descriptorsBase.resolve("org.argeo.tp.sdk")); // factory.processCategory(descriptorsBase.resolve("org.argeo.tp.formats")); // factory.processCategory(descriptorsBase.resolve("org.argeo.tp.gis")); - System.exit(0); + + // SDK + factory.processCategory(Paths.get("org.argeo.tp.sdk")); // Eclipse - factory.processEclipseArchive( - descriptorsBase.resolve("org.argeo.tp.eclipse.equinox").resolve("eclipse-equinox")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.rwt").resolve("eclipse-rwt")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.rap").resolve("eclipse-rap")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.swt").resolve("eclipse-swt")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.swt").resolve("eclipse-nebula")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.swt").resolve("eclipse-equinox")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.rcp").resolve("eclipse-rcp")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.eclipse.rcp")); + factory.processCategory(Paths.get("osgi/api/org.argeo.tp.osgi")); + factory.processEclipseArchive(Paths.get("osgi/equinox/org.argeo.tp.osgi", "eclipse-equinox")); + + factory.processEclipseArchive(Paths.get("org.argeo.tp.eclipse", "eclipse-equinox")); + + factory.processEclipseArchive(Paths.get("swt/rap/org.argeo.tp.swt", "eclipse-rap")); + factory.processEclipseArchive(Paths.get("swt/rap/org.argeo.tp.swt.workbench", "eclipse-rap")); + + factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + + factory.processEclipseArchive(Paths.get("lib/linux/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + factory.processEclipseArchive(Paths.get("lib/linux/aarch64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + factory.processEclipseArchive(Paths.get("lib/win32/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + factory.processEclipseArchive(Paths.get("lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + System.exit(1); + factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", "eclipse-nebula")); + // factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", + // "eclipse-equinox")); + factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt.workbench", "eclipse-rcp")); + factory.processCategory(Paths.get("swt/rcp/org.argeo.tp.swt.workbench")); // Maven - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.sdk")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.apache")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.jetty")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.jcr")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.formats")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.poi")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.gis")); + factory.processCategory(Paths.get("org.argeo.tp")); + factory.processCategory(Paths.get("org.argeo.tp.apache")); + factory.processCategory(Paths.get("org.argeo.tp.jetty")); + factory.processCategory(Paths.get("org.argeo.tp.jcr")); + factory.processCategory(Paths.get("org.argeo.tp.formats")); + factory.processCategory(Paths.get("org.argeo.tp.poi")); + factory.processCategory(Paths.get("org.argeo.tp.gis")); } } diff --git a/sdk/output-argeo-tp-backend.target b/sdk/output-argeo-tp-backend.target index 517c7f76d..b87b8914e 100644 --- a/sdk/output-argeo-tp-backend.target +++ b/sdk/output-argeo-tp-backend.target @@ -1,8 +1,9 @@ - + + diff --git a/sdk/output-argeo-tp-minimal.target b/sdk/output-argeo-tp-minimal.target index 626bb6e7c..0876b9d5c 100644 --- a/sdk/output-argeo-tp-minimal.target +++ b/sdk/output-argeo-tp-minimal.target @@ -1,10 +1,11 @@ - + - + + \ No newline at end of file diff --git a/sdk/output-argeo-tp-rap.target b/sdk/output-argeo-tp-rap.target index de678926a..295f6d192 100644 --- a/sdk/output-argeo-tp-rap.target +++ b/sdk/output-argeo-tp-rap.target @@ -1,8 +1,8 @@ - + - + \ No newline at end of file diff --git a/sdk/output-argeo-tp-rcp.target b/sdk/output-argeo-tp-rcp.target index 5dfd1174b..ade01b99f 100644 --- a/sdk/output-argeo-tp-rcp.target +++ b/sdk/output-argeo-tp-rcp.target @@ -1,8 +1,8 @@ - + - + \ No newline at end of file diff --git a/sdk/output-argeo-tp-rwt.target b/sdk/output-argeo-tp-rwt.target index e95dab245..687e25c1e 100644 --- a/sdk/output-argeo-tp-rwt.target +++ b/sdk/output-argeo-tp-rwt.target @@ -1,8 +1,8 @@ - + - + \ No newline at end of file diff --git a/sdk/output-argeo-tp-swt.target b/sdk/output-argeo-tp-swt.target index 1a189147f..21b0f8860 100644 --- a/sdk/output-argeo-tp-swt.target +++ b/sdk/output-argeo-tp-swt.target @@ -1,8 +1,9 @@ - + - + + \ No newline at end of file diff --git a/tp/Make.java b/tp/Make.java index caf6a2150..4c0cea55a 100644 --- a/tp/Make.java +++ b/tp/Make.java @@ -5,40 +5,47 @@ import org.argeo.slc.factory.A2Factory; class Make { public static void main(String[] args) { - if(args.length < 1) { + if (args.length < 1) { System.err.println("Usage: "); System.exit(1); } Path a2Base = Paths.get(args[0]).toAbsolutePath().normalize(); - A2Factory factory = new A2Factory(a2Base); - Path descriptorsBase = Paths.get("./tp").toAbsolutePath().normalize(); + A2Factory factory = new A2Factory(a2Base, descriptorsBase, true); -// factory.processSingleM2ArtifactDistributionUnit(descriptorsBase.resolve("org.argeo.tp.apache").resolve("org.apache.xml.resolver.bnd")); -// factory.processM2BasedDistributionUnit(descriptorsBase.resolve("org.argeo.tp/slf4j")); -// System.exit(0); + // SDK + factory.processCategory(Paths.get("org.argeo.tp.sdk")); // Eclipse - factory.processEclipseArchive( - descriptorsBase.resolve("org.argeo.tp.eclipse.equinox").resolve("eclipse-equinox")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.rwt").resolve("eclipse-rwt")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.rap").resolve("eclipse-rap")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.swt").resolve("eclipse-swt")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.swt").resolve("eclipse-nebula")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.swt").resolve("eclipse-equinox")); - factory.processEclipseArchive(descriptorsBase.resolve("org.argeo.tp.eclipse.rcp").resolve("eclipse-rcp")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.eclipse.rcp")); + factory.processCategory(Paths.get("osgi/api/org.argeo.tp.osgi")); + factory.processEclipseArchive(Paths.get("osgi/equinox/org.argeo.tp.osgi", "eclipse-equinox")); + + factory.processEclipseArchive(Paths.get("org.argeo.tp.eclipse", "eclipse-equinox")); + + factory.processEclipseArchive(Paths.get("swt/rap/org.argeo.tp.swt", "eclipse-rap")); + factory.processEclipseArchive(Paths.get("swt/rap/org.argeo.tp.swt.workbench", "eclipse-rap")); + + factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + + factory.processEclipseArchive(Paths.get("lib/linux/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + factory.processEclipseArchive(Paths.get("lib/linux/aarch64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + factory.processEclipseArchive(Paths.get("lib/win32/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + factory.processEclipseArchive(Paths.get("lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt", "eclipse-rcp")); + + factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", "eclipse-nebula")); + // factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt", + // "eclipse-equinox")); + factory.processEclipseArchive(Paths.get("swt/rcp/org.argeo.tp.swt.workbench", "eclipse-rcp")); + factory.processCategory(Paths.get("swt/rcp/org.argeo.tp.swt.workbench")); // Maven - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.osgi")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.sdk")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.apache")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.jetty")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.jcr")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.formats")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.poi")); - factory.processCategory(descriptorsBase.resolve("org.argeo.tp.gis")); + factory.processCategory(Paths.get("org.argeo.tp")); + factory.processCategory(Paths.get("org.argeo.tp.apache")); + factory.processCategory(Paths.get("org.argeo.tp.jetty")); + factory.processCategory(Paths.get("org.argeo.tp.jcr")); + factory.processCategory(Paths.get("org.argeo.tp.formats")); + factory.processCategory(Paths.get("org.argeo.tp.poi")); + factory.processCategory(Paths.get("org.argeo.tp.gis")); } } \ No newline at end of file diff --git a/tp/lib/linux/aarch64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd b/tp/lib/linux/aarch64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/lib/linux/aarch64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/lib/linux/aarch64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties b/tp/lib/linux/aarch64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties new file mode 100644 index 000000000..d39a318cc --- /dev/null +++ b/tp/lib/linux/aarch64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties @@ -0,0 +1,2 @@ +plugins/com.sun.jna*.jar= +plugins/org.eclipse.swt.gtk.linux.aarch64*= diff --git a/tp/lib/linux/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd b/tp/lib/linux/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/lib/linux/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/lib/linux/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties b/tp/lib/linux/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties new file mode 100644 index 000000000..56af20515 --- /dev/null +++ b/tp/lib/linux/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties @@ -0,0 +1,2 @@ +plugins/com.sun.jna*.jar= +plugins/org.eclipse.swt.gtk.linux.x86_64*= diff --git a/tp/lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd b/tp/lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties b/tp/lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties new file mode 100644 index 000000000..5405ab86d --- /dev/null +++ b/tp/lib/macosx/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties @@ -0,0 +1,2 @@ +plugins/com.sun.jna*.jar= +plugins/org.eclipse.swt.cocoa.macosx.x86_64*= diff --git a/tp/lib/win32/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd b/tp/lib/win32/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/lib/win32/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/lib/win32/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties b/tp/lib/win32/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties new file mode 100644 index 000000000..7dff8c9bd --- /dev/null +++ b/tp/lib/win32/x86_64/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties @@ -0,0 +1,2 @@ +plugins/com.sun.jna*.jar= +plugins/org.eclipse.swt.win32.win32.x86_64*= diff --git a/tp/org.argeo.tp.apache/org.apache.commons.fileupload.bnd b/tp/org.argeo.tp.apache/org.apache.commons.fileupload.bnd index 40a58d2c4..73b19d418 100644 --- a/tp/org.argeo.tp.apache/org.apache.commons.fileupload.bnd +++ b/tp/org.argeo.tp.apache/org.apache.commons.fileupload.bnd @@ -1,5 +1,6 @@ Bundle-License: Apache-2.0 -Bundle-SymbolicName: org.apache.commons.fileupload -Import-Package: javax.portlet;resolution:=optional,\ +Import-Package:\ +javax.portlet;resolution:=optional,\ +javax.servlet.*;resolution:=optional,\ * SLC-Origin-M2: commons-fileupload:commons-fileupload:1.4 diff --git a/tp/org.argeo.tp.eclipse.equinox/eclipse-equinox/common.bnd b/tp/org.argeo.tp.eclipse.equinox/eclipse-equinox/common.bnd deleted file mode 100644 index 7f3378c50..000000000 --- a/tp/org.argeo.tp.eclipse.equinox/eclipse-equinox/common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPL-1.0 -SLC-Origin-ManifestNotModified: true -SLC-Origin-URI: http://www.eclipse.org/downloads/equinox/drops/R-4.23-202203080310/equinox-SDK-4.23.zip diff --git a/tp/org.argeo.tp.eclipse.equinox/eclipse-equinox/includes.properties b/tp/org.argeo.tp.eclipse.equinox/eclipse-equinox/includes.properties deleted file mode 100644 index f6fd178cf..000000000 --- a/tp/org.argeo.tp.eclipse.equinox/eclipse-equinox/includes.properties +++ /dev/null @@ -1,23 +0,0 @@ -plugins/org.eclipse.osgi_*.jar= -plugins/org.eclipse.osgi.source_*.jar= -plugins/org.eclipse.osgi.util*.jar= -plugins/org.eclipse.osgi.services*.jar= -plugins/jakarta.servlet-api*.jar= -plugins/org.apache.felix.gogo.*.jar= -plugins/org.apache.felix.scr*.jar= -plugins/org.eclipse.equinox.app*.jar= -plugins/org.eclipse.equinox.cm*.jar= -plugins/org.eclipse.equinox.common*.jar= -plugins/org.eclipse.equinox.console_*.jar= -plugins/org.eclipse.equinox.console.source_*.jar= -plugins/org.eclipse.equinox.ds*.jar= -plugins/org.eclipse.equinox.metatype*.jar= -plugins/org.eclipse.equinox.event*.jar= -plugins/org.eclipse.equinox.http.jetty*.jar= -plugins/org.eclipse.equinox.http.registry*.jar= -plugins/org.eclipse.equinox.http.servlet*.jar= -plugins/org.eclipse.equinox.http.servletbridge*.jar= -plugins/org.eclipse.equinox.preferences*.jar= -plugins/org.eclipse.equinox.registry*.jar= -plugins/org.eclipse.equinox.servletbridge*.jar= -plugins/org.eclipse.equinox.util*.jar= diff --git a/tp/org.argeo.tp.eclipse.rap/eclipse-rap/common.bnd b/tp/org.argeo.tp.eclipse.rap/eclipse-rap/common.bnd deleted file mode 100644 index 47f53cc2d..000000000 --- a/tp/org.argeo.tp.eclipse.rap/eclipse-rap/common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPL-1.0 -SLC-Origin-ManifestNotModified: true -SLC-Origin-URI: http://www.eclipse.org/downloads/rt/rap/3.20/e4/rap-e4-3.20.0-R-20220309-1623.zip diff --git a/tp/org.argeo.tp.eclipse.rap/eclipse-rap/excludes.properties b/tp/org.argeo.tp.eclipse.rap/eclipse-rap/excludes.properties deleted file mode 100644 index e69de29bb..000000000 diff --git a/tp/org.argeo.tp.eclipse.rap/eclipse-rap/includes.properties b/tp/org.argeo.tp.eclipse.rap/eclipse-rap/includes.properties deleted file mode 100644 index 93e66cb31..000000000 --- a/tp/org.argeo.tp.eclipse.rap/eclipse-rap/includes.properties +++ /dev/null @@ -1,15 +0,0 @@ -plugins/javax.inject*.jar= -plugins/javax.annotation*.jar= -plugins/org.apache.commons.jxpath*.jar= -plugins/org.eclipse.e4*.jar= -plugins/org.eclipse.emf*.jar= -plugins/org.eclipse.rap.e4_*.jar= -plugins/org.eclipse.rap.e4.source_*.jar= -plugins/org.eclipse.rap.ui.workbench*.jar= -plugins/org.eclipse.rap.ui_*.jar= -plugins/org.eclipse.rap.ui.source_*.jar= -plugins/org.eclipse.rap.ui.views*.jar= -plugins/org.eclipse.rap.ui.forms*.jar= -plugins/org.eclipse.help*.jar= -plugins/com.ibm.icu*.jar= -plugins/org.eclipse.rap.jface.databinding*.jar= diff --git a/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/common.bnd b/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/common.bnd deleted file mode 100644 index 584f0aafa..000000000 --- a/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPL-1.0 -SLC-Origin-ManifestNotModified: true -SLC-Origin-URI: http://www.eclipse.org/downloads/eclipse/downloads/drops4/R-4.23-202203080310/org.eclipse.rcp.source-4.23.zip diff --git a/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/excludes.properties b/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/excludes.properties deleted file mode 100644 index 506de035a..000000000 --- a/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/excludes.properties +++ /dev/null @@ -1,6 +0,0 @@ -plugins/org.eclipse.swt*.jar= -plugins/org.eclipse.core.*.jar= -plugins/org.eclipse.jface_*.jar= -plugins/org.eclipse.jface.source_*.jar= -plugins/*ppc64le* -plugins/org.eclipse.e4.ui.css*.jar= diff --git a/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/includes.properties b/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/includes.properties deleted file mode 100644 index 812ea2569..000000000 --- a/tp/org.argeo.tp.eclipse.rcp/eclipse-rcp/includes.properties +++ /dev/null @@ -1,6 +0,0 @@ -plugins/javax.inject*.jar= -plugins/javax.annotation*.jar= -plugins/org.apache.commons.jxpath*.jar= -plugins/org.eclipse.*.jar= -plugins/com.ibm.icu*.jar= - diff --git a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.common.bnd b/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.common.bnd deleted file mode 100644 index 6bade450e..000000000 --- a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPEL-2.0 -SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.common:2.24.0 -SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.bnd b/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.bnd deleted file mode 100644 index 30033bf77..000000000 --- a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPEL-2.0 -SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.ecore:2.26.0 -SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.change.bnd b/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.change.bnd deleted file mode 100644 index ba733ef6d..000000000 --- a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.change.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPEL-2.0 -SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.ecore.change:2.14.0 -SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.xmi.bnd b/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.xmi.bnd deleted file mode 100644 index 4a4088191..000000000 --- a/tp/org.argeo.tp.eclipse.rcp/org.eclipse.emf.ecore.xmi.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPEL-2.0 -SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.ecore.xmi:2.16.0 -SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp.eclipse.rwt/eclipse-rwt/common.bnd b/tp/org.argeo.tp.eclipse.rwt/eclipse-rwt/common.bnd deleted file mode 100644 index 47f53cc2d..000000000 --- a/tp/org.argeo.tp.eclipse.rwt/eclipse-rwt/common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPL-1.0 -SLC-Origin-ManifestNotModified: true -SLC-Origin-URI: http://www.eclipse.org/downloads/rt/rap/3.20/e4/rap-e4-3.20.0-R-20220309-1623.zip diff --git a/tp/org.argeo.tp.eclipse.rwt/eclipse-rwt/includes.properties b/tp/org.argeo.tp.eclipse.rwt/eclipse-rwt/includes.properties deleted file mode 100644 index 149a56f0e..000000000 --- a/tp/org.argeo.tp.eclipse.rwt/eclipse-rwt/includes.properties +++ /dev/null @@ -1,10 +0,0 @@ -plugins/org.eclipse.core*.jar= -plugins/org.eclipse.rap.rwt_*.jar= -plugins/org.eclipse.rap.rwt.source_*.jar= -plugins/org.eclipse.rap.rwt.osgi_*.jar= -plugins/org.eclipse.rap.rwt.osgi.source_*.jar= -plugins/org.eclipse.rap.fileupload*.jar= -plugins/org.eclipse.rap.filedialog*.jar= -plugins/org.eclipse.rap.jface_*.jar= -plugins/org.eclipse.rap.jface.source_*.jar= -plugins/org.eclipse.rap.nebula.*.jar= diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/common.bnd b/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/common.bnd deleted file mode 100644 index 7f3378c50..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPL-1.0 -SLC-Origin-ManifestNotModified: true -SLC-Origin-URI: http://www.eclipse.org/downloads/equinox/drops/R-4.23-202203080310/equinox-SDK-4.23.zip diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/excludes.properties b/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/excludes.properties deleted file mode 100644 index 44f1055b9..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/excludes.properties +++ /dev/null @@ -1 +0,0 @@ -plugins/org.eclipse.equinox.security.ui*.jar= diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/includes.properties b/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/includes.properties deleted file mode 100644 index f20b07d10..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-equinox/includes.properties +++ /dev/null @@ -1 +0,0 @@ -plugins/org.eclipse.equinox.security*.jar= diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/common.bnd b/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/common.bnd deleted file mode 100644 index 750a8f0bb..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPL-2.0 -SLC-Origin-ManifestNotModified: true -SLC-Origin-URI: http://www.eclipse.org/downloads/nebula/releases/2.6.0/repository-nebula-2.6.0.zip diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/excludes.properties b/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/excludes.properties deleted file mode 100644 index 5574815cd..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/excludes.properties +++ /dev/null @@ -1,2 +0,0 @@ -plugins/org.eclipse.nebula.widgets.grid.example*.jar= -plugins/org.eclipse.nebula.widgets.grid.css*.jar= diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/includes.properties b/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/includes.properties deleted file mode 100644 index 09ea5422e..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-nebula/includes.properties +++ /dev/null @@ -1,2 +0,0 @@ -plugins/org.eclipse.nebula.widgets.grid*.jar= -plugins/org.eclipse.nebula.widgets.richtext*.jar= diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-swt/common.bnd b/tp/org.argeo.tp.eclipse.swt/eclipse-swt/common.bnd deleted file mode 100644 index 584f0aafa..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-swt/common.bnd +++ /dev/null @@ -1,3 +0,0 @@ -Bundle-License: EPL-1.0 -SLC-Origin-ManifestNotModified: true -SLC-Origin-URI: http://www.eclipse.org/downloads/eclipse/downloads/drops4/R-4.23-202203080310/org.eclipse.rcp.source-4.23.zip diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-swt/excludes.properties b/tp/org.argeo.tp.eclipse.swt/eclipse-swt/excludes.properties deleted file mode 100644 index b31d51ee0..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-swt/excludes.properties +++ /dev/null @@ -1 +0,0 @@ -plugins/*ppc64le* \ No newline at end of file diff --git a/tp/org.argeo.tp.eclipse.swt/eclipse-swt/includes.properties b/tp/org.argeo.tp.eclipse.swt/eclipse-swt/includes.properties deleted file mode 100644 index 3cb4cfade..000000000 --- a/tp/org.argeo.tp.eclipse.swt/eclipse-swt/includes.properties +++ /dev/null @@ -1,6 +0,0 @@ -plugins/com.sun.jna*.jar= -plugins/org.eclipse.swt*.jar= -plugins/org.eclipse.core*.jar= -plugins/org.eclipse.jface_*.jar= -plugins/org.eclipse.jface.source_*.jar= -plugins/org.eclipse.e4.ui.css*.jar= diff --git a/tp/org.argeo.tp.eclipse/eclipse-equinox/common.bnd b/tp/org.argeo.tp.eclipse/eclipse-equinox/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/org.argeo.tp.eclipse/eclipse-equinox/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp.eclipse/eclipse-equinox/includes.properties b/tp/org.argeo.tp.eclipse/eclipse-equinox/includes.properties new file mode 100644 index 000000000..ac8b8b7a7 --- /dev/null +++ b/tp/org.argeo.tp.eclipse/eclipse-equinox/includes.properties @@ -0,0 +1,14 @@ +plugins/org.eclipse.equinox.app*.jar= +plugins/org.eclipse.equinox.cm*.jar= +plugins/org.eclipse.equinox.common*.jar= +plugins/org.eclipse.equinox.ds*.jar= +plugins/org.eclipse.equinox.metatype*.jar= +plugins/org.eclipse.equinox.event*.jar= +plugins/org.eclipse.equinox.http.jetty*.jar= +plugins/org.eclipse.equinox.http.registry*.jar= +plugins/org.eclipse.equinox.http.servlet*.jar= +plugins/org.eclipse.equinox.http.servletbridge*.jar= +plugins/org.eclipse.equinox.preferences*.jar= +plugins/org.eclipse.equinox.registry*.jar= +plugins/org.eclipse.equinox.servletbridge*.jar= +plugins/org.eclipse.equinox.util*.jar= diff --git a/tp/org.argeo.tp.formats/io.nayuki.qrcodegen.bnd b/tp/org.argeo.tp.formats/io.nayuki.qrcodegen.bnd new file mode 100644 index 000000000..34445b6d6 --- /dev/null +++ b/tp/org.argeo.tp.formats/io.nayuki.qrcodegen.bnd @@ -0,0 +1,2 @@ +Bundle-License: MIT +SLC-Origin-M2: io.nayuki:qrcodegen:1.8.0 diff --git a/tp/org.argeo.tp.javax/javax.xml.bind.bnd.deactivated b/tp/org.argeo.tp.javax/javax.xml.bind.bnd.deactivated deleted file mode 100644 index 5a764580e..000000000 --- a/tp/org.argeo.tp.javax/javax.xml.bind.bnd.deactivated +++ /dev/null @@ -1,4 +0,0 @@ -Bundle-SymbolicName: javax.xml.bind -Bundle-Version: 2.4.0 -SLC-Origin-M2: javax.xml.bind:jaxb-api:2.4.0-b180830.0359 -Export-Package: javax.* \ No newline at end of file diff --git a/tp/org.argeo.tp.jetty/javax.websocket.bnd b/tp/org.argeo.tp.jetty/javax.websocket.bnd deleted file mode 100644 index cefcff8d1..000000000 --- a/tp/org.argeo.tp.jetty/javax.websocket.bnd +++ /dev/null @@ -1,4 +0,0 @@ -Bundle-SymbolicName: javax.websocket -Bundle-License: GPL-2.0-only OR CDDL-1.1 -SLC-Origin-M2: javax.websocket:javax.websocket-api:1.1 -SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp.osgi/osgi.cmpn.bnd b/tp/org.argeo.tp.osgi/osgi.cmpn.bnd deleted file mode 100644 index ef1e50320..000000000 --- a/tp/org.argeo.tp.osgi/osgi.cmpn.bnd +++ /dev/null @@ -1,2 +0,0 @@ -SLC-Origin-M2: org.osgi:osgi.cmpn:7.0.0 -SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp.osgi/osgi.core.bnd b/tp/org.argeo.tp.osgi/osgi.core.bnd deleted file mode 100644 index 16a91c476..000000000 --- a/tp/org.argeo.tp.osgi/osgi.core.bnd +++ /dev/null @@ -1,2 +0,0 @@ -SLC-Origin-M2: org.osgi:osgi.core:7.0.0 -SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp/jakarta.servlet.api.bnd b/tp/org.argeo.tp/jakarta.servlet.api.bnd new file mode 100644 index 000000000..5664fbda5 --- /dev/null +++ b/tp/org.argeo.tp/jakarta.servlet.api.bnd @@ -0,0 +1,3 @@ +Bundle-License: GPL-2.0-with-classpath-exception +SLC-Origin-M2: jakarta.servlet:jakarta.servlet-api:4.0.4 +SLC-Origin-ManifestNotModified: true diff --git a/tp/org.argeo.tp/javax.websocket.bnd b/tp/org.argeo.tp/javax.websocket.bnd new file mode 100644 index 000000000..cefcff8d1 --- /dev/null +++ b/tp/org.argeo.tp/javax.websocket.bnd @@ -0,0 +1,4 @@ +Bundle-SymbolicName: javax.websocket +Bundle-License: GPL-2.0-only OR CDDL-1.1 +SLC-Origin-M2: javax.websocket:javax.websocket-api:1.1 +SLC-Origin-ManifestNotModified: true diff --git a/tp/osgi/api/org.argeo.tp.osgi/osgi.cmpn.bnd b/tp/osgi/api/org.argeo.tp.osgi/osgi.cmpn.bnd new file mode 100644 index 000000000..ef1e50320 --- /dev/null +++ b/tp/osgi/api/org.argeo.tp.osgi/osgi.cmpn.bnd @@ -0,0 +1,2 @@ +SLC-Origin-M2: org.osgi:osgi.cmpn:7.0.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/osgi/api/org.argeo.tp.osgi/osgi.core.bnd b/tp/osgi/api/org.argeo.tp.osgi/osgi.core.bnd new file mode 100644 index 000000000..16a91c476 --- /dev/null +++ b/tp/osgi/api/org.argeo.tp.osgi/osgi.core.bnd @@ -0,0 +1,2 @@ +SLC-Origin-M2: org.osgi:osgi.core:7.0.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/osgi/equinox/org.argeo.tp.osgi/eclipse-equinox/common.bnd b/tp/osgi/equinox/org.argeo.tp.osgi/eclipse-equinox/common.bnd new file mode 100644 index 000000000..7f3378c50 --- /dev/null +++ b/tp/osgi/equinox/org.argeo.tp.osgi/eclipse-equinox/common.bnd @@ -0,0 +1,3 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true +SLC-Origin-URI: http://www.eclipse.org/downloads/equinox/drops/R-4.23-202203080310/equinox-SDK-4.23.zip diff --git a/tp/osgi/equinox/org.argeo.tp.osgi/eclipse-equinox/includes.properties b/tp/osgi/equinox/org.argeo.tp.osgi/eclipse-equinox/includes.properties new file mode 100644 index 000000000..2b316d334 --- /dev/null +++ b/tp/osgi/equinox/org.argeo.tp.osgi/eclipse-equinox/includes.properties @@ -0,0 +1,8 @@ +plugins/org.eclipse.osgi_*.jar= +plugins/org.eclipse.osgi.source_*.jar= +plugins/org.eclipse.osgi.util*.jar= +plugins/org.eclipse.osgi.services*.jar= +plugins/org.apache.felix.gogo.*.jar= +plugins/org.apache.felix.scr*.jar= +plugins/org.eclipse.equinox.console_*.jar= +plugins/org.eclipse.equinox.console.source_*.jar= diff --git a/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/common.bnd b/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/excludes.properties b/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/excludes.properties new file mode 100644 index 000000000..e69de29bb diff --git a/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/includes.properties b/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/includes.properties new file mode 100644 index 000000000..93e66cb31 --- /dev/null +++ b/tp/swt/rap/org.argeo.tp.swt.workbench/eclipse-rap/includes.properties @@ -0,0 +1,15 @@ +plugins/javax.inject*.jar= +plugins/javax.annotation*.jar= +plugins/org.apache.commons.jxpath*.jar= +plugins/org.eclipse.e4*.jar= +plugins/org.eclipse.emf*.jar= +plugins/org.eclipse.rap.e4_*.jar= +plugins/org.eclipse.rap.e4.source_*.jar= +plugins/org.eclipse.rap.ui.workbench*.jar= +plugins/org.eclipse.rap.ui_*.jar= +plugins/org.eclipse.rap.ui.source_*.jar= +plugins/org.eclipse.rap.ui.views*.jar= +plugins/org.eclipse.rap.ui.forms*.jar= +plugins/org.eclipse.help*.jar= +plugins/com.ibm.icu*.jar= +plugins/org.eclipse.rap.jface.databinding*.jar= diff --git a/tp/swt/rap/org.argeo.tp.swt/eclipse-rap/common.bnd b/tp/swt/rap/org.argeo.tp.swt/eclipse-rap/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/swt/rap/org.argeo.tp.swt/eclipse-rap/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rap/org.argeo.tp.swt/eclipse-rap/includes.properties b/tp/swt/rap/org.argeo.tp.swt/eclipse-rap/includes.properties new file mode 100644 index 000000000..149a56f0e --- /dev/null +++ b/tp/swt/rap/org.argeo.tp.swt/eclipse-rap/includes.properties @@ -0,0 +1,10 @@ +plugins/org.eclipse.core*.jar= +plugins/org.eclipse.rap.rwt_*.jar= +plugins/org.eclipse.rap.rwt.source_*.jar= +plugins/org.eclipse.rap.rwt.osgi_*.jar= +plugins/org.eclipse.rap.rwt.osgi.source_*.jar= +plugins/org.eclipse.rap.fileupload*.jar= +plugins/org.eclipse.rap.filedialog*.jar= +plugins/org.eclipse.rap.jface_*.jar= +plugins/org.eclipse.rap.jface.source_*.jar= +plugins/org.eclipse.rap.nebula.*.jar= diff --git a/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/common.bnd b/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/excludes.properties b/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/excludes.properties new file mode 100644 index 000000000..7c8efe38e --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/excludes.properties @@ -0,0 +1,7 @@ +plugins/org.eclipse.swt*.jar= +plugins/org.eclipse.equinox*.jar= +plugins/org.eclipse.core.*.jar= +plugins/org.eclipse.jface_*.jar= +plugins/org.eclipse.jface.source_*.jar= +plugins/*ppc64le* +plugins/org.eclipse.e4.ui.css*.jar= diff --git a/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/includes.properties b/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/includes.properties new file mode 100644 index 000000000..812ea2569 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt.workbench/eclipse-rcp/includes.properties @@ -0,0 +1,6 @@ +plugins/javax.inject*.jar= +plugins/javax.annotation*.jar= +plugins/org.apache.commons.jxpath*.jar= +plugins/org.eclipse.*.jar= +plugins/com.ibm.icu*.jar= + diff --git a/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.common.bnd b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.common.bnd new file mode 100644 index 000000000..6bade450e --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.common.bnd @@ -0,0 +1,3 @@ +Bundle-License: EPEL-2.0 +SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.common:2.24.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.bnd b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.bnd new file mode 100644 index 000000000..30033bf77 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.bnd @@ -0,0 +1,3 @@ +Bundle-License: EPEL-2.0 +SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.ecore:2.26.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.change.bnd b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.change.bnd new file mode 100644 index 000000000..ba733ef6d --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.change.bnd @@ -0,0 +1,3 @@ +Bundle-License: EPEL-2.0 +SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.ecore.change:2.14.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.xmi.bnd b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.xmi.bnd new file mode 100644 index 000000000..4a4088191 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt.workbench/org.eclipse.emf.ecore.xmi.bnd @@ -0,0 +1,3 @@ +Bundle-License: EPEL-2.0 +SLC-Origin-M2: org.eclipse.emf:org.eclipse.emf.ecore.xmi:2.16.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/common.bnd b/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/excludes.properties b/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/excludes.properties new file mode 100644 index 000000000..44f1055b9 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/excludes.properties @@ -0,0 +1 @@ +plugins/org.eclipse.equinox.security.ui*.jar= diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/includes.properties b/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/includes.properties new file mode 100644 index 000000000..f20b07d10 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-equinox/includes.properties @@ -0,0 +1 @@ +plugins/org.eclipse.equinox.security*.jar= diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/common.bnd b/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/common.bnd new file mode 100644 index 000000000..b42292d23 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-2.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/excludes.properties b/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/excludes.properties new file mode 100644 index 000000000..5574815cd --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/excludes.properties @@ -0,0 +1,2 @@ +plugins/org.eclipse.nebula.widgets.grid.example*.jar= +plugins/org.eclipse.nebula.widgets.grid.css*.jar= diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/includes.properties b/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/includes.properties new file mode 100644 index 000000000..09ea5422e --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-nebula/includes.properties @@ -0,0 +1,2 @@ +plugins/org.eclipse.nebula.widgets.grid*.jar= +plugins/org.eclipse.nebula.widgets.richtext*.jar= diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd b/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd new file mode 100644 index 000000000..9a7ae1d76 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/common.bnd @@ -0,0 +1,2 @@ +Bundle-License: EPL-1.0 +SLC-Origin-ManifestNotModified: true diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/excludes.properties b/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/excludes.properties new file mode 100644 index 000000000..9385f85d3 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/excludes.properties @@ -0,0 +1,3 @@ +plugins/*ppc64le* +plugins/*x86_64* +plugins/*aarch64* diff --git a/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties b/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties new file mode 100644 index 000000000..4724c1296 --- /dev/null +++ b/tp/swt/rcp/org.argeo.tp.swt/eclipse-rcp/includes.properties @@ -0,0 +1,5 @@ +plugins/org.eclipse.swt*.jar= +plugins/org.eclipse.core*.jar= +plugins/org.eclipse.jface_*.jar= +plugins/org.eclipse.jface.source_*.jar= +plugins/org.eclipse.e4.ui.css*.jar= diff --git a/tp/uris.properties b/tp/uris.properties new file mode 100644 index 000000000..0bfd64348 --- /dev/null +++ b/tp/uris.properties @@ -0,0 +1,4 @@ +eclipse-equinox=http://www.eclipse.org/downloads/equinox/drops/R-4.23-202203080310/equinox-SDK-4.23.zip +eclipse-rcp=http://www.eclipse.org/downloads/eclipse/downloads/drops4/R-4.23-202203080310/org.eclipse.rcp.source-4.23.zip +eclipse-rap=http://www.eclipse.org/downloads/rt/rap/3.20/e4/rap-e4-3.20.0-R-20220309-1623.zip +eclipse-nebula=http://www.eclipse.org/downloads/nebula/releases/2.6.0/repository-nebula-2.6.0.zip \ No newline at end of file