summaryrefslogtreecommitdiff
path: root/user/jkoenig/java/java-access-bridge.mdwn
blob: 57c87068f56a5e2d92a7f5f801455a99e69465d6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
[[!meta copyright="Copyright © 2011 Free Software Foundation, Inc."]]

[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts.  A copy of the license
is included in the section entitled [[GNU Free Documentation
License|/fdl]]."]]"""]]

[[!tag open_issue_porting]]

Debian's *openjdk-7-jre* package depends on *libaccess-bridge-java-jni* (source
package: *java-access-bridge*).

The latter one has *openjdk-6-jdk* as a build dependency, but that can be
hacked around:

    # ln -s java-7-openjdk /usr/lib/jvm/java-6-openjdk

Trying to build it:

    $ LD_LIBRARY_PATH=/usr/lib/jvm/java-7-openjdk/jre/lib/i386/jli dpkg-buildpackage -b -uc -d
    [...]
    make[3]: Entering directory `/media/erich/home/thomas/tmp/libaccess-bridge-java-jni/java-access-bridge-1.26.2/idlgen'
    /usr/lib/jvm/java-6-openjdk/bin/idlj \
                    -pkgPrefix Bonobo org.GNOME \
                    -pkgPrefix Accessibility org.GNOME \
                    -emitAll -i /usr/share/idl/bonobo-activation-2.0 -i /usr/share/idl/at-spi-1.0 -i /usr/share/idl/bonobo-2.0 \
                    -fallTie /usr/share/idl/at-spi-1.0/Accessibility.idl
    /usr/share/idl/at-spi-1.0/Accessibility_Collection.idl (line 66):  WARNING: Identifier `object' collides with a keyword; use an escaped identifier to ensure future compatibility.
            boolean isAncestorOf (in Accessible object);
                                         ^
    /usr/share/idl/at-spi-1.0/Accessibility_Component.idl (line 83):  WARNING: Identifier `Component' collides with a keyword; use an escaped identifier to ensure future compatibility.
      interface Component : Bonobo::Unknown {
                ^
    Exception in thread "main" java.lang.AssertionError: Platform not recognized
            at sun.nio.fs.DefaultFileSystemProvider.create(DefaultFileSystemProvider.java:71)
            at java.nio.file.FileSystems$DefaultFileSystemHolder.getDefaultProvider(FileSystems.java:108)
            at java.nio.file.FileSystems$DefaultFileSystemHolder.access$000(FileSystems.java:89)
            at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:98)
            at java.nio.file.FileSystems$DefaultFileSystemHolder$1.run(FileSystems.java:96)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.nio.file.FileSystems$DefaultFileSystemHolder.defaultFileSystem(FileSystems.java:95)
            at java.nio.file.FileSystems$DefaultFileSystemHolder.<clinit>(FileSystems.java:90)
            at java.nio.file.FileSystems.getDefault(FileSystems.java:176)
            at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:489)
            at sun.util.calendar.ZoneInfoFile$1.run(ZoneInfoFile.java:480)
            at java.security.AccessController.doPrivileged(Native Method)
            at sun.util.calendar.ZoneInfoFile.<clinit>(ZoneInfoFile.java:479)
            at sun.util.calendar.ZoneInfo.getTimeZone(ZoneInfo.java:658)
            at java.util.TimeZone.getTimeZone(TimeZone.java:559)
            at java.util.TimeZone.setDefaultZone(TimeZone.java:656)
            at java.util.TimeZone.getDefaultRef(TimeZone.java:623)
            at java.util.TimeZone.getDefault(TimeZone.java:610)
            at java.text.SimpleDateFormat.initializeCalendar(SimpleDateFormat.java:682)
            at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:619)
            at java.text.DateFormat.get(DateFormat.java:772)
            at java.text.DateFormat.getDateTimeInstance(DateFormat.java:547)
            at com.sun.tools.corba.se.idl.toJavaPortable.Util.writeProlog(Util.java:1139)
            at com.sun.tools.corba.se.idl.toJavaPortable.Skeleton.writeHeading(Skeleton.java:145)
            at com.sun.tools.corba.se.idl.toJavaPortable.Skeleton.generate(Skeleton.java:102)
            at com.sun.tools.corba.se.idl.toJavaPortable.InterfaceGen.generateSkeleton(InterfaceGen.java:159)
            at com.sun.tools.corba.se.idl.toJavaPortable.InterfaceGen.generate(InterfaceGen.java:108)
            at com.sun.tools.corba.se.idl.InterfaceEntry.generate(InterfaceEntry.java:110)
            at com.sun.tools.corba.se.idl.toJavaPortable.ModuleGen.generate(ModuleGen.java:75)
            at com.sun.tools.corba.se.idl.ModuleEntry.generate(ModuleEntry.java:83)
            at com.sun.tools.corba.se.idl.Compile.generate(Compile.java:324)
            at com.sun.tools.corba.se.idl.toJavaPortable.Compile.start(Compile.java:169)
            at com.sun.tools.corba.se.idl.toJavaPortable.Compile.main(Compile.java:146)
    make[3]: *** [org/GNOME/Accessibility/Accessible.java] Error 1
    make[3]: Leaving directory `/media/erich/home/thomas/tmp/libaccess-bridge-java-jni/java-access-bridge-1.26.2/idlgen'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/media/erich/home/thomas/tmp/libaccess-bridge-java-jni/java-access-bridge-1.26.2/idlgen'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/media/erich/home/thomas/tmp/libaccess-bridge-java-jni/java-access-bridge-1.26.2'
    make: *** [debian/stamp-makefile-build] Error 2
    dpkg-buildpackage: error: debian/rules build gave error exit status 2


IRC, freenode, #hurd, 2011-08-10:

    < jkoenig> and with my latest fix (hardwire os.name as "Linux"),
      java-access-bridge actually built \o/
    < youpi> I wouldn't call it a "fix" :)
    < jkoenig> true, but pretty much everything assumes we're either solaris,
      linux or windows :-/
    < jkoenig> also we're actually using the Linux code which it is used to
      select throughout the JDK
    < jkoenig> if it's any consolation, os.version stays "GNU-Mach
      1.3.99/Hurd-0.3" :-)
    < youpi> ideally it should simply be changed to "GNU"