Re: java architecture names and armhf/sh4
On 2012-01-17 10:24, peter green wrote:
> While looking at armhf build failures I took a look at uwsgi I
> determined it was failing on armel, armhf, sh4 and powerpc due to using
> incorrect paths for java stuff (it's also failing on ia64 and alpha for
> what appears to be unrelated reasons). Specifically it was seting the
> following paths.
>
> UWSGICONFIG_JVM_INCPATH='/usr/lib/jvm/java-6-openjdk-$(JAVA_ARCH)/include/
> -I/usr/lib/jvm/java-6-openjdk-$(JAVA_ARCH)/include/linux'
> UWSGICONFIG_JVM_LIBPATH='/usr/lib/jvm/java-6-openjdk-$(JAVA_ARCH)/jre/lib/$(JAVA_ARCH)/server/'
>
>
> Where JAVA_ARCH was defined by
>
> $(eval JAVA_ARCH := $(shell /usr/share/javahelper/java-arch.sh))
>
As your testing shows, the paths definde above are definitely wrong.
> [...]
>
> UWSGICONFIG_JVM_INCPATH='/usr/lib/jvm/java-6-openjdk-$(DEB_HOST_ARCH)/include/
> -I/usr/lib/jvm/java-6-openjdk-$(DEB_HOST_ARCH)/include/linux'
> UWSGICONFIG_JVM_LIBPATH='/usr/lib/jvm/java-6-openjdk-$(DEB_HOST_ARCH)/jre/lib/$(JAVA_ARCH)/server/'
>
>
> Then defining DEB_HOST_ARCH in the usual way.
>
I believe these paths are correct.
> However on armhf and sh4 those paths don't hold.
>
Presumably because java-arch.sh has not been updated to handle armhf and
sh4 (nor powerpcspe for that matter).
> On armhf /usr/share/javahelper/java-arch.sh returns "armhf" but
> libjvm.so is in /usr/lib/jvm/java-6-openjdk-armhf/jre/lib/arm/server/
> On sh4 /usr/share/javahelper/java-arch.sh appears to return* "sh4" but
> libjvm.so is in /usr/lib/jvm/java-6-openjdk-sh4/jre/lib/sh/server/
>
> Now the question is how to fix the uwsgi build for armel, armhf, powerpc
> and sh4? I see four possibilities
> 1: modify /usr/share/javahelper/java-arch.sh to return "arm" on armhf
> and "sh" on sh4. Then make the change I mentioned above.
I have updated java-arch.sh and is uploading a new version of
javahelper. You want (>= 0.39~) in your dependency line (or dw).
> [...]
>
>
~Niels
Reply to: