* Steinar H. Gunderson <se...@debian.org> [231218 17:19]:
> On Mon, Dec 18, 2023 at 04:33:26PM +0100, Chris Hofstaedtler wrote:
> > I don't think there is anything you can "ask" about this.
> > 
> > Generally the idea is that in trixie and later, --prefix=/usr really
> > means that. Anything that excluded subdirs from ${prefix} should be
> > a thing of the past. If the upstream build system ignores ${prefix}
> > for a certain location, you'll need to override it :-(
> 
> Well, it's pretty straight-up autoconf (no automake). Makefile.in contains
> 
>   PREFIX=@prefix@
>   SYSCONFDIR=@sysconfdir@
>   LOCALSTATEDIR=@localstatedir@
>   LIBDIR=@libdir@
> 
> and installs into $(LIBDIR).
> 
> dh_auto_configure runs configure with (among others)
> 
>   --prefix=/usr --libdir=\${prefix}/lib/x86_64-linux-gnu 
> 
> But nothing ever defines lowercase ${prefix}. It's possible that it expects
> the upstream Makefile to do
> 
>   prefix=$(PREFIX)

I think thats what dh expects it to contain for everything to work,
yes. You could check out the "hello" source package, which has a bog
standard autoconf/automake setup and has, in Makefile.in:

...
libdir = @libdir@
...
prefix = @prefix@
...

and thus in Makefile:

...
libdir = ${prefix}/lib/x86_64-linux-gnu
...
prefix = /usr
...

> or something similar? But it's unclear to my why it doesn't just do
> 
>   --libdir=/usr/lib/x86_64-linux-gnu

Good question, don't know. There is no comment explaining this in
the debhelper source; maybe it was to avoid duplication there.
Maybe the easiest is to add --libdir=/usr/lib/${DEB_HOST_MULTIARCH}
to dh_auto_configure?

Best,
Chris

Reply via email to