Fri, 01 Jun 2012 20:17:46 +0200
7155453: [macosx] re-enable jbb tests in JPRT
Summary: Run SPECjbb in headless mode and enable SPECjbb runs on OSX
Reviewed-by: dcubed, dholmes
duke@435 | 1 | # |
trims@2708 | 2 | # Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. |
duke@435 | 3 | # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
duke@435 | 4 | # |
duke@435 | 5 | # This code is free software; you can redistribute it and/or modify it |
duke@435 | 6 | # under the terms of the GNU General Public License version 2 only, as |
duke@435 | 7 | # published by the Free Software Foundation. |
duke@435 | 8 | # |
duke@435 | 9 | # This code is distributed in the hope that it will be useful, but WITHOUT |
duke@435 | 10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
duke@435 | 11 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
duke@435 | 12 | # version 2 for more details (a copy is included in the LICENSE file that |
duke@435 | 13 | # accompanied this code). |
duke@435 | 14 | # |
duke@435 | 15 | # You should have received a copy of the GNU General Public License version |
duke@435 | 16 | # 2 along with this work; if not, write to the Free Software Foundation, |
duke@435 | 17 | # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
duke@435 | 18 | # |
trims@1907 | 19 | # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
trims@1907 | 20 | # or visit www.oracle.com if you need additional information or have any |
trims@1907 | 21 | # questions. |
duke@435 | 22 | # |
duke@435 | 23 | # |
duke@435 | 24 | |
duke@435 | 25 | # Common rules/macros for the vm, adlc. |
duke@435 | 26 | |
duke@435 | 27 | # Tell make that .cpp is important |
duke@435 | 28 | .SUFFIXES: .cpp $(SUFFIXES) |
duke@435 | 29 | |
duke@435 | 30 | DEMANGLER = c++filt |
duke@435 | 31 | DEMANGLE = $(DEMANGLER) < $@ > .$@ && mv -f .$@ $@ |
duke@435 | 32 | |
erikj@3518 | 33 | # $(CC) is the c compiler (cc/gcc), $(CXX) is the c++ compiler (CC/g++). |
erikj@3518 | 34 | CC_COMPILE = $(CC) $(CXXFLAGS) $(CFLAGS) |
erikj@3518 | 35 | CXX_COMPILE = $(CXX) $(CXXFLAGS) $(CFLAGS) |
duke@435 | 36 | |
duke@435 | 37 | AS.S = $(AS) $(ASFLAGS) |
duke@435 | 38 | |
erikj@3518 | 39 | COMPILE.CC = $(CC_COMPILE) -c |
erikj@3518 | 40 | GENASM.CC = $(CC_COMPILE) -S |
erikj@3518 | 41 | LINK.CC = $(CC) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS) |
erikj@3518 | 42 | LINK_LIB.CC = $(CC) $(LFLAGS) $(SHARED_FLAG) |
erikj@3518 | 43 | PREPROCESS.CC = $(CC_COMPILE) -E |
duke@435 | 44 | |
erikj@3518 | 45 | COMPILE.CXX = $(CXX_COMPILE) -c |
erikj@3518 | 46 | GENASM.CXX = $(CXX_COMPILE) -S |
erikj@3518 | 47 | LINK.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) $(PROF_AOUT_FLAGS) |
erikj@3518 | 48 | LINK_NOPROF.CXX = $(CXX) $(LFLAGS) $(AOUT_FLAGS) |
erikj@3518 | 49 | LINK_LIB.CXX = $(CXX) $(LFLAGS) $(SHARED_FLAG) |
erikj@3518 | 50 | PREPROCESS.CXX = $(CXX_COMPILE) -E |
duke@435 | 51 | |
duke@435 | 52 | # Effect of REMOVE_TARGET is to delete out-of-date files during "gnumake -k". |
duke@435 | 53 | REMOVE_TARGET = rm -f $@ |
duke@435 | 54 | |
duke@435 | 55 | # Note use of ALT_BOOTDIR to explicitly specify location of java and |
duke@435 | 56 | # javac; this is the same environment variable used in the J2SE build |
duke@435 | 57 | # process for overriding the default spec, which is BOOTDIR. |
duke@435 | 58 | # Note also that we fall back to using JAVA_HOME if neither of these is |
duke@435 | 59 | # specified. |
duke@435 | 60 | |
duke@435 | 61 | ifdef ALT_BOOTDIR |
duke@435 | 62 | |
duke@435 | 63 | RUN.JAVA = $(ALT_BOOTDIR)/bin/java |
duke@435 | 64 | RUN.JAVAP = $(ALT_BOOTDIR)/bin/javap |
duke@435 | 65 | RUN.JAVAH = $(ALT_BOOTDIR)/bin/javah |
duke@435 | 66 | RUN.JAR = $(ALT_BOOTDIR)/bin/jar |
duke@435 | 67 | COMPILE.JAVAC = $(ALT_BOOTDIR)/bin/javac |
duke@435 | 68 | COMPILE.RMIC = $(ALT_BOOTDIR)/bin/rmic |
duke@435 | 69 | BOOT_JAVA_HOME = $(ALT_BOOTDIR) |
duke@435 | 70 | |
duke@435 | 71 | else |
duke@435 | 72 | |
duke@435 | 73 | ifdef BOOTDIR |
duke@435 | 74 | |
duke@435 | 75 | RUN.JAVA = $(BOOTDIR)/bin/java |
duke@435 | 76 | RUN.JAVAP = $(BOOTDIR)/bin/javap |
duke@435 | 77 | RUN.JAVAH = $(BOOTDIR)/bin/javah |
duke@435 | 78 | RUN.JAR = $(BOOTDIR)/bin/jar |
duke@435 | 79 | COMPILE.JAVAC = $(BOOTDIR)/bin/javac |
duke@435 | 80 | COMPILE.RMIC = $(BOOTDIR)/bin/rmic |
duke@435 | 81 | BOOT_JAVA_HOME = $(BOOTDIR) |
duke@435 | 82 | |
duke@435 | 83 | else |
duke@435 | 84 | |
duke@435 | 85 | ifdef JAVA_HOME |
duke@435 | 86 | |
duke@435 | 87 | RUN.JAVA = $(JAVA_HOME)/bin/java |
duke@435 | 88 | RUN.JAVAP = $(JAVA_HOME)/bin/javap |
duke@435 | 89 | RUN.JAVAH = $(JAVA_HOME)/bin/javah |
duke@435 | 90 | RUN.JAR = $(JAVA_HOME)/bin/jar |
duke@435 | 91 | COMPILE.JAVAC = $(JAVA_HOME)/bin/javac |
duke@435 | 92 | COMPILE.RMIC = $(JAVA_HOME)/bin/rmic |
duke@435 | 93 | BOOT_JAVA_HOME = $(JAVA_HOME) |
duke@435 | 94 | |
duke@435 | 95 | else |
duke@435 | 96 | |
duke@435 | 97 | # take from the PATH, if ALT_BOOTDIR, BOOTDIR and JAVA_HOME are not defined |
duke@435 | 98 | # note that this is to support hotspot build without SA. To build |
duke@435 | 99 | # SA along with hotspot, you need to define ALT_BOOTDIR, BOOTDIR or JAVA_HOME |
duke@435 | 100 | |
duke@435 | 101 | RUN.JAVA = java |
duke@435 | 102 | RUN.JAVAP = javap |
duke@435 | 103 | RUN.JAVAH = javah |
duke@435 | 104 | RUN.JAR = jar |
duke@435 | 105 | COMPILE.JAVAC = javac |
duke@435 | 106 | COMPILE.RMIC = rmic |
duke@435 | 107 | |
duke@435 | 108 | endif |
duke@435 | 109 | endif |
duke@435 | 110 | endif |
duke@435 | 111 | |
andrew@1406 | 112 | COMPILE.JAVAC += $(BOOTSTRAP_JAVAC_FLAGS) |
andrew@1406 | 113 | |
duke@435 | 114 | SUM = /usr/bin/sum |
duke@435 | 115 | |
duke@435 | 116 | # 'gmake MAKE_VERBOSE=y' gives all the gory details. |
duke@435 | 117 | QUIETLY$(MAKE_VERBOSE) = @ |
duke@435 | 118 | RUN.JAR$(MAKE_VERBOSE) += >/dev/null |
duke@435 | 119 | |
andrew@1406 | 120 | # Settings for javac |
andrew@1406 | 121 | BOOT_SOURCE_LANGUAGE_VERSION = 6 |
andrew@1406 | 122 | BOOT_TARGET_CLASS_VERSION = 6 |
andrew@1406 | 123 | JAVAC_FLAGS = -g -encoding ascii |
andrew@1406 | 124 | BOOTSTRAP_JAVAC_FLAGS = $(JAVAC_FLAGS) -source $(BOOT_SOURCE_LANGUAGE_VERSION) -target $(BOOT_TARGET_CLASS_VERSION) |
andrew@1406 | 125 | |
duke@435 | 126 | # With parallel makes, print a message at the end of compilation. |
duke@435 | 127 | ifeq ($(findstring j,$(MFLAGS)),j) |
duke@435 | 128 | COMPILE_DONE = && { echo Done with $<; } |
duke@435 | 129 | endif |
duke@435 | 130 | |
xlu@663 | 131 | # Include NONPIC_OBJ_FILES definition |
xlu@663 | 132 | ifndef LP64 |
xlu@663 | 133 | include $(GAMMADIR)/make/pic.make |
xlu@663 | 134 | endif |
duke@435 | 135 | |
kamg@2515 | 136 | include $(GAMMADIR)/make/altsrc.make |
kamg@2515 | 137 | |
duke@435 | 138 | # Sun compiler for 64 bit Solaris does not support building non-PIC object files. |
duke@435 | 139 | ifdef LP64 |
duke@435 | 140 | %.o: %.cpp |
duke@435 | 141 | @echo Compiling $< |
duke@435 | 142 | $(QUIETLY) $(REMOVE_TARGET) |
erikj@3518 | 143 | $(QUIETLY) $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE) |
duke@435 | 144 | else |
duke@435 | 145 | %.o: %.cpp |
duke@435 | 146 | @echo Compiling $< |
duke@435 | 147 | $(QUIETLY) $(REMOVE_TARGET) |
duke@435 | 148 | $(QUIETLY) $(if $(findstring $@, $(NONPIC_OBJ_FILES)), \ |
erikj@3518 | 149 | $(subst $(VM_PICFLAG), ,$(COMPILE.CXX)) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE), \ |
erikj@3518 | 150 | $(COMPILE.CXX) $(DEPFLAGS) -o $@ $< $(COMPILE_DONE)) |
duke@435 | 151 | endif |
duke@435 | 152 | |
duke@435 | 153 | %.o: %.s |
duke@435 | 154 | @echo Assembling $< |
duke@435 | 155 | $(QUIETLY) $(REMOVE_TARGET) |
duke@435 | 156 | $(QUIETLY) $(AS.S) -o $@ $< $(COMPILE_DONE) |
duke@435 | 157 | |
duke@435 | 158 | %.s: %.cpp |
duke@435 | 159 | @echo Generating assembly for $< |
erikj@3518 | 160 | $(QUIETLY) $(GENASM.CXX) -o $@ $< |
duke@435 | 161 | $(QUIETLY) $(DEMANGLE) $(COMPILE_DONE) |
duke@435 | 162 | |
duke@435 | 163 | # Intermediate files (for debugging macros) |
duke@435 | 164 | %.i: %.cpp |
duke@435 | 165 | @echo Preprocessing $< to $@ |
erikj@3518 | 166 | $(QUIETLY) $(PREPROCESS.CXX) $< > $@ $(COMPILE_DONE) |
duke@435 | 167 | |
duke@435 | 168 | # Override gnumake built-in rules which do sccs get operations badly. |
duke@435 | 169 | # (They put the checked out code in the current directory, not in the |
duke@435 | 170 | # directory of the original file.) Since this is a symptom of a teamware |
duke@435 | 171 | # failure, and since not all problems can be detected by gnumake due |
duke@435 | 172 | # to incomplete dependency checking... just complain and stop. |
duke@435 | 173 | %:: s.% |
duke@435 | 174 | @echo "=========================================================" |
duke@435 | 175 | @echo File $@ |
duke@435 | 176 | @echo is out of date with respect to its SCCS file. |
duke@435 | 177 | @echo This file may be from an unresolved Teamware conflict. |
duke@435 | 178 | @echo This is also a symptom of a Teamware bringover/putback failure |
duke@435 | 179 | @echo in which SCCS files are updated but not checked out. |
duke@435 | 180 | @echo Check for other out of date files in your workspace. |
duke@435 | 181 | @echo "=========================================================" |
duke@435 | 182 | @exit 666 |
duke@435 | 183 | |
duke@435 | 184 | %:: SCCS/s.% |
duke@435 | 185 | @echo "=========================================================" |
duke@435 | 186 | @echo File $@ |
duke@435 | 187 | @echo is out of date with respect to its SCCS file. |
duke@435 | 188 | @echo This file may be from an unresolved Teamware conflict. |
duke@435 | 189 | @echo This is also a symptom of a Teamware bringover/putback failure |
duke@435 | 190 | @echo in which SCCS files are updated but not checked out. |
duke@435 | 191 | @echo Check for other out of date files in your workspace. |
duke@435 | 192 | @echo "=========================================================" |
duke@435 | 193 | @exit 666 |
duke@435 | 194 | |
duke@435 | 195 | .PHONY: default |