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