aoqi@0: # aoqi@0: # Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. aoqi@0: # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. aoqi@0: # aoqi@0: # This code is free software; you can redistribute it and/or modify it aoqi@0: # under the terms of the GNU General Public License version 2 only, as aoqi@0: # published by the Free Software Foundation. aoqi@0: # aoqi@0: # This code is distributed in the hope that it will be useful, but WITHOUT aoqi@0: # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or aoqi@0: # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License aoqi@0: # version 2 for more details (a copy is included in the LICENSE file that aoqi@0: # accompanied this code). aoqi@0: # aoqi@0: # You should have received a copy of the GNU General Public License version aoqi@0: # 2 along with this work; if not, write to the Free Software Foundation, aoqi@0: # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. aoqi@0: # aoqi@0: # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA aoqi@0: # or visit www.oracle.com if you need additional information or have any aoqi@0: # questions. aoqi@0: # aoqi@0: # aoqi@0: aoqi@0: !include $(WorkSpace)/make/windows/makefiles/rules.make aoqi@0: aoqi@0: # This is used externally by both batch and IDE builds, so can't aoqi@0: # reference any of the HOTSPOTWORKSPACE, HOTSPOTBUILDSPACE, aoqi@0: # HOTSPOTRELEASEBINDEST, or HOTSPOTDEBUGBINDEST environment variables. aoqi@0: aoqi@0: ProjectCreatorSources=\ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\ProjectCreator.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\FileTreeCreator.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\FileTreeCreatorVC7.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\FileTreeCreatorVC10.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatform.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC7.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC8.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC9.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC10.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\Util.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\BuildConfig.java \ aoqi@0: $(WorkSpace)\src\share\tools\ProjectCreator\ArgsParser.java aoqi@0: aoqi@0: # This is only used internally aoqi@0: ProjectCreatorIncludesPRIVATE=\ aoqi@0: -relativeAltSrcInclude src\closed \ aoqi@0: -altRelativeInclude share\vm \ aoqi@0: -altRelativeInclude os\windows\vm \ aoqi@0: -altRelativeInclude os_cpu\windows_$(Platform_arch)\vm \ aoqi@0: -altRelativeInclude cpu\$(Platform_arch)\vm \ aoqi@0: -relativeInclude src\share\vm \ aoqi@0: -relativeInclude src\share\vm\precompiled \ aoqi@0: -relativeInclude src\share\vm\prims\wbtestmethods \ aoqi@0: -relativeInclude src\share\vm\prims \ aoqi@0: -relativeInclude src\os\windows\vm \ aoqi@0: -relativeInclude src\os_cpu\windows_$(Platform_arch)\vm \ aoqi@0: -relativeInclude src\cpu\$(Platform_arch)\vm \ aoqi@0: -absoluteInclude $(HOTSPOTBUILDSPACE)/%f/generated \ aoqi@0: -relativeSrcInclude src \ aoqi@0: -absoluteSrcInclude $(HOTSPOTBUILDSPACE) \ aoqi@0: -ignorePath $(HOTSPOTBUILDSPACE) \ aoqi@0: -ignorePath share\vm\adlc \ aoqi@0: -ignorePath share\vm\shark \ aoqi@0: -ignorePath share\tools \ aoqi@0: -ignorePath solaris \ aoqi@0: -ignorePath posix \ aoqi@0: -ignorePath sparc \ aoqi@0: -ignorePath linux \ aoqi@0: -ignorePath bsd \ aoqi@0: -ignorePath osx \ aoqi@0: -ignorePath arm \ aoqi@0: -ignorePath ppc \ aoqi@0: -ignorePath zero \ mgronlun@7261: -ignorePath aix \ aoqi@0: -hidePath .hg aoqi@0: aoqi@0: aoqi@0: # This is referenced externally by both the IDE and batch builds aoqi@0: ProjectCreatorOptions= aoqi@0: aoqi@0: # This is used externally, but only by the IDE builds, so we can aoqi@0: # reference environment variables which aren't defined in the batch aoqi@0: # build process. aoqi@0: aoqi@0: ProjectCreatorIDEOptions = \ aoqi@0: -useToGeneratePch java.cpp \ aoqi@0: -disablePch os_windows.cpp \ aoqi@0: -disablePch os_windows_$(Platform_arch).cpp \ aoqi@0: -disablePch osThread_windows.cpp \ aoqi@0: -disablePch bytecodeInterpreter.cpp \ aoqi@0: -disablePch bytecodeInterpreterWithChecks.cpp \ aoqi@0: -disablePch getThread_windows_$(Platform_arch).cpp \ aoqi@0: -disablePch_compiler2 opcodes.cpp aoqi@0: aoqi@0: !if "$(BUILD_WIN_SA)" != "1" aoqi@0: BUILD_VM_DEF_FLAG=-nosa aoqi@0: !endif aoqi@0: aoqi@0: # Common options for the IDE builds for c1, and c2 aoqi@0: ProjectCreatorIDEOptions=\ aoqi@0: $(ProjectCreatorIDEOptions) \ aoqi@0: -sourceBase $(HOTSPOTWORKSPACE) \ aoqi@0: -buildBase $(HOTSPOTBUILDSPACE)\%f\%b \ aoqi@0: -buildSpace $(HOTSPOTBUILDSPACE) \ aoqi@0: -startAt src \ aoqi@0: -compiler $(VcVersion) \ aoqi@0: -projectFileName $(HOTSPOTBUILDSPACE)\$(ProjectFile) \ aoqi@0: -jdkTargetRoot $(HOTSPOTJDKDIST) \ aoqi@0: -define ALIGN_STACK_FRAMES \ aoqi@0: -define VM_LITTLE_ENDIAN \ aoqi@0: -prelink "" "Generating vm.def..." "cd $(HOTSPOTBUILDSPACE)\%f\%b set HOTSPOTMKSHOME=$(HOTSPOTMKSHOME) set JAVA_HOME=$(HOTSPOTJDKDIST) $(HOTSPOTMKSHOME)\sh $(HOTSPOTWORKSPACE)\make\windows\build_vm_def.sh $(BUILD_VM_DEF_FLAG) $(LD_VER)" \ aoqi@0: -ignoreFile jsig.c \ aoqi@0: -ignoreFile jvmtiEnvRecommended.cpp \ aoqi@0: -ignoreFile jvmtiEnvStub.cpp \ aoqi@0: -ignoreFile globalDefinitions_gcc.hpp \ aoqi@0: -ignoreFile globalDefinitions_sparcWorks.hpp \ aoqi@0: -ignoreFile version.rc \ aoqi@0: -ignoreFile Xusage.txt \ aoqi@0: -define TARGET_ARCH_x86 \ aoqi@0: -define TARGET_OS_ARCH_windows_x86 \ aoqi@0: -define TARGET_OS_FAMILY_windows \ aoqi@0: -define TARGET_COMPILER_visCPP \ aoqi@0: -define INCLUDE_TRACE=1 \ aoqi@0: $(ProjectCreatorIncludesPRIVATE) aoqi@0: aoqi@0: # Add in build-specific options aoqi@0: !if "$(BUILDARCH)" == "i486" aoqi@0: ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \ aoqi@0: -platformName Win32 \ aoqi@0: -define IA32 \ aoqi@0: -ignorePath x86_64 \ aoqi@0: -define TARGET_ARCH_MODEL_x86_32 aoqi@0: !else aoqi@0: !if "$(BUILDARCH)" == "amd64" aoqi@0: ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \ aoqi@0: -platformName x64 \ aoqi@0: -define AMD64 \ aoqi@0: -define _LP64 \ aoqi@0: -ignorePath x86_32 \ aoqi@0: -define TARGET_ARCH_MODEL_x86_64 \ aoqi@0: -define TARGET_OS_ARCH_MODEL_windows_x86_64 aoqi@0: !endif aoqi@0: !endif aoqi@0: aoqi@0: ProjectCreatorIDEOptionsIgnoreCompiler1=\ aoqi@0: -ignorePath_TARGET compiler1 \ aoqi@0: -ignorePath_TARGET tiered \ aoqi@0: -ignorePath_TARGET c1_ aoqi@0: aoqi@0: ProjectCreatorIDEOptionsIgnoreCompiler2=\ aoqi@0: -ignorePath_TARGET compiler2 \ aoqi@0: -ignorePath_TARGET tiered \ aoqi@0: -ignorePath_TARGET src/share/vm/opto \ aoqi@0: -ignorePath_TARGET src/share/vm/libadt \ aoqi@0: -ignorePath_TARGET adfiles \ aoqi@0: -ignoreFile_TARGET bcEscapeAnalyzer.cpp \ aoqi@0: -ignoreFile_TARGET bcEscapeAnalyzer.hpp \ aoqi@0: -ignorePath_TARGET chaitin \ aoqi@0: -ignorePath_TARGET c2_ \ aoqi@0: -ignorePath_TARGET runtime_ \ aoqi@0: -ignoreFile_TARGET ciTypeFlow.cpp \ aoqi@0: -ignoreFile_TARGET ciTypeFlow.hpp \ aoqi@0: -ignoreFile_TARGET $(Platform_arch_model).ad aoqi@0: aoqi@0: ################################################## aoqi@0: # Client(C1) compiler specific options aoqi@0: ################################################## aoqi@0: ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \ aoqi@0: -define_compiler1 COMPILER1 \ aoqi@0: $(ProjectCreatorIDEOptionsIgnoreCompiler2:TARGET=compiler1) aoqi@0: aoqi@0: ################################################## aoqi@0: # Server(C2) compiler specific options aoqi@0: ################################################## aoqi@0: #NOTE! This list must be kept in sync with GENERATED_NAMES in adlc.make. aoqi@0: ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \ aoqi@0: -define_compiler2 COMPILER2 \ aoqi@0: -additionalFile_compiler2 $(Platform_arch_model).ad \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model).cpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model).hpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model)_clone.cpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model)_expand.cpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model)_format.cpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model)_gen.cpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model)_misc.cpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model)_peephole.cpp \ aoqi@0: -additionalFile_compiler2 ad_$(Platform_arch_model)_pipeline.cpp \ aoqi@0: -additionalFile_compiler2 adGlobals_$(Platform_arch_model).hpp \ aoqi@0: -additionalFile_compiler2 dfa_$(Platform_arch_model).cpp \ aoqi@0: $(ProjectCreatorIDEOptionsIgnoreCompiler1:TARGET=compiler2) aoqi@0: aoqi@0: # Add in the jvmti (JSR-163) options aoqi@0: # NOTE: do not pull in jvmtiEnvRecommended.cpp. This file is generated aoqi@0: # so the programmer can diff it with jvmtiEnv.cpp to be sure the aoqi@0: # code merge was done correctly (@see jvmti.make and jvmtiEnvFill.java). aoqi@0: # If so, they would then check it in as a new version of jvmtiEnv.cpp. aoqi@0: ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \ aoqi@0: -additionalFile jvmtiEnv.hpp \ aoqi@0: -additionalFile jvmtiEnter.cpp \ aoqi@0: -additionalFile jvmtiEnterTrace.cpp \ aoqi@0: -additionalFile jvmti.h \ aoqi@0: -additionalFile bytecodeInterpreterWithChecks.cpp \ aoqi@0: -additionalFile traceEventClasses.hpp \ aoqi@0: -additionalFile traceEventIds.hpp \ aoqi@0: !if "$(OPENJDK)" != "true" aoqi@0: -additionalFile traceRequestables.hpp \ aoqi@0: -additionalFile traceEventControl.hpp \ aoqi@0: -additionalFile traceProducer.cpp \ aoqi@0: !endif aoqi@0: -additionalFile traceTypes.hpp