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

working with Debian subversion sources



Dear People,

I've been trying to package subversion, version 1.1.0-rc2, using the
already packaged versions as a jumping-off point. However, I have run into
some difficulties, and was hoping people on this list would help me out.

I should probably start by saying that I'm trying to use svn-buildpackage
to manage my builds, with the "merge with upstream" property set.
Basically, this means that svn-buildpackage keeps only the Debian diffs
under version control and not the upstream sources, and merges in the
upstream sources at build time. I've checked out the sources from the
Debian subversion package repository, ie.

svn co svn://svn.debian.org/pkg-subversion/trunk/ pkg-subversion

It doesn't look like David Kimdon is using svn-buildpackage.

1) Firstly, usually when the Debian sources unpack themselve into a
directory, I see the same thing as one would when unpacking the upstream
sources, with the Debian diff patched in, creating a debian subdirectory
in the source tree etc. However, in the case of the Debian subversion
sources, the directory contains another directory, debian, and a copy of
the upstream sources eg.

*************************************************************************
faheem /tmp/debrepos/subversion/build-area/subversion-1.0.6>ls
build-tree  debian  log  subversion-1.0.6.tar.gz
*************************************************************************

a) I'm wondering, firstly, how dpkg-source knows how to unpack in this
fashion. Before unpacking, the source files look the same as any other
Debian sources.

b) What is the advantage of doing it this way as opposed to the more usual
method?

2) svn-buildpackage does not work with the Debian subversion sources out
of the box. I need to change

DEB_TAR_SRCDIR=$(shell ls subversion-* | sed -e 's/\.tar.*//')

to

DEB_TAR_SRCDIR=subversion-1.0.6

before it works. Otherwise I get

**********************************************************************
faheem /tmp/debrepos/subversion/trunk>svn-buildpackage --svn-ignore-new
-rc -rs -rfakeroot
fakeroot debian/rules clean || debian/rules clean
ls: subversion-*: No such file or directory
/usr/share/cdbs/1/rules/tarball.mk:35: *** You must specify
DEB_TAR_SRCDIR.  Stop.
ls: subversion-*: No such file or directory
/usr/share/cdbs/1/rules/tarball.mk:35: *** You must specify
DEB_TAR_SRCDIR.  Stop.
Command fakeroot debian/rules clean || debian/rules clean failed, how to
continue now? [Qri?]:
***********************************************************************

I think this is because of the different layout of svn-buildpackage as
opposed to the default layout. I am unclear whether my solution is the
best/correct one and would be glad to get feedback on this from David
Kimdon or Eduard Bloch or anyone else who has expertise in this area.

3) When I merge the Debian diff with the upstream 1.1.0-rc2, the unpacked
source directory layout (as described in (1), reverts to the `standard'
format. Ie.

****************************************************************************
faheem /usr/local/src/debrepos/subversion/build-area/subversion-1.1.0-rc2>ls
ac-helpers  build             CHANGES       COPYING        gen-make.py
neon      subversion           win-tests.py
apr         build.conf        COMMITTERS    debian         HACKING
notes     subversion_msvc.dsw  www
apr-util    build-outputs.mk  configure     dist.sh        INSTALL
packages  svn-config.in
autogen.sh  build-tree        configure.in  doc            log
README    tools
BUGS        ChangeLog.CVS     contrib       gen-make.opts  Makefile.in
STATUS    TRANSLATING
*************************************************************************

Unsurprisingly, this then breaks other things, including patching. Since I
don't understand why the Debian subversion sources unpack the way they do,
I am poorly situated to fix it.

4) This is really mostly a question for David Kimdon. Have you considered
maintaining your Debian packaging upstream as part of the subversion
project? The current Subversion source tree contained (for example) spec
files for different rpm-based distributions.

                                                                Faheem.



Reply to: