diff options
author | volth <volth@volth.com> | 2018-03-19 03:33:13 +0000 |
---|---|---|
committer | volth <volth@volth.com> | 2018-03-19 04:08:12 +0000 |
commit | 94ff822eec9376f998a2e6f9255ab9643a53c860 (patch) | |
tree | 03edc2e5e243c535dc3eb8409fa5611953634d5f /pkgs/development/java-modules/jogl | |
parent | 50c004a91c5a6be121064eee320e2d72fcfc2ba3 (diff) |
jogl: init at 2.3.2
Diffstat (limited to 'pkgs/development/java-modules/jogl')
-rw-r--r-- | pkgs/development/java-modules/jogl/default.nix | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/pkgs/development/java-modules/jogl/default.nix b/pkgs/development/java-modules/jogl/default.nix new file mode 100644 index 0000000000000..03d5a05942fb9 --- /dev/null +++ b/pkgs/development/java-modules/jogl/default.nix @@ -0,0 +1,56 @@ +{ stdenv, fetchgit, makeWrapper, ant, jdk, git, xorg, udev }: + +{ + jogl_2_3_2 = + let + version = "2.3.2"; + + gluegen-src = fetchgit { + url = git://jogamp.org/srv/scm/gluegen.git; + rev = "v${version}"; + sha256 = "00hybisjwqs88p24dds652bzrwbbmhn2dpx56kp4j6xpadkp33d0"; + fetchSubmodules = true; + }; + in stdenv.mkDerivation rec { + name = "jogl-${version}"; + + src = fetchgit { + url = http://jogamp.org/srv/scm/jogl.git; + rev = "v${version}"; + sha256 = "0msi2gxiqm2yqwkmxqbh521xdrimw1fly20g890r357rcgj8fsn3"; + fetchSubmodules = true; + }; + + buildInputs = [ jdk ant git udev xorg.libX11 xorg.libXrandr xorg.libXcursor xorg.libXt xorg.libXxf86vm xorg.libXrender ]; + + buildPhase = '' + cp -r ${gluegen-src} $NIX_BUILD_TOP/gluegen + chmod -R +w $NIX_BUILD_TOP/gluegen + ( cd ../gluegen/make + ant ) + + ( cd make + + # force way to do disfunctional "ant -Dsetup.addNativeBroadcom=false" and disable dependency on raspberrypi drivers + # if arm/aarch64 support will be added, this block might be commented out on those platforms + # on x86 compiling with default "setup.addNativeBroadcom=true" leads to unsatisfied import "vc_dispmanx_resource_delete" in libnewt.so + cp build-newt.xml build-newt.xml.old + fgrep -v 'if="setup.addNativeBroadcom"' build-newt.xml.old > build-newt.xml + + ant ) + ''; + + installPhase = '' + mkdir -p $out/share/java + cp $NIX_BUILD_TOP/gluegen/build/gluegen-rt{,-natives-linux-amd64}.jar $out/share/java/ + cp $NIX_BUILD_TOP/jogl/build/jar/jogl-all{,-natives-linux-amd64}.jar $out/share/java/ + ''; + + meta = with stdenv.lib; { + description = "Java libraries for 3D Graphics, Multimedia and Processing"; + homepage = http://jogamp.org/; + license = licenses.bsd3; + platforms = [ "x86_64-linux" ]; + }; + }; +} |