1 #
   2 # Copyright (c) 2011, 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 ifndef _TOOLS_GMK
  27 _TOOLS_GMK := 1
  28 
  29 include JavaCompilation.gmk
  30 
  31 ################################################################################
  32 # To avoid reevaluating the compilation setup for the tools each time this file
  33 # is included, the actual compilation is handled by CompileTools.gmk. The
  34 # following trick is used to be able to declare a dependency on the built tools.
  35 BUILD_TOOLS_JDK := $(call SetupJavaCompilationCompileTarget, \
  36     BUILD_TOOLS_JDK, $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes)
  37 
  38 ################################################################################
  39 
  40 ifeq ($(BOOT_JDK_MODULAR), true)
  41   COMPILEFONTCONFIG_ADD_EXPORTS := --add-exports java.desktop/sun.awt=ALL-UNNAMED
  42 endif
  43 
  44 TOOL_COMPILEFONTCONFIG = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  45     $(COMPILEFONTCONFIG_ADD_EXPORTS) \
  46     build.tools.compilefontconfig.CompileFontConfig
  47 
  48 TOOL_COMPILEPROPERTIES = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  49     build.tools.compileproperties.CompileProperties
  50 
  51 TOOL_JARREORDER = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  52     build.tools.jarreorder.JarReorder
  53 
  54 TOOL_GENERATECHARACTER = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  55     build.tools.generatecharacter.GenerateCharacter
  56 
  57 TOOL_CHARACTERNAME = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  58     build.tools.generatecharacter.CharacterName
  59 
  60 TOOL_DTDBUILDER = $(JAVA_SMALL) -Ddtd_home=$(JDK_TOPDIR)/make/data/dtdbuilder \
  61     -Djava.awt.headless=true \
  62     -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes build.tools.dtdbuilder.DTDBuilder
  63 
  64 TOOL_GENERATEBREAKITERATORDATA = $(JAVA_SMALL) \
  65     -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  66     build.tools.generatebreakiteratordata.GenerateBreakIteratorData
  67 
  68 TOOL_GENERATECURRENCYDATA = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  69     build.tools.generatecurrencydata.GenerateCurrencyData
  70 
  71 TOOL_HASHER = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  72     build.tools.hasher.Hasher
  73 
  74 TOOL_TZDB = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  75     build.tools.tzdb.TzdbZoneRulesCompiler
  76 
  77 TOOL_BLACKLISTED_CERTS = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  78     build.tools.blacklistedcertsconverter.BlacklistedCertsConverter
  79 
  80 TOOL_MAKEJAVASECURITY = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  81     build.tools.makejavasecurity.MakeJavaSecurity
  82 
  83 
  84 # TODO: There are references to the jdwpgen.jar in jdk/make/netbeans/jdwpgen/build.xml
  85 # and nbproject/project.properties in the same dir. Needs to be looked at.
  86 TOOL_JDWPGEN = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes build.tools.jdwpgen.Main
  87 
  88 # TODO: Lots of files in jdk/make/tools/CharsetMapping dir
  89 TOOL_CHARSETMAPPING = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
  90     build.tools.charsetmapping.Main $(LOG_INFO)
  91 
  92 TOOL_SPP = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes build.tools.spp.Spp
  93 
  94 # Nimbus is used somewhere in the swing build.
  95 
  96 ifeq ($(BOOT_JDK_MODULAR), true)
  97   COMPILENIMBUS_ADD_MODS := --add-modules java.xml.bind
  98 endif
  99 
 100 TOOL_GENERATENIMBUS = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
 101     $(COMPILENIMBUS_ADD_MODS) \
 102     build.tools.generatenimbus.Generator
 103 
 104 TOOL_WRAPPERGENERATOR = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
 105     build.tools.x11wrappergen.WrapperGenerator
 106 
 107 TOOL_AWT_TOBIN = $(JAVA_SMALL) -Djava.awt.headless=true -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
 108     build.tools.icondata.awt.ToBin
 109 
 110 TOOL_OSX_TOBIN = $(JAVA_SMALL) -Djava.awt.headless=true -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
 111     build.tools.icondata.osxapp.ToBin
 112 
 113 TOOL_CLDRCONVERTER = $(JAVA_SMALL) -cp $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes \
 114     build.tools.cldrconverter.CLDRConverter
 115 
 116 TOOL_GENMODULESXML = $(JAVA_SMALL) $(INTERIM_LANGTOOLS_BOOTCLASSPATH) \
 117     -cp $(call PathList, $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes) \
 118     build.tools.module.GenJdepsModulesXml
 119 
 120 TOOL_GENMODULEINFOSOURCE = $(JAVA_SMALL) $(INTERIM_LANGTOOLS_BOOTCLASSPATH) \
 121     -cp $(call PathList, $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes) \
 122     build.tools.module.GenModuleInfoSource
 123 
 124 TOOL_GENCLASSLOADERMAP = $(JAVA_SMALL) $(INTERIM_LANGTOOLS_BOOTCLASSPATH) \
 125     -cp $(call PathList, $(BUILDTOOLS_OUTPUTDIR)/jdk_tools_classes) \
 126     build.tools.module.GenModuleLoaderMap
 127 
 128 ##########################################################################################
 129 
 130 endif # _TOOLS_GMK