1 #
   2 # Copyright (c) 2016, 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.  Oracle designates this
   8 # particular file as subject to the "Classpath" exception as provided
   9 # by Oracle in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22 # or visit www.oracle.com if you need additional information or have any
  23 # questions.
  24 #
  25 
  26 # This must be the first rule
  27 default: all
  28 
  29 include $(SPEC)
  30 include MakeBase.gmk
  31 
  32 include JavaCompilation.gmk
  33 include SetupJavaCompilers.gmk
  34 
  35 TARGETS :=
  36 
  37 # Hook to include the corresponding custom file, if present.
  38 $(eval $(call IncludeCustomExtension, hotspot/CompileTools.gmk))
  39 
  40 ifeq ($(INCLUDE_GRAAL), true)
  41   VM_CI_SRC_DIR := $(TOPDIR)/src/jdk.internal.vm.ci/share/classes
  42 
  43   SRC_DIR := $(TOPDIR)/src/jdk.internal.vm.compiler/share/classes
  44 
  45   ##############################################################################
  46   # Compile the annotation processors
  47   $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_MATCH_PROCESSOR, \
  48       SETUP := GENERATE_OLDBYTECODE, \
  49       SRC := \
  50           $(SRC_DIR)/org.graalvm.word/src \
  51           $(SRC_DIR)/org.graalvm.compiler.core/src \
  52           $(SRC_DIR)/org.graalvm.compiler.core.common/src \
  53           $(SRC_DIR)/org.graalvm.compiler.core.match.processor/src \
  54           $(SRC_DIR)/org.graalvm.compiler.api.replacements/src \
  55           $(SRC_DIR)/org.graalvm.compiler.asm/src \
  56           $(SRC_DIR)/org.graalvm.compiler.bytecode/src \
  57           $(SRC_DIR)/org.graalvm.compiler.code/src \
  58           $(SRC_DIR)/org.graalvm.compiler.debug/src \
  59           $(SRC_DIR)/org.graalvm.compiler.graph/src \
  60           $(SRC_DIR)/org.graalvm.compiler.lir/src \
  61           $(SRC_DIR)/org.graalvm.compiler.loop/src \
  62           $(SRC_DIR)/org.graalvm.compiler.loop.phases/src \
  63           $(SRC_DIR)/org.graalvm.compiler.nodeinfo/src \
  64           $(SRC_DIR)/org.graalvm.compiler.nodes/src \
  65           $(SRC_DIR)/org.graalvm.compiler.options/src \
  66           $(SRC_DIR)/org.graalvm.compiler.phases/src \
  67           $(SRC_DIR)/org.graalvm.compiler.phases.common/src \
  68           $(SRC_DIR)/org.graalvm.compiler.serviceprovider/src \
  69           $(SRC_DIR)/org.graalvm.compiler.virtual/src \
  70           $(SRC_DIR)/org.graalvm.graphio/src \
  71           $(SRC_DIR)/org.graalvm.util/src \
  72           $(VM_CI_SRC_DIR)/jdk.vm.ci.code/src \
  73           $(VM_CI_SRC_DIR)/jdk.vm.ci.common/src \
  74           $(VM_CI_SRC_DIR)/jdk.vm.ci.meta/src \
  75           $(VM_CI_SRC_DIR)/jdk.vm.ci.runtime/src \
  76           $(VM_CI_SRC_DIR)/jdk.vm.ci.services/src \
  77           , \
  78       EXCLUDE_FILES := $(EXCLUDE_FILES), \
  79       BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.match.processor, \
  80       JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.match.processor.jar, \
  81   ))
  82 
  83   TARGETS += $(BUILD_VM_COMPILER_MATCH_PROCESSOR)
  84 
  85   ##############################################################################
  86 
  87   $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_NODEINFO_PROCESSOR, \
  88       SETUP := GENERATE_OLDBYTECODE, \
  89       SRC := \
  90           $(SRC_DIR)/org.graalvm.compiler.nodeinfo/src \
  91           $(SRC_DIR)/org.graalvm.compiler.nodeinfo.processor/src \
  92           , \
  93       BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.nodeinfo.processor, \
  94       JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.nodeinfo.processor.jar, \
  95   ))
  96 
  97   TARGETS += $(BUILD_VM_COMPILER_NODEINFO_PROCESSOR)
  98 
  99   ##############################################################################
 100 
 101   $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_OPTIONS_PROCESSOR, \
 102       SETUP := GENERATE_OLDBYTECODE, \
 103       SRC := \
 104           $(SRC_DIR)/org.graalvm.compiler.options/src \
 105           $(SRC_DIR)/org.graalvm.compiler.options.processor/src \
 106           $(SRC_DIR)/org.graalvm.util/src \
 107           , \
 108       BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.options.processor, \
 109       JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.options.processor.jar, \
 110   ))
 111 
 112   TARGETS += $(BUILD_VM_COMPILER_OPTIONS_PROCESSOR)
 113 
 114   ##############################################################################
 115 
 116   $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_REPLACEMENTS_VERIFIER, \
 117       SETUP := GENERATE_OLDBYTECODE, \
 118       SRC := \
 119           $(SRC_DIR)/org.graalvm.word/src \
 120           $(SRC_DIR)/org.graalvm.compiler.replacements.verifier/src \
 121           $(SRC_DIR)/org.graalvm.compiler.api.replacements/src \
 122           $(SRC_DIR)/org.graalvm.compiler.code/src \
 123           $(SRC_DIR)/org.graalvm.compiler.core.common/src \
 124           $(SRC_DIR)/org.graalvm.compiler.debug/src \
 125           $(SRC_DIR)/org.graalvm.compiler.graph/src \
 126           $(SRC_DIR)/org.graalvm.compiler.nodeinfo/src \
 127           $(SRC_DIR)/org.graalvm.compiler.options/src \
 128           $(SRC_DIR)/org.graalvm.compiler.serviceprovider/src \
 129           $(SRC_DIR)/org.graalvm.graphio/src \
 130           $(SRC_DIR)/org.graalvm.util/src \
 131           $(VM_CI_SRC_DIR)/jdk.vm.ci.code/src \
 132           $(VM_CI_SRC_DIR)/jdk.vm.ci.common/src \
 133           $(VM_CI_SRC_DIR)/jdk.vm.ci.meta/src \
 134           $(VM_CI_SRC_DIR)/jdk.vm.ci.runtime/src \
 135           $(VM_CI_SRC_DIR)/jdk.vm.ci.services/src \
 136           , \
 137       EXCLUDE_FILES := $(EXCLUDE_FILES), \
 138       BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier, \
 139       JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.replacements.verifier.jar, \
 140   ))
 141 
 142   TARGETS += $(BUILD_VM_COMPILER_REPLACEMENTS_VERIFIER)
 143 
 144   ##############################################################################
 145 
 146   $(eval $(call SetupJavaCompilation, BUILD_VM_COMPILER_SERVICEPROVIDER_PROCESSOR, \
 147       SETUP := GENERATE_OLDBYTECODE, \
 148       SRC := \
 149           $(SRC_DIR)/org.graalvm.compiler.serviceprovider/src \
 150           $(SRC_DIR)/org.graalvm.compiler.serviceprovider.processor/src \
 151           $(VM_CI_SRC_DIR)/jdk.vm.ci.services/src \
 152           , \
 153       EXCLUDE_FILES := $(EXCLUDE_FILES), \
 154       BIN := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.serviceprovider.processor, \
 155       JAR := $(BUILDTOOLS_OUTPUTDIR)/jdk.vm.compiler.serviceprovider.processor.jar, \
 156   ))
 157 
 158   TARGETS += $(BUILD_VM_COMPILER_SERVICEPROVIDER_PROCESSOR)
 159 
 160   ##############################################################################
 161 endif
 162 
 163 all: $(TARGETS)
 164 
 165 .PHONY: all