[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Build from VCS



Hi,

I'm trying to build the package (so that I can check my patch compiles
before I commit) from VCS (to avoid downloading libreoffice *again*
over not-so-fast Internet since I have an upstream git checkout
already there), following the instructions from
README.Debian-source. I've updated that file from my experiences, but
I'm stuck at the "./download" stage.

I have a "boostrap" checkout in ~/src/libreoffice/libreoffice-3.4/
where I do my upstream work, and I can't get ./download to use it.

With
 ./autogen.sh --with-git=/home/master/src/libreoffice/libreoffice-3.4/
 ./download
I get error message:

* cloning from /home/master/src/libreoffice/libreoffice-3.4//bootstrap
Cloning into bootstrap...
error: '/home/master/src/libreoffice/libreoffice-3.4//bootstrap' does not look like a v2 bundle file

So I try:
 pushd ~/src/libreoffice/libreoffice-3.4/clone
 ln -s .. bootstrap
 popd
 ./autogen.sh --with-git=/home/master/src/libreoffice/libreoffice-3.4/clone
 ./download

and I get

Downloading files for libreoffice-3.4.3.2
* mkworkdir from /home/master/src/libreoffice/libreoffice-3.4/clone/bootstrap
Cannot use the current working directory as implicit source: Not a bootstrap git repository
error make a workdir set at ./download line 265.

Maybe:

 pushd ~/src/libreoffice/
 ln -s libreoffice-3.4 bootstrap
 popd
 ./autogen.sh --with-git=/home/master/src/libreoffice/
 ./download

No luck:

* mkworkdir from /home/master/src/libreoffice//bootstrap
Cannot use the current working directory as implicit source: Not a bootstrap git repository
error make a workdir set at ./download line 265.

I tried looking into dowload.in:

        if ( -d '@OOO_GIT@' . "/bootstrap" )
        {
            print "* mkworkdir from " . '@OOO_GIT@' . "/bootstrap\n";
            ( system( "@OOO_GIT@/bootstrap/bin/mkworkdir -d . --as bootstrap") == 0 ) || die "error make a workdir set";
        }
        else
        {
            print "* cloning from " . '@OOO_GIT@' . "/bootstrap\n";
            ( system( "git clone " . '@OOO_GIT@' . "/bootstrap " ) == 0 ) || die "error cloning bootstrap";
            ( system( "@RAWBUILDDIR@/g clone" ) == 0 ) || die "error cloning the repos";
        }

The "else" branch looks fishy. That branch is taken when
 '@OOO_GIT@' . "/bootstrap"
does NOT exist or is not a directory, and then it tries to clone from
it? That does not make sense: if it is not a directory, it cannot be a
git repository, so that is doomed to fail.

I tried to change it to:

        {
            print "* cloning from " . '@OOO_GIT@' . "\n";
            ( system( "git clone " . '@OOO_GIT@' . " bootstrap" ) == 0 ) || die "error cloning bootstrap";
            ( system( "@RAWBUILDDIR@/g clone" ) == 0 ) || die "error cloning the repos";
        }

But still no luck. It clones it, and tries to use
bootstrap/bin/repo-list, fails at that (only
bootstrap/bin/repo-list.in exists, as autogen has not been run in
bootstrap), and starts downloading all kinds of tarballs that should
already be somewhere under @OOO_GIT@/

I'd appreciate any additional pointer or help.

-- 
Lionel


Reply to: