binutils-gdb/gdb/gdbserver/Makefile.in
Michael Sturm 51547df62c Add support for Intel PKRU register to GDB and GDBserver.
This patch adds support for the registers added by the
Memory Protection Keys for Userspace (PKU aka PKEYs) feature.
Native and remote debugging are covered by this patch.

The XSAVE area is extended with a new state containing
the 32-bit wide PKRU register. The new register is added to
amd64-avx-mpx_avx512-* tdesc, thus it is renamed accordingly. Also,
respective xstate mask X86_XSTATE_AVX_MPX_AVX512_MASK is renamed to
X86_XSTATE_AVX_MPX_AVX512_PKU_MASK to reflect the new feature set
it supports.

For more information, please refer to the
Intel(R) 64 and IA-32 Architectures Software Developer's
Manual - Septemper 2015
http://www.intel.com/content/dam/www/public/us/en/documents/
manuals/64-ia-32-architectures-software-developer-manual-325462.pdf

gdb/Changelog:
2015-12-08  Michael Sturm  <michael.sturm@intel.com>

     * NEWS: Mention addition of PKU feature.
     * amd64-linux-nat.c (amd64_linux_gregset32_reg_offset): Add PKRU register.
     * amd64-linux-tdep.c (features/i386/amd64-avx-mpx-avx512-linux.c): Rename
       to...
     (features/i386/amd64-avx-mpx-avx512-pku-linux.c): ...this.
     (amd64_linux_gregset_reg_offset): Add PKRU register.
     (amd64_linux_core_read_description): Rename
     X86_XSTATE_AVX_MPX_AVX512_MASK,
     rename tdesc_amd64_avx_mpx_avx512_pku_linux.
     (_initialize_amd64_linux_tdep): Rename
     initialize_tdesc_amd64_avx_mpx_avx512_linux.
     * amd64-linux-tdep.h (AMD64_LINUX_ORIG_RAX_REGNUM): Adjust regnum
     calculation.
     (tdesc_amd64_avx_mpx_avx512_linux): Rename to...
     (tdesc_amd64_avx_mpx_avx512_pku_linux): ...this.
     * amd64-tdep.c (features/i386/amd64-avx-mpx-avx512-pku.c): Rename to...
     (features/i386/amd64-avx-mpx-avx512-pku.c): ...this.
     (amd64_pkeys_names): New register name for raw register PKRU.
     (amd64_init_abi): Add code to initialize PKRU tdep variables if feature
     is present.
     (amd64_target_description): Rename X86_XSTATE_AVX_MPX_AVX512_MASK,
     rename tdesc_amd64_avx_mpx_avx512.
     (_initialize_amd64_tdep): Rename initialize_tdesc_amd64_avx_mpx_avx512.
     * amd64-tdep.h (enum amd64_regnum): Add PKRU register.
     (AMD64_NUM_REGS): Adjust regnum calculation.
     * i386-linux.nat.c (GETXSTATEREGS_SUPPLIES): Extend range of
     registers supplied via XSTATE by PKRU register.
     * common/x86-xstate.h (X86_XSTATE_PKRU): New macro.
     (X86_XSTATE_AVX_MPX_AVX512_MASK): Add PKRU and renamed mask.
     (X86_XSTATE_ALL_MASK): Rename X86_XSTATE_AVX_MPX_AVX512_MASK.
     (X86_XSTATE_PKRU_SIZE): New macro.
     (X86_XSTATE_MAX_SIZE): Adjust size.
     (HAS_PKRU(XCR0)): New macro.
     (X86_XSTATE_SIZE): Add checkfor PKRU.
     * features/Makefile (WHICH): Rename i386/i386-avx-mpx-avx512,
     i386/i386-avx-mpx-avx512-linux, i386/amd64-avx-mpx-avx512,
     i386/amd64-avx-mpx-avx512-linux.
     (i386/i386-avx-mpx-avx512-expedite): Rename expedite.
     (i386/i386-avx-mpx-avx512-linux-expedite): Likewise.
     (i386/amd64-avx-mpx-avx512-expedite): Likewise.
     (i386/amd64-avx-mpx-avx512-linux-expedite): Likewise.
     (XMLTOC): Rename i386/amd64-avx-mpx-avx512-linux.xml,
     i386/amd64-avx-mpx-avx512.xml, i386/i386-avx-mpx-avx512-linux.xml,
     i386/i386-avx-mpx-avx512.xml.
     ((outdir)/i386/i386-avx-mpx-avx512.dat): Rename rule, add
     i386/32bit-pkeys.xml.
     ((outdir)/i386/i386-avx-mpx-avx512-pku-linux.dat): Likewise.
     ((outdir)/i386/amd64-avx-mpx-avx512.dat): Rename rule, add
     i386/64bit-pkeys.xml.
     ((outdir)/i386/amd64-avx-mpx-avx512-linux.dat): Likewise.
     * features/i386/32bit-pkeys.xml: New file.
     * features/i386/64bit-pkeys.xml: Likewise.
     * features/i386/amd64-avx-mpx-avx512-linux-pku.c: Regenerate from
     renamed XML file.
     * features/i386/amd64-avx-mpx-avx512-linux.xml: Rename to
     amd64-avx-mpx-avx512-pku-linux.xml, add 64bit-pkeys.xml
     * features/i386/amd64-avx-mpx-avx512.c: Regenerate from
     renamed XML file.
     * features/i386/amd64-avx-mpx-avx512.xml: Rename to
     amd64-avx-mpx-avx512-pku.xml, add 64bit-pkeys.xml.
     * features/i386/i386-avx-mpx-avx512-linux.c: Regenerate from
     renamed XML file.
     * features/i386/i386-avx-mpx-avx512-linux.xml: Rename to
     i386-avx-mpx-avx512-pku-linux.xml, add 32bit-pkeys.xml.
     * features/i386/i386-avx-mpx-avx512.c: Regenerate from
     renamed XML file.
     * features/i386/i386-avx-mpx-avx512.xml: Rename to
     i386-avx-mpx-avx512-pku.xml, add 32bit-pkeys.xml.
     * i386-linux-nat.c (GETXSTATEREGS_SUPPLIES): Change to use
     I386_PKEYS_NUM_REGS.
     * i386-linux-tdep.c (features/i386/i386-avx-mpx-avx512-linux.c): Rename
     include.
     (i386_linux_gregset_reg_offset): Add PKRU register.
     (i386_linux_core_read_description): Rename xstate mask and returned
     tdesc for X86_XSTATE_AVX_MPX_AVX512_PKU_MASK.
     (_initialize_i386_linux_tdep): Rename
     initialize_tdesc_i386_avx_mpx_avx512_linux.
     * i386-linux-tdep.h (I386_LINUX_ORIG_EAX_REGNUM): Adjuste regnum
     calculation.
     (tdesc_i386_avx_mpx_avx512_linux): Rename prototype.
     (/* Format of XSAVE...): Add pkru register.
     * i386-tdep.c (i386-avx-mpx-avx512.c): Rename include.
     (i386_pkeys_names): New register name for raw register PKRU.
     (i386_pkru_regnum_p): Add function to look up register number of
     PKRU raw register.
     (i386_register_reggroup_p): Add code to exclude PKRU from general
     register group.
     (i386_validate_tdesc_p): Add code to handle PKRU feature, add PKRU
     registers if feature is present in xcr0.
     (i386_gdbarch_init): Adjust number of registers in architecture. Add code
     to initialize PKRU feature variables in tdep structure.
     (i386_target_description): Rename xstate mask and returned
     tdesc for X86_XSTATE_AVX_MPX_AVX512_PKU_MASK.
     (_initialize_i386_tdep): Rename initialize_tdesc_i386_avx_mpx_avx512.
     * i386-tdep.h (struct gdbarch_tdep): Add feature variables to tdep
     structure.
     (enum i386_regnum): Add PKRU register.
     (I386_PKEYS_NUM_REGS): New define for number of registers in PKRU feature.
     (i386_pkru_regnum_p): New prototype.
     * i387-tdep.c (xsave_pkeys_offset): New table for PKRU offsets in
     XSAVE buffer.
     (XSAVE_PKEYS_ADDR): New macro.
     (i387_supply_xsave): Add code to handle PKRU register.
     (i387_collect_xsave): Likewise.
     * i387-tdep.h (I387_NUM_PKEYS_REGS): New define for number of registers
     in PKRU feature.
     (I387_PKRU_REGNUM): New macro.
     (I387_PKEYSEND_REGNUM): Likewise.
     * regformats/i386/amd64_avx_mpx_avx512_pku_linux.dat: Regenerate from
     renamed XML file.
     * regformats/i386/amd64_avx_mpx_avx512_pku.dat: Likewise.
     * regformats/i386/i386/amd64-avx-mpx-avx512-pku.dat: Likewise.
     * regformats/i386/i386_avx_mpx_avx512_pku_linux.dat: Likewise.

testsuite/Changelog:
2016-04-18  Michael Sturm  <michael.sturm@intel.com>

     * gdb.arch/i386-pkru.c: New file.
     * gdb.arch/i386-pkru.exp: Likewise.

gdbserver/Changelog:
2016-04-18  Michael Sturm  <michael.sturm@intel.com>

     * Makefile.in (clean): Rename i386-avx-mpx-avx512.c,
     i386-avx-mpx-avx512-linux.c, amd64-avx-mpx-avx512.c,
     amd64-avx-mpx-avx512-linux.c.
     (i386-avx-mpx-avx512-linux-ipa.o:): Rename rule and source file.
     (amd64-avx-mpx-avx512-linux-ipa.o:): Likewise.
     (i386-avx-mpx-avx512.c :): Rename rule, source files and dat files.
     (i386-avx-mpx-avx512-linux.c :): Likewise.
     (amd64-avx-mpx-avx512.c :): Likewise.
     (amd64-avx-mpx-avx512-linux.c :): Likewise.
     * configure.srv (srv_i386_regobj): Rename i386-avx-mpx-avx512.o.
     (srv_i386_linux_regobj): Rename i386-avx-mpx-avx512-linux.o.
     (srv_amd64_regobj): Rename amd64-avx-mpx-avx512.o.
     (srv_amd64_linux_regobj): Rename amd64-avx-mpx-avx512-linux.o.
     (ipa_i386_linux_regobj): Rename i386-avx-mpx-avx512-linux-ipa.o.
     (ipa_amd64_linux_regobj): Rename amd64-avx-mpx-avx512-pku-linux-ipa.o.
     (srv_i386_32bit_xmlfiles): Add 32bit-pkeys.xml.
     (srv_i386_64bit_xmlfiles): Add 64bit-pkeys.xml.
     (srv_i386_xmlfiles): Rename i386/i386-avx-mpx-avx512.xml.
     (srv_amd64_xmlfiles): Rename i386/amd64-avx-mpx-avx512.xml.
     (srv_i386_linux_xmlfiles): Rename i386/i386-avx-mpx-avx512-linux.xml.
     (srv_amd64_linux_xmlfiles): Rename di386/amd64-avx-mpx-avx512-linux.xml.
     * i387-fp.c (num_pkeys_registers): New variable.
     (struct i387_xsave): Add space for pkru values.
     (i387_cache_to_fsave): Add code to handle PKRU register.
     (i387_xsave_to_cache): Likewise.
     * linux-amd64-ipa.c (get_ipa_tdesc): Rename
     tdesc_amd64_avx_mpx_avx512_linux.
     (initialize_low_tracepoint): Rename
     init_registers_amd64_avx_mpx_avx512_linux.
     * linux-i386-ipa.c (get_ipa_desc): Rename
     tdesc_i386_avx_mpx_avx512_linux.
     (initialize_low_tracepoint): Rename
     init_registers_i386_avx_mpx_avx512_linux.
     * linux-x86-low.c (x86_64_regmap[]): Add PKRU register.
     (x86_linux_read_description): Rename X86_XSTATE_AVX_MPX_AVX512_MASK,
     rename tdesc_amd64_avx_mpx_avx512_linux, rename
     tdesc_i386_avx_mpx_avx512_linux.
     (x86_get_ipa_tdesc_idx): Rename tdesc_amd64_avx_mpx_avx512_linux,
     rename tdesc_i386_avx_mpx_avx512_linux.
     (initialize_low_arch): Rename init_registers_amd64_avx_mpx_avx512_linux,
     rename init_registers_i386_avx_mpx_avx512_linux.
     * linux-x86-tdesc.h (init_registers_amd64_avx_mpx_avx512_linux): Renamed
     prototype.
     (tdesc_amd64_avx_mpx_avx512_linux): Likewise.
     (init_registers_i386_avx_mpx_avx512_linux): Likewise.
     (tdesc_i386_avx_mpx_avx512_linux): Likewise.

doc/Changelog:
2016-04-18  Michael Sturm  <michael.sturm@intel.com>

     * gdb.texinfo (i386 Features): Add description of PKRU register.

Change-Id: If75ce5aba7dfd33fdbe3d8b47f04ef3f550c52be
Signed-off-by: Michael Sturm <michael.sturm@intel.com>
2017-02-17 11:44:48 +01:00

1102 lines
40 KiB
Makefile

# Copyright (C) 1989-2017 Free Software Foundation, Inc.
# 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/>.
# Please keep lists in this file sorted alphabetically, with one item per line.
# See gdb/Makefile.in for guidelines on ordering files and directories.
prefix = @prefix@
exec_prefix = @exec_prefix@
host_alias = @host_noncanonical@
target_alias = @target_noncanonical@
program_transform_name = @program_transform_name@
bindir = @bindir@
libdir = @libdir@
tooldir = $(libdir)/$(target_alias)
datarootdir = @datarootdir@
datadir = @datadir@
mandir = @mandir@
man1dir = $(mandir)/man1
man2dir = $(mandir)/man2
man3dir = $(mandir)/man3
man4dir = $(mandir)/man4
man5dir = $(mandir)/man5
man6dir = $(mandir)/man6
man7dir = $(mandir)/man7
man8dir = $(mandir)/man8
man9dir = $(mandir)/man9
infodir = @infodir@
htmldir = $(prefix)/html
includedir = @includedir@
SHELL = @SHELL@
EXEEXT = @EXEEXT@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
RANLIB = @RANLIB@
CC = @CC@
CXX = @CXX@
CXX_DIALECT = @CXX_DIALECT@
AR = @AR@
AR_FLAGS = rc
# Dependency tracking information.
DEPMODE = @CCDEPMODE@
DEPDIR = @DEPDIR@
depcomp = $(SHELL) $(srcdir)/../depcomp
# Note that these are overridden by GNU make-specific code below if
# GNU make is used. The overrides implement dependency tracking.
COMPILE.pre = $(CXX) $(CXX_DIALECT)
COMPILE.post = -c -o $@
COMPILE = $(COMPILE.pre) $(INTERNAL_CFLAGS) $(COMPILE.post)
POSTCOMPILE = @true
# Directory containing source files. Don't clean up the spacing,
# this exact string is matched for by the "configure" script.
srcdir = @srcdir@
abs_top_srcdir = @abs_top_srcdir@
abs_srcdir = @abs_srcdir@
VPATH = @srcdir@
# It is also possible that you will need to add -I/usr/include/sys to the
# CFLAGS section if your system doesn't have fcntl.h in /usr/include (which
# is where it should be according to Posix).
# Set this up with gcc if you have gnu ld and the loader will print out
# line numbers for undefinded refs.
#CC_LD = g++ -static
CC_LD = $(CXX) $(CXX_DIALECT)
# Where is the "include" directory? Traditionally ../include or ./include
INCLUDE_DIR = ${srcdir}/../../include
INCLUDE_DEP = $$(INCLUDE_DIR)
LIBIBERTY_BUILDDIR = build-libiberty-gdbserver
LIBIBERTY = $(LIBIBERTY_BUILDDIR)/libiberty.a
# Where is ust? These will be empty if ust was not available.
ustlibs = @ustlibs@
ustinc = @ustinc@
# gnulib
GNULIB_BUILDDIR = build-gnulib-gdbserver
LIBGNU = $(GNULIB_BUILDDIR)/import/libgnu.a
INCGNU = -I$(srcdir)/../gnulib/import -I$(GNULIB_BUILDDIR)/import
# Generated headers in the gnulib directory. These must be listed
# so that they are generated before other files are compiled.
GNULIB_H = $(GNULIB_BUILDDIR)/import/string.h @GNULIB_STDINT_H@
# All the includes used for CFLAGS and for lint.
# -I. for config files.
# -I${srcdir} for our headers.
# -I$(srcdir)/../regformats for regdef.h.
#
# We do not include ../target or ../nat in here because headers
# in those directories should be included with the subdirectory.
# e.g.: "target/wait.h".
#
INCLUDE_CFLAGS = -I. -I${srcdir} -I$(srcdir)/../common \
-I$(srcdir)/../regformats -I$(srcdir)/.. -I$(INCLUDE_DIR) \
$(INCGNU)
# M{H,T}_CFLAGS, if defined, has host- and target-dependent CFLAGS
# from the config/ directory.
GLOBAL_CFLAGS = ${MT_CFLAGS} ${MH_CFLAGS}
#PROFILE_CFLAGS = -pg
WARN_CFLAGS = @WARN_CFLAGS@
WERROR_CFLAGS = @WERROR_CFLAGS@
WARN_CFLAGS_NO_FORMAT = `echo " $(WARN_CFLAGS) " \
| sed "s/ -Wformat-nonliteral / -Wno-format-nonliteral /g"`
# These are specifically reserved for setting from the command line
# when running make. I.E. "make CFLAGS=-Wmissing-prototypes".
CFLAGS = @CFLAGS@
CXXFLAGS = @CXXFLAGS@
CPPFLAGS = @CPPFLAGS@
# INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros.
INTERNAL_CFLAGS_BASE = ${CXXFLAGS} ${GLOBAL_CFLAGS} \
${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${CPPFLAGS}
INTERNAL_WARN_CFLAGS = ${INTERNAL_CFLAGS_BASE} $(WARN_CFLAGS)
INTERNAL_CFLAGS = ${INTERNAL_WARN_CFLAGS} $(WERROR_CFLAGS) -DGDBSERVER
# LDFLAGS is specifically reserved for setting from the command line
# when running make.
LDFLAGS = @LDFLAGS@
INTERNAL_LDFLAGS = $(LDFLAGS) @RDYNAMIC@
# All source files that go into linking GDB remote server.
SFILES = \
$(srcdir)/debug.c \
$(srcdir)/dll.c \
$(srcdir)/gdbreplay.c \
$(srcdir)/hostio.c \
$(srcdir)/hostio-errno.c \
$(srcdir)/i387-fp.c \
$(srcdir)/inferiors.c \
$(srcdir)/linux-aarch64-low.c \
$(srcdir)/linux-arm-low.c \
$(srcdir)/linux-bfin-low.c \
$(srcdir)/linux-cris-low.c \
$(srcdir)/linux-crisv32-low.c \
$(srcdir)/linux-ia64-low.c \
$(srcdir)/linux-low.c \
$(srcdir)/linux-m32r-low.c \
$(srcdir)/linux-m68k-low.c \
$(srcdir)/linux-mips-low.c \
$(srcdir)/linux-nios2-low.c \
$(srcdir)/linux-ppc-low.c \
$(srcdir)/linux-s390-low.c \
$(srcdir)/linux-sh-low.c \
$(srcdir)/linux-sparc-low.c \
$(srcdir)/linux-tile-low.c \
$(srcdir)/linux-x86-low.c \
$(srcdir)/linux-xtensa-low.c \
$(srcdir)/mem-break.c \
$(srcdir)/proc-service.c \
$(srcdir)/proc-service.list \
$(srcdir)/regcache.c \
$(srcdir)/remote-utils.c \
$(srcdir)/server.c \
$(srcdir)/symbol.c \
$(srcdir)/target.c \
$(srcdir)/thread-db.c \
$(srcdir)/utils.c \
$(srcdir)/win32-arm-low.c \
$(srcdir)/win32-i386-low.c \
$(srcdir)/win32-low.c \
$(srcdir)/wincecompat.c \
$(srcdir)/x86-low.c \
$(srcdir)/arch/arm.c \
$(srcdir)/arch/arm-get-next-pcs.c \
$(srcdir)/arch/arm-linux.c \
$(srcdir)/common/btrace-common.c \
$(srcdir)/common/buffer.c \
$(srcdir)/common/cleanups.c \
$(srcdir)/common/common-debug.c \
$(srcdir)/common/common-exceptions.c \
$(srcdir)/common/common-regcache.c \
$(srcdir)/common/common-utils.c \
$(srcdir)/common/errors.c \
$(srcdir)/common/fileio.c \
$(srcdir)/common/filestuff.c \
$(srcdir)/common/gdb_vecs.c \
$(srcdir)/common/new-op.c \
$(srcdir)/common/print-utils.c \
$(srcdir)/common/ptid.c \
$(srcdir)/common/rsp-low.c \
$(srcdir)/common/vec.c \
$(srcdir)/common/xml-utils.c \
$(srcdir)/nat/linux-btrace.c \
$(srcdir)/nat/linux-namespaces.c \
$(srcdir)/nat/linux-osdata.c \
$(srcdir)/nat/linux-personality.c \
$(srcdir)/nat/mips-linux-watch.c \
$(srcdir)/nat/ppc-linux.c \
$(srcdir)/target/waitstatus.c
DEPFILES = @GDBSERVER_DEPFILES@
LIBOBJS = @LIBOBJS@
SOURCES = $(SFILES)
TAGFILES = $(SOURCES) ${HFILES} ${ALLPARAM} ${POSSLIBS}
OBS = \
agent.o \
ax.o \
btrace-common.o \
buffer.o \
cleanups.o \
common-debug.o \
common-exceptions.o \
common-regcache.o \
common-utils.o \
debug.o \
dll.o \
errors.o \
event-loop.o \
fileio.o \
filestuff.o \
format.o \
gdb_vecs.o \
hostio.o \
inferiors.o \
mem-break.o \
new-op.o \
notif.o \
print-utils.o \
ptid.o \
regcache.o \
remote-utils.o \
rsp-low.o \
server.o \
signals.o \
signals-state-save-restore.o \
symbol.o \
target.o \
tdesc.o \
tracepoint.o \
utils.o \
vec.o \
version.o \
waitstatus.o \
xml-utils.o \
$(DEPFILES) \
$(LIBOBJS) \
$(XML_BUILTIN)
GDBREPLAY_OBS = gdbreplay.o version.o
GDBSERVER_LIBS = @GDBSERVER_LIBS@
XM_CLIBS = @LIBS@
CDEPS = $(srcdir)/proc-service.list
# XML files to compile in to gdbserver, if any.
XML_DIR = $(srcdir)/../features
XML_FILES = @srv_xmlfiles@
XML_BUILTIN = @srv_xmlbuiltin@
IPA_DEPFILES = @IPA_DEPFILES@
extra_libraries = @extra_libraries@
SUBDIRS = $(GNULIB_BUILDDIR) $(LIBIBERTY_BUILDDIR)
CLEANDIRS = $(SUBDIRS)
# List of subdirectories in the build tree that must exist.
# This is used to force build failures in existing trees when
# a new directory is added.
# The format here is for the `case' shell command.
REQUIRED_SUBDIRS = $(GNULIB_BUILDDIR) | $(LIBIBERTY_BUILDDIR)
FLAGS_TO_PASS = \
"prefix=$(prefix)" \
"exec_prefix=$(exec_prefix)" \
"infodir=$(infodir)" \
"datarootdir=$(datarootdir)" \
"docdir=$(docdir)" \
"htmldir=$(htmldir)" \
"pdfdir=$(pdfdir)" \
"libdir=$(libdir)" \
"mandir=$(mandir)" \
"datadir=$(datadir)" \
"includedir=$(includedir)" \
"against=$(against)" \
"DESTDIR=$(DESTDIR)" \
"AR=$(AR)" \
"AR_FLAGS=$(AR_FLAGS)" \
"CC=$(CC)" \
"CFLAGS=$(CFLAGS)" \
"CXX=$(CXX)" \
"CXXFLAGS=$(CXXFLAGS)" \
"DLLTOOL=$(DLLTOOL)" \
"LDFLAGS=$(LDFLAGS)" \
"RANLIB=$(RANLIB)" \
"MAKEINFO=$(MAKEINFO)" \
"MAKEHTML=$(MAKEHTML)" \
"MAKEHTMLFLAGS=$(MAKEHTMLFLAGS)" \
"INSTALL=$(INSTALL)" \
"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
"INSTALL_DATA=$(INSTALL_DATA)" \
"RUNTEST=$(RUNTEST)" \
"RUNTESTFLAGS=$(RUNTESTFLAGS)"
# All generated files which can be included by another file.
generated_files = config.h $(GNULIB_H)
%.o: %.c
$(COMPILE) $<
$(POSTCOMPILE)
all: gdbserver$(EXEEXT) gdbreplay$(EXEEXT) $(extra_libraries)
@$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do
# Traditionally "install" depends on "all". But it may be useful
# not to; for example, if the user has made some trivial change to a
# source file and doesn't care about rebuilding or just wants to save the
# time it takes for make to check that all is up to date.
# install-only is intended to address that need.
install: all
@$(MAKE) $(FLAGS_TO_PASS) install-only
install-only:
n=`echo gdbserver | sed '$(program_transform_name)'`; \
if [ x$$n = x ]; then n=gdbserver; else true; fi; \
if [ x"$(IPA_DEPFILES)" != x ]; then \
$(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(libdir); \
$(INSTALL_PROGRAM) $(IPA_LIB) $(DESTDIR)$(libdir)/$(IPA_LIB); \
fi; \
$(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(bindir); \
$(INSTALL_PROGRAM) gdbserver$(EXEEXT) $(DESTDIR)$(bindir)/$$n$(EXEEXT)
# Note that we run install and not install-only, as the latter
# is not part of GNU standards and in particular not provided
# in libiberty.
@$(MAKE) $(FLAGS_TO_PASS) DO=install "DODIRS=$(SUBDIRS)" subdir_do
uninstall: force
n=`echo gdbserver | sed '$(program_transform_name)'`; \
if [ x$$n = x ]; then n=gdbserver; else true; fi; \
rm -f $(DESTDIR)/$(bindir)/$$n$(EXEEXT) $(DESTDIR)$(man1dir)/$$n.1
@$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do
installcheck:
check:
info dvi pdf:
install-info:
install-pdf:
html:
install-html:
clean-info: force
@$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do
gdbserver$(EXEEXT): $(OBS) ${ADD_DEPS} ${CDEPS} $(LIBGNU) $(LIBIBERTY)
rm -f gdbserver$(EXEEXT)
$(CC_LD) $(INTERNAL_CFLAGS) $(INTERNAL_LDFLAGS) -o gdbserver$(EXEEXT) $(OBS) \
$(LIBGNU) $(LIBIBERTY) $(GDBSERVER_LIBS) $(XM_CLIBS)
$(LIBGNU) $(LIBIBERTY) $(GNULIB_H): all-lib
all-lib: $(GNULIB_BUILDDIR)/Makefile $(LIBIBERTY_BUILDDIR)/Makefile
@$(MAKE) $(FLAGS_TO_PASS) DO=all DODIRS="$(SUBDIRS)" subdir_do
.PHONY: all-lib
gdbreplay$(EXEEXT): $(GDBREPLAY_OBS) $(LIBGNU) $(LIBIBERTY)
rm -f gdbreplay$(EXEEXT)
$(CC_LD) $(INTERNAL_CFLAGS) $(INTERNAL_LDFLAGS) -o gdbreplay$(EXEEXT) $(GDBREPLAY_OBS) \
$(XM_CLIBS) $(LIBGNU) $(LIBIBERTY)
IPA_OBJS = ax-ipa.o tracepoint-ipa.o format-ipa.o utils-ipa.o \
regcache-ipa.o remote-utils-ipa.o common-utils-ipa.o \
tdesc-ipa.o print-utils-ipa.o rsp-low-ipa.o errors-ipa.o \
${IPA_DEPFILES}
IPA_LIB = libinproctrace.so
$(IPA_LIB): $(IPA_OBJS) ${ADD_DEPS} ${CDEPS}
rm -f $(IPA_LIB)
$(CC_LD) -shared -fPIC -Wl,--soname=$(IPA_LIB) -Wl,--no-undefined $(INTERNAL_CFLAGS) \
$(INTERNAL_LDFLAGS) -o $(IPA_LIB) ${IPA_OBJS} -ldl -pthread
# Put the proper machine-specific files first, so M-. on a machine
# specific routine gets the one for the correct machine.
# The xyzzy stuff below deals with empty DEPFILES
TAGS: ${TAGFILES}
etags `find ${srcdir}/../config -name $(DEPRECATED_TM_FILE) -print` \
`find ${srcdir}/../config -name ${XM_FILE} -print` \
`find ${srcdir}/../config -name ${NAT_FILE} -print` \
`for i in yzzy ${DEPFILES}; do \
if [ x$$i != xyzzy ]; then \
echo ${srcdir}/$$i | sed -e 's/\.o$$/\.c/' ; \
fi; \
done` \
${TAGFILES}
tags: TAGS
clean:
rm -f *.o ${ADD_FILES} *~
rm -f version.c
rm -f gdbserver$(EXEEXT) gdbreplay$(EXEEXT) core make.log
rm -f $(IPA_LIB)
rm -f aarch64.c
rm -f reg-arm.c reg-bfin.c i386.c reg-ia64.c reg-m32r.c reg-m68k.c
rm -f reg-sh.c reg-sparc.c reg-spu.c amd64.c i386-linux.c
rm -f reg-cris.c reg-crisv32.c amd64-linux.c reg-xtensa.c
rm -f reg-tilegx.c reg-tilegx32.c
rm -f arm-with-iwmmxt.c
rm -f arm-with-vfpv2.c arm-with-vfpv3.c arm-with-neon.c
rm -f mips-linux.c mips-dsp-linux.c
rm -f mips64-linux.c mips64-dsp-linux.c
rm -f nios2-linux.c
rm -f powerpc-32.c powerpc-32l.c powerpc-64l.c powerpc-e500l.c
rm -f powerpc-altivec32l.c powerpc-cell32l.c powerpc-vsx32l.c
rm -f powerpc-altivec64l.c powerpc-cell64l.c powerpc-vsx64l.c
rm -f powerpc-isa205-32l.c powerpc-isa205-64l.c
rm -f powerpc-isa205-altivec32l.c powerpc-isa205-vsx32l.c powerpc-isa205-altivec64l.c
rm -f powerpc-isa205-vsx64l.c
rm -f s390-linux32.c s390-linux64.c s390x-linux64.c
rm -f s390-linux32v1.c s390-linux32v2.c s390-linux64v1.c
rm -f s390-linux64v2.c s390x-linux64v1.c s390x-linux64v2.c
rm -f s390-te-linux64.c s390x-te-linux64.c
rm -f s390-vx-linux64.c s390x-vx-linux64.c
rm -f s390-tevx-linux64.c s390x-tevx-linux64.c
rm -f tic6x-c64xp-linux.c tic6x-c64x-linux.c tic6x-c62x-linux.c
rm -f xml-builtin.c stamp-xml
rm -f i386-avx.c i386-avx-linux.c
rm -f i386-mpx.c i386-mpx-linux.c
rm -f i386-avx-mpx.c i386-avx-mpx-linux.c
rm -f i386-avx-avx512.c i386-avx-avx512-linux.c
rm -f i386-avx-mpx-avx512-pku.c i386-avx-mpx-avx512-pku-linux.c
rm -f amd64-avx.c amd64-avx-linux.c
rm -f amd64-mpx.c amd64-mpx-linux.c
rm -f amd64-avx-mpx.c amd64-avx-mpx-linux.c
rm -f amd64-avx-avx512.c amd64-avx-avx512-linux.c
rm -f amd64-avx-mpx-avx512-pku.c amd64-avx-mpx-avx512-pku-linux.c
rm -f i386-mmx.c i386-mmx-linux.c
rm -f x32.c x32-linux.c
rm -f x32-avx.c x32-avx-linux.c
rm -f x32-avx-avx512.c x32-avx-avx512-linux.c
@$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do
maintainer-clean realclean distclean: clean
@$(MAKE) $(FLAGS_TO_PASS) DO=$@ "DODIRS=$(SUBDIRS)" subdir_do
rm -rf $(GNULIB_BUILDDIR)
rm -f Makefile config.status config.h stamp-h config.log
rm -f Makefile
subdir_do: force
@for i in $(DODIRS); do \
case $$i in \
$(REQUIRED_SUBDIRS)) \
if [ ! -f ./$$i/Makefile ] ; then \
echo "Missing $$i/Makefile" >&2 ; \
exit 1 ; \
fi ;; \
esac ; \
if [ -f ./$$i/Makefile ] ; then \
if (cd ./$$i; \
$(MAKE) $(FLAGS_TO_PASS) $(DO)) ; then true ; \
else exit 1 ; fi ; \
else true ; fi ; \
done
config.h: stamp-h ; @true
stamp-h: config.in config.status
CONFIG_FILES="" CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status
Makefile: Makefile.in config.status
CONFIG_HEADERS="" $(SHELL) ./config.status
$(GNULIB_BUILDDIR)/Makefile: $(srcdir)/../gnulib/Makefile.in config.status
@cd $(GNULIB_BUILDDIR); CONFIG_FILES="Makefile" \
CONFIG_COMMANDS="depfiles" \
CONFIG_HEADERS= \
CONFIG_LINKS= \
$(SHELL) config.status
config.status: configure configure.srv $(srcdir)/../../bfd/development.sh
$(SHELL) ./config.status --recheck
# automatic rebuilding in automake-generated Makefiles requires
# this rule in the toplevel Makefile, which, with GNU make, causes
# the desired updates through the implicit regeneration of the Makefile
# and all of its prerequisites.
am--refresh:
@:
force:
version.c: Makefile $(srcdir)/../version.in $(srcdir)/../../bfd/version.h $(srcdir)/../common/create-version.sh
$(SHELL) $(srcdir)/../common/create-version.sh $(srcdir)/.. \
$(host_alias) $(target_alias) version.c
xml-builtin.c: stamp-xml; @true
stamp-xml: $(XML_DIR)/feature_to_c.sh Makefile $(XML_FILES)
rm -f xml-builtin.tmp
$(SHELL) $(XML_DIR)/feature_to_c.sh xml-builtin.tmp $(XML_FILES)
$(SHELL) $(srcdir)/../../move-if-change xml-builtin.tmp xml-builtin.c
echo stamp > stamp-xml
.PRECIOUS: xml-builtin.c
# GNU Make has an annoying habit of putting *all* the Makefile variables
# into the environment, unless you include this target as a circumvention.
# Rumor is that this will be fixed (and this target can be removed)
# in GNU Make 4.0.
.NOEXPORT:
# GNU Make 3.63 has a different problem: it keeps tacking command line
# overrides onto the definition of $(MAKE). This variable setting
# will remove them.
MAKEOVERRIDES =
regdat_sh = $(srcdir)/../regformats/regdat.sh
UST_CFLAGS = $(ustinc) -DCONFIG_UST_GDB_INTEGRATION
# Note, we only build the IPA if -fvisibility=hidden is supported in
# the first place.
IPAGENT_CFLAGS = $(INTERNAL_CFLAGS) $(UST_CFLAGS) \
-fPIC -DIN_PROCESS_AGENT \
-fvisibility=hidden
IPAGENT_COMPILE = $(COMPILE.pre) $(IPAGENT_CFLAGS) $(COMPILE.post)
# In-process agent object rules
ax-ipa.o: ax.c
$(IPAGENT_COMPILE) $(WARN_CFLAGS_NO_FORMAT) $<
$(POSTCOMPILE)
tracepoint-ipa.o: tracepoint.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
utils-ipa.o: utils.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
format-ipa.o: ../common/format.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
common-utils-ipa.o: ../common/common-utils.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
remote-utils-ipa.o: remote-utils.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
regcache-ipa.o: regcache.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
i386-linux-ipa.o: i386-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
i386-mmx-linux-ipa.o: i386-mmx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
i386-avx-linux-ipa.o: i386-avx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
i386-mpx-linux-ipa.o: i386-mpx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
i386-avx-mpx-linux-ipa.o: i386-avx-mpx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
i386-avx-avx512-linux-ipa.o: i386-avx-avx512-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
i386-avx-mpx-avx512-pku-linux-ipa.o: i386-avx-mpx-avx512-pku-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
linux-i386-ipa.o: linux-i386-ipa.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
linux-amd64-ipa.o: linux-amd64-ipa.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
amd64-linux-ipa.o: amd64-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
amd64-avx-linux-ipa.o: amd64-avx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
amd64-mpx-linux-ipa.o: amd64-mpx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
amd64-avx-mpx-linux-ipa.o: amd64-avx-mpx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
amd64-avx-avx512-linux-ipa.o: amd64-avx-avx512-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
amd64-avx-mpx-avx512-pku-linux-ipa.o: amd64-avx-mpx-avx512-pku-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
linux-aarch64-ipa.o: linux-aarch64-ipa.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
aarch64-ipa.o: aarch64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
linux-s390-ipa.o: linux-s390-ipa.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-linux32-ipa.o: s390-linux32.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-linux32v1-ipa.o: s390-linux32v1.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-linux32v2-ipa.o: s390-linux32v2.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-linux64-ipa.o: s390-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-linux64v1-ipa.o: s390-linux64v1.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-linux64v2-ipa.o: s390-linux64v2.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-te-linux64-ipa.o: s390-te-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-vx-linux64-ipa.o: s390-vx-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390-tevx-linux64-ipa.o: s390-tevx-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390x-linux64-ipa.o: s390x-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390x-linux64v1-ipa.o: s390x-linux64v1.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390x-linux64v2-ipa.o: s390x-linux64v2.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390x-te-linux64-ipa.o: s390x-te-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390x-vx-linux64-ipa.o: s390x-vx-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
s390x-tevx-linux64-ipa.o: s390x-tevx-linux64.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
linux-ppc-ipa.o: linux-ppc-ipa.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-32l-ipa.o: powerpc-32l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-altivec32l-ipa.o: powerpc-altivec32l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-cell32l-ipa.o: powerpc-cell32l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-vsx32l-ipa.o: powerpc-vsx32l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-isa205-32l-ipa.o: powerpc-isa205-32l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-isa205-altivec32l-ipa.o: powerpc-isa205-altivec32l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-isa205-vsx32l-ipa.o: powerpc-isa205-vsx32l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-e500l-ipa.o: powerpc-e500l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-64l-ipa.o: powerpc-64l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-altivec64l-ipa.o: powerpc-altivec64l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-cell64l-ipa.o: powerpc-cell64l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-vsx64l-ipa.o: powerpc-vsx64l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-isa205-64l-ipa.o: powerpc-isa205-64l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-isa205-altivec64l-ipa.o: powerpc-isa205-altivec64l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
powerpc-isa205-vsx64l-ipa.o: powerpc-isa205-vsx64l.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
tdesc-ipa.o: tdesc.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
print-utils-ipa.o: ../common/print-utils.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
rsp-low-ipa.o: ../common/rsp-low.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
errors-ipa.o: ../common/errors.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
x32-linux-ipa.o: x32-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
x32-avx-linux-ipa.o: x32-avx-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
x32-avx512-linux-ipa.o: x32-avx512-linux.c
$(IPAGENT_COMPILE) $<
$(POSTCOMPILE)
ax.o: ax.c
$(COMPILE) $(WARN_CFLAGS_NO_FORMAT) $<
$(POSTCOMPILE)
signals.o: ../common/signals.c
$(COMPILE) $<
$(POSTCOMPILE)
print-utils.o: ../common/print-utils.c
$(COMPILE) $<
$(POSTCOMPILE)
rsp-low.o: ../common/rsp-low.c
$(COMPILE) $<
$(POSTCOMPILE)
common-utils.o: ../common/common-utils.c
$(COMPILE) $<
$(POSTCOMPILE)
posix-strerror.o: ../common/posix-strerror.c
$(COMPILE) $<
$(POSTCOMPILE)
mingw-strerror.o: ../common/mingw-strerror.c
$(COMPILE) $<
$(POSTCOMPILE)
vec.o: ../common/vec.c
$(COMPILE) $<
$(POSTCOMPILE)
gdb_vecs.o: ../common/gdb_vecs.c
$(COMPILE) $<
$(POSTCOMPILE)
xml-utils.o: ../common/xml-utils.c
$(COMPILE) $<
$(POSTCOMPILE)
ptid.o: ../common/ptid.c
$(COMPILE) $<
$(POSTCOMPILE)
buffer.o: ../common/buffer.c
$(COMPILE) $<
$(POSTCOMPILE)
format.o: ../common/format.c
$(COMPILE) $<
$(POSTCOMPILE)
filestuff.o: ../common/filestuff.c
$(COMPILE) $<
$(POSTCOMPILE)
agent.o: ../common/agent.c
$(COMPILE) $<
$(POSTCOMPILE)
errors.o: ../common/errors.c
$(COMPILE) $<
$(POSTCOMPILE)
common-debug.o: ../common/common-debug.c
$(COMPILE) $<
$(POSTCOMPILE)
cleanups.o: ../common/cleanups.c
$(COMPILE) $<
$(POSTCOMPILE)
common-exceptions.o: ../common/common-exceptions.c
$(COMPILE) $<
$(POSTCOMPILE)
waitstatus.o: ../target/waitstatus.c
$(COMPILE) $<
$(POSTCOMPILE)
fileio.o: ../common/fileio.c
$(COMPILE) $<
$(POSTCOMPILE)
common-regcache.o: ../common/common-regcache.c
$(COMPILE) $<
$(POSTCOMPILE)
signals-state-save-restore.o: ../common/signals-state-save-restore.c
$(COMPILE) $<
$(POSTCOMPILE)
new-op.o: ../common/new-op.c
$(COMPILE) $<
$(POSTCOMPILE)
# Arch object files rules form ../arch
arm.o: ../arch/arm.c
$(COMPILE) $<
$(POSTCOMPILE)
arm-linux.o: ../arch/arm-linux.c
$(COMPILE) $<
$(POSTCOMPILE)
arm-get-next-pcs.o: ../arch/arm-get-next-pcs.c
$(COMPILE) $<
$(POSTCOMPILE)
# Native object files rules from ../nat
x86-dregs.o: ../nat/x86-dregs.c
$(COMPILE) $<
$(POSTCOMPILE)
amd64-linux-siginfo.o: ../nat/amd64-linux-siginfo.c
$(COMPILE) $<
$(POSTCOMPILE)
linux-btrace.o: ../nat/linux-btrace.c
$(COMPILE) $<
$(POSTCOMPILE)
linux-osdata.o: ../nat/linux-osdata.c
$(COMPILE) $<
$(POSTCOMPILE)
linux-procfs.o: ../nat/linux-procfs.c
$(COMPILE) $<
$(POSTCOMPILE)
linux-ptrace.o: ../nat/linux-ptrace.c
$(COMPILE) $<
$(POSTCOMPILE)
linux-waitpid.o: ../nat/linux-waitpid.c
$(COMPILE) $<
$(POSTCOMPILE)
mips-linux-watch.o: ../nat/mips-linux-watch.c
$(COMPILE) $<
$(POSTCOMPILE)
ppc-linux.o: ../nat/ppc-linux.c
$(COMPILE) $<
$(POSTCOMPILE)
linux-personality.o: ../nat/linux-personality.c
$(COMPILE) $<
$(POSTCOMPILE)
aarch64-linux-hw-point.o: ../nat/aarch64-linux-hw-point.c
$(COMPILE) $<
$(POSTCOMPILE)
aarch64-linux.o: ../nat/aarch64-linux.c
$(COMPILE) $<
$(POSTCOMPILE)
btrace-common.o: ../common/btrace-common.c
$(COMPILE) $<
$(POSTCOMPILE)
x86-linux.o: ../nat/x86-linux.c
$(COMPILE) $<
$(POSTCOMPILE)
x86-linux-dregs.o: ../nat/x86-linux-dregs.c
$(COMPILE) $<
$(POSTCOMPILE)
linux-namespaces.o: ../nat/linux-namespaces.c
$(COMPILE) $<
$(POSTCOMPILE)
# Architecture specific object files rules from ../arch
aarch64-insn.o: ../arch/aarch64-insn.c
$(COMPILE) $<
$(POSTCOMPILE)
aarch64.c : $(srcdir)/../regformats/aarch64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/aarch64.dat aarch64.c
reg-arm.c : $(srcdir)/../regformats/reg-arm.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-arm.dat reg-arm.c
arm-with-iwmmxt.c : $(srcdir)/../regformats/arm/arm-with-iwmmxt.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/arm/arm-with-iwmmxt.dat arm-with-iwmmxt.c
arm-with-vfpv2.c : $(srcdir)/../regformats/arm/arm-with-vfpv2.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/arm/arm-with-vfpv2.dat arm-with-vfpv2.c
arm-with-vfpv3.c : $(srcdir)/../regformats/arm/arm-with-vfpv3.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/arm/arm-with-vfpv3.dat arm-with-vfpv3.c
arm-with-neon.c : $(srcdir)/../regformats/arm/arm-with-neon.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/arm/arm-with-neon.dat arm-with-neon.c
reg-bfin.c : $(srcdir)/../regformats/reg-bfin.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-bfin.dat reg-bfin.c
reg-cris.c : $(srcdir)/../regformats/reg-cris.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-cris.dat reg-cris.c
reg-crisv32.c : $(srcdir)/../regformats/reg-crisv32.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-crisv32.dat reg-crisv32.c
i386.c : $(srcdir)/../regformats/i386/i386.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386.dat i386.c
i386-linux.c : $(srcdir)/../regformats/i386/i386-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-linux.dat i386-linux.c
i386-avx.c : $(srcdir)/../regformats/i386/i386-avx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx.dat i386-avx.c
i386-avx-linux.c : $(srcdir)/../regformats/i386/i386-avx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx-linux.dat i386-avx-linux.c
i386-avx-avx512.c : $(srcdir)/../regformats/i386/i386-avx-avx512.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx-avx512.dat i386-avx-avx512.c
i386-avx-avx512-linux.c : $(srcdir)/../regformats/i386/i386-avx-avx512-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx-avx512-linux.dat i386-avx-avx512-linux.c
i386-mpx.c : $(srcdir)/../regformats/i386/i386-mpx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-mpx.dat i386-mpx.c
i386-mpx-linux.c : $(srcdir)/../regformats/i386/i386-mpx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-mpx-linux.dat i386-mpx-linux.c
i386-avx-mpx-avx512-pku.c : $(srcdir)/../regformats/i386/i386-avx-mpx-avx512-pku.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx-mpx-avx512-pku.dat i386-avx-mpx-avx512-pku.c
i386-avx-mpx-avx512-pku-linux.c : $(srcdir)/../regformats/i386/i386-avx-mpx-avx512-pku-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx-mpx-avx512-pku-linux.dat i386-avx-mpx-avx512-pku-linux.c
i386-avx-mpx.c : $(srcdir)/../regformats/i386/i386-avx-mpx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx-mpx.dat i386-avx-mpx.c
i386-avx-mpx-linux.c : $(srcdir)/../regformats/i386/i386-avx-mpx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-avx-mpx-linux.dat i386-avx-mpx-linux.c
i386-mmx.c : $(srcdir)/../regformats/i386/i386-mmx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-mmx.dat i386-mmx.c
i386-mmx-linux.c : $(srcdir)/../regformats/i386/i386-mmx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/i386-mmx-linux.dat i386-mmx-linux.c
reg-ia64.c : $(srcdir)/../regformats/reg-ia64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-ia64.dat reg-ia64.c
reg-m32r.c : $(srcdir)/../regformats/reg-m32r.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-m32r.dat reg-m32r.c
reg-m68k.c : $(srcdir)/../regformats/reg-m68k.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-m68k.dat reg-m68k.c
reg-cf.c : $(srcdir)/../regformats/reg-cf.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-cf.dat reg-cf.c
mips-linux.c : $(srcdir)/../regformats/mips-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/mips-linux.dat mips-linux.c
mips-dsp-linux.c : $(srcdir)/../regformats/mips-dsp-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/mips-dsp-linux.dat mips-dsp-linux.c
mips64-linux.c : $(srcdir)/../regformats/mips64-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/mips64-linux.dat mips64-linux.c
mips64-dsp-linux.c : $(srcdir)/../regformats/mips64-dsp-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/mips64-dsp-linux.dat mips64-dsp-linux.c
nios2-linux.c : $(srcdir)/../regformats/nios2-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/nios2-linux.dat nios2-linux.c
powerpc-32.c : $(srcdir)/../regformats/rs6000/powerpc-32.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-32.dat powerpc-32.c
powerpc-32l.c : $(srcdir)/../regformats/rs6000/powerpc-32l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-32l.dat powerpc-32l.c
powerpc-altivec32l.c : $(srcdir)/../regformats/rs6000/powerpc-altivec32l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-altivec32l.dat powerpc-altivec32l.c
powerpc-cell32l.c : $(srcdir)/../regformats/rs6000/powerpc-cell32l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-cell32l.dat powerpc-cell32l.c
powerpc-vsx32l.c : $(srcdir)/../regformats/rs6000/powerpc-vsx32l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-vsx32l.dat powerpc-vsx32l.c
powerpc-isa205-32l.c : $(srcdir)/../regformats/rs6000/powerpc-isa205-32l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-isa205-32l.dat powerpc-isa205-32l.c
powerpc-isa205-altivec32l.c : $(srcdir)/../regformats/rs6000/powerpc-isa205-altivec32l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-isa205-altivec32l.dat powerpc-isa205-altivec32l.c
powerpc-isa205-vsx32l.c : $(srcdir)/../regformats/rs6000/powerpc-isa205-vsx32l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-isa205-vsx32l.dat powerpc-isa205-vsx32l.c
powerpc-e500l.c : $(srcdir)/../regformats/rs6000/powerpc-e500l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-e500l.dat powerpc-e500l.c
powerpc-64l.c : $(srcdir)/../regformats/rs6000/powerpc-64l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-64l.dat powerpc-64l.c
powerpc-altivec64l.c : $(srcdir)/../regformats/rs6000/powerpc-altivec64l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-altivec64l.dat powerpc-altivec64l.c
powerpc-cell64l.c : $(srcdir)/../regformats/rs6000/powerpc-cell64l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-cell64l.dat powerpc-cell64l.c
powerpc-vsx64l.c : $(srcdir)/../regformats/rs6000/powerpc-vsx64l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-vsx64l.dat powerpc-vsx64l.c
powerpc-isa205-64l.c : $(srcdir)/../regformats/rs6000/powerpc-isa205-64l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-isa205-64l.dat powerpc-isa205-64l.c
powerpc-isa205-altivec64l.c : $(srcdir)/../regformats/rs6000/powerpc-isa205-altivec64l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-isa205-altivec64l.dat powerpc-isa205-altivec64l.c
powerpc-isa205-vsx64l.c : $(srcdir)/../regformats/rs6000/powerpc-isa205-vsx64l.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/rs6000/powerpc-isa205-vsx64l.dat powerpc-isa205-vsx64l.c
s390-linux32.c : $(srcdir)/../regformats/s390-linux32.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-linux32.dat s390-linux32.c
s390-linux32v1.c : $(srcdir)/../regformats/s390-linux32v1.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-linux32v1.dat s390-linux32v1.c
s390-linux32v2.c : $(srcdir)/../regformats/s390-linux32v2.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-linux32v2.dat s390-linux32v2.c
s390-linux64.c : $(srcdir)/../regformats/s390-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-linux64.dat s390-linux64.c
s390-linux64v1.c : $(srcdir)/../regformats/s390-linux64v1.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-linux64v1.dat s390-linux64v1.c
s390-linux64v2.c : $(srcdir)/../regformats/s390-linux64v2.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-linux64v2.dat s390-linux64v2.c
s390-te-linux64.c : $(srcdir)/../regformats/s390-te-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-te-linux64.dat s390-te-linux64.c
s390-vx-linux64.c : $(srcdir)/../regformats/s390-vx-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-vx-linux64.dat s390-vx-linux64.c
s390-tevx-linux64.c : $(srcdir)/../regformats/s390-tevx-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390-tevx-linux64.dat s390-tevx-linux64.c
s390x-linux64.c : $(srcdir)/../regformats/s390x-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390x-linux64.dat s390x-linux64.c
s390x-linux64v1.c : $(srcdir)/../regformats/s390x-linux64v1.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390x-linux64v1.dat s390x-linux64v1.c
s390x-linux64v2.c : $(srcdir)/../regformats/s390x-linux64v2.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390x-linux64v2.dat s390x-linux64v2.c
s390x-te-linux64.c : $(srcdir)/../regformats/s390x-te-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390x-te-linux64.dat s390x-te-linux64.c
s390x-vx-linux64.c : $(srcdir)/../regformats/s390x-vx-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390x-vx-linux64.dat s390x-vx-linux64.c
s390x-tevx-linux64.c : $(srcdir)/../regformats/s390x-tevx-linux64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/s390x-tevx-linux64.dat s390x-tevx-linux64.c
tic6x-c64xp-linux.c : $(srcdir)/../regformats/tic6x-c64xp-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/tic6x-c64xp-linux.dat tic6x-c64xp-linux.c
tic6x-c64x-linux.c : $(srcdir)/../regformats/tic6x-c64x-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/tic6x-c64x-linux.dat tic6x-c64x-linux.c
tic6x-c62x-linux.c : $(srcdir)/../regformats/tic6x-c62x-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/tic6x-c62x-linux.dat tic6x-c62x-linux.c
reg-sh.c : $(srcdir)/../regformats/reg-sh.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-sh.dat reg-sh.c
reg-sparc64.c : $(srcdir)/../regformats/reg-sparc64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-sparc64.dat reg-sparc64.c
reg-spu.c : $(srcdir)/../regformats/reg-spu.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-spu.dat reg-spu.c
amd64.c : $(srcdir)/../regformats/i386/amd64.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64.dat amd64.c
amd64-linux.c : $(srcdir)/../regformats/i386/amd64-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-linux.dat amd64-linux.c
amd64-avx.c : $(srcdir)/../regformats/i386/amd64-avx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx.dat amd64-avx.c
amd64-avx-linux.c : $(srcdir)/../regformats/i386/amd64-avx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx-linux.dat amd64-avx-linux.c
amd64-avx-avx512.c : $(srcdir)/../regformats/i386/amd64-avx-avx512.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx-avx512.dat amd64-avx-avx512.c
amd64-avx-avx512-linux.c : $(srcdir)/../regformats/i386/amd64-avx-avx512-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx-avx512-linux.dat amd64-avx-avx512-linux.c
amd64-mpx.c : $(srcdir)/../regformats/i386/amd64-mpx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-mpx.dat amd64-mpx.c
amd64-mpx-linux.c : $(srcdir)/../regformats/i386/amd64-mpx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-mpx-linux.dat amd64-mpx-linux.c
amd64-avx-mpx-avx512-pku.c : $(srcdir)/../regformats/i386/amd64-avx-mpx-avx512-pku.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx-mpx-avx512-pku.dat amd64-avx-mpx-avx512-pku.c
amd64-avx-mpx-avx512-pku-linux.c : $(srcdir)/../regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat amd64-avx-mpx-avx512-pku-linux.c
amd64-avx-mpx.c : $(srcdir)/../regformats/i386/amd64-avx-mpx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx-mpx.dat amd64-avx-mpx.c
amd64-avx-mpx-linux.c : $(srcdir)/../regformats/i386/amd64-avx-mpx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/amd64-avx-mpx-linux.dat amd64-avx-mpx-linux.c
x32.c : $(srcdir)/../regformats/i386/x32.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/x32.dat x32.c
x32-linux.c : $(srcdir)/../regformats/i386/x32-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/x32-linux.dat x32-linux.c
x32-avx.c : $(srcdir)/../regformats/i386/x32-avx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/x32-avx.dat x32-avx.c
x32-avx-linux.c : $(srcdir)/../regformats/i386/x32-avx-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/x32-avx-linux.dat x32-avx-linux.c
x32-avx-avx512.c : $(srcdir)/../regformats/i386/x32-avx-avx512.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/x32-avx-avx512.dat x32-avx-avx512.c
x32-avx-avx512-linux.c : $(srcdir)/../regformats/i386/x32-avx-avx512-linux.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/i386/x32-avx-avx512-linux.dat x32-avx-avx512-linux.c
reg-xtensa.c : $(srcdir)/../regformats/reg-xtensa.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-xtensa.dat reg-xtensa.c
reg-tilegx.c : $(srcdir)/../regformats/reg-tilegx.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-tilegx.dat reg-tilegx.c
reg-tilegx32.c : $(srcdir)/../regformats/reg-tilegx32.dat $(regdat_sh)
$(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-tilegx32.dat reg-tilegx32.c
#
# Dependency tracking.
#
ifeq ($(DEPMODE),depmode=gcc3)
# Note that we put the dependencies into a .Tpo file, then move them
# into place if the compile succeeds. We need this because gcc does
# not atomically write the dependency output file.
override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
-MF $(DEPDIR)/$(basename $(@F)).Tpo
override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
$(DEPDIR)/$(basename $(@F)).Po
else
override COMPILE.pre = source='$<' object='$@' libtool=no \
DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
# depcomp handles atomicity for us, so we don't need a postcompile
# step.
override POSTCOMPILE =
endif
# A list of all the objects we might care about in this build, for
# dependency tracking.
all_object_files = $(OBS) $(GDBREPLAY_OBS) $(IPA_OBJS)
# Ensure that generated files are created early. Use order-only
# dependencies if available. They require GNU make 3.80 or newer,
# and the .VARIABLES variable was introduced at the same time.
ifdef .VARIABLES
$(all_object_files): | $(generated_files)
else
$(all_object_files) : $(generated_files)
endif
# Dependencies.
-include $(patsubst %.o, $(DEPDIR)/%.Po, $(all_object_files))
# Disable implicit make rules.
include $(srcdir)/../disable-implicit-rules.mk
# This is the end of "Makefile.in".