binutils-gdb/gdb/configure.nat

494 lines
12 KiB
Plaintext
Raw Normal View History

Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
# ; -*- mode: sh ; -*-
# Copyright (C) 2013-2021 Free Software Foundation, Inc.
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
#
# This file is part of GDB.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Variables defined here:
#
# NAT_FILE - The header file with definitions for this native target.
#
# NATDEPFILES - Source files required for native debugging on this
# native target.
#
# NAT_CDEPS - Dynamic symbols to be exported for libthread_db.
#
# LOADLIBES - Libraries against which GDB will be linked for this
# native target.
#
# MH_CFLAGS - Additional CFLAGS for this host.
#
# XM_CLIBS - Host-dependent libraries against which GDB will be linked
# for this native target.
#
# HAVE_NATIVE_GCORE_HOST - Whether gcore should be installed on this
# native target.
#
# nat_makefile_frag - Name of the (optional) Makefile fragment file
# required to build the native target. The
# fragment is incorporated into the Makefile that
# configure constructs from Makefile.in.
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
#
# Notes:
#
# - To avoid shell expansion of variables, declare them with single
# quotes.
#
# - nat_makefile_frag must contain the full path of the file.
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
# This first case is useful for filling default values for each
# gdb_host.
case ${gdb_host} in
*linux*)
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
NAT_FILE='config/nm-linux.h'
NATDEPFILES='inf-ptrace.o fork-child.o nat/fork-inferior.o \
proc-service.o \
linux-thread-db.o linux-nat.o nat/linux-osdata.o linux-fork.o \
nat/linux-procfs.o nat/linux-ptrace.o nat/linux-waitpid.o \
nat/linux-personality.o nat/linux-namespaces.o'
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
NAT_CDEPS='$(srcdir)/proc-service.list'
LOADLIBES='-ldl $(RDYNAMIC)'
;;
fbsd*)
NATDEPFILES='fork-child.o nat/fork-inferior.o inf-ptrace.o fbsd-nat.o'
HAVE_NATIVE_GCORE_HOST=1
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
LOADLIBES='-lkvm'
;;
nbsd*)
NATDEPFILES='fork-child.o nat/fork-inferior.o nat/netbsd-nat.o inf-ptrace.o'
HAVE_NATIVE_GCORE_HOST=1
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
;;
obsd*)
NATDEPFILES='fork-child.o nat/fork-inferior.o inf-ptrace.o'
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
;;
cygwin*)
NATDEPFILES='x86-nat.o nat/x86-dregs.o windows-nat.o nat/windows-nat.o'
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
;;
mingw*)
NATDEPFILES='x86-nat.o nat/x86-dregs.o windows-nat.o nat/windows-nat.o'
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
;;
aix)
NATDEPFILES='nat/fork-inferior.o fork-child.o inf-ptrace.o'
;;
darwin)
NATDEPFILES='fork-child.o nat/fork-inferior.o darwin-nat.o \
darwin-nat-info.o'
Remove support for Solaris < 10 (PR gdb/22185) Given that GCC has obsoleted/removed support for Solaris 9 in GCC 4.9/5 in 2013: https://gcc.gnu.org/gcc-4.9/changes.html https://gcc.gnu.org/ml/gcc-patches/2013-05/msg00728.html and the last gdb version that can be compiled with gcc 4.9 is 7.12.1 only when configured with --disable-build-with-cxx, it's time to obsolete/remove support for Solaris < 10. This patch does this, simplifying configure.nat along the way (only a single sol2 configuration with variants for i386 and sparc). Some configure checks for older Solaris versions can go, too, and the check for libthread_db.so.1 removed: * Since Solaris 10, dlopen has moved to libc and libdl.so is just a filter on ld.so.1, so no need to check. * $RDYNAMIC is already handled above (and is a no-op with Solaris ld anyway). Both proc-service.c and sol-thread.c lose support for (Solaris-only) PROC_SERVICE_IS_OLD. The attached revised patch has been tested on sparcv9-sun-solaris2.10, sparcv9-sun-solaris2.11.4, amd64-pc-solaris2.10, amd64-pc-solaris2.11.4, and x86_64-pc-linux-gnu. I've also started an i386-pc-solaris2.9 build to check that it really stops as expected. PR gdb/22185 * configure.host <*-*-solaris2.[01], *-*-solaris2.[2-9]*>: Mark as obsolete. Use gdb_host sol2 for i[34567]86-*-solaris2*, x86_64-*-solaris2*. Remove i386sol2 support. * configure.nat <i386sol2>: Remove. <sol2-64>: Fold into ... <sol2>: ... this. Move common settings to default section. Add sol-thread.o. * configure.tgt <i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*>: Rename to ... <i[34567]86-*-solaris2*, x86_64-*-solaris2*>: ... this. <i[34567]86-*-solaris*>: Remove. <sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*>: Remove. * configure.ac: Remove wctype in libw check. (_MSE_INT_H): Don't define on Solaris 7-9. <solaris*>: Remove libthread_db.so.1 check. * configure: Regenerate. * config.in: Regenerate. * proc-service.c: Remove PROC_SERVICE_IS_OLD handling. (gdb_ps_prochandle_t, gdb_ps_read_buf_t, gdb_ps_write_buf_t) (gdb_ps_size_t): Remove. Use base types in users. * sol-thread.c: Likewise, also for gdb_ps_addr_t. * NEWS (Changes since GDB 8.0): Document Solaris 2.0-9 removal.
2017-09-26 21:19:10 +08:00
;;
sol2)
NATDEPFILES='fork-child.o nat/fork-inferior.o \
Remove support for Solaris < 10 (PR gdb/22185) Given that GCC has obsoleted/removed support for Solaris 9 in GCC 4.9/5 in 2013: https://gcc.gnu.org/gcc-4.9/changes.html https://gcc.gnu.org/ml/gcc-patches/2013-05/msg00728.html and the last gdb version that can be compiled with gcc 4.9 is 7.12.1 only when configured with --disable-build-with-cxx, it's time to obsolete/remove support for Solaris < 10. This patch does this, simplifying configure.nat along the way (only a single sol2 configuration with variants for i386 and sparc). Some configure checks for older Solaris versions can go, too, and the check for libthread_db.so.1 removed: * Since Solaris 10, dlopen has moved to libc and libdl.so is just a filter on ld.so.1, so no need to check. * $RDYNAMIC is already handled above (and is a no-op with Solaris ld anyway). Both proc-service.c and sol-thread.c lose support for (Solaris-only) PROC_SERVICE_IS_OLD. The attached revised patch has been tested on sparcv9-sun-solaris2.10, sparcv9-sun-solaris2.11.4, amd64-pc-solaris2.10, amd64-pc-solaris2.11.4, and x86_64-pc-linux-gnu. I've also started an i386-pc-solaris2.9 build to check that it really stops as expected. PR gdb/22185 * configure.host <*-*-solaris2.[01], *-*-solaris2.[2-9]*>: Mark as obsolete. Use gdb_host sol2 for i[34567]86-*-solaris2*, x86_64-*-solaris2*. Remove i386sol2 support. * configure.nat <i386sol2>: Remove. <sol2-64>: Fold into ... <sol2>: ... this. Move common settings to default section. Add sol-thread.o. * configure.tgt <i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*>: Rename to ... <i[34567]86-*-solaris2*, x86_64-*-solaris2*>: ... this. <i[34567]86-*-solaris*>: Remove. <sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*>: Remove. * configure.ac: Remove wctype in libw check. (_MSE_INT_H): Don't define on Solaris 7-9. <solaris*>: Remove libthread_db.so.1 check. * configure: Regenerate. * config.in: Regenerate. * proc-service.c: Remove PROC_SERVICE_IS_OLD handling. (gdb_ps_prochandle_t, gdb_ps_read_buf_t, gdb_ps_write_buf_t) (gdb_ps_size_t): Remove. Use base types in users. * sol-thread.c: Likewise, also for gdb_ps_addr_t. * NEWS (Changes since GDB 8.0): Document Solaris 2.0-9 removal.
2017-09-26 21:19:10 +08:00
procfs.o proc-api.o proc-events.o proc-flags.o proc-why.o \
sol-thread.o'
HAVE_NATIVE_GCORE_HOST=1
;;
esac
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
# This is where we actually filter by host and host CPU.
case ${gdb_host} in
aix)
case ${gdb_host_cpu} in
powerpc)
# Host: IBM PowerPC running AIX aix-thread.o is not
# listed in NATDEPFILES as it is pulled in by
# configure.
NATDEPFILES="${NATDEPFILES} rs6000-nat.o"
# When compiled with cc, for debugging, this argument
# should be passed. We have no idea who our current
# compiler is though, so we skip it.
# MH_CFLAGS='-bnodelcsect'
;;
esac
;;
alpha-linux)
case ${gdb_host_cpu} in
alpha)
# Host: Little-endian Alpha running Linux
2018-05-03 07:37:08 +08:00
NATDEPFILES="${NATDEPFILES} linux-nat-trad.o alpha-linux-nat.o"
# doublest.c currently assumes some properties of FP arithmetic
# on the host which require this.
MH_CFLAGS='-mieee'
;;
esac
;;
cygwin)
case ${gdb_host_cpu} in
i386)
# Native config information for GDB on i386
# systems running Cygwin.
NATDEPFILES="${NATDEPFILES} i386-windows-nat.o"
;;
esac
;;
cygwin64)
case ${gdb_host_cpu} in
i386)
# Native config information for GDB on amd64
# systems running Cygwin.
Implement debugging of WOW64 processes For WOW64 processes, the Wow64* variants of SuspendThread, GetThreadContext, SetThreadContext, and GetThreadSelectorEntry have to be used instead. And instead of EnumProcessModules, EnumProcessModulesEx with LIST_MODULES_32BIT is necessary. gdb/ChangeLog: 2020-03-04 Hannes Domani <ssbssa@yahoo.de> * NEWS: Mention support for WOW64 processes. * amd64-windows-nat.c (amd64_mappings): Rename and remove static. (amd64_windows_segment_register_p): Remove static. (_initialize_amd64_windows_nat): Update. * configure.nat <windows> (NATDEPFILES): Add i386-windows-nat.o. * i386-windows-nat.c (context_offset): Update. (i386_mappings): Rename and remove static. (i386_windows_segment_register_p): Remove static. (_initialize_i386_windows_nat): Update. * windows-nat.c (STATUS_WX86_BREAKPOINT): New macro. (STATUS_WX86_SINGLE_STEP): New macro. (EnumProcessModulesEx): New macro. (Wow64SuspendThread): New macro. (Wow64GetThreadContext): New macro. (Wow64SetThreadContext): New macro. (Wow64GetThreadSelectorEntry): New macro. (windows_set_context_register_offsets): Add static. (windows_set_segment_register_p): Likewise. (windows_add_thread): Adapt for WOW64 processes. (windows_fetch_one_register): Likewise. (windows_nat_target::fetch_registers): Likewise. (windows_store_one_register): Likewise. (display_selector): Likewise. (display_selectors): Likewise. (handle_exception): Likewise. (windows_continue): Likewise. (windows_nat_target::resume): Likewise. (windows_add_all_dlls): Likewise. (do_initial_windows_stuff): Likewise. (windows_nat_target::attach): Likewise. (windows_get_exec_module_filename): Likewise. (windows_nat_target::create_inferior): Likewise. (windows_xfer_siginfo): Likewise. (_initialize_loadable): Initialize Wow64SuspendThread, Wow64GetThreadContext, Wow64SetThreadContext, Wow64GetThreadSelectorEntry and EnumProcessModulesEx. * windows-nat.h (windows_set_context_register_offsets): Remove declaration. (windows_set_segment_register_p): Likewise. (i386_windows_segment_register_p): Add declaration. (amd64_windows_segment_register_p): Likewise.
2020-01-27 05:04:04 +08:00
NATDEPFILES="${NATDEPFILES} i386-windows-nat.o amd64-windows-nat.o"
;;
esac
;;
darwin)
case ${gdb_host_cpu} in
i386)
# Host: IA86 running Darwin
NATDEPFILES="${NATDEPFILES} i386-darwin-nat.o x86-nat.o \
nat/x86-dregs.o amd64-nat.o"
;;
esac
;;
fbsd)
case ${gdb_host_cpu} in
aarch64)
# Host: FreeBSD/aarch64
NATDEPFILES="${NATDEPFILES} aarch64-fbsd-nat.o"
LOADLIBES=
;;
arm)
# Host: FreeBSD/arm
NATDEPFILES="${NATDEPFILES} arm-fbsd-nat.o"
LOADLIBES=
;;
i386)
# Host: FreeBSD/i386
NATDEPFILES="${NATDEPFILES} x86-nat.o nat/x86-dregs.o \
x86-bsd-nat.o i386-bsd-nat.o i386-fbsd-nat.o bsd-kvm.o"
;;
mips)
# Host: FreeBSD/mips
NATDEPFILES="${NATDEPFILES} mips-fbsd-nat.o"
LOADLIBES=
;;
powerpc)
# Native config information for GDB on PowerPC
# systems running FreeBSD.
NATDEPFILES="${NATDEPFILES} ppc-fbsd-nat.o bsd-kvm.o"
;;
riscv*)
# Host: FreeBSD/riscv
NATDEPFILES="${NATDEPFILES} riscv-fbsd-nat.o"
;;
sparc)
# Host: FreeBSD/sparc64
NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc64-nat.o \
sparc64-fbsd-nat.o bsd-kvm.o"
;;
esac
;;
fbsd64)
case ${gdb_host_cpu} in
i386)
# Host: FreeBSD/amd64
NATDEPFILES="${NATDEPFILES} amd64-nat.o amd64-bsd-nat.o \
amd64-fbsd-nat.o bsd-kvm.o x86-nat.o nat/x86-dregs.o \
x86-bsd-nat.o"
;;
esac
;;
go32)
case ${gdb_host_cpu} in
i386)
# Host: Intel x86 running DJGPP
# We include several header files from config/djgpp
MH_CFLAGS='-I$(srcdir)/config/djgpp'
NATDEPFILES='go32-nat.o x86-nat.o nat/x86-dregs.o'
XM_CLIBS='-ldbg'
;;
esac
;;
i386gnu)
case ${gdb_host_cpu} in
i386)
# Host: Intel 386 running the GNU Hurd
NATDEPFILES='i386-gnu-nat.o gnu-nat.o \
x86-nat.o nat/x86-dregs.o fork-child.o \
[gdb, hurd] Repair build after "Share fork_inferior et al with gdbserver" changes ..., that is commit 2090129c36c7e582943b7d300968d19b46160d84 causing: [...]/gdb/gnu-nat.c: In function 'void gnu_ptrace_me()': [...]/gdb/gnu-nat.c:2133:5: error: 'trace_start_error_with_name' was not declared in this scope trace_start_error_with_name ("ptrace"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ [...]/gdb/gnu-nat.c:2133:5: note: suggested alternative: 'throw_perror_with_name' trace_start_error_with_name ("ptrace"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ throw_perror_with_name [...]/gdb/gnu-nat.c: In function 'void gnu_create_inferior(target_ops*, const char*, const string&, char**, int)': [...]/gdb/gnu-nat.c:2147:9: error: 'fork_inferior' was not declared in this scope pid = fork_inferior (exec_file, allargs, env, gnu_ptrace_me, ^~~~~~~~~~~~~ [...]/gdb/gnu-nat.c:2147:9: note: suggested alternative: 'exit_inferior' pid = fork_inferior (exec_file, allargs, env, gnu_ptrace_me, ^~~~~~~~~~~~~ exit_inferior [...]/gdb/gnu-nat.c:2174:30: error: 'START_INFERIOR_TRAPS_EXPECTED' was not declared in this scope gdb_startup_inferior (pid, START_INFERIOR_TRAPS_EXPECTED); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/bin/ld: gnu-nat.o: in function `gnu_ptrace_me()': [...]/gdb/gnu-nat.c:2134: undefined reference to `trace_start_error_with_name(char const*)' /usr/bin/ld: gnu-nat.o: in function `gnu_create_inferior(target_ops*, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char**, int)': [...]/gdb/gnu-nat.c:2148: undefined reference to `fork_inferior(char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char**, void (*)(), void (*)(int), void (*)(), char const*, void (*)(char const*, char* const*, char* const*))' /usr/bin/ld: fork-child.o: in function `gdb_startup_inferior(int, int)': [...]/gdb/fork-child.c:136: undefined reference to `startup_inferior(int, int, target_waitstatus*, ptid_t*)' collect2: error: ld returned 1 exit status gdb/ * configure.nat [gdb_host == i386gnu] (NATDEPFILES): Add 'nat/fork-inferior.o'. * gnu-nat.c: #include "nat/fork-inferior.h".
2018-07-04 19:27:09 +08:00
nat/fork-inferior.o \
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
notify_S.o process_reply_S.o msg_reply_S.o \
msg_U.o exc_request_U.o exc_request_S.o'
HAVE_NATIVE_GCORE_HOST=1
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
NAT_FILE='nm-i386gnu.h'
MH_CFLAGS='-D_GNU_SOURCE'
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
XM_CLIBS='-lshouldbeinlibc'
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
nat_makefile_frag="${srcdir}/config/${gdb_host_cpu}/i386gnu.mn"
;;
esac
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
;;
linux)
case ${gdb_host_cpu} in
aarch64)
# Host: AArch64 based machine running GNU/Linux
NATDEPFILES="${NATDEPFILES} aarch64-linux-nat.o \
aarch32-linux-nat.o nat/aarch64-linux-hw-point.o \
nat/aarch64-linux.o \
nat/aarch64-sve-linux-ptrace.o"
;;
arc)
# Host: ARC based machine running GNU/Linux
NATDEPFILES="${NATDEPFILES} arc-linux-nat.o"
;;
arm)
# Host: ARM based machine running GNU/Linux
NATDEPFILES="${NATDEPFILES} arm-linux-nat.o \
aarch32-linux-nat.o"
;;
i386)
# Host: Intel 386 running GNU/Linux.
NATDEPFILES="${NATDEPFILES} x86-nat.o nat/x86-dregs.o \
i386-linux-nat.o x86-linux-nat.o nat/linux-btrace.o \
nat/x86-linux.o nat/x86-linux-dregs.o"
;;
ia64)
# Host: Intel IA-64 running GNU/Linux
NATDEPFILES="${NATDEPFILES} ia64-linux-nat.o"
;;
m32r)
# Host: M32R based machine running GNU/Linux
NATDEPFILES="${NATDEPFILES} m32r-linux-nat.o"
;;
m68k)
# Host: Motorola m68k running GNU/Linux.
NATDEPFILES="${NATDEPFILES} m68k-linux-nat.o"
;;
mips)
# Host: Linux/MIPS
2018-05-03 07:37:08 +08:00
NATDEPFILES="${NATDEPFILES} linux-nat-trad.o \
mips-linux-nat.o nat/mips-linux-watch.o"
;;
pa)
# Host: Hewlett-Packard PA-RISC machine, running Linux
NATDEPFILES="${NATDEPFILES} hppa-linux-nat.o"
;;
powerpc)
# Host: PowerPC, running Linux
NATDEPFILES="${NATDEPFILES} ppc-linux-nat.o nat/ppc-linux.o"
;;
riscv*)
# Host: RISC-V, running Linux
NATDEPFILES="${NATDEPFILES} riscv-linux-nat.o \
nat/riscv-linux-tdesc.o"
;;
s390)
# Host: S390, running Linux
NATDEPFILES="${NATDEPFILES} s390-linux-nat.o"
;;
sparc)
# Host: GNU/Linux SPARC
NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc-linux-nat.o"
;;
tilegx)
# Host: Tilera TILE-Gx running GNU/Linux.
NATDEPFILES="${NATDEPFILES} tilegx-linux-nat.o"
NAT_CDEPS=
;;
xtensa)
# Host: Xtensa, running GNU/Linux.
NATDEPFILES="${NATDEPFILES} xtensa-linux-nat.o"
;;
esac
;;
linux64)
case ${gdb_host_cpu} in
i386)
# Host: GNU/Linux x86-64
NATDEPFILES="${NATDEPFILES} x86-nat.o nat/x86-dregs.o \
amd64-nat.o amd64-linux-nat.o x86-linux-nat.o \
nat/linux-btrace.o \
nat/x86-linux.o nat/x86-linux-dregs.o \
nat/amd64-linux-siginfo.o"
;;
sparc)
# Host: GNU/Linux UltraSPARC
NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc64-nat.o \
sparc64-linux-nat.o"
;;
esac
;;
mingw)
case ${gdb_host_cpu} in
i386)
NATDEPFILES="${NATDEPFILES} i386-windows-nat.o"
;;
esac
;;
mingw64)
case ${gdb_host_cpu} in
i386)
Implement debugging of WOW64 processes For WOW64 processes, the Wow64* variants of SuspendThread, GetThreadContext, SetThreadContext, and GetThreadSelectorEntry have to be used instead. And instead of EnumProcessModules, EnumProcessModulesEx with LIST_MODULES_32BIT is necessary. gdb/ChangeLog: 2020-03-04 Hannes Domani <ssbssa@yahoo.de> * NEWS: Mention support for WOW64 processes. * amd64-windows-nat.c (amd64_mappings): Rename and remove static. (amd64_windows_segment_register_p): Remove static. (_initialize_amd64_windows_nat): Update. * configure.nat <windows> (NATDEPFILES): Add i386-windows-nat.o. * i386-windows-nat.c (context_offset): Update. (i386_mappings): Rename and remove static. (i386_windows_segment_register_p): Remove static. (_initialize_i386_windows_nat): Update. * windows-nat.c (STATUS_WX86_BREAKPOINT): New macro. (STATUS_WX86_SINGLE_STEP): New macro. (EnumProcessModulesEx): New macro. (Wow64SuspendThread): New macro. (Wow64GetThreadContext): New macro. (Wow64SetThreadContext): New macro. (Wow64GetThreadSelectorEntry): New macro. (windows_set_context_register_offsets): Add static. (windows_set_segment_register_p): Likewise. (windows_add_thread): Adapt for WOW64 processes. (windows_fetch_one_register): Likewise. (windows_nat_target::fetch_registers): Likewise. (windows_store_one_register): Likewise. (display_selector): Likewise. (display_selectors): Likewise. (handle_exception): Likewise. (windows_continue): Likewise. (windows_nat_target::resume): Likewise. (windows_add_all_dlls): Likewise. (do_initial_windows_stuff): Likewise. (windows_nat_target::attach): Likewise. (windows_get_exec_module_filename): Likewise. (windows_nat_target::create_inferior): Likewise. (windows_xfer_siginfo): Likewise. (_initialize_loadable): Initialize Wow64SuspendThread, Wow64GetThreadContext, Wow64SetThreadContext, Wow64GetThreadSelectorEntry and EnumProcessModulesEx. * windows-nat.h (windows_set_context_register_offsets): Remove declaration. (windows_set_segment_register_p): Likewise. (i386_windows_segment_register_p): Add declaration. (amd64_windows_segment_register_p): Likewise.
2020-01-27 05:04:04 +08:00
NATDEPFILES="${NATDEPFILES} i386-windows-nat.o amd64-windows-nat.o"
;;
esac
;;
nbsd)
case ${gdb_host_cpu} in
alpha)
# Host: NetBSD/alpha
NATDEPFILES="${NATDEPFILES} alpha-bsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
mips)
# Host: NetBSD/mips
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} mips-netbsd-nat.o"
;;
pa)
# Host: NetBSD/hppa
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} netbsd-nat.o hppa-netbsd-nat.o"
;;
powerpc)
# Host: NetBSD/powerpc
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} ppc-netbsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
sh)
# Host: NetBSD/sh
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} sh-netbsd-nat.o"
;;
esac
;;
nbsd64)
case ${gdb_host_cpu} in
i386)
# Host: NetBSD/amd64
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} netbsd-nat.o amd64-nat.o x86-nat.o \
nat/x86-dregs.o x86-bsd-nat.o amd64-bsd-nat.o amd64-netbsd-nat.o"
;;
sparc)
# Host: NetBSD/sparc64
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} sparc64-netbsd-nat.o sparc-nat.o \
bsd-kvm.o"
LOADLIBES='-lkvm'
;;
esac
;;
nbsdelf)
case ${gdb_host_cpu} in
arm)
# Host: NetBSD/arm
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} arm-netbsd-nat.o"
;;
i386)
# Host: NetBSD/i386 ELF
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} netbsd-nat.o x86-nat.o \
nat/x86-dregs.o \
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
x86-bsd-nat.o i386-bsd-nat.o i386-netbsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
m68k)
# Host: NetBSD/m68k ELF
NATDEPFILES="${NATDEPFILES} m68k-bsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
sparc)
# Host: NetBSD/sparc ELF
Normalize names of the NetBSD files The files used to be named 'nbsd', which incorrectly reflects the name of the OS and confuses it with other BSD derived OSes. gdb/ChangeLog: * Makefile.in (ALL_64_TARGET_OBS, ALL_TARGET_OBS) HFILES_NO_SRCDIR, ALLDEPFILES): Rename files. * alpha-bsd-nat.c: Adjust include. * alpha-bsd-tdep.h: Adjust comment. * alpha-nbsd-tdep.c: Rename to ... * alpha-netbsd-tdep.c: ... this, adjust include. * amd64-nbsd-nat.c: Rename to ... * amd64-netbsd-nat.c: ... this, adjust include. * amd64-nbsd-tdep.c: Rename to ... * amd64-netbsd-tdep.c: ... this, adjust include. * amd64-tdep.h: Adjust include. * arm-nbsd-nat.c: Rename to ... * arm-netbsd-nat.c: ... this, adjust include. * arm-nbsd-tdep.c: Rename to ... * arm-netbsd-tdep.c: ... this, adjust include. * arm-nbsd-tdep.h: Rename to ... * arm-netbsd-tdep.h: ... this, adjust include. * configure.nat: Adjust file lists. * configure.tgt: Likewise. * hppa-nbsd-nat.c: Rename to ... * hppa-netbsd-nat.c: ... this, adjust include. * hppa-nbsd-tdep.c: Rename to ... * hppa-netbsd-tdep.c: ... this, adjust include. * i386-nbsd-nat.c: Rename to ... * i386-netbsd-nat.c: ... this, adjust include. * i386-nbsd-tdep.c: Rename to ... * i386-netbsd-tdep.c: ... this, adjust include. * m68k-bsd-nat.c: Adjust include. * mips-nbsd-nat.c: Rename to ... * mips-netbsd-nat.c: ... this, adjust include. * mips-nbsd-tdep.c: Rename to ... * mips-netbsd-tdep.c: ... this, adjust include. * mips-nbsd-tdep.h: Rename to ... * mips-netbsd-tdep.h: ... this. * nbsd-nat.c: Rename to ... * netbsd-nat.c: ... this, adjust include. * nbsd-nat.h: Rename to ... * netbsd-nat.h: ... this, adjust include. * nbsd-tdep.c: Rename to ... * netbsd-tdep.c: ... this, adjust include. * nbsd-tdep.h: Rename to ... * netbsd-tdep.h: ... this. * ppc-nbsd-nat.c: Rename to ... * ppc-netbsd-nat.c: ... this, adjust include. * ppc-nbsd-tdep.c: Rename to ... * ppc-netbsd-tdep.c: ... this, adjust include and comment. * ppc-nbsd-tdep.h: Rename to ... * ppc-netbsd-tdep.h: ... this. * sh-nbsd-nat.c: Rename to ... * sh-netbsd-nat.c: ... this, adjust include. * sh-nbsd-tdep.c: Rename to ... * sh-netbsd-tdep.c: ... this, adjust include. * sparc-nbsd-nat.c: Rename to ... * sparc-netbsd-nat.c: ... this. * sparc-nbsd-tdep.c: Rename to ... * sparc-netbsd-tdep.c: ... this, adjust include. * sparc64-nbsd-nat.c: Rename to ... * sparc64-netbsd-nat.c: ... this. * sparc64-nbsd-tdep.c: Rename to ... * sparc64-netbsd-tdep.c: ... this, adjust include. * sparc64-tdep.h: Adjust comment. * vax-bsd-nat.c: Adjust include. * vax-nbsd-tdep.c: Rename to ... * vax-netbsd-tdep.c: ... this, adjust include.
2020-10-07 03:36:22 +08:00
NATDEPFILES="${NATDEPFILES} sparc-nat.o sparc-netbsd-nat.o \
bsd-kvm.o"
LOADLIBES='-lkvm'
;;
vax)
# Host: NetBSD/vax ELF
NATDEPFILES="${NATDEPFILES} vax-bsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
esac
;;
nto)
case ${gdb_host_cpu} in
i386)
# Host: Intel 386 running QNX.
NATDEPFILES='nto-procfs.o'
NAT_FILE='config/nm-nto.h'
;;
esac
;;
obsd)
case ${gdb_host_cpu} in
i386)
# Host: OpenBSD/i386 ELF
NATDEPFILES="${NATDEPFILES} obsd-nat.o x86-bsd-nat.o \
i386-bsd-nat.o i386-obsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
m68k)
# Host: OpenBSD/m68k
NATDEPFILES="${NATDEPFILES} m68k-bsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
pa)
# Host: OpenBSD/hppa
NATDEPFILES="${NATDEPFILES} obsd-nat.o hppa-obsd-nat.o"
;;
powerpc)
# Host: OpenBSD/powerpc
NATDEPFILES="${NATDEPFILES} obsd-nat.o ppc-obsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
vax)
# Host: OpenBSD/vax
NATDEPFILES="${NATDEPFILES} vax-bsd-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
esac
;;
obsd64)
case ${gdb_host_cpu} in
i386)
# Host: OpenBSD/amd64
Fix (most) OpenBSD link errors This fixes these errors: ld: error: undefined symbol: x86_stopped_by_hw_breakpoint() >>> referenced by x86-nat.h:109 (../../gdb/x86-nat.h:109) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::stopped_by_hw_breakpoint()) ld: error: undefined symbol: x86_can_use_hw_breakpoint(bptype, int, int) >>> referenced by x86-nat.h:76 (../../gdb/x86-nat.h:76) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::can_use_hw_breakpoint(bptype, int, int)) ld: error: undefined symbol: x86_insert_hw_breakpoint(gdbarch*, bp_target_info*) >>> referenced by x86-nat.h:93 (../../gdb/x86-nat.h:93) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::insert_hw_breakpoint(gdbarch*, bp_target_info*)) ld: error: undefined symbol: x86_remove_hw_breakpoint(gdbarch*, bp_target_info*) >>> referenced by x86-nat.h:97 (../../gdb/x86-nat.h:97) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::remove_hw_breakpoint(gdbarch*, bp_target_info*)) ld: error: undefined symbol: x86_remove_watchpoint(unsigned long, int, target_hw_bp_type, expression*) >>> referenced by x86-nat.h:89 (../../gdb/x86-nat.h:89) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::remove_watchpoint(unsigned long, int, target_hw_bp_type, expression*)) ld: error: undefined symbol: x86_insert_watchpoint(unsigned long, int, target_hw_bp_type, expression*) >>> referenced by x86-nat.h:84 (../../gdb/x86-nat.h:84) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::insert_watchpoint(unsigned long, int, target_hw_bp_type, expression*)) ld: error: undefined symbol: x86_stopped_by_watchpoint() >>> referenced by x86-nat.h:100 (../../gdb/x86-nat.h:100) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::stopped_by_watchpoint()) ld: error: undefined symbol: x86_stopped_data_address(unsigned long*) >>> referenced by x86-nat.h:103 (../../gdb/x86-nat.h:103) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::stopped_data_address(unsigned long*)) ld: error: undefined symbol: x86_region_ok_for_hw_watchpoint(unsigned long, int) >>> referenced by x86-nat.h:79 (../../gdb/x86-nat.h:79) >>> amd64-obsd-nat.o:(x86_nat_target<obsd_nat_target>::region_ok_for_hw_watchpoint(unsigned long, int)) and ld: error: undefined symbol: x86_dr_insert_watchpoint(x86_debug_reg_state*, target_hw_bp_type, unsigned long, int) >>> referenced by x86-nat.c:156 (../../gdb/x86-nat.c:156) >>> x86-nat.o:(x86_insert_watchpoint(unsigned long, int, target_hw_bp_type, expression*)) ld: error: undefined symbol: x86_dr_remove_watchpoint(x86_debug_reg_state*, target_hw_bp_type, unsigned long, int) >>> referenced by x86-nat.c:169 (../../gdb/x86-nat.c:169) >>> x86-nat.o:(x86_remove_watchpoint(unsigned long, int, target_hw_bp_type, expression*)) ld: error: undefined symbol: x86_dr_region_ok_for_watchpoint(x86_debug_reg_state*, unsigned long, int) >>> referenced by x86-nat.c:181 (../../gdb/x86-nat.c:181) >>> x86-nat.o:(x86_region_ok_for_hw_watchpoint(unsigned long, int)) ld: error: undefined symbol: x86_dr_stopped_data_address(x86_debug_reg_state*, unsigned long*) >>> referenced by x86-nat.c:194 (../../gdb/x86-nat.c:194) >>> x86-nat.o:(x86_stopped_data_address(unsigned long*)) ld: error: undefined symbol: x86_dr_stopped_by_watchpoint(x86_debug_reg_state*) >>> referenced by x86-nat.c:206 (../../gdb/x86-nat.c:206) >>> x86-nat.o:(x86_stopped_by_watchpoint()) ld: error: undefined symbol: x86_dr_insert_watchpoint(x86_debug_reg_state*, target_hw_bp_type, unsigned long, int) >>> referenced by x86-nat.c:219 (../../gdb/x86-nat.c:219) >>> x86-nat.o:(x86_insert_hw_breakpoint(gdbarch*, bp_target_info*)) ld: error: undefined symbol: x86_dr_remove_watchpoint(x86_debug_reg_state*, target_hw_bp_type, unsigned long, int) >>> referenced by x86-nat.c:233 (../../gdb/x86-nat.c:233) >>> x86-nat.o:(x86_remove_hw_breakpoint(gdbarch*, bp_target_info*)) ld: error: undefined symbol: x86_dr_stopped_by_hw_breakpoint(x86_debug_reg_state*) >>> referenced by x86-nat.c:269 (../../gdb/x86-nat.c:269) >>> x86-nat.o:(x86_stopped_by_hw_breakpoint()) It does not fix: ld: error: can't create dynamic relocation R_X86_64_64 against symbol: __gmp_binvert_limb_table in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in /usr/local/lib/libgmp.a(mp_minv_tab.o) >>> referenced by tmp-dive_1.s >>> dive_1.o:(__gmpn_divexact_1) in archive /usr/local/lib/libgmp.a ld: error: can't create dynamic relocation R_X86_64_64 against symbol: __gmp_binvert_limb_table in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in /usr/local/lib/libgmp.a(mp_minv_tab.o) >>> referenced by tmp-bdiv_q_1.s >>> bdiv_q_1.o:(__gmpn_bdiv_q_1) in archive /usr/local/lib/libgmp.a ld: error: can't create dynamic relocation R_X86_64_64 against symbol: __gmpn_invert_limb_table in readonly segment; recompile object files with -fPIC or pass '-Wl,-z,notext' to allow text relocations in the output >>> defined in /usr/local/lib/libgmp.a(invert_limb_table.o) >>> referenced by tmp-invert_limb.s >>> invert_limb.o:(__gmpn_invert_limb) in archive /usr/local/lib/libgmp.a gdb/ChangeLog: 2019-12-04 Christian Biesinger <cbiesinger@google.com> * configure.nat (obsd64): Add missing files x86-nat.o and nat/x86-dregs.o. Change-Id: I4a443c0cf805efd7b45feaabd729a01b07772724
2019-11-23 01:03:15 +08:00
NATDEPFILES="${NATDEPFILES} obsd-nat.o amd64-nat.o x86-nat.o \
x86-bsd-nat.o amd64-bsd-nat.o amd64-obsd-nat.o bsd-kvm.o \
nat/x86-dregs.o"
LOADLIBES='-lkvm'
;;
mips)
# Host: OpenBSD/mips64
NATDEPFILES="${NATDEPFILES} obsd-nat.o mips64-obsd-nat.o"
;;
sparc)
# Host: OpenBSD/sparc64
NATDEPFILES="${NATDEPFILES} obsd-nat.o sparc64-obsd-nat.o \
sparc-nat.o bsd-kvm.o"
LOADLIBES='-lkvm'
;;
esac
;;
ppc64-linux)
case ${gdb_host_cpu} in
powerpc)
# Host: PowerPC64, running Linux
XM_CLIBS=
NATDEPFILES="${NATDEPFILES} ppc-linux-nat.o nat/ppc-linux.o"
;;
esac
;;
sol2)
case ${gdb_host_cpu} in
Remove support for Solaris < 10 (PR gdb/22185) Given that GCC has obsoleted/removed support for Solaris 9 in GCC 4.9/5 in 2013: https://gcc.gnu.org/gcc-4.9/changes.html https://gcc.gnu.org/ml/gcc-patches/2013-05/msg00728.html and the last gdb version that can be compiled with gcc 4.9 is 7.12.1 only when configured with --disable-build-with-cxx, it's time to obsolete/remove support for Solaris < 10. This patch does this, simplifying configure.nat along the way (only a single sol2 configuration with variants for i386 and sparc). Some configure checks for older Solaris versions can go, too, and the check for libthread_db.so.1 removed: * Since Solaris 10, dlopen has moved to libc and libdl.so is just a filter on ld.so.1, so no need to check. * $RDYNAMIC is already handled above (and is a no-op with Solaris ld anyway). Both proc-service.c and sol-thread.c lose support for (Solaris-only) PROC_SERVICE_IS_OLD. The attached revised patch has been tested on sparcv9-sun-solaris2.10, sparcv9-sun-solaris2.11.4, amd64-pc-solaris2.10, amd64-pc-solaris2.11.4, and x86_64-pc-linux-gnu. I've also started an i386-pc-solaris2.9 build to check that it really stops as expected. PR gdb/22185 * configure.host <*-*-solaris2.[01], *-*-solaris2.[2-9]*>: Mark as obsolete. Use gdb_host sol2 for i[34567]86-*-solaris2*, x86_64-*-solaris2*. Remove i386sol2 support. * configure.nat <i386sol2>: Remove. <sol2-64>: Fold into ... <sol2>: ... this. Move common settings to default section. Add sol-thread.o. * configure.tgt <i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*>: Rename to ... <i[34567]86-*-solaris2*, x86_64-*-solaris2*>: ... this. <i[34567]86-*-solaris*>: Remove. <sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*>: Remove. * configure.ac: Remove wctype in libw check. (_MSE_INT_H): Don't define on Solaris 7-9. <solaris*>: Remove libthread_db.so.1 check. * configure: Regenerate. * config.in: Regenerate. * proc-service.c: Remove PROC_SERVICE_IS_OLD handling. (gdb_ps_prochandle_t, gdb_ps_read_buf_t, gdb_ps_write_buf_t) (gdb_ps_size_t): Remove. Use base types in users. * sol-thread.c: Likewise, also for gdb_ps_addr_t. * NEWS (Changes since GDB 8.0): Document Solaris 2.0-9 removal.
2017-09-26 21:19:10 +08:00
i386)
# Host: Solaris x86_64
NATDEPFILES="${NATDEPFILES} \
amd64-nat.o i386-sol2-nat.o"
Remove support for Solaris < 10 (PR gdb/22185) Given that GCC has obsoleted/removed support for Solaris 9 in GCC 4.9/5 in 2013: https://gcc.gnu.org/gcc-4.9/changes.html https://gcc.gnu.org/ml/gcc-patches/2013-05/msg00728.html and the last gdb version that can be compiled with gcc 4.9 is 7.12.1 only when configured with --disable-build-with-cxx, it's time to obsolete/remove support for Solaris < 10. This patch does this, simplifying configure.nat along the way (only a single sol2 configuration with variants for i386 and sparc). Some configure checks for older Solaris versions can go, too, and the check for libthread_db.so.1 removed: * Since Solaris 10, dlopen has moved to libc and libdl.so is just a filter on ld.so.1, so no need to check. * $RDYNAMIC is already handled above (and is a no-op with Solaris ld anyway). Both proc-service.c and sol-thread.c lose support for (Solaris-only) PROC_SERVICE_IS_OLD. The attached revised patch has been tested on sparcv9-sun-solaris2.10, sparcv9-sun-solaris2.11.4, amd64-pc-solaris2.10, amd64-pc-solaris2.11.4, and x86_64-pc-linux-gnu. I've also started an i386-pc-solaris2.9 build to check that it really stops as expected. PR gdb/22185 * configure.host <*-*-solaris2.[01], *-*-solaris2.[2-9]*>: Mark as obsolete. Use gdb_host sol2 for i[34567]86-*-solaris2*, x86_64-*-solaris2*. Remove i386sol2 support. * configure.nat <i386sol2>: Remove. <sol2-64>: Fold into ... <sol2>: ... this. Move common settings to default section. Add sol-thread.o. * configure.tgt <i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*>: Rename to ... <i[34567]86-*-solaris2*, x86_64-*-solaris2*>: ... this. <i[34567]86-*-solaris*>: Remove. <sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*>: Remove. * configure.ac: Remove wctype in libw check. (_MSE_INT_H): Don't define on Solaris 7-9. <solaris*>: Remove libthread_db.so.1 check. * configure: Regenerate. * config.in: Regenerate. * proc-service.c: Remove PROC_SERVICE_IS_OLD handling. (gdb_ps_prochandle_t, gdb_ps_read_buf_t, gdb_ps_write_buf_t) (gdb_ps_size_t): Remove. Use base types in users. * sol-thread.c: Likewise, also for gdb_ps_addr_t. * NEWS (Changes since GDB 8.0): Document Solaris 2.0-9 removal.
2017-09-26 21:19:10 +08:00
;;
sparc)
# Host: Solaris SPARC & UltraSPARC
NAT_FILE='nm-sol2.h'
Remove support for Solaris < 10 (PR gdb/22185) Given that GCC has obsoleted/removed support for Solaris 9 in GCC 4.9/5 in 2013: https://gcc.gnu.org/gcc-4.9/changes.html https://gcc.gnu.org/ml/gcc-patches/2013-05/msg00728.html and the last gdb version that can be compiled with gcc 4.9 is 7.12.1 only when configured with --disable-build-with-cxx, it's time to obsolete/remove support for Solaris < 10. This patch does this, simplifying configure.nat along the way (only a single sol2 configuration with variants for i386 and sparc). Some configure checks for older Solaris versions can go, too, and the check for libthread_db.so.1 removed: * Since Solaris 10, dlopen has moved to libc and libdl.so is just a filter on ld.so.1, so no need to check. * $RDYNAMIC is already handled above (and is a no-op with Solaris ld anyway). Both proc-service.c and sol-thread.c lose support for (Solaris-only) PROC_SERVICE_IS_OLD. The attached revised patch has been tested on sparcv9-sun-solaris2.10, sparcv9-sun-solaris2.11.4, amd64-pc-solaris2.10, amd64-pc-solaris2.11.4, and x86_64-pc-linux-gnu. I've also started an i386-pc-solaris2.9 build to check that it really stops as expected. PR gdb/22185 * configure.host <*-*-solaris2.[01], *-*-solaris2.[2-9]*>: Mark as obsolete. Use gdb_host sol2 for i[34567]86-*-solaris2*, x86_64-*-solaris2*. Remove i386sol2 support. * configure.nat <i386sol2>: Remove. <sol2-64>: Fold into ... <sol2>: ... this. Move common settings to default section. Add sol-thread.o. * configure.tgt <i[34567]86-*-solaris2.1[0-9]*, x86_64-*-solaris2.1[0-9]*>: Rename to ... <i[34567]86-*-solaris2*, x86_64-*-solaris2*>: ... this. <i[34567]86-*-solaris*>: Remove. <sparc-*-solaris2.[0-6], sparc-*-solaris2.[0-6].*>: Remove. * configure.ac: Remove wctype in libw check. (_MSE_INT_H): Don't define on Solaris 7-9. <solaris*>: Remove libthread_db.so.1 check. * configure: Regenerate. * config.in: Regenerate. * proc-service.c: Remove PROC_SERVICE_IS_OLD handling. (gdb_ps_prochandle_t, gdb_ps_read_buf_t, gdb_ps_write_buf_t) (gdb_ps_size_t): Remove. Use base types in users. * sol-thread.c: Likewise, also for gdb_ps_addr_t. * NEWS (Changes since GDB 8.0): Document Solaris 2.0-9 removal.
2017-09-26 21:19:10 +08:00
NATDEPFILES="${NATDEPFILES} sparc-sol2-nat.o"
;;
esac
;;
Introduce "gdb/configure.nat" (and delete "gdb/config/*/*.mh" files) Due to my ongoing work to make it possible for gdbserver to start the inferior using the shell, I had to share the fork_inferior function under the "nat/" directory. In order to do that, I created a new file and put the function there; however, this meant that I now had to update some of the *.mh files (under "gdb/config") and add the new file as a dependency to be built natively. Bleh... After talking a bit to Pedro about this, the idea came up to write a new "gdb/configure.nat" file, a la "gdb/configure.tgt", which would concentrate all of the native settings for each host/system. I decided to tackle this issue. The patch is simple. All of the previous Makefile variables that were being declared inside the *.mh files are now inside "gdb/Makefile.in", and "gdb/configure" is responsible for AC_SUBST'ing them. The definitions of these variables were put inside "gdb/configure.nat", so now they're shell variables. For excerpts of Makefile code, one must create a file under "gdb/config/${gdb_cpu_host}" and reference it on the "nat_extra_makefile_frag" variable. It should now be easier to update the native dependencies of hosts in this single file. This has been tested on x86_64 without regressions. gdb/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile.in: Remove "@host_makefile_frag@". Add variables NAT_FILE, NATDEPFILES, NAT_CDEPS, LOADLIBES, MH_CFLAGS, XM_CLIBS, NAT_GENERATED_FILES, HAVE_NATIVE_GCORE_HOST. Add "@nat_extra_makefile_frag@". (Makefile): Remove dependency on "@frags@". ($(GNULIB_BUILDDIR)/Makefile): Likewise. (data-directory/Makefile): Likewise. * config/aarch64/linux.mh: Deleted; moved contents to "gdb/configure.nat". * config/alpha/alpha-linux.mh: Likewise. * config/alpha/nbsd.mh: Likewise. * config/arm/linux.mh: Likewise. * config/arm/nbsdelf.mh: Likewise. * config/i386/cygwin.mh: Likewise. * config/i386/cygwin64.mh: Likewise. * config/i386/darwin.mh: Likewise. * config/i386/fbsd.mh: Likewise. * config/i386/fbsd64.mh: Likewise. * config/i386/go32.mh: Likewise. * config/i386/i386gnu.mh: Likewise. * config/i386/i386sol2.mh: Likewise. * config/i386/linux.mh: Likewise. * config/i386/linux64.mh: Likewise. * config/i386/mingw.mh: Likewise. * config/i386/mingw64.mh: Likewise. * config/i386/nbsd64.mh: Likewise. * config/i386/nbsdelf.mh: Likewise. * config/i386/nto.mh: Likewise. * config/i386/obsd.mh: Likewise. * config/i386/obsd64.mh: Likewise. * config/i386/sol2-64.mh: Likewise. * config/ia64/linux.mh: Likewise. * config/m32r/linux.mh: Likewise. * config/m68k/linux.mh: Likewise. * config/m68k/nbsdelf.mh: Likewise. * config/m68k/obsd.mh: Likewise. * config/m88k/obsd.mh: Likewise. * config/mips/fbsd.mh: Likewise. * config/mips/linux.mh: Likewise. * config/mips/nbsd.mh: Likewise. * config/mips/obsd64.mh: Likewise. * config/pa/linux.mh: Likewise. * config/pa/nbsd.mh: Likewise. * config/pa/obsd.mh: Likewise. * config/powerpc/aix.mh: Likewise. * config/powerpc/fbsd.mh: Likewise. * config/powerpc/linux.mh: Likewise. * config/powerpc/nbsd.mh: Likewise. * config/powerpc/obsd.mh: Likewise. * config/powerpc/ppc64-linux.mh: Likewise. * config/powerpc/spu-linux.mh: Likewise. * config/s390/linux.mh: Likewise. * config/sh/nbsd.mh: Likewise. * config/sparc/fbsd.mh: Likewise. * config/sparc/linux.mh: Likewise. * config/sparc/linux64.mh: Likewise. * config/sparc/nbsd64.mh: Likewise. * config/sparc/nbsdelf.mh: Likewise. * config/sparc/obsd64.mh: Likewise. * config/sparc/sol2.mh: Likewise. * config/tilegx/linux.mh: Likewise. * config/vax/nbsdelf.mh: Likewise. * config/vax/obsd.mh: Likewise. * config/xtensa/linux.mh: Likewise. * config/i386/i386gnu.mn: New file, with excerpts from "config/i386/i386gnu.mh". * configure: Regenerate. * configure.ac: Rewrite code to use "gdb/configure.nat" instead of *.mh files under "gdb/config". * configure.nat: New file, with contents from the "gdb/config/*/*.mh" files. gdb/doc/ChangeLog: 2017-05-06 Sergio Durigan Junior <sergiodj@redhat.com> * Makefile: Remove "@host_makefile_frag@".
2017-04-26 04:03:39 +08:00
esac