GNOME Bugzilla – Bug 631258
Too many escape characters in pkg-config files
Last modified: 2010-11-10 02:40:18 UTC
I use xmlsec1 in library configured with autotools but compilation fails with error message: <command-line>:0:16: error: missing terminating " character this usually is a warning but I have -Werror and it would fail anyway in different place as we can see for generic test % cat test.c #include <stdio.h> int main() { printf("%s\n",XMLSEC_CRYPTO); } % gcc `pkg-config --cflags xmlsec1-openssl` test.c <command-line>:0:18: warning: missing terminating " character test.c: In function ‘main’: test.c:4:2: error: stray ‘\’ in program test.c:4:2: error: stray ‘\’ in program test.c:4:2: error: stray ‘\’ in program test.c:4:2: error: missing terminating " character test.c:4:29: error: expected expression before ‘)’ token The cause is -DXMLSEC_CRYPTO=\\\"openssl\\\" in xmlsec1-openssl.pc.in (and other xmlsec1-*.pc.in files) which should be DXMLSEC_CRYPTO=\"openssl\".
This is also present in the 1.2.16 release. This breaks the build of depended packages. FreeBSD has a ticket with patches to fix this in their ports tree: http://www.freebsd.org/cgi/query-pr.cgi?pr=152070
applied patch from FreeBSD $ git commit -m"fixed extra quotes (bug #631258)" -a [master 3e7cf30] fixed extra quotes (bug #631258) 5 files changed, 5 insertions(+), 5 deletions(-)