diff --git a/pkgs/applications/editors/eclipse/build_with_jdk_compiler b/pkgs/applications/editors/eclipse/build_with_jdk_compiler new file mode 100644 index 00000000000..bac6fc035f1 --- /dev/null +++ b/pkgs/applications/editors/eclipse/build_with_jdk_compiler @@ -0,0 +1,22 @@ +--- a/build.xml 2008-03-02 14:34:05.000000000 +0100 ++++ b/build.xml 2008-03-02 14:34:57.000000000 +0100 +@@ -291,19 +291,6 @@ + + + +- +- +- +- +- +- +- +- +- +- +- +- +- + + + diff --git a/pkgs/applications/editors/eclipse/eclipse_classic.nix b/pkgs/applications/editors/eclipse/eclipse_classic.nix new file mode 100644 index 00000000000..9dba9e6a791 --- /dev/null +++ b/pkgs/applications/editors/eclipse/eclipse_classic.nix @@ -0,0 +1,50 @@ +args: with args; +let arch = if stdenv.system == "x86_64-linux" then "x86_64" + else if stdenv.system == "i686-linux" then "x86" + else throw "not supported system"; +in +args.stdenv.mkDerivation rec { + #name = "eclipse-classic-3.4M5"; + name = "eclipse-classic-3.3.1.1"; + + unpackPhase = "unzip \$src; set -x "; + buildInputs = [ unzip jdk gtk glib libXtst ant makeWrapper]; + + + patches=./build_with_jdk_compiler; + + buildPhase = "./build -os linux -ws gtk -arch ${arch}"; + + libraries = [gtk glib libXtst]; + + installPhase = " + t=\$out/share/${name} + ensureDir \$t \$out/bin + cd result + tar xfz linux-gtk-*.tar.gz + mv eclipse \$out + " + #copied from other eclipse expressions + +" rpath= + for i in \$libraries; do + rpath=\$rpath\${rpath:+:}\$i/lib + done + find \$out \\( -type f -a -perm +0100 \\) \\ + -print \\ + -exec patchelf --interpreter \"$(cat \$NIX_GCC/nix-support/dynamic-linker)\" \\ + --set-rpath \"\$rpath\" {} \\; + + # Make a wrapper script so that the proper JDK is found. + makeWrapper \$out/eclipse/eclipse \$out/bin/eclipse \\ + --prefix PATH \":\" \"\$jdk/bin\" \\ + --prefix LD_LIBRARY_PATH \":\" \"\$rpath\" + "; + + src = args.fetchurl { + #url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/eclipse/downloads/drops/S-3.4M5-200802071530/eclipse-sourceBuild-srcIncluded-3.4M5.zip; + #sha256 = "1w6fbpwkys65whygc045556772asggj24x8assnaba6nl70z00az"; + + url = http://download.micromata.de/eclipse/eclipse/downloads/drops/R-3.3.1.1-200710231652/eclipse-sourceBuild-srcIncluded-3.3.1.1.zip; + sha256 = "0n56i7ml816f839704qlkgs5ahl0iqgwc80kjq7n7g5rl9a4vhp4"; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4e8ef444163..c822a7d9cb9 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4761,6 +4761,14 @@ rec { dvdplusrwtools = dvdplusrwtoolsFun null; + # building eclipise from source + # experimental tested on x86_64-linux only + eclipse_classic_src = import ../applications/editors/eclipse/eclipse_classic.nix { + inherit fetchurl stdenv makeWrapper jdk unzip ant; + inherit (gtkLibs) gtk glib; + inherit (xlibs) libXtst; + }; + eclipse = plugins: import ../applications/editors/eclipse { inherit fetchurl stdenv makeWrapper jdk;