1 #
   2 # Copyright (c) 2011, 2013, 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 INCLUDEDIR = $(JDK_OUTPUTDIR)/include
  27 
  28 OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/$(OPENJDK_TARGET_OS)
  29 
  30 ifeq ($(OPENJDK_TARGET_OS), windows)
  31   OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/win32
  32 else ifeq ($(OPENJDK_TARGET_OS), macosx)
  33   OPENJDK_TARGET_OS_INCLUDE = $(INCLUDEDIR)/darwin
  34 endif
  35 
  36 #
  37 # Copy exported header files to outputdir.
  38 #
  39 H_TARGET_FILES = $(INCLUDEDIR)/jdwpTransport.h \
  40     $(INCLUDEDIR)/jni.h \
  41     $(INCLUDEDIR)/jvmti.h \
  42     $(INCLUDEDIR)/jvmticmlr.h \
  43     $(INCLUDEDIR)/classfile_constants.h \
  44     $(INCLUDEDIR)/jawt.h \
  45     $(OPENJDK_TARGET_OS_INCLUDE)/jni_md.h \
  46     $(OPENJDK_TARGET_OS_INCLUDE)/jawt_md.h
  47 
  48 $(INCLUDEDIR)/%.h: $(JDK_TOPDIR)/src/share/javavm/export/%.h
  49         $(call install-file)
  50 
  51 $(OPENJDK_TARGET_OS_INCLUDE)/%.h: $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_EXPORT_DIR)/javavm/export/%.h
  52         $(call install-file)
  53 
  54 COPY_FILES = $(H_TARGET_FILES)
  55 
  56 ##########################################################################################
  57 
  58 ifndef OPENJDK
  59   ifeq ($(OPENJDK_TARGET_OS), windows)
  60     COPY_FILES += $(OPENJDK_TARGET_OS_INCLUDE)/bridge/AccessBridgeCallbacks.h \
  61         $(OPENJDK_TARGET_OS_INCLUDE)/bridge/AccessBridgeCalls.h \
  62         $(OPENJDK_TARGET_OS_INCLUDE)/bridge/AccessBridgePackages.h \
  63         $(OPENJDK_TARGET_OS_INCLUDE)/bridge/AccessBridgeCalls.c \
  64         $(JDK_OUTPUTDIR)/lib/accessibility.properties
  65 
  66     $(OPENJDK_TARGET_OS_INCLUDE)/bridge/%: \
  67         $(JDK_TOPDIR)/src/windows/native/sun/bridge/%
  68                 $(install-file)
  69 
  70     $(JDK_OUTPUTDIR)/lib/accessibility.properties: \
  71         $(JDK_TOPDIR)/src/windows/native/sun/bridge/accessibility.properties
  72                 $(install-file)
  73 
  74   endif
  75 endif
  76 
  77 ##########################################################################################
  78 
  79 LIBDIR = $(JDK_OUTPUTDIR)/lib
  80 
  81 MGMT_LIBDIR = $(LIBDIR)/management
  82 MGMT_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/management
  83 MGMT_SRC_FILES = $(wildcard $(MGMT_LIB_SRC)/*)
  84 MGMT_TARGET_FILES = $(subst $(MGMT_LIB_SRC),$(MGMT_LIBDIR),$(MGMT_SRC_FILES))
  85 
  86 $(MGMT_LIBDIR)/management.properties: $(MGMT_LIB_SRC)/management.properties
  87         $(call install-file)
  88         $(CHMOD) 644 $@
  89 
  90 # this file has different permissions...don't know why...
  91 $(MGMT_LIBDIR)/jmxremote.access: $(MGMT_LIB_SRC)/jmxremote.access
  92         $(call install-file)
  93         $(CHMOD) 644 $@
  94 
  95 $(MGMT_LIBDIR)/%: $(MGMT_LIB_SRC)/%
  96         $(call install-file)
  97         $(CHMOD) 444 $@
  98 
  99 COPY_FILES += $(MGMT_TARGET_FILES)
 100 
 101 ##########################################################################################
 102 
 103 LOGGING_LIB_SRC = $(JDK_TOPDIR)/src/share/lib
 104 
 105 $(LIBDIR)/logging.properties: $(LOGGING_LIB_SRC)/logging.properties
 106         $(call install-file)
 107 
 108 COPY_FILES += $(LIBDIR)/logging.properties
 109 
 110 ##########################################################################################
 111 #
 112 # Copy property files from sun/print to LIBDIR
 113 #
 114 PSFONTPROPFILE_SRC_DIR = $(JDK_TOPDIR)/src/share/classes/sun/print
 115 PSFONTPROPFILE_SRCS = $(wildcard $(PSFONTPROPFILE_SRC_DIR)/*.properties*)
 116 PSFONTPROPFILE_TARGET_FILES = $(subst $(PSFONTPROPFILE_SRC_DIR),$(LIBDIR),$(PSFONTPROPFILE_SRCS))
 117 
 118 $(LIBDIR)/%: $(PSFONTPROPFILE_SRC_DIR)/%
 119         $(call install-file)
 120 
 121 COPY_FILES += $(PSFONTPROPFILE_TARGET_FILES)
 122 
 123 ##########################################################################################
 124 #
 125 # Copy flavormap.properties, cursor.properties and cursors gif files to LIBDIR
 126 #
 127 ifneq ($(OPENJDK_TARGET_OS), macosx)
 128   OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/lib
 129 else
 130   OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/macosx/lib
 131 endif
 132 
 133 $(LIBDIR)/flavormap.properties: $(OPENJDK_TARGET_OS_LIB_SRC)/flavormap.properties
 134         $(call install-file)
 135 
 136 COPY_FILES += $(LIBDIR)/flavormap.properties
 137 
 138 CURSORS_DEST_DIR = $(LIBDIR)/images/cursors
 139 CURSORS_OPENJDK_TARGET_OS_LIB_SRC = $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/lib/images/cursors
 140 
 141 $(CURSORS_DEST_DIR)/cursors.properties: $(CURSORS_OPENJDK_TARGET_OS_LIB_SRC)/cursors.properties
 142         $(call install-file)
 143 
 144 COPY_FILES += $(CURSORS_DEST_DIR)/cursors.properties
 145 
 146 CURSORS_LIB_SRC = $(JDK_TOPDIR)/src/share/lib/images/cursors
 147 ifeq ($(OPENJDK_TARGET_OS), windows)
 148   CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/win32_*.gif)
 149 else # OPENJDK_TARGET_OS
 150   CURSORS_SRC_FILES = $(CURSORS_LIB_SRC)/invalid32x32.gif $(wildcard $(CURSORS_LIB_SRC)/motif_*.gif)
 151 endif # OPENJDK_TARGET_OS
 152 CURSORS_TARGET_FILES = $(subst $(CURSORS_LIB_SRC),$(CURSORS_DEST_DIR),$(CURSORS_SRC_FILES))
 153 
 154 $(CURSORS_DEST_DIR)/%: $(CURSORS_LIB_SRC)/%
 155         $(call install-file)
 156 
 157 COPY_FILES += $(CURSORS_TARGET_FILES)
 158 
 159 ##########################################################################################
 160 
 161 CONTENT_TYPES_SRC = $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/lib
 162 
 163 $(LIBDIR)/content-types.properties: $(CONTENT_TYPES_SRC)/content-types.properties
 164         $(call install-file)
 165 
 166 COPY_FILES += $(LIBDIR)/content-types.properties
 167 
 168 ##########################################################################################
 169 
 170 CALENDARS_SRC := $(JDK_TOPDIR)/src/share/lib
 171 
 172 $(LIBDIR)/calendars.properties: $(CALENDARS_SRC)/calendars.properties
 173         $(call install-file)
 174 
 175 COPY_FILES += $(LIBDIR)/calendars.properties
 176 
 177 $(LIBDIR)/hijrah-config-umalqura.properties: $(CALENDARS_SRC)/hijrah-config-umalqura.properties
 178         $(MKDIR) -p $(@D)
 179         $(RM) $@
 180         $(CP) $< $@
 181 
 182 COPY_FILES += $(LIBDIR)/hijrah-config-umalqura.properties
 183 
 184 ##########################################################################################
 185 
 186 ifneq ($(findstring $(OPENJDK_TARGET_OS), windows aix),)
 187 
 188   TZMAPPINGS_SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS)/lib
 189 
 190   $(LIBDIR)/tzmappings: $(TZMAPPINGS_SRC)/tzmappings
 191         $(call install-file)
 192 
 193   COPY_FILES += $(LIBDIR)/tzmappings
 194 
 195 endif
 196 
 197 ##########################################################################################
 198 
 199 ICCPROFILE_DEST_DIR := $(LIBDIR)/cmm
 200 
 201 ifdef OPENJDK
 202   ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/share/lib/cmm/lcms
 203 else
 204   ICCPROFILE_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/cmm/kcms
 205 endif
 206 
 207 ICCPROFILE_SRCS := $(wildcard $(ICCPROFILE_SRC_DIR)/*.pf)
 208 ICCPROFILE_TARGET_FILES := $(subst $(ICCPROFILE_SRC_DIR),$(ICCPROFILE_DEST_DIR),$(ICCPROFILE_SRCS))
 209 
 210 $(ICCPROFILE_DEST_DIR)%.pf: $(ICCPROFILE_SRC_DIR)%.pf
 211         $(call install-file)
 212         $(CHMOD) 444 $@
 213 
 214 COPY_FILES += $(ICCPROFILE_TARGET_FILES)
 215 
 216 ##########################################################################################
 217 
 218 ifneq ($(FREETYPE_BUNDLE_LIB_PATH), )
 219   # We need to bundle the freetype library, so it will be available at runtime as well as link time.
 220   #
 221   # NB: Default freetype build system uses -h linker option and
 222   # result .so contains hardcoded library name that is later
 223   # used for adding dependencies to other objects
 224   # (e.g. libfontmanager.so).
 225   #
 226   # It is not obvious how to extract that hardcoded name (libfreetype.so.6)
 227   # without overcomplicating logic here.
 228   # To workaround this we hardcode .6 suffix for now.
 229   #
 230   # Note that .so.6 library will not be found by System.loadLibrary()
 231   # but fortunately we need to load FreeType library explicitly
 232   # on windows only
 233   #
 234   #TODO: rework this to avoid hardcoding library name in the makefile
 235   #
 236   ifeq ($(OPENJDK_TARGET_OS), windows)
 237     FREETYPE_TARGET_LIB = $(JDK_OUTPUTDIR)/bin/$(call SHARED_LIBRARY,freetype)
 238   else
 239     FREETYPE_TARGET_LIB = $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/$(call SHARED_LIBRARY,freetype).6
 240   endif
 241 
 242   $(FREETYPE_TARGET_LIB): $(FREETYPE_BUNDLE_LIB_PATH)/$(call SHARED_LIBRARY,freetype)
 243         $(CP) $(FREETYPE_BUNDLE_LIB_PATH)/$(call SHARED_LIBRARY,freetype) $@
 244         ifeq ($(OPENJDK_BUILD_OS), windows)
 245           $(CHMOD) +rx $@
 246         endif
 247 
 248   COPY_FILES += $(FREETYPE_TARGET_LIB)
 249 endif
 250 
 251 ##########################################################################################
 252 
 253 # Copy msvcrXX.dll on windows
 254 
 255 ifeq ($(OPENJDK_TARGET_OS), windows)
 256   MSVCR_TARGET := $(JDK_OUTPUTDIR)/bin/$(notdir $(MSVCR_DLL))
 257   # Chmod to avoid permission issues if bundles are unpacked on unix platforms.
 258   $(MSVCR_TARGET): $(MSVCR_DLL)
 259         $(call install-file)
 260         $(CHMOD) a+rx $@
 261 
 262   COPY_FILES += $(MSVCR_TARGET)
 263 endif
 264 
 265 ##########################################################################################
 266 
 267 HPROF_SRC = $(JDK_TOPDIR)/src/share/demo/jvmti/hprof/jvm.hprof.txt
 268 
 269 $(LIBDIR)/jvm.hprof.txt: $(HPROF_SRC)
 270         $(call install-file)
 271 
 272 COPY_FILES += $(LIBDIR)/jvm.hprof.txt
 273 
 274 ##########################################################################################
 275 
 276 #
 277 # How to install jvm.cfg.
 278 #
 279 ifeq ($(JVM_VARIANT_ZERO), true)
 280   JVMCFG_ARCH := zero
 281 else
 282   JVMCFG_ARCH := $(OPENJDK_TARGET_CPU_LEGACY)
 283 endif
 284 
 285 ifeq ($(OPENJDK_TARGET_OS), macosx)
 286   JVMCFG_SRC := $(JDK_TOPDIR)/src/macosx/bin/$(JVMCFG_ARCH)/jvm.cfg
 287 else
 288   JVMCFG_SRC := $(JDK_TOPDIR)/src/$(OPENJDK_TARGET_OS_API_DIR)/bin/$(JVMCFG_ARCH)/jvm.cfg
 289 endif
 290 JVMCFG_DIR := $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)
 291 JVMCFG := $(JVMCFG_DIR)/jvm.cfg
 292 
 293 # To do: should this also support -zeroshark?
 294 
 295 ifeq ($(OPENJDK_TARGET_CPU_BITS), 64)
 296   COPY_JVM_CFG_FILE := true
 297 else
 298   # On 32-bit machines we have three potential VMs: client, server and minimal.
 299   # Historically we usually have both client and server and so that is what the
 300   # committed jvm.cfg expects (including platform specific ergonomics switches
 301   # to decide whether to use client or server by default). So when we have anything
 302   # other than client and server we need to define a new jvm.cfg file.
 303   # The main problem is deciding whether to use aliases for the VMs that are not
 304   # present and the current position is that we add aliases for client and server, but
 305   # not for minimal.
 306   CLIENT_AND_SERVER := $(and $(findstring true, $(JVM_VARIANT_SERVER)), $(findstring true, $(JVM_VARIANT_CLIENT)))
 307   ifeq ($(CLIENT_AND_SERVER), true)
 308     COPY_JVM_CFG_FILE := true
 309   else
 310     # For zero, the default jvm.cfg file is sufficient
 311     ifeq ($(JVM_VARIANT_ZERO), true)
 312       COPY_JVM_CFG_FILE := true
 313     endif
 314   endif
 315 endif
 316 
 317 ifeq ($(COPY_JVM_CFG_FILE), true)
 318   $(JVMCFG): $(JVMCFG_SRC)
 319         $(call install-file)
 320 else
 321   $(JVMCFG):
 322         $(MKDIR) -p $(@D)
 323         $(RM) $(@)
 324         # Now check for other permutations
 325         ifeq ($(JVM_VARIANT_SERVER), true)
 326           $(PRINTF) "-server KNOWN\n">>$(@)
 327           $(PRINTF) "-client ALIASED_TO -server\n">>$(@)
 328           ifeq ($(JVM_VARIANT_MINIMAL1), true)
 329             $(PRINTF) "-minimal KNOWN\n">>$(@)
 330           endif
 331         else
 332           ifeq ($(JVM_VARIANT_CLIENT), true)
 333             $(PRINTF) "-client KNOWN\n">>$(@)
 334             $(PRINTF) "-server ALIASED_TO -client\n">>$(@)
 335             ifeq ($(JVM_VARIANT_MINIMAL1), true)
 336               $(PRINTF) "-minimal KNOWN\n">>$(@)
 337             endif
 338           else
 339             ifeq ($(JVM_VARIANT_MINIMAL1), true)
 340               $(PRINTF) "-minimal KNOWN\n">>$(@)
 341               $(PRINTF) "-server ALIASED_TO -minimal\n">>$(@)
 342               $(PRINTF) "-client ALIASED_TO -minimal\n">>$(@)
 343             endif
 344           endif
 345         endif
 346 endif
 347 
 348 COPY_FILES += $(JVMCFG)
 349 
 350 ##########################################################################################
 351 
 352 PROPS_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.security-$(OPENJDK_TARGET_OS)
 353 PROPS_DST := $(JDK_OUTPUTDIR)/lib/security/java.security
 354 
 355 ifndef OPENJDK
 356 
 357 RESTRICTED_PKGS_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/restricted.pkgs
 358 RESTRICTED_PKGS := $(shell $(CAT) $(RESTRICTED_PKGS_SRC) | $(TR) "\n" " ")
 359 
 360 $(PROPS_DST): $(PROPS_SRC)
 361         $(MKDIR) -p $(@D)
 362         $(TOOL_ADDTORESTRICTEDPKGS) $^ $@.tmp $(RESTRICTED_PKGS)
 363         $(MV) $@.tmp $@
 364 
 365 else
 366 
 367 $(PROPS_DST): $(PROPS_SRC)
 368         $(call install-file)
 369 
 370 endif
 371 
 372 COPY_FILES += $(PROPS_DST)
 373 
 374 ##########################################################################################
 375 
 376 POLICY_SRC := $(JDK_TOPDIR)/src/share/lib/security/java.policy
 377 POLICY_DST := $(JDK_OUTPUTDIR)/lib/security/java.policy
 378 
 379 $(POLICY_DST): $(POLICY_SRC)
 380         $(call install-file)
 381 
 382 COPY_FILES += $(POLICY_DST)
 383 
 384 ##########################################################################################
 385 
 386 CACERTS_SRC := $(CACERTS_FILE)
 387 CACERTS_DST := $(JDK_OUTPUTDIR)/lib/security/cacerts
 388 
 389 $(CACERTS_DST): $(CACERTS_SRC)
 390         $(call install-file)
 391 
 392 COPY_FILES += $(CACERTS_DST)
 393 
 394 ##########################################################################################
 395 
 396 BLACKLISTED_CERTS_SRC := $(JDK_TOPDIR)/src/share/lib/security/blacklisted.certs
 397 BLACKLISTED_CERTS_DST := $(JDK_OUTPUTDIR)/lib/security/blacklisted.certs
 398 
 399 ifndef OPENJDK
 400 
 401   BLACKLIST_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/blacklist
 402   BLACKLIST_DST := $(JDK_OUTPUTDIR)/lib/security/blacklist
 403 
 404   BLACKLISTED_CERTS_SRC += $(wildcard $(JDK_TOPDIR)/src/closed/share/lib/security/blacklisted.certs)
 405 
 406   TRUSTEDLIBS_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/trusted.libraries
 407   TRUSTEDLIBS_DST := $(JDK_OUTPUTDIR)/lib/security/trusted.libraries
 408 
 409   $(BLACKLIST_DST): $(BLACKLIST_SRC)
 410         $(call install-file)
 411 
 412   COPY_FILES += $(BLACKLIST_DST)
 413 
 414   $(TRUSTEDLIBS_DST): $(TRUSTEDLIBS_SRC)
 415         $(call install-file)
 416 
 417   COPY_FILES += $(TRUSTEDLIBS_DST)
 418 
 419 endif
 420 
 421 $(BLACKLISTED_CERTS_DST): $(BLACKLISTED_CERTS_SRC)
 422         $(MKDIR) -p $(@D)
 423         $(CAT) $^ | $(SED) '/^$$/d' | $(SORT) | $(UNIQ) > $@.tmp
 424         $(GREP) -i Algorithm $@.tmp > $@
 425         if [ `$(SED) -n -e "$$=" $@` != 1 ]; then \
 426            $(ECHO) "Different algorithms defined in $^"; \
 427            $(RM) $@ $@.tmp; \
 428            false; \
 429         fi
 430         $(GREP) -iv Algorithm $@.tmp >> $@
 431         $(RM) $@.tmp
 432 
 433 COPY_FILES += $(BLACKLISTED_CERTS_DST)
 434 
 435 ##########################################################################################
 436 
 437 ifndef OPENJDK
 438 
 439   SHARED_FONTS_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/fonts
 440   SHARED_FONTS_DST_DIR := $(JDK_OUTPUTDIR)/lib/fonts
 441   SHARED_FONTS_FILES := \
 442       LucidaTypewriterRegular.ttf \
 443       LucidaTypewriterBold.ttf \
 444       LucidaBrightRegular.ttf \
 445       LucidaBrightDemiBold.ttf \
 446       LucidaBrightItalic.ttf \
 447       LucidaBrightDemiItalic.ttf \
 448       LucidaSansRegular.ttf \
 449       LucidaSansDemiBold.ttf \
 450 
 451   SHARED_FONTS_SRC := $(foreach F, $(SHARED_FONTS_FILES), $(SHARED_FONTS_SRC_DIR)/$(F))
 452   SHARED_FONTS_DST := $(foreach F, $(SHARED_FONTS_FILES), $(SHARED_FONTS_DST_DIR)/$(F))
 453 
 454   $(SHARED_FONTS_DST_DIR)/%.ttf: $(SHARED_FONTS_SRC_DIR)/%.ttf
 455         $(call install-file)
 456 
 457   $(SHARED_FONTS_DST_DIR)/fonts.dir: $(JDK_TOPDIR)/src/solaris/classes/sun/awt/motif/java.fonts.dir
 458         $(call install-file)
 459 
 460   COPY_FILES += $(SHARED_FONTS_DST)
 461 
 462   ifneq ($(OPENJDK_TARGET_OS), windows)
 463     COPY_FILES += $(SHARED_FONTS_DST_DIR)/fonts.dir
 464   endif
 465 
 466   ifeq ($(OPENJDK_TARGET_OS), linux)
 467 
 468   # The oblique fonts are only needed/wanted on Linux.
 469 
 470     OBL_FONTS_SRC_DIR := $(JDK_TOPDIR)/src/closed/share/lib/fonts/oblique
 471     OBL_FONTS_DST_DIR := $(JDK_OUTPUTDIR)/lib/oblique-fonts
 472     OBL_FONTS_FILES := LucidaTypewriterOblique.ttf LucidaTypewriterBoldOblique.ttf \
 473         LucidaSansOblique.ttf LucidaSansDemiOblique.ttf
 474 
 475     OBL_FONTS_SRC := $(foreach F, $(OBL_FONTS_FILES), $(OBL_FONTS_SRC_DIR)/$(F))
 476     OBL_FONTS_DST := $(foreach F, $(OBL_FONTS_FILES), $(OBL_FONTS_DST_DIR)/$(F))
 477 
 478     $(OBL_FONTS_DST_DIR)/%.ttf: $(OBL_FONTS_SRC_DIR)/%.ttf
 479         $(call install-file)
 480 
 481     $(OBL_FONTS_DST_DIR)/fonts.dir: $(JDK_TOPDIR)/src/solaris/classes/sun/awt/motif/java.oblique-fonts.dir
 482         $(call install-file)
 483 
 484     COPY_FILES += $(OBL_FONTS_DST) $(OBL_FONTS_DST_DIR)/fonts.dir
 485 
 486   endif # linux
 487 endif # OPENJDK
 488 
 489 ##########################################################################################
 490 
 491 ifndef OPENJDK
 492 
 493   #
 494   # Solaris X11 Direct Graphics Access library
 495   #
 496 
 497   _DGALIBS_sparc = \
 498       libxinerama.so \
 499       libjdgaSUNWcg6.so \
 500       libjdgaSUNWffb.so \
 501       libjdgaSUNWm64.so \
 502       libjdgaSUNWafb.so
 503 
 504   _DGALIBS_sparcv9 = \
 505       libxinerama.so \
 506       libjdgaSUNWcg6.so \
 507       libjdgaSUNWffb.so \
 508       libjdgaSUNWm64.so \
 509       libjdgaSUNWafb.so
 510 
 511   _DGALIBS_i586 = # no i586 library yet
 512 
 513   _DGALIBS_amd64 = # no amd64 library yet
 514 
 515   DGALIBS = $(_DGALIBS_$(OPENJDK_TARGET_CPU_LEGACY):%=$(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/%)
 516 
 517   $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libxinerama.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(OPENJDK_TARGET_CPU_LEGACY)/libxinerama.so
 518         $(call install-file)
 519         $(CHMOD) 755 $@
 520 
 521   $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjdgaSUNW%.so: $(JDK_TOPDIR)/src/closed/solaris/lib/$(OPENJDK_TARGET_CPU_LEGACY)/libjdgaSUNW%.so
 522         $(call install-file)
 523         $(CHMOD) 755 $@
 524 
 525   $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjdgaSUNWafb.so: $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/libjdgaSUNWffb.so
 526         $(MKDIR) -p $(@D)
 527         $(RM) $@
 528         $(LN) -s $(<F) $@
 529 
 530   COPY_FILES += $(DGALIBS)
 531 
 532 endif
 533 
 534 ##########################################################################################
 535 
 536 ifeq ($(OPENJDK_TARGET_OS), solaris)
 537 
 538   SUNPKCS11_CFG_SRC := $(JDK_TOPDIR)/src/share/lib/security/sunpkcs11-solaris.cfg
 539   SUNPKCS11_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/sunpkcs11-solaris.cfg
 540 
 541   $(SUNPKCS11_CFG_DST): $(SUNPKCS11_CFG_SRC)
 542         $(call install-file)
 543 
 544   COPY_FILES += $(SUNPKCS11_CFG_DST)
 545 
 546 endif
 547 
 548 ##########################################################################################
 549 
 550 ifndef OPENJDK
 551   ifeq ($(OPENJDK_TARGET_OS), solaris)
 552 
 553     UCRYPTO_CFG_SRC := $(JDK_TOPDIR)/src/closed/share/lib/security/ucrypto-solaris.cfg
 554     UCRYPTO_CFG_DST := $(JDK_OUTPUTDIR)/lib/security/ucrypto-solaris.cfg
 555 
 556     $(UCRYPTO_CFG_DST): $(UCRYPTO_CFG_SRC)
 557         $(call install-file)
 558 
 559     COPY_FILES += $(UCRYPTO_CFG_DST)
 560 
 561   endif
 562 endif
 563 
 564 ##########################################################################################
 565 
 566 $(JDK_OUTPUTDIR)/lib/sound.properties: $(JDK_TOPDIR)/src/share/lib/sound.properties
 567         $(call install-file)
 568 
 569 COPY_FILES += $(JDK_OUTPUTDIR)/lib/sound.properties
 570 
 571 ##########################################################################################
 572 
 573 -include $(CUSTOM_MAKE_DIR)/CopyFiles.gmk