Skip to content

Automated build system for FuseSource leveldbjni-native bindings

License

Notifications You must be signed in to change notification settings

Consensys/leveldbjni-native

LevelDB Native

Build Status

Provides an automated build for LevelDB JNI.

Current Status

Building supported on:

  • Linux (x86_64)
  • Mac (x86_64)
  • Mac (aarch64)

Desired but unsupported:

  • Linux (aarch64)
    • Not supported by the version of LevelDB currently required by leveldbjni.
    • A script is provided that cross-compiles, but leveldb is missing an AtomicPointer implementation for aarch64.
  • Windows (x86)
    • Automated build not yet figured out.
    • Likely need to update the Visual Studio project at minimum.

Building

The definitive process for building is defined in the CircleCI config. Generally however building involves running the ./build-<platform>.sh script for the current platform followed by ./assemble.sh to build and test the resulting jar.

The aarch64 builds use cross-compilation so can be run (but not tested) on x86 machines.

Building a multiplatform jar requires running the required ./build-<platform>.sh script for each platform, potentially on multiple systems, then combining the results in build/artifacts before running ./assemble.sh.

Dependency

repositories {
  maven { url "https://artifacts.consensys.net/public/maven/maven/" }
}
dependencies {
  dependency "tech.pegasys:leveldbjni-native:<version>"
}

About

Automated build system for FuseSource leveldbjni-native bindings

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published