1# Copyright 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. 3 4# This file is part of GDB. 5 6# This program is free software; you can redistribute it and/or modify 7# it under the terms of the GNU General Public License as published by 8# the Free Software Foundation; either version 2 of the License, or 9# (at your option) any later version. 10# 11# This program is distributed in the hope that it will be useful, 12# but WITHOUT ANY WARRANTY; without even the implied warranty of 13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14# GNU General Public License for more details. 15# 16# You should have received a copy of the GNU General Public License 17# along with this program; if not, write to the Free Software 18# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 19 20prefix = @prefix@ 21exec_prefix = @exec_prefix@ 22 23host_alias = @host_alias@ 24target_alias = @target_alias@ 25program_transform_name = @program_transform_name@ 26bindir = @bindir@ 27libdir = @libdir@ 28tooldir = $(libdir)/$(target_alias) 29 30datadir = @datadir@ 31mandir = @mandir@ 32man1dir = $(mandir)/man1 33man2dir = $(mandir)/man2 34man3dir = $(mandir)/man3 35man4dir = $(mandir)/man4 36man5dir = $(mandir)/man5 37man6dir = $(mandir)/man6 38man7dir = $(mandir)/man7 39man8dir = $(mandir)/man8 40man9dir = $(mandir)/man9 41infodir = @infodir@ 42htmldir = $(prefix)/html 43includedir = @includedir@ 44 45SHELL = /bin/sh 46 47INSTALL = @INSTALL@ 48INSTALL_PROGRAM = @INSTALL_PROGRAM@ 49INSTALL_DATA = @INSTALL_DATA@ 50 51CC = @CC@ 52 53# Directory containing source files. Don't clean up the spacing, 54# this exact string is matched for by the "configure" script. 55srcdir = @srcdir@ 56VPATH = @srcdir@ 57 58# It is also possible that you will need to add -I/usr/include/sys to the 59# CFLAGS section if your system doesn't have fcntl.h in /usr/include (which 60# is where it should be according to Posix). 61 62# Set this up with gcc if you have gnu ld and the loader will print out 63# line numbers for undefinded refs. 64#CC-LD=gcc -static 65CC-LD=${CC} 66 67# Where is the "include" directory? Traditionally ../include or ./include 68INCLUDE_DIR = ${srcdir}/../../include 69INCLUDE_DEP = $$(INCLUDE_DIR) 70 71# Where are the BFD library? 72BFD_DIR = ../../bfd 73BFD = $(BFD_DIR)/libbfd.a 74BFD_SRC = $(srcdir)/$(BFD_DIR) 75BFD_CFLAGS = -I$(BFD_DIR) -I$(BFD_SRC) 76 77# Where is the source dir for the READLINE library? Traditionally in .. or . 78# (For the binary library built from it, we use ${READLINE_DIR}${subdir}.) 79READLINE_DIR = ${srcdir}/../readline 80READLINE_DEP = $$(READLINE_DIR) 81 82# All the includes used for CFLAGS and for lint. 83# -I. for config files. 84# -I${srcdir} for our headers. 85# -I$(srcdir)/../regformats for regdef.h. 86INCLUDE_CFLAGS = -I. -I${srcdir} -I$(srcdir)/../regformats -I$(INCLUDE_DIR) 87 88# M{H,T}_CFLAGS, if defined, has host- and target-dependent CFLAGS 89# from the config/ directory. 90GLOBAL_CFLAGS = ${MT_CFLAGS} ${MH_CFLAGS} 91#PROFILE_CFLAGS = -pg 92 93WARN_CFLAGS = -Wall 94 95# CFLAGS is specifically reserved for setting from the command line 96# when running make. I.E. "make CFLAGS=-Wmissing-prototypes". 97CFLAGS = @CFLAGS@ 98 99# INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros. 100INTERNAL_CFLAGS = $(WARN_CFLAGS) ${CFLAGS} ${GLOBAL_CFLAGS} \ 101 ${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${BFD_CFLAGS} 102 103# LDFLAGS is specifically reserved for setting from the command line 104# when running make. 105LDFLAGS = @LDFLAGS@ 106INTERNAL_LDFLAGS = $(LDFLAGS) @RDYNAMIC@ 107 108# Perhaps should come from parent Makefile 109VERSION = gdbserver-4.12.3 110DIST=gdb 111 112LINT=/usr/5bin/lint 113LINTFLAGS= $(BFD_CFLAGS) 114 115# All source files that go into linking GDB remote server. 116 117SFILES= $(srcdir)/gdbreplay.c $(srcdir)/inferiors.c \ 118 $(srcdir)/mem-break.c $(srcdir)/proc-service.c $(srcdir)/regcache.c \ 119 $(srcdir)/remote-utils.c $(srcdir)/server.c $(srcdir)/target.c \ 120 $(srcdir)/thread-db.c $(srcdir)/utils.c \ 121 $(srcdir)/linux-arm-low.c $(srcdir)/linux-i386-low.c \ 122 $(srcdir)/i387-fp.c \ 123 $(srcdir)/linux-ia64-low.c $(srcdir)/linux-low.c \ 124 $(srcdir)/linux-m68k-low.c $(srcdir)/linux-mips-low.c \ 125 $(srcdir)/linux-ppc-low.c $(srcdir)/linux-s390-low.c \ 126 $(srcdir)/linux-sh-low.c $(srcdir)/linux-x86-64-low.c 127 128DEPFILES = @GDBSERVER_DEPFILES@ 129 130SOURCES = $(SFILES) 131TAGFILES = $(SOURCES) ${HFILES} ${ALLPARAM} ${POSSLIBS} 132 133OBS = inferiors.o regcache.o remote-utils.o server.o signals.o target.o \ 134 utils.o \ 135 mem-break.o \ 136 $(DEPFILES) 137GDBSERVER_LIBS = @GDBSERVER_LIBS@ 138 139# Prevent Sun make from putting in the machine type. Setting 140# TARGET_ARCH to nothing works for SunOS 3, 4.0, but not for 4.1. 141.c.o: 142 ${CC} -c ${INTERNAL_CFLAGS} $< 143 144all: gdbserver gdbreplay 145 146# Traditionally "install" depends on "all". But it may be useful 147# not to; for example, if the user has made some trivial change to a 148# source file and doesn't care about rebuilding or just wants to save the 149# time it takes for make to check that all is up to date. 150# install-only is intended to address that need. 151install: all install-only 152install-only: 153 n=`echo gdbserver | sed '$(program_transform_name)'`; \ 154 if [ x$$n = x ]; then n=gdbserver; else true; fi; \ 155 $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(bindir); \ 156 $(INSTALL_PROGRAM) gdbserver $(DESTDIR)$(bindir)/$$n; \ 157 $(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(man1dir); \ 158 $(INSTALL_DATA) $(srcdir)/gdbserver.1 $(DESTDIR)$(man1dir)/$$n.1 159 160uninstall: force 161 n=`echo gdbserver | sed '$(program_transform_name)'`; \ 162 if [ x$$n = x ]; then n=gdbserver; else true; fi; \ 163 rm -f $(bindir)/$$n $(DESTDIR)$(man1dir)/$$n.1 164 165installcheck: 166check: 167info dvi: 168install-info: 169html: 170install-html: 171clean-info: 172 173gdbserver: $(OBS) ${ADD_DEPS} ${CDEPS} 174 rm -f gdbserver 175 ${CC-LD} $(GLOBAL_CFLAGS) $(INTERNAL_LDFLAGS) -o gdbserver $(OBS) \ 176 $(GDBSERVER_LIBS) $(XM_CLIBS) 177 178gdbreplay: gdbreplay.o 179 rm -f gdbreplay 180 ${CC-LD} $(GLOBAL_CFLAGS) $(INTERNAL_LDFLAGS) -o gdbreplay gdbreplay.o \ 181 $(XM_CLIBS) 182 183# Put the proper machine-specific files first, so M-. on a machine 184# specific routine gets the one for the correct machine. 185# The xyzzy stuff below deals with empty DEPFILES 186TAGS: ${TAGFILES} 187 etags `find ${srcdir}/../config -name $(DEPRECATED_TM_FILE) -print` \ 188 `find ${srcdir}/../config -name ${XM_FILE} -print` \ 189 `find ${srcdir}/../config -name ${NAT_FILE} -print` \ 190 `for i in yzzy ${DEPFILES}; do \ 191 if [ x$$i != xyzzy ]; then \ 192 echo ${srcdir}/$$i | sed -e 's/\.o$$/\.c/' ; \ 193 fi; \ 194 done` \ 195 ${TAGFILES} 196tags: TAGS 197 198clean: 199 rm -f *.o ${ADD_FILES} *~ 200 rm -f gdbserver gdbreplay core make.log 201 rm -f reg-arm.c reg-i386.c reg-ia64.c reg-m68k.c reg-mips.c 202 rm -f reg-ppc.c reg-sh.c reg-x86-64.c reg-i386-linux.c 203 204maintainer-clean realclean distclean: clean 205 rm -f nm.h tm.h xm.h config.status config.h stamp-h config.log 206 rm -f Makefile 207 208STAGESTUFF=${OBS} ${TSOBS} ${NTSOBS} ${ADD_FILES} init.c init.o version.c gdb 209 210config.h: stamp-h ; @true 211stamp-h: config.in config.status 212 CONFIG_FILES="" $(SHELL) ./config.status 213 214Makefile: Makefile.in config.status 215 CONFIG_HEADERS="" $(SHELL) ./config.status 216 217config.status: configure configure.srv 218 $(SHELL) ./config.status --recheck 219 220force: 221 222version.c: Makefile 223 echo 'char *version = "$(VERSION)";' >version.c 224 225# GNU Make has an annoying habit of putting *all* the Makefile variables 226# into the environment, unless you include this target as a circumvention. 227# Rumor is that this will be fixed (and this target can be removed) 228# in GNU Make 4.0. 229.NOEXPORT: 230 231# GNU Make 3.63 has a different problem: it keeps tacking command line 232# overrides onto the definition of $(MAKE). This variable setting 233# will remove them. 234MAKEOVERRIDES= 235 236gdb_proc_service_h = $(srcdir)/../gdb_proc_service.h $(srcdir)/../gregset.h 237regdat_sh = $(srcdir)/../regformats/regdat.sh 238regdef_h = $(srcdir)/../regformats/regdef.h 239regcache_h = $(srcdir)/regcache.h 240server_h = $(srcdir)/server.h $(regcache_h) config.h $(srcdir)/target.h \ 241 $(srcdir)/mem-break.h 242 243inferiors.o: inferiors.c $(server_h) 244mem-break.o: mem-break.c $(server_h) 245proc-service.o: proc-service.c $(server_h) $(gdb_proc_service_h) 246regcache.o: regcache.c $(server_h) $(regdef_h) 247remote-utils.o: remote-utils.c terminal.h $(server_h) 248server.o: server.c $(server_h) 249target.o: target.c $(server_h) 250thread-db.o: thread-db.c $(server_h) $(gdb_proc_service_h) 251utils.o: utils.c $(server_h) 252 253signals.o: ../signals/signals.c $(server_h) 254 $(CC) -c $(CPPFLAGS) $(INTERNAL_CFLAGS) $< -DGDBSERVER 255 256i387-fp.o: i387-fp.c $(server_h) 257 258linux_low_h = $(srcdir)/linux-low.h 259 260linux-low.o: linux-low.c $(linux_low_h) $(server_h) 261 $(CC) -c $(CPPFLAGS) $(INTERNAL_CFLAGS) $< @USE_THREAD_DB@ 262 263linux-arm-low.o: linux-arm-low.c $(linux_low_h) $(server_h) 264linux-i386-low.o: linux-i386-low.c $(linux_low_h) $(server_h) 265linux-ia64-low.o: linux-ia64-low.c $(linux_low_h) $(server_h) 266linux-mips-low.o: linux-mips-low.c $(linux_low_h) $(server_h) 267linux-ppc-low.o: linux-ppc-low.c $(linux_low_h) $(server_h) 268linux-s390-low.o: linux-s390-low.c $(linux_low_h) $(server_h) 269linux-sh-low.o: linux-sh-low.c $(linux_low_h) $(server_h) 270linux-x86-64-low.o: linux-x86-64-low.c $(linux_low_h) $(server_h) 271 272reg-arm.o : reg-arm.c $(regdef_h) 273reg-arm.c : $(srcdir)/../regformats/reg-arm.dat $(regdat_sh) 274 sh $(regdat_sh) $(srcdir)/../regformats/reg-arm.dat reg-arm.c 275reg-i386.o : reg-i386.c $(regdef_h) 276reg-i386.c : $(srcdir)/../regformats/reg-i386.dat $(regdat_sh) 277 sh $(regdat_sh) $(srcdir)/../regformats/reg-i386.dat reg-i386.c 278reg-i386-linux.o : reg-i386-linux.c $(regdef_h) 279reg-i386-linux.c : $(srcdir)/../regformats/reg-i386-linux.dat $(regdat_sh) 280 sh $(regdat_sh) $(srcdir)/../regformats/reg-i386-linux.dat reg-i386-linux.c 281reg-ia64.o : reg-ia64.c $(regdef_h) 282reg-ia64.c : $(srcdir)/../regformats/reg-ia64.dat $(regdat_sh) 283 sh $(regdat_sh) $(srcdir)/../regformats/reg-ia64.dat reg-ia64.c 284reg-m68k.o : reg-m68k.c $(regdef_h) 285reg-m68k.c : $(srcdir)/../regformats/reg-m68k.dat $(regdat_sh) 286 sh $(regdat_sh) $(srcdir)/../regformats/reg-m68k.dat reg-m68k.c 287reg-mips.o : reg-mips.c $(regdef_h) 288reg-mips.c : $(srcdir)/../regformats/reg-mips.dat $(regdat_sh) 289 sh $(regdat_sh) $(srcdir)/../regformats/reg-mips.dat reg-mips.c 290reg-ppc.o : reg-ppc.c $(regdef_h) 291reg-ppc.c : $(srcdir)/../regformats/reg-ppc.dat $(regdat_sh) 292 sh $(regdat_sh) $(srcdir)/../regformats/reg-ppc.dat reg-ppc.c 293reg-s390.o : reg-s390.c $(regdef_h) 294reg-s390.c : $(srcdir)/../regformats/reg-s390.dat $(regdat_sh) 295 sh $(regdat_sh) $(srcdir)/../regformats/reg-s390.dat reg-s390.c 296reg-s390x.o : reg-s390x.c $(regdef_h) 297reg-s390x.c : $(srcdir)/../regformats/reg-s390x.dat $(regdat_sh) 298 sh $(regdat_sh) $(srcdir)/../regformats/reg-s390x.dat reg-s390x.c 299reg-sh.o : reg-sh.c $(regdef_h) 300reg-sh.c : $(srcdir)/../regformats/reg-sh.dat $(regdat_sh) 301 sh $(regdat_sh) $(srcdir)/../regformats/reg-sh.dat reg-sh.c 302reg-x86-64.o : reg-x86-64.c $(regdef_h) 303reg-x86-64.c : $(srcdir)/../regformats/reg-x86-64.dat $(regdat_sh) 304 sh $(regdat_sh) $(srcdir)/../regformats/reg-x86-64.dat reg-x86-64.c 305 306# This is the end of "Makefile.in". 307