hotspot/make/windows/makefiles/projectcreator.make
changeset 7397 5b173b4ca846
parent 5547 f4b087cbb361
child 7452 b3fa838286de
equal deleted inserted replaced
7396:518b01b064ff 7397:5b173b4ca846
       
     1 #
       
     2 # Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
       
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       
     4 #
       
     5 # This code is free software; you can redistribute it and/or modify it
       
     6 # under the terms of the GNU General Public License version 2 only, as
       
     7 # published by the Free Software Foundation.
       
     8 #
       
     9 # This code is distributed in the hope that it will be useful, but WITHOUT
       
    10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
       
    11 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
       
    12 # version 2 for more details (a copy is included in the LICENSE file that
       
    13 # accompanied this code).
       
    14 #
       
    15 # You should have received a copy of the GNU General Public License version
       
    16 # 2 along with this work; if not, write to the Free Software Foundation,
       
    17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
       
    18 #
       
    19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
       
    20 # or visit www.oracle.com if you need additional information or have any
       
    21 # questions.
       
    22 #  
       
    23 #
       
    24 
       
    25 !include $(WorkSpace)/make/windows/makefiles/rules.make
       
    26 
       
    27 # This is used externally by both batch and IDE builds, so can't
       
    28 # reference any of the HOTSPOTWORKSPACE, HOTSPOTBUILDSPACE,
       
    29 # HOTSPOTRELEASEBINDEST, or HOTSPOTDEBUGBINDEST environment variables.
       
    30 #
       
    31 # NOTE: unfortunately the ProjectCreatorSources list must be kept
       
    32 # synchronized between this and the Solaris version
       
    33 # (make/solaris/makefiles/projectcreator.make).
       
    34 
       
    35 ProjectCreatorSources=\
       
    36         $(WorkSpace)\src\share\tools\ProjectCreator\DirectoryTree.java \
       
    37         $(WorkSpace)\src\share\tools\ProjectCreator\DirectoryTreeNode.java \
       
    38         $(WorkSpace)\src\share\tools\ProjectCreator\FileFormatException.java \
       
    39         $(WorkSpace)\src\share\tools\ProjectCreator\Macro.java \
       
    40         $(WorkSpace)\src\share\tools\ProjectCreator\MacroDefinitions.java \
       
    41         $(WorkSpace)\src\share\tools\ProjectCreator\ProjectCreator.java \
       
    42         $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatform.java \
       
    43         $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC6.java \
       
    44         $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC7.java \
       
    45         $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC8.java \
       
    46         $(WorkSpace)\src\share\tools\ProjectCreator\WinGammaPlatformVC9.java \
       
    47         $(WorkSpace)\src\share\tools\ProjectCreator\Util.java \
       
    48         $(WorkSpace)\src\share\tools\ProjectCreator\BuildConfig.java \
       
    49         $(WorkSpace)\src\share\tools\ProjectCreator\ArgsParser.java
       
    50 
       
    51 # This is only used internally
       
    52 ProjectCreatorIncludesPRIVATE=\
       
    53         -relativeInclude src\share\vm \
       
    54         -relativeInclude src\share\vm\prims \
       
    55         -relativeInclude src\os\windows\vm \
       
    56         -relativeInclude src\os_cpu\windows_$(Platform_arch)\vm \
       
    57         -relativeInclude src\cpu\$(Platform_arch)\vm \
       
    58         -absoluteInclude $(HOTSPOTBUILDSPACE)/%f/generated \
       
    59         -ignorePath $(HOTSPOTBUILDSPACE)/%f/generated \
       
    60         -ignorePath src\share\vm\adlc \
       
    61         -ignorePath src\share\vm\shark
       
    62 
       
    63 # This is referenced externally by both the IDE and batch builds
       
    64 ProjectCreatorOptions=
       
    65 
       
    66 # This is used externally, but only by the IDE builds, so we can
       
    67 # reference environment variables which aren't defined in the batch
       
    68 # build process.
       
    69 
       
    70 ProjectCreatorIDEOptions = \
       
    71         -useToGeneratePch  java.cpp \
       
    72         -disablePch        os_windows.cpp \
       
    73         -disablePch        os_windows_$(Platform_arch).cpp \
       
    74         -disablePch        osThread_windows.cpp \
       
    75         -disablePch        bytecodeInterpreter.cpp \
       
    76         -disablePch        bytecodeInterpreterWithChecks.cpp \
       
    77         -disablePch        getThread_windows_$(Platform_arch).cpp \
       
    78         -disablePch_compiler2     opcodes.cpp    
       
    79 
       
    80 # Common options for the IDE builds for core, c1, and c2
       
    81 ProjectCreatorIDEOptions=\
       
    82         $(ProjectCreatorIDEOptions) \
       
    83         -sourceBase $(HOTSPOTWORKSPACE) \
       
    84         -buildBase $(HOTSPOTBUILDSPACE)\%f\%b \
       
    85         -startAt src \
       
    86         -compiler $(VcVersion) \
       
    87         -projectFileName $(HOTSPOTBUILDSPACE)\$(ProjectFile) \
       
    88         -jdkTargetRoot $(HOTSPOTJDKDIST) \
       
    89         -define ALIGN_STACK_FRAMES \
       
    90         -define VM_LITTLE_ENDIAN \
       
    91         -prelink  "" "Generating vm.def..." "cd $(HOTSPOTBUILDSPACE)\%f\%b	set HOTSPOTMKSHOME=$(HOTSPOTMKSHOME)	$(HOTSPOTMKSHOME)\sh $(HOTSPOTWORKSPACE)\make\windows\build_vm_def.sh $(LINK_VER)" \
       
    92         -ignoreFile jsig.c \
       
    93         -ignoreFile jvmtiEnvRecommended.cpp \
       
    94         -ignoreFile jvmtiEnvStub.cpp \
       
    95         -ignoreFile globalDefinitions_gcc.hpp \
       
    96         -ignoreFile globalDefinitions_sparcWorks.hpp \
       
    97         -ignoreFile version.rc \
       
    98         -ignoreFile Xusage.txt \
       
    99         -define TARGET_ARCH_x86 \
       
   100         -define TARGET_OS_ARCH_windows_x86 \
       
   101         -define TARGET_OS_FAMILY_windows \
       
   102         -define TARGET_COMPILER_visCPP \
       
   103        $(ProjectCreatorIncludesPRIVATE)
       
   104 
       
   105 # Add in build-specific options
       
   106 !if "$(BUILDARCH)" == "i486"
       
   107 ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
       
   108         -define IA32 \
       
   109         -ignorePath x86_64 \
       
   110         -define TARGET_ARCH_MODEL_x86_32
       
   111 !else
       
   112 ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
       
   113         -ignorePath x86_32 \
       
   114         -define TARGET_ARCH_MODEL_x86_64
       
   115 !endif
       
   116 
       
   117 ProjectCreatorIDEOptionsIgnoreCompiler1=\
       
   118  -ignorePath_TARGET c1_
       
   119 
       
   120 ProjectCreatorIDEOptionsIgnoreCompiler2=\
       
   121  -ignorePath_TARGET src/share/vm/opto \
       
   122  -ignorePath_TARGET src/share/vm/libadt \
       
   123  -ignorePath_TARGET adfiles \
       
   124  -ignoreFile_TARGET bcEscapeAnalyzer.cpp \
       
   125  -ignoreFile_TARGET bcEscapeAnalyzer.hpp \
       
   126  -ignorePath_TARGET chaitin \
       
   127  -ignorePath_TARGET c2_ \
       
   128  -ignorePath_TARGET runtime_ \
       
   129  -ignoreFile_TARGET ciTypeFlow.cpp \
       
   130  -ignoreFile_TARGET ciTypeFlow.hpp \
       
   131  -ignoreFile_TARGET $(Platform_arch_model).ad
       
   132 
       
   133 ##################################################
       
   134 # Without compiler(core) specific options
       
   135 ##################################################
       
   136 ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
       
   137 $(ProjectCreatorIDEOptionsIgnoreCompiler1:TARGET=core) \
       
   138 $(ProjectCreatorIDEOptionsIgnoreCompiler2:TARGET=core)
       
   139 
       
   140 ##################################################
       
   141 # JKERNEL specific options
       
   142 ##################################################
       
   143 ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
       
   144  -define_kernel KERNEL \
       
   145 $(ProjectCreatorIDEOptionsIgnoreCompiler2:TARGET=kernel) \
       
   146  -ignorePath_kernel src/share/vm/gc_implementation/parallelScavenge \
       
   147  -ignorePath_kernel src/share/vm/gc_implementation/parNew \
       
   148  -ignorePath_kernel src/share/vm/gc_implementation/concurrentMarkSweep \
       
   149  -ignorePath_kernel src/share/vm/gc_implementation/g1 \
       
   150  -ignoreFile_kernel attachListener.cpp \
       
   151  -ignoreFile_kernel attachListener_windows.cpp \
       
   152  -ignoreFile_kernel dump.cpp \
       
   153  -ignoreFile_kernel dump_$(Platform_arch_model).cpp \
       
   154  -ignoreFile_kernel forte.cpp \
       
   155  -ignoreFile_kernel fprofiler.cpp \
       
   156  -ignoreFile_kernel heapDumper.cpp \
       
   157  -ignoreFile_kernel heapInspection.cpp \
       
   158  -ignoreFile_kernel jniCheck.cpp \
       
   159  -ignoreFile_kernel jvmtiCodeBlobEvents.cpp \
       
   160  -ignoreFile_kernel jvmtiExtensions.cpp \
       
   161  -ignoreFile_kernel jvmtiImpl.cpp \
       
   162  -ignoreFile_kernel jvmtiRawMonitor.cpp \
       
   163  -ignoreFile_kernel jvmtiTagMap.cpp \
       
   164  -ignoreFile_kernel jvmtiTrace.cpp \
       
   165  -ignoreFile_kernel jvmtiTrace.hpp \
       
   166  -ignoreFile_kernel restore.cpp \
       
   167  -ignoreFile_kernel serialize.cpp \
       
   168  -ignoreFile_kernel vmStructs.cpp \
       
   169  -ignoreFile_kernel g1MemoryPool.cpp \
       
   170  -ignoreFile_kernel g1MemoryPool.hpp \
       
   171  -ignoreFile_kernel psMemoryPool.cpp \
       
   172  -ignoreFile_kernel psMemoryPool.hpp \
       
   173  -ignoreFile_kernel gcAdaptivePolicyCounters.cpp \
       
   174  -ignoreFile_kernel concurrentGCThread.cpp \
       
   175  -ignoreFile_kernel mutableNUMASpace.cpp \
       
   176  -ignoreFile_kernel ciTypeFlow.cpp \
       
   177  -ignoreFile_kernel ciTypeFlow.hpp \
       
   178  -ignoreFile_kernel oop.pcgc.inline.hpp \
       
   179  -ignoreFile_kernel oop.psgc.inline.hpp \
       
   180  -ignoreFile_kernel allocationStats.cpp \
       
   181  -ignoreFile_kernel allocationStats.hpp \
       
   182  -ignoreFile_kernel concurrentGCThread.hpp \
       
   183  -ignoreFile_kernel gSpaceCounters.cpp \
       
   184  -ignoreFile_kernel gSpaceCounters.hpp \
       
   185  -ignoreFile_kernel gcAdaptivePolicyCounters.hpp \
       
   186  -ignoreFile_kernel immutableSpace.cpp \
       
   187  -ignoreFile_kernel mutableNUMASpace.hpp \
       
   188  -ignoreFile_kernel mutableSpace.cpp \
       
   189  -ignoreFile_kernel spaceCounters.cpp \
       
   190  -ignoreFile_kernel spaceCounters.hpp \
       
   191  -ignoreFile_kernel yieldingWorkgroup.cpp \
       
   192  -ignoreFile_kernel yieldingWorkgroup.hpp \
       
   193  -ignorePath_kernel vmStructs_ \
       
   194  -ignoreFile_kernel $(Platform_arch_model).ad \
       
   195  -additionalFile_kernel gcTaskManager.hpp
       
   196 
       
   197 ##################################################
       
   198 # Client(C1) compiler specific options
       
   199 ##################################################
       
   200 ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
       
   201  -define_compiler1 COMPILER1 \
       
   202 $(ProjectCreatorIDEOptionsIgnoreCompiler2:TARGET=compiler1)
       
   203 
       
   204 ##################################################
       
   205 # Server(C2) compiler specific options
       
   206 ##################################################
       
   207 #NOTE! This list must be kept in sync with GENERATED_NAMES in adlc.make.
       
   208 ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
       
   209  -define_compiler2 COMPILER2 \
       
   210  -additionalFile_compiler2 $(Platform_arch_model).ad \
       
   211  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model).cpp \
       
   212  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model).hpp \
       
   213  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model)_clone.cpp \
       
   214  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model)_expand.cpp \
       
   215  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model)_format.cpp \
       
   216  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model)_gen.cpp \
       
   217  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model)_misc.cpp \
       
   218  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model)_peephole.cpp \
       
   219  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles ad_$(Platform_arch_model)_pipeline.cpp \
       
   220  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles adGlobals_$(Platform_arch_model).hpp \
       
   221  -additionalGeneratedFile_compiler2 $(HOTSPOTBUILDSPACE)/%f/generated/adfiles dfa_$(Platform_arch_model).cpp \
       
   222  $(ProjectCreatorIDEOptionsIgnoreCompiler1:TARGET=compiler2)
       
   223 
       
   224 # Add in the jvmti (JSR-163) options
       
   225 # NOTE: do not pull in jvmtiEnvRecommended.cpp.  This file is generated
       
   226 #       so the programmer can diff it with jvmtiEnv.cpp to be sure the
       
   227 #       code merge was done correctly (@see jvmti.make and jvmtiEnvFill.java).
       
   228 #       If so, they would then check it in as a new version of jvmtiEnv.cpp.
       
   229 ProjectCreatorIDEOptions=$(ProjectCreatorIDEOptions) \
       
   230  -additionalGeneratedFile $(HOTSPOTBUILDSPACE)/%f/generated/jvmtifiles jvmtiEnv.hpp \
       
   231  -additionalGeneratedFile $(HOTSPOTBUILDSPACE)/%f/generated/jvmtifiles jvmtiEnter.cpp \
       
   232  -additionalGeneratedFile $(HOTSPOTBUILDSPACE)/%f/generated/jvmtifiles jvmtiEnterTrace.cpp \
       
   233  -additionalGeneratedFile $(HOTSPOTBUILDSPACE)/%f/generated/jvmtifiles jvmti.h \
       
   234  -additionalGeneratedFile $(HOTSPOTBUILDSPACE)/%f/generated/jvmtifiles bytecodeInterpreterWithChecks.cpp