pkg-config/check/check-variable-override
Alexander Larsson ae0a8b1ad5 Allow overriding package variables with env vars
pkg-config allows a way to override package variables through the
--define-prefix interface, but this is very cumbersome to do in a global
way since it always needs to be passed on the command line and the
override cannot be scoped to a single packge.

Allow overriding package variables using environment variables of the
form PKG_CONFIG_$PACKAGE_$VARIABLE. For example, setting
PKG_CONFIG_GLADEUI_2_0_CATALOGDIR will override the variable
"catalogdir" in the "gladeui-2.0" package.

https://bugs.freedesktop.org/show_bug.cgi?id=90917
2016-01-29 14:32:24 -08:00

35 lines
864 B
Bash
Executable file

#! /bin/sh
set -e
. ${srcdir}/common
# Check the normal behavior
RESULT="/usr"
run_test --variable=prefix simple
RESULT="/usr/lib"
run_test --variable=libdir simple
# Override prefix with correct environment variable
export PKG_CONFIG_SIMPLE_PREFIX="/foo"
RESULT="/foo"
run_test --variable=prefix simple
RESULT="/foo/lib"
run_test --variable=libdir simple
RESULT="-I/foo/include"
run_test --cflags simple
unset PKG_CONFIG_SIMPLE_PREFIX
# Override prefix with incorrect environment variable case. On Windows
# this will have no effect as environment variables are case
# insensitive.
if [ "$native_win32" != yes ]; then
export PKG_CONFIG_SIMPLE_prefix="/foo"
RESULT="/usr"
run_test --variable=prefix simple
RESULT="/usr/lib"
run_test --variable=libdir simple
RESULT=""
run_test --cflags simple
unset PKG_CONFIG_SIMPLE_prefix
fi