Summary: | dev-java/jaxp-1.4-r1 fails to set correct CLASSPATH in package.env [PREFIX] | ||
---|---|---|---|
Product: | Gentoo/Alt | Reporter: | Steven Trogdon <strogdon> |
Component: | Prefix Support | Assignee: | Gentoo Prefix <prefix> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Steven Trogdon
2014-03-29 00:59:17 UTC
The line in java-utils-2.eclass is 2764 which didn't appear above. This java-pkg_regjar ${EPREFIX}/usr/share/${PN}/lib/jaxp.jar is not the thing to do and is incorrect! It only "worked" because I tested where jaxp.jar was already installed from a previous install and I should have realized this. It would seem that java-pkg_regjar ${ED}/usr/share/${PN}/lib/jaxp.jar is probably what is desired which doesn't work. So perhaps a parsing bug in java-utils-2.eclass? This seems to fix things: --- java-utils-2.eclass.orig 2014-03-29 20:31:15.243129661 -0500 +++ java-utils-2.eclass 2014-03-29 20:31:48.703192071 -0500 @@ -335,7 +335,7 @@ # java-pkg_regjar ${ED}/opt/java/*.jar # such call will fall into this case (-e ${jar}) and will # record paths with ${D} in package.env - java-pkg_append_ JAVA_PKG_CLASSPATH "${jar#${D}}" + java-pkg_append_ JAVA_PKG_CLASSPATH "${jar#${D%/}}" else if [[ ${jar} = *\** ]]; then eerror "The argument ${jar} to ${FUNCNAME}" With the patch, after a fresh install of jaxp, I have $ java-config --classpath=jaxp /storage/strogdon/gentoo-redlizard//usr/share/jaxp/lib/jaxp.jar:/storage/strogdon/gentoo-redlizard//usr/share/jaxp/lib/jaxp-ri.jar which seems to be correct. I applied your (latest) patch, which makes sense, but I'm not sure how this is supposed to work in non-prefix, because they just remove ${D} as well there. I though I has checked this is non-prefix but apparently no. Adding ${ED} to the ebuild as java-pkg_regjar ${ED}/usr/share/${PN}/lib/jaxp.jar and patching the eclass gives in non-prefix # java-config --classpath=jaxp /usr/share/jaxp/lib/jaxp-ri.jar://usr/share/jaxp/lib/jaxp.jar So there is the "//". this packages were removed per bug 566232 |