Re: "dpkg-buildpackage -b" and "dpkg-source --before-build"
Jonathan Nieder <jrnieder@gmail.com> writes:
> Hi Raphaël,
>
> Trying to build a package of format 3.0 (quilt) with the
> upstream tarball missing, I get errors:
>
> $ debuild -I -i -b
> dpkg-buildpackage -rfakeroot -D -us -uc -I -i -b
> [...]
> dpkg-source -I -i --before-build csound
mrvn@frosties:/tmp/mdadm/mdadm-3.1.1% dpkg-source -I -i --before-build mdadm
dpkg-source: need -x or -b
What version of dpkg-dev is that? My 1.15.7.2 doesn't have that option.
> dpkg-buildpackage: host architecture i386
> dpkg-source: error: can't build with source format '3.0 (quilt)': no orig.tar file found
>
> As I understand it, the problem is this:
>
> - before building, people want dpkg-buildpackage to make sure
> all patches are applied for them
>
> - this requires looking at the source package
>
> - there is no source package
>
> Personally, I am not sure about that first step: shouldnâ??t
> dpkg-buildpackage just build whatever it is presented with, leaving
> the unpack and build processes entirely independent? In other words,
> I wish the facility to call --before-build were optional.
Definetly not. It is too easy to quilt pop a patch and forget to push it
again. And then you build the package without the patch.
I don't see why you need the orig.tar.gz for this though. Look at the
.pc dir and debian/patches/series and figure it out from there without
this error. All patches need to be applied except the last one if it is
debian-changes (unversioned case) or debian-changes-<current version>.
I think the debian-changes patch should be optional as a source build
would recreate it from the current working dir. Building with and
without source building should behave the same in regards to applying
patches.
> But I am open to other solutions, too. Thoughts?
> Jonathan
Fix dpkg-source --before-build to work without orig.tar.gz and maybe add
an option to build an unpatched working dir for when you really want to
do that.
MfG
Goswin
Reply to: