Package: librep-dev
Version: 0.92.5-3
File: /usr/lib/x86_64-linux-gnu/rep/rules.mk
User: [email protected]
Usertags: rebootstrap
Control: affects -1 + src:sawfish
When installing librep-dev for a foreign architecture, rep/rules.mk does
not "work" properly. It tries to discover ${repcommonexecdir} using
pkg-config. Unfortunately, pkg-config is architecture-dependent and when
librep-dev comes from a foreign architecture, it won't find librep.pc.
Thus repcommonexecdir will be empty causing more breakage.
I see a number of ways to fix this.
1. Interpolate the repcommonexecdir assignment at build-time. There we
know the desired value and can just hard code it into the file
instead of determining it at runtime. Since rules.mk resides on an
architecture-dependent path, making this file architecture-dependent
is not a problem at all.
2. Since rep/rules.mk resides on an architecture-dependent path, we know
which pkg-config is correct to call. Prefixing it with the host
architecture gnu-triplet will make this work reliably.
3. One could also rely on consumers providing a PKG_CONFIG variable and
reuse that. Though note that most consumers won't propagate
PKG_CONFIG into their Makefiles as it is mainly useful at configure
time. An example that doesn't is sawfish.
Do you have a preference? I'm happy to help.
Helmut