-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On Sat, Apr 25, 2009 at 10:42:43AM +0200, Martin Pitt wrote:
Jonas Smedegaard [2009-04-25 9:36 +0200]:
In other words, the problem is not that python install rule does no
longer get invoked, but that it now gets invoked in parallel (or in
undefined order of) other install/* rules.
So if I first include distutils.mk and then define an install/foo::
rule, my own rule isn't guaranteed to be invoked later than the
distutils ones? I always understood :: as an append operator, not
throw it into the set. It's entirely possible that I was wrong all
the time, of course.
I might be wrong, but yes, my understanding of :: rules is that even if
they often in practice run in the order defined, that is not ensured.
Besides, ideally CDBS snippets should not require to be declared in a
specific order, even if some make expressions really do keep order -
CDBS should try to avoid those, then (as is the case if ifeq).
install/calibre:: calibre-fixup
calibre-fixup:
rm -r ...
I don't understand how this would help? Wouldn't this mean that
calibre-fixup would run _before_ install/calibre (since it is now a
dependency), thus aggravating the problem even further?
Stupid me - above is completely upside down. The following should work:
common-binary-arch common-binary-indep:: calibre-fixup
calibre-fixup: install/calibre
rm -r ...
Or to be exact, above works using buildcore.mk, and I believe also using
python-distutils.mk and debhelper.mk - if using other snippets too, you
may need to adjust to the additional rules you want it to be invoked
in-between.
Still, from the perspective of this CDBS backwards-compatibility bug,
above is only a workaround, not calibre approach is wrong.
If calibre is the only (or amongst very few) packages which break
because they used the install target wrongly, I'm fine with keeping
current cdbs and fixing calibre's debian/rules accordingly.
Basically, I need to do a cleanup at a point when setup.py install was
run already, but dh_install* etc. didn't start yet. The reason is that
the extra libraries must not go into the .debs, and doing the cleanup
after all the dh_* magic makes it much harder to ensure that none of
the dh_* stuff copied the files to anywhere.
Makes sense. As already said, it is not exactly wrong of you to use the
install/* target, but as it really is a post-install routine it makes
better sense to treat it as such.
Help investigating if any other package uses python-distutils.mk and add
custom install/* rules is much appreciated!
Kind regards,
- Jonas
- --
* Jonas Smedegaard - idealist og Internet-arkitekt
* Tlf.: +45 40843136 Website: http://dr.jones.dk/
[x] quote me freely [ ] ask before reusing [ ] keep private
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkny2qEACgkQn7DbMsAkQLhGWwCdEzZPvyLuvkUJE9ywT8JLhJuh
l4AAn1f/A3O7ouetBjCDqlXz4CiJFsHV
=5uxh
-END PGP SIGNATURE-
--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org