From bbbdab4c606a1996e6ba573336b425ccc136463c Mon Sep 17 00:00:00 2001 From: Dan Nicholson Date: Wed, 24 Aug 2016 10:32:57 -0700 Subject: Don't override empty prefix setting If the original prefix setting is empty, skip prepending the redefined prefix to other variables. This works the same as if the pc file doesn't have a prefix variable at all. https://bugs.freedesktop.org/show_bug.cgi?id=97453-empty --- check/Makefile.am | 1 + check/check-relocatable | 7 +++++++ check/pkgconfig/empty-prefix.pc | 10 ++++++++++ 3 files changed, 18 insertions(+) create mode 100644 check/pkgconfig/empty-prefix.pc (limited to 'check') diff --git a/check/Makefile.am b/check/Makefile.am index f6d88e9..cf26019 100644 --- a/check/Makefile.am +++ b/check/Makefile.am @@ -99,6 +99,7 @@ EXTRA_DIST = \ gtk/xproto.pc \ gtk/xrender.pc \ tilde.pc \ + pkgconfig/empty-prefix.pc \ pkgconfig/prefixdef.pc \ pkgconfig/prefixdef-expanded.pc \ pcfiledir.pc \ diff --git a/check/check-relocatable b/check/check-relocatable index 589eddf..40c2c88 100755 --- a/check/check-relocatable +++ b/check/check-relocatable @@ -44,3 +44,10 @@ for pkg in prefixdef prefixdef-expanded; do RESULT="-I/reloc/include -L/reloc/lib -lfoo" run_test --dont-define-prefix --cflags --libs $pkg done + +# Test prefix redefinition for .pc files with an empty prefix. In this +# case, there should be no prefix adjustment to the other variables. The +# result should be the same regardless of prefix redefinition. +RESULT="-I/some/path/include -L/some/path/lib -lfoo" +run_test --define-prefix --cflags --libs empty-prefix +run_test --dont-define-prefix --cflags --libs empty-prefix diff --git a/check/pkgconfig/empty-prefix.pc b/check/pkgconfig/empty-prefix.pc new file mode 100644 index 0000000..9007250 --- /dev/null +++ b/check/pkgconfig/empty-prefix.pc @@ -0,0 +1,10 @@ +prefix= +libdir=/some/path/lib +includedir=/some/path/include + +Name: Empty prefix redefinition test +Description: Test pkg-config empty prefix redefinition +Version: 1.0.0 +Requires: +Libs: -L${libdir} -lfoo +Cflags: -I${includedir} -- cgit v1.2.1