Re: Bug#892221: python-jpype: FTBFS on hurd-i386: jni_md_platform is not defined
Control: clone -1 -2
Control: reassign -2 gcj-6 6.4.0-12
Control: retitle -2 gcj-6: jawt_md.h and jni_md.h are in linux subdirectory on kFreeBSD and GNU/Hurd
On 6 Mar 2018, at 22:50, Aaron M. Ucko <ucko@debian.org> wrote:
>
> Source: python-jpype
> Version: 0.6.2+dfsg-2
> Severity: normal
> Tags: upstream
> User: debian-hurd@lists.debian.org
> Usertags: hurd
>
> Builds of python-jpype for hurd-i386 (admittedly not a release
> architecture) have been failing, as most recently seen in [1]:
>
> setup.py:91: UserWarning: Your platform is not being handled explicitly. It may work or not!
> " It may work or not!", UserWarning)
> Traceback (most recent call last):
> File "setup.py", line 95, in <module>
> [os.path.join(java_home, 'include', jni_md_platform)]
> NameError: name 'jni_md_platform' is not defined
>
> Per [2], the appropriate directory name here appears to be linux(!).
> Also, sys.platform starts with "gnu" on the Hurd.
I personally think this is a bug in GCJ. OpenJDK puts them in the
$(OPENJDK_TARGET_OS) subdirectory[0] (except Windows uses win32 and macOS uses
darwin), so if it were ported to the Hurd it would presumably use either "gnu"
or "hurd" as the subdirectory name. FreeBSD's fork of OpenJDK uses "freebsd"
for the directory name[1], but GCJ also puts the files in "linux" there[2]. I
guess GCJ should be patched (and the Hurd porters should decide on a directory
name to use).
Regards,
James
[0] http://hg.openjdk.java.net/jdk10/jdk10/jdk/file/777356696811/make/copy/CopyCommon.gmk#l31
[1] https://svnweb.freebsd.org/ports/head/java/openjdk8/files/patch-bsd?view=markup&pathrev=460849#l8874
[2] https://github.com/gcc-mirror/gcc/blob/gcc-6-branch/libjava/Makefile.am#L907
https://github.com/gcc-mirror/gcc/blob/gcc-6-branch/libjava/Makefile.am#L942-L945
Reply to: