Fri, 24 Sep 2010 16:38:05 -0700
Merge
make/common/Library.gmk | file | annotate | diff | comparison | revisions | |
make/common/Mapfile-vers.gmk | file | annotate | diff | comparison | revisions | |
make/common/internal/NativeCompileRules.gmk | file | annotate | diff | comparison | revisions | |
make/common/shared/Compiler-gcc.gmk | file | annotate | diff | comparison | revisions | |
make/common/shared/Compiler-msvc.gmk | file | annotate | diff | comparison | revisions | |
make/common/shared/Compiler-sun.gmk | file | annotate | diff | comparison | revisions | |
make/common/shared/Compiler.gmk | file | annotate | diff | comparison | revisions |
1.1 --- a/make/Makefile Thu Sep 23 17:33:23 2010 -0700 1.2 +++ b/make/Makefile Fri Sep 24 16:38:05 2010 -0700 1.3 @@ -61,7 +61,6 @@ 1.4 CLASSES_DIR = $(BUILD_DIR)/classes 1.5 GENSRC_DIR = $(BUILD_DIR)/gensrc 1.6 1.7 -BIN_DIR = $(DIST_DIR)/bin 1.8 LIB_DIR = $(DIST_DIR)/lib 1.9 1.10 #-----
2.1 --- a/make/common/Defs-linux.gmk Thu Sep 23 17:33:23 2010 -0700 2.2 +++ b/make/common/Defs-linux.gmk Fri Sep 24 16:38:05 2010 -0700 2.3 @@ -28,306 +28,10 @@ 2.4 # targeted to Linux. Should not contain any rules. 2.5 # 2.6 2.7 -# Warning: the following variables are overriden by Defs.gmk. Set 2.8 -# values will be silently ignored: 2.9 -# CFLAGS (set $(OTHER_CFLAGS) instead) 2.10 -# CPPFLAGS (set $(OTHER_CPPFLAGS) instead) 2.11 -# CXXFLAGS (set $(OTHER_CXXFLAGS) instead) 2.12 -# LDFLAGS (set $(OTHER_LDFAGS) instead) 2.13 -# LDLIBS (set $(EXTRA_LIBS) instead) 2.14 -# LDLIBS_COMMON (set $(EXTRA_LIBS) instead) 2.15 - 2.16 # Get shared JDK settings 2.17 include $(BUILDDIR)/common/shared/Defs.gmk 2.18 2.19 -# Part of INCREMENTAL_BUILD mechanism. 2.20 -# Compiler emits things like: path/file.o: file.h 2.21 -# We want something like: relative_path/file.o relative_path/file.d: file.h 2.22 -CC_DEPEND = -MM 2.23 -CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g' 2.24 - 2.25 ifndef PLATFORM_SRC 2.26 PLATFORM_SRC = $(TOPDIR)/src/solaris 2.27 endif # PLATFORM_SRC 2.28 2.29 -# platform specific include files 2.30 -PLATFORM_INCLUDE_NAME = $(PLATFORM) 2.31 -PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME) 2.32 - 2.33 -# suffix used for make dependencies files. 2.34 -DEPEND_SUFFIX = d 2.35 -# The suffix applied to the library name for FDLIBM 2.36 -FDDLIBM_SUFFIX = a 2.37 -# The suffix applied to scripts (.bat for windows, nothing for unix) 2.38 -SCRIPT_SUFFIX = 2.39 -# CC compiler object code output directive flag value 2.40 -CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required! 2.41 -CC_PROGRAM_OUTPUT_FLAG = -o #trailing blank required! 2.42 - 2.43 -# 2.44 -# Default HPI libraries. Build will build only native, unless 2.45 -# overriden at the make command line. This makes it convenient for 2.46 -# people doing, say, a pthreads port -- they can create a posix 2.47 -# directory here, and say "gnumake HPIS=posix" at the top 2.48 -# level. 2.49 -# 2.50 -HPIS = native 2.51 - 2.52 -# 2.53 -# Default optimization 2.54 -# 2.55 -CC_HIGHEST_OPT = -O3 2.56 -CC_HIGHER_OPT = -O3 2.57 -CC_LOWER_OPT = -O2 2.58 -CC_NO_OPT = 2.59 - 2.60 -ifeq ($(PRODUCT), java) 2.61 - _OPT = $(CC_HIGHER_OPT) 2.62 -else 2.63 - _OPT = $(CC_LOWER_OPT) 2.64 - CPPFLAGS_DBG += -DLOGGING 2.65 -endif 2.66 - 2.67 -# For all platforms, do not omit the frame pointer register usage. 2.68 -# We need this frame pointer to make it easy to walk the stacks. 2.69 -# This should be the default on X86, but ia64 and amd64 may not have this 2.70 -# as the default. 2.71 -CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN 2.72 -CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN 2.73 -CFLAGS_REQUIRED_ia64 += -fno-omit-frame-pointer -D_LITTLE_ENDIAN 2.74 -CFLAGS_REQUIRED_sparcv9 += -m64 -mcpu=v9 2.75 -LDFLAGS_COMMON_sparcv9 += -m64 -mcpu=v9 2.76 -CFLAGS_REQUIRED_sparc += -m32 -mcpu=v9 2.77 -LDFLAGS_COMMON_sparc += -m32 -mcpu=v9 2.78 -ifeq ($(ZERO_BUILD), true) 2.79 - CFLAGS_REQUIRED = $(ZERO_ARCHFLAG) 2.80 - ifeq ($(ZERO_ENDIANNESS), little) 2.81 - CFLAGS_REQUIRED += -D_LITTLE_ENDIAN 2.82 - endif 2.83 - LDFLAGS_COMMON += $(ZERO_ARCHFLAG) 2.84 -else 2.85 - CFLAGS_REQUIRED = $(CFLAGS_REQUIRED_$(ARCH)) 2.86 - LDFLAGS_COMMON += $(LDFLAGS_COMMON_$(ARCH)) 2.87 -endif 2.88 - 2.89 -# Add in platform specific optimizations for all opt levels 2.90 -CC_HIGHEST_OPT += $(_OPT_$(ARCH)) 2.91 -CC_HIGHER_OPT += $(_OPT_$(ARCH)) 2.92 -CC_LOWER_OPT += $(_OPT_$(ARCH)) 2.93 - 2.94 -# If NO_OPTIMIZATIONS is defined in the environment, turn all optimzations off 2.95 -ifdef NO_OPTIMIZATIONS 2.96 - CC_HIGHEST_OPT = $(CC_NO_OPT) 2.97 - CC_HIGHER_OPT = $(CC_NO_OPT) 2.98 - CC_LOWER_OPT = $(CC_NO_OPT) 2.99 -endif 2.100 - 2.101 -# 2.102 -# Selection of warning messages 2.103 -# 2.104 -GCC_INHIBIT = -Wno-unused -Wno-parentheses 2.105 -GCC_STYLE = 2.106 -GCC_WARNINGS = -W -Wall $(GCC_STYLE) $(GCC_INHIBIT) 2.107 - 2.108 -# 2.109 -# Treat compiler warnings as errors, if warnings not allowed 2.110 -# 2.111 -ifeq ($(COMPILER_WARNINGS_FATAL),true) 2.112 - GCC_WARNINGS += -Werror 2.113 -endif 2.114 - 2.115 -# 2.116 -# Misc compiler options 2.117 -# 2.118 -ifeq ($(ARCH),ppc) 2.119 - CFLAGS_COMMON = -fsigned-char 2.120 -else # ARCH 2.121 - CFLAGS_COMMON = -fno-strict-aliasing 2.122 -endif # ARCH 2.123 -PIC_CODE_LARGE = -fPIC 2.124 -PIC_CODE_SMALL = -fpic 2.125 -GLOBAL_KPIC = $(PIC_CODE_LARGE) 2.126 -ifeq ($(ARCH), amd64) 2.127 - CFLAGS_COMMON += $(GLOBAL_KPIC) $(GCC_WARNINGS) -pipe 2.128 -else 2.129 - CFLAGS_COMMON += $(GLOBAL_KPIC) $(GCC_WARNINGS) 2.130 -endif 2.131 - 2.132 -# Linux 64bit machines use Dwarf2, which can be HUGE, have fastdebug use -g1 2.133 -DEBUG_FLAG = -g 2.134 -ifeq ($(FASTDEBUG), true) 2.135 - ifeq ($(ARCH_DATA_MODEL), 64) 2.136 - DEBUG_FLAG = -g1 2.137 - endif 2.138 -endif 2.139 - 2.140 -CFLAGS_OPT = $(POPT) 2.141 -CFLAGS_DBG = $(DEBUG_FLAG) 2.142 -CFLAGS_COMMON += $(CFLAGS_REQUIRED) 2.143 - 2.144 -CXXFLAGS_COMMON = $(GLOBAL_KPIC) -DCC_NOEX $(GCC_WARNINGS) 2.145 -CXXFLAGS_OPT = $(POPT) 2.146 -CXXFLAGS_DBG = $(DEBUG_FLAG) 2.147 -CXXFLAGS_COMMON += $(CFLAGS_REQUIRED) 2.148 - 2.149 -# FASTDEBUG: Optimize the code in the -g versions, gives us a faster debug java 2.150 -ifeq ($(FASTDEBUG), true) 2.151 - CFLAGS_DBG += $(CC_LOWER_OPT) 2.152 - CXXFLAGS_DBG += $(CC_LOWER_OPT) 2.153 -endif 2.154 - 2.155 -CPP_ARCH_FLAGS = -DARCH='"$(ARCH)"' 2.156 - 2.157 -# Alpha arch does not like "alpha" defined (potential general arch cleanup issue here) 2.158 -ifneq ($(ARCH),alpha) 2.159 - CPP_ARCH_FLAGS += -D$(ARCH) 2.160 -else 2.161 - CPP_ARCH_FLAGS += -D_$(ARCH)_ 2.162 -endif 2.163 - 2.164 -CPPFLAGS_COMMON = $(CPP_ARCH_FLAGS) -DLINUX $(VERSION_DEFINES) \ 2.165 - -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -D_REENTRANT 2.166 - 2.167 -ifeq ($(ARCH_DATA_MODEL), 64) 2.168 -CPPFLAGS_COMMON += -D_LP64=1 2.169 -endif 2.170 - 2.171 -CPPFLAGS_OPT = 2.172 -CPPFLAGS_DBG = -DDEBUG 2.173 - 2.174 -ifdef LIBRARY 2.175 - # Libraries need to locate other libraries at runtime, and you can tell 2.176 - # a library where to look by way of the dynamic runpaths (RPATH or RUNPATH) 2.177 - # buried inside the .so. The $ORIGIN says to look relative to where 2.178 - # the library itself is and it can be followed with relative paths from 2.179 - # that. By default we always look in $ORIGIN, optionally we add relative 2.180 - # paths if the Makefile sets LD_RUNPATH_EXTRAS to those relative paths. 2.181 - # On Linux we add a flag -z origin, not sure if this is necessary, but 2.182 - # doesn't seem to hurt. 2.183 - # The environment variable LD_LIBRARY_PATH will over-ride these runpaths. 2.184 - # Try: 'readelf -d lib*.so' to see these settings in a library. 2.185 - # 2.186 - LDFLAGS_COMMON += -Xlinker -z -Xlinker origin -Xlinker -rpath -Xlinker \$$ORIGIN 2.187 - LDFLAGS_COMMON += $(LD_RUNPATH_EXTRAS:%=-Xlinker -z -Xlinker origin -Xlinker -rpath -Xlinker \$$ORIGIN/%) 2.188 -endif 2.189 - 2.190 -EXTRA_LIBS += -lc 2.191 - 2.192 -LDFLAGS_DEFS_OPTION = -Xlinker -z -Xlinker defs 2.193 -LDFLAGS_COMMON += $(LDFLAGS_DEFS_OPTION) 2.194 - 2.195 -# 2.196 -# -L paths for finding and -ljava 2.197 -# 2.198 -LDFLAGS_OPT = -Xlinker -O1 2.199 -LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH) 2.200 -LDFLAGS_COMMON += -Wl,-soname=$(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX) 2.201 - 2.202 -# 2.203 -# -static-libgcc is a gcc-3 flag to statically link libgcc, gcc-2.9x always 2.204 -# statically link libgcc but will print a warning with the flag. We don't 2.205 -# want the warning, so check gcc version first. 2.206 -# 2.207 -CC_VER_MAJOR := $(shell $(CC) -dumpversion | $(SED) 's/egcs-//' | $(CUT) -d'.' -f1) 2.208 -ifeq ("$(CC_VER_MAJOR)", "3") 2.209 -OTHER_LDFLAGS += -static-libgcc 2.210 -endif 2.211 - 2.212 -# Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 2.213 -# (See Rules.gmk) The gcc 5 compiler might have an option for this? 2.214 -AUTOMATIC_PCH_OPTION = 2.215 - 2.216 -# 2.217 -# Post Processing of libraries/executables 2.218 -# 2.219 -ifeq ($(VARIANT), OPT) 2.220 - ifneq ($(NO_STRIP), true) 2.221 - # Debug 'strip -g' leaves local function Elf symbols (better stack traces) 2.222 - POST_STRIP_PROCESS = $(STRIP) -g 2.223 - endif 2.224 -endif 2.225 - 2.226 -# 2.227 -# Use: ld $(LD_MAPFILE_FLAG) mapfile *.o 2.228 -# 2.229 -LD_MAPFILE_FLAG = -Xlinker --version-script -Xlinker 2.230 - 2.231 -# 2.232 -# Support for Quantify. 2.233 -# 2.234 -ifdef QUANTIFY 2.235 -QUANTIFY_CMD = quantify 2.236 -QUANTIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes 2.237 -LINK_PRE_CMD = $(QUANTIFY_CMD) $(QUANTIFY_OPTIONS) 2.238 -endif 2.239 - 2.240 -# 2.241 -# Path and option to link against the VM, if you have to. Note that 2.242 -# there are libraries that link against only -ljava, but they do get 2.243 -# -L to the -ljvm, this is because -ljava depends on -ljvm, whereas 2.244 -# the library itself should not. 2.245 -# 2.246 -VM_NAME = server 2.247 -JVMLIB = -L$(BOOTDIR)/jre/lib/$(LIBARCH)/$(VM_NAME) -ljvm 2.248 -JAVALIB = -L$(BOOTDIR)/jre/lib/$(LIBARCH) -ljava $(JVMLIB) 2.249 - 2.250 -# 2.251 -# We want to privatize JVM symbols on Solaris. This is so the user can 2.252 -# write a function called FindClass and this should not override the 2.253 -# FindClass that is inside the JVM. At this point in time we are not 2.254 -# concerned with other JNI libraries because we hope that there will 2.255 -# not be as many clashes there. 2.256 -# 2.257 -PRIVATIZE_JVM_SYMBOLS = false 2.258 - 2.259 -USE_PTHREADS = true 2.260 -override ALT_CODESET_KEY = _NL_CTYPE_CODESET_NAME 2.261 -override AWT_RUNPATH = 2.262 -override HAVE_ALTZONE = false 2.263 -override HAVE_FILIOH = false 2.264 -override HAVE_GETHRTIME = false 2.265 -override HAVE_GETHRVTIME = false 2.266 -override HAVE_SIGIGNORE = true 2.267 -override LEX_LIBRARY = -lfl 2.268 -ifeq ($(STATIC_CXX),true) 2.269 -override LIBCXX = -Wl,-Bstatic -lstdc++ -lgcc -Wl,-Bdynamic 2.270 -else 2.271 -override LIBCXX = -lstdc++ 2.272 -endif 2.273 -override LIBPOSIX4 = 2.274 -override LIBSOCKET = 2.275 -override LIBTHREAD = 2.276 -override MOOT_PRIORITIES = true 2.277 -override NO_INTERRUPTIBLE_IO = true 2.278 -override OPENWIN_HOME = /usr/X11R6 2.279 -ifeq ($(ARCH), amd64) 2.280 -override OPENWIN_LIB = $(OPENWIN_HOME)/lib64 2.281 -else 2.282 -override OPENWIN_LIB = $(OPENWIN_HOME)/lib 2.283 -endif 2.284 -override OTHER_M4FLAGS = -D__GLIBC__ -DGNU_ASSEMBLER 2.285 -override SUN_CMM_SUBDIR = 2.286 -override THREADS_FLAG = native 2.287 -override USE_GNU_M4 = true 2.288 -override USING_GNU_TAR = true 2.289 -override WRITE_LIBVERSION = false 2.290 - 2.291 -# USE_EXECNAME forces the launcher to look up argv[0] on $PATH, and put the 2.292 -# resulting resolved absolute name of the executable in the environment 2.293 -# variable EXECNAME. That executable name is then used that to locate the 2.294 -# installation area. 2.295 -override USE_EXECNAME = true 2.296 - 2.297 -# If your platform has DPS, it will have Type1 fonts too, in which case 2.298 -# it is best to enable DPS support until such time as 2D's rasteriser 2.299 -# can fully handle Type1 fonts in all cases. Default is "yes". 2.300 -# HAVE_DPS should only be "no" if the platform has no DPS headers or libs 2.301 -# DPS (Displayable PostScript) is available on Solaris machines 2.302 -HAVE_DPS = no 2.303 - 2.304 -# 2.305 -# Japanese manpages 2.306 -# 2.307 -JA_SOURCE_ENCODING = eucJP 2.308 -JA_TARGET_ENCODINGS = eucJP 2.309 -
3.1 --- a/make/common/Defs-solaris.gmk Thu Sep 23 17:33:23 2010 -0700 3.2 +++ b/make/common/Defs-solaris.gmk Fri Sep 24 16:38:05 2010 -0700 3.3 @@ -28,16 +28,6 @@ 3.4 # targeted to Solaris. Should not contain any rules. 3.5 # 3.6 3.7 -# Warning: the following variables are overridden by Defs.gmk. Set 3.8 -# values will be silently ignored: 3.9 -# CFLAGS (set $(OTHER_CFLAGS) instead) 3.10 -# CPPFLAGS (set $(OTHER_CPPFLAGS) instead) 3.11 -# CXXFLAGS (set $(OTHER_CXXFLAGS) instead) 3.12 -# LDFLAGS (set $(OTHER_LDFAGS) instead) 3.13 -# LDLIBS (set $(EXTRA_LIBS) instead) 3.14 -# LDLIBS_COMMON (set $(EXTRA_LIBS) instead) 3.15 -# LINTFLAGS (set $(OTHER_LINTFLAGS) instead) 3.16 - 3.17 # Get shared JDK settings 3.18 include $(BUILDDIR)/common/shared/Defs.gmk 3.19 3.20 @@ -45,600 +35,3 @@ 3.21 PLATFORM_SRC = $(TOPDIR)/src/solaris 3.22 endif # PLATFORM_SRC 3.23 3.24 -# platform specific include files 3.25 -PLATFORM_INCLUDE_NAME = $(PLATFORM) 3.26 -PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME) 3.27 - 3.28 -# suffix used for make dependencies files 3.29 -DEPEND_SUFFIX = d 3.30 -# suffix used for lint files 3.31 -LINT_SUFFIX = ln 3.32 -# The suffix applied to the library name for FDLIBM 3.33 -FDDLIBM_SUFFIX = a 3.34 -# The suffix applied to scripts (.bat for windows, nothing for unix) 3.35 -SCRIPT_SUFFIX = 3.36 -# CC compiler object code output directive flag value 3.37 -CC_OBJECT_OUTPUT_FLAG = -o #trailing blank required! 3.38 -CC_PROGRAM_OUTPUT_FLAG = -o #trailing blank required! 3.39 - 3.40 -# 3.41 -# Default HPI libraries. Build will build only native unless 3.42 -# overriden at the make command line. This makes it convenient for 3.43 -# people doing, say, a pthreads port -- they can create a posix 3.44 -# directory here, and say "gnumake HPIS=posix" at the top 3.45 -# level. 3.46 -# 3.47 -HPIS = native 3.48 - 3.49 -# 3.50 -# Java default optimization (-x04/-O2) etc. Applies to the VM. 3.51 -# 3.52 -ifeq ($(PRODUCT), java) 3.53 - _OPT = $(CC_HIGHER_OPT) 3.54 -else 3.55 - _OPT = $(CC_LOWER_OPT) 3.56 - CPPFLAGS_DBG += -DLOGGING -DDBINFO 3.57 -endif 3.58 - 3.59 -# 3.60 -# If -Xa is in CFLAGS_COMMON it will end up ahead of $(POPT) for the 3.61 -# optimized build, and that ordering of the flags completely freaks 3.62 -# out cc. Hence, -Xa is instead in each CFLAGS variant. 3.63 -# 3.64 -# The more unusual options to the Sun C compiler: 3.65 -# -v Stricter type checking, more error checking 3.66 -# (To turn ALL warnings into fatals, use -errwarn=%all) 3.67 -# -xstrconst Place string literals and constants in read-only area 3.68 -# (means you can't write on your string literals) 3.69 -# -xs Force debug information (stabs) into the .so or a.out 3.70 -# (makes the library/executable debuggable without the 3.71 -# .o files needing to be around, but at a space cost) 3.72 -# -g & -O If you add the -g option to the optimized compiles 3.73 -# you will get better stack retraces, the code is 3.74 -# still optimized. This includes a space cost too. 3.75 -# -xc99=%none Do NOT allow for c99 extensions to be used. 3.76 -# e.g. declarations must precede statements 3.77 -# -xCC Allow the C++ style of comments in C: // 3.78 -# Required with many of the source files. 3.79 -# -mt Assume multi-threaded (important) 3.80 -# 3.81 - 3.82 -# 3.83 -# Debug flag for C and C++ compiler 3.84 -# 3.85 -CFLAGS_DEBUG_OPTION=-g 3.86 -CXXFLAGS_DEBUG_OPTION=-g 3.87 - 3.88 -# Turn off -g if we are doing tcov build 3.89 -ifdef TCOV_BUILD 3.90 - CFLAGS_DEBUG_OPTION= 3.91 - CXXFLAGS_DEBUG_OPTION= 3.92 -endif 3.93 - 3.94 -# FASTDEBUG: Optimize the -g builds, gives us a faster debug java 3.95 -# If true adds -O to the debug compiles. This allows for any assert 3.96 -# tests to remain and debug checking. The resulting code is faster 3.97 -# but less debuggable. Stack traces are still valid, although only 3.98 -# approximate line numbers are given. Printing of local variables 3.99 -# during a debugging session is not possible, but stepping and 3.100 -# printing of global or static variables should be possible. 3.101 -# Performance/size of files should be about the same, maybe smaller. 3.102 -# 3.103 -ifeq ($(FASTDEBUG), true) 3.104 - CC_FASTDEBUG_OPT = $(CC_LOWER_OPT) 3.105 - CFLAGS_DEBUG_OPTION = -g $(CC_FASTDEBUG_OPT) 3.106 - CXXFLAGS_DEBUG_OPTION = -g0 $(CC_FASTDEBUG_OPT) 3.107 -endif 3.108 - 3.109 -CFLAGS_COMMON = -v -mt -L$(OBJDIR) -xc99=%none 3.110 -CFLAGS_COMMON += -xCC 3.111 -CFLAGS_COMMON += -errshort=tags 3.112 -CFLAGS_OPT = $(POPT) 3.113 -CFLAGS_DBG = $(CFLAGS_DEBUG_OPTION) 3.114 -CFLAGS_COMMON += -Xa $(CFLAGS_REQUIRED) 3.115 - 3.116 -# Assume MT behavior all the time (important) 3.117 -CXXFLAGS_COMMON = -mt 3.118 - 3.119 -# Assume no C++ exceptions are used 3.120 -CXXFLAGS_COMMON += -features=no%except -DCC_NOEX 3.121 - 3.122 -# For C++, these options tell it to assume nothing about locating libraries 3.123 -# either at compile time, or at runtime. Use of these options will likely 3.124 -# require the use of -L and -R options to indicate where libraries will 3.125 -# be found at compile time (-L) and at runtime (-R). 3.126 -# The /usr/lib location comes for free, so no need to specify that one. 3.127 -# Note: C is much simplier and there is no need for these options. This 3.128 -# is mostly needed to avoid dependencies on libraries in the 3.129 -# Compiler install area, also see LIBCXX and LIBM. 3.130 -CXXFLAGS_COMMON += -norunpath -xnolib 3.131 - 3.132 -# 3.133 -# Treat compiler warnings as errors, if requested 3.134 -# 3.135 -ifeq ($(COMPILER_WARNINGS_FATAL),true) 3.136 - CFLAGS_COMMON += -errwarn=%all 3.137 - CXXFLAGS_COMMON += -errwarn=%all 3.138 -endif 3.139 - 3.140 -CXXFLAGS_OPT = $(POPT) 3.141 -CXXFLAGS_DBG = $(CXXFLAGS_DEBUG_OPTION) 3.142 -CXXFLAGS_COMMON += $(CFLAGS_REQUIRED) 3.143 - 3.144 -# Add -xstrconst to the library compiles. This forces all string 3.145 -# literals into the read-only data section, which prevents them from 3.146 -# being written to and increases the runtime pages shared on the system. 3.147 -# 3.148 -ifdef LIBRARY 3.149 - CFLAGS_COMMON +=-xstrconst 3.150 -endif 3.151 - 3.152 -# Source browser database 3.153 -# 3.154 -# COMPILE_WITH_SB 3.155 -# If defined adds -xsb to compiles and creates a 3.156 -# source browsing database during compilation. 3.157 -# 3.158 -ifdef COMPILE_WITH_SB 3.159 - ifeq ($(LIBRARY), java) 3.160 - CFLAGS_DBG += -xsb 3.161 - endif 3.162 -endif 3.163 - 3.164 -# Lint Flags: 3.165 -# -Xa ANSI C plus K&R, favor ANSI rules 3.166 -# -Xarch=XXX Same as 'cc -xarch=XXX' 3.167 -# -fd report on old style func defs 3.168 -# -errchk=structarg report on 64bit struct args by value 3.169 -# -errchk=longptr64 report on 64bit to 32bit issues (ignores casts) 3.170 -# -errchk=parentheses report on suggested use of extra parens 3.171 -# -v suppress unused args 3.172 -# -x suppress unused externs 3.173 -# -u suppress extern func/vars used/defined 3.174 -# -errfmt=simple use one line errors with position info 3.175 - 3.176 -LINTFLAGS_COMMON = -Xa 3.177 -LINTFLAGS_COMMON += -fd 3.178 -LINTFLAGS_COMMON += -errchk=structarg,longptr64,parentheses 3.179 -LINTFLAGS_COMMON += -v 3.180 -LINTFLAGS_COMMON += -x 3.181 -LINTFLAGS_COMMON += -u 3.182 -LINTFLAGS_COMMON += -errfmt=simple 3.183 -LINTFLAGS_OPT = 3.184 -LINTFLAGS_DBG = 3.185 - 3.186 -# The -W0,-noglobal tells the compiler to NOT generate mangled global 3.187 -# ELF data symbols for file local static data. 3.188 -# This can break fix&continue, but we'd rather do the same compilations 3.189 -# for deliverable bits as we do for non-deliverable bits 3.190 -# Tell the compilers to never generate globalized names, all the time. 3.191 -CFLAGS_COMMON += -W0,-noglobal 3.192 - 3.193 -# Arch specific settings (determines type of .o files and instruction set) 3.194 -ifeq ($(ARCH_FAMILY), sparc) 3.195 - ifdef VIS_NEEDED 3.196 - XARCH_VALUE/32=v8plusa 3.197 - XARCH_VALUE/64=v9a 3.198 - else 3.199 - # Someday this should change to improve optimization on UltraSPARC 3.200 - # and abandon the old v8-only machines like the SPARCstation 10. 3.201 - # Indications with Mustang is that alacrity runs do not show a 3.202 - # big improvement using v8plus over v8, but other benchmarks might. 3.203 - XARCH_VALUE/32=v8 3.204 - XARCH_VALUE/64=v9 3.205 - endif 3.206 -endif 3.207 -ifeq ($(ARCH_FAMILY), i586) 3.208 - XARCH_VALUE/64=amd64 3.209 - XARCH_VALUE/32= 3.210 -endif 3.211 - 3.212 -# Arch value based on current data model being built 3.213 -XARCH_VALUE=$(XARCH_VALUE/$(ARCH_DATA_MODEL)) 3.214 -ifneq ($(XARCH_VALUE), ) 3.215 - # The actual compiler -xarch options to use 3.216 - XARCH_OPTION/32 = -xarch=$(XARCH_VALUE/32) 3.217 - XARCH_OPTION/64 = -xarch=$(XARCH_VALUE/64) 3.218 - XARCH_OPTION = $(XARCH_OPTION/$(ARCH_DATA_MODEL)) 3.219 -endif 3.220 - 3.221 -# If we have a specific -xarch value to use, add it 3.222 -ifdef XARCH_OPTION 3.223 - CFLAGS_COMMON += $(XARCH_OPTION) 3.224 - CXXFLAGS_COMMON += $(XARCH_OPTION) 3.225 - ASFLAGS_COMMON += $(XARCH_OPTION) 3.226 - EXTRA_LIBS += $(XARCH_OPTION) 3.227 - LINTFLAGS_COMMON += -Xarch=$(XARCH_VALUE) 3.228 -endif 3.229 - 3.230 -# 3.231 -# uncomment the following to build with PERTURBALOT set 3.232 -# 3.233 -# OTHER_CFLAGS += -DPERTURBALOT 3.234 -# 3.235 - 3.236 -CPPFLAGS_COMMON = -D$(ARCH_FAMILY) -D__solaris__ -D_REENTRANT 3.237 -CPPFLAGS_OPT = 3.238 -CPPFLAGS_DBG = -DDEBUG 3.239 - 3.240 -ifeq ($(ARCH_FAMILY), i586) 3.241 - # The macro _LITTLE_ENDIAN needs to be defined the same to avoid the 3.242 - # Sun C compiler warning message: warning: macro redefined: _LITTLE_ENDIAN 3.243 - # (The Solaris X86 system defines this in file /usr/include/sys/isa_defs.h). 3.244 - # Note: -Dmacro is the same as #define macro 1 3.245 - # -Dmacro= is the same as #define macro 3.246 - # 3.247 - CPPFLAGS_COMMON += -DcpuIntel -D_LITTLE_ENDIAN= -D$(LIBARCH) 3.248 - # Turn off a superfluous compiler error message on Intel 3.249 - CFLAGS_COMMON += -erroff=E_BAD_PRAGMA_PACK_VALUE 3.250 -endif 3.251 - 3.252 -# Java memory management is based on memory mapping by default, but a 3.253 -# system only assuming malloc/free can be built by adding -DUSE_MALLOC 3.254 - 3.255 -CPPFLAGS_COMMON += -DTRACING -DMACRO_MEMSYS_OPS -DBREAKPTS 3.256 -CPPFLAGS_OPT += -DTRIMMED 3.257 - 3.258 -LDFLAGS_DEFS_OPTION = -z defs 3.259 -LDFLAGS_COMMON += $(LDFLAGS_DEFS_OPTION) 3.260 - 3.261 -# 3.262 -# -L paths for finding and -ljava 3.263 -# 3.264 -LDFLAGS_COMMON += -L$(LIBDIR)/$(LIBARCH) 3.265 -LDFLAGS_OPT = 3.266 -LDFLAGS_DBG = 3.267 - 3.268 -# 3.269 -# We never really want the incremental linker, ever 3.270 -# The -xildoff option tells Sun's compilers to NOT use incremental linker 3.271 -# 3.272 -LDFLAGS_COMMON += -xildoff 3.273 - 3.274 -ifdef LIBRARY 3.275 - # Libraries need to locate other libraries at runtime, and you can tell 3.276 - # a library where to look by way of the dynamic runpaths (RPATH or RUNPATH) 3.277 - # buried inside the .so. The $ORIGIN says to look relative to where 3.278 - # the library itself is and it can be followed with relative paths from 3.279 - # that. By default we always look in $ORIGIN, optionally we add relative 3.280 - # paths if the Makefile sets LD_RUNPATH_EXTRAS to those relative paths. 3.281 - # The environment variable LD_LIBRARY_PATH will over-ride these runpaths. 3.282 - # Try: 'dump -Lv lib*.so' to see these settings in a library. 3.283 - # 3.284 - LDFLAGS_COMMON += -R\$$ORIGIN 3.285 - LDFLAGS_COMMON += $(LD_RUNPATH_EXTRAS:%=-R\$$ORIGIN/%) 3.286 -endif 3.287 - 3.288 -EXTRA_LIBS += -lc 3.289 - 3.290 -# Postprocessing is done on the images directories only 3.291 -# 3.292 -ifeq ($(VARIANT), OPT) 3.293 - ifeq ($(PARTIAL_GPROF), true) 3.294 - NO_STRIP = true 3.295 - endif 3.296 - ifeq ($(GPROF), true) 3.297 - NO_STRIP = true 3.298 - endif 3.299 - ifneq ($(NO_STRIP), true) 3.300 - # Debug 'strip -x' leaves local function Elf symbols (better stack traces) 3.301 - POST_STRIP_PROCESS = $(STRIP) -x 3.302 - endif 3.303 -endif 3.304 -POST_MCS_PROCESS=$(MCS) -d -a "JDK $(FULL_VERSION)" 3.305 - 3.306 -# 3.307 -# Sun C compiler will take -M and pass it on to ld. 3.308 -# Usage: ld $(LD_MAPFILE_FLAG) mapfile *.o 3.309 -# 3.310 -ifeq ($(CC_VERSION),gcc) 3.311 -LD_MAPFILE_FLAG = -Xlinker -M -Xlinker 3.312 -else 3.313 -LD_MAPFILE_FLAG = -M 3.314 -endif 3.315 - 3.316 -# 3.317 -# Variables globally settable from the make command line (default 3.318 -# values in brackets): 3.319 -# GPROF (false) 3.320 -# Eg: % gnumake GPROF=true 3.321 -GPROF = false 3.322 -ifeq ($(GPROF), true) 3.323 - CFLAGS_COMMON += -DGPROF -xpg 3.324 - EXTRA_LIBS += -xpg 3.325 -endif 3.326 - 3.327 -# PARTIAL_GPROF is to be used ONLY during compilation - it should not 3.328 -# appear during linking of libraries or programs. It also should 3.329 -# prevent linking with -z defs to allow a symbol to remain undefined. 3.330 -# 3.331 -PARTIAL_GPROF = false 3.332 -ifeq ($(PARTIAL_GPROF), true) 3.333 - CFLAGS_GPROF += -xpg 3.334 - LDFLAGS_DEFS_OPTION = -z nodefs 3.335 -endif 3.336 - 3.337 -# 3.338 -# For a TCOV build we add in the TCOV_OPTION 3.339 -# 3.340 -ifdef TCOV_BUILD 3.341 - TCOV_OPTION = -xprofile=tcov 3.342 - LDFLAGS_COMMON += $(TCOV_OPTION) -Kpic 3.343 - CFLAGS_COMMON += $(TCOV_OPTION) 3.344 - CXXFLAGS_COMMON += $(TCOV_OPTION) 3.345 - EXTRA_LIBS += $(TCOV_OPTION) 3.346 - LDNOMAP=true 3.347 -endif 3.348 - 3.349 -# 3.350 -# Solaris only uses native threads. 3.351 -# 3.352 -THREADS_FLAG= native 3.353 -THREADS_DIR= threads 3.354 - 3.355 -# 3.356 -# Support for Quantify. 3.357 -# 3.358 -ifdef QUANTIFY 3.359 - QUANTIFY_CMD = quantify 3.360 - QUANTIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes 3.361 - LINK_PRE_CMD = $(QUANTIFY_CMD) $(QUANTIFY_OPTIONS) 3.362 - ifdef LIBRARY 3.363 - CFLAGS_COMMON += -K PIC 3.364 - endif 3.365 -endif 3.366 - 3.367 -# 3.368 -# Support for Purify. 3.369 -# 3.370 -ifdef PURIFY 3.371 - PURIFY_CMD = /net/suntools.eng/export/tools/sparc/bin/purify 3.372 - PURIFY_OPTIONS = -cache-dir=/tmp/quantify -always-use-cache-dir=yes 3.373 - LINK_PRE_CMD = $(PURIFY_CMD) $(PURIFY_OPTIONS) 3.374 - ifdef LIBRARY 3.375 - CFLAGS_COMMON += -K PIC 3.376 - endif 3.377 -endif 3.378 - 3.379 -# 3.380 -# Different "levels" of optimization. 3.381 -# 3.382 -ifeq ($(CC_VERSION),gcc) 3.383 - CC_HIGHEST_OPT = -O3 3.384 - CC_HIGHER_OPT = -O3 3.385 - CC_LOWER_OPT = -O2 3.386 - CFLAGS_REQUIRED_i586 += -fno-omit-frame-pointer 3.387 - CFLAGS_REQUIRED_amd64 += -fno-omit-frame-pointer 3.388 - # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 3.389 - # (See Rules.gmk) May need to wait for gcc 5? 3.390 - AUTOMATIC_PCH_OPTION = 3.391 -else 3.392 - # Highest could be -xO5, but indications are that -xO5 should be reserved 3.393 - # for a per-file use, on sources with known performance impacts. 3.394 - CC_HIGHEST_OPT = -xO4 3.395 - CC_HIGHER_OPT = -xO4 3.396 - CC_LOWER_OPT = -xO2 3.397 - # 3.398 - # WARNING: Use of _OPT=$(CC_HIGHEST_OPT) in your Makefile needs to be 3.399 - # done with care, there are some assumptions below that need to 3.400 - # be understood about the use of pointers, and IEEE behavior. 3.401 - # 3.402 - # Use non-standard floating point mode (not IEEE 754) 3.403 - CC_HIGHEST_OPT += -fns 3.404 - # Do some simplification of floating point arithmetic (not IEEE 754) 3.405 - CC_HIGHEST_OPT += -fsimple 3.406 - # Use single precision floating point with 'float' 3.407 - CC_HIGHEST_OPT += -fsingle 3.408 - # Assume memory references via basic pointer types do not alias 3.409 - # (Source with excessing pointer casting and data access with mixed 3.410 - # pointer types are not recommended) 3.411 - CC_HIGHEST_OPT += -xalias_level=basic 3.412 - # Use intrinsic or inline versions for math/std functions 3.413 - # (If you expect perfect errno behavior, do not use this) 3.414 - CC_HIGHEST_OPT += -xbuiltin=%all 3.415 - # Loop data dependency optimizations (need -xO3 or higher) 3.416 - CC_HIGHEST_OPT += -xdepend 3.417 - # Pointer parameters to functions do not overlap 3.418 - # (Similar to -xalias_level=basic usage, but less obvious sometimes. 3.419 - # If you pass in multiple pointers to the same data, do not use this) 3.420 - CC_HIGHEST_OPT += -xrestrict 3.421 - # Inline some library routines 3.422 - # (If you expect perfect errno behavior, do not use this) 3.423 - CC_HIGHEST_OPT += -xlibmil 3.424 - # Use optimized math routines 3.425 - # (If you expect perfect errno behavior, do not use this) 3.426 - # Can cause undefined external on Solaris 8 X86 on __sincos, removing for now 3.427 - # CC_HIGHEST_OPT += -xlibmopt 3.428 - ifeq ($(ARCH_FAMILY), sparc) 3.429 - # Assume at most 8byte alignment, raise SIGBUS on error 3.430 - ### Presents an ABI issue with customer JNI libs? 3.431 - ####CC_HIGHEST_OPT += -xmemalign=8s 3.432 - # Automatic prefetch instructions, explicit prefetch macros 3.433 - CC_HIGHEST_OPT += -xprefetch=auto,explicit 3.434 - # Pick ultra as the chip to optimize to 3.435 - CC_HIGHEST_OPT += -xchip=ultra 3.436 - endif 3.437 - ifeq ($(ARCH), i586) 3.438 - # Pick pentium as the chip to optimize to 3.439 - CC_HIGHEST_OPT += -xchip=pentium 3.440 - endif 3.441 - ifdef LIBRARY 3.442 - # The Solaris CBE (Common Build Environment) requires that the use 3.443 - # of appl registers be disabled when compiling a public library (or 3.444 - # a library that's loaded by a public library) on sparc. 3.445 - CFLAGS_REQUIRED_sparc += -xregs=no%appl 3.446 - CFLAGS_REQUIRED_sparcv9 += -xregs=no%appl 3.447 - endif 3.448 - ifeq ($(shell $(EXPR) $(CC_VER) \> 5.6), 1) 3.449 - # Do NOT use the frame pointer register as a general purpose opt register 3.450 - CFLAGS_REQUIRED_i586 += -xregs=no%frameptr 3.451 - CFLAGS_REQUIRED_amd64 += -xregs=no%frameptr 3.452 - # We MUST allow data alignment of 4 for sparc V8 (32bit) 3.453 - # Presents an ABI issue with customer JNI libs? We must be able to 3.454 - # to handle 4byte aligned objects? (rare occurance, but possible?) 3.455 - CFLAGS_REQUIRED_sparc += -xmemalign=4s 3.456 - endif 3.457 - # Just incase someone trys to use the SOS9 compilers 3.458 - ifeq ($(CC_VER), 5.6) 3.459 - # We MUST allow data alignment of 4 for sparc (sparcv9 is ok at 8s) 3.460 - CFLAGS_REQUIRED_sparc += -xmemalign=4s 3.461 - endif 3.462 - # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 3.463 - # (See Rules.gmk) The SS11 -xpch=auto* options appear to be broken. 3.464 - AUTOMATIC_PCH_OPTION = 3.465 -endif 3.466 -CC_NO_OPT = 3.467 - 3.468 -# If NO_OPTIMIZATIONS is defined in the environment, turn all optimzations off 3.469 -ifdef NO_OPTIMIZATIONS 3.470 - CC_HIGHEST_OPT = $(CC_NO_OPT) 3.471 - CC_HIGHER_OPT = $(CC_NO_OPT) 3.472 - CC_LOWER_OPT = $(CC_NO_OPT) 3.473 -endif 3.474 - 3.475 -# Flags required all the time 3.476 -CFLAGS_REQUIRED = $(CFLAGS_REQUIRED_$(ARCH)) 3.477 - 3.478 -# Add processor specific options for optimizations 3.479 -CC_HIGHEST_OPT += $(_OPT_$(ARCH)) 3.480 -CC_HIGHER_OPT += $(_OPT_$(ARCH)) 3.481 -CC_LOWER_OPT += $(_OPT_$(ARCH)) 3.482 - 3.483 -# Secret compiler optimization options that should be in the above macros 3.484 -# but since they differ in format from C to C++, are added into the C or 3.485 -# C++ specific macros for compiler flags. 3.486 -# 3.487 -# On i586 we need to tell the code generator to ALWAYS use a 3.488 -# frame pointer. 3.489 -ifeq ($(ARCH_FAMILY), i586) 3.490 - # Note that in 5.7, this is done with -xregs=no%frameptr 3.491 - ifeq ($(CC_VER), 5.5) 3.492 - # It's not exactly clear when this optimization kicks in, the 3.493 - # current assumption is -xO4 or greater and for C++ with 3.494 - # the -features=no%except option and -xO4 and greater. 3.495 - # Bottom line is, we ALWAYS want a frame pointer! 3.496 - CXXFLAGS_OPT += -Qoption ube -Z~B 3.497 - CFLAGS_OPT += -Wu,-Z~B 3.498 - ifeq ($(FASTDEBUG), true) 3.499 - CXXFLAGS_DBG += -Qoption ube -Z~B 3.500 - CFLAGS_DBG += -Wu,-Z~B 3.501 - endif 3.502 - endif 3.503 -endif 3.504 -# 3.505 -# Optimizer for sparc needs to be told not to do certain things 3.506 -# related to frames or save instructions. 3.507 -ifeq ($(ARCH_FAMILY), sparc) 3.508 - # NOTE: Someday the compilers will provide a high-level option for this. 3.509 - # Use save instructions instead of add instructions 3.510 - # This was an optimization starting in SC5.0 that made it hard for us to 3.511 - # find the "save" instruction (which got turned into an "add") 3.512 - CXXFLAGS_OPT += -Qoption cg -Qrm-s 3.513 - CFLAGS_OPT += -Wc,-Qrm-s 3.514 - ifeq ($(FASTDEBUG), true) 3.515 - CXXFLAGS_DBG += -Qoption cg -Qrm-s 3.516 - CFLAGS_DBG += -Wc,-Qrm-s 3.517 - endif 3.518 - # 3.519 - # NOTE: Someday the compilers will provide a high-level option for this. 3.520 - # Don't allow tail call code optimization. Started in SC5.0. 3.521 - # We don't like code of this form: 3.522 - # save 3.523 - # <code> 3.524 - # call foo 3.525 - # restore 3.526 - # because we can't tell if the method will have a stack frame 3.527 - # and register windows or not. 3.528 - CXXFLAGS_OPT += -Qoption cg -Qiselect-T0 3.529 - CFLAGS_OPT += -Wc,-Qiselect-T0 3.530 - ifeq ($(FASTDEBUG), true) 3.531 - CXXFLAGS_DBG += -Qoption cg -Qiselect-T0 3.532 - CFLAGS_DBG += -Wc,-Qiselect-T0 3.533 - endif 3.534 -endif 3.535 - 3.536 -# 3.537 -# Path and option to link against the VM, if you have to. Note that 3.538 -# there are libraries that link against only -ljava, but they do get 3.539 -# -L to the -ljvm, this is because -ljava depends on -ljvm, whereas 3.540 -# the library itself should not. 3.541 -# 3.542 -VM_NAME = server 3.543 -JVMLIB = -L$(BOOTDIR)/jre/lib/$(LIBARCH)/server -ljvm 3.544 -JAVALIB = 3.545 - 3.546 -# Part of INCREMENTAL_BUILD mechanism. 3.547 -# Compiler emits things like: path/file.o: file.h 3.548 -# We want something like: relative_path/file.o relative_path/file.d: file.h 3.549 -# In addition on Solaris, any include file starting with / is deleted, 3.550 -# this gets rid of things like /usr/include files, which never change. 3.551 -CC_DEPEND = -xM1 3.552 -CC_DEPEND_FILTER = $(SED) -e '/:[ ]*[/]/d' -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)& $(dir $@)$*.$(DEPEND_SUFFIX)!g' | $(SORT) -u 3.553 - 3.554 -# Location of openwin libraries (do we really need this anymore?) 3.555 -OPENWIN_HOME = /usr/openwin 3.556 -OPENWIN_LIB = $(OPENWIN_HOME)/lib$(ISA_DIR) 3.557 - 3.558 -# Runtime graphics library search paths... 3.559 -OPENWIN_RUNTIME_LIB = /usr/openwin/lib$(ISA_DIR) 3.560 -AWT_RUNPATH = -R/usr/dt/lib$(ISA_DIR) -R$(OPENWIN_RUNTIME_LIB) 3.561 - 3.562 -# C++ Runtime library (libCrun.so), use instead of -lCrun. 3.563 -# Originally used instead of -lCrun to guarantee use of the system 3.564 -# .so version and not the .a or .so that came with the compilers. 3.565 -# With the newer compilers this could probably change back to -lCrun but 3.566 -# in general this is ok to continue to do. 3.567 -LIBCXX = /usr/lib$(ISA_DIR)/libCrun.so.1 3.568 - 3.569 -# Math Library (libm.so), do not use -lm. 3.570 -# There might be two versions of libm.so on the build system: 3.571 -# libm.so.1 and libm.so.2, and we want libm.so.1. 3.572 -# Depending on the Solaris release being used to build with, 3.573 -# /usr/lib/libm.so could point at a libm.so.2, so we are 3.574 -# explicit here so that the libjvm.so you have built will work on an 3.575 -# older Solaris release that might not have libm.so.2. 3.576 -# This is a critical factor in allowing builds on Solaris 10 or newer 3.577 -# to run on Solaris 8 or 9. 3.578 -# 3.579 -# Note: Historically there was also a problem picking up a static version 3.580 -# of libm.a from the compiler area, but that problem has gone away 3.581 -# with the newer compilers. Use of libm.a would cause .so bloat. 3.582 -# 3.583 -LIBM = /usr/lib$(ISA_DIR)/libm.so.1 3.584 - 3.585 -# Socket library 3.586 -LIBSOCKET = -lsocket 3.587 - 3.588 -# GLOBAL_KPIC: If set means all libraries are PIC, position independent code 3.589 -# EXCEPT for select compiles 3.590 -# If a .o file is compiled non-PIC then it should be forced 3.591 -# into the RW data segment with a mapfile option. This is done 3.592 -# with object files which generated from .s files. 3.593 -# The -ztext enforces that no relocations remain in the text segment 3.594 -# so that it remains purely read-only for optimum system performance. 3.595 -# Some libraries may use a smaller size (13bit -Kpic) on sparc instead of 3.596 -# (32 bit -KPIC) and will override GLOBAL_KPIC appropriately. 3.597 -# 3.598 -PIC_CODE_LARGE = -KPIC 3.599 -PIC_CODE_SMALL = -Kpic 3.600 -ifndef TCOV_BUILD 3.601 - GLOBAL_KPIC = $(PIC_CODE_LARGE) 3.602 - CXXFLAGS_COMMON += $(GLOBAL_KPIC) 3.603 - CFLAGS_COMMON += $(GLOBAL_KPIC) 3.604 - LDFLAGS_COMMON += -ztext 3.605 -endif # TCOV_BUILD 3.606 - 3.607 -# If your platform has DPS, it will have Type1 fonts too, in which case 3.608 -# it is best to enable DPS support until such time as 2D's rasteriser 3.609 -# can fully handle Type1 fonts in all cases. Default is "yes". 3.610 -# HAVE_DPS should only be "no" if the platform has no DPS headers or libs 3.611 -# DPS (Displayable PostScript) is available on Solaris machines 3.612 - 3.613 -HAVE_DPS = yes 3.614 - 3.615 -# 3.616 -# Japanese manpages 3.617 -# 3.618 -JA_SOURCE_ENCODING = eucJP 3.619 -JA_TARGET_ENCODINGS = eucJP UTF-8 PCK 3.620 -
4.1 --- a/make/common/Defs-windows.gmk Thu Sep 23 17:33:23 2010 -0700 4.2 +++ b/make/common/Defs-windows.gmk Fri Sep 24 16:38:05 2010 -0700 4.3 @@ -31,363 +31,7 @@ 4.4 # Get shared JDK settings 4.5 include $(BUILDDIR)/common/shared/Defs.gmk 4.6 4.7 -# CC compiler object code output directive flag value 4.8 -CC_OBJECT_OUTPUT_FLAG = -Fo 4.9 -CC_PROGRAM_OUTPUT_FLAG = -Fe 4.10 - 4.11 -# The suffix applied to the library name for FDLIBM 4.12 -FDDLIBM_SUFFIX = lib 4.13 -# The suffix applied to scripts (.bat for windows, nothing for unix) 4.14 -SCRIPT_SUFFIX = .bat 4.15 - 4.16 -HPIS = windows 4.17 -# LIB_LOCATION, which for windows identifies where .exe files go, may be 4.18 -# set by each GNUmakefile. The default is BINDIR. 4.19 -ifndef LIB_LOCATION 4.20 - LIB_LOCATION = $(BINDIR) 4.21 -endif # LIB_LOCATION 4.22 - 4.23 ifndef PLATFORM_SRC 4.24 PLATFORM_SRC = $(TOPDIR)/src/windows 4.25 endif # PLATFORM_SRC 4.26 4.27 -# for backwards compatability, the old "win32" is used here instead of 4.28 -# the more proper "windows" 4.29 -PLATFORM_INCLUDE_NAME = win32 4.30 -PLATFORM_INCLUDE = $(INCLUDEDIR)/$(PLATFORM_INCLUDE_NAME) 4.31 - 4.32 -# The following DLL's are considered MS runtime libraries and should 4.33 -# not to be REBASEd, see deploy/make/common/Release.gmk. 4.34 -# msvcrt.dll, msvcrnn.dll [msvcr71 or msvcr80 or msvcr90] : Microsoft runtimes 4.35 -MS_RUNTIME_LIBRARIES = msvcrt.dll 4.36 -MSVCRNN_DLL = 4.37 -ifeq ($(ARCH_DATA_MODEL), 32) 4.38 - ifeq ($(COMPILER_VERSION), VS2003) 4.39 - MSVCRNN_DLL = msvcr71.dll 4.40 - MSVCPNN_DLL = msvcp71.dll 4.41 - MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL) 4.42 - endif 4.43 - ifeq ($(COMPILER_VERSION), VS2005) 4.44 - MSVCRNN_DLL = msvcr80.dll 4.45 - MSVCPNN_DLL = msvcp80.dll 4.46 - MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL) 4.47 - endif 4.48 - ifeq ($(COMPILER_VERSION), VS2008) 4.49 - MSVCRNN_DLL = msvcr90.dll 4.50 - MSVCPNN_DLL = msvcp90.dll 4.51 - MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL) 4.52 - endif 4.53 - ifeq ($(COMPILER_VERSION), VS2010) 4.54 - MSVCRNN_DLL = msvcr100.dll 4.55 - MSVCPNN_DLL = msvcp100.dll 4.56 - MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL) 4.57 - endif 4.58 -endif 4.59 - 4.60 -# C Compiler flag definitions 4.61 - 4.62 -# 4.63 -# Default optimization 4.64 -# 4.65 -ifeq ($(CC_VERSION),msvc) 4.66 - # Visual Studio .NET 2003 or VS2003 compiler option definitions: 4.67 - # -O1 Favors reduced size over speed (-Og -Os -Oy -Ob2 -Gs -GF -Gy) 4.68 - # -O2 Favors speed over reduced size (-Og -Oi -Ot -Oy -Ob2 -Gs -GF -Gy) 4.69 - # -Ox Full optimization (use -O2) (-Og -Oi -Ot -Oy -Ob2) 4.70 - # (Removed in Visual Studio 2005 or VS2005) 4.71 - # -Ob2 More aggressive inlining 4.72 - # -Og Global optimizations 4.73 - # -Oi Replace some functions with intrinsic or special forms 4.74 - # -Op Improve floating point calculations (disables some optimizations) 4.75 - # (Replaced with -fp:precise in VS2005, /Op is default now) 4.76 - # -Os Favor small code 4.77 - # -Ot Favor faster code 4.78 - # -Oy Frame pointer omission 4.79 - # -GB Optimize for pentium (old VC6 option?) 4.80 - # -G6 VS2003 version of -GB? 4.81 - # -GF Pool strings in read-only memory 4.82 - # -Gf Pool strings in read-write memory (the default) 4.83 - # -Gs Controls stack probess 4.84 - # -GS Adds buffer overflow checks on stacks 4.85 - # (Default in VS2005) 4.86 - # -GX Enables exception handling 4.87 - # (Replaced with /EHsc in VS2005) 4.88 - # -Gy Function level linking only 4.89 - # 4.90 - # NOTE: With VC6, -Ox included -Gs. 4.91 - # NOTE: With VC6, -Ox, -O1, and -O2 used -Ob1, not -Ob2. 4.92 - # NOTE: With VC6, -O1 and -O2 used -Gf, not -GF. 4.93 - # 4.94 - ifeq ($(COMPILER_VERSION), VC6) 4.95 - # VC6 (6.2) msvc compiler (the way Tiger and early Mustang were built) 4.96 - # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 4.97 - AUTOMATIC_PCH_OPTION = 4.98 - GX_OPTION = -GX 4.99 - ifeq ($(ARCH_DATA_MODEL), 32) 4.100 - CC_HIGHEST_OPT = -Ox -Gy -Os -GB 4.101 - CC_HIGHER_OPT = -Ox -Gy -Os -GB 4.102 - CC_LOWER_OPT = -Ox -Gy -Os -GB 4.103 - else 4.104 - CC_HIGHEST_OPT = -Ox -Gy -Op 4.105 - CC_HIGHER_OPT = -Ox -Gy -Op 4.106 - CC_LOWER_OPT = -Ox -Gy -Op 4.107 - endif 4.108 - endif 4.109 - ifeq ($(COMPILER_VERSION), VS2003) 4.110 - # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 4.111 - AUTOMATIC_PCH_OPTION = -YX 4.112 - # Also known as VC7 compiler 4.113 - GX_OPTION = -GX 4.114 - ifeq ($(ARCH_DATA_MODEL), 32) 4.115 - # Lowered opt level to try and reduce footprint, dll size especially. 4.116 - # Was: CC_HIGHEST_OPT = -O2 -G6 4.117 - # Was: CC_HIGHER_OPT = -O2 4.118 - CC_HIGHEST_OPT = -O2 4.119 - CC_HIGHER_OPT = -O1 4.120 - CC_LOWER_OPT = -O1 4.121 - else 4.122 - CC_HIGHEST_OPT = -O2 -Op 4.123 - CC_HIGHER_OPT = -O2 -Op 4.124 - CC_LOWER_OPT = -O1 -Op 4.125 - endif 4.126 - endif 4.127 - ifeq ($(COMPILER_VERSION), VS2005) 4.128 - # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 4.129 - AUTOMATIC_PCH_OPTION = 4.130 - # VS2005 compiler, only with Platform SDK right now? 4.131 - GX_OPTION = -EHsc 4.132 - ifeq ($(ARCH_DATA_MODEL), 32) 4.133 - CC_HIGHEST_OPT = -O2 4.134 - CC_HIGHER_OPT = -O1 4.135 - CC_LOWER_OPT = -O1 4.136 - else 4.137 - CC_HIGHEST_OPT = -O2 4.138 - CC_HIGHER_OPT = -O1 4.139 - CC_LOWER_OPT = -O1 4.140 - endif 4.141 - endif 4.142 - ifeq ($(COMPILER_VERSION), VS2008) 4.143 - # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 4.144 - AUTOMATIC_PCH_OPTION = 4.145 - GX_OPTION = -EHsc 4.146 - ifeq ($(ARCH_DATA_MODEL), 32) 4.147 - CC_HIGHEST_OPT = -O2 4.148 - CC_HIGHER_OPT = -O1 4.149 - CC_LOWER_OPT = -O1 4.150 - else 4.151 - CC_HIGHEST_OPT = -O2 4.152 - CC_HIGHER_OPT = -O1 4.153 - CC_LOWER_OPT = -O1 4.154 - endif 4.155 - endif 4.156 - ifeq ($(COMPILER_VERSION), VS2010) 4.157 - # Automatic precompiled header option to use (if COMPILE_APPROACH=batch) 4.158 - AUTOMATIC_PCH_OPTION = 4.159 - GX_OPTION = -EHsc 4.160 - ifeq ($(ARCH_DATA_MODEL), 32) 4.161 - CC_HIGHEST_OPT = -O2 4.162 - CC_HIGHER_OPT = -O1 4.163 - CC_LOWER_OPT = -O1 4.164 - else 4.165 - CC_HIGHEST_OPT = -O2 4.166 - CC_HIGHER_OPT = -O1 4.167 - CC_LOWER_OPT = -O1 4.168 - endif 4.169 - endif 4.170 - CC_NO_OPT = -Od 4.171 -else # CC_VERSION 4.172 - # GCC not supported, but left for historical reference... 4.173 - CC_HIGHEST_OPT = -O3 4.174 - CC_HIGHER_OPT = -O2 4.175 - CC_LOWER_OPT = -O2 4.176 - CC_NO_OPT = 4.177 -endif 4.178 - 4.179 -# If NO_OPTIMIZATIONS is defined in the environment, turn all optimzations off 4.180 -ifdef NO_OPTIMIZATIONS 4.181 - CC_HIGHEST_OPT = $(CC_NO_OPT) 4.182 - CC_HIGHER_OPT = $(CC_NO_OPT) 4.183 - CC_LOWER_OPT = $(CC_NO_OPT) 4.184 -endif 4.185 - 4.186 -ifeq ($(PRODUCT), java) 4.187 - _OPT = $(CC_HIGHER_OPT) 4.188 -else 4.189 - _OPT = $(CC_LOWER_OPT) 4.190 -endif 4.191 - 4.192 -# Select the runtime support library carefully, need to be consistent 4.193 -# 4.194 -# VS2003 compiler option definitions: 4.195 -# -MD Use dynamic multi-threaded runtime library 4.196 -# -MDd Use debug version (don't use, doesn't mix with -MD DLL's) 4.197 -# -MT Use static multi-threaded runtime library (-ML is going away) 4.198 -# -MTd Use static debug version (better than -MDd, no runtime issues) 4.199 -# -D_DEBUG Change use of malloc/free/etc to use special debug ones (-MTd) 4.200 -# 4.201 -# NOTE: We also will use /D _STATIC_CPPLIB so we don't need msvcpnn.dll 4.202 -# 4.203 -ifeq ($(MS_RUNTIME_STATIC),true) 4.204 - MS_RUNTIME_OPTION=-MT 4.205 -else 4.206 - MS_RUNTIME_OPTION=-MD 4.207 -endif 4.208 -# The _DEBUG macro option (changes things like malloc to use debug version) 4.209 -MS_RUNTIME_DEBUG_OPTION= 4.210 -MS_RC_DEBUG_OPTION= 4.211 -# Externally set environment variable can force any build to use the debug vers 4.212 -ifeq ($(MFC_DEBUG), true) 4.213 - ifeq ($(MS_RUNTIME_STATIC),true) 4.214 - MS_RUNTIME_OPTION=-MTd 4.215 - else 4.216 - # This MS debugging flag forces a dependence on the debug 4.217 - # version of the runtime library (MSVCRTD.DLL), as does -MDd. 4.218 - # We cannot re-distribute this debug runtime. 4.219 - MS_RUNTIME_OPTION=-MDd 4.220 - endif 4.221 - MS_RUNTIME_DEBUG_OPTION= -D_DEBUG 4.222 - MS_RC_DEBUG_OPTION= -d _DEBUG 4.223 -endif 4.224 - 4.225 -# Always add _STATIC_CPPLIB definition 4.226 -STATIC_CPPLIB_OPTION = /D _STATIC_CPPLIB 4.227 -MS_RUNTIME_OPTION += $(STATIC_CPPLIB_OPTION) 4.228 - 4.229 -ifeq ($(CC_VERSION),msvc) 4.230 - # VS2003 compiler option definitions: 4.231 - # -Zi Cause *.pdb file to be created, full debug information 4.232 - # -Z7 Full debug inside the .obj, no .pdb 4.233 - # -Zd Basic debug, no local variables? In the .obj 4.234 - # -Zl Don't add runtime library name to obj file? 4.235 - # -Od Turns off optimization and speeds compilation 4.236 - # -YX -Fp/.../foobar.pch Use precompiled headers (try someday?) 4.237 - # -nologo Don't print out startup message 4.238 - # /D _STATIC_CPPLIB 4.239 - # Use static link for the C++ runtime (so msvcpnn.dll not needed) 4.240 - # 4.241 - CFLAGS_COMMON += -Zi -nologo 4.242 - CFLAGS_OPT = $(POPT) 4.243 - CFLAGS_DBG = -Od $(MS_RUNTIME_DEBUG_OPTION) 4.244 - 4.245 - # Starting from VS2005 the wchar_t is handled as a built-in C/C++ data type 4.246 - # by default. However, we expect the wchar_t to be a typedef to the 4.247 - # unsigned short data type. The -Zc:wchar_t- option restores the old 4.248 - # behavior (as seen in VS2003) to avoid massive code modifications. 4.249 - # When/if our code will be "C/C++ Standard"-compliant (at least in the area 4.250 - # of handling the wchar_t type), the option won't be necessary. 4.251 - ifeq ($(ARCH_DATA_MODEL), 32) 4.252 - CFLAGS_VS2005 += -Zc:wchar_t- 4.253 - else 4.254 - # The 64bit Platform SDK we use (April 2005) doesn't like this option 4.255 - ifneq ($(CC_VER), 14.00.40310.41) 4.256 - CFLAGS_VS2005 += -Zc:wchar_t- 4.257 - endif 4.258 - endif 4.259 - 4.260 - # All builds get the same runtime setting 4.261 - CFLAGS_COMMON += $(MS_RUNTIME_OPTION) $(CFLAGS_$(COMPILER_VERSION)) 4.262 - 4.263 - 4.264 - LDEBUG = /debug 4.265 - 4.266 - ifeq ($(VTUNE_SUPPORT), true) 4.267 - OTHER_CFLAGS = -Z7 -Ox 4.268 - LDEBUG += /pdb:NONE 4.269 - endif 4.270 - 4.271 - # The new Platform SDK and VS2005 has /GS as a default and requires 4.272 - # bufferoverflowU.lib on the link command line, otherwise 4.273 - # we get missing __security_check_cookie externals at link time. 4.274 - BUFFEROVERFLOWLIB = bufferoverflowU.lib 4.275 - # Always add bufferoverflowU.lib to VS2005 link commands (pack uses LDDFLAGS) 4.276 - LFLAGS_VS2005 = $(BUFFEROVERFLOWLIB) 4.277 - 4.278 - # LFLAGS are the flags given to $(LINK) and used to build the actual DLL file 4.279 - BASELFLAGS = -nologo /opt:REF /incremental:no 4.280 - LFLAGS = $(BASELFLAGS) $(LDEBUG) $(EXTRA_LFLAGS) $(LFLAGS_$(COMPILER_VERSION)) 4.281 - LDDFLAGS += $(LFLAGS_$(COMPILER_VERSION)) 4.282 - 4.283 -endif 4.284 - 4.285 -# 4.286 -# Preprocessor macro definitions 4.287 -# 4.288 -CPPFLAGS_COMMON = -DWIN32 -DIAL -D_LITTLE_ENDIAN 4.289 -ifeq ($(ARCH), amd64) 4.290 - CPPFLAGS_COMMON += -D_AMD64_ -Damd64 4.291 -else 4.292 - CPPFLAGS_COMMON += -DWIN32 -D_X86_ -Dx86 4.293 -endif 4.294 -CPPFLAGS_COMMON += -DWIN32_LEAN_AND_MEAN 4.295 - 4.296 -# 4.297 -# Output options (use specific filenames to avoid parallel compile errors) 4.298 -# 4.299 -CFLAGS_COMMON += -Fd$(OBJDIR)/$(basename $(@F)).pdb -Fm$(OBJDIR)/$(basename $(@F)).map 4.300 - 4.301 -# 4.302 -# Add warnings and extra on 64bit issues 4.303 -# 4.304 -ifeq ($(ARCH_DATA_MODEL), 64) 4.305 - CFLAGS_COMMON += -Wp64 4.306 -endif 4.307 -CFLAGS_COMMON += -W$(COMPILER_WARNING_LEVEL) 4.308 - 4.309 -# 4.310 -# Treat compiler warnings as errors, if requested 4.311 -# 4.312 -ifeq ($(COMPILER_WARNINGS_FATAL),true) 4.313 - CFLAGS_COMMON += -WX 4.314 -endif 4.315 - 4.316 -CPPFLAGS_OPT = 4.317 -CPPFLAGS_DBG = -DDEBUG -DLOGGING 4.318 - 4.319 -CXXFLAGS_COMMON = $(CFLAGS_COMMON) 4.320 -CXXFLAGS_OPT = $(CFLAGS_OPT) 4.321 -CXXFLAGS_DBG = $(CFLAGS_DBG) 4.322 - 4.323 -ifneq ($(LIBRARY),fdlibm) 4.324 - EXTRA_LIBS += advapi32.lib 4.325 -endif 4.326 - 4.327 -# 4.328 -# Path and option to link against the VM, if you have to. 4.329 -# 4.330 -JVMLIB = $(BOOTDIR)/lib/jvm.lib 4.331 -JAVALIB = 4.332 - 4.333 -ifeq ($(CC_VERSION), msvc) 4.334 - CC_DEPEND = -FD 4.335 - CC_DEPEND_FILTER = 4.336 -else # CC_VERSION 4.337 -# not supported, but left for historical reference... 4.338 - CC_DEPEND = -MM 4.339 - CC_DEPEND_FILTER = $(SED) -e 's!$*\.$(OBJECT_SUFFIX)!$(dir $@)&!g' 4.340 -endif # CC_VERSION 4.341 - 4.342 -LIBRARY_SUFFIX = dll 4.343 -LIB_SUFFIX = lib 4.344 - 4.345 -# Settings for the VERSIONINFO tap on windows. 4.346 -VERSIONINFO_RESOURCE = $(TOPDIR)/src/windows/resource/version.rc 4.347 - 4.348 -RC_FLAGS = /l 0x409 /r 4.349 - 4.350 -ifeq ($(VARIANT), OPT) 4.351 - RC_FLAGS += -d NDEBUG 4.352 -else 4.353 - RC_FLAGS += $(MS_RC_DEBUG_OPTION) 4.354 -endif 4.355 - 4.356 -ifndef COPYRIGHT_YEAR 4.357 - COPYRIGHT_YEAR = 2007 4.358 -endif 4.359 - 4.360 -RC_FLAGS += -d "JDK_BUILD_ID=$(FULL_VERSION)" \ 4.361 - -d "JDK_COMPANY=$(COMPANY_NAME)" \ 4.362 - -d "JDK_COMPONENT=$(PRODUCT_NAME) Platform SE binary" \ 4.363 - -d "JDK_VER=$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION).$(JDK_UPDATE_VER).$(COOKED_BUILD_NUMBER)" \ 4.364 - -d "JDK_COPYRIGHT=Copyright \xA9 $(COPYRIGHT_YEAR)" \ 4.365 - -d "JDK_NAME=$(PRODUCT_NAME) Platform SE $(JDK_MINOR_VERSION) $(JDK_UPDATE_META_TAG)" \ 4.366 - -d "JDK_FVER=$(JDK_VERSION)"
5.1 --- a/make/common/Defs.gmk Thu Sep 23 17:33:23 2010 -0700 5.2 +++ b/make/common/Defs.gmk Fri Sep 24 16:38:05 2010 -0700 5.3 @@ -73,54 +73,10 @@ 5.4 # 5.5 JRE_NONEXIST_LOCALES = en en_US de_DE es_ES fr_FR it_IT ja_JP ko_KR sv_SE zh 5.6 5.7 -# 5.8 -# All libraries except libjava and libjvm itself link against libjvm and 5.9 -# libjava, the latter for its exported common utilities. libjava only links 5.10 -# against libjvm. Programs' makefiles take their own responsibility for 5.11 -# adding other libs. 5.12 -# 5.13 -ifdef PACKAGE 5.14 -# put JAVALIB first, but do not lose any platform specific values.... 5.15 - LDLIBS_COMMON = $(JAVALIB) 5.16 -endif # PACKAGE 5.17 - 5.18 -# 5.19 -# Libraries that must appear ahead of libc.so on the link command line 5.20 -# 5.21 -ifdef PROGRAM 5.22 - 5.23 - ifeq ($(PLATFORM), solaris) 5.24 - LDLIBS_COMMON = -lthread -ldl 5.25 - endif 5.26 - 5.27 - ifeq ($(PLATFORM), linux) 5.28 - LDLIBS_COMMON = -ldl 5.29 - endif 5.30 - 5.31 -endif # PROGRAM 5.32 - 5.33 -LDLIBS_COMMON += $(EXTRA_LIBS) 5.34 - 5.35 -# 5.36 -# Default is to build, not import native binaries 5.37 -# 5.38 -ifndef IMPORT_NATIVE_BINARIES 5.39 - IMPORT_NATIVE_BINARIES=false 5.40 -endif 5.41 -# If importing libraries in, no incremental builds 5.42 -ifeq ($(IMPORT_NATIVE_BINARIES),true) 5.43 - INCREMENTAL_BUILD=false 5.44 -endif 5.45 - 5.46 -# for generated libraries 5.47 LIBDIR = $(OUTPUTDIR)/lib 5.48 ABS_LIBDIR = $(ABS_OUTPUTDIR)/lib 5.49 -# Optional place to save the windows .lib files 5.50 -LIBFILES_DIR = $(OUTPUTDIR)/libfiles 5.51 # for ext jre files 5.52 EXTDIR = $(LIBDIR)/ext 5.53 -# for generated include files 5.54 -INCLUDEDIR = $(OUTPUTDIR)/include 5.55 # for generated class files 5.56 CLASSBINDIR = $(OUTPUTDIR)/classes 5.57 DEMOCLASSDIR = $(OUTPUTDIR)/democlasses 5.58 @@ -131,8 +87,6 @@ 5.59 ABS_BUILDTOOLJARDIR = $(ABS_OUTPUTDIR)/btjars 5.60 # for generated java source files 5.61 GENSRCDIR = $(OUTPUTDIR)/gensrc 5.62 -# for generated C source files (not javah) 5.63 -GENNATIVESRCDIR = $(OUTPUTDIR)/gennativesrc 5.64 # for imported source files 5.65 IMPORTSRCDIR = $(OUTPUTDIR)/impsrc 5.66 # for imported documents 5.67 @@ -196,19 +150,6 @@ 5.68 dummy1:=$(shell $(MKDIR) -p $(TEMPDIR)) 5.69 dummy2:=$(shell $(MKDIR) -p $(TEMP_DISK)) 5.70 5.71 -# OBJDIRNAME is the name of the directory where the object code is to 5.72 -# be placed. It's name depends on whether the data model architecture 5.73 -# is 32-bit or not. 5.74 -ifneq ($(ARCH_DATA_MODEL), 32) 5.75 - OBJDIRNAME = obj$(ARCH_DATA_MODEL)$(OBJDIRNAME_SUFFIX) 5.76 -else 5.77 - OBJDIRNAME = obj$(OBJDIRNAME_SUFFIX) 5.78 -endif 5.79 -OBJDIR = $(TEMPDIR)/$(OBJDIRNAME) 5.80 - 5.81 -# CLASSHDRDIR is where the generated C Class Header files go. 5.82 -CLASSHDRDIR = $(TEMPDIR)/CClassHeaders 5.83 - 5.84 # 5.85 # CLASSDESTDIR can be used to specify the directory where generated classes 5.86 # are to be placed. The default is CLASSBINDIR. 5.87 @@ -217,11 +158,6 @@ 5.88 CLASSDESTDIR = $(CLASSBINDIR) 5.89 endif 5.90 5.91 -INCLUDES = -I. -I$(CLASSHDRDIR) \ 5.92 - $(patsubst %,-I%,$(subst $(CLASSPATH_SEPARATOR), ,$(VPATH.h))) $(OTHER_INCLUDES) 5.93 -OTHER_CPPFLAGS = $(INCLUDES) 5.94 - 5.95 - 5.96 # 5.97 # vpaths. These are the default locations searched for source files. 5.98 # GNUmakefiles of individual areas often override the default settings. 5.99 @@ -235,35 +171,6 @@ 5.100 VPATH.java = $(VPATH0.java) 5.101 vpath %.java $(VPATH.java) 5.102 vpath %.class $(CLASSBINDIR) 5.103 -vpath %.$(OBJECT_SUFFIX) $(OBJDIR) 5.104 - 5.105 -# 5.106 -# VPATH.h is used elsewhere to generate include flags. By default, 5.107 -# anyone has access to the include files that the JVM area exports, 5.108 -# namely jni.h, jvm.h, and jni_utils.h, plus their platform-specific 5.109 -# relatives. 5.110 -# 5.111 -ifeq ($(PLATFORM), windows) 5.112 - VPATH.h = $(BOOTDIR)/include;$(BOOTDIR)/include/$(PLATFORM_INCLUDE_NAME) 5.113 -else 5.114 - VPATH.h = $(PLATFORM_SRC)/javavm/export$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/javavm/export$(CLASSPATH_SEPARATOR)$(SHARE_SRC)/javavm/include$(CLASSPATH_SEPARATOR)$(PLATFORM_SRC)/javavm/include 5.115 -endif 5.116 -vpath %.h $(VPATH.h) 5.117 - 5.118 -# 5.119 -# Used in two ways: helps link against libjava.so. Also if overridden 5.120 -# determines where your shared library is installed. 5.121 -# 5.122 -ifndef LIB_LOCATION 5.123 - LIB_LOCATION = $(LIBDIR)/$(LIBARCH) 5.124 -endif 5.125 - 5.126 -# 5.127 -# Java header and stub variables 5.128 -# 5.129 -CLASSHDRS = $(patsubst %,$(CLASSHDRDIR)/%.h,$(subst .,_,$(CLASSES.export))) 5.130 -CLASSSTUBOBJS = classstubs.$(OBJECT_SUFFIX) 5.131 -STUBPREAMBLE = $(INCLUDEDIR)/StubPreamble.h 5.132 5.133 # 5.134 # Classpath seen by javac (different from the one seen by the VM 5.135 @@ -338,38 +245,9 @@ 5.136 done 5.137 endef 5.138 5.139 -# 5.140 -# Create BYFILE OPT and DBG settings, if CFLAGS_OPT/foobar.o is set then it is 5.141 -# used for this file, otherwise the default settings are used. 5.142 -# 5.143 -CFLAGS_$(VARIANT)/BYFILE = $(CFLAGS_$(VARIANT)/$(@F)) \ 5.144 - $(CFLAGS_$(VARIANT)$(CFLAGS_$(VARIANT)/$(@F))) 5.145 -CXXFLAGS_$(VARIANT)/BYFILE = $(CXXFLAGS_$(VARIANT)/$(@F)) \ 5.146 - $(CXXFLAGS_$(VARIANT)$(CXXFLAGS_$(VARIANT)/$(@F))) 5.147 - 5.148 -# 5.149 -# Tool flags 5.150 -# 5.151 -ASFLAGS = $(ASFLAGS_$(VARIANT)) $(ASFLAGS_COMMON) $(OTHER_ASFLAGS) 5.152 -CFLAGS = $(CFLAGS_$(VARIANT)/BYFILE) $(CFLAGS_COMMON) $(OTHER_CFLAGS) 5.153 -CXXFLAGS = $(CXXFLAGS_$(VARIANT)/BYFILE) $(CXXFLAGS_COMMON) $(OTHER_CXXFLAGS) 5.154 -CPPFLAGS = $(CPPFLAGS_$(VARIANT)) $(CPPFLAGS_COMMON) $(OTHER_CPPFLAGS) \ 5.155 - $(DEFINES) $(OPTIONS:%=-D%) 5.156 -LDFLAGS = $(LDFLAGS_$(VARIANT)) $(LDFLAGS_COMMON) $(OTHER_LDFLAGS) 5.157 -LDLIBS = $(OTHER_LDLIBS) $(LDLIBS_$(VARIANT)) $(LDLIBS_COMMON) 5.158 -LINTFLAGS = $(LINTFLAGS_$(VARIANT)) $(LINTFLAGS_COMMON) \ 5.159 - $(OTHER_LINTFLAGS) 5.160 - 5.161 -# this should be moved into Defs-<platform>.gmk..... 5.162 -ifeq ($(PLATFORM), windows) 5.163 - VERSION_DEFINES = -DRELEASE="\"$(RELEASE)\"" 5.164 -else 5.165 - VERSION_DEFINES = -DRELEASE='"$(RELEASE)"' 5.166 -endif 5.167 - 5.168 # Prevent the use of many default suffix rules we do not need 5.169 .SUFFIXES: 5.170 -.SUFFIXES: .c .o .h .obj .cpp .hpp .java .class 5.171 +.SUFFIXES: .java .class 5.172 5.173 # Make sure we are all insane 5.174 ifdef INSANE
6.1 --- a/make/common/Library.gmk Thu Sep 23 17:33:23 2010 -0700 6.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 6.3 @@ -1,275 +0,0 @@ 6.4 -# 6.5 -# Copyright (c) 1995, 2009, Oracle and/or its affiliates. All rights reserved. 6.6 -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 6.7 -# 6.8 -# This code is free software; you can redistribute it and/or modify it 6.9 -# under the terms of the GNU General Public License version 2 only, as 6.10 -# published by the Free Software Foundation. Oracle designates this 6.11 -# particular file as subject to the "Classpath" exception as provided 6.12 -# by Oracle in the LICENSE file that accompanied this code. 6.13 -# 6.14 -# This code is distributed in the hope that it will be useful, but WITHOUT 6.15 -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 6.16 -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 6.17 -# version 2 for more details (a copy is included in the LICENSE file that 6.18 -# accompanied this code). 6.19 -# 6.20 -# You should have received a copy of the GNU General Public License version 6.21 -# 2 along with this work; if not, write to the Free Software Foundation, 6.22 -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 6.23 -# 6.24 -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 6.25 -# or visit www.oracle.com if you need additional information or have any 6.26 -# questions. 6.27 -# 6.28 - 6.29 -# 6.30 -# Generic makefile for building shared libraries. 6.31 -# 6.32 - 6.33 -include $(TOPDIR)/make/common/Classes.gmk 6.34 - 6.35 -# 6.36 -# It is important to define these *after* including Classes.gmk 6.37 -# in order to override the values defined inthat makefile. 6.38 -# 6.39 - 6.40 -ACTUAL_LIBRARY_NAME = $(LIB_PREFIX)$(LIBRARY).$(LIBRARY_SUFFIX) 6.41 -ACTUAL_LIBRARY_DIR = $(LIB_LOCATION) 6.42 -ACTUAL_LIBRARY = $(ACTUAL_LIBRARY_DIR)/$(ACTUAL_LIBRARY_NAME) 6.43 - 6.44 -library:: $(ACTUAL_LIBRARY) 6.45 - 6.46 -FILES_o = $(patsubst %.c, %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_c)))) 6.47 -FILES_o += $(patsubst %.s, %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_s)))) 6.48 -FILES_o += $(patsubst %.cpp, %.$(OBJECT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_cpp)))) 6.49 - 6.50 -ifeq ($(INCREMENTAL_BUILD),true) 6.51 -FILES_d = $(patsubst %.c, %.$(DEPEND_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_c)))) 6.52 -FILES_d += $(patsubst %.cpp, %.$(DEPEND_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_cpp)))) 6.53 -endif # INCREMENTAL_BUILD 6.54 - 6.55 -ifeq ($(PLATFORM),solaris) 6.56 -# List of all lint files, one for each .c file (only for C) 6.57 -FILES_ln = $(patsubst %.c, %.$(LINT_SUFFIX), $(addprefix $(OBJDIR)/, $(notdir $(FILES_c)))) 6.58 -endif 6.59 - 6.60 -# 6.61 -# C++ libraries must be linked with CC. 6.62 -# 6.63 -ifdef CPLUSPLUSLIBRARY 6.64 -LINKER=$(LINK.cc) 6.65 -else 6.66 -LINKER=$(LINK.c) 6.67 -endif 6.68 - 6.69 -# We either need to import (copy) libraries in, or build them 6.70 -$(ACTUAL_LIBRARY):: $(INIT) $(TEMPDIR) $(LIBDIR) $(BINDIR) $(EXTDIR) classheaders 6.71 - 6.72 -# 6.73 -# COMPILE_APPROACH: Different approaches to compile up the native object 6.74 -# files as quickly as possible. 6.75 -# The setting of parallel works best on Unix, batch on Windows. 6.76 -# 6.77 - 6.78 -COMPILE_FILES_o = $(OBJDIR)/.files_compiled 6.79 -$(COMPILE_FILES_o): $(FILES_d) $(FILES_o) 6.80 - @$(ECHO) "$<" >> $@ 6.81 -clean:: 6.82 - $(RM) $(COMPILE_FILES_o) 6.83 - 6.84 -# 6.85 -# COMPILE_APPROACH=parallel: Will trigger compilations (just compilations) to 6.86 -# happen in parallel. Greatly decreases Unix build time, even on single CPU 6.87 -# machines, more so on multiple CPU machines. Default is 2 compiles 6.88 -# at a time, but can be adjusted with ALT_PARALLEL_COMPILE_JOBS. 6.89 -# Note that each .d file will also be dependent on it's .o file, see 6.90 -# Rules.gmk. 6.91 -# Note this does not depend on Rules.gmk to work like batch (below) 6.92 -# and this technique doesn't seem to help Windows build time nor does 6.93 -# it work very well, it's possible the Windows Visual Studio compilers 6.94 -# don't work well in a parallel situation, this needs investigation. 6.95 -# 6.96 - 6.97 -ifeq ($(COMPILE_APPROACH),parallel) 6.98 - 6.99 -.PHONY: library_parallel_compile 6.100 - 6.101 -library_parallel_compile: 6.102 - @$(ECHO) "Begin parallel compiles: $(shell $(PWD))" 6.103 - @$(MAKE) -j $(PARALLEL_COMPILE_JOBS) $(COMPILE_FILES_o) 6.104 - @$(ECHO) "Done with parallel compiles: $(shell $(PWD))" 6.105 - 6.106 -$(ACTUAL_LIBRARY):: library_parallel_compile 6.107 - 6.108 -endif 6.109 - 6.110 -# 6.111 -# COMPILE_APPROACH=batch: Will trigger compilations (just compilations) to 6.112 -# happen in batch mode. Greatly decreases Windows build time. 6.113 -# See logic in Rules.gmk for how compiles happen, the $(MAKE) in 6.114 -# library_batch_compile below triggers the actions in Rules.gmk. 6.115 -# Note that each .d file will also be dependent on it's .o file, see 6.116 -# Rules.gmk. 6.117 -# 6.118 -ifeq ($(COMPILE_APPROACH),batch) 6.119 - 6.120 -.PHONY: library_batch_compile 6.121 - 6.122 -library_batch_compile: 6.123 - @$(ECHO) "Begin BATCH compiles: $(shell $(PWD))" 6.124 - $(MAKE) $(COMPILE_FILES_o) 6.125 - $(MAKE) batch_compile 6.126 - @$(ECHO) "Done with BATCH compiles: $(shell $(PWD))" 6.127 - $(MAKE) COMPILE_APPROACH=normal $(COMPILE_FILES_o) 6.128 - 6.129 -$(ACTUAL_LIBRARY):: library_batch_compile 6.130 - 6.131 -endif 6.132 - 6.133 -ifeq ($(PLATFORM), windows) 6.134 - 6.135 -# 6.136 -# Library building rules. 6.137 -# 6.138 - 6.139 -$(LIBRARY).lib:: $(OBJDIR) 6.140 - 6.141 -# build it into $(OBJDIR) so that the other generated files get put 6.142 -# there, then copy just the DLL (and MAP file) to the requested directory. 6.143 -# 6.144 -$(ACTUAL_LIBRARY):: $(OBJDIR)/$(LIBRARY).lcf 6.145 - @$(prep-target) 6.146 - @$(MKDIR) -p $(OBJDIR) 6.147 - $(LINK) -dll -out:$(OBJDIR)/$(@F) \ 6.148 - -map:$(OBJDIR)/$(LIBRARY).map \ 6.149 - $(LFLAGS) @$(OBJDIR)/$(LIBRARY).lcf \ 6.150 - $(OTHER_LCF) $(JAVALIB) $(LDLIBS) 6.151 - $(CP) $(OBJDIR)/$(@F) $@ 6.152 - $(CP) $(OBJDIR)/$(LIBRARY).map $(@D) 6.153 - $(CP) $(OBJDIR)/$(LIBRARY).pdb $(@D) 6.154 - 6.155 -$(OBJDIR)/$(LIBRARY).lcf: $(OBJDIR)/$(LIBRARY).res $(COMPILE_FILES_o) $(FILES_m) 6.156 - @$(prep-target) 6.157 - @$(MKDIR) -p $(TEMPDIR) 6.158 - @$(ECHO) $(FILES_o) > $@ 6.159 -ifndef LOCAL_RESOURCE_FILE 6.160 - @$(ECHO) $(OBJDIR)/$(LIBRARY).res >> $@ 6.161 -endif 6.162 - @$(ECHO) Created $@ 6.163 - 6.164 -RC_FLAGS += /D "JDK_FNAME=$(LIBRARY).dll" \ 6.165 - /D "JDK_INTERNAL_NAME=$(LIBRARY)" \ 6.166 - /D "JDK_FTYPE=0x2L" 6.167 - 6.168 -$(OBJDIR)/$(LIBRARY).res: $(VERSIONINFO_RESOURCE) 6.169 -ifndef LOCAL_RESOURCE_FILE 6.170 - @$(prep-target) 6.171 - $(RC) $(RC_FLAGS) $(CC_OBJECT_OUTPUT_FLAG)$(@) $(VERSIONINFO_RESOURCE) 6.172 -endif 6.173 - 6.174 -# 6.175 -# Install a .lib file if required. 6.176 -# 6.177 -ifeq ($(INSTALL_DOT_LIB), true) 6.178 -$(ACTUAL_LIBRARY):: $(LIBDIR)/$(LIBRARY).lib 6.179 - 6.180 -clean:: 6.181 - -$(RM) $(LIBDIR)/$(LIBRARY).lib 6.182 - 6.183 -$(LIBDIR)/$(LIBRARY).lib:: $(OBJDIR)/$(LIBRARY).lib 6.184 - $(install-file) 6.185 - 6.186 -$(LIBDIR)/$(LIBRARY).dll:: $(OBJDIR)/$(LIBRARY).dll 6.187 - $(install-file) 6.188 - 6.189 -endif # INSTALL_DOT_LIB 6.190 - 6.191 -else # PLATFORM 6.192 - 6.193 -# 6.194 -# On Solaris, use mcs to write the version into the comment section of 6.195 -# the shared library. On other platforms set this to false at the 6.196 -# make command line. 6.197 -# 6.198 -$(ACTUAL_LIBRARY):: $(COMPILE_FILES_o) $(FILES_m) $(FILES_reorder) 6.199 - @$(prep-target) 6.200 - @$(ECHO) "STATS: LIBRARY=$(LIBRARY), PRODUCT=$(PRODUCT), _OPT=$(_OPT)" 6.201 - @$(ECHO) "Rebuilding $@ because of $?" 6.202 - $(LINKER) $(SHARED_LIBRARY_FLAG) -o $@ $(FILES_o) $(LDLIBS) 6.203 -ifeq ($(WRITE_LIBVERSION),true) 6.204 - $(MCS) -d -a "$(FULL_VERSION)" $@ 6.205 -endif # WRITE_LIBVERSION 6.206 - 6.207 -endif # PLATFORM 6.208 - 6.209 -# 6.210 -# Cross check all linted files against each other 6.211 -# 6.212 -ifeq ($(PLATFORM),solaris) 6.213 -lint.errors : $(FILES_ln) 6.214 - $(LINT.c) $(FILES_ln) $(LDLIBS) 6.215 -endif 6.216 - 6.217 -# 6.218 -# Class libraries with JNI native methods get a include to the package. 6.219 -# 6.220 -ifdef PACKAGE 6.221 -vpath %.c $(PLATFORM_SRC)/native/$(PKGDIR) 6.222 -vpath %.c $(SHARE_SRC)/native/$(PKGDIR) 6.223 -OTHER_INCLUDES += -I$(SHARE_SRC)/native/common -I$(PLATFORM_SRC)/native/common 6.224 -OTHER_INCLUDES += -I$(SHARE_SRC)/native/$(PKGDIR) \ 6.225 - -I$(PLATFORM_SRC)/native/$(PKGDIR) 6.226 -endif 6.227 - 6.228 -# 6.229 -# Clean/clobber rules 6.230 -# 6.231 -clean:: 6.232 - $(RM) -r $(ACTUAL_LIBRARY) 6.233 - 6.234 -clobber:: clean 6.235 - 6.236 -# 6.237 -# INCREMENTAL_BUILD means that this workspace will be built over and over 6.238 -# possibly incrementally. This means tracking the object file dependencies 6.239 -# on include files so that sources get re-compiled when the include files 6.240 -# change. When building from scratch and doing a one time build (like 6.241 -# release engineering or nightly builds) set INCREMENTAL_BUILD=false. 6.242 -# 6.243 - 6.244 -ifeq ($(INCREMENTAL_BUILD),true) 6.245 - 6.246 -# 6.247 -# Workaround: gnumake sometimes says files is empty when it shouldn't 6.248 -# was: files := $(foreach file, $(wildcard $(OBJDIR)/*.$(DEPEND_SUFFIX)), $(file)) 6.249 -# 6.250 -files := $(shell $(LS) $(OBJDIR)/*.$(DEPEND_SUFFIX) 2>/dev/null) 6.251 - 6.252 -# 6.253 -# Only include these files if we have any. 6.254 -# 6.255 -ifneq ($(strip $(files)),) 6.256 - 6.257 -include $(files) 6.258 - 6.259 -endif # files 6.260 - 6.261 -endif # INCREMENTAL_BUILD 6.262 - 6.263 -# 6.264 -# Default dependencies 6.265 -# 6.266 - 6.267 -all: build 6.268 - 6.269 -build: library 6.270 - 6.271 -debug: 6.272 - $(MAKE) VARIANT=DBG build 6.273 - 6.274 -fastdebug: 6.275 - $(MAKE) VARIANT=DBG FASTDEBUG=true build 6.276 - 6.277 -.PHONY: all build debug fastdebug 6.278 -
7.1 --- a/make/common/Mapfile-vers.gmk Thu Sep 23 17:33:23 2010 -0700 7.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 7.3 @@ -1,98 +0,0 @@ 7.4 -# 7.5 -# Copyright (c) 1998, 2005, Oracle and/or its affiliates. All rights reserved. 7.6 -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 7.7 -# 7.8 -# This code is free software; you can redistribute it and/or modify it 7.9 -# under the terms of the GNU General Public License version 2 only, as 7.10 -# published by the Free Software Foundation. Oracle designates this 7.11 -# particular file as subject to the "Classpath" exception as provided 7.12 -# by Oracle in the LICENSE file that accompanied this code. 7.13 -# 7.14 -# This code is distributed in the hope that it will be useful, but WITHOUT 7.15 -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 7.16 -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 7.17 -# version 2 for more details (a copy is included in the LICENSE file that 7.18 -# accompanied this code). 7.19 -# 7.20 -# You should have received a copy of the GNU General Public License version 7.21 -# 2 along with this work; if not, write to the Free Software Foundation, 7.22 -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 7.23 -# 7.24 -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 7.25 -# or visit www.oracle.com if you need additional information or have any 7.26 -# questions. 7.27 -# 7.28 - 7.29 -# 7.30 -# Makefile for linking with mapfiles. 7.31 -# 7.32 -# NOTE: Not using a mapfile will expose all your extern functions and 7.33 -# extern data symbols as part of your interface, so unless your 7.34 -# extern names are safe from being mistaken as names from other 7.35 -# libraries, you better use a mapfile, or use a unique naming 7.36 -# convention on all your extern symbols. 7.37 -# 7.38 -# The mapfile will establish versioning by defining the exported interface. 7.39 -# 7.40 -# The mapfile can also force certain .o files or elf sections into the 7.41 -# the different segments of the resulting library/program image. 7.42 -# 7.43 -# The macro FILES_m can contain any number of mapfiles. 7.44 -# 7.45 - 7.46 -# Always make sure 'all' is the default rule 7.47 -mapfile_default_rule: all 7.48 - 7.49 -ifeq ($(PLATFORM), solaris) 7.50 - 7.51 -ifeq ($(VARIANT), OPT) 7.52 - # OPT build MUST have a mapfile? 7.53 - ifndef FILES_m 7.54 - FILES_m = mapfile-vers 7.55 - endif 7.56 - 7.57 - # If we are re-ordering functions in this solaris library, we need to make 7.58 - # sure that -xF is added to the compile lines. This option is critical and 7.59 - # enables the functions to be reordered. 7.60 - ifdef FILES_reorder 7.61 - CFLAGS_OPT += -xF 7.62 - CXXFLAGS_OPT += -xF 7.63 - endif 7.64 - 7.65 -INIT += $(TEMPDIR)/mapfile-vers 7.66 - 7.67 -$(TEMPDIR)/mapfile-vers : $(FILES_m) $(FILES_reorder) 7.68 - $(prep-target) 7.69 - $(CAT) $(FILES_m) > $@ 7.70 - ifdef FILES_reorder 7.71 - $(SED) -e 's=OUTPUTDIR=$(OUTPUTDIR)=' $(FILES_reorder) >> $@ 7.72 - endif 7.73 -endif # VARIANT 7.74 - 7.75 -ifndef LDNOMAP 7.76 - LDMAPFLAGS_OPT = -M$(TEMPDIR)/mapfile-vers 7.77 - LDMAPFLAGS_DBG = $(FILES_m:%=-M%) 7.78 -endif 7.79 - 7.80 -endif # PLATFORM 7.81 - 7.82 - 7.83 -ifeq ($(PLATFORM), linux) 7.84 - 7.85 -ifeq ($(VARIANT), OPT) 7.86 - # OPT build MUST have a mapfile? 7.87 - ifndef FILES_m 7.88 - FILES_m = mapfile-vers 7.89 - endif 7.90 -endif # VARIANT 7.91 - 7.92 -ifndef LDNOMAP 7.93 - LDMAPFLAGS_OPT = $(FILES_m:%=-Xlinker -version-script=%) 7.94 - LDMAPFLAGS_DBG = $(FILES_m:%=-Xlinker -version-script=%) 7.95 -endif 7.96 - 7.97 -endif # PLATFORM 7.98 - 7.99 -LDFLAGS_OPT += $(LDMAPFLAGS_OPT) 7.100 -LDFLAGS_DBG += $(LDMAPFLAGS_DBG) 7.101 -
8.1 --- a/make/common/Rules.gmk Thu Sep 23 17:33:23 2010 -0700 8.2 +++ b/make/common/Rules.gmk Fri Sep 24 16:38:05 2010 -0700 8.3 @@ -34,7 +34,7 @@ 8.4 # 8.5 # Directory set up. (Needed by deploy workspace) 8.6 # 8.7 -$(CLASSDESTDIR) $(CLASSHDRDIR) $(OBJDIR) $(OUTPUTDIR) $(BINDIR) $(LIBDIR) $(LIBDIR)/$(LIBARCH) $(TEMPDIR) $(EXTDIR): 8.8 +$(CLASSDESTDIR) $(OUTPUTDIR) $(TEMPDIR) $(EXTDIR): 8.9 $(MKDIR) -p $@ 8.10 8.11 # 8.12 @@ -163,9 +163,6 @@ 8.13 # List of class files needed 8.14 FILES_class = $(FILES_java:%.java=$(CLASSDESTDIR)/%.class) 8.15 8.16 -# Got to include exported files. 8.17 -FILES_class += $(FILES_export:%.java=$(CLASSDESTDIR)/%.class) 8.18 - 8.19 # Construct list of java sources we need to compile 8.20 source_list_prime: 8.21 @$(MKDIR) -p $(TEMPDIR) 8.22 @@ -214,50 +211,7 @@ 8.23 classes.clean: packages.clean 8.24 $(RM) $(JAVA_SOURCE_LIST) 8.25 8.26 -# 8.27 -# C and C++ make dependencies 8.28 -# 8.29 -include $(TOPDIR)/make/common/internal/NativeCompileRules.gmk 8.30 - 8.31 -# 8.32 -# Running Javah to generate stuff into CClassHeaders. 8.33 -# 8.34 - 8.35 -ifdef FILES_export 8.36 - 8.37 -CLASSES.export = $(subst /,.,$(FILES_export:%.java=%)) 8.38 -CLASSES.export += $(subst /,.,$(FILES_export2:%.java=%)) 8.39 -CLASSES.export += $(subst /,.,$(FILES_export3:%.java=%)) 8.40 -CLASSES_export = $(FILES_export:%.java=$(CLASSDESTDIR)/%.class) 8.41 -CLASSES_export += $(FILES_export2:%.java=$(CLASSDESTDIR)/%.class) 8.42 -CLASSES_export += $(FILES_export3:%.java=$(CLASSDESTDIR)/%.class) 8.43 - 8.44 -# Fix when deploy workspace makefiles don't depend on this name 8.45 -#CLASSHDR_DOTFILE=$(CLASSHDRDIR)/.classheaders 8.46 - 8.47 -CLASSHDR_DOTFILE=$(OBJDIR)/.class.headers.$(ARCH) 8.48 - 8.49 -classheaders: classes $(CLASSHDR_DOTFILE) 8.50 - 8.51 -$(CLASSHDR_DOTFILE): $(CLASSES_export) 8.52 - $(prep-target) 8.53 - $(JAVAH_CMD) -d $(CLASSHDRDIR)/ \ 8.54 - $(CLASSES.export) $(subst $$,\$$,$(EXPORTED_inner)) 8.55 - @$(java-vm-cleanup) 8.56 - @$(TOUCH) $@ 8.57 - 8.58 -classheaders.clean: 8.59 - $(RM) -r $(CLASSHDRDIR) $(CLASSHDR_DOTFILE) 8.60 - 8.61 -else # FILES_export 8.62 - 8.63 -classheaders: classes 8.64 - 8.65 -classheaders.clean: 8.66 - 8.67 -endif # FILES_export 8.68 - 8.69 -clean clobber:: classheaders.clean classes.clean .delete.classlist 8.70 +clean clobber:: classes.clean .delete.classlist 8.71 8.72 # 8.73 # Default dependencies 8.74 @@ -265,12 +219,11 @@ 8.75 8.76 all: build 8.77 8.78 -build: classheaders 8.79 +build: classes 8.80 8.81 default: all 8.82 8.83 .PHONY: all build clean clobber \ 8.84 .delete.classlist classes .compile.classlist classes.clean \ 8.85 - classheaders classheaders.clean \ 8.86 batch_compile 8.87
9.1 --- a/make/common/internal/NativeCompileRules.gmk Thu Sep 23 17:33:23 2010 -0700 9.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 9.3 @@ -1,214 +0,0 @@ 9.4 -# 9.5 -# Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved. 9.6 -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9.7 -# 9.8 -# This code is free software; you can redistribute it and/or modify it 9.9 -# under the terms of the GNU General Public License version 2 only, as 9.10 -# published by the Free Software Foundation. Oracle designates this 9.11 -# particular file as subject to the "Classpath" exception as provided 9.12 -# by Oracle in the LICENSE file that accompanied this code. 9.13 -# 9.14 -# This code is distributed in the hope that it will be useful, but WITHOUT 9.15 -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 9.16 -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 9.17 -# version 2 for more details (a copy is included in the LICENSE file that 9.18 -# accompanied this code). 9.19 -# 9.20 -# You should have received a copy of the GNU General Public License version 9.21 -# 2 along with this work; if not, write to the Free Software Foundation, 9.22 -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 9.23 -# 9.24 -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 9.25 -# or visit www.oracle.com if you need additional information or have any 9.26 -# questions. 9.27 -# 9.28 - 9.29 -# 9.30 -# Native C/C++ Compile Rules 9.31 -# 9.32 - 9.33 -# 9.34 -# INCREMENTAL_BUILD: Record the #include file dependencies. 9.35 -# 9.36 -# NOTE: We build make include files with the suffix 9.37 -# $(DEPEND_SUFFIX) on every compilation. These are initially 9.38 -# created as temp files just in case a ^C kills it in the middle. 9.39 -# Compiler is smart enough to handle ^C and not create the .o file, or 9.40 -# is supposed to be that smart, but the .$(DEPEND_SUFFIX) file 9.41 -# creation here isn't. 9.42 -# These .$(DEPEND_SUFFIX) files are included by Library.gmk and 9.43 -# Program.gmk, when they exist (Search for 'make dependencies'). 9.44 -# 9.45 - 9.46 -ifeq ($(INCREMENTAL_BUILD),true) 9.47 - 9.48 -$(OBJDIR)/%.$(DEPEND_SUFFIX): %.c 9.49 - @$(prep-target) 9.50 - @$(ECHO) "Creating $@" 9.51 - @$(RM) $@.temp 9.52 - @$(CC) $(CC_DEPEND) $(CPPFLAGS) $< 2> $(DEV_NULL) | \ 9.53 - $(CC_DEPEND_FILTER) > $@.temp 9.54 - @$(MV) $@.temp $@ 9.55 - 9.56 -$(OBJDIR)/%.$(DEPEND_SUFFIX): %.cpp 9.57 - @$(prep-target) 9.58 - @$(ECHO) "Creating $@" 9.59 - @$(RM) $@.temp 9.60 - @$(CXX) $(CC_DEPEND) $(CPPFLAGS) $(CXXFLAGS) $< 2> $(DEV_NULL) | \ 9.61 - $(CC_DEPEND_FILTER) > $@.temp 9.62 - @$(MV) $@.temp $@ 9.63 - 9.64 -endif # INCREMENTAL_BUILD 9.65 - 9.66 -# 9.67 -# C, C++, asm files. 9.68 -# 9.69 -# Normal or parallel compile rule is the same, but batch compiles require 9.70 -# we save up the sources files that use the same compile line so that we 9.71 -# can do one compile line. 9.72 -# 9.73 - 9.74 -ifneq ($(COMPILE_APPROACH), batch) 9.75 - 9.76 -$(OBJDIR)/%.$(OBJECT_SUFFIX): %.c 9.77 - @$(prep-target) 9.78 - $(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $< 9.79 - @$(check-conventions) 9.80 - 9.81 -$(OBJDIR)/%.$(OBJECT_SUFFIX): %.cpp 9.82 - @$(prep-target) 9.83 - $(COMPILE.cc) $(CC_OBJECT_OUTPUT_FLAG)$@ $(CFLAGS_GPROF) $< 9.84 - @$(check-conventions) 9.85 - 9.86 -else 9.87 - 9.88 - # 9.89 - # Batch compiling might be faster if the compiler was smart about recognizing 9.90 - # optimization opportunities available when all files are being compiled 9.91 - # the same way. Unfortunately this is rare. 9.92 - # Automatic pre-compiled headers (pch) might be a possibility so we 9.93 - # add any auto pch options here. 9.94 - # So we save all the source files that have the same compile line as the 9.95 - # first file. A normal compile pass is made after the batch compile 9.96 - # to catch anything missed. 9.97 - # If the compilers had a -o option that allowed us to direct where to 9.98 - # write the object files to, then we would not need to save the object 9.99 - # file list or move them from the make directory to the build directory. 9.100 - # 9.101 - 9.102 - # Source names 9.103 - COMPILE_LIST.c = $(OBJDIR)/.source_names_c 9.104 - COMPILE_LIST.cpp = $(OBJDIR)/.source_names_cpp 9.105 - 9.106 - # Object file list 9.107 - COMPILE_OBJ_LIST.c = $(OBJDIR)/.obj_names_c 9.108 - COMPILE_OBJ_LIST.cpp = $(OBJDIR)/.obj_names_cpp 9.109 - 9.110 - # The compile line 9.111 - COMPILE_BATCH.c = $(OBJDIR)/.compile_c 9.112 - COMPILE_BATCH.cpp = $(OBJDIR)/.compile_cpp 9.113 - 9.114 - # The compile line for the current target 9.115 - THIS_COMPILE_BATCH.c = $(COMPILE_BATCH.c)-$(@F) 9.116 - THIS_COMPILE_BATCH.cpp = $(COMPILE_BATCH.cpp)-$(@F) 9.117 - 9.118 -$(OBJDIR)/%.$(OBJECT_SUFFIX): %.c 9.119 - @$(prep-target) 9.120 - @$(ECHO) "$(COMPILE.c) $(CFLAGS_GPROF)" > $(THIS_COMPILE_BATCH.c) 9.121 - @if [ ! -s $(COMPILE_BATCH.c) ] ; then \ 9.122 - $(CP) $(THIS_COMPILE_BATCH.c) $(COMPILE_BATCH.c) ; \ 9.123 - $(ECHO) $< > $(COMPILE_LIST.c); \ 9.124 - $(ECHO) $(@F) > $(COMPILE_OBJ_LIST.c); \ 9.125 - elif [ "`$(DIFF) -w -b $(THIS_COMPILE_BATCH.c) $(COMPILE_BATCH.c)`" \ 9.126 - = "" ] ; then \ 9.127 - $(ECHO) $< >> $(COMPILE_LIST.c); \ 9.128 - $(ECHO) $(@F) >> $(COMPILE_OBJ_LIST.c); \ 9.129 - fi 9.130 - @$(RM) $(THIS_COMPILE_BATCH.c) 9.131 - @$(check-conventions) 9.132 - 9.133 -$(OBJDIR)/%.$(OBJECT_SUFFIX): %.cpp 9.134 - @$(prep-target) 9.135 - @$(ECHO) "$(COMPILE.cpp) $(CFLAGS_GPROF)" > $(THIS_COMPILE_BATCH.cpp) 9.136 - @if [ ! -s $(COMPILE_BATCH.cpp) ] ; then \ 9.137 - $(CP) $(THIS_COMPILE_BATCH.cpp) $(COMPILE_BATCH.cpp) ; \ 9.138 - $(ECHO) $< > $(COMPILE_LIST.cpp); \ 9.139 - $(ECHO) $(@F) > $(COMPILE_OBJ_LIST.cpp); \ 9.140 - elif [ "`$(DIFF) -w -b $(THIS_COMPILE_BATCH.cpp) $(COMPILE_BATCH.cpp)`"\ 9.141 - = "" ] ; then \ 9.142 - $(ECHO) $< >> $(COMPILE_LIST.cpp); \ 9.143 - $(ECHO) $(@F) >> $(COMPILE_OBJ_LIST.cpp); \ 9.144 - fi 9.145 - @$(RM) $(THIS_COMPILE_BATCH.cpp) 9.146 - @$(check-conventions) 9.147 - 9.148 -batch_compile: $(FILES_o) 9.149 - @$(ECHO) "Doing batch compilations" 9.150 - @if [ -s $(COMPILE_LIST.c) ] ; then \ 9.151 - $(ECHO) "$(COMPILE.c) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \ 9.152 - `$(CAT) $(COMPILE_LIST.c)`" ; \ 9.153 - ( $(COMPILE.c) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \ 9.154 - `$(CAT) $(COMPILE_LIST.c)` && \ 9.155 - $(ECHO) "$(MV) `$(CAT) $(COMPILE_OBJ_LIST.c)` $(OBJDIR)" && \ 9.156 - $(MV) `$(CAT) $(COMPILE_OBJ_LIST.c)` $(OBJDIR) ) || exit 1 ; \ 9.157 - fi 9.158 - @if [ -s $(COMPILE_LIST.cpp) ] ; then \ 9.159 - $(ECHO) "$(COMPILE.cpp) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \ 9.160 - `$(CAT) $(COMPILE_LIST.cpp)`" ; \ 9.161 - ( $(COMPILE.cpp) $(CFLAGS_GPROF) $(AUTOMATIC_PCH_OPTION) \ 9.162 - `$(CAT) $(COMPILE_LIST.cpp)` && \ 9.163 - $(ECHO) "$(MV) `$(CAT) $(COMPILE_OBJ_LIST.cpp)` $(OBJDIR)" && \ 9.164 - $(MV) `$(CAT) $(COMPILE_OBJ_LIST.cpp)` $(OBJDIR) ) || exit 1 ; \ 9.165 - fi 9.166 - @$(RM) $(COMPILE_BATCH.c) $(COMPILE_LIST.c) $(COMPILE_OBJ_LIST.c) 9.167 - @$(RM) $(COMPILE_BATCH.cpp) $(COMPILE_LIST.cpp) $(COMPILE_OBJ_LIST.cpp) 9.168 - 9.169 -endif 9.170 - 9.171 -# newer as does not handle c++ style comments 9.172 -$(OBJDIR)/%.$(OBJECT_SUFFIX): %.s 9.173 - ifneq ($(CC_VERSION), gcc) 9.174 - @$(prep-target) 9.175 - $(COMPILE.s) $(CC_OBJECT_OUTPUT_FLAG)$@ $< 9.176 - else 9.177 - @$(prep-target) 9.178 - $(CPP) -x assembler-with-cpp $< | $(COMPILE.s) -o $@ 9.179 - endif 9.180 - @$(check-conventions) 9.181 - 9.182 -# 9.183 -# Quick hack for making the compiler generate just the assembly file. 9.184 -# $ gnumake obj/sparc/myfile.s 9.185 -# 9.186 -$(OBJDIR)/%.s: %.c 9.187 - @$(prep-target) 9.188 - $(COMPILE.c) $(CC_OBJECT_OUTPUT_FLAG)$@ -S $< 9.189 - @$(check-conventions) 9.190 - 9.191 -# remove the intermediate files from the directories. 9.192 -# (If VARIANT=OPT, this removes all debug and fastdebug files too) 9.193 -clobber clean:: 9.194 - $(RM) -r $(OBJDIR) 9.195 - $(RM) -r $(OBJDIR)_* 9.196 - 9.197 -# 9.198 -# Lint support 9.199 -# (The 'lint' rule below is an older rule not using the .$(LINT_SUFFIX) files) 9.200 -# 9.201 - 9.202 -ifeq ($(PLATFORM), solaris) 9.203 -$(OBJDIR)/%.$(LINT_SUFFIX): %.c 9.204 - @$(prep-target) 9.205 - $(LINT.c) -dirout=$(OBJDIR) -c $< 9.206 -lint.clean: 9.207 - $(RM) $(OBJDIR)/*.$(LINT_SUFFIX) 9.208 -# Old rule 9.209 -lint: $(FILES_c) 9.210 - ifneq ($(FILES_c),) 9.211 - $(LINT.c) -Ncheck -Nlevel=3 $? $(LDLIBS) > lint.$(ARCH) 2>&1 9.212 - endif 9.213 -endif 9.214 - 9.215 -.PHONY: batch_compile 9.216 - 9.217 -
10.1 --- a/make/common/shared/Compiler-gcc.gmk Thu Sep 23 17:33:23 2010 -0700 10.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 10.3 @@ -1,119 +0,0 @@ 10.4 -# 10.5 -# Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved. 10.6 -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 10.7 -# 10.8 -# This code is free software; you can redistribute it and/or modify it 10.9 -# under the terms of the GNU General Public License version 2 only, as 10.10 -# published by the Free Software Foundation. Oracle designates this 10.11 -# particular file as subject to the "Classpath" exception as provided 10.12 -# by Oracle in the LICENSE file that accompanied this code. 10.13 -# 10.14 -# This code is distributed in the hope that it will be useful, but WITHOUT 10.15 -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 10.16 -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 10.17 -# version 2 for more details (a copy is included in the LICENSE file that 10.18 -# accompanied this code). 10.19 -# 10.20 -# You should have received a copy of the GNU General Public License version 10.21 -# 2 along with this work; if not, write to the Free Software Foundation, 10.22 -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 10.23 -# 10.24 -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 10.25 -# or visit www.oracle.com if you need additional information or have any 10.26 -# questions. 10.27 -# 10.28 - 10.29 -# 10.30 -# GCC Compiler settings 10.31 -# 10.32 - 10.33 -COMPILER_NAME=GCC 10.34 - 10.35 -ifeq ($(PLATFORM), windows) 10.36 - 10.37 - # Settings specific to Windows, pretty stale, hasn't been used 10.38 - CC = $(COMPILER_PATH)gcc 10.39 - CPP = $(COMPILER_PATH)gcc -E 10.40 - CXX = $(COMPILER_PATH)g++ 10.41 - CCC = $(COMPILER_PATH)g++ 10.42 - LIBEXE = $(COMPILER_PATH)lib 10.43 - LINK = $(COMPILER_PATH)link 10.44 - RC = $(MSDEVTOOLS_PATH)link 10.45 - LINK32 = $(LINK) 10.46 - RSC = $(RC) 10.47 - # unset any GNU Make settings of MFLAGS and MAKEFLAGS which may mess up nmake 10.48 - NMAKE = MFLAGS= MAKEFLAGS= $(COMPILER_PATH)nmake -nologo 10.49 - ifeq ($(ARCH_DATA_MODEL), 32) 10.50 - CC_VER = UNKNOWN 10.51 - CC_TYPE = UNKNOWN 10.52 - else 10.53 - CC_VER = UNKNOWN 10.54 - CC_TYPE = UNKNOWN 10.55 - endif 10.56 - _LINK_VER :=$(shell $(LINK) 2>&1 | $(HEAD) -n 1) 10.57 - LINK_VER :=$(call GetVersion,"$(_LINK_VER)") 10.58 - 10.59 -endif 10.60 - 10.61 -ifeq ($(PLATFORM), linux) 10.62 - 10.63 - # Settings specific to Linux 10.64 - CC = $(COMPILER_PATH)gcc 10.65 - CPP = $(COMPILER_PATH)gcc -E 10.66 - # statically link libstdc++ before C++ ABI is stablized on Linux 10.67 - STATIC_CXX = true 10.68 - ifeq ($(STATIC_CXX),true) 10.69 - # g++ always dynamically links libstdc++, even we use "-Wl,-Bstatic -lstdc++" 10.70 - # We need to use gcc to statically link the C++ runtime. gcc and g++ use 10.71 - # the same subprocess to compile C++ files, so it is OK to build using gcc. 10.72 - CXX = $(COMPILER_PATH)gcc 10.73 - else 10.74 - CXX = $(COMPILER_PATH)g++ 10.75 - endif 10.76 - ifeq ($(ZERO_BUILD), true) 10.77 - # zero 10.78 - REQUIRED_CC_VER = 3.2 10.79 - REQUIRED_GCC_VER = 3.2.* 10.80 - else 10.81 - ifneq ("$(findstring sparc,$(ARCH))", "") 10.82 - # sparc or sparcv9 10.83 - REQUIRED_CC_VER = 4.0 10.84 - else 10.85 - ifeq ($(ARCH_DATA_MODEL), 32) 10.86 - # i586 10.87 - REQUIRED_CC_VER = 3.2 10.88 - else 10.89 - ifeq ($(ARCH), amd64) 10.90 - # amd64 10.91 - REQUIRED_CC_VER = 3.2 10.92 - endif 10.93 - ifeq ($(ARCH), ia64) 10.94 - # ia64 10.95 - REQUIRED_CC_VER = 3.2 10.96 - endif 10.97 - endif 10.98 - endif 10.99 - endif 10.100 - # Option used to create a shared library 10.101 - SHARED_LIBRARY_FLAG = -shared -mimpure-text 10.102 - SUN_COMP_VER := $(shell $(CC) --verbose 2>&1 ) 10.103 - 10.104 -endif 10.105 - 10.106 -ifeq ($(PLATFORM), solaris) 10.107 - 10.108 - # Settings specific to Solaris 10.109 - CC = $(COMPILER_PATH)gcc 10.110 - CPP = $(COMPILER_PATH)gcc -E 10.111 - CXX = $(COMPILER_PATH)g++ 10.112 - REQUIRED_CC_VER = 3.2 10.113 - 10.114 - # Option used to create a shared library 10.115 - SHARED_LIBRARY_FLAG = -G 10.116 - 10.117 -endif 10.118 - 10.119 -# Get gcc version 10.120 -_CC_VER :=$(shell $(CC) -dumpversion 2>&1 ) 10.121 -CC_VER :=$(call GetVersion,"$(_CC_VER)") 10.122 -
11.1 --- a/make/common/shared/Compiler-msvc.gmk Thu Sep 23 17:33:23 2010 -0700 11.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 11.3 @@ -1,186 +0,0 @@ 11.4 -# 11.5 -# Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved. 11.6 -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 11.7 -# 11.8 -# This code is free software; you can redistribute it and/or modify it 11.9 -# under the terms of the GNU General Public License version 2 only, as 11.10 -# published by the Free Software Foundation. Oracle designates this 11.11 -# particular file as subject to the "Classpath" exception as provided 11.12 -# by Oracle in the LICENSE file that accompanied this code. 11.13 -# 11.14 -# This code is distributed in the hope that it will be useful, but WITHOUT 11.15 -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11.16 -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11.17 -# version 2 for more details (a copy is included in the LICENSE file that 11.18 -# accompanied this code). 11.19 -# 11.20 -# You should have received a copy of the GNU General Public License version 11.21 -# 2 along with this work; if not, write to the Free Software Foundation, 11.22 -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 11.23 -# 11.24 -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 11.25 -# or visit www.oracle.com if you need additional information or have any 11.26 -# questions. 11.27 -# 11.28 - 11.29 -# 11.30 -# MSVC Compiler settings 11.31 -# 11.32 - 11.33 -ifeq ($(PLATFORM), windows) 11.34 - CC = $(COMPILER_PATH)cl 11.35 - CPP = $(COMPILER_PATH)cl 11.36 - CXX = $(COMPILER_PATH)cl 11.37 - CCC = $(COMPILER_PATH)cl 11.38 - LIBEXE = $(COMPILER_PATH)lib 11.39 - LINK = $(COMPILER_PATH)link 11.40 - RC = $(MSDEVTOOLS_PATH)rc 11.41 - LINK32 = $(LINK) 11.42 - RSC = $(RC) 11.43 - 11.44 - # Fill in unknown values 11.45 - COMPILER_NAME=Unknown MSVC Compiler 11.46 - COMPILER_VERSION= 11.47 - REQUIRED_CC_VER= 11.48 - REQUIRED_LINK_VER= 11.49 - 11.50 - # unset any GNU Make settings of MFLAGS and MAKEFLAGS which may mess up nmake 11.51 - NMAKE = MFLAGS= MAKEFLAGS= $(COMPILER_PATH)nmake -nologo 11.52 - 11.53 - # Compiler version and type (Always get word after "Version") 11.54 - ifndef CC_VER 11.55 - CC_VER := $(shell $(CC) 2>&1 | $(HEAD) -n 1 | $(SED) 's/.*\(Version.*\)/\1/' | $(NAWK) '{print $$2}') 11.56 - export CC_VER 11.57 - endif 11.58 - 11.59 - # SDK-64 and MSVC6 put REBASE.EXE in a different places - go figure... 11.60 - ifeq ($(ARCH_DATA_MODEL), 32) 11.61 - ifndef LINK_VER 11.62 - LINK_VER := $(shell $(LINK) | $(HEAD) -n 1 | $(NAWK) '{print $$6}') 11.63 - export LINK_VER 11.64 - endif 11.65 - CC_MAJORVER :=$(call MajorVersion,$(CC_VER)) 11.66 - ifeq ($(CC_MAJORVER), 13) 11.67 - # This should be: CC_VER=13.10.3077 LINK_VER=7.10.3077 11.68 - REQUIRED_CC_VER = 13.10.3077 11.69 - REQUIRED_LINK_VER = 7.10.3077 11.70 - COMPILER_NAME=Visual Studio .NET 2003 Professional C++ 11.71 - COMPILER_VERSION=VS2003 11.72 - REBASE = $(COMPILER_PATH)../../Common7/Tools/Bin/rebase 11.73 - MTL = $(COMPILER_PATH)../../Common7/Tools/Bin/midl 11.74 - ifndef COMPILER_PATH 11.75 - COMPILER_PATH := $(error COMPILER_PATH cannot be empty here) 11.76 - endif 11.77 - endif 11.78 - ifeq ($(CC_MAJORVER), 14) 11.79 - # This should be: CC_VER=14.00.50727.42 LINK_VER=8.00.50727.42 11.80 - REQUIRED_CC_VER = 14.00.50727.42 11.81 - REQUIRED_LINK_VER = 8.00.50727.42 11.82 - COMPILER_NAME=Visual Studio 8 11.83 - COMPILER_VERSION=VS2005 11.84 - REBASE = $(COMPILER_PATH)../../Common8/Tools/Bin/rebase 11.85 - MTL = $(COMPILER_PATH)../../Common8/Tools/Bin/midl 11.86 - ifndef COMPILER_PATH 11.87 - COMPILER_PATH := $(error COMPILER_PATH cannot be empty here) 11.88 - endif 11.89 - endif 11.90 - ifeq ($(CC_MAJORVER), 15) 11.91 - # This should be: CC_VER=15.00.21022.08 LINK_VER=9.00.21022.08 11.92 - REQUIRED_CC_VER = 15.00.21022.08 11.93 - REQUIRED_LINK_VER = 9.00.21022.08 11.94 - COMPILER_NAME=Visual Studio 9 11.95 - COMPILER_VERSION=VS2008 11.96 - #rebase and midl moved out of Visual Studio into the SDK: 11.97 - REBASE = $(MSDEVTOOLS_PATH)/rebase 11.98 - MTL = $(MSDEVTOOLS_PATH)/midl.exe 11.99 - ifndef COMPILER_PATH 11.100 - COMPILER_PATH := $(error COMPILER_PATH cannot be empty here) 11.101 - endif 11.102 - endif 11.103 - ifeq ($(CC_MAJORVER), 16) 11.104 - # This should be: CC_VER=16.00.30319.01 LINK_VER=10.00.30319.01 11.105 - REQUIRED_CC_VER = 16.00.30319.01 11.106 - REQUIRED_LINK_VER = 10.00.30319.01 11.107 - COMPILER_NAME=Visual Studio 10 11.108 - COMPILER_VERSION=VS2010 11.109 - #rebase and midl moved out of Visual Studio into the SDK: 11.110 - REBASE = $(MSDEVTOOLS_PATH)/rebase 11.111 - MTL = $(MSDEVTOOLS_PATH)/midl.exe 11.112 - ifndef COMPILER_PATH 11.113 - COMPILER_PATH := $(error COMPILER_PATH cannot be empty here) 11.114 - endif 11.115 - endif 11.116 - else 11.117 - # else ARCH_DATA_MODEL is 64 11.118 - ifndef LINK_VER 11.119 - LINK_VER := $(shell $(LINK) | $(HEAD) -n 1 | $(NAWK) '{print $$6}') 11.120 - export LINK_VER 11.121 - endif 11.122 - CC_MAJORVER :=$(call MajorVersion,$(CC_VER)) 11.123 - CC_MINORVER :=$(call MinorVersion,$(CC_VER)) 11.124 - CC_MICROVER :=$(call MicroVersion,$(CC_VER)) 11.125 - ifeq ($(ARCH), ia64) 11.126 - REQUIRED_CC_VER = 13.00.9337.7 11.127 - REQUIRED_LINK_VER = 7.00.9337.7 11.128 - endif 11.129 - ifeq ($(ARCH), amd64) 11.130 - REQUIRED_CC_VER = 14.00.40310.41 11.131 - REQUIRED_LINK_VER = 8.00.40310.39 11.132 - endif 11.133 - ifeq ($(CC_MAJORVER), 13) 11.134 - ifeq ($(ARCH), ia64) 11.135 - # This should be: CC_VER=13.00.9337.7 LINK_VER=7.00.9337.7 11.136 - COMPILER_NAME=Microsoft Platform SDK - November 2001 Edition 11.137 - COMPILER_VERSION=VS2003 11.138 - endif 11.139 - endif 11.140 - ifeq ($(CC_MAJORVER), 14) 11.141 - ifeq ($(ARCH), amd64) 11.142 - ifeq ($(CC_MICROVER), 30701) 11.143 - # This should be: CC_VER=14.00.30701 LINK_VER=8.00.30701 11.144 - # WARNING: it says 14, but it is such an early build it doesn't 11.145 - # have all the VS2005 compiler option changes, so treat 11.146 - # this like a VS2003 compiler. 11.147 - COMPILER_NAME=Microsoft Platform SDK - February 2003 Edition 11.148 - COMPILER_VERSION=VS2003 11.149 - else 11.150 - # This should be: CC_VER=14.00.40310.41 LINK_VER=8.00.40310.39 11.151 - COMPILER_NAME=Microsoft Platform SDK - April 2005 Edition (3790.1830) 11.152 - COMPILER_VERSION=VS2005 11.153 - endif 11.154 - endif 11.155 - endif 11.156 - ifeq ($(CC_MAJORVER), 15) 11.157 - # This should be: CC_VER=15.00.21022.8 LINK_VER=9.00.21022.8 11.158 - REQUIRED_CC_VER = 15.00.21022.8 11.159 - REQUIRED_LINK_VER = 9.00.21022.8 11.160 - COMPILER_NAME=Windows SDK 6.1 Visual Studio 9 11.161 - COMPILER_VERSION=VS2008 11.162 - RC = $(MSSDK61)/bin/x64/rc 11.163 - REBASE = $(MSSDK61)/bin/x64/rebase 11.164 - else 11.165 - ifeq ($(CC_MAJORVER), 16) 11.166 - # This should be: CC_VER=16.00.30319.01 LINK_VER=9.00.30319.01 11.167 - REQUIRED_CC_VER = 16.00.30319.01 11.168 - REQUIRED_LINK_VER = 10.00.30319.01 11.169 - COMPILER_NAME=Microsoft Visual Studio 10 11.170 - COMPILER_VERSION=VS2010 11.171 - RC = $(MSSDK7)/bin/x64/rc 11.172 - REBASE = $(MSSDK7)/bin/x64/rebase 11.173 - else 11.174 - # This will cause problems if ALT_COMPILER_PATH is defined to "" 11.175 - # which is a directive to use the PATH. 11.176 - REBASE = $(COMPILER_PATH)../REBASE 11.177 - endif 11.178 - endif 11.179 - ifndef COMPILER_PATH 11.180 - COMPILER_PATH := $(error COMPILER_PATH cannot be empty here) 11.181 - endif 11.182 - endif 11.183 - ifndef COMPILER_VERSION 11.184 - COMPILER_VERSION := $(error COMPILER_VERSION cannot be empty here) 11.185 - endif 11.186 - # Shared library generation flag 11.187 - SHARED_LIBRARY_FLAG = -LD 11.188 -endif 11.189 -
12.1 --- a/make/common/shared/Compiler-sun.gmk Thu Sep 23 17:33:23 2010 -0700 12.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 12.3 @@ -1,69 +0,0 @@ 12.4 -# 12.5 -# Copyright (c) 2005, 2009, Oracle and/or its affiliates. All rights reserved. 12.6 -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 12.7 -# 12.8 -# This code is free software; you can redistribute it and/or modify it 12.9 -# under the terms of the GNU General Public License version 2 only, as 12.10 -# published by the Free Software Foundation. Oracle designates this 12.11 -# particular file as subject to the "Classpath" exception as provided 12.12 -# by Oracle in the LICENSE file that accompanied this code. 12.13 -# 12.14 -# This code is distributed in the hope that it will be useful, but WITHOUT 12.15 -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12.16 -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 12.17 -# version 2 for more details (a copy is included in the LICENSE file that 12.18 -# accompanied this code). 12.19 -# 12.20 -# You should have received a copy of the GNU General Public License version 12.21 -# 2 along with this work; if not, write to the Free Software Foundation, 12.22 -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 12.23 -# 12.24 -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 12.25 -# or visit www.oracle.com if you need additional information or have any 12.26 -# questions. 12.27 -# 12.28 - 12.29 -# 12.30 -# Sun Studio Compiler settings 12.31 -# 12.32 - 12.33 -COMPILER_NAME=Sun Studio 12.34 - 12.35 -# Sun Studio Compiler settings specific to Solaris 12.36 -ifeq ($(PLATFORM), solaris) 12.37 - COMPILER_VERSION=SS12 12.38 - REQUIRED_CC_VER=5.9 12.39 - CC = $(COMPILER_PATH)cc 12.40 - CPP = $(COMPILER_PATH)cc -E 12.41 - CXX = $(COMPILER_PATH)CC 12.42 - LINT = $(COMPILER_PATH)lint 12.43 - # Option used to create a shared library 12.44 - SHARED_LIBRARY_FLAG = -G 12.45 -endif 12.46 - 12.47 -# Sun Studio Compiler settings specific to Linux 12.48 -ifeq ($(PLATFORM), linux) 12.49 - # This has not been tested 12.50 - COMPILER_VERSION=SS12 12.51 - REQUIRED_CC_VER=5.9 12.52 - CC = $(COMPILER_PATH)cc 12.53 - CPP = $(COMPILER_PATH)cc -E 12.54 - CXX = $(COMPILER_PATH)CC 12.55 - LINT = $(COMPILER_PATH)lint 12.56 - # statically link libstdc++ before C++ ABI is stablized on Linux 12.57 - STATIC_CXX = true 12.58 - ifeq ($(STATIC_CXX),true) 12.59 - # CC always dynamically links libstdc++, even we use "-Wl,-Bstatic -lstdc++" 12.60 - # We need to use cc to statically link the C++ runtime. 12.61 - CXX = $(COMPILER_PATH)cc 12.62 - else 12.63 - CXX = $(COMPILER_PATH)CC 12.64 - endif 12.65 - # Option used to create a shared library 12.66 - SHARED_LIBRARY_FLAG = -G 12.67 -endif 12.68 - 12.69 -# Get compiler version 12.70 -_CC_VER :=$(shell $(CC) -V 2>&1 | $(HEAD) -n 1) 12.71 -CC_VER :=$(call GetVersion,"$(_CC_VER)") 12.72 -
13.1 --- a/make/common/shared/Compiler.gmk Thu Sep 23 17:33:23 2010 -0700 13.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 13.3 @@ -1,47 +0,0 @@ 13.4 -# 13.5 -# Copyright (c) 2005, Oracle and/or its affiliates. All rights reserved. 13.6 -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 13.7 -# 13.8 -# This code is free software; you can redistribute it and/or modify it 13.9 -# under the terms of the GNU General Public License version 2 only, as 13.10 -# published by the Free Software Foundation. Oracle designates this 13.11 -# particular file as subject to the "Classpath" exception as provided 13.12 -# by Oracle in the LICENSE file that accompanied this code. 13.13 -# 13.14 -# This code is distributed in the hope that it will be useful, but WITHOUT 13.15 -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13.16 -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 13.17 -# version 2 for more details (a copy is included in the LICENSE file that 13.18 -# accompanied this code). 13.19 -# 13.20 -# You should have received a copy of the GNU General Public License version 13.21 -# 2 along with this work; if not, write to the Free Software Foundation, 13.22 -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 13.23 -# 13.24 -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 13.25 -# or visit www.oracle.com if you need additional information or have any 13.26 -# questions. 13.27 -# 13.28 - 13.29 -# 13.30 -# Compiler settings for all platforms and the default compiler for each. 13.31 -# 13.32 - 13.33 -# Windows uses Microsoft compilers by default 13.34 -ifeq ($(PLATFORM), windows) 13.35 - override CC_VERSION = msvc 13.36 -endif 13.37 - 13.38 -# Solaris uses Sun Studio compilers by default 13.39 -ifeq ($(PLATFORM), solaris) 13.40 - override CC_VERSION = sun 13.41 -endif 13.42 - 13.43 -# Linux uses GNU compilers by default 13.44 -ifeq ($(PLATFORM), linux) 13.45 - override CC_VERSION = gcc 13.46 -endif 13.47 - 13.48 -# Get the compiler specific settings 13.49 -include $(BUILDDIR)/common/shared/Compiler-$(CC_VERSION).gmk 13.50 -
14.1 --- a/make/common/shared/Defs-java.gmk Thu Sep 23 17:33:23 2010 -0700 14.2 +++ b/make/common/shared/Defs-java.gmk Fri Sep 24 16:38:05 2010 -0700 14.3 @@ -42,7 +42,7 @@ 14.4 endif 14.5 14.6 # 14.7 -# All java tools (javac, javah, and javadoc) run faster with certain java 14.8 +# All java tools (javac and javadoc) run faster with certain java 14.9 # options, this macro should be used with all these tools. 14.10 # In particular, the client VM makes these tools run faster when 14.11 # it's available. 14.12 @@ -134,21 +134,14 @@ 14.13 JAVACFLAGS += -classpath $(BOOTDIR)/lib/tools.jar 14.14 JAVACFLAGS += $(OTHER_JAVACFLAGS) 14.15 14.16 -# Needed for javah 14.17 -JAVAHFLAGS += -classpath $(CLASSBINDIR) 14.18 - 14.19 # Langtools 14.20 ifdef LANGTOOLS_DIST 14.21 JAVAC_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javac.jar 14.22 - JAVAH_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javah.jar 14.23 JAVADOC_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/javadoc.jar 14.24 DOCLETS_JAR = $(LANGTOOLS_DIST)/bootstrap/lib/doclets.jar 14.25 JAVAC_CMD = $(BOOT_JAVA_CMD) \ 14.26 "-Xbootclasspath/p:$(JAVAC_JAR)" \ 14.27 -jar $(JAVAC_JAR) $(JAVACFLAGS) 14.28 - JAVAH_CMD = $(BOOT_JAVA_CMD) \ 14.29 - "-Xbootclasspath/p:$(JAVAH_JAR)$(CLASSPATH_SEPARATOR)$(JAVADOC_JAR)$(CLASSPATH_SEPARATOR)$(JAVAC_JAR)" \ 14.30 - -jar $(JAVAH_JAR) $(JAVAHFLAGS) 14.31 JAVADOC_CMD = $(BOOT_JAVA_CMD) \ 14.32 "-Xbootclasspath/p:$(JAVADOC_JAR)$(CLASSPATH_SEPARATOR)$(JAVAC_JAR)$(CLASSPATH_SEPARATOR)$(DOCLETS_JAR)" \ 14.33 -jar $(JAVADOC_JAR) 14.34 @@ -156,8 +149,6 @@ 14.35 # If no explicit tools, use boot tools (add VM flags in this case) 14.36 JAVAC_CMD = $(JAVA_TOOLS_DIR)/javac $(JAVAC_JVM_FLAGS) \ 14.37 $(JAVACFLAGS) 14.38 - JAVAH_CMD = $(JAVA_TOOLS_DIR)/javah \ 14.39 - $(JAVAHFLAGS) 14.40 JAVADOC_CMD = $(JAVA_TOOLS_DIR)/javadoc $(JAVA_TOOLS_FLAGS:%=-J%) 14.41 endif 14.42
15.1 --- a/make/common/shared/Defs-linux.gmk Thu Sep 23 17:33:23 2010 -0700 15.2 +++ b/make/common/shared/Defs-linux.gmk Fri Sep 24 16:38:05 2010 -0700 15.3 @@ -94,14 +94,6 @@ 15.4 JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools 15.5 endif 15.6 15.7 -# COMPILER_PATH: path to where the compiler and tools are installed. 15.8 -# NOTE: Must end with / so that it could be empty, allowing PATH usage. 15.9 -ifneq "$(origin ALT_COMPILER_PATH)" "undefined" 15.10 - COMPILER_PATH :=$(call PrefixPath,$(ALT_COMPILER_PATH)) 15.11 -else 15.12 - COMPILER_PATH =/usr/bin/ 15.13 -endif 15.14 - 15.15 # DEVTOOLS_PATH: for other tools required for building (such as zip, etc.) 15.16 # NOTE: Must end with / so that it could be empty, allowing PATH usage. 15.17 ifneq "$(origin ALT_DEVTOOLS_PATH)" "undefined"
16.1 --- a/make/common/shared/Defs-solaris.gmk Thu Sep 23 17:33:23 2010 -0700 16.2 +++ b/make/common/shared/Defs-solaris.gmk Fri Sep 24 16:38:05 2010 -0700 16.3 @@ -86,24 +86,6 @@ 16.4 JDK_DEVTOOLS_DIR =$(SLASH_JAVA)/devtools 16.5 endif 16.6 16.7 -# COMPILER_PATH: path to where the compiler and tools are installed. 16.8 -# NOTE: Must end with / so that it could be empty, allowing PATH usage. 16.9 -ifneq "$(origin ALT_COMPILER_PATH)" "undefined" 16.10 - COMPILER_PATH :=$(call PrefixPath,$(ALT_COMPILER_PATH)) 16.11 -else 16.12 - # Careful here, COMPILER_VERSION may not be defined yet (see Compiler.gmk) 16.13 - # If the place where we keep a set of Sun Studio compilers doesn't exist, 16.14 - # try and use /opt/SUNWspro, the default location for the SS compilers. 16.15 - # (DirExists checks for this path twice, an automount double check) 16.16 - _SUNSTUDIO_SET_ROOT=$(JDK_DEVTOOLS_DIR)/$(ARCH_FAMILY)/SUNWspro 16.17 - SUNSTUDIO_SET_ROOT:=$(call DirExists,$(_SUNSTUDIO_SET_ROOT),$(_SUNSTUDIO_SET_ROOT),) 16.18 - ifneq ($(SUNSTUDIO_SET_ROOT),) 16.19 - COMPILER_PATH =$(SUNSTUDIO_SET_ROOT)/$(COMPILER_VERSION)/bin/ 16.20 - else 16.21 - COMPILER_PATH =/opt/SUNWspro/bin/ 16.22 - endif 16.23 -endif 16.24 - 16.25 # DEVTOOLS_PATH: for other tools required for building (such as zip, etc.) 16.26 # NOTE: Must end with / so that it could be empty, allowing PATH usage. 16.27 ifneq "$(origin ALT_DEVTOOLS_PATH)" "undefined"
17.1 --- a/make/common/shared/Defs-windows.gmk Thu Sep 23 17:33:23 2010 -0700 17.2 +++ b/make/common/shared/Defs-windows.gmk Fri Sep 24 16:38:05 2010 -0700 17.3 @@ -31,7 +31,6 @@ 17.4 # Level: Default is 3, 0 means none, 4 is the most but may be unreliable 17.5 # Some makefiles may have set this to 0 to turn off warnings completely, 17.6 # which also effectively creates a COMPILER_WARNINGS_FATAL=false situation. 17.7 -# Program.gmk may turn this down to 2 (building .exe's). 17.8 # Windows 64bit platforms are less likely to be warning free. 17.9 # Historically, Windows 32bit builds should be mostly warning free. 17.10 ifndef COMPILER_WARNING_LEVEL 17.11 @@ -74,7 +73,7 @@ 17.12 # The ALT values should never really have spaces or use \. 17.13 # Suspect these environment variables to have spaces and/or \ characters: 17.14 # SYSTEMROOT, SystemRoot, WINDIR, windir, PROGRAMFILES, ProgramFiles, 17.15 -# MSTOOLS, Mstools, MSSDK, MSSdk, VC71COMNTOOLS, 17.16 +# VC71COMNTOOLS, 17.17 # MSVCDIR, MSVCDir. 17.18 # So use $(subst \,/,) on them first adding quotes and placing them in 17.19 # their own variable assigned with :=, then use FullPath. 17.20 @@ -201,124 +200,6 @@ 17.21 export SHORTPROGRAMFILES 17.22 endif 17.23 17.24 -# Compilers, SDK, and Visual Studio (MSDEV) [32bit is different from 64bit] 17.25 -ifeq ($(ARCH_DATA_MODEL), 32) 17.26 - ifndef SHORTMSVCDIR 17.27 - # Try looking in MSVCDIR or MSVCDir area first (set by vcvars32.bat) 17.28 - ifdef MSVCDIR 17.29 - xMSVCDIR :="$(subst \,/,$(MSVCDIR))" 17.30 - SHORTMSVCDIR :=$(call FullPath,$(xMSVCDIR)) 17.31 - else 17.32 - ifdef MSVCDir 17.33 - xMSVCDIR :="$(subst \,/,$(MSVCDir))" 17.34 - SHORTMSVCDIR :=$(call FullPath,$(xMSVCDIR)) 17.35 - else 17.36 - ifneq ($(SHORTPROGRAMFILES),) 17.37 - xMSVCDIR :="$(SHORTPROGRAMFILES)/Microsoft Visual Studio .NET 2003/Vc7" 17.38 - SHORTMSVCDIR :=$(call FullPath,$(xMSVCDIR)) 17.39 - endif 17.40 - endif 17.41 - endif 17.42 - ifneq ($(subst MSDev98,OLDOLDOLD,$(SHORTMSVCDIR)),$(SHORTMSVCDIR)) 17.43 - SHORTMSVCDIR := 17.44 - endif 17.45 - # If we still don't have it, look for VS100COMNTOOLS, setup by installer? 17.46 - ifeq ($(SHORTMSVCDIR),) 17.47 - ifdef VS100COMNTOOLS # /Common/Tools directory, use ../../Vc 17.48 - xVS100COMNTOOLS :="$(subst \,/,$(VS100COMNTOOLS))" 17.49 - _vs100tools :=$(call FullPath,$(xVS100COMNTOOLS)) 17.50 - endif 17.51 - ifneq ($(_vs100tools),) 17.52 - SHORTMSVCDIR :=$(_vs100tools)/../../Vc 17.53 - endif 17.54 - endif 17.55 - export SHORTMSVCDIR 17.56 - # If we still don't have it, look for VS71COMNTOOLS, setup by installer? 17.57 - ifeq ($(SHORTMSVCDIR),) 17.58 - ifdef VS71COMNTOOLS # /Common/Tools directory, use ../../Vc7 17.59 - xVS71COMNTOOLS :="$(subst \,/,$(VS71COMNTOOLS))" 17.60 - _vs71tools :=$(call FullPath,$(xVS71COMNTOOLS)) 17.61 - endif 17.62 - ifneq ($(_vs71tools),) 17.63 - SHORTMSVCDIR :=$(_vs71tools)/../../Vc7 17.64 - endif 17.65 - endif 17.66 - export SHORTMSVCDIR 17.67 - endif 17.68 - ifneq ($(SHORTMSVCDIR),) 17.69 - SHORTCOMPILERBIN :=$(SHORTMSVCDIR)/Bin 17.70 - SHORTPSDK :=$(SHORTMSVCDIR)/PlatformSDK 17.71 - export SHORTCOMPILERBIN 17.72 - export SHORTPSDK 17.73 - endif 17.74 -endif 17.75 - 17.76 -# The Microsoft Platform SDK installed by itself 17.77 -ifneq ($(SHORTPROGRAMFILES),) 17.78 - ifndef SHORTPSDK 17.79 - xPSDK :="$(SHORTPROGRAMFILES)/Microsoft Platform SDK" 17.80 - SHORTPSDK :=$(call FullPath,$(xPSDK)) 17.81 - ifeq ($(SHORTPSDK),) 17.82 - xPSDK :="$(SHORTPROGRAMFILES)/Microsoft SDK" 17.83 - SHORTPSDK :=$(call FullPath,$(xMSSDK)) 17.84 - endif 17.85 - export SHORTPSDK 17.86 - endif 17.87 -endif 17.88 - 17.89 -# If no SDK found yet, look in other places 17.90 -ifndef SHORTPSDK 17.91 - ifdef MSSDK 17.92 - xMSSDK :="$(subst \,/,$(MSSDK))" 17.93 - SHORTPSDK :=$(call FullPath,$(xMSSDK)) 17.94 - else 17.95 - ifdef MSSdk 17.96 - xMSSDK :="$(subst \,/,$(MSSdk))" 17.97 - SHORTPSDK :=$(call FullPath,$(xMSSDK)) 17.98 - endif 17.99 - endif 17.100 - export SHORTPSDK 17.101 -endif 17.102 - 17.103 -# Compilers for 64bit are from SDK 17.104 -ifeq ($(ARCH_DATA_MODEL), 64) 17.105 - ifndef SHORTCOMPILERBIN 17.106 - ifdef VS100COMNTOOLS # /Common7/Tools directory, use ../../Vc 17.107 - xVS100COMNTOOLS :="$(subst \,/,$(VS100COMNTOOLS))" 17.108 - _vs100tools :=$(call FullPath,$(xVS100COMNTOOLS)) 17.109 - endif 17.110 - ifneq ($(_vs100tools),) 17.111 - SHORTCOMPILERBIN :=$(_vs100tools)/../../Vc/bin/amd64 17.112 - xMSSDK70 :="C:/Program Files (x86)/Microsoft SDKs/Windows/v7.0A/" 17.113 - MSSDK7 :=$(call FullPath,$(xMSSDK70)) 17.114 - export MSSDK7 17.115 - else 17.116 - xMSSDK61 :="C:/Program Files/Microsoft SDKs/Windows/v6.1/" 17.117 - MSSDK61 :=$(call FullPath,$(xMSSDK61)) 17.118 - xVS2008 :="C:/Program Files (x86)/Microsoft Visual Studio 9.0/" 17.119 - _vs2008 :=$(call FullPath,$(xVS2008)) 17.120 - ifneq ($(_vs2008),) 17.121 - ifeq ($(ARCH), ia64) 17.122 - SHORTCOMPILERBIN :=$(_vs2008)/VC/Bin/x86_ia64 17.123 - endif 17.124 - ifeq ($(ARCH), amd64) 17.125 - SHORTCOMPILERBIN :=$(_vs2008)/VC/Bin/$(ARCH) 17.126 - endif 17.127 - else 17.128 - ifneq ($(SHORTPSDK),) 17.129 - ifeq ($(ARCH), ia64) 17.130 - SHORTCOMPILERBIN :=$(SHORTPSDK)/Bin/Win64 17.131 - endif 17.132 - ifeq ($(ARCH), amd64) 17.133 - SHORTCOMPILERBIN :=$(SHORTPSDK)/Bin/Win64/x86/$(ARCH) 17.134 - endif 17.135 - endif 17.136 - endif 17.137 - endif 17.138 - export SHORTCOMPILERBIN 17.139 - endif 17.140 -endif 17.141 - 17.142 # Location on system where jdk installs might be 17.143 ifneq ($(SHORTPROGRAMFILES),) 17.144 USRJDKINSTANCES_PATH =$(SHORTPROGRAMFILES)/Java 17.145 @@ -356,55 +237,6 @@ 17.146 export JDK_DEVTOOLS_DIR 17.147 endif 17.148 17.149 -# COMPILER_PATH: path to where the compiler and tools are installed. 17.150 -# NOTE: Must end with / so that it could be empty, allowing PATH usage. 17.151 -ifndef COMPILER_PATH 17.152 - ifdef ALT_COMPILER_PATH 17.153 - xALT_COMPILER_PATH :="$(subst \,/,$(ALT_COMPILER_PATH))" 17.154 - fxALT_COMPILER_PATH :=$(call FullPath,$(xALT_COMPILER_PATH)) 17.155 - COMPILER_PATH :=$(call PrefixPath,$(fxALT_COMPILER_PATH)) 17.156 - else 17.157 - COMPILER_PATH :=$(call PrefixPath,$(SHORTCOMPILERBIN)) 17.158 - endif 17.159 - COMPILER_PATH :=$(call AltCheckSpaces,COMPILER_PATH) 17.160 - export COMPILER_PATH 17.161 -endif 17.162 - 17.163 -# MSDEVTOOLS_PATH: path to where the additional MS Compiler tools are. 17.164 -# NOTE: Must end with / so that it could be empty, allowing PATH usage. 17.165 -ifndef MSDEVTOOLS_PATH 17.166 - ifdef ALT_MSDEVTOOLS_PATH 17.167 - xALT_MSDEVTOOLS_PATH :="$(subst \,/,$(ALT_MSDEVTOOLS_PATH))" 17.168 - fxALT_MSDEVTOOLS_PATH :=$(call FullPath,$(xALT_MSDEVTOOLS_PATH)) 17.169 - MSDEVTOOLS_PATH :=$(call PrefixPath,$(fxALT_MSDEVTOOLS_PATH)) 17.170 - else 17.171 - ifeq ($(ARCH_DATA_MODEL), 64) 17.172 - ifdef MSTOOLS 17.173 - xMSTOOLS :="$(subst \,/,$(MSTOOLS))" 17.174 - _ms_tools :=$(call FullPath,$(xMSTOOLS)) 17.175 - else 17.176 - ifdef Mstools 17.177 - xMSTOOLS :="$(subst \,/,$(Mstools))" 17.178 - _ms_tools :=$(call FullPath,$(xMSTOOLS)) 17.179 - else 17.180 - _ms_tools := 17.181 - endif 17.182 - endif 17.183 - ifneq ($(_ms_tools),) 17.184 - _ms_tools_bin :=$(_ms_tools)/Bin 17.185 - else 17.186 - # Assumes compiler bin is .../Bin/win64/x86/AMD64, rc.exe is 3 levels up 17.187 - _ms_tools_bin :=$(SHORTCOMPILERBIN)/../../.. 17.188 - endif 17.189 - else 17.190 - _ms_tools_bin :=$(SHORTCOMPILERBIN) 17.191 - endif 17.192 - MSDEVTOOLS_PATH :=$(call PrefixPath,$(_ms_tools_bin)) 17.193 - endif 17.194 - MSDEVTOOLS_PATH:=$(call AltCheckSpaces,MSDEVTOOLS_PATH) 17.195 - export MSDEVTOOLS_PATH 17.196 -endif 17.197 - 17.198 # DEVTOOLS_PATH: for other tools required for building (such as zip, etc.) 17.199 # NOTE: Must end with / so that it could be empty, allowing PATH usage. 17.200 ifndef DEVTOOLS_PATH
18.1 --- a/make/common/shared/Defs.gmk Thu Sep 23 17:33:23 2010 -0700 18.2 +++ b/make/common/shared/Defs.gmk Fri Sep 24 16:38:05 2010 -0700 18.3 @@ -51,7 +51,7 @@ 18.4 # Get shared system utilities macros defined 18.5 include $(BUILDDIR)/common/shared/Defs-utils.gmk 18.6 18.7 -# Assumes ARCH, PLATFORM, ARCH_VM_SUBDIR, etc. have been defined. 18.8 +# Assumes ARCH, PLATFORM, etc. have been defined. 18.9 18.10 # Simple pwd path 18.11 define PwdPath 18.12 @@ -157,7 +157,6 @@ 18.13 _check_values:=\ 18.14 $(call CheckValue,ARCH,),\ 18.15 $(call CheckValue,ARCH_DATA_MODEL,),\ 18.16 -$(call CheckValue,ARCH_VM_SUBDIR,),\ 18.17 $(call CheckValue,VARIANT,),\ 18.18 $(call CheckValue,PLATFORM,) 18.19 18.20 @@ -194,21 +193,15 @@ 18.21 # can be OPT or DBG, default is OPT 18.22 # Determine the extra pattern to add to the release name for debug/fastdebug. 18.23 # Determine the JDK_IMPORT_VARIANT, so we get the right VM files copied over. 18.24 -# Determine suffix for obj directory or OBJDIR, for .o files. 18.25 -# (by keeping .o files separate, just .o files, they don't clobber each 18.26 -# other, however, the library files will clobber each other). 18.27 # 18.28 ifeq ($(VARIANT), DBG) 18.29 BUILD_VARIANT_RELEASE=-debug 18.30 - OBJDIRNAME_SUFFIX=_g 18.31 else 18.32 BUILD_VARIANT_RELEASE= 18.33 - OBJDIRNAME_SUFFIX= 18.34 endif 18.35 ifeq ($(FASTDEBUG), true) 18.36 VARIANT=DBG 18.37 BUILD_VARIANT_RELEASE=-fastdebug 18.38 - OBJDIRNAME_SUFFIX=_gO 18.39 _JDK_IMPORT_VARIANT=/fastdebug 18.40 endif 18.41 18.42 @@ -330,6 +323,4 @@ 18.43 # Absolute path to output directory 18.44 ABS_OUTPUTDIR:=$(call FullPath,$(OUTPUTDIR)) 18.45 18.46 -# Get shared compiler settings 18.47 -include $(BUILDDIR)/common/shared/Compiler.gmk 18.48
19.1 --- a/make/common/shared/Platform.gmk Thu Sep 23 17:33:23 2010 -0700 19.2 +++ b/make/common/shared/Platform.gmk Fri Sep 24 16:38:05 2010 -0700 19.3 @@ -58,19 +58,10 @@ 19.4 # ARCH sparc, sparcv9, i586, amd64, or ia64 19.5 # ARCH_FAMILY sparc or i586 19.6 # ARCHPROP sparc or x86 19.7 -# ARCH_VM_SUBDIR jre/bin, jre/lib/sparc, etc. 19.8 -# LIBARCH sparc, sparcv9, i386, amd64, or ia64 19.9 # DEV_NULL destination of /dev/null, NUL or /dev/NULL 19.10 # CLASSPATH_SEPARATOR separator in classpath, ; or : 19.11 -# LIB_PREFIX dynamic or static library prefix, lib or empty 19.12 -# LIB_SUFFIX static library file suffix, .lib or .a? 19.13 -# LIBRARY_SUFFIX dynamic library file suffix, .dll or .so 19.14 -# OBJECT_SUFFIX object file suffix, .o or .obj 19.15 -# EXE_SUFFIX executable file suffix, .exe or empty 19.16 # BUNDLE_FILE_SUFFIX suffix for bundles: .tar or .tar.gz 19.17 # ISA_DIR solaris only: /sparcv9 or /amd64 19.18 -# LIBARCH32 solaris only: sparc or i386 19.19 -# LIBARCH64 solaris only: sparcv9 or amd64 19.20 # REQUIRED_WINDOWS_NAME windows only: basic name of windows 19.21 # REQUIRED_WINDOWS_VERSION windows only: specific version of windows 19.22 # USING_CYGWIN windows only: true or false 19.23 @@ -129,7 +120,6 @@ 19.24 # Need to maintain the jre/lib/i386 location for 32-bit Intel 19.25 ifeq ($(ARCH), i586) 19.26 ARCH_FAMILY = $(ARCH) 19.27 - LIBARCH = i386 19.28 # Value of Java os.arch property 19.29 ARCHPROP = x86 19.30 else 19.31 @@ -138,17 +128,8 @@ 19.32 else 19.33 ARCH_FAMILY = sparc 19.34 endif 19.35 - LIBARCH = $(ARCH) 19.36 # Value of Java os.arch property 19.37 - ARCHPROP = $(LIBARCH) 19.38 - endif 19.39 - # The two LIBARCH names 19.40 - ifeq ($(ARCH_FAMILY), sparc) 19.41 - LIBARCH32 = sparc 19.42 - LIBARCH64 = sparcv9 19.43 - else 19.44 - LIBARCH32 = i386 19.45 - LIBARCH64 = amd64 19.46 + ARCHPROP = $(ARCH) 19.47 endif 19.48 # Suffix for file bundles used in previous release 19.49 BUNDLE_FILE_SUFFIX=.tar 19.50 @@ -218,16 +199,12 @@ 19.51 endif 19.52 endif 19.53 19.54 - # Need to maintain the jre/lib/i386 location for 32-bit Intel 19.55 ifeq ($(ARCH), i586) 19.56 - LIBARCH = i386 19.57 + ARCHPROP = i386 19.58 else 19.59 - LIBARCH = $(ARCH) 19.60 + ARCHPROP = $(ARCH) 19.61 endif 19.62 19.63 - # Value of Java os.arch property 19.64 - ARCHPROP = $(LIBARCH) 19.65 - 19.66 # Suffix for file bundles used in previous release 19.67 BUNDLE_FILE_SUFFIX=.tar.gz 19.68 # Minimum disk space needed as determined by running 'du -sk' on 19.69 @@ -303,9 +280,7 @@ 19.70 endif 19.71 endif 19.72 export ARCH_DATA_MODEL 19.73 - # LIBARCH is used to preserve the jre/lib/i386 directory name for 32-bit intel 19.74 ARCH=i586 19.75 - LIBARCH=i386 19.76 # Value of Java os.arch property 19.77 ARCHPROP=x86 19.78 REQUIRED_WINDOWS_NAME=Windows Professional 2000 19.79 @@ -323,9 +298,8 @@ 19.80 ARCH=ia64 19.81 endif 19.82 endif 19.83 - LIBARCH=$(ARCH) 19.84 # Value of Java os.arch property 19.85 - ARCHPROP=$(LIBARCH) 19.86 + ARCHPROP=$(ARCH) 19.87 endif 19.88 ARCH_FAMILY = $(ARCH) 19.89 # Where is unwanted output to be delivered? 19.90 @@ -337,14 +311,6 @@ 19.91 export DEV_NULL 19.92 # Classpath separator 19.93 CLASSPATH_SEPARATOR = ; 19.94 - # The suffix used for object file (.o for unix .obj for windows) 19.95 - OBJECT_SUFFIX = obj 19.96 - # The suffix applied to executables (.exe for windows, nothing for solaris) 19.97 - EXE_SUFFIX = .exe 19.98 - # The prefix applied to library files (lib for solaris, nothing for windows) 19.99 - LIB_PREFIX= 19.100 - LIBRARY_SUFFIX = dll 19.101 - LIB_SUFFIX = lib 19.102 # User name determination (set _USER) 19.103 ifndef USER 19.104 ifdef USERNAME 19.105 @@ -359,8 +325,6 @@ 19.106 else 19.107 _USER:=$(USER) 19.108 endif 19.109 - # Location of client/server directories 19.110 - ARCH_VM_SUBDIR=jre/bin 19.111 # Suffix for file bundles used in previous release 19.112 BUNDLE_FILE_SUFFIX=.tar 19.113 # Minimum disk space needed as determined by running 'du -sk' on 19.114 @@ -430,16 +394,6 @@ 19.115 export DEV_NULL 19.116 # Character used between entries in classpath 19.117 CLASSPATH_SEPARATOR = : 19.118 - # suffix used for object file (.o for unix .obj for windows) 19.119 - OBJECT_SUFFIX = o 19.120 - # The suffix applied to runtime libraries 19.121 - LIBRARY_SUFFIX = so 19.122 - # The suffix applied to link libraries 19.123 - LIB_SUFFIX = so 19.124 - # The suffix applied to executables (.exe for windows, nothing for solaris) 19.125 - EXE_SUFFIX = 19.126 - # The prefix applied to library files (lib for solaris, nothing for windows) 19.127 - LIB_PREFIX = lib 19.128 # User name determination (set _USER) 19.129 ifndef USER 19.130 ifdef LOGNAME 19.131 @@ -450,8 +404,6 @@ 19.132 else 19.133 _USER:=$(USER) 19.134 endif 19.135 - # Location of client/server directories 19.136 - ARCH_VM_SUBDIR=jre/lib/$(LIBARCH) 19.137 endif 19.138 19.139 # If blanks in the username, use the first 4 words and pack them together
20.1 --- a/make/org/omg/idl/Makefile Thu Sep 23 17:33:23 2010 -0700 20.2 +++ b/make/org/omg/idl/Makefile Fri Sep 24 16:38:05 2010 -0700 20.3 @@ -32,12 +32,6 @@ 20.4 PRODUCT = sun 20.5 include $(BUILDDIR)/common/Defs.gmk 20.6 20.7 -# This program must contain a manifest that defines the execution level 20.8 -# needed to follow standard Vista User Access Control Guidelines 20.9 -# This must be set before Program.gmk is included 20.10 -# 20.11 -BUILD_MANIFEST=true 20.12 - 20.13 # 20.14 # Files 20.15 #