Add a gdb wrapper script that sets LD_LIBRARY_PATH and helps locate the
actual binary. git-svn-id: svn+ssh://svn.openpam.org/svn/openpam/trunk@583 185d5e19-27fe-0310-9dcf-9bff6b9f3609
This commit is contained in:
parent
c02ad56e43
commit
4c0e839be3
|
@ -126,4 +126,5 @@ AC_CONFIG_FILES([
|
|||
modules/pam_unix/Makefile
|
||||
t/Makefile
|
||||
])
|
||||
AC_CONFIG_FILES([pamgdb],[chmod +x pamgdb])
|
||||
AC_OUTPUT
|
||||
|
|
|
@ -0,0 +1,41 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
|
||||
srcdir="@abs_top_srcdir@"
|
||||
builddir="@abs_top_builddir@"
|
||||
|
||||
# Make sure we get the right version of libpam
|
||||
pam_libdir="${builddir}/lib/.libs"
|
||||
LD_LIBRARY_PATH="${pam_libdir}:${LD_LIBRARY_PATH}"
|
||||
LD_LIBRARY_PATH="${LD_LIBRARY_PATH%:}"
|
||||
export LD_LIBRARY_PATH
|
||||
|
||||
# DWIM, assuming that the first positional argument is the name of the
|
||||
# program to debug rather than a gdb option.
|
||||
prog="$1"
|
||||
if expr "${prog}" : ".*/.*" >/dev/null ; then
|
||||
# The first argument is an absolute or relative path. There
|
||||
# is a good chance that it points to the wrapper script
|
||||
# generated by libtool rather than the actual binary.
|
||||
altprog="${prog%/*}/.libs/${prog##*/}"
|
||||
if [ -x "${altprog}" ] ; then
|
||||
shift
|
||||
set "${altprog}" "$@"
|
||||
fi
|
||||
elif expr "${prog}" : "[a-z.-][a-z.-]*" >/dev/null ; then
|
||||
# The first argument is just the name of the program. Look for
|
||||
# it in the build directory.
|
||||
for libdir in $(find "${builddir}" -type d -name .libs -print) ; do
|
||||
altprog="${libdir}/${prog}"
|
||||
if [ -x "${altprog}" ] ; then
|
||||
shift
|
||||
set "${altprog}" "$@"
|
||||
break
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
# Let's go!
|
||||
exec gdb "$@"
|
Loading…
Reference in New Issue