📄 makefile
字号:
## Makefile - simulator suite make file## This file is a part of the SimpleScalar tool suite written by# Todd M. Austin as a part of the Multiscalar Research Project.# # The tool suite is currently maintained by Doug Burger and Todd M. Austin.# # Copyright (C) 1994, 1995, 1996, 1997 by Todd M. Austin## This source file is distributed "as is" in the hope that it will be# useful. It is distributed with no warranty, and no author or# distributor accepts any responsibility for the consequences of its# use. ## Everyone is granted permission to copy, modify and redistribute# this source file under the following conditions:## This tool set is distributed for non-commercial use only. # Please contact the maintainer for restrictions applying to # commercial use of these tools.## Permission is granted to anyone to make or distribute copies# of this source code, either as received or modified, in any# medium, provided that all copyright notices, permission and# nonwarranty notices are preserved, and that the distributor# grants the recipient permission for further redistribution as# permitted by this document.## Permission is granted to distribute this file in compiled# or executable form under the same conditions that apply for# source code, provided that either:## A. it is accompanied by the corresponding machine-readable# source code,# B. it is accompanied by a written offer, with no time limit,# to give anyone a machine-readable copy of the corresponding# source code in return for reimbursement of the cost of# distribution. This written offer must permit verbatim# duplication by anyone, or# C. it is distributed by someone who received only the# executable form, and is accompanied by a copy of the# written offer of source code that they received concurrently.## In other words, you are welcome to use, share and improve this# source file. You are forbidden to forbid anyone else to use, share# and improve what you give them.## INTERNET: dburger@cs.wisc.edu# US Mail: 1210 W. Dayton Street, Madison, WI 53706## $Id: Makefile,v 1.6 1997/04/16 22:08:40 taustin Exp taustin $## $Log: Makefile,v $# Revision 1.6 1997/04/16 22:08:40 taustin# added standalone loader support## Revision 1.5 1997/03/11 01:04:13 taustin# updated copyright# CC target now supported# RANLIB target now supported# MAKE target now supported# CFLAGS reorganized# MFLAGS and MLIBS to improve portability## Revision 1.1 1996/12/05 18:56:09 taustin# Initial revision## #################################################################### Modify the following definitions to suit your build environment,# NOTE: most platforms should not require any changes##################################################################### Insert your favorite C compiler, here. NOTE: the SimpleScalar simulators# must be compiled with an ANSI C compatible compiler.#CC = gcc## Insert the name of RANLIB tool here, most machines can simply use "ranlib"# machines that do not use RANLIB, should put "true" here#RANLIB = ranlib## Insert your favorite make tool, here. Most anything should work.#MAKE = make## Compilation-specific feature flags## -DDEBUG - turns on debugging features# -DBFD_LOADER - use libbfd.a to load programs (also required BINUTILS_INC# and BINUTILS_LIB to be defined, see below)#FFLAGS = -DDEBUG## Choose your optimization level here## for optimization: OFLAGS = -O2 -g -finline-functions -funroll-loops# for debug: OFLAGS = -g -Wall#OFLAGS = -O## Point the Makefile to your Simplescalar-based bunutils, these definitions# should indicate where the include and library directories reside.# NOTE: these definitions are only required if BFD_LOADER is defined.##BINUTILS_INC = -I../include#BINUTILS_LIB = -L../lib#################################################################### YOU SHOULD NOT NEED TO MODIFY ANYTHING BELOW THIS COMMENT##################################################################### Machine-specific flags and libraries, generated by sysprobe#MFLAGS = `./sysprobe -flags`MLIBS = `./sysprobe -libs`## complete flags#CFLAGS = $(MFLAGS) $(FFLAGS) $(OFLAGS) $(BINUTILS_INC) $(BINUTILS_LIB)## all the sources#SIM_SRC = main.c sim-fast.c sim-safe.c sim-cache.c sim-profile.c \ sim-bpred.c sim-cheetah.c sim-outorder.c syscall.c memory.c \ regs.c loader.c cache.c bpred.c ptrace.c eventq.c resource.c \ endian.c dlite.c symbol.c eval.c options.c range.c stats.c \ ss.c endian.c misc.cSIM_HDR = 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 \ range.h version.h ss.h ss.def endian.h ecoff.h misc.h## common objects#SIM_OBJ = main.o syscall.o memory.o regs.o loader.o ss.o endian.o dlite.o \ symbol.o eval.o options.o stats.o range.o misc.o## external libraries required for build#SIM_LIB = -lm## all targets#all: sim-fast sim-safe sim-bpred sim-profile sim-cheetah sim-cache sim-outorder @echo "my work is done here..."sysprobe: sysprobe.c $(CC) $(FFLAGS) -o sysprobe sysprobe.c @echo endian probe results: `./sysprobe -s` @echo probe flags: `./sysprobe -flags` @echo probe libs: `./sysprobe -libs`sim-fast: sysprobe sim-fast.o $(SIM_OBJ) $(CC) -o sim-fast $(CFLAGS) sim-fast.o $(SIM_OBJ) $(SIM_LIB) $(MLIBS)sim-safe: sysprobe sim-safe.o $(SIM_OBJ) $(CC) -o sim-safe $(CFLAGS) sim-safe.o $(SIM_OBJ) $(SIM_LIB) $(MLIBS)sim-profile: sysprobe sim-profile.o $(SIM_OBJ) $(CC) -o sim-profile $(CFLAGS) sim-profile.o $(SIM_OBJ) $(SIM_LIB) $(MLIBS)sim-bpred: sysprobe sim-bpred.o bpred.o $(SIM_OBJ) $(CC) -o sim-bpred $(CFLAGS) sim-bpred.o bpred.o $(SIM_OBJ) $(SIM_LIB) $(MLIBS)sim-cheetah: sysprobe sim-cheetah.o libcheetah/libcheetah.a $(SIM_OBJ) $(CC) -o sim-cheetah $(CFLAGS) sim-cheetah.o $(SIM_OBJ) libcheetah/libcheetah.a $(SIM_LIB) $(MLIBS)sim-cache: sysprobe sim-cache.o cache.o $(SIM_OBJ) $(CC) -o sim-cache $(CFLAGS) sim-cache.o cache.o $(SIM_OBJ) $(SIM_LIB) $(MLIBS)sim-outorder: sysprobe sim-outorder.o cache.o bpred.o resource.o ptrace.o $(SIM_OBJ) $(CC) -o sim-outorder $(CFLAGS) sim-outorder.o cache.o bpred.o resource.o ptrace.o $(SIM_OBJ) $(SIM_LIB) $(MLIBS)libcheetah/libcheetah.a: libcheetah/ascbin.c libcheetah/din.c libcheetah/dmvl.c libcheetah/faclru.c libcheetah/facopt.c libcheetah/libcheetah.c libcheetah/pixie.c libcheetah/ppopt.c libcheetah/saclru.c libcheetah/sacopt.c libcheetah/util.c cd libcheetah; $(MAKE) "MAKE=$(MAKE)" "CC=$(CC)" "RANLIB=$(RANLIB)" "CFLAGS=$(FFLAGS) $(OFLAGS)" libcheetah.a.c.o: $(CC) $(CFLAGS) -c $*.cfilelist: @echo $(SIM_SRC) $(SIM_HDR) Makefilediffs: -rcsdiff RCS/*sim-tests: sysprobe sim-fast sim-safe sim-cache sim-cheetah sim-bpred sim-profile sim-outorder cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "SIM_BIN=sim-fast" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "SIM_BIN=sim-safe" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "SIM_BIN=sim-cache" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "SIM_BIN=sim-cheetah" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "SIM_BIN=sim-bpred" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "SIM_BIN=sim-profile" "SIM_OPTS=-all" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "SIM_BIN=sim-outorder"sim-tests-nt: sysprobe sim-fast sim-safe sim-cache sim-cheetah sim-bpred sim-profile sim-outorder cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "REDIR=redir.bash" "SIM_BIN=sim-fast" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "REDIR=redir.bash" "SIM_BIN=sim-safe" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "REDIR=redir.bash" "SIM_BIN=sim-cache" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "REDIR=redir.bash" "SIM_BIN=sim-cheetah" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "REDIR=redir.bash" "SIM_BIN=sim-bpred" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "REDIR=redir.bash" "SIM_BIN=sim-profile" "SIM_OPTS=-all" cd tests; $(MAKE) "MAKE=$(MAKE)" tests "SIM_DIR=.." "REDIR=redir.bash" "SIM_BIN=sim-outorder"clean: rm -f *.o *.exe core *~ Makefile.bak sim-fast sim-safe sim-profile \ sim-bpred sim-cheetah sim-cache sim-outorder sysprobe cd libcheetah; $(MAKE) clean cd tests; $(MAKE) cleanunpure: rm -f sim.pure *pure*.o sim.pure.pure_hardlink sim.pure.pure_linkinfodepend: makedepend -n $(BINUTILS_INC) $(SIM_SRC)# DO NOT DELETE THIS LINE -- make depend depends on it.main.o: misc.h regs.h ss.h ss.def memory.h endian.h options.h stats.h eval.hmain.o: loader.h version.h dlite.h sim.hsim-fast.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsim-fast.o: eval.h loader.h syscall.h dlite.h sim.hsim-safe.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsim-safe.o: eval.h loader.h syscall.h dlite.h sim.hsim-cache.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsim-cache.o: eval.h cache.h loader.h syscall.h dlite.h sim.hsim-profile.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsim-profile.o: eval.h loader.h syscall.h dlite.h symbol.h sim.hsim-bpred.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsim-bpred.o: eval.h loader.h syscall.h dlite.h bpred.h sim.hsim-cheetah.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsim-cheetah.o: eval.h loader.h syscall.h dlite.h libcheetah/libcheetah.hsim-cheetah.o: sim.hsim-outorder.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsim-outorder.o: eval.h cache.h loader.h syscall.h bpred.h resource.h bitmap.hsim-outorder.o: ptrace.h range.h dlite.h sim.hsyscall.o: misc.h ss.h ss.def regs.h memory.h endian.h options.h stats.hsyscall.o: eval.h loader.h sim.h syscall.hmemory.o: misc.h ss.h ss.def loader.h memory.h endian.h options.h stats.hmemory.o: eval.h regs.hregs.o: misc.h ss.h ss.def loader.h memory.h endian.h options.h stats.hregs.o: eval.h regs.hloader.o: ecoff.h misc.h ss.h ss.def regs.h memory.h endian.h options.hloader.o: stats.h eval.h sim.h loader.hcache.o: misc.h ss.h ss.def cache.h memory.h endian.h options.h stats.hcache.o: eval.hbpred.o: misc.h ss.h ss.def bpred.h stats.h eval.hptrace.o: misc.h ss.h ss.def range.h ptrace.heventq.o: misc.h ss.h ss.def eventq.h bitmap.hresource.o: misc.h resource.hendian.o: loader.h ss.h ss.def memory.h endian.h options.h stats.h eval.hdlite.o: misc.h version.h eval.h regs.h ss.h ss.def memory.h endian.hdlite.o: options.h stats.h sim.h symbol.h loader.h range.h dlite.hsymbol.o: ecoff.h misc.h loader.h ss.h ss.def memory.h endian.h options.hsymbol.o: stats.h eval.h symbol.heval.o: misc.h eval.hoptions.o: misc.h options.hrange.o: misc.h ss.h ss.def symbol.h loader.h memory.h endian.h options.hrange.o: stats.h eval.h range.hstats.o: misc.h eval.h stats.hss.o: misc.h ss.h ss.defendian.o: loader.h ss.h ss.def memory.h endian.h options.h stats.h eval.hmisc.o: misc.h
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -