📄 makefile.in
字号:
#Copyright 1989, 1990, 1991, 1992 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 2 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, write to the Free Software# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.prefix = /usr/localprogram_transform_name =exec_prefix = $(prefix)bindir = /usr/binlibdir = $(exec_prefix)/libtooldir = $(libdir)/$(target_alias)datadir = $(prefix)/libmandir = $(prefix)/manman1dir = $(mandir)/man1man2dir = $(mandir)/man2man3dir = $(mandir)/man3man4dir = $(mandir)/man4man5dir = $(mandir)/man5man6dir = $(mandir)/man6man7dir = $(mandir)/man7man8dir = $(mandir)/man8man9dir = $(mandir)/man9infodir = $(prefix)/infoincludedir = $(prefix)/includedocdir = $(datadir)/docSHELL = /bin/shxbindir = /usr/bin/X11xlibdir = /usr/lib/X11INSTALL = install -cINSTALL_PROGRAM = $(INSTALL)INSTALL_DATA = $(INSTALL)AR = arAR_FLAGS = qvRANLIB = ranlib# Flags that describe where you can find the termcap library.# This can be overridden in the host Makefile fragment file.TERMCAP = -ltermcap# System V: If you compile gdb with a compiler which uses the coff# encapsulation feature (this is a function of the compiler used, NOT# of the m-?.h file selected by config.gdb), you must make sure that# the GNU nm is the one that is used by munch.# If you are compiling with GCC, make sure that either 1) You use the# -traditional flag, or 2) You have the fixed include files where GCC# can reach them. Otherwise the ioctl calls in inflow.c# will be incorrectly compiled. The "fixincludes" script in the gcc# distribution will fix your include files up.#CC=cc#CC=gcc -traditionalCC=gcc -O2GCC=gcc# Directory containing source files. Don't clean up the spacing,# this exact string is matched for by the "configure" script.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).BISON=yaccYACC=$(BISON)# Documentation (gdb.dvi) needs either GNU m4 or SysV m4; # Berkeley/Sun don't have quite enough. #M4=/usr/5bin/m4M4=gm4# where to find texinfo; GDB dist should include a recent oneTEXIDIR=${srcdir}/../texinfo/fsf# where to find makeinfo, preferably one designed for texinfo-2MAKEINFO=makeinfo# Set this up with gcc if you have gnu ld and the loader will print out# line numbers for undefinded refs.#CC-LD=gcc -staticCC-LD=${CC}# Where is the "include" directory? Traditionally ../include or ./includeINCLUDE_DIR = ${srcdir}/../includeINCLUDE_DEP = $$(INCLUDE_DIR)# Where is the source dir for the MMALLOC library? Traditionally ../mmalloc# or ./mmalloc (When we want the binary library built from it, we use# ${MMALLOC_DIR}${subdir}.)# Note that mmalloc can still be used on systems without mmap().# To use your system malloc, comment out the following defines.MMALLOC_DIR = ${srcdir}/../mmallocMMALLOC_DEP = $$(MMALLOC_DIR)MMALLOC_LIB = ./../mmalloc${subdir}/libmmalloc.a# To use your system malloc, uncomment MMALLOC_DISABLE.#MMALLOC_DISABLE = -DNO_MMALLOC# To use mmalloc but disable corruption checking, uncomment MMALLOC_CHECK#MMALLOC_CHECK = -DNO_MMALLOC_CHECKMMALLOC_CFLAGS = ${MMALLOC_CHECK} ${MMALLOC_DISABLE}# Where is the source dir for the BFD library? Traditionally ../bfd or ./bfd# (When we want the binary library built from it, we use ${BFD_DIR}${subdir}.)BFD_DIR = ${srcdir}/../bfdBFD_DEP = $$(BFD_DIR)BFD_LIB = ./../bfd${subdir}/libbfd.a# Where is the source dir for the READLINE library? Traditionally in .. or .# (For the binary library built from it, we use ${READLINE_DIR}${subdir}.)READLINE_DIR = ${srcdir}/../readlineREADLINE_DEP = $$(READLINE_DIR)RL_LIB = ./../readline${subdir}/libreadline.a# All the includes used for CFLAGS and for lint.# -I. for config files.# -I${srcdir} possibly for regex.h also.INCLUDE_CFLAGS = -I. -I${srcdir} -I$(INCLUDE_DIR)# 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# CFLAGS is specifically reserved for setting from the command line# when running make. I.E. "make USER_CFLAGS=-Wmissing-prototypes".CFLAGS = -g# INTERNAL_CFLAGS is the aggregate of all other *CFLAGS macros.INTERNAL_CFLAGS = ${CFLAGS} ${GLOBAL_CFLAGS} ${PROFILE_CFLAGS} ${MMALLOC_CFLAGS} ${INCLUDE_CFLAGS} ${USER_CFLAGS}# None of the things in CFLAGS will do any harm, and on some systems# (e.g. SunOS4) it is important to use the MH_CFLAGS.LDFLAGS = $(CFLAGS)# Where is the "-liberty" library, containing getopt and obstack?LIBIBERTY_DIR = ${srcdir}/../libibertyLIBIBERTY = ./../libiberty${subdir}/libiberty.a# Where is the "-lopcodes" library, with (some of) the opcode tables and# disassemblers?OPCODES = ./../opcodes${subdir}/libopcodes.a# The config/mh-* file must define REGEX and REGEX1 on USG machines.# If your sysyem is missing alloca(), or, more likely, it's there but# it doesn't work, define ALLOCA & ALLOCA1 too.# Libraries and corresponding dependencies for compiling gdb.# {X,T}M_CLIBS, defined in *config files, have host- and target-dependent libs.# TERMCAP comes after readline, since readline depends on it.CLIBS = ${BFD_LIB} ${RL_LIB} ${TERMCAP} ${OPCODES} ${MMALLOC_LIB} ${LIBIBERTY} \ ${XM_CLIBS} ${TM_CLIBS} ${NAT_CLIBS}CDEPS = ${XM_CDEPS} ${TM_CDEPS} ${NAT_CDEPS} \ ${BFD_LIB} ${RL_LIB} ${OPCODES} ${MMALLOC_LIB} ${LIBIBERTY}ADD_FILES = ${REGEX} ${ALLOCA} ${XM_ADD_FILES} ${TM_ADD_FILES} ${NAT_ADD_FILES}ADD_DEPS = ${REGEX1} ${ALLOCA1} ${XM_ADD_FILES} ${TM_ADD_FILES} ${NAT_ADD_FILES}VERSION = 4.7DIST=gdbLINT=/usr/5bin/lintLINTFLAGS= -I${BFD_DIR}# Host and target-dependent makefile fragments come in here.##### End of host and target-dependent makefile fragmentsLBL_SRC = kcore.c remote-sl.c remote-fp.c kernel.c cmdparse.cLBL_OBJ = $(LBL_SRC:.c=.o)#SYMREADERS = dbxread.c coffread.c elfread.c dwarfread.c \# xcoffread.c stabsread.c mipsread.cSYMREADERS = dbxread.c stabsread.cSYMREADOBJ = $(SYMREADERS:.c=.o)FLAGS_TO_PASS = \ "against=$(against)" \ "AR=$(AR)" \ "AR_FLAGS=$(AR_FLAGS)" \ "CC=$(CC)" \ "CFLAGS=$(CFLAGS) $(MT_CFLAGS)" \ "RANLIB=$(RANLIB)" \ "MAKEINFO=$(MAKEINFO)" \ "INSTALL=$(INSTALL)" \ "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ "INSTALL_DATA=$(INSTALL_DATA)" \ "BISON=$(BISON)"# Source files in the main directory.# Files which are included via a config/* Makefile fragment# should *not* be specified here; they're in "ALLDEPFILES".SFILES_MAINDIR = \ blockframe.c breakpoint.c command.c core.c demangle.c \ environ.c eval.c expprint.c findvar.c infcmd.c inflow.c infrun.c \ main.c printcmd.c gdbtypes.c \ remote.c source.c stack.c symmisc.c symtab.c symfile.c \ utils.c valarith.c valops.c valprint.c values.c c-exp.y m2-exp.y \ mem-break.c target.c \ $(SYMREADERS) \ ieee-float.c language.c parse.c buildsym.c objfiles.c \ minsyms.c maint.c \ $(LBL_SRC) xgdb.c# Source files in subdirectories (which will be handled separately by# 'make gdb.tar.Z').# Files which are included via a config/* Makefile fragment# should *not* be specified here; they're in "ALLDEPFILES".SFILES_SUBDIR = \ ${srcdir}/vx-share/dbgRpcLib.h \ ${srcdir}/vx-share/ptrace.h \ ${srcdir}/vx-share/reg.h \ ${srcdir}/vx-share/vxTypes.h \ ${srcdir}/vx-share/vxWorks.h \ ${srcdir}/vx-share/wait.h \ ${srcdir}/vx-share/xdr_ld.h \ ${srcdir}/vx-share/xdr_ptrace.h \ ${srcdir}/vx-share/xdr_rdb.h \ ${srcdir}/vx-share/xdr_regs.h \ ${srcdir}/nindy-share/b.out.h \ ${srcdir}/nindy-share/block_io.h \ ${srcdir}/nindy-share/coff.h \ ${srcdir}/nindy-share/demux.h \ ${srcdir}/nindy-share/env.h \ ${srcdir}/nindy-share/stop.h \ ${srcdir}/nindy-share/ttycntl.h# Non-source files in subdirs, that should go into gdb.tar.Z.NONSRC_SUBDIR = \ ${srcdir}/nindy-share/Makefile \ ${srcdir}/nindy-share/VERSION \ ${srcdir}/nindy-share/README \ ${srcdir}/vx-share/README# All source files that go into linking GDB, except config-specified files.SFILES = $(SFILES_MAINDIR) $(SFILES_SUBDIR)# All source files that lint should look atLINTFILES = $(SFILES) $(YYFILES) init.c# Any additional files specified on these lines should also be added to# the OTHERS = definition below, so they go in the tar files.SFILES_STAND = $(SFILES) standalone.cSFILES_KGDB = $(SFILES) stuff.c kdb-start.c# Header files that are not named in config/* Makefile fragments go here.HFILES= breakpoint.h buildsym.h call-cmds.h command.h defs.h \ environ.h expression.h frame.h gdbcmd.h gdbcore.h gdbtypes.h \ gdb-stabs.h ieee-float.h inferior.h language.h \ minimon.h objfiles.h parser-defs.h partial-stab.h \ serial.h signals.h solib.h symfile.h symtab.h stabsread.h \ target.h terminal.h xcoffsolib.h value.h \ tm-68k.h tm-hppa.h tm-i960.h tm-sparc.h tm-sunos.h tm-sysv4.h \ xm-m68k.h xm-sparc.h xm-sysv4.h xm-vax.h \ nm-i386bsd.h nm-i386mach.h nm-i386sco.h nm-i386v.h nm-i386v4.h nm-irix3.h \ nm-irix4.h nm-linux.h nm-m88k.h nm-mips.h nm-news.h nm-rs6000.h \ nm-sun2.h nm-sun3.h nm-sun386.h nm-sun4os4.h nm-trash.h \ nm-ultra3.h nm-hppab.h nm-hppah.h nm-umax.h nm-sysv4.hREMOTE_EXAMPLES = m68k-stub.c i386-stub.c sparc-stub.c rem-multi.sharPOSSLIBS_MAINDIR = regex.c regex.h alloca.cPOSSLIBS = $(POSSLIBS_MAINDIR)TESTS = testbpt.c testfun.c testrec.c testreg.c testregs.cOTHERS = Makefile.in depend alldeps.mak createtags munch configure.in \ ChangeLog ChangeLog-9091 ChangeLog-3.x gdb.1 refcard.ps \ README TODO TAGS NEWS Projects \ .gdbinit COPYING $(YYFILES) \ copying.c Convex.notes copying.awk \ saber.suppress standalone.c stuff.c kdb-start.c \ putenv.c gcc.patch XGDB-README# Subdirectories of gdb, which should be included in their entirety in# gdb-xxx.tar.Z:TARDIRS = doc # tests# GDB "info" files, which should be included in their entiretyINFOFILES = gdb.info*DEPFILES= ${TDEPFILES} ${XDEPFILES} ${NATDEPFILES}SOURCES=$(SFILES) $(ALLDEPFILES) $(YYFILES)TAGFILES = $(SOURCES) ${HFILES} ${ALLPARAM} ${POSSLIBS} TAGFILES_MAINDIR = $(SFILES_MAINDIR) $(ALLDEPFILES_MAINDIR) \ ${HFILES} ${ALLPARAM} ${POSSLIBS_MAINDIR} TARFILES = ${TAGFILES_MAINDIR} ${OTHERS} ${REMOTE_EXAMPLES}OBS = version.o main.o blockframe.o breakpoint.o findvar.o stack.o source.o \ values.o eval.o valops.o valarith.o valprint.o printcmd.o \ symtab.o symfile.o symmisc.o infcmd.o infrun.o remote.o \ command.o utils.o expprint.o environ.o gdbtypes.o \ copying.o $(DEPFILES) mem-break.o target.o \ ieee-float.o putenv.o parse.o language.o $(YYOBJ) \ buildsym.o objfiles.o minsyms.o maint.o demangle.o \ $(SYMREADOBJ) core.o \ $(LBL_OBJ)RAPP_OBS = rgdb.o rudp.o rserial.o serial.o udp.o $(XDEPFILES)TSOBS = inflow.oNTSOBS = standalone.oTSSTART = /lib/crt0.oNTSSTART = kdb-start.oSUBDIRS = doc# For now, shortcut the "configure GDB for fewer languages" stuff.YYFILES = c-exp.tab.c m2-exp.tab.cYYOBJ = c-exp.tab.o m2-exp.tab.o# Prevent Sun make from putting in the machine type. Setting# TARGET_ARCH to nothing works for SunOS 3, 4.0, but not for 4.1..c.o: ${CC} -c ${INTERNAL_CFLAGS} $<all: gdb $(MAKE) subdir_do DO=all "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS)check:info: force $(MAKE) subdir_do DO=info "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS)install-info: force $(MAKE) subdir_do DO=install-info "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS)clean-info: force $(MAKE) subdir_do DO=clean-info "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS)install.xgdb: xgdb rm -f $(xbindir)/xgdb install xgdb $(xbindir) install Xgdb.ad $(xlibdir)/app-defaults/Xgdbgdb.z:gdb.1 nroff -man $(srcdir)/gdb.1 | col -b > gdb.t pack gdb.t ; rm -f gdb.t mv gdb.t.z gdb.z install: gdb install -s gdb /usr/contrib/bininit.c: $(srcdir)/munch $(OBS) $(TSOBS) $(srcdir)/munch ${MUNCH_DEFINE} $(OBS) $(TSOBS) > init.cxinit.c: $(srcdir)/munch $(OBS) $(TSOBS) xgdb.o rm -f xinit.c ./munch ${MUNCH_DEFINE} $(OBS) $(TSOBS) xgdb.o > xinit.cxgdb: $(OBS) $(TSOBS) xgdb.o xinit.o ${ADD_DEPS} $(CC-LD) $(LDFLAGS) -o xgdb xinit.o xgdb.o \ $(OBS) $(TSOBS) $(ADD_FILES) $(CLIBS) $(LOADLIBES) \ -lXaw -lXmu -lXt -lXext -lX11 -lXwchar -lX11gdb: $(OBS) $(TSOBS) ${ADD_DEPS} ${CDEPS} init.o ${CC-LD} $(GLOBAL_CFLAGS) $(LDFLAGS) -o gdb \ init.o $(OBS) $(TSOBS) $(ADD_FILES) $(CLIBS) $(LOADLIBES)saber_gdb: $(SFILES) $(DEPFILES) copying.c version.c #setopt load_flags $(CFLAGS) -I$(BFD_DIR) -DHOST_SYS=SUN4_SYS #load ./init.c $(SFILES) #unload ${srcdir}/c-exp.y ${srcdir}/m2-exp.y ${srcdir}/vx-share/*.h #unload ${srcdir}/nindy-share/[A-Z]* #load c-exp.tab.c m2-exp.tab.c #load copying.c version.c #load ../opcodes/libopcodes.a #load ../libiberty/libiberty.a #load ../bfd/libbfd.a #load ../readline/libreadline.a #load ../mmalloc/libmmalloc.a #load -ltermcap #load `echo " "$(DEPFILES) | sed -e 's/\.o/.c/g' -e 's, , ../,g'` echo "Load .c corresponding to:" $(DEPFILES)# This is useful when debugging GDB, because some Unix's don't let you run GDB# on itself without copying the executable. So "make gdb1" will make# gdb and put a copy in gdb1, and you can run it with "gdb gdb1".# Removing gdb1 before the copy is the right thing if gdb1 is open
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -