bundle.mk

来自「This is a resource based on j2me embedde」· MK 代码 · 共 655 行 · 第 1/2 页

MK
655
字号
## Copyright  1990-2008 Sun Microsystems, Inc. All Rights Reserved.  # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER  #   # This program is free software; you can redistribute it and/or  # modify it under the terms of the GNU General Public License version  # 2 only, as published by the Free Software Foundation.   #   # 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 version 2 for more details (a copy is  # included at /legal/license.txt).   #   # You should have received a copy of the GNU General Public License  # version 2 along with this work; if not, write to the Free Software  # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  # 02110-1301 USA   #   # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa  # Clara, CA 95054 or visit www.sun.com if you need additional  # information or have any questions. ## @(#)bundle.mk	1.34 06/10/25## Makefile for building the source bundle.## Targets (default is src.zip):#   src.zip:      j2me source bundle. Renamed to <profile>-src.zip.#   all:          src.zip target## Options - defaults in parenthesis:#   J2ME_CLASSLIB(cdc): profile to build source bundle for.#   JAVAME_LEGAL_DIR: directory containing legal documents. If not set,#   	the makefiles will automatically do an svn checkout of the files.#   	from the respository. This will result in a password prompt if you#   	haven't already authenticated with the repository.#   SRC_BUNDLE_NAME: name of the source bundle, excluding .zip extension.#	Defaults to $(J2ME_CLASSLIB)-src#   SRC_BUNDLE_DIRNAME: directory name the source bundle will unzip# 	into. Defaults to $(SRC_BUNDLE_NAME).#   SRC_BUNDLE_APPEND_REVISION(true): Appends the repository#	revision number to the end of SRC_BUNDLE_NAME.#   BUNDLE_PORTS: OS/CPU ports to include (see below)#   CVM_PRODUCT(oi): "oi" or "ri".#   INCLUDE_JIT: true for oi builds. false for ri builds.#   INCLUDE_DUALSTACK(false): Include cdc/cldc dual stack support.#   INCLUDE_KNI(false): Include support for KNI methods#   INCLUDE_COMMCONNECTION(true): Include CommConnection support.#   INCLUDE_JCOV(false): Include support for JCOV#   INCLUDE_MTASK: true for oi build. false for ri builds.#   INCLUDE_GCI(false): Set true to include GCI makefiles#   USE_CDC_COM(false): set true for commericial source bundles#   CDC_COM_DIR: directory of cdc-com component## BUNDLE_PORTS lists all the ports to include in the source bundle using# the format <os>-<cpu>-<device>. Wildcards are supported, but you must# specify something for each of the 3 parts that make up the name of the# port. The following are examples of valid port names##   BUNDLE_PORTS=linux-arm-netwinder#   BUNDLE_PORTS="linux-arm-* linux-mips-*"#   BUNDLE_PORTS="*-arm-*"#   BUNDLE_PORTS="*-*-*"## Defaults for BUNDLE_PORTS are:##   linux-x86-suse:   for ri builds.#   linux-arm-zaurus: for oi builds.# # Example invocation:#   gmake -f bundle.mk all BUNDLE_PORTS="linux-arm-*" \#       INCLUDE_DUALSTACK=true J2ME_CLASSLIB=cdc CVM_PRODUCT=oi#default: src.zipall:	 src.zipempty:=comma:= ,space:= $(empty) $(empty)ABSPATH 	= $(shell cd $(1); echo `pwd`)CVM_TOP		:= ../..CVM_TOP_ABS	:= $(call ABSPATH,$(CVM_TOP))INSTALLDIR	:= $(CVM_TOP_ABS)/installZIP		= zipUSE_VERBOSE_MAKE	= falseJ2ME_CLASSLIB		= cdcSRC_BUNDLE_NAME		= $(J2ME_CLASSLIB)-srcSRC_BUNDLE_DIRNAME 	= $(SRC_BUNDLE_NAME)# Add the svn revison number to SRC_BUNDLE_NAME if requested.SRC_BUNDLE_APPEND_REVISION = trueifeq ($(SRC_BUNDLE_APPEND_REVISION),true)ifneq ($(wildcard .svn),.svn)REVISION_NUMBER = UNKNOWNelseREVISION_NUMBER = \     $(shell svn info | grep "Revision:" | sed -e 's/Revision: \(.*\)/\1/')override SRC_BUNDLE_DIRNAME := $(SRC_BUNDLE_DIRNAME)-rev$(REVISION_NUMBER)override SRC_BUNDLE_NAME := $(SRC_BUNDLE_NAME)-rev$(REVISION_NUMBER)endifendifCVM_PRODUCT = oiINCLUDE_DUALSTACK	= falseINCLUDE_KNI		= $(INCLUDE_DUALSTACK)INCLUDE_COMMCONNECTION  = trueINCLUDE_JCOV		= falseINCLUDE_GCI		= falseifeq ($(CVM_PRODUCT),ri)INCLUDE_JIT		= falseINCLUDE_MTASK		= falseelseINCLUDE_JIT		= trueINCLUDE_MTASK		= trueendif# If mtask is enabled, include up to basis.ifeq ($(INCLUDE_MTASK), true)ifeq ($(J2ME_CLASSLIB), cdc)override J2ME_CLASSLIB		= basisendififeq ($(J2ME_CLASSLIB), foundation)override J2ME_CLASSLIB		= basisendifendif# If dualstack is enabled, include up to foundation.ifeq ($(INCLUDE_DUALSTACK), true)ifeq ($(J2ME_CLASSLIB), cdc)override J2ME_CLASSLIB		= foundationendifendif ifeq ($(J2ME_CLASSLIB),foundation)INCLUDE_foundation = trueendififeq ($(J2ME_CLASSLIB),basis)INCLUDE_foundation	= trueINCLUDE_basis		= trueendififeq ($(J2ME_CLASSLIB),personal)INCLUDE_foundation	= trueINCLUDE_basis		= trueINCLUDE_personal	= trueendififneq ($(J2ME_CLASSLIB),cdc)ifneq ($(INCLUDE_foundation),true)$(error "Invalid setting for J2ME_CLASSLIB: \"$(J2ME_CLASSLIB)\"")endifendif## List all the ports you want to include in the source bundle using# the format <os>-<cpu>-<device>. Wildcards are supported, but you must# specify something for each of the 3 parts that makes up the name of the# port. The following are examples of valid port names:##  linux-arm-netwinder#  linux-arm-*#  *-arm-*#  *-*-*## If used on the command line and either more than one port is listed# or * is used, then the entire string must be in quotes. For example:##  gnumake -f bundle.mk BUNDLE_PORTS="linux-arm-* linux-x86-suse"#ifeq ($(CVM_PRODUCT),ri)BUNDLE_PORTS = linux-x86-*elseBUNDLE_PORTS = linux-x86-*endif# Do wildcard expansion of ports listed in BUNDLE_PORTSoverride BUNDLE_PORTS := \	$(addprefix $(CDC_DIR)/build/, $(BUNDLE_PORTS)) \	$(addprefix $(CVM_TOP)/build/, $(BUNDLE_PORTS))override BUNDLE_PORTS := $(foreach port, $(BUNDLE_PORTS), $(wildcard $(port)))# list of all device ports in the form <os>-<cpu>-<device>BUNDLE_DEVICE_PORTS = $(notdir $(BUNDLE_PORTS))# list of all OS ports in the form <os>BUNDLE_OS_PORTS = \	$(sort $(foreach port, $(BUNDLE_DEVICE_PORTS), \			       $(word 1,$(subst -,$(space),$(port)))))# list of all CPU ports in the form <cpu>BUNDLE_CPU_PORTS = \	$(sort $(foreach port, $(BUNDLE_DEVICE_PORTS), \			       $(word 2,$(subst -,$(space),$(port)))))# list of all platform ports in the form <os>-<cpu>BUNDLE_PLATFORM_PORTS = \	$(sort $(foreach port, \	        $(BUNDLE_DEVICE_PORTS), \	        $(word 1,$(subst -,$(space),$(port)))-$(word 2,$(subst -,$(space),$(port)))))##################################################### File and directory patterns to include and exclude####################################################EXCLUDE_PATTERNS += \	*SCCS/* \	*/.svn/* \	*gunit*# cvmifneq ($(CVM_PRODUCT),oi)EXCLUDE_PATTERNS += \        *gc/generational-seg/* \        *gc/marksweep/* \        *gc/semispace/* \        */executejava_aligned.c \        */executejava_split1.c \        */executejava_split2.cendifEXCLUDE_PATTERNS +=		\	*/mem_mgr*BUILDDIR_PATTERNS += \	GNUmakefile \	top.mk \	defs.mk \	rules.mk \	jdwp*.mk \	hprof.mkSRCDIR_PATTERNS += \	javavmBUNDLE_INCLUDE_LIST += \	src/portlibs \	build/portlibs/* \	build/share/bundle.mk \	build/share/jcc.mk \	build/share/*_op.mk \	src/share/tools/GenerateCurrencyData \	src/share/tools/javazic \	src/share/tools/xml \	src/share/tools/sha1 \	src/share/lib/security \	src/share/lib/profiles \	$(foreach os,$(BUNDLE_OS_PORTS), \		src/$(os)/bin) \	$(foreach os,$(BUNDLE_OS_PORTS) share, \		src/$(os)/tools/hprof) \	$(foreach os,$(BUNDLE_OS_PORTS) share, \		src/$(os)/tools/jpda) \	$(foreach os,$(BUNDLE_OS_PORTS), \		src/$(os)/lib/tzmappings) \	$(foreach os,$(BUNDLE_OS_PORTS), \		src/$(os)/lib/content-types.properties)# For Windows Buildifeq ($(findstring win32,$(BUNDLE_OS_PORTS)),win32)CVM_INCLUDE_WIN32_HOST_DEFS_MK = trueBUNDLE_INCLUDE_LIST +=				\	build/win32/ppc*_defs.mk \	build/win32/wm5*_defs.mk \	build/win32/*wince*.mk \	build/win32/vc*_defs.mkendif# For Symbian Buildifeq ($(findstring symbian,$(BUNDLE_OS_PORTS)),symbian)CVM_INCLUDE_WIN32_HOST_DEFS_MK = trueBUNDLE_INCLUDE_LIST +=				\	build/symbian/fix_project.pl \	build/symbian/root.sh \	build/symbian/winsim.mk \	src/symbian/lib/cvm_exports*endififeq ($(CVM_INCLUDE_WIN32_HOST_DEFS_MK),true)BUNDLE_INCLUDE_LIST +=				\	build/win32/host_defs.mk endif# dual stackifeq ($(INCLUDE_DUALSTACK), true)BUNDLE_INCLUDE_LIST += \	src/share/lib/dualstack \	src/share/tools/RomConfProcessorBUILDDIR_PATTERNS += \       *_midp.mkelseEXCLUDE_PATTERNS += 			\	*/AuxPreloadClassLoader.c		\	*/AuxPreloadClassLoader.java		\	*/auxPreloader.c			\	*/MemberFilter.c			\	*/MemberFilter.java			\	*/MemberFilterConfig.java		\	*/MIDletClassLoader.java		\	*/MIDPConfig.java			\	*/MIDPImplementationClassLoader.java	\	*/MIDPFilterConfig.txt			\	*/MIDPPermittedClasses.txt		\	*/test/dualstack			\	*/test/dualstack/*endif# kni supportifneq ($(INCLUDE_KNI), true)EXCLUDE_PATTERNS += 	\	*KNI*		\	*kni*		\	*sni_impl*endif

⌨️ 快捷键说明

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