You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We need a deployment process for the native or LLVM IR libraries and JARs generated by the build process. It should be possible to upload a package of such contents to an Ivy or Maven repository. If only Coursier is supported, that's OK for now. There is apparently no standard defined for this yet. Required features:
An archive format that can hold JARs, native libraries (shared or static) for multiple architectures, Python wheels, and other language-specific archives.
A packaging type that can be uploaded to/downloaded from an Ivy or Maven repository like Maven Central, Artifactory or Nexus. This likely requires a new packaging type and thus a Coursier plugin to support it. The standard Maven packaging types include only those Java-specific ones for which Maven was created: JAR, WAR, EAR, RAR, POM, etc. Most packaging types seem to be based on ZIP, so we'd probably go with that.
native-only
I asked on SO about a standard solely for native and LLVM IR libraries, but it only got 10 hits and no answers. I don't think that such a standard exists except for the OS-level packaging that I mentioned there, RPM and DEB and such. While such packages can be deployed locally, they seem like overkill for the
JAR overloading
Some people have sought ways to use the JAR format for deploying non-JAR resources; for example, packaging native libraries into the JAR (under META-INF). A JAR can be used as an archive like this,
The problem with this is that the loading
AAR
There's an Android Archive format that is capable of storing JARs and native libraries. I'm not sure whether it supports LLVM IR libraries. Its contents are very specific to Android's needs.
Prefab
Included in the AAR is the Prefab archive format. This is the part of the AAR that contains the native libraries. Prefab is also a tool that generates the CMake integration needed to consume the modules in a Prefab package. This may provide the
Nix
The text was updated successfully, but these errors were encountered:
We need a deployment process for the native or LLVM IR libraries and JARs generated by the build process. It should be possible to upload a package of such contents to an Ivy or Maven repository. If only Coursier is supported, that's OK for now. There is apparently no standard defined for this yet. Required features:
native-only
I asked on SO about a standard solely for native and LLVM IR libraries, but it only got 10 hits and no answers. I don't think that such a standard exists except for the OS-level packaging that I mentioned there, RPM and DEB and such. While such packages can be deployed locally, they seem like overkill for the
JAR overloading
Some people have sought ways to use the JAR format for deploying non-JAR resources; for example, packaging native libraries into the JAR (under
META-INF
). A JAR can be used as an archive like this,The problem with this is that the loading
AAR
There's an Android Archive format that is capable of storing JARs and native libraries. I'm not sure whether it supports LLVM IR libraries. Its contents are very specific to Android's needs.
Prefab
Included in the AAR is the Prefab archive format. This is the part of the AAR that contains the native libraries. Prefab is also a tool that generates the CMake integration needed to consume the modules in a Prefab package. This may provide the
Nix
The text was updated successfully, but these errors were encountered: