ARCH = $(shell uname -m | sed s,i[3456789]86,ia32,) LIB_PATH = /usr/lib64 EFI_INCLUDE = /usr/include/efi EFI_INCLUDES = -I../Include -I$(EFI_INCLUDE) -I$(EFI_INCLUDE)/$(ARCH) -I$(EFI_INCLUDE)/protocol EFI_PATH = /usr/lib64/gnuefi LIB_GCC = $(shell $(CC) -print-libgcc-file-name) EFI_LIBS = -lefi -lgnuefi $(LIB_GCC) CFLAGS = -ggdb -O0 -I. -I.. -I../Include/ -Icrypto -fno-stack-protector -fno-strict-aliasing -fpic -fshort-wchar -nostdinc \ -Wall $(EFI_INCLUDES) -DOPENSSL_SYSNAME_UWIN -DOPENSSL_SYS_UEFI -DL_ENDIAN -DSIXTY_FOUR_BIT_LONG -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DOPENSSL_NO_CAMELLIA -DOPENSSL_NO_SEED -DOPENSSL_NO_RC5 -DOPENSSL_NO_MDC2 -DOPENSSL_NO_SOCK -DOPENSSL_NO_CMS -DOPENSSL_NO_JPAKE -DOPENSSL_NO_CAPIENG -DOPENSSL_NO_ERR -DOPENSSL_NO_KRB5 -DOPENSSL_NO_DYNAMIC_ENGINE -DGETPID_IS_MEANINGLESS -DOPENSSL_NO_STDIO -DOPENSSL_NO_FP_API -DOPENSSL_NO_DGRAM -DOPENSSL_NO_SHA0 -DOPENSSL_NO_SHA512 -DOPENSSL_NO_LHASH -DOPENSSL_NO_HW -DOPENSSL_NO_OCSP -DOPENSSL_NO_LOCKING -DOPENSSL_NO_DEPRECATED -DOPENSSL_SMALL_FOOTPRINT -DPEDANTIC -mno-red-zone ifeq ($(ARCH),x86_64) CFLAGS += -DEFI_FUNCTION_WRAPPER endif LDFLAGS = -nostdlib -znocombreloc TARGET = libopenssl.a OBJS = crypto/cryptlib.o \ crypto/dyn_lck.o \ crypto/mem.o \ crypto/mem_clr.o \ crypto/mem_dbg.o \ crypto/cversion.o \ crypto/ex_data.o \ crypto/cpt_err.o \ crypto/ebcdic.o \ crypto/uid.o \ crypto/o_time.o \ crypto/o_str.o \ crypto/o_dir.o \ crypto/o_init.o \ crypto/fips_err.o \ crypto/md2/md2_dgst.o \ crypto/md2/md2_one.o \ crypto/md4/md4_dgst.o \ crypto/md4/md4_one.o \ crypto/md5/md5_dgst.o \ crypto/md5/md5_one.o \ crypto/sha/sha_dgst.o \ crypto/sha/sha1dgst.o \ crypto/sha/sha_one.o \ crypto/sha/sha1_one.o \ crypto/sha/sha256.o \ crypto/sha/sha512.o \ crypto/hmac/hmac.o \ crypto/ripemd/rmd_dgst.o \ crypto/ripemd/rmd_one.o \ crypto/des/des_lib.o \ crypto/des/set_key.o \ crypto/des/ecb_enc.o \ crypto/des/cbc_enc.o \ crypto/des/ecb3_enc.o \ crypto/des/cfb64enc.o \ crypto/des/cfb64ede.o \ crypto/des/cfb_enc.o \ crypto/des/ofb64ede.o \ crypto/des/enc_read.o \ crypto/des/enc_writ.o \ crypto/des/ofb64enc.o \ crypto/des/ofb_enc.o \ crypto/des/str2key.o \ crypto/des/pcbc_enc.o \ crypto/des/qud_cksm.o \ crypto/des/rand_key.o \ crypto/des/des_enc.o \ crypto/des/fcrypt_b.o \ crypto/des/fcrypt.o \ crypto/des/xcbc_enc.o \ crypto/des/rpc_enc.o \ crypto/des/cbc_cksm.o \ crypto/des/ede_cbcm_enc.o \ crypto/des/des_old.o \ crypto/des/des_old2.o \ crypto/des/read2pwd.o \ crypto/rc2/rc2_ecb.o \ crypto/rc2/rc2_skey.o \ crypto/rc2/rc2_cbc.o \ crypto/rc2/rc2cfb64.o \ crypto/rc2/rc2ofb64.o \ crypto/rc4/rc4_enc.o \ crypto/rc4/rc4_skey.o \ crypto/rc4/rc4_fblk.o \ crypto/idea/i_cbc.o \ crypto/idea/i_cfb64.o \ crypto/idea/i_ofb64.o \ crypto/idea/i_ecb.o \ crypto/idea/i_skey.o \ crypto/bf/bf_skey.o \ crypto/bf/bf_ecb.o \ crypto/bf/bf_enc.o \ crypto/bf/bf_cfb64.o \ crypto/bf/bf_ofb64.o \ crypto/cast/c_skey.o \ crypto/cast/c_ecb.o \ crypto/cast/c_enc.o \ crypto/cast/c_cfb64.o \ crypto/cast/c_ofb64.o \ crypto/aes/aes_misc.o \ crypto/aes/aes_ecb.o \ crypto/aes/aes_cfb.o \ crypto/aes/aes_ofb.o \ crypto/aes/aes_ctr.o \ crypto/aes/aes_ige.o \ crypto/aes/aes_wrap.o \ crypto/aes/aes_core.o \ crypto/aes/aes_cbc.o \ crypto/bn/bn_add.o \ crypto/bn/bn_div.o \ crypto/bn/bn_exp.o \ crypto/bn/bn_lib.o \ crypto/bn/bn_ctx.o \ crypto/bn/bn_mul.o \ crypto/bn/bn_mod.o \ crypto/bn/bn_print.o \ crypto/bn/bn_rand.o \ crypto/bn/bn_shift.o \ crypto/bn/bn_word.o \ crypto/bn/bn_blind.o \ crypto/bn/bn_kron.o \ crypto/bn/bn_sqrt.o \ crypto/bn/bn_gcd.o \ crypto/bn/bn_prime.o \ crypto/bn/bn_err.o \ crypto/bn/bn_sqr.o \ crypto/bn/bn_asm.o \ crypto/bn/bn_recp.o \ crypto/bn/bn_mont.o \ crypto/bn/bn_mpi.o \ crypto/bn/bn_exp2.o \ crypto/bn/bn_gf2m.o \ crypto/bn/bn_nist.o \ crypto/bn/bn_depr.o \ crypto/bn/bn_x931p.o \ crypto/bn/bn_const.o \ crypto/bn/bn_opt.o \ crypto/rsa/rsa_eay.o \ crypto/rsa/rsa_gen.o \ crypto/rsa/rsa_lib.o \ crypto/rsa/rsa_sign.o \ crypto/rsa/rsa_saos.o \ crypto/rsa/rsa_err.o \ crypto/rsa/rsa_pk1.o \ crypto/rsa/rsa_ssl.o \ crypto/rsa/rsa_none.o \ crypto/rsa/rsa_oaep.o \ crypto/rsa/rsa_chk.o \ crypto/rsa/rsa_null.o \ crypto/rsa/rsa_pss.o \ crypto/rsa/rsa_x931.o \ crypto/rsa/rsa_x931g.o \ crypto/rsa/rsa_asn1.o \ crypto/rsa/rsa_depr.o \ crypto/rsa/rsa_eng.o \ crypto/dsa/dsa_gen.o \ crypto/dsa/dsa_key.o \ crypto/dsa/dsa_lib.o \ crypto/dsa/dsa_asn1.o \ crypto/dsa/dsa_vrf.o \ crypto/dsa/dsa_sign.o \ crypto/dsa/dsa_err.o \ crypto/dsa/dsa_ossl.o \ crypto/dsa/dsa_depr.o \ crypto/dsa/dsa_utl.o \ crypto/dso/dso_dl.o \ crypto/dso/dso_dlfcn.o \ crypto/dso/dso_err.o \ crypto/dso/dso_lib.o \ crypto/dso/dso_null.o \ crypto/dso/dso_openssl.o \ crypto/dso/dso_win32.o \ crypto/dso/dso_vms.o \ crypto/dh/dh_asn1.o \ crypto/dh/dh_gen.o \ crypto/dh/dh_key.o \ crypto/dh/dh_lib.o \ crypto/dh/dh_check.o \ crypto/dh/dh_err.o \ crypto/dh/dh_depr.o \ crypto/ec/ec_lib.o \ crypto/ec/ecp_smpl.o \ crypto/ec/ecp_mont.o \ crypto/ec/ecp_nist.o \ crypto/ec/ec_cvt.o \ crypto/ec/ec_mult.o \ crypto/ec/ec_err.o \ crypto/ec/ec_curve.o \ crypto/ec/ec_check.o \ crypto/ec/ec_print.o \ crypto/ec/ec_asn1.o \ crypto/ec/ec_key.o \ crypto/ec/ec2_smpl.o \ crypto/ec/ec2_mult.o \ crypto/ecdh/ech_lib.o \ crypto/ecdh/ech_ossl.o \ crypto/ecdh/ech_key.o \ crypto/ecdh/ech_err.o \ crypto/ecdsa/ecs_lib.o \ crypto/ecdsa/ecs_asn1.o \ crypto/ecdsa/ecs_ossl.o \ crypto/ecdsa/ecs_sign.o \ crypto/ecdsa/ecs_vrf.o \ crypto/ecdsa/ecs_err.o \ crypto/buffer/buffer.o \ crypto/buffer/buf_str.o \ crypto/buffer/buf_err.o \ crypto/bio/bio_lib.o \ crypto/bio/bio_cb.o \ crypto/bio/bio_err.o \ crypto/bio/bss_mem.o \ crypto/bio/bss_null.o \ crypto/bio/bss_fd.o \ crypto/bio/bss_file.o \ crypto/bio/bf_null.o \ crypto/bio/bf_buff.o \ crypto/bio/b_dump.o \ crypto/bio/bf_nbio.o \ crypto/bio/bss_log.o \ crypto/bio/bss_bio.o \ crypto/bio/bss_dgram.o \ crypto/stack/stack.o \ crypto/lhash/lhash.o \ crypto/lhash/lh_stats.o \ crypto/rand/md_rand.o \ crypto/rand/randfile.o \ crypto/rand/rand_lib.o \ crypto/rand/rand_eng.o \ crypto/rand/rand_err.o \ crypto/rand/rand_egd.o \ crypto/rand/rand_win.o \ crypto/rand/rand_unix.o \ crypto/rand/rand_os2.o \ crypto/rand/rand_nw.o \ crypto/err/err.o \ crypto/err/err_def.o \ crypto/err/err_all.o \ crypto/err/err_prn.o \ crypto/err/err_str.o \ crypto/err/err_bio.o \ crypto/objects/o_names.o \ crypto/objects/obj_dat.o \ crypto/objects/obj_lib.o \ crypto/objects/obj_err.o \ crypto/evp/encode.o \ crypto/evp/digest.o \ crypto/evp/dig_eng.o \ crypto/evp/evp_enc.o \ crypto/evp/evp_key.o \ crypto/evp/evp_acnf.o \ crypto/evp/evp_cnf.o \ crypto/evp/e_des.o \ crypto/evp/e_bf.o \ crypto/evp/e_idea.o \ crypto/evp/e_des3.o \ crypto/evp/e_rc4.o \ crypto/evp/e_aes.o \ crypto/evp/names.o \ crypto/evp/e_xcbc_d.o \ crypto/evp/e_rc2.o \ crypto/evp/e_cast.o \ crypto/evp/e_rc5.o \ crypto/evp/enc_min.o \ crypto/evp/m_null.o \ crypto/evp/m_md2.o \ crypto/evp/m_md4.o \ crypto/evp/m_md5.o \ crypto/evp/m_sha.o \ crypto/evp/m_sha1.o \ crypto/evp/m_dss.o \ crypto/evp/m_dss1.o \ crypto/evp/m_ripemd.o \ crypto/evp/m_ecdsa.o \ crypto/evp/p_open.o \ crypto/evp/p_seal.o \ crypto/evp/p_sign.o \ crypto/evp/p_verify.o \ crypto/evp/p_lib.o \ crypto/evp/p_enc.o \ crypto/evp/p_dec.o \ crypto/evp/bio_md.o \ crypto/evp/bio_b64.o \ crypto/evp/bio_enc.o \ crypto/evp/evp_err.o \ crypto/evp/e_null.o \ crypto/evp/c_all.o \ crypto/evp/c_allc.o \ crypto/evp/c_alld.o \ crypto/evp/evp_lib.o \ crypto/evp/bio_ok.o \ crypto/evp/evp_pkey.o \ crypto/evp/evp_pbe.o \ crypto/evp/p5_crpt.o \ crypto/evp/p5_crpt2.o \ crypto/evp/e_old.o \ crypto/asn1/a_object.o \ crypto/asn1/a_bitstr.o \ crypto/asn1/a_utctm.o \ crypto/asn1/a_gentm.o \ crypto/asn1/a_time.o \ crypto/asn1/a_int.o \ crypto/asn1/a_octet.o \ crypto/asn1/a_print.o \ crypto/asn1/a_type.o \ crypto/asn1/a_set.o \ crypto/asn1/a_dup.o \ crypto/asn1/a_d2i_fp.o \ crypto/asn1/a_i2d_fp.o \ crypto/asn1/a_enum.o \ crypto/asn1/a_utf8.o \ crypto/asn1/a_sign.o \ crypto/asn1/a_digest.o \ crypto/asn1/a_verify.o \ crypto/asn1/a_mbstr.o \ crypto/asn1/a_strex.o \ crypto/asn1/x_algor.o \ crypto/asn1/x_val.o \ crypto/asn1/x_pubkey.o \ crypto/asn1/x_sig.o \ crypto/asn1/x_req.o \ crypto/asn1/x_attrib.o \ crypto/asn1/x_bignum.o \ crypto/asn1/x_long.o \ crypto/asn1/x_name.o \ crypto/asn1/x_x509.o \ crypto/asn1/x_x509a.o \ crypto/asn1/x_crl.o \ crypto/asn1/x_info.o \ crypto/asn1/x_spki.o \ crypto/asn1/nsseq.o \ crypto/asn1/d2i_pu.o \ crypto/asn1/d2i_pr.o \ crypto/asn1/i2d_pu.o \ crypto/asn1/i2d_pr.o \ crypto/asn1/t_req.o \ crypto/asn1/t_x509.o \ crypto/asn1/t_x509a.o \ crypto/asn1/t_crl.o \ crypto/asn1/t_pkey.o \ crypto/asn1/t_spki.o \ crypto/asn1/t_bitst.o \ crypto/asn1/tasn_new.o \ crypto/asn1/tasn_fre.o \ crypto/asn1/tasn_enc.o \ crypto/asn1/tasn_dec.o \ crypto/asn1/tasn_utl.o \ crypto/asn1/tasn_typ.o \ crypto/asn1/f_int.o \ crypto/asn1/f_string.o \ crypto/asn1/n_pkey.o \ crypto/asn1/f_enum.o \ crypto/asn1/a_hdr.o \ crypto/asn1/x_pkey.o \ crypto/asn1/a_bool.o \ crypto/asn1/x_exten.o \ crypto/asn1/asn_mime.o \ crypto/asn1/asn1_gen.o \ crypto/asn1/asn1_par.o \ crypto/asn1/asn1_lib.o \ crypto/asn1/asn1_err.o \ crypto/asn1/a_meth.o \ crypto/asn1/a_bytes.o \ crypto/asn1/a_strnid.o \ crypto/asn1/evp_asn1.o \ crypto/asn1/asn_pack.o \ crypto/asn1/p5_pbe.o \ crypto/asn1/p5_pbev2.o \ crypto/asn1/p8_pkey.o \ crypto/asn1/asn_moid.o \ crypto/pem/pem_sign.o \ crypto/pem/pem_seal.o \ crypto/pem/pem_info.o \ crypto/pem/pem_lib.o \ crypto/pem/pem_all.o \ crypto/pem/pem_err.o \ crypto/pem/pem_x509.o \ crypto/pem/pem_xaux.o \ crypto/pem/pem_oth.o \ crypto/pem/pem_pk8.o \ crypto/pem/pem_pkey.o \ crypto/x509/x509_def.o \ crypto/x509/x509_d2.o \ crypto/x509/x509_r2x.o \ crypto/x509/x509_cmp.o \ crypto/x509/x509_obj.o \ crypto/x509/x509_req.o \ crypto/x509/x509spki.o \ crypto/x509/x509_vfy.o \ crypto/x509/x509_set.o \ crypto/x509/x509cset.o \ crypto/x509/x509rset.o \ crypto/x509/x509_err.o \ crypto/x509/x509name.o \ crypto/x509/x509_v3.o \ crypto/x509/x509_ext.o \ crypto/x509/x509_att.o \ crypto/x509/x509type.o \ crypto/x509/x509_lu.o \ crypto/x509/x_all.o \ crypto/x509/x509_txt.o \ crypto/x509/x509_trs.o \ crypto/x509/by_file.o \ crypto/x509/by_dir.o \ crypto/x509/x509_vpm.o \ crypto/x509v3/v3_bcons.o \ crypto/x509v3/v3_bitst.o \ crypto/x509v3/v3_conf.o \ crypto/x509v3/v3_extku.o \ crypto/x509v3/v3_ia5.o \ crypto/x509v3/v3_lib.o \ crypto/x509v3/v3_prn.o \ crypto/x509v3/v3_utl.o \ crypto/x509v3/v3err.o \ crypto/x509v3/v3_genn.o \ crypto/x509v3/v3_alt.o \ crypto/x509v3/v3_skey.o \ crypto/x509v3/v3_akey.o \ crypto/x509v3/v3_pku.o \ crypto/x509v3/v3_int.o \ crypto/x509v3/v3_enum.o \ crypto/x509v3/v3_sxnet.o \ crypto/x509v3/v3_cpols.o \ crypto/x509v3/v3_crld.o \ crypto/x509v3/v3_purp.o \ crypto/x509v3/v3_info.o \ crypto/x509v3/v3_ocsp.o \ crypto/x509v3/v3_akeya.o \ crypto/x509v3/v3_pmaps.o \ crypto/x509v3/v3_pcons.o \ crypto/x509v3/v3_ncons.o \ crypto/x509v3/v3_pcia.o \ crypto/x509v3/v3_pci.o \ crypto/x509v3/pcy_cache.o \ crypto/x509v3/pcy_node.o \ crypto/x509v3/pcy_data.o \ crypto/x509v3/pcy_map.o \ crypto/x509v3/pcy_tree.o \ crypto/x509v3/pcy_lib.o \ crypto/x509v3/v3_asid.o \ crypto/x509v3/v3_addr.o \ crypto/conf/conf_err.o \ crypto/conf/conf_lib.o \ crypto/conf/conf_api.o \ crypto/conf/conf_def.o \ crypto/conf/conf_mod.o \ crypto/conf/conf_mall.o \ crypto/conf/conf_sap.o \ crypto/txt_db/txt_db.o \ crypto/pkcs7/pk7_asn1.o \ crypto/pkcs7/pk7_lib.o \ crypto/pkcs7/pkcs7err.o \ crypto/pkcs7/pk7_doit.o \ crypto/pkcs7/pk7_smime.o \ crypto/pkcs7/pk7_attr.o \ crypto/pkcs7/pk7_mime.o \ crypto/pkcs12/p12_add.o \ crypto/pkcs12/p12_asn.o \ crypto/pkcs12/p12_attr.o \ crypto/pkcs12/p12_crpt.o \ crypto/pkcs12/p12_crt.o \ crypto/pkcs12/p12_decr.o \ crypto/pkcs12/p12_init.o \ crypto/pkcs12/p12_key.o \ crypto/pkcs12/p12_kiss.o \ crypto/pkcs12/p12_mutl.o \ crypto/pkcs12/p12_utl.o \ crypto/pkcs12/p12_npas.o \ crypto/pkcs12/pk12err.o \ crypto/pkcs12/p12_p8d.o \ crypto/pkcs12/p12_p8e.o \ crypto/comp/comp_lib.o \ crypto/comp/comp_err.o \ crypto/comp/c_rle.o \ crypto/comp/c_zlib.o \ crypto/engine/eng_err.o \ crypto/engine/eng_lib.o \ crypto/engine/eng_list.o \ crypto/engine/eng_init.o \ crypto/engine/eng_ctrl.o \ crypto/engine/eng_table.o \ crypto/engine/eng_pkey.o \ crypto/engine/eng_fat.o \ crypto/engine/eng_all.o \ crypto/engine/tb_rsa.o \ crypto/engine/tb_dsa.o \ crypto/engine/tb_ecdsa.o \ crypto/engine/tb_dh.o \ crypto/engine/tb_ecdh.o \ crypto/engine/tb_rand.o \ crypto/engine/tb_store.o \ crypto/engine/tb_cipher.o \ crypto/engine/tb_digest.o \ crypto/engine/eng_openssl.o \ crypto/engine/eng_cnf.o \ crypto/engine/eng_dyn.o \ crypto/engine/eng_cryptodev.o \ crypto/engine/eng_padlock.o \ crypto/ocsp/ocsp_asn.o \ crypto/ocsp/ocsp_ext.o \ crypto/ocsp/ocsp_ht.o \ crypto/ocsp/ocsp_lib.o \ crypto/ocsp/ocsp_cl.o \ crypto/ocsp/ocsp_srv.o \ crypto/ocsp/ocsp_prn.o \ crypto/ocsp/ocsp_vfy.o \ crypto/ocsp/ocsp_err.o \ crypto/ui/ui_err.o \ crypto/ui/ui_lib.o \ crypto/ui/ui_util.o \ crypto/ui/ui_compat.o \ crypto/krb5/krb5_asn.o \ crypto/store/str_err.o \ crypto/store/str_lib.o \ crypto/store/str_meth.o \ crypto/store/str_mem.o \ crypto/pqueue/pqueue.o \ all: $(TARGET) libopenssl.a: $(OBJS) ar rcs libopenssl.a $(OBJS) clean: rm -f $(TARGET) $(OBJS)