From 5d5465307b8dac17855d6fe74653fe634144f91b Mon Sep 17 00:00:00 2001 From: Kirill Smirnov Date: Fri, 9 Sep 2016 15:13:23 +0300 Subject: [PATCH] debug/gdb: properly link with expat This patch fixes libexpat detection for gdb-native and gdb-cross static builds. For gdb-native build configure should not touch system /usr/{lib,include} directories while looking for libexpat. To fix this we pass --without-libexpat-prefix flag to configure script. For gdb-cross build configure is allowed to investigate system /usr/{lib,include} directories, but it does not hurt to disable this behavior. In this case configure falls back to -lexpat, which works as expected. For more info: http://marc.info/?l=gnulib-bug&m=129660262901148&w=2 Signed-off-by: Kirill Smirnov --- scripts/build/debug/300-gdb.sh | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/scripts/build/debug/300-gdb.sh b/scripts/build/debug/300-gdb.sh index ee4753ef..ac0d8570 100644 --- a/scripts/build/debug/300-gdb.sh +++ b/scripts/build/debug/300-gdb.sh @@ -69,11 +69,8 @@ do_debug_gdb_build() { cross_extra_config=("${extra_config[@]}") cross_extra_config+=("--with-expat") - # NOTE: DO NOT USE --with-libexpat-prefix (until GDB configure is smarter)!!! - # It conflicts with a static build: GDB's configure script will find the shared - # version of expat and will attempt to link that, despite the -static flag. - # The link will fail, and configure will abort with "expat missing or unusable" - # message. + cross_extra_config+=("--without-libexpat-prefix") + case "${CT_THREADS}" in none) cross_extra_config+=("--disable-threads");; *) cross_extra_config+=("--enable-threads");; @@ -173,11 +170,7 @@ do_debug_gdb_build() { fi native_extra_config+=("--with-expat") - # NOTE: DO NOT USE --with-libexpat-prefix (until GDB configure is smarter)!!! - # It conflicts with a static build: GDB's configure script will find the shared - # version of expat and will attempt to link that, despite the -static flag. - # The link will fail, and configure will abort with "expat missing or unusable" - # message. + native_extra_config+=("--without-libexpat-prefix") CT_DoLog EXTRA "Configuring native gdb"