diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/java/junixsocket/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/java/junixsocket/default.nix | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/java/junixsocket/default.nix b/nixpkgs/pkgs/development/libraries/java/junixsocket/default.nix new file mode 100644 index 000000000000..bc34957b9c3e --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/java/junixsocket/default.nix @@ -0,0 +1,42 @@ +{ stdenv, fetchurl, ant, jdk, junit }: + +stdenv.mkDerivation rec { + name = "junixsocket-1.3"; + + src = fetchurl { + url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/junixsocket/${name}-src.tar.bz2"; + sha256 = "0c6p8vmiv5nk8i6g1hgivnl3mpb2k3lhjjz0ss9dlirisfrxf1ym"; + }; + + patches = [ ./darwin.patch ]; + + buildInputs = [ ant jdk junit ]; + + preConfigure = + '' + substituteInPlace src/main/org/newsclub/net/unix/NativeUnixSocketConfig.java \ + --replace /opt/newsclub/lib-native $out/lib + ''; + + buildPhase = "ant"; + + ANT_ARGS = + # Note that our OpenJDK on Darwin is currently 32-bit, so we have to build a 32-bit dylib. + (if stdenv.is64bit then [ "-Dskip32=true" ] else [ "-Dskip64=true" ]) + ++ [ "-Dgcc=cc" "-Dant.build.javac.source=1.6" ] + ++ stdenv.lib.optional stdenv.isDarwin "-DisMac=true"; + + installPhase = + '' + mkdir -p $out/share/java $out/lib + cp -v dist/*.jar $out/share/java + cp -v lib-native/*.so lib-native/*.dylib $out/lib/ + ''; + + meta = { + description = "A Java/JNI library for using Unix Domain Sockets from Java"; + homepage = https://github.com/kohlschutter/junixsocket; + license = stdenv.lib.licenses.asl20; + platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; + }; +} |