Description of problem: Note, this is intended for the fedora-ia64 team, we are not expecting the java-icedtea maintainers to do this work (but any advice would be appreciated). The latest upstream java-icedtea has been re-written to remove the asm code which hopefully should allow it to build on ia64. Gary Benson has done this work upstream. I recently sent mail to him mentioning that we were planning on building this for fedora-ia64. here is his response: The main thing preventing it being in Fedora is the lack of a libffi package (bug 431633) but if you wanted to make a start you could build and install the rpms from that bug and grab the IcedTea sources from Mercurial (hg clone http://icedtea.classpath.org/hg/icedtea) and build those. I committed the extra build system files for ia64 (and arm, s390, s390x) for you this morning so it's basically a matter of patching the openjdk Makefiles. If you look in patches/icedtea-ports.patch you'll see where I had to add things for ppc and ppc64, but note that Sun had an ia64 port at one stage so the build system already has some ia64 stuff present. What I'd recommend is, for every ppc/ppc64 thing I did in openjdk/hotspot, find the corresponding ia64 bit and change it if necessary (eg, wherever a ppc bit sets an ARCH variable to zero, make ia64 do that too). You shouldn't have to do much (if anything) in the openjdk/jdk and openjdk/corba directories because the ia64 code in there should Just Work™. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
I'm looking into this issue. Seems need another one or two days to see if I can get a solution. Here I just adding a comment to avoid duplication of effort.
I have got it working on ia64. And the patches have been reviewed by Gary. Now I'm waiting to see if he could get them merged into icedtea's repo. Then what we need is to change the spec file of jave-icedtea package to make it work with the new version of icedtea.
Created attachment 302430 [details] spec patch for ia64 The java-1.6.0-openjdk would build with no more modification needed once #442514 get fixed. I've got a variation built on koji http://ia64.koji.fedoraproject.org/koji/taskinfo?taskID=60392. Now we need to change the spec file for ia64. Thanks, Yi
(In reply to comment #3) > Created an attachment (id=302430) [edit] > spec patch for ia64 > > The java-1.6.0-openjdk would build with no more modification needed once > #442514 get fixed. I've got a variation built on koji > http://ia64.koji.fedoraproject.org/koji/taskinfo?taskID=60392. > > Now we need to change the spec file for ia64. What spec file changes are needed for ia64? The current spec file contains no ExclusiveArch or ExcludeArch lines.
Sorry for the delay reply. The need of spec file changing for ia64 supporting currently could be minimized since the bootstrap option doesn't have to be set and the libffi-devel dependency is set up by default. I have given a try of unmodified java-1.6.0-openjdk-1.6.0.0-0.9.b09.fc9 and it failed with below error: IcedTea is served: openjdk/control/build/linux-ia64 + pushd java-access-bridge-1.22.0 ~/build/BUILD/icedtea6-1.2/java-access-bridge-1.22.0 ~/build/BUILD/icedtea6-1.2 ++ pwd + export JAVA_HOME=/builddir/build/BUILD/icedtea6-1.2/java-access-bridge-1.22.0/../openjdk/control/build/linux-zero/j2sdk-image + JAVA_HOME=/builddir/build/BUILD/icedtea6-1.2/java-access-bridge-1.22.0/../openjdk/control/build/linux-zero/j2sdk-image + export PATH=/builddir/build/BUILD/icedtea6-1.2/java-access-bridge-1.22.0/../openjdk/control/build/linux-zero/j2sdk-image/bin:/usr/kerberos/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin:/root/bin + PATH=/builddir/build/BUILD/icedtea6-1.2/java-access-bridge-1.22.0/../openjdk/control/build/linux-zero/j2sdk-image/bin:/usr/kerberos/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin:/root/bin + ./configure checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for "/builddir/build/BUILD/icedtea6-1.2/java-access-bridge-1.22.0/../openjdk/control/build/linux-zero/j2sdk-image/bin/java"... no configure: error: Java 1.5 or later is required to build java-access-bridge error: Bad exit status from /var/tmp/rpm-tmp.61230 (%build) see http://ia64.koji.fedoraproject.org/koji/getfile?taskID=68447&name=build.log for the full log. From the log we can learn that the icedtea was built just fine and the output dir was openjdk/control/build/linux-ia64/j2sdk-image. But the %buildoutputdir was defined to be openjdk/control/build/linux-%{archbuild} (archbuild was zero here). So the java-access-bridge looked at openjdk/control/build/linux-zero/j2sdk-image for the just generated stuff and then failed. Base on this analysis I image that the build error could be fixed by defining archbuild & archinstall to "ia64" on ia64 platforms. I have a scratch build to test this and it worked. Please refer to http://ia64.koji.fedoraproject.org/koji/taskinfo?taskID=68931 . Thanks, Yi
Created attachment 303967 [details] add the archbuild and archinstall definitions for ia64
Fixed in spec file. Will be in the next release.