From 431230e0ea834d611d5302921b843f0afcaed391 Mon Sep 17 00:00:00 2001 From: Alyssa Ross Date: Fri, 19 Nov 2021 21:52:24 +0000 Subject: [PATCH] Support custom pkg-config executable names When cross-compiling, it's common to have executables prefixed with the name of the architecture you're building for, e.g. aarch64-unknown-linux-musl-cc or x86_64-unknown-freebsd-pkg-config. Lots of build tools support a PKG_CONFIG environment variable to enable this use case. With this change, I was able to successfully cross-compile and run catgirl. --- configure | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/configure b/configure index 4199980..3459f94 100755 --- a/configure +++ b/configure @@ -1,6 +1,8 @@ #!/bin/sh set -eu +: ${PKG_CONFIG:=pkg-config} + cflags() { echo "CFLAGS += $*" } @@ -8,16 +10,16 @@ defstr() { cflags "-D'$1=\"$2\"'" } defvar() { - defstr "$1" "$(pkg-config --variable=$3 $2)${4:-}" + defstr "$1" "$(${PKG_CONFIG} --variable=$3 $2)${4:-}" } ldadd() { lib=$1; shift echo "LDADD.${lib} = $*" } config() { - pkg-config --print-errors "$@" - cflags $(pkg-config --cflags "$@") - for lib; do ldadd $lib $(pkg-config --libs $lib); done + ${PKG_CONFIG} --print-errors "$@" + cflags $(${PKG_CONFIG} --cflags "$@") + for lib; do ldadd $lib $(${PKG_CONFIG} --libs $lib); done } exec >config.mk