defs.gmk

来自「用于移动设备上的java虚拟机源代码」· GMK 代码 · 共 211 行

GMK
211
字号
## @(#)Defs.gmk	1.18 02/10/01 @(#)## Copyright (c) 1999-2002 Sun Microsystems, Inc.  All rights reserved.# PROPRIETARY/CONFIDENTIAL# Use is subject to license terms.############ GLOBAL defines. This file should not contain rules.## The following variables must be defined prior to including this file:##	KVM_DIR   - Top of kVM tree#	MIDP_DIR  - Top of MIDP tree#	BUILD_DIR - Directory `make` was executed in##	KVM_EXCLUDE_CLASSES      - .class files to exclude from kVM tree#	MIDP_EXCLUDE_CLASSES     - .class files to exclude from MIDP tree#	PLATFORM_EXCLUDE_CLASSES - .class files to exclude from platform#	EXAMPLE_EXCLUDE_CLASSES  - .class files to exclude from examples#	TEST_EXCLUDE_CLASSES     - .class files to exclude from tests ##	PLATFORM_SRC_DIR   - dir containing platform-specific .c files#	PLATFORM_CLASS_DIR - dir containing platform-specific classes#			      This must _NOT_ have a trailing slash (/)## Other variables that must be defined elsewhere:##	KVM_EXCLUDE_SRC      - .c files to exclude from kVM tree#	KVM_INCLUDE_SRC      - .c files to include from kVM tree#	MIDP_EXCLUDE_SRC     - .c files to exclude from MIDP tree#	MIDP_INCLUDE_SRC     - .c files to include from MIDP tree#	PLATFORM_INCLUDE_SRC - platform-specific .c files to include#	PLATFORM_EXCLUDE_SRC - platform-specific .c files to exclude##	KVM_INCLUDE_CLASSES      - .class files to include from kVM tree#	MIDP_INCLUDE_CLASSES     - .class files to include from MIDP tree#	PLATFORM_INCLUDE_CLASSES - .class files to include from platform#	EXAMPLE_INCLUDE_CLASSES  - .class files to include from examples#	TEST_INCLUDE_CLASSES     - .class files to include from tests#	EXTRA_CLASS_FILES        - .class files to include from some other#				   tree. Whomever defines this must also#				   define the proper target(s) to build all#				   classes in this list.##	PLATFORM      - Platform to build#	PATHSEP       - Path separator for '-classpath' argument#	CC_OUTPUT     - Argument used w/ compiler to generate .o file#	LINKER_OUTPUT - Argument used w/ linker to generate executable#	OBJ_SUFFIX    - Suffix of object files#	g             - Suffix of debug-enabled object directory#	EXE           - Suffix of executable programs#	LIBS          - Libraries to append at link stage#	LD            - Linker command#	CC            - Compiler command#	KDP_CMD       - Command for the KVM Debug Proxy#	ROMJAVA       - Name of ROMJava file## Other variables that may be defined elsewhere:##	ALT_BOOTDIR    - Alternate directory of Java commands#	EXTRA_INCLUDES - Additional search directories for .h files#	EXTRA_CFLAGS   - Additional arguments for compiler#	EX_SERVER_URL  - URL prefix to use for MIDlet-JAR-URL tag when#			  creating the example MIDlets. The .jar file#			  will be appended to this string.#	ARCH_DIR       - Additional sub-directory to store object files.#			  This is useful when attempting to build binaries#			  for the same platform but two different CPU#			  architectures. (For instance Solaris/X86 and#			  Solaris/SPARC). This variable must start with#			  path separator.##	DEBUG_COLLECTOR  - Include the KVM debug version of the collector.#			   (default value is false)#	ENABLEPROFILING  - Include kvm gathering of performance staistics#			   (default value is false)#	ENABLE_DEBUGGER  - Include the KVM debugger hooks to communicate#                  	   with an external proxy agent.#			   (default value is false)#	ENABLE_SCREEN_CAPTURE  - Include the code used for screen capture#			   used by the QA team for verifying non interactive#			   user interface tests #			   (default is true)#	INCLUDEDEBUGCODE - Include debugging code used for KVM traces#	                   and C-level debugger symbols#                          (default is false)#	INCLUDE_HTTPS    - Include the https:// protocol handler and #                          associated crypto routiunes.#                          (default is false )#	INCLUDE_I18N     - Include support for internationalization.#			   (default is true)#	ROMIZING         - Convert core classes to a native included#                          file.#			   (default is true)#	SOUND_SUPPORTED  - Include calls to augment button pushes with#                          sound queues#                          (default is false)JCC_DIR       = $(BUILD_DIR)/jcc_classesJCC_CMD       = $(JCC_DIR)/JavaCodeCompact.classEXTRACT_OFFSETS     = extractOffsetsEXTRACT_OFFSETS_CMD = $(BINDIR)/extractOffsets$(g)$(EXE)VM_INCLUDES += -I$(KVM_DIR)/kvm/VmCommon/h \	       -I$(KVM_DIR)/kvm/VmExtra/h  \	       -I$(EXTRACT_OFFSETS_INCDIR) \EXTRACT_OFFSETS_INCDIR = $(BUILD_DIR)/includeEXTRA_CFLAGS += -DUSE_KVM=1 -DGENERIC_IO_WAIT_TIME=10ifneq ($(ROMIZING), false)    KVM_DEF_SRC += $(ROMJAVA).c   EXTRA_CFLAGS += -DROMIZING=1 -DMAXIMUMHEAPSIZE=500000else   EXTRA_CFLAGS += -DROMIZING=0 -DMAXIMUMHEAPSIZE=1000000endififeq ($(ENABLE_DEBUGGER), true)   KVM_DEF_SRC += debugger.c debuggerSocketIO.c debuggerOutputStream.c \		    debuggerInputStream.c   EXTRA_CFLAGS += -DENABLE_JAVA_DEBUGGER=1   KDP_CMD = $(BINDIR)/kdp.jarelse   EXTRA_CFLAGS += -DENABLE_JAVA_DEBUGGER=0   KDP_CMD =endififeq ($(DEBUG_COLLECTOR), true)   KVM_DEF_SRC += collectorDebug.celse   KVM_DEF_SRC += collector.cendif# Additional MIDP source files#KVM_DEF_SRC  += nativeFunctionTable.cMIDP_DEF_SRC += midpServices.c# c source#KVM_DEF_SRC += cache.c class.c fields.c frame.c garbage.c global.c \	       interpret.c loader.c native.c pool.c thread.c  \	       nativeCore.c loaderFile.c runtime_md.c events.c \	       hashtable.c profiling.c StartJVM.c \	       verifier.c verifierUtil.c log.c stackmap.c execute.c \	       inflate.c jar.c kni.cKVM_SRC_FILES = $(filter-out $(KVM_EXCLUDE_SRC),$(KVM_DEF_SRC))KVM_SRC_FILES += $(KVM_INCLUDE_SRC)KVM_OBJ_FILES = $(patsubst %.c,$(OBJ_DIR)/%.o,$(KVM_SRC_FILES))# java source#KVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|j2seKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|io/palmKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|io/j2meKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|io/connectionsKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|io/ConnectionBase.javaKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|io/NetworkConnectionBase.javaKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|io/DateParser.javaKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|java/lang/System.javaKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|java/lang/Runtime.javaKVM_EXCLUDE_CLASSES := $(KVM_EXCLUDE_CLASSES)|java/lang/Class.javaKVM_DEF_SOURCE:=$(shell find \  $(KVM_DIR)/api/src/java  \  $(KVM_DIR)/api/src/javax  \  $(KVM_DIR)/api/src/com/sun/cldc  \  -name '*.java' | egrep -v '$(KVM_EXCLUDE_CLASSES)')KVM_SOURCE_FILES = $(KVM_DEF_SOURCE) $(KVM_INCLUDE_CLASSES)KVM_CLASS_FILES  = $(subst $(KVM_DIR)/api/src,classes,$(KVM_SOURCE_FILES:java=class))EXTRACT_OFFSET_CLASSES += \	javax/microedition/lcdui/Font		\	javax/microedition/lcdui/Image		\	javax/microedition/lcdui/Command	\	javax/microedition/lcdui/Graphics	\	javax/microedition/lcdui/DeviceCaps	\	com/sun/midp/main/CommandState		\	com/sun/midp/io/NetworkConnectionBase	\	com/sun/midp/io/ResourceInputStream# Set variables used externally#VM_OBJ_FILES   = $(KVM_OBJ_FILES)VM_CLASS_FILES = $(KVM_CLASS_FILES)# Anything that needs to be done after compiling Java classes#define postcompilefiles	@if [ -f .filelist -o ! -f $@ ];then \		echo ... $@; \		(rm -f $@;cd $(CLASSBINDIR);\		$(ZIP) -qr ../$@ java javax com); \	fi	@if [ -f .filelist -o ! -f nativeFunctionTable.c ];then \		echo ... nativeFunctionTable.c; \		$(JAVA) -classpath $(JCC_DIR) JavaCodeCompact \		 -nq -arch KVM_Native -o nativeFunctionTable.c classes.zip; \	fi	@if [ -f .filelist -o ! -f $(ROMJAVA).c ];then \		echo ... $(ROMJAVA).c; \		$(JAVA) -classpath $(JCC_DIR) JavaCodeCompact \		 -nq -arch KVM -o $(ROMJAVA).c classes.zip; \	fiendef

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?