1 # 2 # Copyright (c) 2013, 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 default: all 27 28 include $(SPEC) 29 include MakeBase.gmk 30 include JarArchive.gmk 31 32 33 ################################################################################ 34 35 US_EXPORT_POLICY_JAR_DST := \ 36 $(SUPPORT_OUTPUTDIR)/modules_libs/java.base/security/US_export_policy.jar 37 38 US_EXPORT_POLICY_JAR_LIMITED := \ 39 $(SUPPORT_OUTPUTDIR)/jce/policy/limited/US_export_policy.jar 40 US_EXPORT_POLICY_JAR_UNLIMITED := \ 41 $(SUPPORT_OUTPUTDIR)/jce/policy/unlimited/US_export_policy.jar 42 43 # 44 # TODO fix so that SetupJarArchive does not write files into SRCS 45 # then we don't need this extra copying 46 # 47 # NOTE: We currently do not place restrictions on our limited export 48 # policy. This was not a typo. This means we are shipping the same file 49 # for both limited and unlimited US_export_policy.jar. Only the local 50 # policy file currently has restrictions. 51 # 52 US_EXPORT_POLICY_JAR_SRC_DIR := \ 53 $(JDK_TOPDIR)/make/data/cryptopolicy/unlimited 54 US_EXPORT_POLICY_JAR_TMP := \ 55 $(SUPPORT_OUTPUTDIR)/jce/policy/unlimited/US_export_policy_jar.tmp 56 57 $(US_EXPORT_POLICY_JAR_TMP)/%: $(US_EXPORT_POLICY_JAR_SRC_DIR)/% 58 $(install-file) 59 60 US_EXPORT_POLICY_JAR_DEPS := \ 61 $(US_EXPORT_POLICY_JAR_TMP)/default_US_export.policy 62 63 $(eval $(call SetupJarArchive, BUILD_US_EXPORT_POLICY_JAR, \ 64 DEPENDENCIES := $(US_EXPORT_POLICY_JAR_DEPS), \ 65 SRCS := $(US_EXPORT_POLICY_JAR_TMP), \ 66 SUFFIXES := .policy, \ 67 JAR := $(US_EXPORT_POLICY_JAR_UNLIMITED), \ 68 EXTRA_MANIFEST_ATTR := Crypto-Strength: unlimited, \ 69 SKIP_METAINF := true, \ 70 )) 71 72 $(US_EXPORT_POLICY_JAR_LIMITED): \ 73 $(US_EXPORT_POLICY_JAR_UNLIMITED) 74 $(call LogInfo, Copying unlimited $(patsubst $(OUTPUT_ROOT)/%,%,$@)) 75 $(install-file) 76 77 TARGETS += $(US_EXPORT_POLICY_JAR_LIMITED) $(US_EXPORT_POLICY_JAR_UNLIMITED) 78 79 ifeq ($(UNLIMITED_CRYPTO), true) 80 $(US_EXPORT_POLICY_JAR_DST): $(US_EXPORT_POLICY_JAR_UNLIMITED) 81 $(install-file) 82 else 83 $(US_EXPORT_POLICY_JAR_DST): $(US_EXPORT_POLICY_JAR_LIMITED) 84 $(install-file) 85 endif 86 87 POLICY_JARS += $(US_EXPORT_POLICY_JAR_DST) 88 89 ################################################################################ 90 91 LOCAL_POLICY_JAR_DST := \ 92 $(SUPPORT_OUTPUTDIR)/modules_libs/java.base/security/local_policy.jar 93 94 LOCAL_POLICY_JAR_LIMITED := \ 95 $(SUPPORT_OUTPUTDIR)/jce/policy/limited/local_policy.jar 96 LOCAL_POLICY_JAR_UNLIMITED := \ 97 $(SUPPORT_OUTPUTDIR)/jce/policy/unlimited/local_policy.jar 98 99 # 100 # TODO fix so that SetupJarArchive does not write files into SRCS 101 # then we don't need this extra copying 102 # 103 LOCAL_POLICY_JAR_LIMITED_TMP := \ 104 $(SUPPORT_OUTPUTDIR)/jce/policy/limited/local_policy_jar.tmp 105 LOCAL_POLICY_JAR_UNLIMITED_TMP := \ 106 $(SUPPORT_OUTPUTDIR)/jce/policy/unlimited/local_policy_jar.tmp 107 108 $(LOCAL_POLICY_JAR_LIMITED_TMP)/%: \ 109 $(JDK_TOPDIR)/make/data/cryptopolicy/limited/% 110 $(install-file) 111 112 $(LOCAL_POLICY_JAR_UNLIMITED_TMP)/%: \ 113 $(JDK_TOPDIR)/make/data/cryptopolicy/unlimited/% 114 $(install-file) 115 116 $(eval $(call SetupJarArchive, BUILD_LOCAL_POLICY_JAR_LIMITED, \ 117 DEPENDENCIES := $(LOCAL_POLICY_JAR_LIMITED_TMP)/exempt_local.policy \ 118 $(LOCAL_POLICY_JAR_LIMITED_TMP)/default_local.policy, \ 119 SRCS := $(LOCAL_POLICY_JAR_LIMITED_TMP), \ 120 SUFFIXES := .policy, \ 121 JAR := $(LOCAL_POLICY_JAR_LIMITED), \ 122 EXTRA_MANIFEST_ATTR := Crypto-Strength: limited, \ 123 SKIP_METAINF := true, \ 124 )) 125 126 $(eval $(call SetupJarArchive, BUILD_LOCAL_POLICY_JAR_UNLIMITED, \ 127 DEPENDENCIES := $(LOCAL_POLICY_JAR_UNLIMITED_TMP)/default_local.policy, \ 128 SRCS := $(LOCAL_POLICY_JAR_UNLIMITED_TMP), \ 129 SUFFIXES := .policy, \ 130 JAR := $(LOCAL_POLICY_JAR_UNLIMITED), \ 131 EXTRA_MANIFEST_ATTR := Crypto-Strength: unlimited, \ 132 SKIP_METAINF := true, \ 133 )) 134 135 TARGETS += $(LOCAL_POLICY_JAR_LIMITED) $(LOCAL_POLICY_JAR_UNLIMITED) 136 137 ifeq ($(UNLIMITED_CRYPTO), true) 138 $(LOCAL_POLICY_JAR_DST): $(LOCAL_POLICY_JAR_UNLIMITED) 139 $(install-file) 140 else 141 $(LOCAL_POLICY_JAR_DST): $(LOCAL_POLICY_JAR_LIMITED) 142 $(install-file) 143 endif 144 145 POLICY_JARS += $(LOCAL_POLICY_JAR_DST) 146 TARGETS += $(POLICY_JARS) 147 148 ################################################################################ 149 150 $(eval $(call IncludeCustomExtension, jdk, gendata/GendataPolicyJars.gmk))