On Monday 06 May 2013 16:47:34 Joey Hess wrote: > Sven Eckelmann wrote: > > Not a working one for kfreebsd. That's why the system detection is forced > > to Linux-userspace with this parameter. > > Does make -n print out the target if it's passed the parameter?
It should.
> It's certianly possible to write a Makefile that requires a parameter,
> in order to have an install target, like this:
>
> # INSTALL=install
> $(INSTALL):
> blah
exactimage does it slightly different, but yes, this is a way this can happen.
> This patch would make the parameters be propigated into the test.
> It seems unlikely to break anything.
This should fix the problem for me, but I am not not sure whether this doesn't
break something somewhere else. If you want to change it, ok. I will give you
a definitve answer about the change when I've created the kfreebsd test
machine (in ~30 minutes).
> diff --git a/Debian/Debhelper/Buildsystem/makefile.pm
> b/Debian/Debhelper/Buildsystem/makefile.pm index c63b58e..8d0def1 100644
> --- a/Debian/Debhelper/Buildsystem/makefile.pm
> +++ b/Debian/Debhelper/Buildsystem/makefile.pm
> @@ -20,7 +20,7 @@ sub exists_make_target {
> unshift @opts, "-C", $buildpath if $buildpath ne ".";
> open(SAVEDERR, ">&STDERR");
> open(STDERR, ">/dev/null");
> - open(MAKE, "-|", $this->{makecmd}, @opts, $target);
> + open(MAKE, "-|", $this->{makecmd}, @opts, $target, @_);
> my $output=<MAKE>;
> chomp $output;
> close MAKE;
> @@ -46,7 +46,7 @@ sub make_first_existing_target {
> my $targets=shift;
>
> foreach my $target (@$targets) {
> - if ($this->exists_make_target($target)) {
> + if ($this->exists_make_target($target, @_)) {
> $this->do_make($target, @_);
> return $target;
> }
signature.asc
Description: This is a digitally signed message part.

