📄 makefile
字号:
# complete flags#CFLAGS = $(MFLAGS) $(FFLAGS) $(OFLAGS) $(BINUTILS_INC) $(BINUTILS_LIB)## all the sources#SRCS = main.c sim-fast.c sim-safe.c sim-cache.c sim-profile.c \ sim-eio.c sim-bpred.c sim-cheetah.c sim-outorder.c \ memory.c regs.c cache.c bpred.c ptrace.c eventq.c \ resource.c endian.c dlite.c symbol.c eval.c options.c range.c \ eio.c stats.c endian.c misc.c \ target-pisa/pisa.c target-pisa/loader.c target-pisa/syscall.c \ target-pisa/symbol.c \ target-alpha/alpha.c target-alpha/loader.c target-alpha/syscall.c \ target-alpha/symbol.cHDRS = syscall.h memory.h regs.h sim.h loader.h cache.h bpred.h ptrace.h \ eventq.h resource.h endian.h dlite.h symbol.h eval.h bitmap.h \ eio.h range.h version.h endian.h misc.h \ target-pisa/pisa.h target-pisa/pisabig.h target-pisa/pisalittle.h \ target-pisa/pisa.def target-pisa/ecoff.h \ target-alpha/alpha.h target-alpha/alpha.def target-alpha/ecoff.h## common objects#OBJS = main.$(OEXT) syscall.$(OEXT) memory.$(OEXT) regs.$(OEXT) \ loader.$(OEXT) endian.$(OEXT) dlite.$(OEXT) symbol.$(OEXT) \ eval.$(OEXT) options.$(OEXT) stats.$(OEXT) eio.$(OEXT) \ range.$(OEXT) misc.$(OEXT) machine.$(OEXT)## programs to build#PROGS = sim-fast$(EEXT) sim-safe$(EEXT) sim-eio$(EEXT) \ sim-bpred$(EEXT) sim-profile$(EEXT) \ sim-cache$(EEXT) sim-outorder$(EEXT) # sim-cheetah$(EEXT)## all targets, NOTE: library ordering is important...#all: $(PROGS) @echo "my work is done here..."config-pisa: -$(RM) config.h machine.h machine.c machine.def loader.c symbol.c syscall.c $(LN) target-pisa$(X)config.h config.h $(LN) target-pisa$(X)pisa.h machine.h $(LN) target-pisa$(X)pisa.c machine.c $(LN) target-pisa$(X)pisa.def machine.def $(LN) target-pisa$(X)loader.c loader.c $(LN) target-pisa$(X)symbol.c symbol.c $(LN) target-pisa$(X)syscall.c syscall.c -$(RMDIR) tests $(LNDIR) tests-pisa testsconfig-pisabig: -$(RM) config.h machine.h machine.c machine.def loader.c symbol.c syscall.c $(LN) target-pisa$(X)configbig.h config.h $(LN) target-pisa$(X)pisa.h machine.h $(LN) target-pisa$(X)pisa.c machine.c $(LN) target-pisa$(X)pisa.def machine.def $(LN) target-pisa$(X)loader.c loader.c $(LN) target-pisa$(X)symbol.c symbol.c $(LN) target-pisa$(X)syscall.c syscall.c -$(RMDIR) tests $(LNDIR) tests-pisa testsconfig-pisalit: -$(RM) config.h machine.h machine.c machine.def loader.c symbol.c syscall.c $(LN) target-pisa$(X)configlit.h config.h $(LN) target-pisa$(X)pisa.h machine.h $(LN) target-pisa$(X)pisa.c machine.c $(LN) target-pisa$(X)pisa.def machine.def $(LN) target-pisa$(X)loader.c loader.c $(LN) target-pisa$(X)symbol.c symbol.c $(LN) target-pisa$(X)syscall.c syscall.c -$(RMDIR) tests $(LNDIR) tests-pisa testsconfig-alpha: -$(RM) config.h machine.h machine.c machine.def loader.c symbol.c syscall.c $(LN) target-alpha$(X)config.h config.h $(LN) target-alpha$(X)alpha.h machine.h $(LN) target-alpha$(X)alpha.c machine.c $(LN) target-alpha$(X)alpha.def machine.def $(LN) target-alpha$(X)loader.c loader.c $(LN) target-alpha$(X)symbol.c symbol.c $(LN) target-alpha$(X)syscall.c syscall.c -$(RMDIR) tests $(LNDIR) tests-alpha testssysprobe$(EEXT): sysprobe.c $(CC) $(FFLAGS) -o sysprobe$(EEXT) sysprobe.c @echo endian probe results: $(ENDIAN) @echo probe flags: $(MFLAGS) @echo probe libs: $(MLIBS)sim-fast$(EEXT): sysprobe$(EEXT) sim-fast.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(CC) -o sim-fast$(EEXT) $(CFLAGS) sim-fast.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(MLIBS)sim-safe$(EEXT): sysprobe$(EEXT) sim-safe.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(CC) -o sim-safe$(EEXT) $(CFLAGS) sim-safe.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(MLIBS)sim-profile$(EEXT): sysprobe$(EEXT) sim-profile.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(CC) -o sim-profile$(EEXT) $(CFLAGS) sim-profile.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(MLIBS)sim-eio$(EEXT): sysprobe$(EEXT) sim-eio.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(CC) -o sim-eio$(EEXT) $(CFLAGS) sim-eio.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(MLIBS)sim-bpred$(EEXT): sysprobe$(EEXT) sim-bpred.$(OEXT) bpred.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(CC) -o sim-bpred$(EEXT) $(CFLAGS) sim-bpred.$(OEXT) bpred.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(MLIBS)sim-cheetah$(EEXT): sysprobe$(EEXT) sim-cheetah.$(OEXT) $(OBJS) libcheetah/libcheetah.$(LEXT) libexo/libexo.$(LEXT) $(CC) -o sim-cheetah$(EEXT) $(CFLAGS) sim-cheetah.$(OEXT) $(OBJS) libcheetah/libcheetah.$(LEXT) libexo/libexo.$(LEXT) $(MLIBS)sim-cache$(EEXT): sysprobe$(EEXT) sim-cache.$(OEXT) cache.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(CC) -o sim-cache$(EEXT) $(CFLAGS) sim-cache.$(OEXT) cache.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(MLIBS)sim-outorder$(EEXT): sysprobe$(EEXT) sim-outorder.$(OEXT) cache.$(OEXT) bpred.$(OEXT) resource.$(OEXT) ptrace.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(CC) -o sim-outorder$(EEXT) $(CFLAGS) sim-outorder.$(OEXT) cache.$(OEXT) bpred.$(OEXT) resource.$(OEXT) ptrace.$(OEXT) $(OBJS) libexo/libexo.$(LEXT) $(MLIBS)exo libexo/libexo.$(LEXT): sysprobe$(EEXT) cd libexo $(CS) \ $(MAKE) "MAKE=$(MAKE)" "CC=$(CC)" "AR=$(AR)" "AROPT=$(AROPT)" "RANLIB=$(RANLIB)" "CFLAGS=$(MFLAGS) $(FFLAGS) $(OFLAGS)" "OEXT=$(OEXT)" "LEXT=$(LEXT)" "EEXT=$(EEXT)" "X=$(X)" "RM=$(RM)" libexo.$(LEXT)cheetah libcheetah/libcheetah.$(LEXT): sysprobe$(EEXT) cd libcheetah $(CS) \ $(MAKE) "MAKE=$(MAKE)" "CC=$(CC)" "AR=$(AR)" "AROPT=$(AROPT)" "RANLIB=$(RANLIB)" "CFLAGS=$(MFLAGS) $(FFLAGS) $(OFLAGS)" "OEXT=$(OEXT)" "LEXT=$(LEXT)" "EEXT=$(EEXT)" "X=$(X)" "RM=$(RM)" libcheetah.$(LEXT).c.$(OEXT): $(CC) $(CFLAGS) -c $*.cfilelist: @echo $(SRCS) $(HDRS) Makefilediffs: -rcsdiff RCS/* -cd config; rcsdiff RCS/* -cd libcheetah; rcsdiff RCS/* -cd libexo; rcsdiff RCS/* -cd target-alpha; rcsdiff RCS/* -cd target-pisa; rcsdiff RCS/*sim-tests sim-tests-nt: sysprobe$(EEXT) $(PROGS) cd tests $(CS) \ $(MAKE) "MAKE=$(MAKE)" "RM=$(RM)" "ENDIAN=$(ENDIAN)" tests \ "DIFF=$(DIFF)" "SIM_DIR=.." "SIM_BIN=sim-fast$(EEXT)" \ "X=$(X)" "CS=$(CS)" $(CS) \ cd .. cd tests $(CS) \ $(MAKE) "MAKE=$(MAKE)" "RM=$(RM)" "ENDIAN=$(ENDIAN)" tests \ "DIFF=$(DIFF)" "SIM_DIR=.." "SIM_BIN=sim-safe$(EEXT)" \ "X=$(X)" "CS=$(CS)" $(CS) \ cd .. cd tests $(CS) \ $(MAKE) "MAKE=$(MAKE)" "RM=$(RM)" "ENDIAN=$(ENDIAN)" tests \ "DIFF=$(DIFF)" "SIM_DIR=.." "SIM_BIN=sim-cache$(EEXT)" \ "X=$(X)" "CS=$(CS)" $(CS) \ cd .. #cd tests $(CS) \ #$(MAKE) "MAKE=$(MAKE)" "RM=$(RM)" "ENDIAN=$(ENDIAN)" tests \ # "DIFF=$(DIFF)" "SIM_DIR=.." "SIM_BIN=sim-cheetah$(EEXT)" \ # "X=$(X)" "CS=$(CS)" $(CS) \ #cd .. cd tests $(CS) \ $(MAKE) "MAKE=$(MAKE)" "RM=$(RM)" "ENDIAN=$(ENDIAN)" tests \ "DIFF=$(DIFF)" "SIM_DIR=.." "SIM_BIN=sim-bpred$(EEXT)" \ "X=$(X)" "CS=$(CS)" $(CS) \ cd .. cd tests $(CS) \ $(MAKE) "MAKE=$(MAKE)" "RM=$(RM)" "ENDIAN=$(ENDIAN)" tests \ "DIFF=$(DIFF)" "SIM_DIR=.." "SIM_BIN=sim-profile$(EEXT)" \ "X=$(X)" "CS=$(CS)" "SIM_OPTS=-all" $(CS) \ cd .. cd tests $(CS) \ $(MAKE) "MAKE=$(MAKE)" "RM=$(RM)" "ENDIAN=$(ENDIAN)" tests \ "DIFF=$(DIFF)" "SIM_DIR=.." "SIM_BIN=sim-outorder$(EEXT)" \ "X=$(X)" "CS=$(CS)" $(CS) \ cd ..clean: -$(RM) *.o *.obj *.exe core *~ MAKE.log Makefile.bak sysprobe$(EEXT) $(PROGS) #cd libcheetah $(CS) $(MAKE) "RM=$(RM)" "CS=$(CS)" clean $(CS) cd .. cd libexo $(CS) $(MAKE) "RM=$(RM)" "CS=$(CS)" clean $(CS) cd .. cd tests-alpha $(CS) $(MAKE) "RM=$(RM)" "CS=$(CS)" clean $(CS) cd .. cd tests-pisa $(CS) $(MAKE) "RM=$(RM)" "CS=$(CS)" clean $(CS) cd ..unpure: rm -f sim.pure *pure*.o sim.pure.pure_hardlink sim.pure.pure_linkinfodepend: makedepend.local -n -x $(BINUTILS_INC) $(SRCS)# DO NOT DELETE THIS LINE -- make depend depends on it.main.$(OEXT): host.h misc.h machine.h machine.def endian.h version.h dlite.hmain.$(OEXT): regs.h memory.h options.h stats.h eval.h loader.h sim.hsim-fast.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-fast.$(OEXT): options.h stats.h eval.h loader.h syscall.h dlite.h sim.hsim-safe.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-safe.$(OEXT): options.h stats.h eval.h loader.h syscall.h dlite.h sim.hsim-cache.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-cache.$(OEXT): options.h stats.h eval.h cache.h loader.h syscall.hsim-cache.$(OEXT): dlite.h sim.hsim-profile.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-profile.$(OEXT): options.h stats.h eval.h loader.h syscall.h dlite.hsim-profile.$(OEXT): symbol.h sim.hsim-eio.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-eio.$(OEXT): options.h stats.h eval.h loader.h syscall.h dlite.h eio.hsim-eio.$(OEXT): range.h sim.hsim-bpred.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-bpred.$(OEXT): options.h stats.h eval.h loader.h syscall.h dlite.hsim-bpred.$(OEXT): bpred.h sim.hsim-cheetah.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-cheetah.$(OEXT): options.h stats.h eval.h loader.h syscall.h dlite.hsim-cheetah.$(OEXT): libcheetah/libcheetah.h sim.hsim-outorder.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsim-outorder.$(OEXT): options.h stats.h eval.h cache.h loader.h syscall.hsim-outorder.$(OEXT): bpred.h resource.h bitmap.h ptrace.h range.h dlite.hsim-outorder.$(OEXT): sim.hmemory.$(OEXT): host.h misc.h machine.h machine.def options.h stats.h eval.hmemory.$(OEXT): memory.hregs.$(OEXT): host.h misc.h machine.h machine.def loader.h regs.h memory.hregs.$(OEXT): options.h stats.h eval.hcache.$(OEXT): host.h misc.h machine.h machine.def cache.h memory.h options.hcache.$(OEXT): stats.h eval.hbpred.$(OEXT): host.h misc.h machine.h machine.def bpred.h stats.h eval.hptrace.$(OEXT): host.h misc.h machine.h machine.def range.h ptrace.heventq.$(OEXT): host.h misc.h machine.h machine.def eventq.h bitmap.hresource.$(OEXT): host.h misc.h resource.hendian.$(OEXT): endian.h loader.h host.h misc.h machine.h machine.def regs.hendian.$(OEXT): memory.h options.h stats.h eval.hdlite.$(OEXT): host.h misc.h machine.h machine.def version.h eval.h regs.hdlite.$(OEXT): memory.h options.h stats.h sim.h symbol.h loader.h range.hdlite.$(OEXT): dlite.hsymbol.$(OEXT): host.h misc.h target-pisa/ecoff.h loader.h machine.hsymbol.$(OEXT): machine.def regs.h memory.h options.h stats.h eval.h symbol.heval.$(OEXT): host.h misc.h eval.h machine.h machine.defoptions.$(OEXT): host.h misc.h options.hrange.$(OEXT): host.h misc.h machine.h machine.def symbol.h loader.h regs.hrange.$(OEXT): memory.h options.h stats.h eval.h range.heio.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.h options.heio.$(OEXT): stats.h eval.h loader.h libexo/libexo.h host.h misc.h machine.heio.$(OEXT): syscall.h sim.h endian.h eio.hstats.$(OEXT): host.h misc.h machine.h machine.def eval.h stats.hendian.$(OEXT): endian.h loader.h host.h misc.h machine.h machine.def regs.hendian.$(OEXT): memory.h options.h stats.h eval.hmisc.$(OEXT): host.h misc.h machine.h machine.defpisa.$(OEXT): host.h misc.h machine.h machine.def eval.h regs.hloader.$(OEXT): host.h misc.h machine.h machine.def endian.h regs.h memory.hloader.$(OEXT): options.h stats.h eval.h sim.h eio.h loader.hloader.$(OEXT): target-pisa/ecoff.hsyscall.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsyscall.$(OEXT): options.h stats.h eval.h loader.h sim.h endian.h eio.hsyscall.$(OEXT): syscall.hsymbol.$(OEXT): host.h misc.h target-pisa/ecoff.h loader.h machine.hsymbol.$(OEXT): machine.def regs.h memory.h options.h stats.h eval.h symbol.halpha.$(OEXT): host.h misc.h machine.h machine.def eval.h regs.hloader.$(OEXT): host.h misc.h machine.h machine.def endian.h regs.h memory.hloader.$(OEXT): options.h stats.h eval.h sim.h eio.h loader.hloader.$(OEXT): target-alpha/ecoff.h target-alpha/alpha.hsyscall.$(OEXT): host.h misc.h machine.h machine.def regs.h memory.hsyscall.$(OEXT): options.h stats.h eval.h loader.h sim.h endian.h eio.hsyscall.$(OEXT): syscall.hsymbol.$(OEXT): host.h misc.h loader.h machine.h machine.def regs.h memory.hsymbol.$(OEXT): options.h stats.h eval.h symbol.h target-alpha/ecoff.hsymbol.$(OEXT): target-alpha/alpha.h
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -