From: Indu Bhagat <indu.bhagat@oracle.com>
To: binutils@sourceware.org
Cc: nickc@redhat.com, weimin.pan@oracle.com,
Indu Bhagat <indu.bhagat@oracle.com>
Subject: [PATCH,V1 10/14] gdb: sim: buildsystem changes to accommodate libsframe
Date: Thu, 29 Sep 2022 17:04:36 -0700 [thread overview]
Message-ID: <20220930000440.1672106-11-indu.bhagat@oracle.com> (raw)
In-Reply-To: <20220930000440.1672106-1-indu.bhagat@oracle.com>
Both gdb and sim need buildsystem fixes to now include libsframe for a
successful build.
gdb/ChangeLog:
* acinclude.m4: Fix GDB_AC_CHECK_BFD to include libsframe.
* Makefile.in: Bring in libsframe for linking.
* configure.ac: Check for static or shared.
* configure: Regenerated.
sim/common/ChangeLog:
* sim/common/Make-common.in: Bring in libsframe.a for linking.
---
gdb/Makefile.in | 8 ++++++--
gdb/acinclude.m4 | 4 ++--
gdb/configure | 35 +++++++++++++++++++++++++++++++----
gdb/configure.ac | 11 +++++++++++
sim/common/Make-common.in | 7 +++++--
5 files changed, 55 insertions(+), 10 deletions(-)
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index c528ee5aa80..492e08d6c63 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -161,6 +161,10 @@ LIBIBERTY = ../libiberty/libiberty.a
LIBCTF = @LIBCTF@
CTF_DEPS = @CTF_DEPS@
+# Where is the SFrame library? Typically in ../libsframe.
+LIBSFRAME = @LIBSFRAME@
+SFRAME_DEPS = @SFRAME_DEPS@
+
# Where is the BFD library? Typically in ../bfd.
BFD_DIR = ../bfd
BFD = $(BFD_DIR)/libbfd.a
@@ -650,7 +654,7 @@ INTERNAL_LDFLAGS = \
# Libraries and corresponding dependencies for compiling gdb.
# XM_CLIBS, defined in *config files, have host-dependent libs.
# LIBIBERTY appears twice on purpose.
-CLIBS = $(SIM) $(READLINE) $(OPCODES) $(LIBCTF) $(BFD) $(ZLIB) $(ZSTD_LIBS) \
+CLIBS = $(SIM) $(READLINE) $(OPCODES) $(LIBCTF) $(BFD) $(LIBSFRAME) $(ZLIB) $(ZSTD_LIBS) \
$(LIBSUPPORT) $(INTL) $(LIBIBERTY) $(LIBDECNUMBER) \
$(XM_CLIBS) $(GDBTKLIBS) $(LIBBACKTRACE_LIB) \
@LIBS@ @GUILE_LIBS@ @PYTHON_LIBS@ \
@@ -658,7 +662,7 @@ CLIBS = $(SIM) $(READLINE) $(OPCODES) $(LIBCTF) $(BFD) $(ZLIB) $(ZSTD_LIBS) \
$(WIN32LIBS) $(LIBGNU) $(LIBGNU_EXTRA_LIBS) $(LIBICONV) \
$(LIBMPFR) $(LIBGMP) $(SRCHIGH_LIBS) $(LIBXXHASH) $(PTHREAD_LIBS) \
$(DEBUGINFOD_LIBS) $(LIBBABELTRACE_LIB)
-CDEPS = $(NAT_CDEPS) $(SIM) $(BFD) $(READLINE_DEPS) $(CTF_DEPS) \
+CDEPS = $(NAT_CDEPS) $(SIM) $(SFRAME_DEPS) $(BFD) $(READLINE_DEPS) $(CTF_DEPS) \
$(OPCODES) $(INTL_DEPS) $(LIBIBERTY) $(CONFIG_DEPS) $(LIBGNU) \
$(LIBSUPPORT)
diff --git a/gdb/acinclude.m4 b/gdb/acinclude.m4
index 28846119dcb..a7205e90b0b 100644
--- a/gdb/acinclude.m4
+++ b/gdb/acinclude.m4
@@ -234,9 +234,9 @@ AC_DEFUN([GDB_AC_CHECK_BFD], [
# always want our bfd.
CFLAGS="-I${srcdir}/../include -I../bfd -I${srcdir}/../bfd $CFLAGS"
ZLIBDIR=`echo $zlibdir | sed 's,\$(top_builddir)/,,g'`
- LDFLAGS="-L../bfd -L../libiberty $ZLIBDIR $ZSTD_LIBS $LDFLAGS"
+ LDFLAGS="-L../bfd -L../libiberty -L../libsframe/.libs/ $ZLIBDIR $ZSTD_LIBS $LDFLAGS"
intl=`echo $LIBINTL | sed 's,${top_builddir}/,,g'`
- LIBS="-lbfd -liberty -lz $intl $LIBS"
+ LIBS="-lbfd -liberty -lz -lsframe $intl $LIBS"
AC_CACHE_CHECK(
[$1],
[$2],
diff --git a/gdb/configure b/gdb/configure
index 9c7a37a623e..ec1b3fd8bf4 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -631,6 +631,8 @@ GDB_NM_FILE
LTLIBXXHASH
LIBXXHASH
HAVE_LIBXXHASH
+SFRAME_DEPS
+LIBSFRAME
CTF_DEPS
LIBCTF
LTLIBBABELTRACE
@@ -939,6 +941,7 @@ with_libbabeltrace_prefix
with_libbabeltrace_type
with_xxhash
enable_libctf
+enable_libsframe
with_libxxhash_prefix
with_libxxhash_type
enable_unit_tests
@@ -1617,6 +1620,7 @@ Optional Features:
--enable-libbacktrace use libbacktrace to write a backtrace after a fatal
signal.
--enable-libctf Handle .ctf type-info sections [default=yes]
+ --enable-libsframe Handle .sframe sections [default=yes]
--enable-unit-tests Enable the inclusion of unit tests when compiling
GDB
@@ -17412,9 +17416,9 @@ WIN32LIBS="$WIN32LIBS $WIN32APILIBS"
# always want our bfd.
CFLAGS="-I${srcdir}/../include -I../bfd -I${srcdir}/../bfd $CFLAGS"
ZLIBDIR=`echo $zlibdir | sed 's,\$(top_builddir)/,,g'`
- LDFLAGS="-L../bfd -L../libiberty $ZLIBDIR $ZSTD_LIBS $LDFLAGS"
+ LDFLAGS="-L../bfd -L../libiberty -L../libsframe/.libs/ $ZLIBDIR $ZSTD_LIBS $LDFLAGS"
intl=`echo $LIBINTL | sed 's,${top_builddir}/,,g'`
- LIBS="-lbfd -liberty -lz $intl $LIBS"
+ LIBS="-lbfd -liberty -lz -lsframe $intl $LIBS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ELF support in BFD" >&5
$as_echo_n "checking for ELF support in BFD... " >&6; }
if ${gdb_cv_var_elf+:} false; then :
@@ -17527,9 +17531,9 @@ fi
# always want our bfd.
CFLAGS="-I${srcdir}/../include -I../bfd -I${srcdir}/../bfd $CFLAGS"
ZLIBDIR=`echo $zlibdir | sed 's,\$(top_builddir)/,,g'`
- LDFLAGS="-L../bfd -L../libiberty $ZLIBDIR $ZSTD_LIBS $LDFLAGS"
+ LDFLAGS="-L../bfd -L../libiberty -L../libsframe/.libs/ $ZLIBDIR $ZSTD_LIBS $LDFLAGS"
intl=`echo $LIBINTL | sed 's,${top_builddir}/,,g'`
- LIBS="-lbfd -liberty -lz $intl $LIBS"
+ LIBS="-lbfd -liberty -lz -lsframe $intl $LIBS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Mach-O support in BFD" >&5
$as_echo_n "checking for Mach-O support in BFD... " >&6; }
if ${gdb_cv_var_macho+:} false; then :
@@ -19498,6 +19502,29 @@ fi
+ # Check whether --enable-libsframe was given.
+if test "${enable_libsframe+set}" = set; then :
+ enableval=$enable_libsframe;
+ case "$enableval" in
+ yes|no) ;;
+ *) as_fn_error $? "Argument to enable/disable libsframe must be yes or no" "$LINENO" 5 ;;
+ esac
+
+else
+ enable_libsframe=yes
+fi
+
+
+if test x${enable_static} = xno; then
+ LIBSFRAME="-Wl,--rpath,../libsframe/.libs ../libsframe/.libs/libsframe.so"
+ SFRAME_DEPS="../libsframe/.libs/libsframe.so"
+else
+ LIBSFRAME="../libsframe/.libs/libsframe.a"
+ SFRAME_DEPS="$LIBSFRAME"
+fi
+
+
+
# If nativefile (NAT_FILE) is not set in configure.nat, we link to an
# empty version.
diff --git a/gdb/configure.ac b/gdb/configure.ac
index fceb80e8c9d..c302e58b4bf 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -2167,6 +2167,17 @@ fi
AC_SUBST(LIBCTF)
AC_SUBST(CTF_DEPS)
+GCC_ENABLE([libsframe], [yes], [], [Handle .sframe sections])
+if test x${enable_static} = xno; then
+ LIBSFRAME="-Wl,--rpath,../libsframe/.libs ../libsframe/.libs/libsframe.so"
+ SFRAME_DEPS="../libsframe/.libs/libsframe.so"
+else
+ LIBSFRAME="../libsframe/.libs/libsframe.a"
+ SFRAME_DEPS="$LIBSFRAME"
+fi
+AC_SUBST(LIBSFRAME)
+AC_SUBST(SFRAME_DEPS)
+
# If nativefile (NAT_FILE) is not set in configure.nat, we link to an
# empty version.
diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in
index b07ec96e147..8a49e0b4ef2 100644
--- a/sim/common/Make-common.in
+++ b/sim/common/Make-common.in
@@ -222,11 +222,14 @@ SIM_HW_DEVICES = cfi core pal glue $(SIM_EXTRA_HW_DEVICES)
ZLIB = $(zlibdir) -lz
LIBIBERTY_LIB = ../../libiberty/libiberty.a
BFD_LIB = ../../bfd/libbfd.a
+LIBSFRAME_LIB = ../../libsframe/.libs/libsframe.a
OPCODES_LIB = ../../opcodes/libopcodes.a
CONFIG_LIBS = $(COMMON_LIBS) @LIBS@ $(ZLIB) $(ZSTD_LIBS)
-LIBDEPS = $(BFD_LIB) $(OPCODES_LIB) $(LIBINTL_DEP) $(LIBIBERTY_LIB)
+LIBDEPS = $(BFD_LIB) $(OPCODES_LIB) $(LIBINTL_DEP) $(LIBIBERTY_LIB) \
+ $(LIBSFRAME_LIB)
EXTRA_LIBS = $(BFD_LIB) $(OPCODES_LIB) $(LIBINTL) $(LIBIBERTY_LIB) \
- $(CONFIG_LIBS) $(SIM_EXTRA_LIBS) $(LIBDL) $(LIBGNU) $(LIBGNU_EXTRA_LIBS)
+ $(LIBSFRAME_LIB) $(CONFIG_LIBS) $(SIM_EXTRA_LIBS) \
+ $(LIBDL) $(LIBGNU) $(LIBGNU_EXTRA_LIBS)
COMMON_OBJS_NAMES = \
callback.o \
--
2.37.2
next prev parent reply other threads:[~2022-09-30 0:12 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-02 8:04 [PATCH,V6 00/10] Definition and Implementation of CTF Frame format Indu Bhagat
2022-08-02 8:04 ` [PATCH,V6 01/10] ctf-frame.h: Add CTF Frame format definition Indu Bhagat
2022-08-15 12:04 ` Nick Clifton
2022-08-02 8:04 ` [PATCH,V6 02/10] gas: add new command line option --gctf-frame Indu Bhagat
2022-08-15 12:07 ` Nick Clifton
2022-08-02 8:04 ` [PATCH,V6 03/10] gas: generate .ctf_frame Indu Bhagat
2022-08-15 12:22 ` Nick Clifton
2022-08-02 8:04 ` [PATCH,V6 04/10] libctfframe: add the CTF Frame library Indu Bhagat
2022-08-15 12:46 ` Nick Clifton
2022-08-02 8:04 ` [PATCH,V6 05/10] libctfframe: add GNU poke pickles for CTF Frame Indu Bhagat
2022-08-15 12:50 ` Nick Clifton
2022-08-02 8:04 ` [PATCH,V6 06/10] bfd: linker: merge .ctf_frame sections Indu Bhagat
2022-08-15 13:02 ` Nick Clifton
2022-08-18 2:11 ` Indu Bhagat
2022-08-02 8:04 ` [PATCH,V6 07/10] readelf/objdump: support for CTF Frame section Indu Bhagat
2022-08-15 13:11 ` Nick Clifton
2022-08-02 8:04 ` [PATCH,V6 08/10] unwinder: generate backtrace using CTF Frame format Indu Bhagat
2022-08-15 13:16 ` Nick Clifton
2022-08-02 8:04 ` [PATCH,V6 09/10] unwinder: Add CTF Frame unwinder tests Indu Bhagat
2022-08-15 13:27 ` Nick Clifton
2022-08-02 8:04 ` [PATCH, V6 10/10] gdb: sim: buildsystem changes to accommodate libctfframe Indu Bhagat
2022-08-05 14:43 ` Tom Tromey
2022-08-15 12:18 ` [PATCH,V6 00/10] Definition and Implementation of CTF Frame format Nick Clifton
2022-08-18 1:38 ` Indu Bhagat
2022-08-15 14:25 ` Nick Clifton
2022-09-30 0:04 ` [PATCH,V1 00/14] Definition and support for SFrame unwind format Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 01/14] sframe.h: Add SFrame format definition Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 02/14] gas: add new command line option --gsframe Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 03/14] gas: generate .sframe from CFI directives Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 04/14] gas: testsuite: add new tests for SFrame unwind info Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 05/14] libsframe: add the SFrame library Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 06/14] bfd: linker: merge .sframe sections Indu Bhagat
2022-09-30 10:51 ` Nick Clifton
2022-09-30 0:04 ` [PATCH,V1 07/14] readelf/objdump: support for SFrame section Indu Bhagat
2022-09-30 11:08 ` Nick Clifton
2022-09-30 0:04 ` [PATCH,V1 08/14] unwinder: generate backtrace using SFrame format Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 09/14] unwinder: Add SFrame unwinder tests Indu Bhagat
2022-09-30 0:04 ` Indu Bhagat [this message]
2022-10-11 16:08 ` [PATCH, V1 10/14] gdb: sim: buildsystem changes to accommodate libsframe Tom Tromey
2022-09-30 0:04 ` [PATCH,V1 11/14] libctf: add libsframe to LDFLAGS and LIBS Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 12/14] src-release.sh: Add libsframe Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 13/14] binutils/NEWS: add text for SFrame support Indu Bhagat
2022-09-30 0:04 ` [PATCH,V1 14/14] gas/NEWS: add text about new command line option and " Indu Bhagat
2022-09-30 8:09 ` [PATCH,V1 00/14] Definition and support for SFrame unwind format Jan Beulich
2022-10-04 5:16 ` Indu Bhagat
2022-10-04 6:53 ` Jan Beulich
2022-09-30 8:24 ` Fangrui Song
2022-10-01 0:15 ` Indu Bhagat
2022-09-30 9:12 ` Nick Clifton
2022-10-01 0:29 ` Indu Bhagat
2022-10-01 9:51 ` Jose E. Marchesi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220930000440.1672106-11-indu.bhagat@oracle.com \
--to=indu.bhagat@oracle.com \
--cc=binutils@sourceware.org \
--cc=nickc@redhat.com \
--cc=weimin.pan@oracle.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).