openoffice.org FTBFS, when built on edgy's kernel

Bug #62590 reported by Matthias Klose
12
Affects Status Importance Assigned to Milestone
dash (Ubuntu)
Won't Fix
Undecided
Unassigned
openoffice.org (Ubuntu)
Fix Released
High
Matthias Klose

Bug Description

openoffice.org FTBFS, when built on edgy's kernel. works ok with the 2.6.15 kernels on the developer machines, not architecture specific, seen on amd64, i386, ppc.

to reproduce (using a prebuilt version):

 - unpack the i386 chroot http://people.ubuntu.com/~doko/ooo-edgy-chroot2.tar.bz2
 - mount /proc in the chroot
 - login as doko/test123
 - cd ~/204/openoffice.org-2.0.4~rc2
 - export DEB_BUILD_OPTIONS=ccache,nogsi
 - export CCACHE_DIR=~/.ccache
 - fakeroot debian/rules install

ends with:

**************************************************
ERROR: ERROR: Could not register all components!
in function: create_services_rdb
**************************************************

**************************************************
ERROR: Saved logfile: /home/doko/204/openoffice.org-2.0.4~rc2/ooo-build/build/cu
rrent/instsetoo_native/util/OpenOffice//logging/en-US/log_OOD680__en-US.log
**************************************************

and the log file:

register component 'vnd.openoffice.pymodule:mailmerge' in registry '/home/doko/2
04/openoffice.org-2.0.4~rc2/ooo-build/build/current/instsetoo_native/util/OpenOf
fice//services.rdb/en-US_inprogress_1/services.rdb' failed!
error (RuntimeException): python-loader:exceptions.ImportError: No module named
pythonloader, traceback follows
no traceback available

The pythonloader.py module however does exist.

Revision history for this message
Matthias Klose (doko) wrote :

subscribed the kernel team, help is appreciated

Revision history for this message
Matthias Klose (doko) wrote :

not a kernel issue at all, fooled by the upgrade of davis, where the kernel *and* the /bin/sh symlink changed at the same time.

the culprit is a perl build script in OOo, leading to the obscure failure:

sub suck_setup($)
{
    my $file = shift;
    if (-f $file) {
        print "Reading setup from $file\n";
        open ($Vars, ". $file ; set|") || die "Can't find $file: $!";
        while (<$Vars>) {
            /([^=]*)=(.*)/ || next;
            $setup_vars{$1} = $2;
        }
        close ($Vars);
        return 1;
    }
    return 0;
}

apparently dash does quotes all the variables, even if quoting is unnecessary. OOo relies on that :-/ Fixing that in the script:

        open ($Vars, "bash -c '. $file ; set'|") || die "Can't find $file: $!";

Apparently perl always executes shell scripts using /bin/sh and doesn't use the SHELL environment variable at all.

Revision history for this message
Matthias Klose (doko) wrote :

not sure, if it's a bug in dash, or just different behaviour

Changed in dash:
status: Unconfirmed → Confirmed
Revision history for this message
Matthias Klose (doko) wrote :

it turns out, that the buildd's have /bin/sh still pointing at /bin/bash

- talked with Adam, that it's better at this stage to keep the /bin/sh symlink on the buildds,
  needs to be tracked for edgy+1

- why wasn't the symlink upgraded, Scott, any hints?

Revision history for this message
Matthias Klose (doko) wrote :

fixed.

Changed in openoffice.org:
status: In Progress → Fix Released
Revision history for this message
Matthias Klose (doko) wrote :

closing for dash as won't fix for edgy. the OOo build is fixed.

Changed in dash:
status: Confirmed → Won't Fix
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.