Re: [Pkg-octave-devel] Switch octave-pkg-dev from CDBS into dh
* Rafael Laboissière <rafael@debian.org> [2017-12-28 12:21]:
* Sébastien Villemot <sebastien@debian.org> [2017-12-28 10:23]:
I am aware that this is much more work than what you did, and I am
not at this point volunteering for doing this, so I’m not saying
that this is the right solution and that what you did should be
discarded. But at the very least, if we keep your solution, we need
to solve the override problem I mentioned above.
You are right, there are packages with cdbs-dependent targets like
install/pkg::, build/pkg::, and clean::. We will look at this very
real issue.
Well, with my last commits in octave-pkg-dev, I addressed the issue
above. I run a batch on the packages depending on octave-pkg-dev and
almost all of them built correctly (there are two corner cases, see
below). The solution was to replace the double colons by colons, such
that the following targets in debian/rules are allowed:
pre-build:
build/$pkg:
install/$pkg:
The clean target is not allowed. Simple file deletions were transferred
into debian/clean and more elaborated commands are done through
DEB_MAKE_CLEAN_TARGET, a mechanism currently provided by octave-pkg.mk.
I know, this is a dirty hack, but has the following advantages: (1) it
completely gets rid of the CDBS build-dependency and (2) it requires
minimal changes in the debian/rules of the Octave-Forge packages. As
Sébastien pointed out, this solution is completely CDBS-ish and not very
satisfactory. We should implement in the future a clean, full
debhelper-based solution. In the meanwhile, I propose to make the switch
in the next days. The advantage is that I will have some free time for
doing it now, during the end of year vacations. After January, I will be
busy again.
As I wrote above, with minimal changes (already tested here in my system)
almost all packages build correctly. The only exceptions are
octave-symbolics, which hangs during the tests (but this is perhaps not
due to the CDBS->dh change, I am investigating this) and octave-msh,
which contains the following line in debian/rules:
# Workaround for #850402. In the testsuite, this prevents gmsh from being run
# in a fakeroot environment (it does not like it).
check-pkg:: LD_PRELOAD=
I do not know how to translate this into my new system.
Rafael
Reply to: