mirror of
https://gitlab.freedesktop.org/pkg-config/pkg-config.git
synced 2026-05-23 11:38:13 +02:00
check: Add test for system flags pruning
Test that pkg-config respects the various environment variables that override the system flags handling. https://bugs.freedesktop.org/show_bug.cgi?id=94729
This commit is contained in:
parent
309c1787a1
commit
1dfe95b8b8
3 changed files with 59 additions and 0 deletions
|
|
@ -30,6 +30,7 @@ TESTS = \
|
|||
check-variable-override \
|
||||
check-variables \
|
||||
check-dependencies \
|
||||
check-system-flags \
|
||||
$(NULL)
|
||||
|
||||
EXTRA_DIST = \
|
||||
|
|
@ -116,4 +117,5 @@ EXTRA_DIST = \
|
|||
dependencies/i_dep_k_j.pc \
|
||||
dependencies/j_dep_k.pc \
|
||||
dependencies/k_dep.pc \
|
||||
system.pc \
|
||||
$(NULL)
|
||||
|
|
|
|||
47
check/check-system-flags
Executable file
47
check/check-system-flags
Executable file
|
|
@ -0,0 +1,47 @@
|
|||
#! /bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
. ${srcdir}/common
|
||||
|
||||
# Override the system paths in case pkg-config was built with something
|
||||
# that doesn't match the test pc file
|
||||
PKG_CONFIG_SYSTEM_INCLUDE_PATH=/usr/include
|
||||
if [ "$native_win32" = yes ]; then
|
||||
PKG_CONFIG_SYSTEM_LIBRARY_PATH="/usr/lib;/lib"
|
||||
else
|
||||
PKG_CONFIG_SYSTEM_LIBRARY_PATH=/usr/lib:/lib
|
||||
fi
|
||||
export PKG_CONFIG_SYSTEM_INCLUDE_PATH PKG_CONFIG_SYSTEM_LIBRARY_PATH
|
||||
|
||||
RESULT=""
|
||||
run_test --cflags system
|
||||
|
||||
RESULT="-lsystem"
|
||||
run_test --libs system
|
||||
|
||||
# Make sure that the full paths come out when the *_ALLOW_SYSTEM_*
|
||||
# variables are set
|
||||
RESULT="-I/usr/include"
|
||||
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 run_test --cflags system
|
||||
|
||||
RESULT="-L/usr/lib -lsystem"
|
||||
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 run_test --libs system
|
||||
|
||||
# Set the system paths to something else and test that the output
|
||||
# contains the full paths
|
||||
PKG_CONFIG_SYSTEM_INCLUDE_PATH=/foo/include
|
||||
PKG_CONFIG_SYSTEM_LIBRARY_PATH=/foo/lib
|
||||
|
||||
RESULT="-I/usr/include"
|
||||
run_test --cflags system
|
||||
|
||||
RESULT="-L/usr/lib -lsystem"
|
||||
run_test --libs system
|
||||
|
||||
# Now check that the various compiler environment variables also update
|
||||
# the system include path
|
||||
for var in CPATH C_INCLUDE_PATH CPP_INCLUDE_PATH; do
|
||||
RESULT=""
|
||||
eval $var=/usr/include run_test --cflags system
|
||||
done
|
||||
10
check/system.pc
Normal file
10
check/system.pc
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
prefix=/usr
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/lib
|
||||
includedir=${prefix}/include
|
||||
|
||||
Name: System library
|
||||
Description: Test package
|
||||
Version: 1.0.0
|
||||
Libs: -L${libdir} -lsystem
|
||||
Cflags: -I${includedir}
|
||||
Loading…
Add table
Reference in a new issue