diff options
author | Miroslav Šulc <fordfrog@gentoo.org> | 2011-10-24 23:47:24 +0000 |
---|---|---|
committer | Miroslav Šulc <fordfrog@gentoo.org> | 2011-10-24 23:47:24 +0000 |
commit | 0b10316ec070a3dbaceb00fa3d46151d14189454 (patch) | |
tree | c55b8f7fcd5d6454e4041cc184805fe729773f88 /dev-util | |
parent | media-gfx/sweethome3d: removed ebuild depending on dev-java/netx (diff) | |
download | java-0b10316ec070a3dbaceb00fa3d46151d14189454.tar.gz java-0b10316ec070a3dbaceb00fa3d46151d14189454.tar.bz2 java-0b10316ec070a3dbaceb00fa3d46151d14189454.zip |
dev-util/netbeans: obsolete ebuilds moved from main tree to overlay
svn path=/java-overlay/; revision=8863
Diffstat (limited to 'dev-util')
16 files changed, 4023 insertions, 0 deletions
diff --git a/dev-util/netbeans/ChangeLog b/dev-util/netbeans/ChangeLog new file mode 100644 index 00000000..f7eeff56 --- /dev/null +++ b/dev-util/netbeans/ChangeLog @@ -0,0 +1,21 @@ +# ChangeLog for dev-util/netbeans +# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 +# $Header: $ + +*netbeans-6.9.1 (24 Oct 2011) +*netbeans-6.7.1 (24 Oct 2011) +*netbeans-6.5-r4 (24 Oct 2011) + + 24 Oct 2011; Miroslav Šulc <fordfrog@gentoo.org> + +files/6.5/all-visualweb.insync.JspxSerializer.java.patch, + +netbeans-6.5-r4.ebuild, +files/6.5/nbbuild_build.xml.patch, + +netbeans-6.7.1.ebuild, +files/6.5/nbbuild_templates_projectized.xml.patch, + +netbeans-6.9.1.ebuild, +files/6.7/nbbuild_build.xml.patch, + +files/6.7/nbbuild_templates_projectized.xml.patch, + +files/6.9/cnd.model.services-build.xml.patch, + +files/6.9/nbbuild_build.xml.patch, + +files/6.9/nbbuild_templates_projectized.xml.patch, + +files/6.9/netbeans-keychain.patch, +files/6.9/o.jruby.distro_disable.patch, + +metadata.xml: + Moved obsolete versions from main tree to overlay + diff --git a/dev-util/netbeans/Manifest b/dev-util/netbeans/Manifest new file mode 100644 index 00000000..bac58966 --- /dev/null +++ b/dev-util/netbeans/Manifest @@ -0,0 +1,22 @@ +AUX 6.5/all-visualweb.insync.JspxSerializer.java.patch 2256 RMD160 93e31f62559fb1c6e7f0888c97c3fe5a5c1b4ebb SHA1 e89e6cbbc086be6c7912c36284129ded4a9acf46 SHA256 9999f040396901e4779059c7cfbb4a86609b609120a69d68f6672ff2119bcada +AUX 6.5/nbbuild_build.xml.patch 878 RMD160 d1c94abc36c08efc829bfc2c970667d3339a798f SHA1 263d03b1fb9b0de2d24a04570e4e4f519f010731 SHA256 0e3af1266eb78ae509685417930ad6e024699db5d54bfe297b4a7d6a970294aa +AUX 6.5/nbbuild_templates_projectized.xml.patch 867 RMD160 f368e1f80e1e332e2886c95d023a9b25f456b4e8 SHA1 4cb2e905a07125afa714bfecdcbee0902e81f67b SHA256 388ac6d71ce9d85efc7ec55585ae12ff8607a7b9e6239455a1545033463bf811 +AUX 6.7/nbbuild_build.xml.patch 1989 RMD160 483d9301da88be90ec467c283cff0498f0e4de63 SHA1 3113a60c005eb84238cce17e9f927bee4ffb7a38 SHA256 e01b8cc5b25873e94da3310719ba51bbe40a0269d7af69a3f5596a773fe5b9a6 +AUX 6.7/nbbuild_templates_projectized.xml.patch 867 RMD160 eb3021fbc02eefc074315fe7ec8991f3210c6a1d SHA1 1f6f7da1fe055e3826195e29e13b0999be797e8b SHA256 558c52a2365a0605277aa49db271c54e7c93e3919c2e056610343816fd8451ec +AUX 6.9/cnd.model.services-build.xml.patch 909 RMD160 e33b41b5dc7e4fb1f1c9ee6a21a8bc3f707528db SHA1 47b2e417da01299ead492f1ec3e63975a8c46ac8 SHA256 a8ea9f7ac5e37a0e086fc00e7e40be84771f8943dcbbdad0fdc921a2017ba650 +AUX 6.9/nbbuild_build.xml.patch 2462 RMD160 7063d564dbe9f1eb22af201631918699a40637ee SHA1 9ab9eef8247337510f91656eafed75591e14fd53 SHA256 10d9b0677668711215797977f8766ca76b2f838ab4a27d85c3c8b2bc98b1bbda +AUX 6.9/nbbuild_templates_projectized.xml.patch 935 RMD160 4b11af335e901ba2392bee48a2cc3b1add8b31c5 SHA1 ffbad335f79b0d11f61447b7b3fd6715183ca94f SHA256 bfe90e3da56de91677ba193dac0a5ee3dbd68a6ae32b677c556c0b810e64044e +AUX 6.9/netbeans-keychain.patch 748 RMD160 04f61c66934cd7f8294684ddb6f907860cf76d57 SHA1 e7c578f9248384696d2686324ac7023573d9317c SHA256 1754a9c49d03d2abf1c2e0a07dcce66935d8f64c9e0e6ed52be28f20509afa07 +AUX 6.9/o.jruby.distro_disable.patch 1933 RMD160 703a2183fb5f28dc6b5e5ac6f3767b1675ea765e SHA1 398eecdf43e22932a8a052ca1e3fe9e4a40f4e49 SHA256 c5034e8ef935d6f228d9582775163d2134049b0eb283948c83bd2541078a1318 +DIST netbeans-6.5-200811100001-ml-src.zip 278956462 RMD160 e277c9c1a15687080099b29dba79ea1e57f8b1e3 SHA1 55f3f5c68dae371bd2b64f019adeba3e0b6d8a7b SHA256 31b76af6fde49bc80fe3b312b637025df74061c76fdb03ad5f6aafbb981aeff1 +DIST netbeans-6.5-l10n-20081119172200.tar.bz2 13540375 RMD160 909a119096ce1684860c176f11c3bef39e689e44 SHA1 84ebe0bd22ad2506122d2e0ca36ec2eadfd6b7b4 SHA256 c96be4b680045b9e7e452b004f4e321f46e9e5903f92adf17f993b0bba2bfd58 +DIST netbeans-6.7-l10n-20090626125342.tar.bz2 15425488 RMD160 57ef911b6a392a90e76a0dd9b34c877edab282e6 SHA1 4d0198746473d9013da1b0e8126e3299cb51d97d SHA256 1fa281d6f93dafa29978bd61ddada47eb0ba7b3877a64f659e73098c4c11d54b +DIST netbeans-6.7.1-200907230101-src.zip 292362632 RMD160 c1f661e6862efcf6e5fe4215f7bc975532781cf9 SHA1 d2082b8a55bac53e5e918f51886fbcbbd4828f2f SHA256 878ae7c812303dc114ddce9900e3a80247cf7e55d9678fc1f83f81b1c00ead23 +DIST netbeans-6.9.1-l10n.tar.bz2 13784896 RMD160 fdb7c26e03c134499dd424b6e2c1461cd9da49cb SHA1 8639587177ced3ea1e2765dd540516a60c04215f SHA256 4e58304f6e25a03a3c99d4bb7941a1bf7b237d01f30dc5a596f1d16db36c127d +DIST netbeans-6.9.1.tar.bz2 259331563 RMD160 02de5818b2daab5f1a0e2f081e7b1bd49ed0e854 SHA1 053836816ea372644945813f2e9362c267846831 SHA256 cd25640ab72556cc65eca0d789fd0bbe6168626097c1789bf13da23b264d386d +DIST netbeans-6.9.png 20011 RMD160 a941b71b571a9cd30c49446aef1bd4244e689465 SHA1 ebd2e748bb4bc29e667ead9a2fb717a9017f9405 SHA256 1d519f018ebeff6e29436c8492dbb266446bd0144fb5519b2ef6637664de6f4a +EBUILD netbeans-6.5-r4.ebuild 39583 RMD160 b5c3acb9f000914a5da808650e3fb527e4fc92a2 SHA1 4c12a402bec8ef2f7578732243cb6be8d551c466 SHA256 efb1c2a9c287c79a500986d8cb480254a57970a2dfa06885f9a645267c0e7384 +EBUILD netbeans-6.7.1.ebuild 42328 RMD160 a55ae0c65236fb635365e538a676c42ed10a554e SHA1 d4c674f551347e20b988f6ac19d2fdf686b00c2b SHA256 b80731a30923f00e607200c112c0a77785852b63266d3c6dd5b198233b4d01e2 +EBUILD netbeans-6.9.1.ebuild 49475 RMD160 be3de3a452680cd1bd16145c886ce5ff3015809e SHA1 24c712330e400d35ff87c1793f4f8ecf2cc8d0aa SHA256 0c476ced1b7dddc5c06bc51a01e27a76059e473c0c6cb76fe3404cbe13393537 +MISC ChangeLog 870 RMD160 669b512fa81c08fdc07fbe90dd177dced9e5be7a SHA1 d7801bcb376667ec7db273a5f5b959fde8032d6c SHA256 cf5dac26e85f05353b8b6c1334b2e877965ba9244a551c7a2cd6ea578550e7ba +MISC metadata.xml 1322 RMD160 04ba87bda7c1a2322721b78b5e071760be5686f7 SHA1 2a9a7b60c4da843a985ab38c0e5deb8654a62952 SHA256 2edbcc66e3e4449c48a6aae87e223c396acaf0a81483d2f7106ebf7a909c2af5 diff --git a/dev-util/netbeans/files/6.5/all-visualweb.insync.JspxSerializer.java.patch b/dev-util/netbeans/files/6.5/all-visualweb.insync.JspxSerializer.java.patch new file mode 100644 index 00000000..a09a229d --- /dev/null +++ b/dev-util/netbeans/files/6.5/all-visualweb.insync.JspxSerializer.java.patch @@ -0,0 +1,47 @@ +--- JspxSerializer.java.orig 2008-11-26 19:34:52.000000000 +0100 ++++ JspxSerializer.java 2008-11-26 19:36:19.000000000 +0100 +@@ -1381,7 +1381,7 @@ + int ch = source.charAt(i); + if (!XMLChar.isValid(ch)) { + if (++i < length) { +- surrogates(ch, source.charAt(i)); ++ surrogates(ch, source.charAt(i), true); + } else { + fatalError("The character '" + (char) ch + "' is an invalid XML character"); + } +@@ -1441,7 +1441,7 @@ + if (!XMLChar.isValid(ch)) { + // check if it is surrogate + if (++index <length) { +- surrogates(ch, text.charAt(index)); ++ surrogates(ch, text.charAt(index), true); + } else { + fatalError("The character '"+(char)ch+"' is an invalid XML character"); + } +@@ -1463,7 +1463,7 @@ + if (!XMLChar.isValid(ch)) { + // check if it is surrogate + if (++index <length) { +- surrogates(ch, text.charAt(index)); ++ surrogates(ch, text.charAt(index), true); + } else { + fatalError("The character '"+(char)ch+"' is an invalid XML character"); + } +@@ -1495,7 +1495,7 @@ + if (!XMLChar.isValid(ch)) { + // check if it is surrogate + if (++start <length) { +- surrogates(ch, chars[start]); ++ surrogates(ch, chars[start], true); + } else { + fatalError("The character '"+(char)ch+"' is an invalid XML character"); + } +@@ -1519,7 +1519,7 @@ + if (!XMLChar.isValid(ch)) { + // check if it is surrogate + if (++start <length) { +- surrogates(ch, chars[start]); ++ surrogates(ch, chars[start], true); + } else { + fatalError("The character '"+(char)ch+"' is an invalid XML character"); + } diff --git a/dev-util/netbeans/files/6.5/nbbuild_build.xml.patch b/dev-util/netbeans/files/6.5/nbbuild_build.xml.patch new file mode 100644 index 00000000..08ccf646 --- /dev/null +++ b/dev-util/netbeans/files/6.5/nbbuild_build.xml.patch @@ -0,0 +1,16 @@ +--- nbbuild/build.xml.orig 2008-10-21 19:01:16.000000000 +0200 ++++ nbbuild/build.xml 2008-10-21 19:01:41.000000000 +0200 +@@ -104,13 +104,6 @@ + <validate-hg-configuration root=".."/> + <taskdef name="deregisterexternalhook" classname="org.netbeans.nbbuild.extlibs.DeregisterExternalHook" classpath="build/antclasses"/> + <deregisterexternalhook root=".."/> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="build/antclasses"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="${nb_all}"> +- <include name="*/external/binaries-list"/> +- <include name="contrib/*/external/binaries-list"/> +- </manifest> +- </downloadbinaries> + + <echo message="Bootstrapping NetBeans-specific Ant extensions..."/> + <path id="bootstrap-cp"> diff --git a/dev-util/netbeans/files/6.5/nbbuild_templates_projectized.xml.patch b/dev-util/netbeans/files/6.5/nbbuild_templates_projectized.xml.patch new file mode 100644 index 00000000..2d547ef2 --- /dev/null +++ b/dev-util/netbeans/files/6.5/nbbuild_templates_projectized.xml.patch @@ -0,0 +1,15 @@ +--- nbbuild/templates/projectized.xml.orig 2008-10-21 19:20:12.000000000 +0200 ++++ nbbuild/templates/projectized.xml 2008-10-21 19:20:31.000000000 +0200 +@@ -71,12 +71,6 @@ + </target> + + <target name="build-init" depends="basic-init,jdk-5-check"> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="${nb_all}/nbbuild/nbantext.jar"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="."> +- <include name="external/binaries-list"/> +- </manifest> +- </downloadbinaries> + <property name="public.package.jar.dir" location="${nb_all}/nbbuild/build/public-package-jars"/> + <mkdir dir="${public.package.jar.dir}"/> + <property name="test.dist.dir" location="${nb_all}/nbbuild/build/testdist"/> diff --git a/dev-util/netbeans/files/6.7/nbbuild_build.xml.patch b/dev-util/netbeans/files/6.7/nbbuild_build.xml.patch new file mode 100644 index 00000000..88a8086f --- /dev/null +++ b/dev-util/netbeans/files/6.7/nbbuild_build.xml.patch @@ -0,0 +1,43 @@ +--- nbbuild/build.xml.orig 2009-04-30 11:54:57.000000000 +0200 ++++ nbbuild/build.xml 2009-04-30 11:55:52.000000000 +0200 +@@ -94,13 +94,6 @@ + <validate-hg-configuration root=".."/> + <taskdef name="deregisterexternalhook" classname="org.netbeans.nbbuild.extlibs.DeregisterExternalHook" classpath="build/antclasses"/> + <deregisterexternalhook root=".."/> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="build/antclasses"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="${nb_all}"> +- <include name="apisupport.harness/external/binaries-list"/> +- <include name="javahelp/external/binaries-list"/> +- </manifest> +- </downloadbinaries> + + <echo message="Bootstrapping NetBeans-specific Ant extensions..."/> + <path id="bootstrap-cp"> +@@ -147,12 +140,6 @@ + </jar> + </target> + <target name="-download-all-extbins" unless="ext.binaries.downloaded"> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="${nb_all}"> +- <include name="*/external/binaries-list"/> +- <include name="contrib/*/external/binaries-list"/> +- </manifest> +- </downloadbinaries> + <property name="ext.binaries.downloaded" value="true"/> + </target> + +@@ -1387,13 +1374,6 @@ + <include name="contrib/*/external/build.xml"/> + </fileset> + </subant> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="nbantext.jar"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}" clean="true"> +- <manifest dir="${nb_all}"> +- <include name="*/external/binaries-list"/> +- <include name="contrib/*/external/binaries-list"/> +- </manifest> +- </downloadbinaries> + </target> + + <target name="-real-clean" depends="-cleanall,localclean,-clean-external"> diff --git a/dev-util/netbeans/files/6.7/nbbuild_templates_projectized.xml.patch b/dev-util/netbeans/files/6.7/nbbuild_templates_projectized.xml.patch new file mode 100644 index 00000000..67244657 --- /dev/null +++ b/dev-util/netbeans/files/6.7/nbbuild_templates_projectized.xml.patch @@ -0,0 +1,15 @@ +--- nbbuild/templates/projectized.xml.orig 2009-04-30 11:09:18.049017661 +0200 ++++ nbbuild/templates/projectized.xml 2009-04-30 11:09:29.295016465 +0200 +@@ -71,12 +71,6 @@ + </target> + + <target name="build-init" depends="basic-init,jdk-5-check"> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="${nb_all}/nbbuild/nbantext.jar"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="."> +- <include name="external/binaries-list"/> +- </manifest> +- </downloadbinaries> + <property name="public.package.jar.dir" location="${nb_all}/nbbuild/build/public-package-jars"/> + <mkdir dir="${public.package.jar.dir}"/> + <property name="test.dist.dir" location="${nb_all}/nbbuild/build/testdist"/> diff --git a/dev-util/netbeans/files/6.9/cnd.model.services-build.xml.patch b/dev-util/netbeans/files/6.9/cnd.model.services-build.xml.patch new file mode 100644 index 00000000..3955904e --- /dev/null +++ b/dev-util/netbeans/files/6.9/cnd.model.services-build.xml.patch @@ -0,0 +1,18 @@ +--- cnd.model.services/nbproject/project.xml~ 2010-07-28 23:10:26.000000000 +0100 ++++ cnd.model.services/nbproject/project.xml 2011-01-21 17:54:19.000000000 +0000 +@@ -131,6 +131,15 @@ + <specification-version>6.26</specification-version> + </run-dependency> + </dependency> ++ <dependency> ++ <code-name-base>org.netbeans.modules.lexer</code-name-base> ++ <build-prerequisite/> ++ <compile-dependency/> ++ <run-dependency> ++ <release-version>2</release-version> ++ <specification-version>1.26</specification-version> ++ </run-dependency> ++ </dependency> + </module-dependencies> + <friend-packages> + <friend>com.microchip.mplab.debugger.mdb</friend> diff --git a/dev-util/netbeans/files/6.9/nbbuild_build.xml.patch b/dev-util/netbeans/files/6.9/nbbuild_build.xml.patch new file mode 100644 index 00000000..54958e2d --- /dev/null +++ b/dev-util/netbeans/files/6.9/nbbuild_build.xml.patch @@ -0,0 +1,53 @@ +--- nbbuild/build.xml.orig 2010-06-22 18:39:18.000000000 +0200 ++++ nbbuild/build.xml 2010-06-22 19:05:03.000000000 +0200 +@@ -85,13 +85,6 @@ + <validate-hg-configuration root=".."/> + <taskdef name="deregisterexternalhook" classname="org.netbeans.nbbuild.extlibs.DeregisterExternalHook" classpath="build/antclasses"/> + <deregisterexternalhook root=".."/> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="build/antclasses"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="${nb_all}"> +- <include name="apisupport.harness/external/binaries-list"/> +- <include name="javahelp/external/binaries-list"/> +- </manifest> +- </downloadbinaries> + + <echo message="Bootstrapping NetBeans-specific Ant extensions..."/> + <path id="bootstrap-cp"> +@@ -124,12 +117,6 @@ + + <target name="download-all-extbins" unless="ext.binaries.downloaded" depends="bootstrap"> + <echo>Downloading external binaries (*/external/ directories)...</echo> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="${nb_all}"> +- <include name="*/external/binaries-list"/> +- <include name="contrib/*/external/binaries-list"/> +- </manifest> +- </downloadbinaries> + <property name="ext.binaries.downloaded" value="true"/> + </target> + +@@ -142,9 +129,6 @@ + <map from="${nb_all}/" to=""/> + <globmapper from="*" to="*/external/binaries-list"/> + </pathconvert> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="${nb_all}" includes="${modules.binaries-list}"/> +- </downloadbinaries> + </target> + + <target name="init-module-list" depends="bootstrap,init-tasks"> +@@ -1064,13 +1048,6 @@ + <include name="contrib/*/external/build.xml"/> + </fileset> + </subant> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="nbantext.jar"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}" clean="true"> +- <manifest dir="${nb_all}"> +- <include name="*/external/binaries-list"/> +- <include name="contrib/*/external/binaries-list"/> +- </manifest> +- </downloadbinaries> + </target> + + <target name="-real-clean" depends="-cleanall,localclean,-clean-external"> diff --git a/dev-util/netbeans/files/6.9/nbbuild_templates_projectized.xml.patch b/dev-util/netbeans/files/6.9/nbbuild_templates_projectized.xml.patch new file mode 100644 index 00000000..e2f411c5 --- /dev/null +++ b/dev-util/netbeans/files/6.9/nbbuild_templates_projectized.xml.patch @@ -0,0 +1,15 @@ +--- nbbuild/templates/projectized.xml.orig 2010-06-22 19:41:31.000000000 +0200 ++++ nbbuild/templates/projectized.xml 2010-06-22 19:41:44.000000000 +0200 +@@ -205,12 +205,6 @@ + + <!-- See: http://wiki.netbeans.org/wiki/view/DevFaqExternalLibrariesUpdated --> + <target name="-release.files" depends="projectized-common.-release.files"> +- <taskdef name="downloadbinaries" classname="org.netbeans.nbbuild.extlibs.DownloadBinaries" classpath="${nb_all}/nbbuild/nbantext.jar"/> +- <downloadbinaries cache="${binaries.cache}" server="${binaries.server}"> +- <manifest dir="."> +- <include name="external/binaries-list"/> +- </manifest> +- </downloadbinaries> + <taskdef name="releasefilesextra" classname="org.netbeans.nbbuild.extlibs.ReleaseFilesExtra" classpath="${nb_all}/nbbuild/nbantext.jar"/> + <releasefilesextra property="release.files.extra"/> + </target> diff --git a/dev-util/netbeans/files/6.9/netbeans-keychain.patch b/dev-util/netbeans/files/6.9/netbeans-keychain.patch new file mode 100644 index 00000000..86c38508 --- /dev/null +++ b/dev-util/netbeans/files/6.9/netbeans-keychain.patch @@ -0,0 +1,23 @@ +--- ide/launcher/unix/netbeans.orig 2010-07-17 20:08:48.778263924 +0200 ++++ ide/launcher/unix/netbeans 2010-07-17 20:11:28.547222625 +0200 +@@ -169,6 +169,20 @@ + then + sh=/bin/bash + fi ++ keychain=`which keychain` ++ if [ -n "$keychain" ]; then ++ $keychain -q ++ . $HOME/.keychain/$HOSTNAME-sh ++ if [ -e $userdir/keychain-keys.txt ]; then ++ for key in `cat $userdir/keychain-keys.txt`; do ++ SSH_ASKPASS=`which x11-ssh-askpass` ++ export SSH_ASKPASS ++ if [ -n "$key" ]; then ++ keychain $key ++ fi ++ done ++ fi ++ fi + if [ "${founduserdir}" = "yes" ]; then + exec $sh "$nbexec" "$@" + else diff --git a/dev-util/netbeans/files/6.9/o.jruby.distro_disable.patch b/dev-util/netbeans/files/6.9/o.jruby.distro_disable.patch new file mode 100644 index 00000000..a62cfbe2 --- /dev/null +++ b/dev-util/netbeans/files/6.9/o.jruby.distro_disable.patch @@ -0,0 +1,52 @@ +diff --git nbbuild/cluster.properties b/nbbuild/cluster.properties +--- nbbuild/cluster.properties ++++ nbbuild/cluster.properties +@@ -915,12 +915,10 @@ + nb.cluster.ide,\ + nb.cluster.harness + nb.cluster.ruby=\ +- glassfish.jruby,\ + jellytools.ruby,\ + libs.jrubyparser,\ + libs.yydebug,\ + o.jruby,\ +- o.jruby.distro,\ + o.kxml2,\ + o.rubyforge.debugcommons,\ + ruby,\ +diff --git ruby.kit/nbproject/project.xml b/ruby.kit/nbproject/project.xml +--- ruby.kit/nbproject/project.xml ++++ ruby.kit/nbproject/project.xml +@@ -56,6 +56,7 @@ + <specification-version>0.114</specification-version> + </run-dependency> + </dependency> ++ <!-- + <dependency> + <code-name-base>org.jruby.distro</code-name-base> + <run-dependency> +@@ -63,6 +64,7 @@ + <specification-version>0.115</specification-version> + </run-dependency> + </dependency> ++ --> + <dependency> + <code-name-base>org.kxml2</code-name-base> + <run-dependency> +@@ -76,6 +78,7 @@ + <specification-version>1.4</specification-version> + </run-dependency> + </dependency> ++ <!-- + <dependency> + <code-name-base>org.netbeans.modules.glassfish.jruby</code-name-base> + <run-dependency> +@@ -83,6 +86,7 @@ + <specification-version>1.0</specification-version> + </run-dependency> + </dependency> ++ --> + <dependency> + <code-name-base>org.netbeans.modules.gsf.codecoverage</code-name-base> + <build-prerequisite/> + diff --git a/dev-util/netbeans/metadata.xml b/dev-util/netbeans/metadata.xml new file mode 100644 index 00000000..7eaf536e --- /dev/null +++ b/dev-util/netbeans/metadata.xml @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>dev-tools</herd> + <herd>java</herd> + <maintainer> + <email>fordfrog@gentoo.org</email> + <name>Miroslav Šulc</name> + </maintainer> + <longdescription> +NetBeans is dedicated to providing rock solid software development products (NetBeans IDE, NetBeans Platform) that address the needs +of developers, users and the businesses who rely on NetBeans as a basis for their products. NetBeans is also a vibrant community +where people from just about any country you can think of, have the ability ask questions, give advice, make a wide variety of +contributions and ultimately share in the success of our products. You will find students on our mailing list, developers from top +companies and individuals looking to sharpen their skills. + +In June of 2000 NetBeans was made Open Source by Sun Microsystems who remains the project sponsor. Today two products exist: the +NetBeans IDE and NetBeans Platform. Both products are free for commercial and noncommercial use. The source code to both are available +to anyone, to reuse as they see fit, under the terms of use. + </longdescription> + <use> + <flag name="keychain">enables support for keychain in netbeans start script</flag> + </use> +</pkgmetadata> diff --git a/dev-util/netbeans/netbeans-6.5-r4.ebuild b/dev-util/netbeans/netbeans-6.5-r4.ebuild new file mode 100644 index 00000000..5fbdaff0 --- /dev/null +++ b/dev-util/netbeans/netbeans-6.5-r4.ebuild @@ -0,0 +1,1095 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/netbeans/netbeans-6.5-r4.ebuild,v 1.5 2010/06/22 18:41:49 arfrever Exp $ + +EAPI="2" +WANT_SPLIT_ANT="true" +inherit eutils java-pkg-2 java-ant-2 + +DESCRIPTION="NetBeans IDE for Java" +HOMEPAGE="http://www.netbeans.org" + +SLOT="6.5" +SRC_URI="http://download.netbeans.org/netbeans/6.5/final/zip/netbeans-6.5-200811100001-ml-src.zip + http://dev.gentoo.org/~fordfrog/distfiles/netbeans-6.5-l10n-20081119172200.tar.bz2" + +LICENSE="|| ( CDDL GPL-2-with-linking-exception )" +KEYWORDS="~amd64 ~x86" + +# NOTE: ruby support is currently disabled as we are not able to build it because we currently do not have support +# for putting tools.jar on ant classpath. +IUSE_NETBEANS_MODULES=" + +netbeans_modules_apisupport + netbeans_modules_cnd + netbeans_modules_groovy + netbeans_modules_gsf + +netbeans_modules_harness + +netbeans_modules_ide + netbeans_modules_identity + netbeans_modules_j2ee + +netbeans_modules_java + netbeans_modules_mobility + +netbeans_modules_nb + netbeans_modules_php + netbeans_modules_profiler + netbeans_modules_soa + netbeans_modules_visualweb + netbeans_modules_webcommon + +netbeans_modules_websvccommon + netbeans_modules_xml" +IUSE_LINGUAS=" + linguas_de + linguas_es + linguas_fr + linguas_it + linguas_ja + linguas_pl + linguas_pt_BR + linguas_ru + linguas_sq + linguas_tr + linguas_zh_CN + linguas_zh_TW" +IUSE="debug doc ${IUSE_NETBEANS_MODULES} ${IUSE_LINGUAS}" + +RDEPEND=">=virtual/jdk-1.5 + java-virtuals/jdk-with-com-sun + >=dev-java/ant-core-1.7.1_beta2 + netbeans_modules_gsf? ( + dev-java/bytelist:0 + dev-java/jvyamlb:0 + ) + netbeans_modules_harness? ( + >=dev-java/javahelp-2:0 + ) + netbeans_modules_ide? ( + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-net-1.4:0 + >=dev-java/flyingsaucer-7:0 + >=dev-java/freemarker-2.3.8:2.3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/jaxb-2:2 + >=dev-java/jdbc-mysql-5.1:0 + >=dev-java/jdbc-postgresql-8.3_p603:0 + >=dev-java/jsch-0.1.24:0 + dev-java/jsr173:0 + >=dev-java/lucene-2.3.2:2.3 + dev-java/sun-jaf:0 + ~dev-java/tomcat-servlet-api-3:2.2 + >=dev-java/xerces-2.8.1:2 + >=dev-vcs/subversion-1.5:0[java] + ) + netbeans_modules_j2ee? ( + >=dev-java/antlr-2.7.7:0[java] + >=dev-java/asm-3.1:3 + dev-java/commons-beanutils:1.7 + dev-java/commons-collections:0 + dev-java/commons-digester:0 + >=dev-java/commons-fileupload-1:0 + >=dev-java/commons-logging-1.1:0 + dev-java/commons-validator:0 + >=dev-java/httpunit-1.6:0 + dev-java/jakarta-jstl:0 + >=dev-java/jakarta-oro-2:2.0 + dev-java/jdom:1.0 + dev-java/rome:0 + ) + netbeans_modules_java? ( + >=dev-java/ant-1.7:0 + >=dev-java/antlr-2.7.7:0[java] + dev-java/asm:2.2 + >=dev-java/beansbinding-1.2.1:0 + >=dev-java/cglib-2.1:2.1 + dev-java/commons-collections:0 + >=dev-java/dom4j-1.6:1 + dev-java/fastinfoset:0 + dev-java/glassfish-persistence:0 + dev-java/glassfish-transaction-api:0 + dev-java/javassist:3 + dev-java/jax-ws:2 + dev-java/jax-ws-api:2 + dev-java/jsr181:0 + dev-java/jsr250:0 + dev-java/jsr67:0 + dev-java/jtidy:0 + >=dev-java/junit-3.8.2:0 + dev-java/saaj:0 + dev-java/sjsxp:0 + dev-java/stax-ex:0 + dev-java/xmlstreambuffer:0 + ) + netbeans_modules_mobility? ( + >=dev-java/ant-contrib-1.0_beta:0 + dev-java/bcprov:0 + >=dev-java/commons-codec-1.3:0 + dev-java/commons-httpclient:3 + dev-java/jdom:1.0 + >=dev-java/proguard-4.2:0 + ) + netbeans_modules_php? ( + >=dev-java/javacup-0.11a_beta20060608 + ) + netbeans_modules_soa? ( + dev-java/jsr173:0 + dev-java/wsdl4j:0 + dev-java/xml-xmlbeans:1 + ) + netbeans_modules_xml? ( + >=dev-java/commons-jxpath-1.1:0 + dev-java/prefuse:2006 + )" + +# These are packages from RDEPEND that are not currently in the tree but they are either in java-overlay or java-experimental +# netbeans_modules_ide +# >=dev-java/ini4j-0.2.6:0 +# netbeans_modules_java: +# >=dev-java/appframework-1:0 +# dev-java/ehcache:1.4 +# dev-java/hibernate:3.2 +# dev-java/hibernate-annotations:3.2 +# dev-java/hibernate-entitymanager:3.2 +# dev-java/jdbc2-stdext:0 +# dev-java/toplink-essentials:0 + +DEPEND=">=virtual/jdk-1.5 + java-virtuals/jdk-with-com-sun + app-arch/unzip + >=dev-java/ant-core-1.7.1_beta2 + >=dev-java/ant-nodeps-1.7.1 + >=dev-java/javahelp-2:0 + dev-java/jsr223:0 + >=dev-java/junit-4:4 + >=dev-java/swing-layout-1:1 + doc? ( + dev-java/ant-trax:0 + ) + netbeans_modules_gsf? ( + dev-java/bytelist:0 + >=dev-java/flute-1.3:0 + dev-java/jvyamlb:0 + >=dev-java/sac-1.3:0 + ) + netbeans_modules_ide? ( + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-net-1.4:0 + >=dev-java/flyingsaucer-7:0 + >=dev-java/freemarker-2.3.8:2.3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/javacc-3.2:0 + >=dev-java/jaxb-2:2 + >=dev-java/jdbc-mysql-5.1:0 + >=dev-java/jdbc-postgresql-8.3_p603:0 + >=dev-java/jsch-0.1.24:0 + dev-java/jsr173:0 + >=dev-java/lucene-2.3.2:2.3 + dev-java/sun-jaf:0 + ~dev-java/tomcat-servlet-api-3:2.2 + >=dev-java/xerces-2.8.1:2 + >=dev-vcs/subversion-1.5:0[java] + ) + netbeans_modules_j2ee? ( + >=dev-java/commons-fileupload-1:0 + >=dev-java/httpunit-1.6:0 + dev-java/jakarta-jstl:0 + dev-java/tomcat-servlet-api:2.3 + ) + netbeans_modules_java? ( + >=dev-java/beansbinding-1.2.1:0 + >=dev-java/cglib-2.1:2.1 + >=dev-java/junit-3.8.2:0 + ) + netbeans_modules_mobility? ( + >=dev-java/ant-contrib-1.0_beta:0 + dev-java/bcprov:0 + >=dev-java/commons-codec-1.3:0 + dev-java/commons-httpclient:3 + >=dev-java/jakarta-slide-webdavclient-2.1:0 + dev-java/jdom:1.0 + >=dev-java/proguard-4.2:0 + ) + netbeans_modules_php? ( + >=dev-java/javacup-0.11a_beta20060608 + ) + netbeans_modules_soa? ( + >=dev-java/itext-2:0 + ) + netbeans_modules_xml? ( + >=dev-java/commons-jxpath-1.1:0 + dev-java/prefuse:2006 + )" + +# These are packages from DEPEND that are not currently in the tree but they are either in java-overlay or java-experimental +# no use flag +# >=dev-java/jna-3:0 +# netbeans_modules_ide +# >=dev-java/jaxb-tools-2:2 +# >=dev-java/ini4j-0.2.6:0 +# netbeans_modules_java +# >=dev-java/appframework-1:0 + +S="${WORKDIR}" +BUILDDESTINATION="${S}/nbbuild/netbeans" +ENTERPRISE="5" +IDE_VERSION="10" +PLATFORM="9" +MY_FDIR="${FILESDIR}/${SLOT}" +DESTINATION="/usr/share/netbeans-${SLOT}" +JAVA_PKG_BSFIX="off" + +pkg_setup() { + # direct deps: harness, ide, java + if use netbeans_modules_apisupport && ! ( \ + use netbeans_modules_harness && \ + use netbeans_modules_ide && \ + use netbeans_modules_java && \ + use netbeans_modules_websvccommon ) ; then + eerror "'apisupport' module requires 'harness', 'ide', 'java' and 'websvccommon' modules" + die + fi + + local need_apisupport="" + local need_groovy="" + local need_gsf="" + local need_harness="" + local need_ide="" + local need_j2ee="" + local need_java="" + local need_websvccommon="" + local need_xml="" + + # direct deps: ide + if use netbeans_modules_cnd ; then + need_ide="1" + fi + + # direct deps: gsf, ide, java + if use netbeans_modules_groovy ; then + need_gsf="1" + need_ide="1" + need_java="1" + need_websvccommon="1" + fi + + # direct deps: ide + if use netbeans_modules_gsf ; then + need_ide="1" + fi + + # direct deps: gsf, ide, j2ee, java + if use netbeans_modules_identity ; then + need_groovy="1" + need_gsf="1" + need_ide="1" + need_j2ee="1" + need_java="1" + need_websvccommon="1" + fi + + # direct deps: groovy, gsf, ide, java + if use netbeans_modules_j2ee ; then + need_groovy="1" + need_gsf="1" + need_ide="1" + need_java="1" + need_websvccommon="1" + fi + + # direct deps: ide, websvccommon + if use netbeans_modules_java ; then + need_ide="1" + need_websvccommon="1" + fi + + # because of bug http://www.netbeans.org/issues/show_bug.cgi?id=151535 'j2ee' cluster is also + # needed to build 'mobility' cluster + # because of bug http://www.netbeans.org/issues/show_bug.cgi?id=151538 'apisupport' cluster is also + # needed to build 'mobility' cluster + # direct deps: apisupport, ide, j2ee, java + if use netbeans_modules_mobility ; then + need_apisupport="1" + need_groovy="1" + need_gsf="1" + need_harness="1" + need_ide="1" + need_j2ee="1" + need_java="1" + need_websvccommon="1" + fi + + # direct deps: harness, ide + if use netbeans_modules_nb ; then + need_harness="1" + need_ide="1" + fi + + # direct deps: gsf, ide, websvccommon + if use netbeans_modules_php ; then + need_gsf="1" + need_ide="1" + need_websvccommon="1" + fi + + # direct deps: gsf, ide, j2ee, java + if use netbeans_modules_profiler ; then + need_groovy="1" + need_gsf="1" + need_ide="1" + need_j2ee="1" + need_java="1" + need_websvccommon="1" + fi + + # direct deps: gsf, ide + #if use netbeans_modules_ruby && ! ( use netbeans_modules_gsf && use netbeans_modules_ide ) ; then + # eerror "'ruby' module requires 'gsf' and 'ide' module" + # die + #fi + + # direct deps: gsf, ide, j2ee, java, xml + if use netbeans_modules_soa ; then + need_groovy="1" + need_gsf="1" + need_ide="1" + need_j2ee="1" + need_java="1" + need_websvccommon="1" + need_xml="1" + fi + + # direct deps: gsf, ide, j2ee, java + if use netbeans_modules_visualweb ; then + need_groovy="1" + need_gsf="1" + need_ide="1" + need_j2ee="1" + need_java="1" + need_websvccommon="1" + fi + + # direct deps: gsf, ide + if use netbeans_modules_webcommon ; then + need_gsf="1" + need_ide="1" + fi + + # direct deps: ide + if use netbeans_modules_websvccommon ; then + need_ide="1" + fi + + # direct deps: ide + if use netbeans_modules_xml ; then + need_ide="1" + fi + + local missing="" + [ -n "${need_apisupport}" ] && ! use netbeans_modules_apisupport && missing="${missing} apisupport" + [ -n "${need_groovy}" ] && ! use netbeans_modules_groovy && missing="${missing} groovy" + [ -n "${need_gsf}" ] && ! use netbeans_modules_gsf && missing="${missing} gsf" + [ -n "${need_harness}" ] && ! use netbeans_modules_harness && missing="${missing} harness" + [ -n "${need_ide}" ] && ! use netbeans_modules_ide && missing="${missing} ide" + [ -n "${need_j2ee}" ] && ! use netbeans_modules_j2ee && missing="${missing} j2ee" + [ -n "${need_java}" ] && ! use netbeans_modules_java && missing="${missing} java" + [ -n "${need_websvccommon}" ] && ! use netbeans_modules_websvccommon && missing="${missing} websvccommon" + [ -n "${need_xml}" ] && ! use netbeans_modules_xml && missing="${missing} xml" + + if [ -n "${missing}" ] ; then + eerror "You need to add these modules to NETBEANS_MODULES because they are needed by modules you have selected" + eerror " Missing NETBEANS_MODULES: ${missing}" + die "Missing NETBEANS_MODULES" + fi + + if ! use netbeans_modules_nb ; then + ewarn "You are building netbeans without 'nb' module, this way you will build only specified" + ewarn "clusters, not a functional IDE. In case you want functional IDE, add 'nb' to NETBEANS_MODULES." + epause 5 + fi + + java-pkg-2_pkg_setup +} + +src_prepare () { + epatch "${FILESDIR}"/${SLOT}/nbbuild_build.xml.patch \ + "${FILESDIR}"/${SLOT}/nbbuild_templates_projectized.xml.patch + + if use netbeans_modules_visualweb ; then + cd "${S}"/visualweb.insync/src/org/netbeans/modules/visualweb/insync/markup || die + epatch "${FILESDIR}"/${SLOT}/all-visualweb.insync.JspxSerializer.java.patch + fi + + # Clean up nbbuild + einfo "Removing prebuilt *.class files from nbbuild" + find "${S}" -name "*.class" -delete + + if [ -z "${JAVA_PKG_NB_USE_BUNDLED}" ] ; then + place_unpack_symlinks + fi + + local tmpfile="${T}/bundled.txt" + + einfo "Removing rest of the bundled jars..." + find "${S}" -type f -name "*.jar" > ${tmpfile} || die "Cannot put jars in tmp file" + + # We do not remove the jars that we ar not able to unbundle atm + # More info at: https://overlays.gentoo.org/proj/java/wiki/Netbeans_Maintenance + + sed -e "/libs\.jna\/external\/jna-3\.0\.2\.jar/d" -i ${tmpfile} || die + + if use netbeans_modules_groovy ; then + sed -e "/groovy\.editor\/external\/groovy-all-1\.5\.6\.jar/d" -i ${tmpfile} || die + fi + + if use netbeans_modules_ide ; then + sed -e "/libs\.jaxb\/external\/jaxb-xjc\.jar/d" -i ${tmpfile} || die + sed -e "/libs\.jaxb\/external\/jaxb-impl\.jar/d" -i ${tmpfile} || die + sed -e "/libs\.svnClientAdapter\/external\/svnClientAdapter-1\.4\.0\.jar/d" -i ${tmpfile} || die + sed -e "/o\.apache\.xml\.resolver\/external\/resolver-1\.2\.jar/d" -i ${tmpfile} || die + sed -e "/libs\.javacapi\/external\/javac-api-nb-7\.0-b07\.jar/d" -i ${tmpfile} || die + sed -e "/httpserver\/external\/tomcat-webserver-3\.2\.jar/d" -i ${tmpfile} || die + sed -e "/libs\.ini4j\/external\/ini4j-0\.2\.6\.jar/d" -i ${tmpfile} || die + fi + + if use netbeans_modules_j2ee ; then + sed -e "/j2eeapis\/external\/jsr88javax\.jar/d" -i ${tmpfile} || die + sed -e "/servletjspapi\/external\/servlet2\.5-jsp2\.1-api\.jar/d" -i ${tmpfile} || die + sed -e "/web\.jspparser\/external\/glassfish-jspparser-2\.0\.jar/d" -i ${tmpfile} || die + sed -e "/j2ee\.sun\.appsrv81\/external\/appservapis-2\.0\.58\.3\.jar/d" -i ${tmpfile} || die + sed -e "/j2ee\.sun\.appsrv81\/external\/org-netbeans-modules-j2ee-sun-appsrv81\.jar/d" -i ${tmpfile} || die + sed -e "/libs\.glassfish_logging\/external\/glassfish-logging-2\.0\.jar/d" -i ${tmpfile} || die + sed -e "/spring\.webmvc\/external\/spring-webmvc-2\.5\.jar/d" -i ${tmpfile} || die + sed -e "/web\.jsf\/external\/shale-remoting-1\.0\.4\.jar/d" -i ${tmpfile} || die + sed -e "/websvc\.restlib\/external\/jsr311-api-doc\.jar/d" -i ${tmpfile} || die + sed -e "/websvc\.restlib\/external\/jersey-api-doc\.jar/d" -i ${tmpfile} || die + fi + + if use netbeans_modules_java ; then + sed -e "/libs\.javacimpl\/external\/javac-impl-nb-7\.0-b07\.jar/d" -i ${tmpfile} || die + sed -e "/j2ee\.toplinklib\/external\/glassfish-persistence-v2ur1-build-09d\.jar/d" -i ${tmpfile} || die + sed -e "/junit\/external\/Ant-1\.7\.1-binary-patch-72080\.jar/d" -i ${tmpfile} || die + sed -e "/libs\.springframework\/external\/spring-2\.5\.jar/d" -i ${tmpfile} || die + sed -e "/junit\/external\/junit-4\.5-src\.jar/d" -i ${tmpfile} || die + sed -e "/swingapp\/external\/appframework-1\.0\.3\.jar/d" -i ${tmpfile} || die + fi + + if use netbeans_modules_mobility ; then + sed -e "/o\.n\.mobility\.lib\.activesync\/external\/nbactivesync-5\.0\.jar/d" -i ${tmpfile} || die + sed -e "/j2me\.cdc\.project\.bdj\/external\/security\.jar/d" -i ${tmpfile} || die + sed -e "/j2me\.cdc\.project\.bdj\/external\/bdjo\.jar/d" -i ${tmpfile} || die + sed -e "/j2me\.cdc\.project\.ricoh\/external\/RicohAntTasks-2\.0\.jar/d" -i ${tmpfile} || die + sed -e "/mobility\.databindingme\/lib\/netbeans_databindingme\.jar/d" -i ${tmpfile} || die + sed -e "/mobility\.databindingme\/lib\/netbeans_databindingme_pim\.jar/d" -i ${tmpfile} || die + sed -e "/mobility\.databindingme\/lib\/netbeans_databindingme_svg\.jar/d" -i ${tmpfile} || die + sed -e "/mobility\.deployment\.webdav\/external\/jakarta-slide-ant-webdav-2\.1\.jar/d" -i ${tmpfile} || die + sed -e "/mobility\.j2meunit\/external\/jmunit4cldc11-1\.2\.1\.jar/d" -i ${tmpfile} || die + sed -e "/mobility\.j2meunit\/external\/jmunit4cldc10-1\.2\.1\.jar/d" -i ${tmpfile} || die + sed -e "/svg\.perseus\/external\/perseus-nb-1\.0\.jar/d" -i ${tmpfile} || die + sed -e "/vmd\.components\.midp\/netbeans_midp_components_basic\/dist\/netbeans_midp_components_basic\.jar/d" -i ${tmpfile} || die + sed -e "/vmd\.components\.midp\.pda\/netbeans_midp_components_pda\/dist\/netbeans_midp_components_pda\.jar/d" -i ${tmpfile} || die + sed -e "/vmd\.components\.midp\.wma\/netbeans_midp_components_wma\/dist\/netbeans_midp_components_wma\.jar/d" -i ${tmpfile} || die + sed -e "/vmd\.components\.svg\/nb_svg_midp_components\/dist\/nb_svg_midp_components\.jar/d" -i ${tmpfile} || die + fi + + if use netbeans_modules_soa ; then + sed -e "/bpel\.debugger\.bdi\/external\/bdi-1\.0\.0\.jar/d" -i ${tmpfile} || die + sed -e "/o\.n\.soa\.libs\.jgo\/external\/JGoLayout5\.1\.jar/d" -i ${tmpfile} || die + sed -e "/o\.n\.soa\.libs\.jgo\/external\/JGo5\.1\.jar/d" -i ${tmpfile} || die + sed -e "/o\.n\.soa\.libs\.jgo\/external\/JGoInstruments5\.1\.jar/d" -i ${tmpfile} || die + fi + + if use netbeans_modules_xml ; then + sed -e "/libs\.jxpath\/external\/jxpath1\.1\.jar/d" -i ${tmpfile} || die + sed -e "/o\.n\.soa\.libs\.jbiadmincommon\/external\/jbi-admin-common\.jar/d" -i ${tmpfile} || die + fi +} + +src_compile() { + local antflags="-Dstop.when.broken.modules=true -Dpermit.jdk6.builds=true" + + if use debug; then + antflags="${antflags} -Dbuild.compiler.debug=true" + antflags="${antflags} -Dbuild.compiler.deprecation=true" + else + antflags="${antflags} -Dbuild.compiler.deprecation=false" + fi + + local clusters="-Dnb.clusters.list=nb.cluster.platform" + for netbeans_module in ${IUSE_NETBEANS_MODULES} ; do + netbeans_module=${netbeans_module/[+]/} + local short_netbeans_module=${netbeans_module/netbeans_modules_/} + use ${netbeans_module} && clusters="${clusters},nb.cluster.${short_netbeans_module}" + done + #TODO use netbeans_modules_ruby && clusters="${clusters},nb.cluster.ruby" + + local build_target="" + if use netbeans_modules_nb ; then + build_target="build-nozip" + else + build_target="build-clusters" + mkdir -p "${BUILDDESTINATION}" || die + fi + + # Fails to compile + java-pkg_filter-compiler ecj-3.2 ecj-3.3 ecj-3.4 + + # Build the clusters + #use netbeans_modules_ruby && addpredict /root/.jruby + ANT_TASKS="ant-nodeps" + ANT_OPTS="-Xmx1g -Djava.awt.headless=true" eant ${antflags} ${clusters} -f nbbuild/build.xml ${build_target} + + local locales="" + for lang in ${IUSE_LINGUAS} ; do + local mylang=${lang/linguas_/} + if use ${lang} ; then + if [ -z "${locales}" ] ; then + locales="${mylang}" + else + locales="${locales},${mylang}" + fi + fi + done + + if [ -n "${locales}" ] ; then + einfo "Compiling support for locales: ${locales}" + eant ${antflags} -Dlocales=${locales} -Ddist.dir=../nbbuild/netbeans -Dnbms.dir="" -Dnbms.dist.dir="" \ + -f l10n/build.xml build + fi + + # Running build-javadoc from the same command line as build-nozip doesn't work + # so we must run it separately + if use doc ; then + ANT_TASKS="ant-nodeps ant-trax" ANT_OPTS="-Xmx1g" eant ${antflags} ${clusters} -f nbbuild/build.xml build-javadoc + fi + + # Remove non-Linux binaries + einfo "Removing libraries and scripts for different archs..." + find "${BUILDDESTINATION}" -type f \ + -name "*.exe" -o \ + -name "*.cmd" -o \ + -name "*.bat" -o \ + -name "*.dll" \ + | grep -v "/profiler3/" | xargs rm -fv + + if use netbeans_modules_cnd ; then + rm -fv "${BUILDDESTINATION}"/cnd2/bin/*-SunOS-* + rm -fv "${BUILDDESTINATION}"/cnd2/bin/*-Mac_OS_X-* + fi + + # Removing external stuff. They are api docs from external libs. + rm -f "${BUILDDESTINATION}"/ide${IDE_VERSION}/docs/*.zip + + # Remove zip files from generated javadocs. + rm -f "${BUILDDESTINATION}"/javadoc/*.zip + + # Use the system ant + if use netbeans_modules_java ; then + cd "${BUILDDESTINATION}"/java2/ant || die "Cannot cd to "${BUILDDESTINATION}"/java2/ant" + rm -fr lib + rm -fr bin + fi + + # Set initial default jdk + if [[ -e "${BUILDDESTINATION}"/etc/netbeans.conf ]]; then + echo "netbeans_jdkhome=\"\$(java-config -O)\"" >> "${BUILDDESTINATION}"/etc/netbeans.conf + fi + + # Install Gentoo Netbeans ID + # This ID is used to identify our netbeans package while contacting update center + mkdir -p "${BUILDDESTINATION}"/nb${SLOT}/config || die + echo "NBGNT" > "${BUILDDESTINATION}"/nb${SLOT}/config/productid || die "Could not set Gentoo Netbeans ID" + + # fix paths per bug# 163483 + if [[ -e "${BUILDDESTINATION}"/bin/netbeans ]]; then + sed -i -e 's:"$progdir"/../etc/:/etc/netbeans-6.5/:' "${BUILDDESTINATION}"/bin/netbeans + sed -i -e 's:"${userdir}"/etc/:/etc/netbeans-6.5/:' "${BUILDDESTINATION}"/bin/netbeans + fi +} + +src_install() { + insinto ${DESTINATION} + + einfo "Installing the program..." + cd "${BUILDDESTINATION}" + doins -r * + + # Remove the build helper files + rm -f "${D}"/${DESTINATION}/nb.cluster.* + rm -f "${D}"/${DESTINATION}/*.built + rm -f "${D}"/${DESTINATION}/moduleCluster.properties + rm -f "${D}"/${DESTINATION}/module_tracking.xml + rm -f "${D}"/${DESTINATION}/build_info + + # Change location of etc files + if [[ -e "${BUILDDESTINATION}"/etc ]]; then + insinto /etc/${PN}-${SLOT} + doins "${BUILDDESTINATION}"/etc/* + rm -fr "${D}"/${DESTINATION}/etc + dosym /etc/${PN}-${SLOT} ${DESTINATION}/etc + fi + + # Replace bundled jars with system jars - currently commented out + symlink_extjars + + # Correct permissions on executables and possibly remove executables that are not needed on linux + local nbexec_exe="${DESTINATION}/platform${PLATFORM}/lib/nbexec" + fperms 775 ${nbexec_exe} || die + if [[ -e "${D}"/${DESTINATION}/bin/netbeans ]] ; then + fperms 755 "${DESTINATION}/bin/netbeans" || die + fi + if use netbeans_modules_cnd ; then + cd "${D}"/${DESTINATION}/cnd2/bin || die + for file in *.sh ; do + fperms 755 ${file} || die + done + fi + if use netbeans_modules_profiler ; then + cd "${D}"/${DESTINATION}/profiler3/remote-pack-defs || die + for file in *.sh ; do + fperms 755 ${file} || die + done + fi + #if use netbeans_modules_ruby ; then + # local ruby_path="${DESTINATION}/ruby2/jruby-1.1.4/bin" + # cd "${D}"/${DESTINATION}/ruby2/jruby-1.1.4/bin || die + # for file in * ; do + # fperms 755 ${file} || die + # done + #fi + + # Link netbeans executable from bin + if [[ -f "${D}"/${DESTINATION}/bin/netbeans ]]; then + dosym ${DESTINATION}/bin/netbeans /usr/bin/${PN}-${SLOT} + else + dosym ${DESTINATION}/platform7/lib/nbexec /usr/bin/${PN}-${SLOT} + fi + + # Ant installation + if use netbeans_modules_java ; then + local ANTDIR="${DESTINATION}/java2/ant" + dosym /usr/share/ant/lib ${ANTDIR}/lib + dosym /usr/share/ant-core/bin ${ANTDIR}/bin + fi + + # Documentation + einfo "Installing Documentation..." + + cd "${D}"/${DESTINATION} + dohtml CREDITS.html README.html netbeans.css + rm -f build_info CREDITS.html README.html netbeans.css + + use doc && java-pkg_dojavadoc "${S}"/nbbuild/build/javadoc + + # Icons and shortcuts + if use netbeans_modules_nb ; then + einfo "Installing icon..." + dodir /usr/share/icons/hicolor/32x32/apps + dosym ${DESTINATION}/nb${SLOT}/netbeans.png /usr/share/icons/hicolor/32x32/apps/netbeans-${SLOT}.png + fi + + make_desktop_entry netbeans-${SLOT} "Netbeans ${SLOT}" netbeans-${SLOT} Development +} + +pkg_postinst() { + if use netbeans_modules_nb ; then + einfo "If you want to use specific locale of netbeans, use --locale argument, for example:" + einfo "${PN}-${SLOT} --locale de" + einfo "${PN}-${SLOT} --locale pt:BR" + fi +} + +# Supporting functions for this ebuild + +place_unpack_symlinks() { + local target="" + + einfo "Symlinking compilation-time jars" + + dosymcompilejar "javahelp/external" javahelp jh.jar jh-2.0_05.jar + dosymcompilejar "o.jdesktop.layout/external" swing-layout-1 swing-layout.jar swing-layout-1.0.3.jar + # dosymcompilejar "libs.jna/external" jna jna.jar jna-3.0.2.jar + dosymcompilejar "libs.jsr223/external" jsr223 script-api.jar jsr223-api.jar + dosymcompilejar "libs.junit4/external" junit-4 junit.jar junit-4.5.jar + + if use netbeans_modules_harness || use netbeans_modules_ide ; then + dosymcompilejar "apisupport.harness/external" javahelp jhall.jar jsearch-2.0_05.jar + fi + + #if use netbeans_modules_groovy ; then + #dosymcompilejar "groovy.editor/external" groovy-1 groovy.jar groovy-all-1.5.6.jar + #fi + + if use netbeans_modules_gsf ; then + dosymcompilejar "css.visual/external" sac sac.jar sac-1.3.jar + dosymcompilejar "css.visual/external" flute flute.jar flute-1.3.jar + dosymcompilejar "libs.bytelist/external" bytelist bytelist.jar bytelist-0.1.jar + dosymcompilejar "libs.jvyamlb/external" jvyamlb jvyamlb.jar jvyamlb-0.2.3.jar + fi + + if use netbeans_modules_ide ; then + dosymcompilejar "db.drivers/external" jdbc-postgresql jdbc-postgresql.jar postgresql-8.3-603.jdbc3.jar + dosymcompilejar "db.drivers/external" jdbc-mysql jdbc-mysql.jar mysql-connector-java-5.1.6-bin.jar + dosymcompilejar "db.sql.visualeditor/external" javacc javacc.jar javacc-3.2.jar + dosymcompilejar "servletapi/external" tomcat-servlet-api-2.2 servlet.jar servlet-2.2.jar + dosymcompilejar "libs.commons_logging/external" commons-logging commons-logging.jar commons-logging-1.1.jar + dosymcompilejar "libs.jakarta_oro/external" jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosymcompilejar "libs.commons_net/external" commons-net commons-net.jar commons-net-1.4.1.jar + dosymcompilejar "libs.freemarker/external" freemarker-2.3 freemarker.jar freemarker-2.3.8.jar + #dosymcompilejar "libs.ini4j/external" ini4j ini4j.jar ini4j-0.2.6.jar + dosymcompilejar "libs.jaxb/external" jsr173 jsr173.jar jsr173_api.jar + dosymcompilejar "libs.jaxb/external" jaxb-2 jaxb-api.jar jaxb-api.jar + dosymcompilejar "libs.jaxb/external" sun-jaf activation.jar activation.jar + #dosymcompilejar "libs.jaxb/external" jaxb-2 jaxb-impl.jar jaxb-impl.jar + #dosymcompilejar "libs.jaxb/external" jaxb-tools-2 jaxb-tools.jar jaxb-xjc.jar + #dosymcompilejar "o.apache.xml.resolver/external" xml-commons resolver.jar resolver-1.2.jar + dosymcompilejar "libs.jsch/external" jsch jsch.jar jsch-0.1.39.jar + dosymcompilejar "libs.lucene/external" lucene-2.3 lucene-core.jar lucene-core-2.3.2.jar + # svnClientAdapter + dosymcompilejar "libs.svnClientAdapter/external" subversion svn-javahl.jar svnjavahl-1.5.0.jar + # javac-api-nb-7.0-b07.jar + # tomcat-webserver-3.2.jar + dosymcompilejar "libs.xerces/external" xerces-2 xercesImpl.jar xerces-2.8.0.jar + dosymcompilejar "web.flyingsaucer/external" flyingsaucer core-renderer.jar core-renderer-R7final.jar + # jersey-api-doc.jar + fi + + if use netbeans_modules_j2ee ; then + # j2eeapis/external/jsr88javax.jar + # servlet2.5-jsp2.1-api.jar + # appservapis-2.0.58.3.jar + # org-netbeans-modules-j2ee-sun-appsrv81.jar + dosymcompilejar "libs.commons_fileupload/external" commons-fileupload commons-fileupload.jar commons-fileupload-1.0.jar + # glassfish-logging-2.0.jar + dosymcompilejar "libs.httpunit/external" httpunit httpunit.jar httpunit-1.6.2.jar + # spring-webmvc-2.5.jar + # shale-remoting-1.0.4.jar + dosymcompilejar "web.jstl11/external" jakarta-jstl jstl.jar jstl-1.1.2.jar + dosymcompilejar "web.jstl11/external" jakarta-jstl standard.jar standard-1.1.2.jar + dosymcompilejar "web.monitor/external" tomcat-servlet-api-2.3 servlet.jar servlet-2.3.jar + # jsr311-api-doc.jar + fi + + if use netbeans_modules_java ; then + # javac-impl-nb-7.0-b07.jar + dosymcompilejar "o.jdesktop.beansbinding/external" beansbinding beansbinding.jar beansbinding-1.2.1.jar + # glassfish-persistence-v2ur1-build-09d.jar + # Ant-1.7.1-binary-patch-72080.jar + dosymcompilejar "junit/external" junit junit.jar junit-3.8.2.jar + dosymcompilejar "libs.cglib/external" cglib-2.1 cglib.jar cglib-2.2.jar + # spring-2.5.jar + # dosymcompilejar "swingapp/external" appframework appframework.jar appframework-1.0.3.jar + # junit-4.5-src.jar + fi + + if use netbeans_modules_mobility ; then + dosymcompilejar "mobility.antext/external" ant-contrib ant-contrib.jar ant-contrib-1.0b3.jar + # nbactivesync-5.0.jar + # security.jar + # bdjo.jar + dosymcompilejar "j2me.cdc.project.bdj/external" bcprov bcprov.jar bcprov-jdk15-139.jar + # RicohAntTasks-2.0.jar + dosymcompilejar "j2me.cdc.project.ricoh/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.jar + dosymcompilejar "j2me.cdc.project.ricoh/external" commons-codec commons-codec.jar commons-codec-1.3.jar + # netbeans_databindingme.jar + # netbeans_databindingme_pim.jar + # netbeans_databindingme_svg.jar + dosymcompilejar "mobility.deployment.webdav/external" jakarta-slide-webdavclient jakarta-slide-webdavlib.jar jakarta-slide-webdavlib-2.1.jar + dosymcompilejar "mobility.deployment.webdav/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.1.jar + # jakarta-slide-ant-webdav-2.1.jar + dosymcompilejar "mobility.deployment.webdav/external" jdom-1.0 jdom.jar jdom-1.0.jar + # jmunit4cldc11-1.2.1.jar + # jmunit4cldc10-1.2.1.jar + dosymcompilejar "mobility.proguard/external" proguard proguard.jar proguard4.2.jar + # perseus-nb-1.0.jar + # netbeans_midp_components_basic.jar + # netbeans_midp_components_pda.jar + # netbeans_midp_components_wma.jar + # nb_svg_midp_components.jar + fi + + if use netbeans_modules_php ; then + dosymcompilejar "libs.javacup/external" javacup javacup.jar java-cup-11a.jar + fi + + if use netbeans_modules_soa ; then + # bdi-1.0.0.jar + dosymcompilejar "soa.reportgenerator/external" itext iText.jar itext-2.0.5.jar + # jbi-admin-common.jar + # JGoLayout5.1.jar + # JGo5.1.jar + # JGoInstruments5.1.jar + fi + + if use netbeans_modules_xml ; then + #dosymcompilejar "libs.jxpath/external" commons-jxpath commons-jxpath.jar jxpath1.1.jar + dosymcompilejar "o.n.xml.libs.jxpath/external" commons-jxpath commons-jxpath.jar jxpath-1.2.jar + dosymcompilejar "visdev.prefuse/external" prefuse-2006 prefuse.jar prefuse-beta.jar + fi + + if [ -n "${NB_DOSYMCOMPILEJARFAILED}" ] ; then + die "Some compilation-time jars could not be symlinked" + fi +} + +symlink_extjars() { + local targetdir="" + + einfo "Symlinking runtime jars" + + targetdir="platform${PLATFORM}/modules/ext" + dosyminstjar ${targetdir} javahelp jh.jar jh-2.0_05.jar + dosyminstjar ${targetdir} jna jna.jar jna-3.0.2.jar + dosyminstjar ${targetdir} jsr223 script-api.jar script-api.jar + dosyminstjar ${targetdir} junit-4 junit.jar junit-4.5.jar + dosyminstjar ${targetdir} swing-layout-1 swing-layout.jar swing-layout-1.0.3.jar + + if use netbeans_modules_gsf ; then + targetdir="gsf1/modules/ext" + dosyminstjar ${targetdir} bytelist bytelist.jar bytelist-0.1.jar + dosyminstjar ${targetdir} jvyamlb jvyamlb.jar jvyamlb-0.2.3.jar + fi + + if use netbeans_modules_groovy ; then + targetdir="groovy1/modules/ext" + # groovy-all.jar + fi + + if use netbeans_modules_gsf ; then + targetdir="gsf1/modules" + # org-mozilla-rhino-patched.jar + targetdir="gsf1/modules/ext" + dosyminstjar ${targetdir} flute flute.jar flute-1.3.jar + dosyminstjar ${targetdir} sac sac.jar sac-1.3.jar + fi + + if use netbeans_modules_harness ; then + targetdir="harness" + dosyminstjar ${targetdir} javahelp jhall.jar jsearch-2.0_05.jar + fi + + if use netbeans_modules_ide ; then + targetdir="ide${IDE_VERSION}/modules/ext" + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging-1.1.jar + dosyminstjar ${targetdir} commons-net commons-net.jar commons-net-1.4.1.jar + dosyminstjar ${targetdir} flyingsaucer core-renderer.jar core-renderer.jar + dosyminstjar ${targetdir} freemarker-2.3 freemarker.jar freemarker-2.3.8.jar + # dosyminstjar ${targetdir} ini4j ini4j.jar ini4j-0.2.6.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosyminstjar ${targetdir} jdbc-mysql jdbc-mysql.jar mysql-connector-java-5.1.6-bin.jar + dosyminstjar ${targetdir} jdbc-postgresql jdbc-postgresql.jar postgresql-8.3-603.jdbc3.jar + dosyminstjar ${targetdir} jsch jsch.jar jsch-0.1.39.jar + dosyminstjar ${targetdir} lucene-2.3 lucene-core.jar lucene-core-2.3.2.jar + # resolver-1.2.jar + dosyminstjar ${targetdir} tomcat-servlet-api-2.2 servlet.jar servlet-2.2.jar + # svnClientAdapter-1.4.0.jar + dosyminstjar ${targetdir} subversion svn-javahl.jar svnjavahl-1.5.0.jar + # webserver.jar + dosyminstjar ${targetdir} xerces-2 xercesImpl.jar xerces-2.8.0.jar + targetdir="ide${IDE_VERSION}/modules/ext/jaxb" + dosyminstjar ${targetdir} sun-jaf activation.jar activation.jar + # jaxb-impl.jar + # jaxb-xjc.jar + targetdir="ide${IDE_VERSION}/modules/ext/jaxb/api" + dosyminstjar ${targetdir} jsr173 jsr173.jar jsr173_api.jar + dosyminstjar ${targetdir} jaxb-2 jaxb-api.jar jaxb-api.jar + fi + + if use netbeans_modules_j2ee ; then + targetdir="/enterprise5/modules/ext" + dosyminstjar ${targetdir} commons-fileupload commons-fileupload.jar commons-fileupload-1.0.jar + # glassfish-jspparser-2.0.jar + # glassfish-logging-2.0.jar + dosyminstjar ${targetdir} httpunit httpunit.jar httpunit-1.6.2.jar + dosyminstjar ${targetdir} jakarta-jstl jstl.jar jstl.jar + dosyminstjar ${targetdir} jakarta-jstl standard.jar standard.jar + # jsr88javax.jar + # servlet2.5-jsp2.1-api.jar + # shale-remoting-1.0.4.jar + targetdir="enterprise5/modules/ext/jsf-1_2" + dosyminstjar ${targetdir} commons-beanutils-1.7 commons-beanutils.jar commons-beanutils.jar + dosyminstjar ${targetdir} commons-collections commons-collections.jar commons-collections.jar + dosyminstjar ${targetdir} commons-digester commons-digester.jar commons-digester.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging.jar + # jsf-impl.jar + # jsf-api.jar + targetdir="/enterprise5/modules/ext/rest" + dosyminstjar ${targetdir} asm-3 asm.jar asm-3.1.jar + # grizzly-servlet-webserver-1.7.3.2.jar + # http.jar + dosyminstjar ${targetdir} jdom-1.0 jdom.jar jdom-1.0.jar + # jersey.jar + # jersey-spring-0.9-ea-SNAPSHOT.jar + # jettison-1.0-RC1.jar + # jsr311-api.jar + dosyminstjar ${targetdir} rome rome.jar rome-0.9.jar + # wadl2java.jar + targetdir="enterprise5/modules/ext/spring" + # spring-webmvc-2.5.jar + targetdir="enterprise5/modules/ext/struts" + dosyminstjar ${targetdir} antlr antlr.jar antlr.jar + dosyminstjar ${targetdir} commons-beanutils-1.7 commons-beanutils.jar commons-beanutils.jar + dosyminstjar ${targetdir} commons-digester commons-digester.jar commons-digester.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging.jar + dosyminstjar ${targetdir} commons-validator commons-validator.jar commons-validator.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar jakarta-oro.jar + # struts.jar + fi + + if use netbeans_modules_java ; then + targetdir="java2/ant/etc" + dosyminstjar ${targetdir} ant ant-bootstrap.jar ant-bootstrap.jar + targetdir="java2/ant/nblib" + # bridge.jar + targetdir="java2/ant/patches" + # 72080.jar + targetdir="java2/modules" + # org-apache-tools-ant-module.jar + targetdir="java2/modules/ext" + # dosyminstjar ${targetdir} appframework appframework.jar appframework-1.0.3.jar + dosyminstjar ${targetdir} beansbinding beansbinding.jar beansbinding-1.2.1.jar + dosyminstjar ${targetdir} cglib-2.1 cglib.jar cglib-2.2.jar + # javac-impl-nb-7.0-b07.jar + # javac-api-nb-7.0-b07.jar + dosyminstjar ${targetdir} junit junit.jar junit-3.8.2.jar + targetdir="java2/modules/ext/jaxws21" + dosyminstjar ${targetdir} fastinfoset fastinfoset.jar FastInfoset.jar + # http.jar + dosyminstjar ${targetdir} jax-ws-2 jax-ws.jar jaxws-rt.jar + #dosyminstjar ${targetdir} jax-ws-tools-2 jax-ws-tools.jar jaxws-tools.jar + # mimepull.jar + # resolver.jar + dosyminstjar ${targetdir} saaj saaj.jar saaj-impl.jar + dosyminstjar ${targetdir} sjsxp sjsxp.jar sjsxp.jar + dosyminstjar ${targetdir} stax-ex stax-ex.jar stax-ex.jar + dosyminstjar ${targetdir} xmlstreambuffer streambuffer.jar streambuffer.jar + targetdir="java2/modules/ext/jaxws21/api" + dosyminstjar ${targetdir} jax-ws-api-2 jax-ws-api.jar jaxws-api.jar + dosyminstjar ${targetdir} jsr181 jsr181.jar jsr181-api.jar + dosyminstjar ${targetdir} jsr250 jsr250.jar jsr250-api.jar + dosyminstjar ${targetdir} jsr67 jsr67.jar saaj-api.jar + targetdir="java2/modules/ext/hibernate" + dosyminstjar ${targetdir} antlr antlr.jar antlr-2.7.6.jar + dosyminstjar ${targetdir} asm-2.2 asm.jar asm.jar + dosyminstjar ${targetdir} asm-2.2 asm-attrs.jar asm-attrs.jar + dosyminstjar ${targetdir} cglib-2.1 cglib.jar cglib-2.1.3.jar + dosyminstjar ${targetdir} commons-collections commons-collections,jar commons-collections-2.1.1.jar + dosyminstjar ${targetdir} dom4j-1 dom4j.jar dom4j-1.6.1.jar + # dosyminstjar ${targetdir} ehcache-1.4 ehcache.jar ehcache-1.2.3.jar + dosyminstjar ${targetdir} glassfish-persistence glassfish-persistence.jar ejb3-persistence.jar + # dosyminstjar ${targetdir} hibernate-annotations-3.2 hibernate-annotations.jar hibernate-annotations.jar + # hibernate-commons-annotations.jar + # dosyminstjar ${targetdir} hibernate-entitymanager hibernate-entitymanager.jar hibernate-entitymanager.jar + # hibernate-tools.jar + # dosyminstjar ${targetdir} hibernate-3.2 hibernate3.jar hibernate3.jar + dosyminstjar ${targetdir} javassist-3 javassist.jar javassist.jar + # dosyminstjar ${targetdir} jdbc2-stdext jdbc2-stdext.jar jdbc2_0-stdext.jar + dosyminstjar ${targetdir} glassfish-transaction-api jta.jar jta.jar + dosyminstjar ${targetdir} jtidy Tidy.jar jtidy-r8-20060801.jar + targetdir="java2/modules/ext/spring" + # spring-2.5.jar + targetdir="java2/modules/ext/toplink" + # dosyminstjar ${targetdir} toplink-essentials toplink-essentials.jar toplink-essentials.jar + # dosyminstjar ${targetdir} toplink-essentials toplink-essentials-agent.jar toplink-essentials-agent.jar + fi + + if use netbeans_modules_mobility ; then + targetdir="mobility8/external/proguard" + dosyminstjar ${targetdir} proguard proguard.jar proguard4.2.jar + targetdir="mobility8/modules/ext" + dosyminstjar ${targetdir} ant-contrib ant-contrib.jar ant-contrib-1.0b3.jar + dosyminstjar ${targetdir} bcprov bcprov.jar bcprov-jdk15-139.jar + # cdc-agui-swing-layout.jar + # cdc-pp-awt-layout.jar + dosyminstjar ${targetdir} commons-codec commons-codec.jar commons-codec-1.3.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.1.jar + # bdjo.jar + # jakarta-slide-ant-webdav-2.1.jar + dosyminstjar ${targetdir} jakarta-slide-webdavclient jakarta-slide-webdavlib.jar jakarta-slide-webdavlib-2.1.jar + dosyminstjar ${targetdir} jdom-1.0 jdom.jar jdom-1.0.jar + # jmunit4cldc11-1.1.0.jar + # jmunit4cldc10-1.1.0.jar + # perseus-nb-1.0.jar + # RicohAntTasks-2.0.jar + # security.jar + fi + + if use netbeans_modules_php ; then + targetdir="php1/modules/ext" + dosyminstjar ${targetdir} javacup javacup.jar java-cup-11a.jar + fi + + if use netbeans_modules_soa ; then + targetdir="soa2/modules/ext/jbi" + # jbi-admin-common.jar + targetdir="soa2/modules/ext/jgo" + # JGo5.1.jar + # JGoInstruments5.1.jar + # JGoLayout5.1.jar + targetdir="soa2/modules/ext/reportgenerator" + dosyminstjar ${targetdir} itext iText.jar itext-2.0.5.jar + targetdir="soa2/modules/ext/wsdl4j-1.5.2" + dosyminstjar ${targetdir} wsdl4j wsdl4j.jar wsdl4j.jar + dosyminstjar ${targetdir} wsdl4j qname.jar qname.jar + targetdir="soa2/modules/ext/xmlbeans-2.1.0" + dosyminstjar ${targetdir} jsr173 jsr173.jar jsr173_1.0_api.jar + dosyminstjar ${targetdir} xml-xmlbeans-1 xbean.jar xbean.jar + dosyminstjar ${targetdir} xml-xmlbeans-1 xbean_xpath.jar xbean_xpath.jar + # resolver.jar + # xmlpublic.jar + fi + + if use netbeans_modules_xml ; then + targetdir="xml2/modules/ext" + dosyminstjar ${targetdir} prefuse-2006 prefuse.jar prefuse-beta.jar + targetdir="xml2/modules/ext/jxpath" + dosyminstjar ${targetdir} commons-jxpath commons-jxpath.jar jxpath1.1.jar + targetdir="xml2/modules/ext/xpath" + # jxpath-1.2.jar + fi + + if [ -n "${NB_DOSYMINSTJARFAILED}" ] ; then + die "Some runtime jars could not be symlinked" + fi +} + +dosymcompilejar() { + if [ -z "${JAVA_PKG_NB_BUNDLED}" ] ; then + local dest="${1}" + local package="${2}" + local jar_file="${3}" + local target_file="${4}" + + # We want to know whether the target jar exists and fail if it doesn't so we know + # something is wrong + local target="${S}/${dest}/${target_file}" + if [ -e "${target}" ] ; then + java-pkg_jar-from --build-only --into "${S}"/${dest} ${package} ${jar_file} ${target_file} + else + ewarn "Target jar does not exist so will not create link: ${target}" + NB_DOSYMCOMPILEJARFAILED="1" + fi + fi +} + +dosyminstjar() { + if [ -z "${JAVA_PKG_NB_BUNDLED}" ] ; then + local dest="${1}" + local package="${2}" + local jar_file="${3}" + local target_file="" + if [ -z "${4}" ]; then + target_file="${3}" + else + target_file="${4}" + fi + + # We want to know whether the target jar exists and fail if it doesn't so we know + # something is wrong + local target="${DESTINATION}/${dest}/${target_file}" + if [ -e "${D}/${target}" ] ; then + dosym /usr/share/${package}/lib/${jar_file} ${target} + else + ewarn "Target jar does not exist so will not create link: ${D}/${target}" + NB_DOSYMINSTJARFAILED="1" + fi + fi +} diff --git a/dev-util/netbeans/netbeans-6.7.1.ebuild b/dev-util/netbeans/netbeans-6.7.1.ebuild new file mode 100644 index 00000000..6b4ed66e --- /dev/null +++ b/dev-util/netbeans/netbeans-6.7.1.ebuild @@ -0,0 +1,1189 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/netbeans/netbeans-6.7.1.ebuild,v 1.3 2010/06/22 18:41:49 arfrever Exp $ + +EAPI="2" +WANT_SPLIT_ANT="true" +inherit eutils java-pkg-2 java-ant-2 + +DESCRIPTION="NetBeans IDE for Java" +HOMEPAGE="http://www.netbeans.org" + +SLOT="6.7" +SRC_URI="http://bits.netbeans.org/netbeans/6.7.1/community/fcs/zip/netbeans-6.7.1-200907230101-src.zip + http://dev.gentoo.org/~fordfrog/distfiles/netbeans-6.7-l10n-20090626125342.tar.bz2" + +LICENSE="|| ( CDDL GPL-2-with-linking-exception )" +KEYWORDS="~amd64 ~x86" + +IUSE_NETBEANS_MODULES=" + +netbeans_modules_apisupport + netbeans_modules_cnd + netbeans_modules_dlight + netbeans_modules_enterprise + netbeans_modules_ergonomics + netbeans_modules_groovy + +netbeans_modules_harness + +netbeans_modules_ide + netbeans_modules_identity + +netbeans_modules_java + netbeans_modules_mobility + +netbeans_modules_nb + netbeans_modules_php + netbeans_modules_profiler + netbeans_modules_ruby + netbeans_modules_webcommon + +netbeans_modules_websvccommon" +IUSE_LINGUAS=" + linguas_ar + linguas_cs + linguas_de + linguas_es + linguas_fr + linguas_gl + linguas_id + linguas_it + linguas_ja + linguas_ko + linguas_nl + linguas_pl + linguas_pt_BR + linguas_ru + linguas_sq + linguas_sv + linguas_tr + linguas_zh_CN + linguas_zh_TW" +IUSE="debug doc ${IUSE_NETBEANS_MODULES} ${IUSE_LINGUAS}" + +RDEPEND=">=virtual/jdk-1.5 + java-virtuals/jdk-with-com-sun + >=dev-java/javahelp-2:0 + dev-java/jna:0 + dev-java/jsr223:0 + >=dev-java/junit-4:4 + >=dev-java/swing-layout-1:1 + netbeans_modules_enterprise? ( + >=dev-java/antlr-2.7.7:0[java] + >=dev-java/asm-3.1:3 + dev-java/bsf:2.3 + dev-java/commons-beanutils:1.7 + dev-java/commons-collections:0 + dev-java/commons-digester:0 + >=dev-java/commons-fileupload-1:0 + >=dev-java/commons-io-1.1:1 + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-validator-1.3:0 + dev-java/glassfish-deployment-api:1.2 + >=dev-java/httpunit-1.6:0 + dev-java/jakarta-jstl:0 + >=dev-java/jakarta-oro-2:2.0 + dev-java/jdom:1.0 + >=dev-java/jettison-1.0:0 + dev-java/jsr311-api:0 + >=dev-java/rome-0.9:0 + ) + netbeans_modules_harness? ( + dev-java/asm:2.2 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/log4j-1.2:0 + ) + netbeans_modules_ide? ( + >=dev-java/commons-codec-1.3:0 + >=dev-java/commons-httpclient-3.1:3 + >=dev-java/commons-lang-2.3:2.1 + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-net-1.4:0 + >=dev-java/flute-1.3:0 + >=dev-java/freemarker-2.3.8:2.3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/jaxb-2:2 + >=dev-java/jdbc-mysql-5.1:0 + >=dev-java/jdbc-postgresql-8.3_p603:0 + >=dev-java/jsch-0.1.39:0 + dev-java/jsr173:0 + >=dev-java/jvyamlb-0.2.3:0 + dev-java/lucene:2.4 + >=dev-java/sac-1.3:0 + dev-java/sun-jaf:0 + ~dev-java/tomcat-servlet-api-3:2.2 + >=dev-java/xerces-2.8.1:2 + >=dev-vcs/subversion-1.6:0[java] + ) + netbeans_modules_java? ( + >=dev-java/ant-1.7:0 + >=dev-java/antlr-2.7.7:0[java] + dev-java/asm:2.2 + >=dev-java/beansbinding-1.2.1:0 + >=dev-java/cglib-2.2_beta:2.2 + dev-java/commons-collections:0 + >=dev-java/dom4j-1.6:1 + dev-java/ehcache:1.2 + dev-java/fastinfoset:0 + dev-java/glassfish-persistence:0 + dev-java/glassfish-transaction-api:0 + dev-java/hibernate:3.1 + dev-java/javassist:3 + >=dev-java/jdom-1.0:1.0 + dev-java/jsr181:0 + dev-java/jsr250:0 + dev-java/jsr67:0 + dev-java/jtidy:0 + >=dev-java/junit-3.8.2:0 + dev-java/saaj:0 + dev-java/sjsxp:0 + dev-java/stax-ex:0 + dev-java/xmlstreambuffer:0 + ) + netbeans_modules_mobility? ( + >=dev-java/ant-contrib-1.0_beta:0 + >=dev-java/commons-codec-1.3:0 + dev-java/commons-httpclient:3 + dev-java/jakarta-slide-webdavclient:0 + dev-java/jdom:1.0 + >=dev-java/proguard-4.2:0 + ) + netbeans_modules_php? ( + >=dev-java/javacup-0.11a_beta20060608:0 + ) + netbeans_modules_ruby? ( + dev-java/asm:3 + dev-java/jline:0 + dev-java/jna-posix:0 + dev-java/joda-time:0 + dev-java/joni:0 + dev-java/jruby:0 + dev-util/jay:0[java] + )" + +DEPEND=">=virtual/jdk-1.5 + java-virtuals/jdk-with-com-sun + app-arch/unzip + >=dev-java/ant-core-1.7.1:0 + >=dev-java/ant-nodeps-1.7.1:0 + dev-java/ant-trax:0 + >=dev-java/javahelp-2:0 + dev-java/jna:0 + dev-java/jsr223:0 + >=dev-java/junit-4:4 + >=dev-java/swing-layout-1:1 + netbeans_modules_enterprise? ( + >=dev-java/commons-fileupload-1:0 + dev-java/glassfish-deployment-api:1.2 + >=dev-java/httpunit-1.6:0 + dev-java/jakarta-jstl:0 + dev-java/tomcat-servlet-api:2.3 + ) + netbeans_modules_harness? ( + dev-java/asm:2.2 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/log4j-1.2:0 + ) + netbeans_modules_ide? ( + >=dev-java/commons-codec-1.3:0 + >=dev-java/commons-httpclient-3.1:3 + >=dev-java/commons-lang-2.3:2.1 + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-net-1.4.1:0 + >=dev-java/flute-1.3:0 + >=dev-java/freemarker-2.3.8:2.3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/javacc-3.2:0 + >=dev-java/jaxb-2.1:2 + >=dev-java/jdbc-mysql-5.1:0 + >=dev-java/jdbc-postgresql-8.3_p603:0 + >=dev-java/jsch-0.1.39:0 + dev-java/jsr173:0 + dev-java/jvyamlb:0 + dev-java/lucene:2.4 + >=dev-java/sac-1.3:0 + dev-java/sun-jaf:0 + ~dev-java/tomcat-servlet-api-3:2.2 + >=dev-java/xerces-2.8.1:2 + >=dev-vcs/subversion-1.6:0[java] + ) + netbeans_modules_java? ( + dev-java/beansbinding:0 + >=dev-java/cglib-2.2_beta:2.2 + dev-java/jdom:1.0 + >=dev-java/junit-3.8:0 + ) + netbeans_modules_mobility? ( + >=dev-java/ant-contrib-1.0_beta:0 + >=dev-java/commons-codec-1.3:0 + dev-java/commons-httpclient:3 + dev-java/jakarta-slide-webdavclient:0 + dev-java/jdom:1.0 + >=dev-java/proguard-4.2:0 + ) + netbeans_modules_php? ( + >=dev-java/javacup-0.11a_beta20060608:0 + ) + netbeans_modules_ruby? ( + dev-util/jay:0 + )" + +S="${WORKDIR}" +BUILDDESTINATION="${S}/nbbuild/netbeans" +ENTERPRISE="5" +IDE_VERSION="11" +PLATFORM="10" +MY_FDIR="${FILESDIR}/${SLOT}" +DESTINATION="/usr/share/netbeans-${SLOT}" +JAVA_PKG_BSFIX="off" + +pkg_setup() { + local need_apisupport="" + local need_cnd="" + local need_dlight="" + local need_enterprise="" + local need_ergonomics="" + local need_groovy="" + local need_harness="" + local need_ide="" + local need_identity="" + local need_java="" + local need_mobility="" + local need_nb="" + local need_php="" + local need_profiler="" + local need_ruby="" + local need_webcommon="" + local need_websvccommon="" + + # direct deps: harness, ide, java + if use netbeans_modules_apisupport ; then + need_harness="1" + need_ide="1" + need_java="1" + fi + + # direct deps: dlight, ide + if use netbeans_modules_cnd ; then + need_dlight="1" + need_ide="1" + fi + + # direct deps: ide + if use netbeans_modules_dlight ; then + need_ide="1" + fi + + # direct deps: ide, java, profiler, webcommon + if use netbeans_modules_enterprise ; then + need_ide="1" + need_java="1" + need_profiler="1" + need_webcommon="1" + fi + + # direct deps: ide + if use netbeans_modules_ergonomics ; then + need_ide="1" + fi + + # direct deps: ide, java + if use netbeans_modules_groovy ; then + need_ide="1" + need_java="1" + fi + + # direct deps: enterprise, ide, java + if use netbeans_modules_identity ; then + need_enterprise="1" + need_ide="1" + need_java="1" + fi + + # direct deps: ide, websvccommon + if use netbeans_modules_java ; then + need_ide="1" + need_websvccommon="1" + fi + + # direct deps: apisupport, enterprise, ide, java + # dependency on enterprise cluster: http://www.netbeans.org/issues/show_bug.cgi?id=151535 + if use netbeans_modules_mobility ; then + need_apisupport="1" + need_enterprise="1" + need_ide="1" + need_java="1" + fi + + # direct deps: harness, ide + if use netbeans_modules_nb ; then + need_harness="1" + need_ide="1" + fi + + # direct deps: ide, webcommon, websvccommon + if use netbeans_modules_php ; then + need_ide="1" + need_webcommon="1" + need_websvccommon="1" + fi + + # direct deps: ide, java + if use netbeans_modules_profiler ; then + need_ide="1" + need_java="1" + fi + + # direct deps: ide, webcommon + if use netbeans_modules_ruby ; then + need_ide="1" + need_webcommon="1" + fi + + # direct deps: ide + if use netbeans_modules_webcommon ; then + need_ide="1" + fi + + # direct deps: ide + if use netbeans_modules_websvccommon ; then + need_ide="1" + fi + + # currently we require all clusters when building javadoc, can be tested + # what clusters are really needed to build javadoc + if use doc ; then + need_apisupport="1" + need_cnd="1" + need_dlight="1" + need_enterprise="1" + need_ergonomics="1" + need_groovy="1" + need_harness="1" + need_ide="1" + need_identity="1" + need_java="1" + need_mobility="1" + need_nb="1" + need_php="1" + need_profiler="1" + need_ruby="1" + need_webcommon="1" + need_websvccommon="1" + fi + + if [ -n "${need_apisupport}" ] ; then + need_harness="1" + need_ide="1" + need_java="1" + fi + + if [ -n "${need_dlight}" ] ; then + need_ide="1" + fi + + if [ -n "${need_enterprise}" ] ; then + need_ide="1" + need_java="1" + need_profiler="1" + need_webcommon="1" + fi + + if [ -n "${need_groovy}" ] ; then + need_ide="1" + need_java="1" + fi + + if [ -n "${need_profiler}" ] ; then + need_ide="1" + need_java="1" + fi + + if [ -n "${need_java}" ] ; then + need_ide="1" + need_websvccommon="1" + fi + + if [ -n "${need_nb}" ] ; then + need_harness="1" + need_ide="1" + fi + + if [ -n "${need_webcommon}" ] ; then + need_ide="1" + fi + + if [ -n "${need_websvccommon}" ] ; then + need_ide="1" + fi + + local missing="" + [ -n "${need_apisupport}" ] && ! use netbeans_modules_apisupport && missing="${missing} apisupport" + [ -n "${need_cnd}" ] && ! use netbeans_modules_cnd && missing="${missing} cnd" + [ -n "${need_dlight}" ] && ! use netbeans_modules_dlight && missing="${missing} dlight" + [ -n "${need_enterprise}" ] && ! use netbeans_modules_enterprise && missing="${missing} enterprise" + [ -n "${need_ergonomics}" ] && ! use netbeans_modules_ergonomics && missing="${missing} ergonomics" + [ -n "${need_groovy}" ] && ! use netbeans_modules_groovy && missing="${missing} groovy" + [ -n "${need_harness}" ] && ! use netbeans_modules_harness && missing="${missing} harness" + [ -n "${need_ide}" ] && ! use netbeans_modules_ide && missing="${missing} ide" + [ -n "${need_identity}" ] && ! use netbeans_modules_identity && missing="${missing} identity" + [ -n "${need_java}" ] && ! use netbeans_modules_java && missing="${missing} java" + [ -n "${need_mobility}" ] && ! use netbeans_modules_mobility && missing="${missing} mobility" + [ -n "${need_nb}" ] && ! use netbeans_modules_nb && missing="${missing} nb" + [ -n "${need_php}" ] && ! use netbeans_modules_php && missing="${missing} php" + [ -n "${need_profiler}" ] && ! use netbeans_modules_profiler && missing="${missing} profiler" + [ -n "${need_ruby}" ] && ! use netbeans_modules_ruby && missing="${missing} ruby" + [ -n "${need_webcommon}" ] && ! use netbeans_modules_webcommon && missing="${missing} webcommon" + [ -n "${need_websvccommon}" ] && ! use netbeans_modules_websvccommon && missing="${missing} websvccommon" + + if [ -n "${missing}" ] ; then + eerror "You need to add these modules to NETBEANS_MODULES because they are needed by modules you have selected." + use doc && eerror "With \"doc\" USE flag enabled, all modules are required." + eerror " Missing NETBEANS_MODULES:${missing}" + die "Missing NETBEANS_MODULES" + fi + + if ! use netbeans_modules_nb ; then + ewarn "You are building netbeans without 'nb' module, this way you will build only specified" + ewarn "clusters, not a functional IDE. In case you want functional IDE, add 'nb' to NETBEANS_MODULES." + epause 5 + fi + + java-pkg-2_pkg_setup +} + +src_prepare () { + # We need to disable downloading of jars + epatch "${FILESDIR}"/${SLOT}/nbbuild_build.xml.patch \ + "${FILESDIR}"/${SLOT}/nbbuild_templates_projectized.xml.patch + + # Clean up nbbuild + einfo "Removing prebuilt *.class files from nbbuild" + find "${S}" -name "*.class" | xargs rm -v + + if [ -z "${JAVA_PKG_NB_USE_BUNDLED}" ] ; then + place_unpack_symlinks + fi + + if [ -z "${JAVA_PKG_NB_KEEP_BUNDLED}" ] ; then + # We do not remove the jars that we ar not able to unbundle atm + # More info at: https://overlays.gentoo.org/proj/java/wiki/Netbeans_Maintenance + + local tmpfile="${T}/bundled.txt" + + einfo "Removing rest of the bundled jars..." + find "${S}" -type f -name "*.jar" > ${tmpfile} || die "Cannot put jars in tmp file" + + if use netbeans_modules_dlight ; then + filter_file "dlight.db.h2/external/h2-1.0.79.jar" ${tmpfile} + filter_file "dlight.derby.support/external/derby-10.2.2.0.jar" ${tmpfile} + fi + + if use netbeans_modules_enterprise ; then + filter_file "j2ee.sun.appsrv81/external/appservapis-2.0.58.3.jar" ${tmpfile} + filter_file "j2ee.sun.appsrv81/external/org-netbeans-modules-j2ee-sun-appsrv81.jar" ${tmpfile} + filter_file "libs.glassfish_logging/external/glassfish-logging-2.0.jar" ${tmpfile} + # http://www.netbeans.org/issues/show_bug.cgi?id=164334 + filter_file "servletjspapi/external/servlet2.5-jsp2.1-api.jar" ${tmpfile} + filter_file "spring.webmvc/external/spring-webmvc-2.5.jar" ${tmpfile} + filter_file "web.jspparser/external/glassfish-jspparser-2.0.jar" ${tmpfile} + # api documentation packaged as jar + filter_file "websvc.restlib/external/jersey-api-doc.jar" ${tmpfile} + # api documentation packaged as jar + filter_file "websvc.restlib/external/jsr311-api-doc.jar" ${tmpfile} + fi + + if use netbeans_modules_groovy ; then + # heavily repackaged + filter_file "groovy.editor/external/groovy-all-1.5.7.jar" ${tmpfile} + fi + + if use netbeans_modules_harness ; then + filter_file "apisupport.harness/external/cobertura-1.9.jar" ${tmpfile} + filter_file "apisupport.harness/external/openjdk-javac-6-b12.jar" ${tmpfile} + filter_file "jemmy/external/jemmy-2.3.0.0.jar" ${tmpfile} + fi + + if use netbeans_modules_ide ; then + # very old stuff + filter_file "httpserver/external/tomcat-webserver-3.2.jar" ${tmpfile} + filter_file "libs.bugtracking/external/org.eclipse.mylyn.commons.core_3.1.1.jar" ${tmpfile} + filter_file "libs.bugtracking/external/org.eclipse.mylyn.commons.net_3.1.1.jar" ${tmpfile} + filter_file "libs.bugtracking/external/org.eclipse.mylyn.tasks.core_3.1.1.jar" ${tmpfile} + filter_file "libs.bugzilla/external/org.eclipse.mylyn.bugzilla.core_3.1.1.jar" ${tmpfile} + filter_file "libs.bytelist/external/bytelist-0.1.jar" ${tmpfile} + filter_file "libs.ini4j/external/ini4j-0.4.1.jar" ${tmpfile} + filter_file "libs.svnClientAdapter/external/svnClientAdapter-1.6.0.jar" ${tmpfile} + filter_file "libs.swingx/external/swingx-0.9.5.jar" ${tmpfile} + filter_file "libs.smack/external/smack.jar" ${tmpfile} + filter_file "libs.smack/external/smackx.jar" ${tmpfile} + # packaged in a different way than we do + filter_file "libs.jaxb/external/jaxb-impl.jar" ${tmpfile} + # packaged in a different way than we do + filter_file "libs.jaxb/external/jaxb-xjc.jar" ${tmpfile} + # patched version of apache resolver + filter_file "o.apache.xml.resolver/external/resolver-1.2.jar" ${tmpfile} + # system core-renderer.jar causes deadlocks (in logging) when openning css files + filter_file "web.flyingsaucer/external/core-renderer-R7final.jar" ${tmpfile} + fi + + if use netbeans_modules_java ; then + # netbeans bundles also toplink-essentials in the jar + filter_file "j2ee.toplinklib/external/glassfish-persistence-v2ur1-build-09d.jar" ${tmpfile} + # some patch + filter_file "junit/external/Ant-1.7.1-binary-patch-72080.jar" ${tmpfile} + # junit sources + filter_file "junit/external/junit-4.5-src.jar" ${tmpfile} + # some netbeans stuff + filter_file "libs.javacapi/external/javac-api-nb-7.0-b07.jar" ${tmpfile} + # some netbeans stuff + filter_file "libs.javacimpl/external/javac-impl-nb-7.0-b07.jar" ${tmpfile} + filter_file "libs.springframework/external/spring-2.5.jar" ${tmpfile} + # maven stuff - ignoring for now + filter_file "maven.embedder/external/maven-dependency-tree-1.2.jar" ${tmpfile} + # maven stuff - ignoring for now + filter_file "maven.embedder/external/maven-embedder-2.1-20080623-patched.jar" ${tmpfile} + # maven stuff - ignoring for now + filter_file "maven.indexer/external/nexus-indexer-2.0.0-shaded.jar" ${tmpfile} + filter_file "swingapp/external/appframework-1.0.3.jar" ${tmpfile} + filter_file "swingapp/external/swing-worker-1.1.jar" ${tmpfile} + fi + + if use netbeans_modules_mobility ; then + # if not commented, the jars are probably some netbeans jars related to mobility + # + # i didn't find sources of this + filter_file "j2me.cdc.project.ricoh/external/RicohAntTasks-2.0.jar" ${tmpfile} + filter_file "mobility.databindingme/lib/netbeans_databindingme.jar" ${tmpfile} + filter_file "mobility.databindingme/lib/netbeans_databindingme_pim.jar" ${tmpfile} + filter_file "mobility.databindingme/lib/netbeans_databindingme_svg.jar" ${tmpfile} + # retired project + filter_file "mobility.deployment.webdav/external/jakarta-slide-ant-webdav-2.1.jar" ${tmpfile} + filter_file "mobility.j2meunit/external/jmunit4cldc10-1.2.1.jar" ${tmpfile} + filter_file "mobility.j2meunit/external/jmunit4cldc11-1.2.1.jar" ${tmpfile} + filter_file "o.n.mobility.lib.activesync/external/nbactivesync-5.0.jar" ${tmpfile} + filter_file "svg.perseus/external/perseus-nb-1.0.jar" ${tmpfile} + filter_file "vmd.components.midp/netbeans_midp_components_basic/dist/netbeans_midp_components_basic.jar" ${tmpfile} + filter_file "vmd.components.midp.pda/netbeans_midp_components_pda/dist/netbeans_midp_components_pda.jar" ${tmpfile} + filter_file "vmd.components.midp.wma/netbeans_midp_components_wma/dist/netbeans_midp_components_wma.jar" ${tmpfile} + filter_file "vmd.components.svg/nb_svg_midp_components/dist/nb_svg_midp_components.jar" ${tmpfile} + fi + + if use netbeans_modules_ruby ; then + filter_file "libs.jrubyparser/external/jruby-parser-0.1.jar" ${tmpfile} + filter_file "o.kxml2/external/kxml2-2.3.0.jar" ${tmpfile} + filter_file "o.rubyforge.debugcommons/external/debug-commons-java-0.10.0.jar" ${tmpfile} + fi + + if [ -n "${NB_FILTERFILESFAILED}" ] ; then + die "Some files that should be filtered do not exist" + fi + + for file in `cat ${tmpfile}` ; do + rm -v ${file} + done + fi +} + +src_compile() { + local antflags="-Dstop.when.broken.modules=true -Dpermit.jdk6.builds=true" + + if use debug; then + antflags="${antflags} -Dbuild.compiler.debug=true" + antflags="${antflags} -Dbuild.compiler.deprecation=true" + else + antflags="${antflags} -Dbuild.compiler.deprecation=false" + fi + + local clusters="-Dnb.clusters.list=nb.cluster.platform" + for netbeans_module in ${IUSE_NETBEANS_MODULES} ; do + netbeans_module=${netbeans_module/[+]/} + local short_netbeans_module=${netbeans_module/netbeans_modules_/} + use ${netbeans_module} && clusters="${clusters},nb.cluster.${short_netbeans_module}" + done + + local build_target="" + if use netbeans_modules_nb ; then + build_target="build-nozip" + else + build_target="build-clusters" + mkdir -p "${BUILDDESTINATION}" || die + fi + + local extra_flags="" + if use netbeans_modules_ergonomics ; then + mkdir "${S}"/nbbuild/ergonomics_build_fix || die + extra_flags="-Dergonomic.clusters.extra=../../ergonomics_build_fix" + fi + + # Fails to compile + java-pkg_filter-compiler ecj-3.2 ecj-3.3 ecj-3.4 + + # Build the clusters + local heap="" + if use doc ; then + heap="-Xmx1536m" + else + heap="-Xmx1g" + fi + + ANT_TASKS="ant-nodeps ant-trax" ANT_OPTS="${heap} -Djava.awt.headless=true" \ + eant ${antflags} ${clusters} -f nbbuild/build.xml ${extra_flags} ${build_target} $(use_doc build-javadoc) + + local locales="" + for lang in ${IUSE_LINGUAS} ; do + local mylang=${lang/linguas_/} + if use ${lang} ; then + if [ "${mylang}" = "gl" ] ; then + mylang="gl_ES" + elif [ "${mylang}" = "id" ] ; then + mylang="in_ID" + fi + + if [ -z "${locales}" ] ; then + locales="${mylang}" + else + locales="${locales},${mylang}" + fi + fi + done + + if [ -n "${locales}" ] ; then + einfo "Compiling support for locales: ${locales}" + eant ${antflags} -Dlocales=${locales} -Ddist.dir=../nbbuild/netbeans -Dnbms.dir="" -Dnbms.dist.dir="" \ + -f l10n/build.xml build + fi + + # Remove non-Linux binaries + einfo "Removing libraries and scripts for non-linux archs..." + find "${BUILDDESTINATION}" -type f \ + -name "*.exe" -o \ + -name "*.cmd" -o \ + -name "*.bat" -o \ + -name "*.dll" \ + | grep -v "/profiler3/" | xargs rm -fv + + if use netbeans_modules_cnd ; then + rm -fv "${BUILDDESTINATION}"/cnd2/bin/*-SunOS-* + rm -fv "${BUILDDESTINATION}"/cnd2/bin/*-Mac_OS_X-* + fi + + # Removing external stuff. They are api docs from external libs. + rm -f "${BUILDDESTINATION}"/ide${IDE_VERSION}/docs/*.zip + + # Remove zip files from generated javadocs. + rm -f "${BUILDDESTINATION}"/javadoc/*.zip + + # Use the system ant + if use netbeans_modules_java ; then + cd "${BUILDDESTINATION}"/java2/ant || die "Cannot cd to "${BUILDDESTINATION}"/java2/ant" + rm -fr lib + rm -fr bin + fi + + # Set initial default jdk + if [[ -e "${BUILDDESTINATION}"/etc/netbeans.conf ]]; then + echo "netbeans_jdkhome=\"\$(java-config -O)\"" >> "${BUILDDESTINATION}"/etc/netbeans.conf + fi + + # Install Gentoo Netbeans ID + # This ID is used to identify our netbeans package while contacting update center + mkdir -p "${BUILDDESTINATION}"/nb${SLOT}/config || die + echo "NBGNT" > "${BUILDDESTINATION}"/nb${SLOT}/config/productid || die "Could not set Gentoo Netbeans ID" + + # fix paths per bug# 163483 + if [[ -e "${BUILDDESTINATION}"/bin/netbeans ]]; then + sed -i -e 's:"$progdir"/../etc/:/etc/netbeans-6.7/:' "${BUILDDESTINATION}"/bin/netbeans + sed -i -e 's:"${userdir}"/etc/:/etc/netbeans-6.7/:' "${BUILDDESTINATION}"/bin/netbeans + fi +} + +src_install() { + insinto ${DESTINATION} + + einfo "Installing the program..." + cd "${BUILDDESTINATION}" + doins -r * + + # Remove the build helper files + rm -f "${D}"/${DESTINATION}/nb.cluster.* + rm -f "${D}"/${DESTINATION}/*.built + rm -f "${D}"/${DESTINATION}/moduleCluster.properties + rm -f "${D}"/${DESTINATION}/module_tracking.xml + rm -f "${D}"/${DESTINATION}/build_info + + # Change location of etc files + if [[ -e "${BUILDDESTINATION}"/etc ]]; then + insinto /etc/${PN}-${SLOT} + doins "${BUILDDESTINATION}"/etc/* + rm -fr "${D}"/${DESTINATION}/etc + dosym /etc/${PN}-${SLOT} ${DESTINATION}/etc + fi + + # Replace bundled jars with system jars + if [ -z "${JAVA_PKG_NB_USE_BUNDLED}" ] ; then + symlink_extjars + fi + + # Correct permissions on executables and possibly remove executables that are not needed on linux + local nbexec_exe="${DESTINATION}/platform${PLATFORM}/lib/nbexec" + fperms 775 ${nbexec_exe} || die + if [[ -e "${D}"/${DESTINATION}/bin/netbeans ]] ; then + fperms 755 "${DESTINATION}/bin/netbeans" || die + fi + if use netbeans_modules_cnd ; then + cd "${D}"/${DESTINATION}/cnd2/bin || die + for file in *.sh ; do + fperms 755 ${file} || die + done + for file in *.so ; do + fperms 755 ${file} || die + done + fi + if use netbeans_modules_dlight ; then + cd "${D}"/${DESTINATION}/dlight1/bin/nativeexecution || die + fperms 755 dorun.sh || die + fi + if use netbeans_modules_profiler ; then + cd "${D}"/${DESTINATION}/profiler3/remote-pack-defs || die + for file in *.sh ; do + fperms 755 ${file} || die + done + fi + if use netbeans_modules_ruby ; then + cd "${D}"/${DESTINATION}/ruby2/jruby-1.2.0/bin || die + for file in * ; do + fperms 755 ${file} || die + done + fi + + # Link netbeans executable from bin + if [[ -f "${D}"/${DESTINATION}/bin/netbeans ]]; then + dosym ${DESTINATION}/bin/netbeans /usr/bin/${PN}-${SLOT} + else + dosym ${DESTINATION}/platform7/lib/nbexec /usr/bin/${PN}-${SLOT} + fi + + # Ant installation + if use netbeans_modules_java ; then + local ANTDIR="${DESTINATION}/java2/ant" + dosym /usr/share/ant/lib ${ANTDIR}/lib + dosym /usr/share/ant-core/bin ${ANTDIR}/bin + fi + + # Documentation + einfo "Installing Documentation..." + + cd "${D}"/${DESTINATION} + dohtml CREDITS.html README.html netbeans.css + rm -f build_info CREDITS.html README.html netbeans.css + + if use doc ; then + rm "${S}"/nbbuild/build/javadoc/*.zip + java-pkg_dojavadoc "${S}"/nbbuild/build/javadoc + fi + + # Icons and shortcuts + if use netbeans_modules_nb ; then + einfo "Installing icon..." + dodir /usr/share/icons/hicolor/32x32/apps + dosym ${DESTINATION}/nb${SLOT}/netbeans.png /usr/share/icons/hicolor/32x32/apps/netbeans-${SLOT}.png + fi + + make_desktop_entry netbeans-${SLOT} "Netbeans ${SLOT}" netbeans-${SLOT} Development +} + +pkg_postinst() { + if use netbeans_modules_nb ; then + einfo "Netbeans automatically starts with the locale you have set in your user profile, if" + einfo "the locale is built for netbeans." + einfo "If you want to force specific locale, use --locale argument, for example:" + einfo "${PN}-${SLOT} --locale de" + einfo "${PN}-${SLOT} --locale pt:BR" + fi +} + +# Supporting functions for this ebuild + +place_unpack_symlinks() { + local target="" + + einfo "Symlinking compilation-time jars" + + dosymcompilejar "apisupport.harness/external" javahelp jhall.jar jsearch-2.0_05.jar + dosymcompilejar "javahelp/external" javahelp jh.jar jh-2.0_05.jar + dosymcompilejar "o.jdesktop.layout/external" swing-layout-1 swing-layout.jar swing-layout-1.0.3.jar + dosymcompilejar "libs.jna/external" jna jna.jar jna-3.0.9.jar + dosymcompilejar "libs.jsr223/external" jsr223 script-api.jar jsr223-api.jar + dosymcompilejar "libs.junit4/external" junit-4 junit.jar junit-4.5.jar + + if use netbeans_modules_enterprise ; then + dosymcompilejar "j2eeapis/external" glassfish-deployment-api-1.2 glassfish-deployment-api.jar jsr88javax.jar + dosymcompilejar "libs.commons_fileupload/external" commons-fileupload commons-fileupload.jar commons-fileupload-1.0.jar + dosymcompilejar "libs.httpunit/external" httpunit httpunit.jar httpunit-1.6.2.jar + dosymcompilejar "web.jstl11/external" jakarta-jstl jstl.jar jstl-1.1.2.jar + dosymcompilejar "web.jstl11/external" jakarta-jstl standard.jar standard-1.1.2.jar + dosymcompilejar "web.monitor/external" tomcat-servlet-api-2.3 servlet.jar servlet-2.3.jar + fi + + if use netbeans_modules_harness ; then + dosymcompilejar "apisupport.harness/external" asm-2.2 asm.jar asm-2.2.1.jar + dosymcompilejar "apisupport.harness/external" asm-2.2 asm-tree.jar asm-tree-2.2.1.jar + dosymcompilejar "apisupport.harness/external" jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosymcompilejar "apisupport.harness/external" log4j log4j.jar log4j-1.2.9.jar + fi + + if use netbeans_modules_ide ; then + dosymcompilejar "libs.commons_codec/external" commons-codec commons-codec.jar apache-commons-codec-1.3.jar + dosymcompilejar "libs.commons_logging/external" commons-logging commons-logging.jar commons-logging-1.1.jar + dosymcompilejar "libs.bugtracking/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.1.jar + dosymcompilejar "libs.bugtracking/external" commons-lang-2.1 commons-lang.jar commons-lang-2.3.jar + dosymcompilejar "libs.jsch/external" jsch jsch.jar jsch-0.1.41.jar + dosymcompilejar "libs.jvyamlb/external" jvyamlb jvyamlb.jar jvyamlb-0.2.3.jar + dosymcompilejar "libs.svnClientAdapter/external" subversion svn-javahl.jar svnjavahl-1.6.0.jar + dosymcompilejar "libs.lucene/external" lucene-2.4 lucene-core.jar lucene-core-2.3.2.jar + dosymcompilejar "css.visual/external" sac sac.jar sac-1.3.jar + dosymcompilejar "css.visual/external" flute flute.jar flute-1.3.jar + dosymcompilejar "db.drivers/external" jdbc-mysql jdbc-mysql.jar mysql-connector-java-5.1.6-bin.jar + dosymcompilejar "db.drivers/external" jdbc-postgresql jdbc-postgresql.jar postgresql-8.3-603.jdbc3.jar + dosymcompilejar "db.sql.visualeditor/external" javacc javacc.jar javacc-3.2.jar + dosymcompilejar "servletapi/external" tomcat-servlet-api-2.2 servlet.jar servlet-2.2.jar + dosymcompilejar "libs.xerces/external" xerces-2 xercesImpl.jar xerces-2.8.0.jar + dosymcompilejar "libs.jakarta_oro/external" jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosymcompilejar "libs.commons_net/external" commons-net commons-net.jar commons-net-1.4.1.jar + dosymcompilejar "libs.freemarker/external" freemarker-2.3 freemarker.jar freemarker-2.3.8.jar + dosymcompilejar "libs.jaxb/external" jaxb-2 jaxb-api.jar jaxb-api.jar + dosymcompilejar "libs.jaxb/external" jsr173 jsr173.jar jsr173_api.jar + dosymcompilejar "libs.jaxb/external" sun-jaf activation.jar activation.jar + fi + + if use netbeans_modules_java ; then + dosymcompilejar "o.jdesktop.beansbinding/external" beansbinding beansbinding.jar beansbinding-1.2.1.jar + dosymcompilejar "maven.embedder/external" jdom-1.0 jdom.jar jdom-1.0.jar + dosymcompilejar "junit/external" junit junit.jar junit-3.8.2.jar + dosymcompilejar "libs.cglib/external" cglib-2.2 cglib.jar cglib-2.2.jar + fi + + if use netbeans_modules_mobility ; then + dosymcompilejar "j2me.cdc.project.ricoh/external" commons-codec commons-codec.jar commons-codec-1.3.jar + dosymcompilejar "j2me.cdc.project.ricoh/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.jar + dosymcompilejar "mobility.antext/external" ant-contrib ant-contrib.jar ant-contrib-1.0b3.jar + dosymcompilejar "mobility.deployment.webdav/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.1.jar + dosymcompilejar "mobility.deployment.webdav/external" jdom-1.0 jdom.jar jdom-1.0.jar + dosymcompilejar "mobility.deployment.webdav/external" jakarta-slide-webdavclient jakarta-slide-webdavlib.jar jakarta-slide-webdavlib-2.1.jar + dosymcompilejar "mobility.proguard/external" proguard proguard.jar proguard4.2.jar + fi + + if use netbeans_modules_php ; then + dosymcompilejar "libs.javacup/external" javacup javacup.jar java-cup-11a.jar + fi + + if use netbeans_modules_ruby ; then + dosymcompilejar "libs.yydebug/external" jay yydebug.jar yydebug-1.0.2.jar + fi + + if [ -n "${NB_DOSYMCOMPILEJARFAILED}" ] ; then + die "Some compilation-time jars could not be symlinked" + fi +} + +symlink_extjars() { + local targetdir="" + + einfo "Symlinking runtime jars" + + targetdir="platform${PLATFORM}/modules/ext" + dosyminstjar ${targetdir} javahelp jh.jar jh-2.0_05.jar + dosyminstjar ${targetdir} jna jna.jar jna-3.0.9.jar + dosyminstjar ${targetdir} jsr223 script-api.jar script-api.jar + dosyminstjar ${targetdir} junit-4 junit.jar junit-4.5.jar + dosyminstjar ${targetdir} swing-layout-1 swing-layout.jar swing-layout-1.0.3.jar + + if use netbeans_modules_dlight ; then + targetdir="dlight1/modules/ext" + # derby-10.2.2.0.jar + # h2-1.0.79.jar + fi + + if use netbeans_modules_enterprise ; then + targetdir="/enterprise5/modules/ext" + dosyminstjar ${targetdir} commons-fileupload commons-fileupload.jar commons-fileupload-1.0.jar + # glassfish-jspparser-2.0.jar + # glassfish-logging-2.0.jar + dosyminstjar ${targetdir} httpunit httpunit.jar httpunit-1.6.2.jar + dosyminstjar ${targetdir} jakarta-jstl jstl.jar jstl.jar + dosyminstjar ${targetdir} jakarta-jstl standard.jar standard.jar + dosyminstjar ${targetdir} glassfish-deployment-api-1.2 glassfish-deployment-api.jar jsr88javax.jar + # servlet2.5-jsp2.1-api.jar + targetdir="enterprise5/modules/ext/spring" + # spring-webmvc-2.5.jar + targetdir="enterprise5/modules/ext/jsf-1_2" + dosyminstjar ${targetdir} commons-beanutils-1.7 commons-beanutils.jar commons-beanutils.jar + dosyminstjar ${targetdir} commons-collections commons-collections.jar commons-collections.jar + dosyminstjar ${targetdir} commons-digester commons-digester.jar commons-digester.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging.jar + # jsf-api.jar + # jsf-impl.jar + targetdir="enterprise5/modules/ext/struts" + dosyminstjar ${targetdir} antlr antlr.jar antlr-2.7.2.jar + dosyminstjar ${targetdir} bsf-2.3 bsf.jar bsf-2.3.0.jar + dosyminstjar ${targetdir} commons-beanutils-1.7 commons-beanutils.jar commons-beanutils-1.7.0.jar + # commons-chain-1.1.jar + dosyminstjar ${targetdir} commons-digester commons-digester.jar commons-digester-1.8.jar + dosyminstjar ${targetdir} commons-fileupload commons-fileupload.jar commons-fileupload-1.1.1.jar + dosyminstjar ${targetdir} commons-io-1 commons-io.jar commons-io-1.1.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging-1.0.4.jar + dosyminstjar ${targetdir} commons-validator commons-validator.jar commons-validator-1.3.1.jar + dosyminstjar ${targetdir} jakarta-jstl jstl.jar jstl-1.0.2.jar + dosyminstjar ${targetdir} jakarta-jstl standard.jar standard-1.0.2.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar oro-2.0.8.jar + # struts-core-1.3.8.jar + # struts-el-1.3.8.jar + # struts-extras-1.3.8.jar + # struts-faces-1.3.8.jar + # struts-mailreader-dao-1.3.8.jar + # struts-scripting-1.3.8.jar + # struts-taglib-1.3.8.jar + # struts-tiles-1.3.8.jar + targetdir="enterprise5/modules/ext/metro" + # webservices-api.jar + # webservices-extra.jar + # webservices-extra-api.jar + # webservices-rt.jar + # webservices-tools.jar + targetdir="/enterprise5/modules/ext/rest" + dosyminstjar ${targetdir} asm-3 asm.jar asm-3.1.jar + # grizzly-servlet-webserver-1.7.3.2.jar + # http.jar - com.sun.net.httpserver - part of JavaSE 6 + dosyminstjar ${targetdir} jdom-1.0 jdom.jar jdom-1.0.jar + # jersey.jar + # jersey-spring.jar + dosyminstjar ${targetdir} jettison jettison.jar jettison-1.0-RC1.jar + dosyminstjar ${targetdir} jsr311-api jsr311-api.jar jsr311-api.jar + dosyminstjar ${targetdir} rome rome.jar rome-0.9.jar + # wadl2java.jar - atm do not know what to do with it + fi + + # if use netbeans_modules_groovy ; then + # groovy-all.jar - heavily repackaged + # fi + + if use netbeans_modules_harness ; then + targetdir="harness/antlib" + dosyminstjar ${targetdir} javahelp jhall.jar jsearch-2.0_05.jar + # openjdk-javac-6-b12.jar + targetdir="harness/testcoverage/cobertura" + # cobertura-1.9.jar + targetdir="harness/testcoverage/cobertura/lib" + dosyminstjar ${targetdir} asm-2.2 asm.jar asm-2.2.1.jar + dosyminstjar ${targetdir} asm-2.2 asm-tree.jar asm-tree-2.2.1.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosyminstjar ${targetdir} log4j log4j.jar log4j-1.2.9.jar + fi + + if use netbeans_modules_ide ; then + targetdir="ide${IDE_VERSION}/modules/ext" + # bytelist-0.1.jar + dosyminstjar ${targetdir} commons-codec commons-codec.jar apache-commons-codec-1.3.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.1.jar + dosyminstjar ${targetdir} commons-lang-2.1 commons-lang.jar commons-lang-2.3.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging-1.1.jar + dosyminstjar ${targetdir} commons-net commons-net.jar commons-net-1.4.1.jar + dosyminstjar ${targetdir} flute flute.jar flute-1.3.jar + # core-renderer.jar - flyingsaucer - system one causes deadlock + dosyminstjar ${targetdir} freemarker-2.3 freemarker.jar freemarker-2.3.8.jar + # ini4j-0.4.1.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosyminstjar ${targetdir} jdbc-mysql jdbc-mysql.jar mysql-connector-java-5.1.6-bin.jar + dosyminstjar ${targetdir} jdbc-postgresql jdbc-postgresql.jar postgresql-8.3-603.jdbc3.jar + dosyminstjar ${targetdir} jsch jsch.jar jsch-0.1.41.jar + dosyminstjar ${targetdir} jvyamlb jvyamlb.jar jvyamlb-0.2.3.jar + dosyminstjar ${targetdir} lucene-2.4 lucene-core.jar lucene-core-2.3.2.jar + # org.eclipse.mylyn.bugzilla.core_3.0.5.jar + # org.eclipse.mylyn.commons.core_3.0.5.jar + # org.eclipse.mylyn.commons.net_3.0.5.jar + # org.eclipse.mylyn.tasks.core_3.0.5.jar + # org-mozilla-rhino-patched.jar - some patched stuff + dosyminstjar ${targetdir} sac sac.jar sac-1.3.jar + # smack.jar + # smackx.jar + # resolver-1.2.jar - probably patched apache resolver + # svnClientAdapter-1.6.0.jar + dosyminstjar ${targetdir} subversion svn-javahl.jar svnjavahl-1.6.0.jar + # swingx-0.9.5.jar + dosyminstjar ${targetdir} tomcat-servlet-api-2.2 servlet.jar servlet-2.2.jar + # webserver.jar + dosyminstjar ${targetdir} xerces-2 xercesImpl.jar xerces-2.8.0.jar + targetdir="ide${IDE_VERSION}/modules/ext/jaxb" + dosyminstjar ${targetdir} sun-jaf activation.jar activation.jar + # jaxb-impl.jar + # jaxb-xjc.jar + targetdir="ide${IDE_VERSION}/modules/ext/jaxb/api" + dosyminstjar ${targetdir} jaxb-2 jaxb-api.jar jaxb-api.jar + dosyminstjar ${targetdir} jsr173 jsr173.jar jsr173_api.jar + fi + + if use netbeans_modules_java ; then + targetdir="java2/ant/etc" + dosyminstjar ${targetdir} ant ant-bootstrap.jar ant-bootstrap.jar + targetdir="java2/ant/nblib" + # bridge.jar + targetdir="java2/ant/patches" + # 72080.jar + targetdir="java2/modules" + # org-apache-tools-ant-module.jar + targetdir="java2/modules/ext" + # appframework-1.0.3.jar + dosyminstjar ${targetdir} beansbinding beansbinding.jar beansbinding-1.2.1.jar + dosyminstjar ${targetdir} cglib-2.2 cglib.jar cglib-2.2.jar + # javac-api-nb-7.0-b07.jar + # javac-impl-nb-7.0-b07.jar + dosyminstjar ${targetdir} jdom-1.0 jdom.jar jdom-1.0.jar + # maven-dependency-tree-1.2.jar + # maven-embedder-2.1-20080623-patched.jar + # nexus-indexer-2.0.0-shaded.jar + dosyminstjar ${targetdir} junit junit.jar junit-3.8.2.jar + # swing-worker-1.1.jar + targetdir="java2/modules/ext/jaxws21" + dosyminstjar ${targetdir} fastinfoset fastinfoset.jar FastInfoset.jar + # http.jar + # jaxws-rt.jar + # jaxws-tools.jar + # mimepull.jar - atm do not know what to do with it + dosyminstjar ${targetdir} saaj saaj.jar saaj-impl.jar + dosyminstjar ${targetdir} sjsxp sjsxp.jar sjsxp.jar + dosyminstjar ${targetdir} stax-ex stax-ex.jar stax-ex.jar + dosyminstjar ${targetdir} xmlstreambuffer streambuffer.jar streambuffer.jar + targetdir="java2/modules/ext/jaxws21/api" + # jaxws-api.jar + dosyminstjar ${targetdir} jsr250 jsr250.jar jsr250-api.jar + dosyminstjar ${targetdir} jsr67 jsr67.jar saaj-api.jar + dosyminstjar ${targetdir} jsr181 jsr181.jar jsr181-api.jar + targetdir="java2/modules/ext/hibernate" + dosyminstjar ${targetdir} antlr antlr.jar antlr-2.7.6.jar + dosyminstjar ${targetdir} asm-2.2 asm.jar asm.jar + dosyminstjar ${targetdir} asm-2.2 asm-attrs.jar asm-attrs.jar + dosyminstjar ${targetdir} cglib-2.2 cglib.jar cglib-2.1.3.jar + dosyminstjar ${targetdir} commons-collections commons-collections.jar commons-collections-2.1.1.jar + dosyminstjar ${targetdir} dom4j-1 dom4j.jar dom4j-1.6.1.jar + dosyminstjar ${targetdir} ehcache-1.2 ehcache.jar ehcache-1.2.3.jar + dosyminstjar ${targetdir} glassfish-persistence glassfish-persistence.jar ejb3-persistence.jar + dosyminstjar ${targetdir} glassfish-transaction-api jta.jar jta.jar + dosyminstjar ${targetdir} hibernate-3.1 hibernate3.jar hibernate3.jar + # hibernate-annotations.jar + # hibernate-commons-annotations.jar + # hibernate-entitymanager.jar + # hibernate-tools.jar + dosyminstjar ${targetdir} javassist-3 javassist.jar javassist.jar + # jdbc2_0-stdext.jar - obsolete package + dosyminstjar ${targetdir} jtidy Tidy.jar jtidy-r8-20060801.jar + targetdir="java2/modules/ext/spring" + # spring-2.5.jar + targetdir="java2/modules/ext/toplink" + # toplink-essentials.jar + # toplink-essentials-agent.jar + fi + + if use netbeans_modules_mobility ; then + targetdir="mobility8/modules/ext" + dosyminstjar ${targetdir} ant-contrib ant-contrib.jar ant-contrib-1.0b3.jar + # cdc-agui-swing-layout.jar - atm do not know what to do with it + # cdc-pp-awt-layout.jar - atm do not know what to do with it + dosyminstjar ${targetdir} commons-codec commons-codec.jar commons-codec-1.3.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.1.jar + dosyminstjar ${targetdir} jakarta-slide-webdavclient jakarta-slide-webdavlib.jar jakarta-slide-webdavlib-2.1.jar + # jakarta-slide-ant-webdav-2.1.jar - retired package + dosyminstjar ${targetdir} jdom-1.0 jdom.jar jdom-1.0.jar + # jmunit4cldc10-1.2.1.jar + # jmunit4cldc11-1.2.1.jar + # perseus-nb-1.0.jar + # RicohAntTasks-2.0.jar + targetdir="mobility8/external/proguard" + dosyminstjar ${targetdir} proguard proguard.jar proguard4.2.jar + fi + + if use netbeans_modules_php ; then + targetdir="php1/modules/ext" + dosyminstjar ${targetdir} javacup javacup.jar java-cup-11a.jar + fi + + if use netbeans_modules_ruby ; then + targetdir="ruby2/modules/ext" + dosyminstjar ${targetdir} asm-3 asm.jar asm-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-analysis.jar asm-analysis-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-commons.jar asm-commons-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-tree.jar asm-tree-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-util.jar asm-util-3.0.jar + # debug-commons-java-0.10.0.jar + # dynalang-0.3.jar + dosyminstjar ${targetdir} jline jline.jar jline-0.9.93.jar + dosyminstjar ${targetdir} jna-posix jna-posix.jar jna-posix.jar + dosyminstjar ${targetdir} joda-time joda-time.jar joda-time-1.5.1.jar + dosyminstjar ${targetdir} joni joni.jar joni.jar + # jruby-parser-0.1.jar + # kxml2-2.3.0.jar + dosyminstjar ${targetdir} jay yydebug.jar yydebug-1.0.2.jar + fi + + if [ -n "${NB_DOSYMINSTJARFAILED}" ] ; then + die "Some runtime jars could not be symlinked" + fi +} + +dosymcompilejar() { + if [ -z "${JAVA_PKG_NB_BUNDLED}" ] ; then + local dest="${1}" + local package="${2}" + local jar_file="${3}" + local target_file="${4}" + + # We want to know whether the target jar exists and fail if it doesn't so we know + # something is wrong + local target="${S}/${dest}/${target_file}" + if [ -e "${target}" ] ; then + java-pkg_jar-from --build-only --into "${S}"/${dest} ${package} ${jar_file} ${target_file} + else + ewarn "Target jar does not exist so will not create link: ${target}" + NB_DOSYMCOMPILEJARFAILED="1" + fi + fi +} + +dosyminstjar() { + if [ -z "${JAVA_PKG_NB_BUNDLED}" ] ; then + local dest="${1}" + local package="${2}" + local jar_file="${3}" + local target_file="" + if [ -z "${4}" ]; then + target_file="${3}" + else + target_file="${4}" + fi + + # We want to know whether the target jar exists and fail if it doesn't so we know + # something is wrong + local source="/usr/share/${package}/lib/${jar_file}" + if [ ! -e "${source}" ] ; then + ewarn "Cannot link jar, ${source} does not exist!" + NB_DOSYMINSTJARFAILED="1" + fi + + local target="${DESTINATION}/${dest}/${target_file}" + if [ -e "${D}/${target}" ] ; then + dosym /usr/share/${package}/lib/${jar_file} ${target} + else + ewarn "Target jar does not exist so will not create link: ${D}/${target}" + NB_DOSYMINSTJARFAILED="1" + fi + fi +} + +filter_file() { + local filter_file="${1}" + local tmp_file="${2}" + + if [ -f "${filter_file}" ] ; then + local adjusted=$(echo "${filter_file}" | sed -e "s%\\/%\\\/%g" | sed -e "s/\./\\\./g") + sed -e "/${adjusted}/d" -i "${tmp_file}" || die + else + ewarn "File that should be kept does not exist: ${filter_file}" + NB_FILTERFILESFAILED="1" + fi +} diff --git a/dev-util/netbeans/netbeans-6.9.1.ebuild b/dev-util/netbeans/netbeans-6.9.1.ebuild new file mode 100644 index 00000000..96601cb8 --- /dev/null +++ b/dev-util/netbeans/netbeans-6.9.1.ebuild @@ -0,0 +1,1375 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-util/netbeans/netbeans-6.9.1.ebuild,v 1.5 2011/01/23 00:13:35 fordfrog Exp $ + +EAPI="3" +WANT_SPLIT_ANT="true" +inherit eutils java-pkg-2 java-ant-2 + +DESCRIPTION="NetBeans IDE for Java" +HOMEPAGE="http://www.netbeans.org" + +SLOT="6.9" +# netbeans distributes sources without jar files now so we need our own tarball +# netbeans does not distribute tarball with localizations at all +SRC_URI="http://dev.gentoo.org/~fordfrog/distfiles/${P}.tar.bz2 + http://dev.gentoo.org/~fordfrog/distfiles/${P}-l10n.tar.bz2 + http://dev.gentoo.org/~fordfrog/distfiles/${PN}-${SLOT}.png" + +LICENSE="|| ( CDDL GPL-2-with-linking-exception )" +KEYWORDS="~amd64 ~x86" + +IUSE_NETBEANS_MODULES=" + +netbeans_modules_apisupport + netbeans_modules_cnd + netbeans_modules_dlight + netbeans_modules_enterprise + netbeans_modules_ergonomics + netbeans_modules_groovy + +netbeans_modules_harness + +netbeans_modules_ide + netbeans_modules_identity + +netbeans_modules_java + netbeans_modules_mobility + +netbeans_modules_nb + netbeans_modules_php + netbeans_modules_profiler + netbeans_modules_ruby + +netbeans_modules_websvccommon" +IUSE_LINGUAS=" + linguas_af + linguas_ar + linguas_ca + linguas_cs + linguas_de + linguas_el + linguas_es + linguas_fr + linguas_gl + linguas_hi_IN + linguas_id + linguas_it + linguas_ja + linguas_ko + linguas_lt + linguas_nl + linguas_pl + linguas_pt_BR + linguas_pt_PT + linguas_ro + linguas_ru + linguas_sq + linguas_sr + linguas_sv + linguas_tl + linguas_tr + linguas_vi + linguas_zh_CN + linguas_zh_TW" +IUSE="debug doc keychain ${IUSE_NETBEANS_MODULES} ${IUSE_LINGUAS}" + +RDEPEND=">=virtual/jdk-1.6 + java-virtuals/jdk-with-com-sun + >=dev-java/javahelp-2:0 + dev-java/jna:0 + >=dev-java/swing-layout-1:1 + keychain? ( + net-misc/keychain:0 + net-misc/x11-ssh-askpass:0 + ) + netbeans_modules_enterprise? ( + >=dev-java/antlr-2.7.7:0[java] + >=dev-java/asm-3.1:3 + dev-java/bsf:2.3 + dev-java/commons-beanutils:1.7 + dev-java/commons-collections:0 + dev-java/commons-digester:0 + >=dev-java/commons-fileupload-1:0 + >=dev-java/commons-io-1.1:1 + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-validator-1.3:0 + dev-java/glassfish-deployment-api:1.2 + >=dev-java/httpunit-1.6:0 + dev-java/jakarta-jstl:0 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/jettison-1.0:0 + dev-java/jsr311-api:0 + ) + netbeans_modules_harness? ( + >=dev-java/asm-3.1:3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/log4j-1.2:0 + ) + netbeans_modules_ide? ( + >=dev-java/commons-codec-1.3:0 + >=dev-java/commons-httpclient-3.1:3 + >=dev-java/commons-io-1.1:1 + >=dev-java/commons-lang-2.3:2.1 + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-net-1.4:0 + >=dev-java/flute-1.3:0 + >=dev-java/freemarker-2.3.8:2.3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/jdbc-mysql-5.1:0 + >=dev-java/jdbc-postgresql-8.3_p603:0 + >=dev-java/jsch-0.1.39:0 + dev-java/jsr173:0 + >=dev-java/jzlib-1.0.7:0 + >=dev-java/jvyamlb-0.2.3:0 + dev-java/lucene:2.4 + >=dev-java/sac-1.3:0 + dev-java/sun-jaf:0 + ~dev-java/tomcat-servlet-api-3:2.2 + >=dev-java/xerces-2.8.1:2 + >=dev-vcs/subversion-1.6:0[java] + ) + netbeans_modules_java? ( + >=dev-java/ant-1.7:0 + >=dev-java/antlr-2.7.7:0[java] + >=dev-java/appframework-1.03:0 + dev-java/asm:2.2 + >=dev-java/beansbinding-1.2.1:0 + >=dev-java/cglib-2.2_beta:2.2 + dev-java/commons-collections:0 + >=dev-java/dom4j-1.6:1 + dev-java/ehcache:1.2 + dev-java/fastinfoset:0 + dev-java/glassfish-persistence:0 + dev-java/glassfish-transaction-api:0 + dev-java/hibernate:3.1 + dev-java/javassist:3 + >=dev-java/jdom-1.0:1.0 + dev-java/jsr181:0 + dev-java/jsr250:0 + dev-java/jsr67:0 + dev-java/jtidy:0 + >=dev-java/junit-3.8.2:0 + dev-java/saaj:0 + dev-java/stax-ex:0 + >=dev-java/swing-worker-1.1:0 + dev-java/xmlstreambuffer:0 + ) + netbeans_modules_mobility? ( + >=dev-java/ant-contrib-1.0_beta:0 + >=dev-java/commons-codec-1.3:0 + dev-java/commons-httpclient:3 + dev-java/jakarta-slide-webdavclient:0 + dev-java/jdom:1.0 + >=dev-java/proguard-4.2:0 + ) + netbeans_modules_php? ( + >=dev-java/javacup-0.11a_beta20060608:0 + ) + netbeans_modules_ruby? ( + dev-java/asm:3 + dev-java/jline:0 + dev-java/jna-posix:0 + dev-java/joda-time:0 + dev-java/joni:0 + >=dev-java/jruby-1.5:0 + dev-util/jay:0[java] + )" + +DEPEND=">=virtual/jdk-1.6 + java-virtuals/jdk-with-com-sun + >=dev-java/ant-core-1.7.1:0 + >=dev-java/ant-nodeps-1.7.1:0 + dev-java/ant-trax:0 + >=dev-java/javahelp-2:0 + dev-java/jna:0 + >=dev-java/swing-layout-1:1 + netbeans_modules_cnd? ( + >=dev-java/stringtemplate-3.2:0 + ) + netbeans_modules_enterprise? ( + >=dev-java/commons-fileupload-1:0 + dev-java/glassfish-deployment-api:1.2 + >=dev-java/httpunit-1.6:0 + dev-java/jakarta-jstl:0 + dev-java/tomcat-servlet-api:2.3 + ) + netbeans_modules_harness? ( + >=dev-java/asm-3.1:3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/log4j-1.2:0 + ) + netbeans_modules_ide? ( + >=dev-java/commons-codec-1.3:0 + >=dev-java/commons-httpclient-3.1:3 + >=dev-java/commons-io-1.1:1 + >=dev-java/commons-lang-2.3:2.1 + >=dev-java/commons-logging-1.1:0 + >=dev-java/commons-net-1.4.1:0 + >=dev-java/flute-1.3:0 + >=dev-java/freemarker-2.3.8:2.3 + >=dev-java/jakarta-oro-2:2.0 + >=dev-java/javacc-3.2:0 + >=dev-java/jdbc-mysql-5.1:0 + >=dev-java/jdbc-postgresql-8.3_p603:0 + >=dev-java/jsch-0.1.39:0 + dev-java/jsr173:0 + >=dev-java/jzlib-1.0.7:0 + dev-java/jvyamlb:0 + dev-java/lucene:2.4 + >=dev-java/sac-1.3:0 + dev-java/sun-jaf:0 + ~dev-java/tomcat-servlet-api-3:2.2 + >=dev-java/xerces-2.8.1:2 + >=dev-vcs/subversion-1.6:0[java] + ) + netbeans_modules_java? ( + >=dev-java/appframework-1.03:0 + dev-java/beansbinding:0 + >=dev-java/cglib-2.2_beta:2.2 + dev-java/jdom:1.0 + >=dev-java/junit-3.8:0 + >=dev-java/swing-worker-1.1:0 + ) + netbeans_modules_mobility? ( + >=dev-java/ant-contrib-1.0_beta:0 + >=dev-java/commons-codec-1.3:0 + dev-java/commons-httpclient:3 + dev-java/jakarta-slide-webdavclient:0 + dev-java/jdom:1.0 + >=dev-java/proguard-4.2:0 + ) + netbeans_modules_php? ( + >=dev-java/javacup-0.11a_beta20060608:0 + ) + netbeans_modules_ruby? ( + dev-util/jay:0 + )" + +S="${WORKDIR}" +BUILDDESTINATION="${S}/nbbuild/netbeans" +MY_FDIR="${FILESDIR}/${SLOT}" +DESTINATION="/usr/share/netbeans-${SLOT}" +JAVA_PKG_BSFIX="off" + +pkg_setup() { + local need_apisupport="" + local need_cnd="" + local need_dlight="" + local need_enterprise="" + local need_ergonomics="" + local need_groovy="" + local need_harness="" + local need_ide="" + local need_identity="" + local need_java="" + local need_mobility="" + local need_nb="" + local need_php="" + local need_profiler="" + local need_ruby="" + local need_websvccommon="" + + # direct deps: harness, ide, java + if use netbeans_modules_apisupport ; then + need_harness="1" + need_ide="1" + need_java="1" + fi + + # direct deps: dlight, harness, ide + if use netbeans_modules_cnd ; then + need_dlight="1" + need_harness="1" + need_ide="1" + fi + + # direct deps: ide + if use netbeans_modules_dlight ; then + need_ide="1" + fi + + # direct deps: harness, ide, java, profiler + if use netbeans_modules_enterprise ; then + need_harness="1" + need_ide="1" + need_java="1" + need_profiler="1" + fi + + # direct deps: ide + if use netbeans_modules_ergonomics ; then + need_ide="1" + fi + + # direct deps: ide, java + if use netbeans_modules_groovy ; then + need_ide="1" + need_java="1" + fi + + # direct deps: enterprise, ide, java + if use netbeans_modules_identity ; then + need_enterprise="1" + need_ide="1" + need_java="1" + fi + + # direct deps: harness, ide, websvccommon + if use netbeans_modules_java ; then + #need_harness="1" + need_ide="1" + need_websvccommon="1" + fi + + # direct deps: apisupport, enterprise, ide, java + # dependency on enterprise cluster: http://netbeans.org/bugzilla/show_bug.cgi?id=158064 + if use netbeans_modules_mobility ; then + need_apisupport="1" + need_enterprise="1" + need_ide="1" + need_java="1" + fi + + # direct deps: harness, ide + if use netbeans_modules_nb ; then + need_harness="1" + need_ide="1" + fi + + # direct deps: ide, websvccommon + if use netbeans_modules_php ; then + need_ide="1" + need_websvccommon="1" + fi + + # direct deps: ide, java + if use netbeans_modules_profiler ; then + need_ide="1" + need_java="1" + fi + + # direct deps: harness, ide + if use netbeans_modules_ruby ; then + need_harness="1" + need_ide="1" + fi + + # direct deps: ide + if use netbeans_modules_websvccommon ; then + need_ide="1" + fi + + # currently we require all clusters when building javadoc, can be tested + # what clusters are really needed to build javadoc + # disabled for now as building javadoc now fails with providing clusters + # so trying to drop this requirement + #if use doc ; then + # need_apisupport="1" + # need_cnd="1" + # need_dlight="1" + # need_enterprise="1" + # need_ergonomics="1" + # need_groovy="1" + # need_harness="1" + # need_ide="1" + # need_identity="1" + # need_java="1" + # need_mobility="1" + # need_nb="1" + # need_php="1" + # need_profiler="1" + # need_ruby="1" + # need_websvccommon="1" + #fi + + if [ -n "${need_apisupport}" ] ; then + need_harness="1" + need_ide="1" + need_java="1" + fi + + if [ -n "${need_dlight}" ] ; then + need_ide="1" + fi + + if [ -n "${need_enterprise}" ] ; then + need_ide="1" + need_java="1" + need_profiler="1" + fi + + if [ -n "${need_groovy}" ] ; then + need_ide="1" + need_java="1" + fi + + if [ -n "${need_profiler}" ] ; then + need_ide="1" + need_java="1" + fi + + if [ -n "${need_java}" ] ; then + need_ide="1" + need_websvccommon="1" + fi + + if [ -n "${need_nb}" ] ; then + need_harness="1" + need_ide="1" + fi + + if [ -n "${need_websvccommon}" ] ; then + need_ide="1" + fi + + local missing="" + [ -n "${need_apisupport}" ] && ! use netbeans_modules_apisupport && missing="${missing} apisupport" + [ -n "${need_cnd}" ] && ! use netbeans_modules_cnd && missing="${missing} cnd" + [ -n "${need_dlight}" ] && ! use netbeans_modules_dlight && missing="${missing} dlight" + [ -n "${need_enterprise}" ] && ! use netbeans_modules_enterprise && missing="${missing} enterprise" + [ -n "${need_ergonomics}" ] && ! use netbeans_modules_ergonomics && missing="${missing} ergonomics" + [ -n "${need_groovy}" ] && ! use netbeans_modules_groovy && missing="${missing} groovy" + [ -n "${need_harness}" ] && ! use netbeans_modules_harness && missing="${missing} harness" + [ -n "${need_ide}" ] && ! use netbeans_modules_ide && missing="${missing} ide" + [ -n "${need_identity}" ] && ! use netbeans_modules_identity && missing="${missing} identity" + [ -n "${need_java}" ] && ! use netbeans_modules_java && missing="${missing} java" + [ -n "${need_mobility}" ] && ! use netbeans_modules_mobility && missing="${missing} mobility" + [ -n "${need_nb}" ] && ! use netbeans_modules_nb && missing="${missing} nb" + [ -n "${need_php}" ] && ! use netbeans_modules_php && missing="${missing} php" + [ -n "${need_profiler}" ] && ! use netbeans_modules_profiler && missing="${missing} profiler" + [ -n "${need_ruby}" ] && ! use netbeans_modules_ruby && missing="${missing} ruby" + [ -n "${need_websvccommon}" ] && ! use netbeans_modules_websvccommon && missing="${missing} websvccommon" + + if [ -n "${missing}" ] ; then + eerror "You need to add these modules to NETBEANS_MODULES because they are needed by modules you have selected." + # use doc && eerror "With \"doc\" USE flag enabled, all modules are required." + eerror " Missing NETBEANS_MODULES:${missing}" + die "Missing NETBEANS_MODULES" + fi + + if ! use netbeans_modules_nb ; then + ewarn "You are building netbeans without 'nb' module, this way you will build only specified" + ewarn "clusters, not a functional IDE. In case you want functional IDE, add 'nb' to NETBEANS_MODULES." + epause 5 + fi + + java-pkg-2_pkg_setup +} + +# Custom unpack function to prevent warning about not being able to unpack netbeans-6.9.png +src_unpack () { + unpack ${P}.tar.bz2 + unpack ${P}-l10n.tar.bz2 +} + +src_prepare () { + # We need to disable downloading of jars + epatch "${FILESDIR}"/${SLOT}/nbbuild_build.xml.patch \ + "${FILESDIR}"/${SLOT}/nbbuild_templates_projectized.xml.patch \ + "${FILESDIR}"/${SLOT}/cnd.model.services-build.xml.patch + + if use keychain ; then + epatch "${FILESDIR}"/${SLOT}/netbeans-keychain.patch + fi + + if [ -z "${JAVA_PKG_NB_TRY_JRUBY}" ] ; then + epatch "${FILESDIR}"/${SLOT}/o.jruby.distro_disable.patch + fi + + # Support for custom patches + if [ -n "${NETBEANS_PATCHES_DIR}" -a -d "${NETBEANS_PATCHES_DIR}" ] ; then + local files=`find "${NETBEANS_PATCHES_DIR}" -type f` + + if [ -n "${files}" ] ; then + einfo "Applying custom patches:" + + for file in ${files} ; do + epatch "${file}" + done + fi + fi + + # Clean up nbbuild + einfo "Removing prebuilt *.class files from nbbuild" + local class_files=`find "${S}" -name "*.class"` + + if [ -n "${class_files}" ] ; then + rm -v ${class_files} + fi + + if [ -z "${JAVA_PKG_NB_USE_BUNDLED}" ] ; then + place_unpack_symlinks + fi + + if [ -z "${JAVA_PKG_NB_KEEP_BUNDLED}" ] ; then + # We do not remove the jars that we ar not able to unbundle atm + # More info at: https://overlays.gentoo.org/proj/java/wiki/Netbeans_Maintenance + + local tmpfile="${T}/bundled.txt" + + einfo "Removing rest of the bundled jars..." + find "${S}" -type f -name "*.jar" > ${tmpfile} || die "Cannot put jars in tmp file" + + filter_file "libs.felix/external/felix-2.0.3.jar" ${tmpfile} + filter_file "libs.felix/external/felix-main-2.0.2.jar" ${tmpfile} + filter_file "libs.junit4/external/junit-4.5.jar" ${tmpfile} + filter_file "libs.osgi/external/osgi.cmpn-4.2.jar" ${tmpfile} + filter_file "libs.osgi/external/osgi.core-4.2.jar" ${tmpfile} + + if use netbeans_modules_cnd ; then + filter_file "cnd.antlr3/external/antlr-3.1.3.jar" ${tmpfile} + filter_file "cnd.antlr3/external/antlr-runtime-3.1.3.jar" ${tmpfile} + fi + + if use netbeans_modules_dlight ; then + filter_file "dlight.db.derby/external/derby-10.2.2.0.jar" ${tmpfile} + filter_file "dlight.libs.h2/external/h2-1.0.79.jar" ${tmpfile} + fi + + if use netbeans_modules_enterprise ; then + filter_file "javaee.api/external/javaee-api-6.0.jar" ${tmpfile} + filter_file "javaee.api/external/javaee-web-api-6.0.jar" ${tmpfile} + filter_file "javaee.api/external/javax.annotation.jar" ${tmpfile} + filter_file "javaee.api/external/jaxb-api-osgi.jar" ${tmpfile} + filter_file "javaee.api/external/webservices-api-osgi.jar" ${tmpfile} + filter_file "j2ee.sun.appsrv81/external/appservapis-2.0.58.3.jar" ${tmpfile} + filter_file "j2ee.sun.appsrv81/external/org-netbeans-modules-j2ee-sun-appsrv81.jar" ${tmpfile} + filter_file "libs.glassfish_logging/external/glassfish-logging-2.0.jar" ${tmpfile} + # http://www.netbeans.org/issues/show_bug.cgi?id=164334 + filter_file "servletjspapi/external/servlet2.5-jsp2.1-api.jar" ${tmpfile} + filter_file "spring.webmvc/external/spring-webmvc-2.5.6.SEC01.jar" ${tmpfile} + filter_file "web.jspparser/external/glassfish-jspparser-2.0.jar" ${tmpfile} + # api documentation packaged as jar + filter_file "websvc.restlib/external/jersey-client-1.1.5.1-javadoc.jar" ${tmpfile} + filter_file "websvc.restlib/external/jersey-core-1.1.5.1-javadoc.jar" ${tmpfile} + filter_file "websvc.restlib/external/jersey-json-1.1.5.1-javadoc.jar" ${tmpfile} + filter_file "websvc.restlib/external/jersey-spring-1.1.5.1-javadoc.jar" ${tmpfile} + filter_file "websvc.restlib/external/jsr311-api-1.1.1-javadoc.jar" ${tmpfile} + filter_file "websvc.restlib/external/oauth-client-1.1.5.1-javadoc.jar" ${tmpfile} + filter_file "websvc.restlib/external/oauth-signature-1.1.5.1-javadoc.jar" ${tmpfile} + fi + + if use netbeans_modules_groovy ; then + # heavily repackaged + filter_file "groovy.editor/external/groovy-all-1.6.4.jar" ${tmpfile} + fi + + if use netbeans_modules_harness ; then + filter_file "apisupport.harness/external/bindex-2.2.jar" ${tmpfile} + filter_file "apisupport.tc.cobertura/external/cobertura-1.9.3.jar" ${tmpfile} + filter_file "jemmy/external/jemmy-2.3.0.0.jar" ${tmpfile} + fi + + if use netbeans_modules_ide ; then + filter_file "extexecution.destroy/external/libpam4j-1.1.jar" ${tmpfile} + # org.netbeans.processtreekiller package + filter_file "extexecution.destroy/external/processtreekiller-1.0.1.jar" ${tmpfile} + filter_file "extexecution.destroy/external/winp-1.14-patched.jar" ${tmpfile} + # very old stuff + filter_file "httpserver/external/tomcat-webserver-3.2.jar" ${tmpfile} + filter_file "libs.bugtracking/external/org.eclipse.mylyn.commons.core_3.3.1.jar" ${tmpfile} + filter_file "libs.bugtracking/external/org.eclipse.mylyn.commons.net_3.3.0.jar" ${tmpfile} + filter_file "libs.bugtracking/external/org.eclipse.mylyn.tasks.core_3.3.1.jar" ${tmpfile} + filter_file "libs.bugzilla/external/org.eclipse.mylyn.bugzilla.core_3.3.1.jar" ${tmpfile} + filter_file "libs.bytelist/external/bytelist-0.1.jar" ${tmpfile} + filter_file "libs.ini4j/external/ini4j-0.4.1.jar" ${tmpfile} + filter_file "libs.svnClientAdapter/external/svnClientAdapter-1.6.0.jar" ${tmpfile} + filter_file "libs.swingx/external/swingx-0.9.5.jar" ${tmpfile} + filter_file "libs.smack/external/smack.jar" ${tmpfile} + filter_file "libs.smack/external/smackx.jar" ${tmpfile} + # packaged in a different way than we do (also netbeans seems to require JAXB 2.2) + filter_file "libs.jaxb/external/jaxb-impl.jar" ${tmpfile} + filter_file "libs.jaxb/external/jaxb1-impl.jar" ${tmpfile} + # packaged in a different way than we do + filter_file "libs.jaxb/external/jaxb-xjc.jar" ${tmpfile} + # patched version of apache resolver + filter_file "o.apache.xml.resolver/external/resolver-1.2.jar" ${tmpfile} + filter_file "swing.validation/external/ValidationAPI.jar" ${tmpfile} + # system core-renderer.jar causes deadlocks (in logging) when openning css files + filter_file "web.flyingsaucer/external/core-renderer-R7final.jar" ${tmpfile} + filter_file "xml.jaxb.api/external/jaxb-api.jar" ${tmpfile} + fi + + if use netbeans_modules_java ; then + filter_file "j2ee.eclipselink/external/eclipselink-2.0.2.jar" ${tmpfile} + filter_file "j2ee.eclipselink/external/eclipselink-javax.persistence-2.0.jar" ${tmpfile} + # netbeans bundles also toplink-essentials in the jar + filter_file "j2ee.toplinklib/external/glassfish-persistence-v2ur1-build-09d.jar" ${tmpfile} + # a patch + filter_file "junit/external/Ant-1.8.1-binary-patch-72080.jar" ${tmpfile} + # junit sources + filter_file "junit/external/junit-4.5-src.jar" ${tmpfile} + # some netbeans stuff + filter_file "libs.javacapi/external/javac-api-nb-7.0-b07.jar" ${tmpfile} + # some netbeans stuff + filter_file "libs.javacimpl/external/javac-impl-nb-7.0-b07.jar" ${tmpfile} + filter_file "libs.springframework/external/spring-2.5.6.SEC01.jar" ${tmpfile} + # maven stuff - ignoring for now + filter_file "maven.embedder/external/maven-dependency-tree-1.2.jar" ${tmpfile} + # maven stuff - ignoring for now + filter_file "maven.embedder/external/maven-embedder-2.1-20080623-patched.jar" ${tmpfile} + # maven stuff - ignoring for now + filter_file "maven.indexer/external/nexus-indexer-2.0.0-shaded.jar" ${tmpfile} + fi + + if use netbeans_modules_mobility ; then + # if not commented, the jars are probably some netbeans jars related to mobility + # + # i didn't find sources of this + filter_file "j2me.cdc.project.ricoh/external/RicohAntTasks-2.0.jar" ${tmpfile} + filter_file "mobility.databindingme/lib/netbeans_databindingme.jar" ${tmpfile} + filter_file "mobility.databindingme/lib/netbeans_databindingme_pim.jar" ${tmpfile} + filter_file "mobility.databindingme/lib/netbeans_databindingme_svg.jar" ${tmpfile} + # retired project + filter_file "mobility.deployment.webdav/external/jakarta-slide-ant-webdav-2.1.jar" ${tmpfile} + filter_file "mobility.j2meunit/external/jmunit4cldc10-1.2.1.jar" ${tmpfile} + filter_file "mobility.j2meunit/external/jmunit4cldc11-1.2.1.jar" ${tmpfile} + filter_file "o.n.mobility.lib.activesync/external/nbactivesync-5.0.jar" ${tmpfile} + filter_file "svg.perseus/external/perseus-nb-1.0.jar" ${tmpfile} + filter_file "vmd.components.midp/netbeans_midp_components_basic/dist/netbeans_midp_components_basic.jar" ${tmpfile} + filter_file "vmd.components.midp.pda/netbeans_midp_components_pda/dist/netbeans_midp_components_pda.jar" ${tmpfile} + filter_file "vmd.components.midp.wma/netbeans_midp_components_wma/dist/netbeans_midp_components_wma.jar" ${tmpfile} + filter_file "vmd.components.svg/nb_svg_midp_components/dist/nb_svg_midp_components.jar" ${tmpfile} + fi + + if use netbeans_modules_ruby ; then + filter_file "libs.jrubyparser/external/jruby-parser-0.1.jar" ${tmpfile} + filter_file "o.kxml2/external/kxml2-2.3.0.jar" ${tmpfile} + filter_file "o.rubyforge.debugcommons/external/debug-commons-java-0.10.0.jar" ${tmpfile} + fi + + if [ -n "${NB_FILTERFILESFAILED}" ] ; then + die "Some files that should be filtered do not exist" + fi + + for file in `cat ${tmpfile}` ; do + rm -v ${file} + done + fi +} + +src_compile() { + local antflags="-Dstop.when.broken.modules=true" + + if use debug; then + antflags="${antflags} -Dbuild.compiler.debug=true" + antflags="${antflags} -Dbuild.compiler.deprecation=true" + else + antflags="${antflags} -Dbuild.compiler.debug=false" + antflags="${antflags} -Dbuild.compiler.deprecation=false" + fi + + local clusters="-Dnb.clusters.list=nb.cluster.platform" + for netbeans_module in ${IUSE_NETBEANS_MODULES} ; do + netbeans_module=${netbeans_module/[+]/} + local short_netbeans_module=${netbeans_module/netbeans_modules_/} + use ${netbeans_module} && clusters="${clusters},nb.cluster.${short_netbeans_module}" + done + + local build_target="" + if use netbeans_modules_nb ; then + build_target="build-nozip" + else + build_target="build-clusters" + mkdir -p "${BUILDDESTINATION}" || die + fi + + local extra_flags="" + if use netbeans_modules_ergonomics ; then + mkdir "${S}"/nbbuild/ergonomics_build_fix || die + extra_flags="-Dergonomic.clusters.extra=../../ergonomics_build_fix" + fi + + # Fails to compile + java-pkg_filter-compiler ecj-3.2 ecj-3.3 ecj-3.4 ecj-3.5 + + ANT_TASKS="ant-nodeps ant-trax" ANT_OPTS="-Xmx1g -Djava.awt.headless=true" \ + eant ${antflags} ${clusters} -f nbbuild/build.xml ${extra_flags} ${build_target} + + if use doc ; then + ANT_TASKS="ant-nodeps ant-trax" ANT_OPTS="-Xmx1536m -Djava.awt.headless=true" \ + eant ${antflags} -f nbbuild/build.xml ${extra_flags} build-javadoc + fi + + local locales="" + for lang in ${IUSE_LINGUAS} ; do + local mylang=${lang/linguas_/} + + if [[ "${mylang}" = "ar" ]] ; then + mylang="ar_EG,ar_SA" + elif [[ "${mylang}" = "es" ]] ; then + mylang="es,es_CO" + elif [[ "${mylang}" = "gl" ]] ; then + mylang="gl_ES" + elif [[ "${mylang}" = "id" ]] ; then + mylang="in_ID" + elif [[ "${mylang}" = "nl" ]] ; then + mylang="nl_BE,nl_NL" + elif [[ "${mylang}" = "tl" ]] ; then + mylang="fil_PH" + fi + + if use ${lang} ; then + if [ -z "${locales}" ] ; then + locales="${mylang}" + else + locales="${locales},${mylang}" + fi + fi + done + + if [ -n "${locales}" ] ; then + einfo "Compiling support for locales: ${locales}" + eant ${antflags} -Dlocales=${locales} -Ddist.dir=../nbbuild/netbeans -Dnbms.dir="" -Dnbms.dist.dir="" \ + -f l10n/build.xml build + fi + + # Remove non-Linux binaries + einfo "Removing libraries and scripts for non-linux archs..." + find "${BUILDDESTINATION}" -type f \ + -name "*.exe" -o \ + -name "*.cmd" -o \ + -name "*.bat" -o \ + -name "*.dll" \ + | grep -v "/profiler3/" | xargs rm -fv + + if use netbeans_modules_cnd ; then + rm -fv "${BUILDDESTINATION}"/cnd/bin/*-SunOS-* + rm -fv "${BUILDDESTINATION}"/cnd/bin/*-Mac_OS_X-* + fi + + # Use the system ant + if use netbeans_modules_java ; then + cd "${BUILDDESTINATION}"/java/ant || die "Cannot cd to "${BUILDDESTINATION}"/java/ant" + rm -fr lib + rm -fr bin + rm -fr etc + fi + + # Set initial default jdk + if [[ -e "${BUILDDESTINATION}"/etc/netbeans.conf ]]; then + echo "netbeans_jdkhome=\"\$(java-config -O)\"" >> "${BUILDDESTINATION}"/etc/netbeans.conf + fi + + # Install Gentoo Netbeans ID + # This ID is used to identify our netbeans package while contacting update center + mkdir -p "${BUILDDESTINATION}"/nb/config || die + echo "NBGNT" > "${BUILDDESTINATION}"/nb/config/productid || die "Could not set Gentoo Netbeans ID" + + # fix paths per bug# 163483 + if [[ -e "${BUILDDESTINATION}"/bin/netbeans ]]; then + sed -i -e 's:"$progdir"/../etc/:/etc/netbeans-6.9/:' "${BUILDDESTINATION}"/bin/netbeans + sed -i -e 's:"${userdir}"/etc/:/etc/netbeans-6.9/:' "${BUILDDESTINATION}"/bin/netbeans + fi +} + +src_install() { + insinto ${DESTINATION} + + einfo "Installing the program..." + cd "${BUILDDESTINATION}" + doins -r * + + # Remove the build helper files + rm -f "${D}"/${DESTINATION}/nb.cluster.* + rm -f "${D}"/${DESTINATION}/*.built + rm -f "${D}"/${DESTINATION}/moduleCluster.properties + rm -f "${D}"/${DESTINATION}/module_tracking.xml + rm -f "${D}"/${DESTINATION}/build_info + + # Change location of etc files + if [[ -e "${BUILDDESTINATION}"/etc ]]; then + insinto /etc/${PN}-${SLOT} + doins "${BUILDDESTINATION}"/etc/* + rm -fr "${D}"/${DESTINATION}/etc + dosym /etc/${PN}-${SLOT} ${DESTINATION}/etc + fi + + # Replace bundled jars with system jars + if [ -z "${JAVA_PKG_NB_USE_BUNDLED}" ] ; then + symlink_extjars + fi + + # Correct permissions on executables and possibly remove executables that are not needed on linux + local nbexec_exe="${DESTINATION}/platform${PLATFORM}/lib/nbexec" + fperms 775 ${nbexec_exe} || die + if [[ -e "${D}"/${DESTINATION}/bin/netbeans ]] ; then + fperms 755 "${DESTINATION}/bin/netbeans" || die + fi + if use netbeans_modules_cnd ; then + cd "${D}"/${DESTINATION}/cnd/bin || die + for file in *.sh ; do + fperms 755 ${file} || die + done + for file in `find -name "*.so"` ; do + fperms 755 ${file} || die + done + fi + if use netbeans_modules_ide ; then + cd "${D}"/${DESTINATION}/ide/bin/nativeexecution || die + fperms 755 dorun.sh || die + fi + if use netbeans_modules_profiler ; then + cd "${D}"/${DESTINATION}/profiler/remote-pack-defs || die + for file in *.sh ; do + fperms 755 ${file} || die + done + fi + + # DISABLED FOR NOW BECAUSE BUILDING BUNDLED JRUBY FAILS + # see: http://netbeans.org/bugzilla/show_bug.cgi?id=186736 + if [ -n "${JAVA_PKG_NB_TRY_JRUBY}" ] ; then + if use netbeans_modules_ruby ; then + cd "${D}"/${DESTINATION}/ruby/jruby-1.5.0/bin || die + for file in * ; do + fperms 755 ${file} || die + done + fi + fi + + # Link netbeans executable from bin + if [[ -f "${D}"/${DESTINATION}/bin/netbeans ]]; then + dosym ${DESTINATION}/bin/netbeans /usr/bin/${PN}-${SLOT} + else + dosym ${DESTINATION}/platform/lib/nbexec /usr/bin/${PN}-${SLOT} + fi + + # Ant installation + if use netbeans_modules_java ; then + local ANTDIR="${DESTINATION}/java/ant" + dosym /usr/share/ant/lib ${ANTDIR}/lib + dosym /usr/share/ant-core/bin ${ANTDIR}/bin + dosym /usr/share/ant-core/etc ${ANTDIR}/etc + fi + + # Documentation + einfo "Installing Documentation..." + + cd "${D}"/${DESTINATION} + dohtml CREDITS.html README.html netbeans.css + rm -f build_info CREDITS.html README.html netbeans.css + + if use doc ; then + rm "${S}"/nbbuild/build/javadoc/*.zip + java-pkg_dojavadoc "${S}"/nbbuild/build/javadoc + fi + + # Icons and shortcuts + if use netbeans_modules_nb ; then + einfo "Installing icon..." + dodir /usr/share/icons/hicolor/32x32/apps + dosym ${DESTINATION}/nb/netbeans.png /usr/share/icons/hicolor/32x32/apps/netbeans-${SLOT}.png + dodir /usr/share/icons/hicolor/128x128/apps + cp "${DISTDIR}"/${PN}-${SLOT}.png "${D}"/usr/share/icons/hicolor/128x128/apps/netbeans-${SLOT}.png + dosym /usr/share/icons/hicolor/128x128/apps/netbeans-${SLOT}.png /usr/share/pixmaps/netbeans-${SLOT}.png + fi + + make_desktop_entry netbeans-${SLOT} "Netbeans ${PV}" netbeans-${SLOT} Development +} + +pkg_postinst() { + if use netbeans_modules_nb ; then + einfo "Netbeans automatically starts with the locale you have set in your user profile, if" + einfo "the locale is built for netbeans." + einfo "If you want to force specific locale, use --locale argument, for example:" + einfo "${PN}-${SLOT} --locale de" + einfo "${PN}-${SLOT} --locale pt:BR" + fi + + if use linguas_ar ; then + einfo + einfo "You selected Arabic locale so you can choose either ar:EG or ar:SA variant." + fi + + if use linguas_es ; then + einfo + einfo "You selected Spanish locale so you can choose either es or es:CO variant." + fi + + if use linguas_gl ; then + einfo + einfo "You selected Galician locale which has locale code gl:ES in Netbeans." + fi + + if use linguas_id ; then + einfo + einfo "You selected Indonesian locale which has locale code in:ID in Netbeans." + fi + + if use linguas_nl ; then + einfo + einfo "You selected Dutch locale so you can choose either nl:BE or nl:NL variant." + fi + + if use linguas_tl ; then + einfo + einfo "You selected Tagalog locale which has for Filipino locale code fil:PH in Netbeans." + fi + + if use netbeans_modules_ruby ; then + einfo + ewarn "Due to issue with building jruby-1.5.0, bundled jruby is completely removed from" + ewarn "build, and also Glassfish JRuby module is removed. Nevertheless you should be able" + ewarn "to use Gentoo JRuby package with Netbeans without any problems." + fi + + if use keychain ; then + einfo + einfo "You enabled keychain support, that means NetBeans will use keychain for managing" + einfo "your keys while connecting to ssh protected repositories. If you want to load some" + einfo "keys on NetBeans startup, create file keychain-keys.txt in your userdir" + einfo "(~/.netbeans/${SLOT}/keychain-keys.txt) and put names of your keys in the file," + einfo "each key on single line, for example:" + einfo "id_dsa" + einfo "id_dsa_gentoo" + einfo "If on NetBeans startup key will not be handled by keychain yet, you will be asked" + einfo "for key password (only this time and never again). You can find more information" + einfo "about keychain at http://www.gentoo.org/doc/en/keychain-guide.xml" + fi +} + +# Supporting functions for this ebuild + +place_unpack_symlinks() { + local target="" + + einfo "Symlinking compilation-time jars" + + dosymcompilejar "apisupport.harness/external" javahelp jhall.jar jsearch-2.0_05.jar + dosymcompilejar "javahelp/external" javahelp jh.jar jh-2.0_05.jar + dosymcompilejar "o.jdesktop.layout/external" swing-layout-1 swing-layout.jar swing-layout-1.0.4.jar + dosymcompilejar "libs.jna/external" jna jna.jar jna-3.0.9.jar + + if use netbeans_modules_cnd ; then + dosymcompilejar "cnd.antlr3/external" stringtemplate stringtemplate.jar stringtemplate-3.2.jar + fi + + if use netbeans_modules_enterprise ; then + dosymcompilejar "j2eeapis/external" glassfish-deployment-api-1.2 glassfish-deployment-api.jar jsr88javax.jar + dosymcompilejar "libs.commons_fileupload/external" commons-fileupload commons-fileupload.jar commons-fileupload-1.0.jar + dosymcompilejar "libs.httpunit/external" httpunit httpunit.jar httpunit-1.6.2.jar + dosymcompilejar "web.jstl11/external" jakarta-jstl jstl.jar jstl-1.1.2.jar + dosymcompilejar "web.jstl11/external" jakarta-jstl standard.jar standard-1.1.2.jar + dosymcompilejar "web.monitor/external" tomcat-servlet-api-2.3 servlet.jar servlet-2.3.jar + fi + + if use netbeans_modules_harness ; then + dosymcompilejar "apisupport.tc.cobertura/external" asm-3 asm.jar asm-3.0.jar + dosymcompilejar "apisupport.tc.cobertura/external" asm-3 asm-tree.jar asm-tree-3.0.jar + dosymcompilejar "apisupport.tc.cobertura/external" jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosymcompilejar "apisupport.tc.cobertura/external" log4j log4j.jar log4j-1.2.9.jar + fi + + if use netbeans_modules_ide ; then + dosymcompilejar "extexecution.destroy/external" commons-io-1 commons-io.jar commons-io-1.4.jar + dosymcompilejar "libs.commons_codec/external" commons-codec commons-codec.jar apache-commons-codec-1.3.jar + dosymcompilejar "libs.commons_logging/external" commons-logging commons-logging.jar commons-logging-1.1.jar + dosymcompilejar "libs.bugtracking/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.1.jar + dosymcompilejar "libs.bugtracking/external" commons-lang-2.1 commons-lang.jar commons-lang-2.3.jar + dosymcompilejar "libs.jsch/external" jsch jsch.jar jsch-0.1.41.jar + dosymcompilejar "libs.jvyamlb/external" jvyamlb jvyamlb.jar jvyamlb-0.2.3.jar + dosymcompilejar "libs.jzlib/external" jzlib jzlib.jar jzlib-1.0.7.jar + dosymcompilejar "libs.svnClientAdapter/external" subversion svn-javahl.jar svnjavahl-1.6.0.jar + dosymcompilejar "libs.lucene/external" lucene-2.4 lucene-core.jar lucene-core-2.4.1.jar + dosymcompilejar "css.visual/external" sac sac.jar sac-1.3.jar + dosymcompilejar "css.visual/external" flute flute.jar flute-1.3.jar + dosymcompilejar "db.drivers/external" jdbc-mysql jdbc-mysql.jar mysql-connector-java-5.1.6-bin.jar + dosymcompilejar "db.drivers/external" jdbc-postgresql jdbc-postgresql.jar postgresql-8.3-603.jdbc3.jar + dosymcompilejar "db.sql.visualeditor/external" javacc javacc.jar javacc-3.2.jar + dosymcompilejar "servletapi/external" tomcat-servlet-api-2.2 servlet.jar servlet-2.2.jar + dosymcompilejar "libs.xerces/external" xerces-2 xercesImpl.jar xerces-2.8.0.jar + dosymcompilejar "libs.jakarta_oro/external" jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosymcompilejar "libs.commons_net/external" commons-net commons-net.jar commons-net-1.4.1.jar + dosymcompilejar "libs.freemarker/external" freemarker-2.3 freemarker.jar freemarker-2.3.8.jar + dosymcompilejar "xml.jaxb.api/external" jsr173 jsr173.jar jsr173_api.jar + dosymcompilejar "xml.jaxb.api/external" sun-jaf activation.jar activation.jar + fi + + if use netbeans_modules_java ; then + dosymcompilejar "o.jdesktop.beansbinding/external" beansbinding beansbinding.jar beansbinding-1.2.1.jar + dosymcompilejar "maven.embedder/external" jdom-1.0 jdom.jar jdom-1.0.jar + dosymcompilejar "junit/external" junit junit.jar junit-3.8.2.jar + dosymcompilejar "libs.cglib/external" cglib-2.2 cglib.jar cglib-2.2.jar + dosymcompilejar "swingapp/external" appframework appframework.jar appframework-1.0.3.jar + dosymcompilejar "swingapp/external" swing-worker swing-worker.jar swing-worker-1.1.jar + fi + + if use netbeans_modules_mobility ; then + dosymcompilejar "j2me.cdc.project.ricoh/external" commons-codec commons-codec.jar commons-codec-1.3.jar + dosymcompilejar "j2me.cdc.project.ricoh/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.jar + dosymcompilejar "mobility.antext/external" ant-contrib ant-contrib.jar ant-contrib-1.0b3.jar + dosymcompilejar "mobility.deployment.webdav/external" commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.1.jar + dosymcompilejar "mobility.deployment.webdav/external" jdom-1.0 jdom.jar jdom-1.0.jar + dosymcompilejar "mobility.deployment.webdav/external" jakarta-slide-webdavclient jakarta-slide-webdavlib.jar jakarta-slide-webdavlib-2.1.jar + dosymcompilejar "mobility.proguard/external" proguard proguard.jar proguard4.4.jar + fi + + if use netbeans_modules_php ; then + dosymcompilejar "libs.javacup/external" javacup javacup.jar java-cup-11a.jar + fi + + if use netbeans_modules_ruby ; then + dosymcompilejar "libs.yydebug/external" jay yydebug.jar yydebug-1.0.2.jar + fi + + if [ -n "${NB_DOSYMCOMPILEJARFAILED}" ] ; then + die "Some compilation-time jars could not be symlinked" + fi +} + +symlink_extjars() { + local targetdir="" + + einfo "Symlinking runtime jars" + + targetdir="platform/modules/ext" + # felix-2.0.3.jar - not packaged + # felix-main-2.0.2.jar - not packaged + dosyminstjar ${targetdir} javahelp jh.jar jh-2.0_05.jar + dosyminstjar ${targetdir} jna jna.jar jna-3.0.9.jar + # junit-4.5.jar - out does not contain hamcrest classes + # osgi.core-4.2.jar - not packaged + # osgi.cmpn-4.2.jar - not packaged + dosyminstjar ${targetdir} swing-layout-1 swing-layout.jar swing-layout-1.0.4.jar + + if use netbeans_modules_cnd ; then + targetdir="cnd/modules/ext" + # antlr-3.1.3.jar - upstream contains more classes + # antlr-runtime-3.1.3.jar - subset of antlr classes + # stringtemplate-3.2.jar + fi + + if use netbeans_modules_dlight ; then + targetdir="dlight/modules/ext" + # derby-10.2.2.0.jar - not packaged + # h2-1.0.79.jar - not packaged + fi + + if use netbeans_modules_enterprise ; then + targetdir="/enterprise/modules/ext" + dosyminstjar ${targetdir} commons-fileupload commons-fileupload.jar commons-fileupload-1.0.jar + dosyminstjar ${targetdir} glassfish-deployment-api-1.2 glassfish-deployment-api.jar jsr88javax.jar + # glassfish-jspparser-2.0.jar + # glassfish-logging-2.0.jar + dosyminstjar ${targetdir} httpunit httpunit.jar httpunit-1.6.2.jar + dosyminstjar ${targetdir} jakarta-jstl jstl.jar jstl.jar + dosyminstjar ${targetdir} jakarta-jstl standard.jar standard.jar + # javaee-api-6.0.jar + # javaee-web-api-6.0.jar + # servlet2.5-jsp2.1-api.jar + targetdir="enterprise/modules/ext/javaee6-endorsed" + # javax.annotation.jar + # jaxb-api-osgi.jar + # webservices-api-osgi.jar + targetdir="enterprise/modules/ext/jsf-1_2" + dosyminstjar ${targetdir} commons-beanutils-1.7 commons-beanutils.jar commons-beanutils.jar + dosyminstjar ${targetdir} commons-collections commons-collections.jar commons-collections.jar + dosyminstjar ${targetdir} commons-digester commons-digester.jar commons-digester.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging.jar + # jsf-api.jar + # jsf-impl.jar + targetdir="enterprise/modules/ext/jsf-2_0" + # jsf-api.jar + # jsf-impl.jar + targetdir="enterprise/modules/ext/metro" + # webservices-api.jar + # webservices-extra-api.jar + # webservices-extra.jar + # webservices-rt.jar + # webservices-tools.jar + targetdir="enterprise/modules/ext/rest" + dosyminstjar ${targetdir} asm-3 asm.jar asm-3.1.jar + # jackson-core-asl-1.1.1.jar + # jersey-client-1.1.5.1.jar + # jersey-core-1.1.5.1.jar + # jersey-json-1.1.5.1.jar + # jersey-server-1.1.5.1.jar + # jersey-spring-1.1.5.1.jar + dosyminstjar ${targetdir} jettison jettison.jar jettison-1.1.jar + dosyminstjar ${targetdir} jsr311-api jsr311-api.jar jsr311-api-1.1.1.jar + # oauth-client-1.1.5.1.jar + # oauth-signature-1.1.5.1.jar + targetdir="enterprise/modules/ext/spring" + # servlet2.5-jsp2.1-api.jar + targetdir="enterprise/modules/ext/struts" + dosyminstjar ${targetdir} antlr antlr.jar antlr-2.7.2.jar + dosyminstjar ${targetdir} bsf-2.3 bsf.jar bsf-2.3.0.jar + dosyminstjar ${targetdir} commons-beanutils-1.7 commons-beanutils.jar commons-beanutils-1.7.0.jar + # commons-chain-1.1.jar + dosyminstjar ${targetdir} commons-digester commons-digester.jar commons-digester-1.8.jar + dosyminstjar ${targetdir} commons-fileupload commons-fileupload.jar commons-fileupload-1.1.1.jar + dosyminstjar ${targetdir} commons-io-1 commons-io.jar commons-io-1.1.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging-1.0.4.jar + dosyminstjar ${targetdir} commons-validator commons-validator.jar commons-validator-1.3.1.jar + dosyminstjar ${targetdir} jakarta-jstl jstl.jar jstl-1.0.2.jar + dosyminstjar ${targetdir} jakarta-jstl standard.jar standard-1.0.2.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar oro-2.0.8.jar + # struts-core-1.3.8.jar + # struts-el-1.3.8.jar + # struts-extras-1.3.8.jar + # struts-faces-1.3.8.jar + # struts-mailreader-dao-1.3.8.jar + # struts-scripting-1.3.8.jar + # struts-taglib-1.3.8.jar + # struts-tiles-1.3.8.jar + fi + + # if use netbeans_modules_groovy ; then + # groovy-all.jar - heavily repackaged + # fi + + if use netbeans_modules_harness ; then + targetdir="harness/antlib" + # bindex-2.2.jar + dosyminstjar ${targetdir} javahelp jhall.jar jsearch-2.0_05.jar + targetdir="harness/testcoverage/cobertura" + # cobertura-1.9.3.jar + targetdir="harness/testcoverage/cobertura/lib" + dosyminstjar ${targetdir} asm-3 asm.jar asm-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-tree.jar asm-tree-3.0.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosyminstjar ${targetdir} log4j log4j.jar log4j-1.2.9.jar + fi + + if use netbeans_modules_ide ; then + targetdir="ide/modules" + # org-mozilla-rhino-patched.jar - some patched stuff + targetdir="ide/modules/ext" + # bytelist-0.1.jar + dosyminstjar ${targetdir} commons-codec commons-codec.jar apache-commons-codec-1.3.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.1.jar + dosyminstjar ${targetdir} commons-io-1 commons-io.jar commons-io-1.4.jar + dosyminstjar ${targetdir} commons-lang-2.1 commons-lang.jar commons-lang-2.3.jar + dosyminstjar ${targetdir} commons-logging commons-logging.jar commons-logging-1.1.jar + dosyminstjar ${targetdir} commons-net commons-net.jar commons-net-1.4.1.jar + dosyminstjar ${targetdir} flute flute.jar flute-1.3.jar + # core-renderer.jar - flyingsaucer - system one causes deadlock + dosyminstjar ${targetdir} freemarker-2.3 freemarker.jar freemarker-2.3.8.jar + # ini4j-0.4.1.jar + dosyminstjar ${targetdir} jakarta-oro-2.0 jakarta-oro.jar jakarta-oro-2.0.8.jar + dosyminstjar ${targetdir} jdbc-mysql jdbc-mysql.jar mysql-connector-java-5.1.6-bin.jar + dosyminstjar ${targetdir} jdbc-postgresql jdbc-postgresql.jar postgresql-8.3-603.jdbc3.jar + dosyminstjar ${targetdir} jsch jsch.jar jsch-0.1.41.jar + dosyminstjar ${targetdir} jvyamlb jvyamlb.jar jvyamlb-0.2.3.jar + dosyminstjar ${targetdir} jzlib jzlib.jar jzlib-1.0.7.jar + # libpam4j-1.1.jar + dosyminstjar ${targetdir} lucene-2.4 lucene-core.jar lucene-core-2.4.1.jar + # org.eclipse.mylyn.bugzilla.core_3.3.1.jar + # org.eclipse.mylyn.commons.core_3.3.1.jar + # org.eclipse.mylyn.commons.net_3.3.0.jar + # org.eclipse.mylyn.tasks.core_3.3.1.jar + dosyminstjar ${targetdir} sac sac.jar sac-1.3.jar + # resolver-1.2.jar - probably patched apache resolver + # smack.jar + # smackx.jar + # svnClientAdapter-1.6.0.jar + dosyminstjar ${targetdir} subversion svn-javahl.jar svnjavahl-1.6.0.jar + # swingx-0.9.5.jar + dosyminstjar ${targetdir} tomcat-servlet-api-2.2 servlet.jar servlet-2.2.jar + # webserver.jar + # winp-1.14-patched.jar + dosyminstjar ${targetdir} xerces-2 xercesImpl.jar xerces-2.8.0.jar + targetdir="ide/modules/ext/jaxb" + # jaxb-impl.jar + # jaxb-xjc.jar + # jaxb1-impl.jar + targetdir="ide/modules/ext/jaxb/api" + # jaxb-api.jar + dosyminstjar ${targetdir} jsr173 jsr173.jar jsr173_api.jar + targetdir="ide/modules/ext/jaxb" + dosyminstjar ${targetdir} sun-jaf activation.jar activation.jar + fi + + if use netbeans_modules_java ; then + targetdir="java/ant/nblib" + # bridge.jar + targetdir="java/ant/patches" + # 72080.jar + targetdir="java/modules" + # org-apache-tools-ant-module.jar + targetdir="java/modules/ext/eclipselink" + # eclipselink-javax.persistence-2.0.jar + # eclipselink-2.0.2.jar + targetdir="java/modules/ext" + dosyminstjar ${targetdir} appframework appframework.jar appframework-1.0.3.jar + dosyminstjar ${targetdir} beansbinding beansbinding.jar beansbinding-1.2.1.jar + dosyminstjar ${targetdir} cglib-2.2 cglib.jar cglib-2.2.jar + # javac-api-nb-7.0-b07.jar + # javac-impl-nb-7.0-b07.jar + dosyminstjar ${targetdir} jdom-1.0 jdom.jar jdom-1.0.jar + # maven-dependency-tree-1.2.jar + # maven-embedder-2.1-20080623-patched.jar + # nexus-indexer-2.0.0-shaded.jar + dosyminstjar ${targetdir} junit junit.jar junit-3.8.2.jar + dosyminstjar ${targetdir} swing-worker swing-worker.jar swing-worker-1.1.jar + targetdir="java/modules/ext/hibernate" + dosyminstjar ${targetdir} antlr antlr.jar antlr-2.7.6.jar + dosyminstjar ${targetdir} asm-2.2 asm.jar asm.jar + dosyminstjar ${targetdir} asm-2.2 asm-attrs.jar asm-attrs.jar + dosyminstjar ${targetdir} cglib-2.2 cglib.jar cglib-2.1.3.jar + dosyminstjar ${targetdir} commons-collections commons-collections.jar commons-collections-2.1.1.jar + dosyminstjar ${targetdir} dom4j-1 dom4j.jar dom4j-1.6.1.jar + dosyminstjar ${targetdir} ehcache-1.2 ehcache.jar ehcache-1.2.3.jar + dosyminstjar ${targetdir} glassfish-persistence glassfish-persistence.jar ejb3-persistence.jar + dosyminstjar ${targetdir} glassfish-transaction-api jta.jar jta.jar + dosyminstjar ${targetdir} hibernate-3.1 hibernate3.jar hibernate3.jar + # hibernate-annotations.jar + # hibernate-commons-annotations.jar + # hibernate-entitymanager.jar + # hibernate-tools.jar + dosyminstjar ${targetdir} javassist-3 javassist.jar javassist.jar + # jdbc2_0-stdext.jar - obsolete package + dosyminstjar ${targetdir} jtidy Tidy.jar jtidy-r8-20060801.jar + targetdir="java/modules/ext/jaxws22" + dosyminstjar ${targetdir} fastinfoset fastinfoset.jar FastInfoset.jar + # gmbal-api-only.jar + # http.jar + # jaxws-rt.jar + # jaxws-tools.jar + # management-api.jar + # mimepull.jar - atm do not know what to do with it + # policy.jar + dosyminstjar ${targetdir} saaj saaj.jar saaj-impl.jar + dosyminstjar ${targetdir} stax-ex stax-ex.jar stax-ex.jar + dosyminstjar ${targetdir} xmlstreambuffer streambuffer.jar streambuffer.jar + # woodstox.jar + targetdir="java/modules/ext/jaxws22/api" + # jaxws-api.jar + dosyminstjar ${targetdir} jsr250 jsr250.jar jsr250-api.jar + dosyminstjar ${targetdir} jsr67 jsr67.jar saaj-api.jar + dosyminstjar ${targetdir} jsr181 jsr181.jar jsr181-api.jar + targetdir="java/modules/ext/spring" + # spring-2.5.6.SEC01.jar + targetdir="java/modules/ext/spring-3.0" + # spring-aop-3.0.2.RELEASE.jar + # spring-asm-3.0.2.RELEASE.jar + # spring-aspects-3.0.2.RELEASE.jar + # spring-beans-3.0.2.RELEASE.jar + # spring-context-support-3.0.2.RELEASE.jar + # spring-context-3.0.2.RELEASE.jar + # spring-core-3.0.2.RELEASE.jar + # spring-expression-3.0.2.RELEASE.jar + # spring-instrument-tomcat-3.0.2.RELEASE.jar + # spring-instrument-3.0.2.RELEASE.jar + # spring-jdbc-3.0.2.RELEASE.jar + # spring-jms-3.0.2.RELEASE.jar + # spring-orm-3.0.2.RELEASE.jar + # spring-oxm-3.0.2.RELEASE.jar + # spring-struts-3.0.2.RELEASE.jar + # spring-test-3.0.2.RELEASE.jar + # spring-tx-3.0.2.RELEASE.jar + # spring-webmvc-portlet-3.0.2.RELEASE.jar + # spring-webmvc-3.0.2.RELEASE.jar + # spring-web-3.0.2.RELEASE.jar + targetdir="java/modules/ext/toplink" + # toplink-essentials.jar + # toplink-essentials-agent.jar + fi + + if use netbeans_modules_mobility ; then + targetdir="mobility/modules/ext" + dosyminstjar ${targetdir} ant-contrib ant-contrib.jar ant-contrib-1.0b3.jar + # cdc-agui-swing-layout.jar - atm do not know what to do with it + # cdc-pp-awt-layout.jar - atm do not know what to do with it + dosyminstjar ${targetdir} commons-codec commons-codec.jar commons-codec-1.3.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.jar + dosyminstjar ${targetdir} commons-httpclient-3 commons-httpclient.jar commons-httpclient-3.0.1.jar + dosyminstjar ${targetdir} jakarta-slide-webdavclient jakarta-slide-webdavlib.jar jakarta-slide-webdavlib-2.1.jar + # jakarta-slide-ant-webdav-2.1.jar - retired package + dosyminstjar ${targetdir} jdom-1.0 jdom.jar jdom-1.0.jar + # jmunit4cldc10-1.2.1.jar + # jmunit4cldc11-1.2.1.jar + # perseus-nb-1.0.jar + # RicohAntTasks-2.0.jar + targetdir="mobility/external/proguard" + dosyminstjar ${targetdir} proguard proguard.jar proguard4.4.jar + fi + + if use netbeans_modules_php ; then + targetdir="php/modules/ext" + dosyminstjar ${targetdir} javacup javacup.jar java-cup-11a.jar + fi + + if use netbeans_modules_ruby ; then + targetdir="ruby/modules" + # org-jruby.jar + # org-kxml2.jar + # org-rubyforge-debugcommons.jar + targetdir="ruby/modules/ext" + dosyminstjar ${targetdir} asm-3 asm.jar asm-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-analysis.jar asm-analysis-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-commons.jar asm-commons-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-tree.jar asm-tree-3.0.jar + dosyminstjar ${targetdir} asm-3 asm-util.jar asm-util-3.0.jar + # debug-commons-java-0.10.0.jar + # dynalang-0.3.jar + dosyminstjar ${targetdir} jline jline.jar jline-0.9.93.jar + dosyminstjar ${targetdir} jna-posix jna-posix.jar jna-posix.jar + dosyminstjar ${targetdir} joda-time joda-time.jar joda-time-1.5.1.jar + dosyminstjar ${targetdir} joni joni.jar joni.jar + # jruby-parser-0.1.jar + # kxml2-2.3.0.jar + dosyminstjar ${targetdir} jay yydebug.jar yydebug-1.0.2.jar + fi + + if [ -n "${NB_DOSYMINSTJARFAILED}" ] ; then + die "Some runtime jars could not be symlinked" + fi +} + +dosymcompilejar() { + if [ -z "${JAVA_PKG_NB_BUNDLED}" ] ; then + local dest="${1}" + local package="${2}" + local jar_file="${3}" + local target_file="${4}" + + # We want to know whether the target jar exists and fail if it doesn't so we know + # something is wrong + local target="${S}/${dest}/${target_file}" + if [ -e "${target}" ] ; then + java-pkg_jar-from --build-only --into "${S}"/${dest} ${package} ${jar_file} ${target_file} + else + ewarn "Target jar does not exist so will not create link: ${target}" + NB_DOSYMCOMPILEJARFAILED="1" + fi + fi +} + +dosyminstjar() { + if [ -z "${JAVA_PKG_NB_BUNDLED}" ] ; then + local dest="${1}" + local package="${2}" + local jar_file="${3}" + local target_file="" + if [ -z "${4}" ]; then + target_file="${3}" + else + target_file="${4}" + fi + + # We want to know whether the target jar exists and fail if it doesn't so we know + # something is wrong + local source="/usr/share/${package}/lib/${jar_file}" + if [ ! -e "${source}" ] ; then + ewarn "Cannot link jar, ${source} does not exist!" + NB_DOSYMINSTJARFAILED="1" + fi + + local target="${DESTINATION}/${dest}/${target_file}" + if [ -e "${D}/${target}" ] ; then + dosym /usr/share/${package}/lib/${jar_file} ${target} + else + ewarn "Target jar does not exist so will not create link: ${D}/${target}" + NB_DOSYMINSTJARFAILED="1" + fi + fi +} + +filter_file() { + local filter_file="${1}" + local tmp_file="${2}" + + if [ -f "${filter_file}" ] ; then + local adjusted=$(echo "${filter_file}" | sed -e "s%\\/%\\\/%g" | sed -e "s/\./\\\./g") + sed -e "/${adjusted}/d" -i "${tmp_file}" || die + else + ewarn "File that should be kept does not exist: ${filter_file}" + NB_FILTERFILESFAILED="1" + fi +} |