jdk/makefiles/javax/crypto/Defs-jce.gmk
changeset 12317 9670c1610c53
equal deleted inserted replaced
12316:ba6b7a51e226 12317:9670c1610c53
       
     1 #
       
     2 # Copyright (c) 2007, 2011, 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 include $(BUILDDIR)/common/Release.gmk
       
    27 
       
    28 #
       
    29 # Include these extra attributes for now, should probably take out.
       
    30 #
       
    31 JCE_MANIFEST_FILE    = $(TEMPDIR)/manifest.mf
       
    32 $(JCE_MANIFEST_FILE): $(MAINMANIFEST)
       
    33 	$(prep-target)
       
    34 	$(SED) -e "s#@@RELEASE@@#$(RELEASE)#"           \
       
    35                -e "s#@@COMPANY_NAME@@#$(COMPANY_NAME)#" \
       
    36                $(MAINMANIFEST) >> $@
       
    37 	$(ECHO) "Extension-Name: javax.crypto" >> $@
       
    38 	$(ECHO) "Implementation-Vendor-Id: com.sun" >> $@
       
    39 
       
    40 README-MAKEFILE_WARNING = \
       
    41     "\nPlease read make/javax/crypto/Makefile for further build instructions."
       
    42 
       
    43 define no-source-warning
       
    44 	@$(ECHO) "\n***JCE sources are not available, skipping build.***" \
       
    45 	    $(README-MAKEFILE_WARNING)
       
    46 endef
       
    47 
       
    48 ifndef OPENJDK
       
    49 
       
    50 PREBUILT_DIR = $(JDK_TOPDIR)/make/closed/tools/crypto
       
    51 
       
    52 define build-warning
       
    53 	@$(ECHO) "\n***JCE in JDK builds require special tools/procedures.***" \
       
    54 	    $(README-MAKEFILE_WARNING)
       
    55 endef
       
    56 
       
    57 #
       
    58 # Location for JCE codesigning key.
       
    59 #
       
    60 SIGNING_KEY_DIR    = /security/ws/JCE-signing/src
       
    61 SIGNING_KEYSTORE   = $(SIGNING_KEY_DIR)/KeyStore.jks
       
    62 SIGNING_PASSPHRASE = $(SIGNING_KEY_DIR)/passphrase.txt
       
    63 SIGNING_ALIAS      = oracle_jce_rsa
       
    64 
       
    65 #
       
    66 # Defines for signing the various jar files.
       
    67 #
       
    68 
       
    69 define presign
       
    70     @if [ ! -f $(SIGNING_KEYSTORE) -o ! -f $(SIGNING_PASSPHRASE) ]; then \
       
    71 	$(ECHO) "\n$(SIGNING_KEYSTORE): Signing mechanism *NOT* available..." \
       
    72 	    $(README-MAKEFILE_WARNING); \
       
    73 	exit 2; \
       
    74     fi
       
    75 endef
       
    76 
       
    77 define sign-target
       
    78 	$(BOOT_JARSIGNER_CMD) -keystore $(SIGNING_KEYSTORE) \
       
    79 	    $@ $(SIGNING_ALIAS) < $(SIGNING_PASSPHRASE)
       
    80 	@$(java-vm-cleanup)
       
    81 	@$(ECHO) "\nJar codesigning finished."
       
    82 endef
       
    83 
       
    84 RELEASE_DIR = $(OUTPUTDIR)/jce-release
       
    85 
       
    86 define release-warning
       
    87 	@$(ECHO) \
       
    88 	    "\n***The jar files built by the 'release' target must***" \
       
    89 	    "\n***still be checked into the closed workspace!     ***" \
       
    90 	    $(README-MAKEFILE_WARNING)
       
    91 endef
       
    92 
       
    93 #
       
    94 # Convenience macros for signing a jar file.
       
    95 #
       
    96 # Call through $(call sign-file, target file)
       
    97 #
       
    98 define sign-file
       
    99 	$(presign)
       
   100 	$(prep-target)
       
   101 	$(CP) $1 $@
       
   102 	$(sign-target)
       
   103 endef
       
   104 
       
   105 endif  # !OPENJDK