Move gdb-dlfcn.[ch] to gdbsupport/

Message ID 20190821210820.25919-1-sergiodj@redhat.com
State New, archived
Headers

Commit Message

Sergio Durigan Junior Aug. 21, 2019, 9:08 p.m. UTC
  I need to use 'gdb_dlopen' inside 'gdbsupport/', but it's not yet
supported there.  This commit moves 'gdb-dlfcn.[ch]' to 'gdbsupport/',
which makes it available also on gdbserver.

gdb/ChangeLog:
2019-08-21  Sergio Durigan Junior  <sergiodj@redhat.com>

	* Makefile.in (COMMON_SFILES): Move 'gdb-dlfcn.c' to
	'gdbsupport/'.
	(HFILES_NO_SRCDIR): Likewise, for 'gdb-dlfcn.h'.
	* compile/compile-c-support.c: Include
	'gdbsupport/gdb-dlfcn.h'.
	* gdb-dlfcn.c: Move to...
	* gdbsupport/gdb-dlfcn.c: ... here.
	* gdb-dlfcn.h: Move to...
	* gdbsupport/gdb-dlfcn.h: ... here.

gdb/gdbserver/ChangeLog:
2019-08-21  Sergio Durigan Junior  <sergiodj@redhat.com>

	* config.in: Regenerate.
	* configure: Regenerate.
---
 gdb/Makefile.in                  | 4 ++--
 gdb/compile/compile-c-support.c  | 2 +-
 gdb/gdbserver/config.in          | 3 +++
 gdb/gdbserver/configure          | 2 +-
 gdb/gdbserver/configure.ac       | 3 ++-
 gdb/{ => gdbsupport}/gdb-dlfcn.c | 0
 gdb/{ => gdbsupport}/gdb-dlfcn.h | 0
 gdb/jit.c                        | 2 +-
 8 files changed, 10 insertions(+), 6 deletions(-)
 rename gdb/{ => gdbsupport}/gdb-dlfcn.c (100%)
 rename gdb/{ => gdbsupport}/gdb-dlfcn.h (100%)
  

Comments

Tom Tromey Aug. 21, 2019, 9:49 p.m. UTC | #1
>>>>> "Sergio" == Sergio Durigan Junior <sergiodj@redhat.com> writes:

Sergio> I need to use 'gdb_dlopen' inside 'gdbsupport/', but it's not yet
Sergio> supported there.  This commit moves 'gdb-dlfcn.[ch]' to 'gdbsupport/',
Sergio> which makes it available also on gdbserver.

Thanks for doing this.
It seems like a good idea to me.

Sergio> diff --git a/gdb/gdbserver/configure.ac b/gdb/gdbserver/configure.ac
Sergio> index 0009aac9f2..8d91f0d0e8 100644
Sergio> --- a/gdb/gdbserver/configure.ac
Sergio> +++ b/gdb/gdbserver/configure.ac
Sergio> @@ -88,7 +88,8 @@ AC_CHECK_HEADERS(termios.h sys/reg.h string.h dnl
Sergio>  		 proc_service.h sys/procfs.h linux/elf.h dnl
Sergio>  		 fcntl.h signal.h sys/file.h dnl
Sergio>  		 sys/ioctl.h netinet/in.h sys/socket.h netdb.h dnl
Sergio> -		 netinet/tcp.h arpa/inet.h)
Sergio> +		 netinet/tcp.h arpa/inet.h dnl
Sergio> +		 dlfcn.h)

I think it's better to add this check to gdbsupport/common.m4 (and
remove it from gdb's configure.ac).

Tom
  

Patch

diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index d5d095aae4..e7e26a44a0 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -964,6 +964,7 @@  COMMON_SFILES = \
 	gdbsupport/filestuff.c \
 	gdbsupport/format.c \
 	gdbsupport/job-control.c \
+	gdbsupport/gdb-dlfcn.c \
 	gdbsupport/gdb_tilde_expand.c \
 	gdbsupport/gdb_vecs.c \
 	gdbsupport/netstuff.c \
@@ -1028,7 +1029,6 @@  COMMON_SFILES = \
 	frame-unwind.c \
 	gcore.c \
 	gdb_bfd.c \
-	gdb-dlfcn.c \
 	gdb_obstack.c \
 	gdb_regex.c \
 	gdb_usleep.c \
@@ -1262,7 +1262,6 @@  HFILES_NO_SRCDIR = \
 	gcore.h \
 	gdb_bfd.h \
 	gdb_curses.h \
-	gdb-dlfcn.h \
 	gdb_expat.h \
 	gdb_obstack.h \
 	gdb_proc_service.h \
