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: