batik has FTFBS forever

Bug #150484 reported by Adriaan Peeters
8
Affects Status Importance Assigned to Milestone
batik (Debian)
Fix Released
Unknown
batik (Ubuntu)
Fix Released
High
Maia Everett

Bug Description

batik has FTBFS since Ubuntu began, due to depending on some Java that requires EULA-agreement, IIRC. This probably wants to be worked around somehow.

Tags: ftbfs

Related branches

William Grant (wgrant)
description: updated
Changed in batik:
assignee: nobody → onkarshinde
Daniel Hahler (blueyed)
Changed in batik:
assignee: onkarshinde → blueyed
importance: Undecided → High
status: New → In Progress
Revision history for this message
Marco Rodrigues (gothicx) wrote :

There is a new version on debian.. 1.6-4, but it needs sun-j2sdk1.4

Revision history for this message
Daniel Hahler (blueyed) wrote :

Debian's "new upstream" release bug [1] is blocked by another ITP bug and it's not yet clear how they will address the sun-jdk1.4 issue.
I've grabbed the latest upstream release (1.7), changed the build-dependencies to icedtea-java7-jdk and did some other tweaks and it builds fine.

Should I upload it to multiverse?

[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=417888

Daniel Hahler (blueyed)
Changed in batik:
assignee: blueyed → nobody
status: In Progress → Incomplete
status: Incomplete → Triaged
Changed in batik:
status: Unknown → New
Revision history for this message
Maia Everett (linneris) wrote :

I think the best course of action is to upload it right now, then file a bug asking the archive admins to move it to universe (since it no longer depends on the proprietary Java).

I'm really looking forward to the new version, as it will unbreak FOP builds.

Revision history for this message
Daniel Hahler (blueyed) wrote :

I had contacted the Debian maintainer (Vincent Fourmond) about this. His reply is pasted below.
I think we'll have to look into this again ourselves, since it does not appear that we can sync from Debian.
This needs to follow https://wiki.ubuntu.com/FreezeExceptionProcess#head-1d28045481b8803d4815989e93edc4206f4848c4, which I'm not very keen to do myself, since I'm not using batik at all.. if you want to have batik in Hardy, please go ahead.

On Feb 5, 2008 3:59 AM, Daniel Hahler wrote:
> > Michael Koch told me, that your are working on the new batik package.
> >
> > I've looked into this myself, since it FTBFS in Ubuntu since the
> > beginning, because sun-java's license gets not accepted in the buildds.
> >
> > So I've tried building batik 1.6 with icedtea-java7, but it failed
> > (because of missing java classes).
> > Then I've tried the current upstream release 1.7, which works.
> >
> > Because I have at least a get-orig-source target for debian/rules, I
> > thought to let you know about it.
> >
> > I've uploaded the package to
> > http://codeprobe.de/spool/debian/batik_1.7-0ubuntu1.dsc
> >
> > Please take a look at it and tell me what you think about it.

  I'll have a look at that sometime soon, many thanks !

      Vincent

PS: icedtea is not out of NEW yet, so I'll have to wait before it gets
to unstable.

Revision history for this message
Reinhard Tartler (siretart) wrote :

daniel, could you please upload your 1.7 package to intrepid now?

Changed in batik:
assignee: nobody → blueyed
Revision history for this message
Daniel Hahler (blueyed) wrote :

I'll look into it in the next days. At least I have the files still around.

Changed in batik:
status: Triaged → In Progress
Revision history for this message
Onkar Shinde (onkarshinde) wrote :

Daniel,

I didn't know anyone was working on batik 1.7. I am almost finished with it except documenting all the changes in changelog. I have already packaged it's dependency, xml-commons-external, and it is in 'NEW' queue.

Do you mind if I take over the update?

Revision history for this message
Daniel Hahler (blueyed) wrote :

Onkar, that's great!
I'm assigning the bug to you.

Changed in batik:
assignee: blueyed → onkarshinde
Revision history for this message
Onkar Shinde (onkarshinde) wrote :

Please find attached diff.gz for version 1.7. It builds with Sun JDK 1.5 so FTBFS should be fixed.

Please note that this version has build dependency on libxml-commons-external-java (source xml-commons-external) which is currently in 'NEW' queue.

Changed in batik:
assignee: onkarshinde → nobody
status: In Progress → Confirmed
Revision history for this message
Daniel Hahler (blueyed) wrote :

Is there a reason why you prefer Java 5 instead of 6 (in Build-Depends)?
Apart from that, /usr/lib/jvm/java-6-sun should get added to JAVA_HOME_DIRS, so it builds with sun-java-6.
I will sponsor this (and can make the above mentioned adjustments myself), once the dependency has been cleared from NEW.

Revision history for this message
Daniel Hahler (blueyed) wrote :

Unsubscribed u-u-s, since I will handle sponsorship.
Subscribing Onkar: please see my previous comment, asking for information.

Revision history for this message
Onkar Shinde (onkarshinde) wrote :

Daniel,

Since the javac tasks in build.xml files doesn't specify target VM, if you use Java 6, the resulting binary will not be compatible with Java 5 VM. So I preferred the common denominator.

By the way, I forgot to mention. Upstream provides source in .zip format. It needs to be repackaged as tar.gz along with source for pdf-transcoder from fop svn. This was also case with batik 1.6 source and is documented in README.Debian-source. I have only improved the processed by adding get-orig-source target (as per recommended by persia) to accomplish it. Make sure that you verify this particular part of the build process.

Revision history for this message
Onkar Shinde (onkarshinde) wrote :

FYI ... xml-commons-external has been cleared from NEW.

Revision history for this message
Onkar Shinde (onkarshinde) wrote :

Subscribed u-u-s since there is no response from Daniel for last 3-4 days.

Revision history for this message
Maia Everett (linneris) wrote :

I'm into it.

Since the main goal is to fix an FTBFS, for now I'll submit the package as is (built with Java 5), provided it actually builds. We can discuss the Java 6 move issue later. Furthermore, if we do decide to use Java 6, I imagine it should be openjdk rather than sun, so it can be moved to universe.

Changed in batik:
assignee: nobody → sikon
status: Confirmed → In Progress
Revision history for this message
Reinhard Tartler (siretart) wrote : Re: [Bug 150484] Re: batik has FTFBS forever

excellent. Thank you for your work! I'm looking forward having a usable
'fop' package at last!

--
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4

Revision history for this message
Onkar Shinde (onkarshinde) wrote :

@Matvey,

Please note that there was a discussion in last few days on Debian java mailing list about what is the right approach to get orig.tar.gz i.e. whether to strip prebuild jar library files when packaging orig.tar.gz.
I was recommended to keep orig.tar.gz as close as possible to upstream and hence use clean target in debian/rules to remove prebuilt jar files. But Debian guys seem to have different opinion.

Also Emmet Hikory (persia), suggested that the svn export currently done from fop svn to get source of pdf transcoder library should go as a patch instead of in orig.tar.gz. We have not reached any decision in this aspect also.

So better to have discussion so that package will be adopted with as much less hassles as possible in Debian.

About using openjdk vs Sun JDK.
Batik uses Sun specific apis (sun.*) for JPEG and TIFF transcoding. I remember seeing a discussion on some bug in Debian BTS that it can be patched to use the java* apis. I haven't actually tried this yet as the aim was to get a working package first.
Openjdk is not going to help anyway as it would surely not contain these apis.

If batik works with non Sun specific apis then nothing better than that as we can even use GCJ.

Revision history for this message
Maia Everett (linneris) wrote :

The current openjdk-6 in Ubuntu does contain the sun.* image APIs, although javac warns that they are deprecated. Not sure about Debian.

I'm trying to test-build it with openjdk for intrepid right now.

Revision history for this message
Maia Everett (linneris) wrote :

As for prebuilt jars, I know that freecol (which we sync from Debian) removes them from the orig.tar.gz.

Revision history for this message
Maia Everett (linneris) wrote :

It builds successfully with openjdk-6-jdk in pbuilder. Since there are disagreements, I won't sponsor it just yet - not until at least getting input from slytherin.

As for openjdk-6 vs sun-java5, I think the possibility to get it into universe (or main in Debian's case) outweighs the loss of compatibility with JRE 5. In Ubuntu, no binary packages currently depend on it anyway, because of the FTBFS.

Revision history for this message
Onkar Shinde (onkarshinde) wrote :

@Matvey,

The way build.xml is written in batik 1.7, if the JDK is not from Sun, then JPEG and TIFF transcoders are not built. So it is loss of functionality.

I suggest we get the package build first and then I can investigate build with GCJ/OpenJDK. I hope we will reach a conclusion on the current arguments/doubts within a week.

By the way, 'slytherin' on ire.freenode.net is no one else but me. :-)

Revision history for this message
Maia Everett (linneris) wrote :

Are you sure about that? I verified the build with intrepid openjdk - both JPEGTranscoder and TIFFTranscoder are present in org/apache/batik/transcoder/image.

Maybe that functionality isn't present in Debian openjdk? (I haven't looked at that one yet, it being recently added at all.)

And yes, my mistake about you being slytherin :). Could you please join IRC right now?

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package batik - 1.7.dfsg-0ubuntu1

---------------
batik (1.7.dfsg-0ubuntu1) intrepid; urgency=low

  [ Onkar Shinde ]
  * New upstream version (LP: #147818)
  * debian/control
    - Add Sun JDK 1.5 as build dependency. Fixes FTBFS on buildd. (LP: #150484)
      Also add Sun JRE as runtime dependencies.
    - Add ant-optional as build dependency.
    - Add libxml-commons-external-java and libxmlgraphics-commons-java as
      build and runtime dependencies.
    - Add 'Homepage' field and correct the url.
    - Change standards version to 3.8.0.
    - Modify Maintainer value to match the DebianMaintainerField
      specification.
  * debian/rules
    - Change JAVA_HOME_DIRS for Sun JDK.
    - Add jar file names to DEB_JARS to match new build requirements.
    - Extract version from changelog.
    - Delete bundled jar files in clean target.
    - Don't use hardcoded version in install target.
    - Add get-orig-source target.
  * debian/README.Debian-source
    - Change the fo tag name to the one used for this version.
  * debian/watch
    - Change expression to match src distribution.
  * debian/patches/
    - 01_build_xml.patch, 02_fix_jar_target.patch - Refresh for current source.
    - 03_fix_lib_dirs.patch - Fix the library and classpath references needed
      for pdf transcoder build.
    - 04_fix_transcoder_pkg.patch - Fix transcoder-pkg target to not copy
      files from other jar files.

  [ Matvey Kozhev ]
  * debian/changelog:
    - Added ".dfsg" to version.
  * debian/control, debian/rules:
    - Build with openjdk-6-jdk, depend on openjdk-6-jre.
    - Added java-6-sun as an alternate build JAVA_HOME directory.
    - Fixed get-orig-source to not include debian/ and delete the source dir,
      and made it delete jars from lib/, as done in the current batik package.
  * debian/wrappers.sh:
    - Changed java-7-icedtea reference to java-6-openjdk, as the former has been
      removed back in Hardy.
    - Added newline.
  * debian/libbatik-java.install:
    - Added newline.

 -- Matvey Kozhev <email address hidden> Sat, 19 Jul 2008 01:03:05 +0700

Changed in batik:
status: In Progress → Fix Released
Changed in batik:
status: New → Fix Committed
Changed in batik:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.