i tried to emerge netbeans, which requires xjavac - this package fails with the following message: >>> Emerging (6 of 24) dev-java/xjavac-20041208-r5 to / * xjavac-20041208.tar.gz RMD160 ;-) ... [ ok ] * xjavac-20041208.tar.gz SHA1 ;-) ... [ ok ] * xjavac-20041208.tar.gz SHA256 ;-) ... [ ok ] * xjavac-20041208.tar.gz size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking xjavac-20041208.tar.gz ;-) ... [ ok ] * Using: blackdown-jdk-1.4.2 >>> Unpacking source... >>> Unpacking xjavac-20041208.tar.gz to /var/tmp/portage/dev-java/xjavac-20041208-r5/work * Applying xjavac-ibm-1_5.patch ... [ ok ] * Applying xjavac-more-vendors.patch ... [ ok ] >>> Source unpacked. Rewriting source attributes Using Sax to rewrite the build.xml files Rewriting ./build.xml Rewriting target attributes Using Sax to rewrite the build.xml files Rewriting ./build.xml >>> Compiling source in /var/tmp/portage/dev-java/xjavac-20041208-r5/work/xjavac-20041208 ... * Using all available ANT_TASKS Unknown argument: --build-only, ant [options] [target [target2 [target3] ...]] Options: -help, -h print this message -projecthelp, -p print project help information -version print the version information and exit -diagnostics print information that might be helpful to diagnose or report problems. -quiet, -q be extra quiet -verbose, -v be extra verbose -debug, -d print debugging information -emacs, -e produce logging information without adornments -lib <path> specifies a path to search for jars and classes -logfile <file> use given file for log -l <file> '' -logger <classname> the class which is to perform logging -listener <classname> add an instance of class as a project listener -noinput do not allow interactive input -buildfile <file> use given buildfile -file <file> '' -f <file> '' -D<property>=<value> use value for given property -keep-going, -k execute all targets that do not depend on failed target(s) -propertyfile <name> load all properties from file with -D properties taking precedence -inputhandler <class> the class which will handle input requests -find <file> (s)earch for buildfile towards the root of -s <file> the filesystem and use it -nice number A niceness value for the main thread: 1 (lowest) to 10 (highest); 5 is the default -nouserlib Run ant without using the jar files from ${user.home}/.ant/lib -noclasspath Run ant without using CLASSPATH -autoproxy Java1.5+: use the OS proxy settings -main <class> override Ant's normal entry point !!! ERROR: dev-java/xjavac-20041208-r5 failed. Call stack: ebuild.sh, line 1614: Called dyn_compile ebuild.sh, line 971: Called qa_call 'src_compile' environment, line 4749: Called src_compile xjavac-20041208-r5.ebuild, line 29: Called eant 'jar' '-Dclasspath=' '*' 'The' 'ebuild' 'is' 'attempting' 'to' 'use' 'ant-core,' 'without' 'specifying' '--build-only,' 'that' 'is' 'not' 'declared' 'in' 'RDEPEND.' '*' 'Because' 'you' 'have' 'this' 'package' 'installed' 'the' 'package' 'will' '*' 'build' 'without' 'problems,' 'but' 'please' 'report' 'this' 'to' '*' 'http://bugs.gentoo.org' '/usr/share/ant-core/lib/ant-launcher.jar:/usr/share/ant-core/lib/ant.jar:/usr/share/ant-core/lib/ant-bootstrap.jar' java-utils-2.eclass, line 1723: Called die !!! eant failed !!! If you need support, post the topmost build error, and the call stack if relevant. !!! A complete build log is located at '/var/tmp/portage/dev-java/xjavac-20041208-r5/temp/build.log'. !!! When you file a bug report, please include the following information: GENTOO_VM=blackdown-jdk-1.4.2 CLASSPATH="" JAVA_HOME="/opt/blackdown-jdk-1.4.2.03" JAVACFLAGS="-source 1.4 -target 1.4" COMPILER="javac" and of course, the output of emerge --info Reproducible: Always Steps to Reproduce: 1. emerge xjavac
Created attachment 116588 [details] updated ebuild the problem lay on line 29 of the original ebuild. The line was: eant jar -Dclasspath=$(java-pkg_getjars ant-core) when it should have been: eant jar -Dclasspath=$(java-pkg_getjars --build-only ant-core) This simple addition seems to have fixed the problem.
the problem has been fixed (at least for me) by using the updated ebuild attachment. All I did was add '--build-only' on line 29 before the 'ant-core)' segment, and xjavac compiles fine.
Fixed xjavac, thanks for reporting. But we probably need to do something about these new QA checks, the "warn but don't die" idea does not quite work in subshell functions such as java-pkg_getjars()...
(In reply to comment #3) > Fixed xjavac, thanks for reporting. > IMHO should not be --build-only only but RDEPEND because xjavac is a ant task calls into ant code. I changed this.
Change the eclass so that it does not output anything inside a subshell.
*** Bug 175519 has been marked as a duplicate of this bug. ***