When we put split-ant to tree, ANT_TASKS defaulted to "all" if not set, in order not to break existing ebuilds. With the JAVA_PKG_STRICT set, a check was run on the DEPEND to see if there's dev-java/ant or dev-java/ant-tasks which would trigger setting ANT_TASKS="all", and otherwise assume "none". Then we migrated ebuilds depending on ant-tasks/ant to use the individual tasks, which is now done and thus ebuilds depending on just on ant-core should default to ANT_TASKS="none", which is what the attached eclasses patch will do (and also restrict ant-core dependency to >=1.7.0 so that ANT_TASKS is actually honored). In order to be sure not break stable tree (devs who have JAVA_PKG_STRICT set mostly run ~arch and don't have all the packages installed etc), we would like to ask arch teams for testing, similarly to bug 142538. I will post the eclass patch to apply and list of stable java packages using ant for each arch, generated by the script in $URL. Thanks in advance for the boring testing :)
Created attachment 139619 [details, diff] patch for java eclasses to apply before testing
Created attachment 139626 [details] x86 list
Created attachment 139641 [details] amd64 list
Created attachment 139650 [details] ppc list
Created attachment 139670 [details] ppc64 list have fun
To avoid breaking Netbeans amd64 and x86 need to do bug 204625 before this patch can be applied.
I tested all mentioned packages, no problems (with newer netbeans stable). Removing x86.
I hit a circular dep with FEATURES="test" on my packages. Check this out: baudequad ~ # FEATURES="test" emerge -pv `cat java.pkgs ` These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] www-servers/tomcat-6.0.14-r1 USE="test -doc -examples -source" [ebuild N ] dev-java/commons-dbcp-1.2.2 USE="test -doc -source" !!! Error: circular dependencies: ('ebuild', '/', 'dev-java/commons-dbcp-1.2.2', 'merge') depends on ('ebuild', '/', 'www-servers/tomcat-6.0.14-r1', 'merge') (hard) ('ebuild', '/', 'www-servers/tomcat-6.0.14-r1', 'merge') depends on ('ebuild', '/', 'dev-java/commons-dbcp-1.2.2', 'merge') (hard) !!! Note that circular dependencies can often be avoided by temporarily !!! disabling USE flags that trigger optional dependencies. baudequad ~ # This is for ppc64. Can the java herd peek at this?
(In reply to comment #8) > I hit a circular dep with FEATURES="test" on my packages. Check this out: > Can the java herd peek at this? Created bug 205245 about it, thanks. But since it's unrelated to this bug, please proceed and workaround it by emerging commons-dbcp without FEATURES=test first. Thanks.
works for ppc64
OK, Kenneth tested amd64 so that's enough coverage, and shouldn't be any different for ppc. Patch committed, thanks everyone.
Reopening, as ant guide should reflect the changes. Also, I'm removing the WANT_SPLIT_ANT declaration from ebuilds in tree. There are also cases where ebuilds explicitly say ANT_TASKS="none" although it's now not needed, but I will probably not touch these, since ANT_TASKS is still supported variable, unlike WANT_SPLIT_ANT.
OK, documentation updated. Also added links to ant guide in the java packaging guide.