@@ -1460,6 +1459,7 @@  HFILES_NO_SRCDIR = \
 	gdbsupport/environ.h \
 	gdbsupport/fileio.h \
 	gdbsupport/format.h \
+	gdbsupport/gdb-dlfcn.h \
 	gdbsupport/gdb_assert.h \
 	gdbsupport/gdb_tilde_expand.h \
 	gdbsupport/gdb_locale.h \
diff --git a/gdb/compile/compile-c-support.c b/gdb/compile/compile-c-support.c
index a6727e83af..9de827a72c 100644
--- a/gdb/compile/compile-c-support.c
+++ b/gdb/compile/compile-c-support.c
@@ -22,12 +22,12 @@ 
 #include "compile-c.h"
 #include "compile-cplus.h"
 #include "compile.h"
-#include "gdb-dlfcn.h"
 #include "c-lang.h"
 #include "macrotab.h"
 #include "macroscope.h"
 #include "regcache.h"
 #include "gdbsupport/function-view.h"
+#include "gdbsupport/gdb-dlfcn.h"
 #include "gdbsupport/preprocessor.h"
 #include "gdbarch.h"
 
diff --git a/gdb/gdbserver/config.in b/gdb/gdbserver/config.in
index 3991964f9b..f05e9be48a 100644
--- a/gdb/gdbserver/config.in
+++ b/gdb/gdbserver/config.in
@@ -90,6 +90,9 @@ 
 /* Define to 1 if you have the `dladdr' function. */
 #undef HAVE_DLADDR
 
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
 /* Define to 1 if the system has the type `Elf32_auxv_t'. */
 #undef HAVE_ELF32_AUXV_T
 
diff --git a/gdb/gdbserver/configure b/gdb/gdbserver/configure
index 7e5be51cb2..732de991a5 100755
--- a/gdb/gdbserver/configure
+++ b/gdb/gdbserver/configure
@@ -6211,7 +6211,7 @@  $as_echo "$as_me: running $SHELL $ac_sub_configure $ac_sub_configure_args --cach
   cd "$ac_popdir"
 
 
-for ac_header in termios.h sys/reg.h string.h 		 proc_service.h sys/procfs.h linux/elf.h 		 fcntl.h signal.h sys/file.h 		 sys/ioctl.h netinet/in.h sys/socket.h netdb.h 		 netinet/tcp.h arpa/inet.h
+for ac_header in termios.h sys/reg.h string.h 		 proc_service.h sys/procfs.h linux/elf.h 		 fcntl.h signal.h sys/file.h 		 sys/ioctl.h netinet/in.h sys/socket.h netdb.h 		 netinet/tcp.h arpa/inet.h 		 dlfcn.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
diff --git a/gdb/gdbserver/configure.ac b/gdb/gdbserver/configure.ac
index 0009aac9f2..8d91f0d0e8 100644
--- a/gdb/gdbserver/configure.ac
+++ b/gdb/gdbserver/configure.ac
@@ -88,7 +88,8 @@  AC_CHECK_HEADERS(termios.h sys/reg.h string.h dnl
 		 proc_service.h sys/procfs.h linux/elf.h dnl
 		 fcntl.h signal.h sys/file.h dnl
 		 sys/ioctl.h netinet/in.h sys/socket.h netdb.h dnl
-		 netinet/tcp.h arpa/inet.h)
+		 netinet/tcp.h arpa/inet.h dnl
+		 dlfcn.h)
 AC_FUNC_FORK
 AC_CHECK_FUNCS(getauxval pread pwrite pread64 setns)
 
diff --git a/gdb/gdb-dlfcn.c b/gdb/gdbsupport/gdb-dlfcn.c
similarity index 100%
rename from gdb/gdb-dlfcn.c
rename to gdb/gdbsupport/gdb-dlfcn.c
diff --git a/gdb/gdb-dlfcn.h b/gdb/gdbsupport/gdb-dlfcn.h
similarity index 100%
rename from gdb/gdb-dlfcn.h
rename to gdb/gdbsupport/gdb-dlfcn.h
diff --git a/gdb/jit.c b/gdb/jit.c
index 87f8d8f885..5fef03700c 100644
--- a/gdb/jit.c
+++ b/gdb/jit.c
@@ -36,7 +36,7 @@ 
 #include "symfile.h"
 #include "symtab.h"
 #include "target.h"
-#include "gdb-dlfcn.h"
+#include "gdbsupport/gdb-dlfcn.h"
 #include <sys/stat.h>
 #include "gdb_bfd.h"
 #include "readline/tilde.h"