0N/A#
4944N/A# Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
0N/A# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
0N/A#
0N/A# This code is free software; you can redistribute it and/or modify it
0N/A# under the terms of the GNU General Public License version 2 only, as
2362N/A# published by the Free Software Foundation. Oracle designates this
0N/A# particular file as subject to the "Classpath" exception as provided
2362N/A# by Oracle in the LICENSE file that accompanied this code.
0N/A#
0N/A# This code is distributed in the hope that it will be useful, but WITHOUT
0N/A# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
0N/A# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
0N/A# version 2 for more details (a copy is included in the LICENSE file that
0N/A# accompanied this code).
0N/A#
0N/A# You should have received a copy of the GNU General Public License version
0N/A# 2 along with this work; if not, write to the Free Software Foundation,
0N/A# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
0N/A#
2362N/A# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2362N/A# or visit www.oracle.com if you need additional information or have any
2362N/A# questions.
0N/A#
0N/A
0N/A#
0N/A# Shared platform (OS/ARCH) variable settings for the JDK builds.
0N/A#
0N/A# Includes basic system requirements, versions of utilities required,
0N/A# suffixes on files, and basic defaults attributed to the build platform.
0N/A#
0N/A
0N/A#
0N/A# Assumes some basic unix system utilities (e.g. uname) are in the search path
0N/A# in order to figure out the system.
0N/A#
0N/A
0N/Aifndef PLATFORM_SHARED
0N/A
0N/APLATFORM_SHARED=done
0N/A
0N/A# Possible Input variables:
0N/A# ARCH_DATA_MODEL 32 or 64, default to 32
0N/A# USER, LOGNAME user name (runs logname, or id if not set)
0N/A# PROCESSOR_IDENTIFIER windows only: needed in environment
0N/A#
0N/A# (Also gets input by running the utilities uname, logname, isainfo, or id.)
0N/A#
0N/A# Variables set by this file:
0N/A# SYSTEM_UNAME what 'uname' says this system is
0N/A# USER login name of user (minus blanks)
0N/A# PLATFORM windows, solaris, or linux
0N/A# VARIANT OPT or DBG, OPT is the default
0N/A# TEMP_DISK /tmp or C:/temp
0N/A# ARCH_DATA_MODEL 32 or 64
0N/A# ARCH sparc, sparcv9, i586, amd64, or ia64
0N/A# ARCH_FAMILY sparc or i586
0N/A# ARCHPROP sparc or x86
0N/A# ARCH_VM_SUBDIR jre/bin, jre/lib/sparc, etc.
0N/A# LIBARCH sparc, sparcv9, i386, amd64, or ia64
0N/A# DEV_NULL destination of /dev/null, NUL or /dev/NULL
0N/A# CLASSPATH_SEPARATOR separator in classpath, ; or :
0N/A# LIB_PREFIX dynamic or static library prefix, lib or empty
0N/A# LIB_SUFFIX static library file suffix, .lib or .a?
0N/A# LIBRARY_SUFFIX dynamic library file suffix, .dll or .so
0N/A# OBJECT_SUFFIX object file suffix, .o or .obj
0N/A# EXE_SUFFIX executable file suffix, .exe or empty
0N/A# BUNDLE_FILE_SUFFIX suffix for bundles: .tar or .tar.gz
0N/A# ISA_DIR solaris only: /sparcv9 or /amd64
0N/A# LIBARCH32 solaris only: sparc or i386
0N/A# LIBARCH64 solaris only: sparcv9 or amd64
0N/A# USING_CYGWIN windows only: true or false
0N/A# ISHIELD_TEMP_MIN windows only: minimum disk space in temp area
0N/A
3514N/A# Only run uname once in this make session.
3514N/Aifndef SYSTEM_UNAME
3514N/A SYSTEM_UNAME := $(shell uname)
3514N/A export SYSTEM_UNAME
3514N/Aendif
0N/A
0N/A#
0N/A# Prune out all known SCM (Source Code Management) directories
0N/A# so they will not be included when copying directory trees
0N/A# or packaging up .jar files, etc. This applies to all workspaces.
0N/A#
8N/ASCM_DIRs = .hg .svn CVS RCS SCCS Codemgr_wsdata deleted_files .hgignore .hgtags
0N/A# When changing SCM_DIRs also change SCM_DIRS_rexp and SCM_DIRS_prune:
8N/ASCM_DIRS_rexp = ".hg|.svn|CVS|RCS|SCCS|Codemgr_wsdata|deleted_files|.hgignore|.hgtags"
8N/ASCM_DIRS_prune = \( -name .hg -o -name .svn -o -name CVS -o -name RCS -o -name SCCS -o -name Codemgr_wsdata -o -name deleted_files -o -name .hgignore -o -name .hgtags \) -prune
0N/A
0N/A# Don't define this unless it's not defined
0N/Aifndef VARIANT
0N/A VARIANT=OPT
0N/Aendif
0N/A
0N/A# Platform settings specific to Solaris
0N/Aifeq ($(SYSTEM_UNAME), SunOS)
0N/A PLATFORM = solaris
0N/A # Solaris sparc build can be either 32-bit or 64-bit.
0N/A # Default to 32, but allow explicit setting to 32 or 64.
0N/A ifndef ARCH_DATA_MODEL
0N/A ARCH_DATA_MODEL=32
0N/A endif
0N/A ifeq ($(ARCH_DATA_MODEL), 32)
0N/A processor := $(shell uname -p)
0N/A archExpr = case "$(processor)" in \
0N/A i[3-9]86) \
0N/A echo i586 \
0N/A ;; \
0N/A sparc*) \
0N/A echo sparc \
0N/A ;; \
0N/A *) \
0N/A echo $(processor) \
0N/A ;; \
0N/A esac
0N/A ARCH := $(shell $(archExpr))
0N/A else
0N/A ARCH := $(shell isainfo -n)
0N/A # ISA_DIR is used to locate 64-bit specific libraries which are generally
0N/A # in the same general place as other libraries under the ./$(ARCH) directory
0N/A ISA_DIR = /$(ARCH)
0N/A endif
0N/A # Need to maintain the jre/lib/i386 location for 32-bit Intel
0N/A ifeq ($(ARCH), i586)
0N/A ARCH_FAMILY = $(ARCH)
0N/A LIBARCH = i386
0N/A # Value of Java os.arch property
0N/A ARCHPROP = x86
0N/A else
0N/A ifeq ($(ARCH), amd64)
0N/A ARCH_FAMILY = i586
0N/A else
0N/A ARCH_FAMILY = sparc
0N/A endif
0N/A LIBARCH = $(ARCH)
0N/A # Value of Java os.arch property
0N/A ARCHPROP = $(LIBARCH)
0N/A endif
0N/A # The two LIBARCH names
0N/A ifeq ($(ARCH_FAMILY), sparc)
0N/A LIBARCH32 = sparc
0N/A LIBARCH64 = sparcv9
0N/A else
0N/A LIBARCH32 = i386
0N/A LIBARCH64 = amd64
0N/A endif
0N/A # Suffix for file bundles used in previous release
0N/A BUNDLE_FILE_SUFFIX=.tar
4560N/A # How much RAM does this machine have (zones send an error to stderr):
4560N/A MB_OF_MEMORY:=$(shell /usr/sbin/prtconf 2>/dev/null | fgrep 'Memory size:' | expand | cut -d' ' -f3)
0N/Aendif
0N/A
0N/A# Platform settings specific to Linux
0N/Aifeq ($(SYSTEM_UNAME), Linux)
0N/A PLATFORM = linux
0N/A # Arch and OS name/version
3767N/A ifdef CROSS_COMPILE_ARCH
3767N/A mach := $(CROSS_COMPILE_ARCH)
3767N/A else
3767N/A mach := $(shell uname -m)
3767N/A endif
0N/A archExpr = case "$(mach)" in \
0N/A i[3-9]86) \
0N/A echo i586 \
0N/A ;; \
0N/A ia64) \
0N/A echo ia64 \
0N/A ;; \
0N/A x86_64) \
0N/A echo amd64 \
0N/A ;; \
0N/A sparc*) \
0N/A echo sparc \
0N/A ;; \
1920N/A arm*) \
1920N/A echo arm \
1920N/A ;; \
0N/A *) \
0N/A echo $(mach) \
0N/A ;; \
0N/A esac
0N/A ARCH := $(shell $(archExpr) )
0N/A ARCH_FAMILY := $(ARCH)
0N/A
0N/A # Linux builds may be 32-bit or 64-bit data model.
0N/A ifeq ($(ARCH), sparc)
0N/A # Linux sparc build can be either 32-bit or 64-bit.
0N/A # Default to 32, but allow explicit setting to 32 or 64.
0N/A ifndef ARCH_DATA_MODEL
0N/A ARCH_DATA_MODEL=32
0N/A endif
0N/A ifeq ($(ARCH_DATA_MODEL), 32)
0N/A ARCH=sparc
0N/A else
0N/A ARCH=sparcv9
0N/A endif
0N/A else
3767N/A # Most archs are 32-bit
0N/A ifndef ARCH_DATA_MODEL
3767N/A ARCH_DATA_MODEL=32
3767N/A ifeq ($(ARCH), amd64)
3767N/A ARCH_DATA_MODEL=64
3767N/A endif
3767N/A ifeq ($(ARCH), ia64)
0N/A ARCH_DATA_MODEL=64
0N/A endif
0N/A endif
0N/A endif
0N/A
0N/A # Need to maintain the jre/lib/i386 location for 32-bit Intel
0N/A ifeq ($(ARCH), i586)
0N/A LIBARCH = i386
0N/A else
0N/A LIBARCH = $(ARCH)
0N/A endif
0N/A
0N/A # Value of Java os.arch property
0N/A ARCHPROP = $(LIBARCH)
0N/A
0N/A # Suffix for file bundles used in previous release
0N/A BUNDLE_FILE_SUFFIX=.tar.gz
0N/A # How much RAM does this machine have:
118N/A MB_OF_MEMORY := $(shell free -m | fgrep Mem: | awk '{print $$2;}' )
0N/Aendif
0N/A
4632N/Aifeq ($(SYSTEM_UNAME), Darwin)
4632N/A PLATFORM = macosx
4632N/A OS_NAME = darwin
4632N/A OS_VENDOR = Apple
4637N/A GB_OF_MEMORY := $(shell system_profiler SPHardwareDataType | fgrep Memory: | awk '{print $$2}')
4637N/A MB_OF_MEMORY := $(shell expr ${GB_OF_MEMORY} '*' 1024)
4632N/Aendif
4632N/A
4632N/A# Platform settings specific to BSD/Mac OS X
4632N/Aifeq ($(PLATFORM), macosx)
4632N/A OS_VERSION := $(shell uname -r)
4632N/A
4632N/A # Arch and OS name/version
4632N/A # Darwin x86 builds are i386/amd64 universal by default.
4632N/A # Allow arch to be set from the environment to avoid this.
4632N/A ifeq ($(origin ARCH), undefined)
4632N/A ifeq ($(PLATFORM), macosx)
4632N/A# MMM: revisit when hotspot producinging universal libs
4632N/A# mach := universal
4632N/A mach := x86_64
4632N/A else
4632N/A mach := $(shell uname -m)
4632N/A endif
4632N/A else
4632N/A mach := $(ARCH)
4632N/A endif
4632N/A
4632N/A archExpr = case "$(mach)" in \
4632N/A i[3-9]86) \
4632N/A echo i586 \
4632N/A ;; \
4632N/A sparc64) \
4632N/A echo sparcv9 \
4632N/A ;; \
4632N/A sparc*) \
4632N/A echo sparc \
4632N/A ;; \
4632N/A x86_64) \
4944N/A echo x86_64 \
4632N/A ;; \
4632N/A "Power Macintosh") \
4632N/A echo ppc \
4632N/A ;; \
4632N/A *) \
4632N/A echo $(mach) \
4632N/A ;; \
4632N/A esac
4632N/A ARCH := $(shell $(archExpr) )
4632N/A ARCH_FAMILY := $(ARCH)
4632N/A
4632N/A # i586, sparc, and ppc are 32 bit, amd64 and sparc64 are 64
4632N/A # ARCH_DATA_MODEL does not exactly mean anything in universal
4632N/A # but it has to be one or the other, so pick 32
4632N/A ifneq (,$(findstring $(ARCH), i586 sparc ppc universal))
4632N/A ARCH_DATA_MODEL=32
4632N/A else
4632N/A ARCH_DATA_MODEL=64
4632N/A endif
4632N/A
4632N/A # Need to maintain the jre/lib/i386 location for 32-bit Intel
4632N/A ifeq ($(ARCH), i586)
4632N/A LIBARCH = i386
4632N/A else
4632N/A LIBARCH = $(ARCH)
4632N/A endif
4632N/A
4632N/A # Value of Java os.arch property
4632N/A ARCHPROP = $(LIBARCH)
4632N/A
4632N/A # Suffix for file bundles used in previous release
4632N/A BUNDLE_FILE_SUFFIX=.tar.gz
4632N/A # How much RAM does this machine have:
4632N/Aendif
4632N/A
0N/A# Windows with and without CYGWIN will be slightly different
0N/Aifeq ($(SYSTEM_UNAME), Windows_NT)
0N/A PLATFORM = windows
0N/Aendif
0N/Aifneq (,$(findstring CYGWIN,$(SYSTEM_UNAME)))
0N/A PLATFORM = windows
0N/A USING_CYGWIN = true
0N/A export USING_CYGWIN
3514N/A CYGPATH_CMD=cygpath -a -s -m
3514N/A # Only run "cygpath /" once in this make session.
3514N/A ifndef CYGWIN_HOME
3514N/A CYGWIN_HOME := $(shell $(CYGPATH_CMD) /)
3514N/A export CYGWIN_HOME
3514N/A endif
0N/Aendif
0N/A
0N/A# Platform settings specific to Windows
0N/Aifeq ($(PLATFORM), windows)
0N/A # Windows builds default to the appropriate for the underlaying
0N/A # architecture.
0N/A # Temporary disk area
0N/A TEMP_DISK=C:/temp
0N/A # GNU Make or MKS overrides $(PROCESSOR_ARCHITECTURE) to always
2402N/A # return "x86". Use the first word of $(PROCESSOR_IDENTIFIER) instead.
2402N/A # And sometimes PROCESSOR_IDENTIFIER is not defined at all
2402N/A # (in some restricted shells), so we use uname if we have to.
2402N/A ifeq ($(PROCESSOR_IDENTIFIER),)
3514N/A # Only run uname -m once in this make session.
3514N/A ifndef SYSTEM_UNAME_M
3514N/A SYSTEM_UNAME_M := $(shell uname -m)
3514N/A export SYSTEM_UNAME_M
3514N/A endif
3514N/A PROC_ARCH:=$(SYSTEM_UNAME_M)
2402N/A else
2402N/A PROC_ARCH:=$(word 1, $(PROCESSOR_IDENTIFIER))
2402N/A endif
2402N/A # Cover all the possibilities, MKS uname, CYGWIN uname, PROCESSOR_IDENTIFIER
2402N/A # Get: X86, X64, or IA64
2402N/A PROC_ARCH:=$(patsubst 386,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst 486,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst 586,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst 686,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst i386,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst i486,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst i586,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst i686,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst x86,X86,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst intel64,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst Intel64,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst INTEL64,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst em64t,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst EM64T,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst amd64,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst AMD64,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst 8664,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst x86_64,X64,$(PROC_ARCH))
2402N/A PROC_ARCH:=$(patsubst ia64,IA64,$(PROC_ARCH))
0N/A ifndef ARCH_DATA_MODEL
970N/A ifeq ($(PROC_ARCH),IA64)
0N/A ARCH_DATA_MODEL=64
0N/A else
970N/A ifeq ($(PROC_ARCH),X64)
0N/A ARCH_DATA_MODEL=64
0N/A else
0N/A ARCH_DATA_MODEL=32
0N/A endif
0N/A endif
0N/A endif
0N/A export ARCH_DATA_MODEL
0N/A ifeq ($(ARCH_DATA_MODEL), 64)
0N/A # If the user wants to perform a cross compile build then they must
0N/A # - set ARCH_DATA_MODEL=64 and either
0N/A # + set ARCH to ia64 or amd64, or
970N/A ifeq ($(PROC_ARCH),X64)
0N/A ARCH=amd64
0N/A else
970N/A ifeq ($(PROC_ARCH),IA64)
970N/A ARCH=ia64
970N/A endif
0N/A endif
0N/A LIBARCH=$(ARCH)
0N/A # Value of Java os.arch property
0N/A ARCHPROP=$(LIBARCH)
398N/A else
398N/A # LIBARCH is used to preserve the jre/lib/i386 directory name for 32-bit intel
398N/A ARCH=i586
398N/A LIBARCH=i386
398N/A # Value of Java os.arch property
398N/A ARCHPROP=x86
0N/A endif
0N/A ARCH_FAMILY = $(ARCH)
0N/A # Where is unwanted output to be delivered?
2324N/A # MKS uses the special file "NUL", cygwin uses the customary unix file.
2324N/A ifeq ($(USING_CYGWIN),true)
2324N/A DEV_NULL = /dev/null
2324N/A else
2324N/A DEV_NULL = NUL
2324N/A endif
0N/A export DEV_NULL
0N/A # Classpath separator
0N/A CLASSPATH_SEPARATOR = ;
0N/A # The suffix used for object file (.o for unix .obj for windows)
0N/A OBJECT_SUFFIX = obj
0N/A # The suffix applied to executables (.exe for windows, nothing for solaris)
0N/A EXE_SUFFIX = .exe
0N/A # The prefix applied to library files (lib for solaris, nothing for windows)
0N/A LIB_PREFIX=
0N/A LIBRARY_SUFFIX = dll
0N/A LIB_SUFFIX = lib
0N/A # User name determination (set _USER)
0N/A ifndef USER
0N/A ifdef USERNAME
0N/A _USER := $(USERNAME)
0N/A else
0N/A ifdef LOGNAME
0N/A _USER := $(LOGNAME)
0N/A else
0N/A _USER := $(shell id -un)
0N/A endif
0N/A endif
0N/A else
0N/A _USER:=$(USER)
0N/A endif
0N/A # Location of client/server directories
0N/A ARCH_VM_SUBDIR=jre/bin
0N/A # Suffix for file bundles used in previous release
0N/A BUNDLE_FILE_SUFFIX=.tar
0N/A # ISHIELD_TEMP_MIN is the difference of an empty C:\TEMP vs. one after a
0N/A # bundles build on windows.
0N/A ISHIELD_TEMP_MIN=250000
0N/A # How much RAM does this machine have:
422N/A ifeq ($(JDK_HAS_MEM_INFO),)
422N/A ifeq ($(USING_CYGWIN),true)
422N/A # CYGWIN has the 'free' utility
422N/A _MB_OF_MEMORY := \
422N/A $(shell free -m | grep Mem: | awk '{print $$2;}' )
118N/A else
422N/A # Windows 2000 has the mem utility, but two memory areas
422N/A # extended memory is what is beyond 1024M
422N/A _B_OF_EXT_MEMORY := \
422N/A $(shell mem 2> $(DEV_NULL) | \
422N/A grep 'total contiguous extended memory' | awk '{print $$1;}')
422N/A ifeq ($(_B_OF_EXT_MEMORY),)
422N/A _B_OF_MEMORY := \
422N/A $(shell mem 2> $(DEV_NULL) | \
422N/A grep 'total conventional memory' | awk '{print $$1;}')
422N/A else
422N/A _B_OF_MEMORY := \
422N/A $(shell expr 1048576 '+' $(_B_OF_EXT_MEMORY) 2> $(DEV_NULL))
422N/A endif
422N/A ifeq ($(_B_OF_MEMORY),)
422N/A # Windows 2003 has the systeminfo utility use it if mem doesn't work
422N/A _MB_OF_MEMORY := \
422N/A $(shell systeminfo 2> $(DEV_NULL) | \
422N/A grep 'Total Physical Memory:' | \
422N/A awk '{print $$4;}' | sed -e 's@,@@')
422N/A else
422N/A _MB_OF_MEMORY := $(shell expr $(_B_OF_MEMORY) '/' 1024 2> $(DEV_NULL))
422N/A endif
118N/A endif
422N/A ifeq ($(shell expr $(_MB_OF_MEMORY) '+' 0 2> $(DEV_NULL)), $(_MB_OF_MEMORY))
422N/A MB_OF_MEMORY := $(_MB_OF_MEMORY)
118N/A else
422N/A MB_OF_MEMORY := 512
118N/A endif
118N/A endif
0N/Aendif
0N/A
0N/A# Unix type settings (same for all unix platforms)
0N/Aifneq ($(PLATFORM), windows)
0N/A # Temporary disk area
0N/A TEMP_DISK=/tmp
0N/A # Where is unwanted output to be delivered?
0N/A DEV_NULL = /dev/null
0N/A export DEV_NULL
0N/A # Character used between entries in classpath
0N/A CLASSPATH_SEPARATOR = :
0N/A # suffix used for object file (.o for unix .obj for windows)
0N/A OBJECT_SUFFIX = o
0N/A # The suffix applied to runtime libraries
0N/A LIBRARY_SUFFIX = so
0N/A # The suffix applied to link libraries
0N/A LIB_SUFFIX = so
0N/A # The suffix applied to executables (.exe for windows, nothing for solaris)
0N/A EXE_SUFFIX =
0N/A # The prefix applied to library files (lib for solaris, nothing for windows)
0N/A LIB_PREFIX = lib
0N/A # User name determination (set _USER)
0N/A ifndef USER
0N/A ifdef LOGNAME
0N/A _USER := $(LOGNAME)
0N/A else
0N/A _USER := $(shell logname)
0N/A endif
0N/A else
0N/A _USER:=$(USER)
0N/A endif
0N/A # Location of client/server directories
0N/A ARCH_VM_SUBDIR=jre/lib/$(LIBARCH)
0N/Aendif
0N/A
4632N/A# Darwin-specific Overrides
4632N/Aifeq ($(SYSTEM_UNAME),Darwin)
4632N/A # The suffix applied to runtime libraries
4632N/A LIBRARY_SUFFIX = dylib
4632N/A # The suffix applied to link libraries
4632N/A ifeq ($(ARCH), universal)
4632N/A LIB_SUFFIX = o
4632N/A else
4632N/A LIB_SUFFIX = a
4632N/A endif
4632N/A
4632N/A ifeq ($(PLATFORM), macosx)
4632N/A ARCH_VM_SUBDIR=jre/lib
4632N/A endif
4632N/Aendif
4632N/A
118N/A# Machines with 512Mb or less of real memory are considered low memory
118N/A# build machines and adjustments will be made to prevent excessing
118N/A# system swapping during the build.
422N/Aifeq ($(JDK_HAS_MEM_INFO),)
422N/A JDK_HAS_MEM_INFO=true
422N/A export JDK_HAS_MEM_INFO
422N/A ifneq ($(MB_OF_MEMORY),)
422N/A LOW_MEMORY_MACHINE := $(shell \
422N/A if [ $(MB_OF_MEMORY) -le 512 ] ; then \
422N/A echo "true"; \
422N/A else \
422N/A echo "false"; \
422N/A fi)
4043N/A MAX_VM_MEMORY := 512
4043N/A MIN_VM_MEMORY := $(MAX_VM_MEMORY)
422N/A else
422N/A MB_OF_MEMORY := unknown
422N/A LOW_MEMORY_MACHINE := true
422N/A MAX_VM_MEMORY := 384
422N/A MIN_VM_MEMORY := 128
422N/A endif
422N/A export MB_OF_MEMORY
422N/A export LOW_MEMORY_MACHINE
422N/A export MAX_VM_MEMORY
422N/A export MIN_VM_MEMORY
118N/Aendif
118N/A
0N/A# If blanks in the username, use the first 4 words and pack them together
0N/A_USER1:=$(subst ', ,$(_USER))
0N/A_USER2:=$(subst ", ,$(_USER1))
0N/AUSER:=$(word 1,$(_USER2))$(word 2,$(_USER2))$(word 3,$(_USER2))$(word 4,$(_USER2))
0N/Aexport USER
0N/A
0N/Aexport PLATFORM
0N/Aendif
0N/A