📄 makefile
字号:
## Copyright 1995-2002 by Sun Microsystems, Inc.,# 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.# All rights reserved.## This software is the confidential and proprietary information# of Sun Microsystems, Inc. ("Confidential Information"). You# shall not disclose such Confidential Information and shall use# it only in accordance with the terms of the license agreement# you entered into with Sun.# Use is subject to license terms.#TOP=../../..include $(TOP)/build/Makefile.incifeq ($(PLATFORM), linux) export GCC=trueendififeq ($(DEBUG), true) g = _gelse g =endifj =ifeq ($(DEBUG_COLLECTOR), true)COLLECTOR = collectorDebug.celseCOLLECTOR = collector.cendifSRCFILES = cache.c class.c fields.c frame.c garbage.c $(COLLECTOR) \ global.c interpret.c execute.c loader.c main.c native.c \ property.c thread.c nativeCore.c loaderFile.c hashtable.c \ verifier.c log.c jar.c inflate.c stackmap.c profiling.c \ pool.c runtime_md.c StartJVM.c \ nativeFunctionTableUnix.c events.c resource.c \ datagramProtocol.c datagramProtocol_md.c \ socketProtocol.c socketProtocol_md.c \ commProtocol.c commProtocol_md.c verifierUtil.cifeq ($(DEBUG), true) SRCFILES += debugger.c debuggerSocketIO.c debuggerOutputStream.c debuggerInputStream.c OTHER_FLAGS += -DENABLE_JAVA_DEBUGGER=1else OTHER_FLAGS += -DENABLE_JAVA_DEBUGGER=0endifOTHER_FLAGS +=-DPADTABLE=1ifeq ($(USE_JAM), true) OTHER_FLAGS += -DUSE_JAM=1 SRCFILES += jam.c jamParse.c jamHttp.c jamStorage.c j = _jelseendififeq ($(USE_KNI), false) OTHER_FLAGS += -DUSE_KNI=0else OTHER_FLAGS += -DUSE_KNI=1 SRCFILES += kni.cendififeq ($(ROMIZING), false) ROMFLAGS = -DROMIZING=0else SRCFILES += ROMjavaUnix.cendififeq ($(EXCESSIVEGC), true) OTHER_FLAGS += -DEXCESSIVE_GARBAGE_COLLECTION=1else OTHER_FLAGS += -DEXCESSIVE_GARBAGE_COLLECTION=0endifall: kvm$(j)$(g)OBJFILES = $(patsubst %.c,obj$(j)$(g)/%.o,$(SRCFILES))vpath %.c $(TOP)/kvm/VmCommon/src/ $(TOP)/kvm/VmUnix/src/ \ $(TOP)/kvm/VmExtra/src/ $(TOP)/tools/jcc/ $(TOP)/jam/srcifeq ($(PLATFORM), solaris)LIBS = -lm -lsocket -lnslCPPFLAGS = -DUNIX -DSOLARIS -D$(ARCH) \ -I$(TOP)/kvm/VmCommon/h -I$(TOP)/kvm/VmUnix/h \ -I$(TOP)/kvm/VmExtra/h -I$(TOP)/jam/h -I$(TOP)/kvm/VmCommon/srcendififeq ($(PLATFORM), linux)LIBS = -lm -lnslCPPFLAGS = -DUNIX -DLINUX -D$(ARCH) \ -I$(TOP)/kvm/VmCommon/h -I$(TOP)/kvm/VmUnix/h \ -I$(TOP)/kvm/VmExtra/h -I$(TOP)/jam/h -I$(TOP)/kvm/VmCommon/srcendififeq ($(GCC), true) CC = gcc CFLAGS = -Wall $(CPPFLAGS) $(ROMFLAGS) $(OTHER_FLAGS) DEBUG_FLAG = -g OPTIMIZE_FLAG = -O2else CC = cc CFLAGS = -Xa $(CPPFLAGS) $(ROMFLAGS) $(OTHER_FLAGS) DEBUG_FLAG = -g -xsb OPTIMIZE_FLAG = -xO2endifDEBUG_FLAG += -DINCLUDEDEBUGCODE=1 $(TOP)/tools/jcc/ROMjavaUnix.c $(TOP)/tools/jcc/nativeFunctionTableUnix.c: jccUnix.PHONY: jccUnixjccUnix: @(cd $(TOP)/tools/jcc; $(MAKE) unix) kvm$(j)$(g): obj$j$g/ $(CLEANUPXPM) $(OBJFILES) @echo "Linking ... $@" @$(CC) $(OBJFILES) -o $@ $(LIBS)clean: rm -rf core kvm* .noincludexpm* ./obj* ./SunWS_cache .sb rm -rf $(TOP)/tools/jcc/ROMjavaUnix.c rm -rf $(TOP)/tools/jcc/nativeFunctionTableUnix.cobj$(j)$g/execute.o : execute.c bytecodes.c obj$(j)/%.o: %.c @echo "... $@" @$(CC) $(EXTRACFLAGS) $(CFLAGS) $(OPTIMIZE_FLAG) -c -o $@ $<obj$(j)_g/%.o: %.c @echo "... $@" @$(CC) $(EXTRACFLAGS) $(CFLAGS) $(DEBUG_FLAG) -c -o $@ $<obj$j$g/: mkdir -p $@ifeq ($(GCC), true)%.i: %.c .FORCE echo $(CC) $(CC) $(CFLAGS) $(OPTIMIZE_FLAG) -E -o $@ $<else %.i: %.c .FORCE echo $(CC) $(CC) $(CFLAGS) $(OPTIMIZE_FLAG) -E $< > $@endif%.s: %.c .FORCE @echo "... $@" @$(CC) $(CFLAGS) $(OPTIMIZE_FLAG) -S -o $@ $<
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -