Makefile revision 9741:d997cd4a582f
1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# 22# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# See the README file in this directory for a description of how to cull 26# objects unused by the standalone boot applications from the OBJECTS list. 27# 28 29LIBRARY = libcrypto.a 30 31OBJECTS = cryptlib.o mem.o mem_dbg.o ex_data.o \ 32 cpt_err.o o_time.o mem_clr.o o_dir.o \ 33 \ 34 a_object.o a_bitstr.o a_utctm.o a_gentm.o \ 35 a_time.o a_int.o a_octet.o a_print.o \ 36 a_type.o a_set.o a_dup.o a_d2i_fp.o \ 37 a_i2d_fp.o a_enum.o a_utf8.o a_sign.o \ 38 a_digest.o a_verify.o a_mbstr.o a_strex.o \ 39 x_algor.o x_val.o x_pubkey.o x_sig.o \ 40 x_req.o x_attrib.o x_bignum.o x_long.o \ 41 x_name.o x_x509.o x_x509a.o x_crl.o \ 42 x_info.o x_spki.o nsseq.o d2i_pu.o \ 43 d2i_pr.o i2d_pu.o i2d_pr.o t_x509.o \ 44 t_x509a.o t_pkey.o tasn_new.o tasn_fre.o \ 45 tasn_enc.o tasn_dec.o tasn_utl.o tasn_typ.o \ 46 f_int.o f_string.o x_pkey.o a_bool.o \ 47 x_exten.o asn1_par.o asn1_lib.o asn1_err.o \ 48 a_bytes.o a_strnid.o evp_asn1.o asn_pack.o \ 49 p5_pbe.o p5_pbev2.o p8_pkey.o asn1_gen.o \ 50 \ 51 bf_skey.o bf_ecb.o bf_cfb64.o bf_ofb64.o \ 52 bf_enc.o \ 53 \ 54 bio_lib.o bio_err.o bss_file.o bss_sock.o \ 55 bf_buff.o b_print.o b_dump.o \ 56 \ 57 bn_add.o bn_div.o bn_exp.o bn_lib.o \ 58 bn_ctx.o bn_mul.o bn_mod.o bn_print.o \ 59 bn_rand.o bn_shift.o bn_word.o bn_blind.o \ 60 bn_gcd.o bn_prime.o bn_asm.o bn_mont.o \ 61 bn_err.o bn_sqr.o bn_recp.o bn_exp2.o \ 62 \ 63 buffer.o buf_err.o \ 64 \ 65 comp_lib.o \ 66 \ 67 conf_err.o conf_lib.o conf_api.o conf_def.o \ 68 conf_mod.o \ 69 \ 70 set_key.o ecb_enc.o ecb3_enc.o ofb64enc.o \ 71 cfb64enc.o cfb64ede.o cfb_enc.o ofb64ede.o \ 72 \ 73 xcbc_enc.o des_enc.o \ 74 \ 75 dh_asn1.o dh_key.o dh_lib.o dh_check.o \ 76 dh_err.o \ 77 \ 78 dsa_vrf.o dsa_sign.o dsa_err.o dsa_ossl.o \ 79 dsa_lib.o dsa_asn1.o \ 80 \ 81 dso_lib.o dso_null.o dso_openssl.o \ 82 \ 83 err.o err_all.o err_prn.o \ 84 \ 85 c_all.o c_allc.o c_alld.o digest.o \ 86 e_des3.o e_null.o e_rc2.o e_xcbc_d.o \ 87 e_bf.o e_des.o encode.o evp_enc.o \ 88 evp_err.o evp_key.o evp_lib.o evp_pbe.o \ 89 evp_pkey.o m_dss.o m_dss1.o m_md5.o \ 90 m_sha.o m_sha1.o names.o p5_crpt.o \ 91 p5_crpt2.o p_lib.o p_sign.o p_verify.o \ 92 \ 93 eng_list.o eng_ctrl.o eng_table.o tb_cipher.o \ 94 eng_err.o tb_dh.o tb_digest.o eng_init.o \ 95 tb_dsa.o eng_lib.o tb_rand.o tb_rsa.o \ 96 \ 97 hmac.o \ 98 \ 99 lhash.o \ 100 \ 101 md5_dgst.o md5-sparcv9.o \ 102 \ 103 o_names.o obj_dat.o obj_err.o obj_lib.o \ 104 \ 105 ocsp_asn.o ocsp_err.o \ 106 \ 107 pem_info.o pem_lib.o pem_all.o pem_err.o \ 108 pem_x509.o pem_xaux.o pem_oth.o pem_pkey.o \ 109 \ 110 p12_add.o p12_asn.o p12_crpt.o p12_key.o \ 111 p12_mutl.o p12_utl.o pk12err.o p12_p8d.o \ 112 p12_attr.o p12_decr.o p12_p8e.o \ 113 \ 114 pk7_asn1.o pk7_lib.o pkcs7err.o \ 115 \ 116 md_rand.o randfile.o rand_lib.o rand_err.o \ 117 rand_unix.o \ 118 \ 119 rc2_cbc.o rc2_ecb.o rc2_skey.o rc2cfb64.o \ 120 rc2ofb64.o \ 121 \ 122 rsa_eay.o rsa_lib.o rsa_sign.o rsa_err.o \ 123 rsa_pk1.o rsa_ssl.o rsa_none.o rsa_oaep.o \ 124 rsa_asn1.o rsa_x931.o \ 125 \ 126 sha_dgst.o sha1dgst.o sha256.o sha512.o \ 127 \ 128 stack.o \ 129 \ 130 ui_err.o \ 131 \ 132 x509_def.o x509_d2.o x509_cmp.o x509_obj.o \ 133 x509_req.o x509_vfy.o x509rset.o x509_err.o \ 134 x509name.o x509_v3.o x509_ext.o x509_att.o \ 135 x509type.o x509_lu.o x_all.o x509_txt.o \ 136 x509_trs.o by_file.o by_dir.o x509_vpm.o \ 137 \ 138 v3_ia5.o v3_lib.o v3_prn.o v3_utl.o \ 139 v3_pku.o v3_int.o v3_enum.o v3err.o \ 140 v3_alt.o v3_genn.o v3_pci.o v3_pcia.o \ 141 v3_purp.o v3_info.o v3_ocsp.o v3_bitst.o \ 142 v3_conf.o v3_extku.o v3_cpols.o v3_crld.o \ 143 v3_akey.o v3_akeya.o v3_skey.o v3_sxnet.o \ 144 v3_ncons.o v3_bcons.o v3_pcons.o v3_pmaps.o \ 145 \ 146 pcy_cache.o pcy_tree.o pcy_data.o pcy_lib.o \ 147 pcy_map.o pcy_node.o \ 148 \ 149 $($(MACH)_OBJECTS) 150 151 152include ../Makefile.com 153 154SRCDIR = $(TOPDIR)/common/openssl/crypto 155 156SRCS = $(OBJECTS:%.o= \ 157 $(SRCDIR)/asn1/%.c $(SRCDIR)/rc2/%.c \ 158 $(SRCDIR)/bf/%.c $(SRCDIR)/dsa/%.c \ 159 $(SRCDIR)/bio/%.c $(SRCDIR)/bn/%.c \ 160 $(SRCDIR)/buffer/%.c \ 161 $(SRCDIR)/comp/%.c $(SRCDIR)/conf/%.c \ 162 $(SRCDIR)/des/%.c $(SRCDIR)/dh/%.c \ 163 $(SRCDIR)/err/%.c $(SRCDIR)/evp/%.c \ 164 $(SRCDIR)/engine/%.c $(SRCDIR)/hmac/%.c \ 165 $(SRCDIR)/lhash/%.c $(SRCDIR)/ocsp/%.c \ 166 $(SRCDIR)/objects/%.c $(SRCDIR)/pem/%.c \ 167 $(SRCDIR)/pkcs12/%.c $(SRCDIR)/pkcs7/%.c \ 168 $(SRCDIR)/rand/%.c $(SRCDIR)/rsa/%.c \ 169 $(SRCDIR)/sha/%.c $(SRCDIR)/stack/%.c \ 170 $(SRCDIR)/txt_db/%.c $(SRCDIR)/ui/%.c \ 171 $(SRCDIR)/x509/%.c $(SRCDIR)/x509v3/%.c \ 172 $(SRCDIR)/md5/%.c) 173 174# 175# We don't have chmod() in the standalone environment. 176# We also need to prepend the OpenSSL CPPFLAGS. 177# 178CPPFLAGS += $(OPENSSL_BUILD_CPPFLAGS) -DNO_CHMOD -I../sock 179 180# The following blocks work around code in the OpenSSL open source distribution 181# that fail to follow Sun coding standards and fail to compile without warnings. 182# Instead of changing the shared openssl code, we supress compiler warnings for 183# them. 184CRYPTO_OBS = \ 185 a_strex.o asn1_par.o bf_enc.o x_algor.o x_val.o x_pubkey.o \ 186 x_sig.o x_req.o x_attrib.o x_name.o x_x509.o x_x509a.o \ 187 x_crl.o x_spki.o nsseq.o x_exten.o p5_pbe.o \ 188 p5_pbev2.o p8_pkey.o dsa_asn1.o dh_asn1.o p12_asn.o pk7_asn1.o \ 189 rsa_asn1.o v3_bcons.o v3_extku.o v3_genn.o v3_pku.o v3_sxnet.o \ 190 v3_cpols.o v3_crld.o v3_info.o v3_akeya.o ocsp_asn.o 191 192$(CRYPTO_OBS:%.o=objs/%.o) := CPPFLAGS += \ 193 -erroff=E_TYP_STORAGE_CLASS_OBSOLESCENT 194 195# Rather than change the shared openssl code, we permit incomplete 196# type-based arguments 197CRYPTO_INCOM = \ 198 err_all.o 199 200$(CRYPTO_INCOM:%.o=objs/%.o) := CPPFLAGS += \ 201 -erroff=E_ARRAY_OF_INCOMPLETE_NONAME 202 203# M_ASN1_I2D_finish(), M_ASN1_D2I_Finish() macros confuse compiler 204CRYPTO_FIN_OBJ = \ 205 p8_key.o x_cinf.o x_pkey.o x509_vfy.o 206 207$(CRYPTO_FIN_OBJ:%.o=objs/%.o) := CPPFLAGS += \ 208 -erroff=E_STATEMENT_NOT_REACHED 209 210CRYPTO_ULONG_OBJ = \ 211 a_int.o a_enum.o a_strex.o a_strnid.o \ 212 bf_skey.o bf_enc.o bss_sock.o bn_add.o \ 213 bn_div.o bn_lib.o bn_shift.o bn_word.o \ 214 bn_mul.o bn_asm.o bn_mont.o bn_sqr.o \ 215 set_key.o ecb_enc.o des_enc.o lhash.o \ 216 sha1dgst.o sha_dgst.o x509_cmp.o 217 218$(CRYPTO_ULONG_OBJ:%.o=objs/%.o) := CPPFLAGS += \ 219 -erroff=E_CONST_PROMOTED_UNSIGNED_LONG 220 221objs/md5_dgst.o := CPPFLAGS += -DMD5_ASM 222objs/md5-sparcv9.o := CPPFLAGS += -DMD5_BLOCK_DATA_ORDER 223 224objs/%.o: $(SRCDIR)/asn1/%.c 225 $(COMPILE.c) -o $@ $< 226 $(POST_PROCESS_O) 227objs/%.o: $(SRCDIR)/bf/%.c 228 $(COMPILE.c) -o $@ $< 229 $(POST_PROCESS_O) 230objs/%.o: $(SRCDIR)/dsa/%.c 231 $(COMPILE.c) -o $@ $< 232 $(POST_PROCESS_O) 233objs/%.o: $(SRCDIR)/dso/%.c 234 $(COMPILE.c) -o $@ $< 235 $(POST_PROCESS_O) 236objs/%.o: $(SRCDIR)/bio/%.c 237 $(COMPILE.c) -o $@ $< 238 $(POST_PROCESS_O) 239objs/%.o: $(SRCDIR)/bn/%.c 240 $(COMPILE.c) -o $@ $< 241 $(POST_PROCESS_O) 242objs/%.o: $(SRCDIR)/buffer/%.c 243 $(COMPILE.c) -o $@ $< 244 $(POST_PROCESS_O) 245objs/%.o: $(SRCDIR)/comp/%.c 246 $(COMPILE.c) -o $@ $< 247 $(POST_PROCESS_O) 248objs/%.o: $(SRCDIR)/conf/%.c 249 $(COMPILE.c) -o $@ $< 250 $(POST_PROCESS_O) 251objs/%.o: $(SRCDIR)/des/%.c 252 $(COMPILE.c) -o $@ $< 253 $(POST_PROCESS_O) 254objs/%.o: $(SRCDIR)/dh/%.c 255 $(COMPILE.c) -o $@ $< 256 $(POST_PROCESS_O) 257objs/%.o: $(SRCDIR)/err/%.c 258 $(COMPILE.c) -o $@ $< 259 $(POST_PROCESS_O) 260objs/%.o: $(SRCDIR)/engine/%.c 261 $(COMPILE.c) -o $@ $< 262 $(POST_PROCESS_O) 263objs/%.o: $(SRCDIR)/evp/%.c 264 $(COMPILE.c) -o $@ $< 265 $(POST_PROCESS_O) 266objs/%.o: $(SRCDIR)/hmac/%.c 267 $(COMPILE.c) -o $@ $< 268 $(POST_PROCESS_O) 269objs/%.o: $(SRCDIR)/lhash/%.c 270 $(COMPILE.c) -o $@ $< 271 $(POST_PROCESS_O) 272objs/%.o: $(SRCDIR)/objects/%.c 273 $(COMPILE.c) -o $@ $< 274 $(POST_PROCESS_O) 275objs/%.o: $(SRCDIR)/ocsp/%.c 276 $(COMPILE.c) -o $@ $< 277 $(POST_PROCESS_O) 278objs/%.o: $(SRCDIR)/pem/%.c 279 $(COMPILE.c) -o $@ $< 280 $(POST_PROCESS_O) 281objs/%.o: $(SRCDIR)/pkcs12/%.c 282 $(COMPILE.c) -o $@ $< 283 $(POST_PROCESS_O) 284objs/%.o: $(SRCDIR)/pkcs7/%.c 285 $(COMPILE.c) -o $@ $< 286 $(POST_PROCESS_O) 287objs/%.o: $(SRCDIR)/rand/%.c 288 $(COMPILE.c) -o $@ $< 289 $(POST_PROCESS_O) 290objs/%.o: $(SRCDIR)/rc2/%.c 291 $(COMPILE.c) -o $@ $< 292 $(POST_PROCESS_O) 293objs/%.o: $(SRCDIR)/rsa/%.c 294 $(COMPILE.c) -o $@ $< 295 $(POST_PROCESS_O) 296objs/%.o: $(SRCDIR)/md5/%.c 297 $(COMPILE.c) -o $@ $< 298 $(POST_PROCESS_O) 299objs/%.o: $(SRCDIR)/md5/asm/%.S 300 $(COMPILE.c) -o $@ $< 301 $(POST_PROCESS_O) 302objs/%.o: $(SRCDIR)/sha/%.c 303 $(COMPILE.c) -o $@ $< 304 $(POST_PROCESS_O) 305objs/%.o: $(SRCDIR)/stack/%.c 306 $(COMPILE.c) -o $@ $< 307 $(POST_PROCESS_O) 308objs/%.o: $(SRCDIR)/txt_db/%.c 309 $(COMPILE.c) -o $@ $< 310 $(POST_PROCESS_O) 311objs/%.o: $(SRCDIR)/ui/%.c 312 $(COMPILE.c) -o $@ $< 313 $(POST_PROCESS_O) 314objs/%.o: $(SRCDIR)/x509/%.c 315 $(COMPILE.c) -o $@ $< 316 $(POST_PROCESS_O) 317objs/%.o: $(SRCDIR)/x509v3/%.c 318 $(COMPILE.c) -o $@ $< 319 $(POST_PROCESS_O) 320 321include ../Makefile.targ 322