diff options
| author | Rolf Schröder <rolf.schroeder@limbus-medtec.com> | 2024-01-11 13:37:08 +0100 |
|---|---|---|
| committer | Rolf Schröder <rolf.schroeder@limbus-medtec.com> | 2024-01-25 12:35:33 +0100 |
| commit | 370afc7cced5e775055d694b8244dc8f3d801a44 (patch) | |
| tree | 4e23cdce3da0bd1b5737f53a8cf7387acb94c811 | |
| parent | Merge pull request #282650 from r-ryantm/auto-update/unifi-protect-backup (diff) | |
| download | nixpkgs-370afc7cced5e775055d694b8244dc8f3d801a44.tar.gz | |
gdal: add java bindings
| -rw-r--r-- | pkgs/development/libraries/gdal/default.nix | 13 | ||||
| -rw-r--r-- | pkgs/development/libraries/gdal/tests.nix | 13 |
2 files changed, 24 insertions, 2 deletions
diff --git a/pkgs/development/libraries/gdal/default.nix b/pkgs/development/libraries/gdal/default.nix index 6f0e06213626..3aad307aab57 100644 --- a/pkgs/development/libraries/gdal/default.nix +++ b/pkgs/development/libraries/gdal/default.nix @@ -14,7 +14,9 @@ , useHDF ? (!useMinimalFeatures) , useNetCDF ? (!useMinimalFeatures) , useArmadillo ? (!useMinimalFeatures) +, useJava ? (!useMinimalFeatures) +, ant , bison , cmake , gtest @@ -36,6 +38,7 @@ , libgeotiff , geos , giflib +, jdk , libheif , dav1d , libaom @@ -94,7 +97,7 @@ stdenv.mkDerivation (finalAttrs: { python3.pkgs.setuptools python3.pkgs.wrapPython swig - ]; + ] ++ lib.optionals useJava [ ant jdk ]; cmakeFlags = [ "-DGDAL_USE_INTERNAL_LIBS=OFF" @@ -110,6 +113,10 @@ stdenv.mkDerivation (finalAttrs: { "-DCMAKE_BUILD_WITH_INSTALL_NAME_DIR=ON" ] ++ lib.optionals (!useTiledb) [ "-DGDAL_USE_TILEDB=OFF" + ] ++ lib.optionals (!useJava) [ + # This is not strictly needed as the Java bindings wouldn't build anyway if + # ant/jdk were not available. + "-DBUILD_JAVA_BINDINGS=OFF" ]; buildInputs = @@ -192,6 +199,10 @@ stdenv.mkDerivation (finalAttrs: { postInstall = '' wrapPythonPrograms + '' + lib.optionalString useJava '' + cd $out/lib + ln -s ./jni/libgdalalljni${stdenv.hostPlatform.extensions.sharedLibrary} + cd - ''; enableParallelBuilding = true; diff --git a/pkgs/development/libraries/gdal/tests.nix b/pkgs/development/libraries/gdal/tests.nix index b89bbd51ab20..87fbff2d5fa5 100644 --- a/pkgs/development/libraries/gdal/tests.nix +++ b/pkgs/development/libraries/gdal/tests.nix @@ -1,4 +1,4 @@ -{ runCommand, gdal }: +{ runCommand, gdal, jdk }: let inherit (gdal) pname version; @@ -40,5 +40,16 @@ runCommand "${pname}-tests" { meta.timeout = 60; } ${gdal}/bin/gdalinfo ./test.tif + # test java bindings + cat <<EOF > main.java + import org.gdal.gdal.gdal; + class Main { + public static void main(String[] args) { + gdal.AllRegister(); + } + } + EOF + ${jdk}/bin/java -Djava.library.path=${gdal}/lib/ -cp ${gdal}/share/java/gdal-${version}.jar main.java + touch $out '' |
