2N/A#
2N/A# CDDL HEADER START
2N/A#
2N/A# The contents of this file are subject to the terms of the
2N/A# Common Development and Distribution License (the "License").
2N/A# You may not use this file except in compliance with the License.
2N/A#
2N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
2N/A# or http://www.opensolaris.org/os/licensing.
2N/A# See the License for the specific language governing permissions
2N/A# and limitations under the License.
2N/A#
2N/A# When distributing Covered Code, include this CDDL HEADER in each
2N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2N/A# If applicable, add the following below this CDDL HEADER, with the
2N/A# fields enclosed by brackets "[]" replaced with your own identifying
2N/A# information: Portions Copyright [yyyy] [name of copyright owner]
2N/A#
2N/A# CDDL HEADER END
2N/A#
2N/A# Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
2N/A#
2N/A# This make file will build mech_krb5.so.1. This shared object
2N/A# contains all the functionality needed to support the Kereros V5 GSS-API
2N/A# mechanism. No other Kerberos libraries are needed.
2N/A#
2N/A
2N/ALIBRARY= mech_krb5.a
2N/AVERS = .1
2N/A
2N/AFILEMODE= 755
2N/A
2N/A# objects are listed by source directory
2N/AREL_PATH= ../
2N/A
2N/Ato_all: all
2N/A
2N/A# crypto
2N/ACRYPTO = cksumtype_to_string.o \
2N/A coll_proof_cksum.o \
2N/A keyed_checksum_types.o keyed_cksum.o \
2N/A make_random_key.o string_to_cksumtype.o \
2N/A string_to_key.o valid_cksumtype.o \
2N/A enctype_util.o pkcs11slot.o state.o pbkdf2.o old_api_glue.o \
2N/A keylengths.o random_to_key.o prf.o cf2.o
2N/A
2N/ACRYPTO_UTS= cksumtypes.o decrypt.o encrypt.o encrypt_length.o \
2N/A etypes.o nfold.o verify_checksum.o default_state.o \
2N/A prng.o block_size.o make_checksum.o checksum_length.o hmac.o \
2N/A mandatory_sumtype.o combine_keys.o key.o keyblocks.o
2N/A
2N/A# crypto/raw
2N/ACRYPTO_RAW= raw_decrypt.o raw_encrypt.o
2N/A
2N/A# crypto/des user space only
2N/ACRYPTO_DES= afsstring2key.o string2key.o
2N/A
2N/A# crypto/des common to user and kernel space
2N/ACRYPTO_DES_UTS= f_cbc.o f_cksum.o f_parity.o weak_key.o d3_cbc.o
2N/A
2N/A# crypto/arcfour user space only
2N/ACRYPTO_ARCFOUR= arcfour_str2key.o
2N/A
2N/A# crypto/aes user space only
2N/ACRYPTO_AES= aes_s2k.o
2N/A
2N/A# crypto/arcfour common to user and kernel space
2N/ACRYPTO_ARCFOUR_UTS = k5_arcfour.o
2N/A
2N/A#crypto/dk
2N/ACRYPTO_DK= stringtokey.o
2N/A
2N/ACRYPTO_DK_UTS= checksum.o derive.o dk_decrypt.o dk_encrypt.o
2N/A
2N/A# crypto/crc32
2N/ACRYPTO_CRC32=
2N/A
2N/A# crypto/crc32
2N/ACRYPTO_CRC32_UTS= crc32.o
2N/A
2N/A# crypto/md4
2N/ACRYPTO_MD4= md4.o
2N/A
2N/A# crypto/enc_provider
2N/ACRYPTO_ENC= des.o des3.o arcfour_provider.o aes_provider.o
2N/A
2N/A# crypto/hash_provider
2N/ACRYPTO_HASH= hash_md5.o hash_sha1.o hash_ef_generic.o
2N/ACRYPTO_HASH_UTS= hash_crc32.o
2N/A
2N/A# crypto/keyhash_provider
2N/ACRYPTO_KEYHASH= k5_md5des.o hmac_md5.o
2N/ACRYPTO_KEYHASH_UTS= descbc.o
2N/A
2N/A# crypto/old
2N/ACRYPTO_OLD= des_stringtokey.o
2N/A
2N/A# crypto/old
2N/ACRYPTO_OLD_UTS= old_encrypt.o old_decrypt.o
2N/A
2N/ADTRACE_OBJS = kerberos_dtrace.o
2N/A
2N/A# et error_tables
2N/AET= adb_err.o adm_err.o asn1_err.o chpass_util_strings.o error_message.o \
2N/A com_err.o gssapi_err_generic.o import_err.o \
2N/A gssapi_err_krb5.o kadm_err.o kdb5_err.o kpasswd_strings.o kdc5_err.o \
2N/A krb5_err.o kv5m_err.o prof_err.o pty_err.o ss_err.o
2N/A
2N/A# krb5/asn.1
2N/AK5_ASN1= asn1_decode.o asn1_k_decode.o asn1_encode.o \
2N/A asn1_get.o asn1_make.o \
2N/A asn1buf.o krb5_decode.o krb5_encode.o \
2N/A asn1_k_encode.o asn1_misc.o ldap_key_seq.o
2N/A
2N/A# krb5/ccache
2N/AK5_CC= cc_file.o cc_memory.o ccbase.o ccfns.o ccdefault.o ccdefops.o ser_cc.o \
2N/A cc_retr.o cccopy.o
2N/A
2N/A# krb5/keytab
2N/AK5_KT= ktadd.o ktbase.o ktdefault.o ktfr_entry.o \
2N/A ktremove.o read_servi.o kt_file.o kt_srvtab.o ktfns.o kt_findrealm.o \
2N/A kt_solaris.o kt_memory.o
2N/A
2N/AK5_KRB= addr_comp.o addr_order.o addr_srch.o \
2N/A auth_con.o bld_pr_ext.o bld_princ.o chk_trans.o \
2N/A conv_princ.o copy_addrs.o copy_creds.o copy_data.o copy_kdcreq.o \
2N/A copy_padata.o copy_tick.o \
2N/A cp_key_cnt.o decode_kdc.o decrypt_tk.o encode_kdc.o encrypt_tk.o \
2N/A fwd_tgt.o gc_frm_kdc.o gc_via_tkt.o gen_seqnum.o \
2N/A gen_subkey.o get_creds.o get_in_tkt.o kdc_rep_dc.o mk_cred.o \
2N/A mk_error.o mk_priv.o mk_rep.o mk_req.o mk_req_ext.o mk_safe.o \
2N/A pr_to_salt.o princ_comp.o privacy_allowed.o rd_cred.o \
2N/A rd_error.o rd_priv.o rd_rep.o rd_req.o rd_req_dec.o rd_safe.o \
2N/A recvauth.o send_tgs.o sendauth.o srv_rcache.o str_conv.o \
2N/A tgtname.o valid_times.o walk_rtree.o appdefault.o deltat.o \
2N/A enc_helper.o gic_keytab.o gic_opt.o gic_pwd.o preauth2.o \
2N/A preauth.o vfy_increds.o vic_opt.o set_realm.o krb5_libinit.o chpw.o \
2N/A init_keyblock.o init_allocated_keyblock.o get_set_keyblock.o kerrs.o \
2N/A getuid.o pac.o etype_list.o copy_athctr.o copy_auth.o copy_cksum.o \
2N/A ser_ctx.o gen_save_subkey.o authdata.o fast.o libdef_parse.o \
2N/A enc_keyhelper.o s4u_creds.o srv_dec_tkt.o allow_weak.o
2N/A
2N/AK5_KRB_UTS= copy_key.o copy_princ.o \
2N/A init_ctx.o kfree.o parse.o ser_actx.o \
2N/A ser_adata.o ser_addr.o ser_auth.o \
2N/A ser_cksum.o ser_key.o \
2N/A ser_princ.o serialize.o unparse.o
2N/A
2N/AK5_OS= an_to_ln.o def_realm.o ccdefname.o free_krbhs.o \
2N/A full_ipadr.o get_krbhst.o gen_port.o genaddrs.o gen_rname.o \
2N/A hostaddr.o hst_realm.o krbfileio.o \
2N/A ktdefname.o kuserok.o mk_faddr.o localaddr.o locate_kdc.o lock_file.o \
2N/A net_read.o net_write.o osconfig.o port2ip.o \
2N/A read_msg.o read_pwd.o realm_dom.o sendto_kdc.o sn2princ.o \
2N/A unlck_file.o ustime.o write_msg.o safechown.o \
2N/A prompter.o realm_iter.o \
2N/A dnsglue.o dnssrv.o thread_safe.o changepw.o accessor.o
2N/A
2N/AK5_OS_UTS=init_os_ctx.o timeofday.o toffset.o c_ustime.o
2N/A
2N/AK5_POSIX= setenv.o daemon.o
2N/A
2N/AK5_RCACHE=rc_base.o rc_dfl.o rc_mem.o rc_common.o rc_io.o rcdef.o rc_conv.o \
2N/A ser_rc.o rcfns.o rc_none.o
2N/A
2N/AK5_UNICODE=ucstr.o ucdata.o
2N/A
2N/AMECH= accept_sec_context.o store_cred.o \
2N/A add_cred.o disp_major_status.o \
2N/A compare_name.o context_time.o copy_ccache.o \
2N/A disp_name.o disp_status.o export_sec_context.o \
2N/A get_tkt_flags.o import_name.o indicate_mechs.o \
2N/A inq_context.o inq_cred.o inq_names.o \
2N/A krb5_gss_glue.o \
2N/A pname_to_uid.o process_context_token.o \
2N/A rel_buffer.o rel_oid.o rel_oid_set.o \
2N/A rel_cred.o rel_name.o util_buffer.o \
2N/A util_cksum.o acquire_cred.o init_sec_context.o \
2N/A set_ccache.o acquire_cred_with_pw.o lucid_context.o \
2N/A set_allowable_enctypes.o oid_ops.o export_name.o \
2N/A util_buffer_set.o util_errmap.o s4u_gss_glue.o
2N/A
2N/AMECH_UTS= delete_sec_context.o gssapi_krb5.o \
2N/A import_sec_context.o k5seal.o k5sealv3.o \
2N/A k5unseal.o seal.o ser_sctx.o \
2N/A sign.o unseal.o util_crypt.o \
2N/A util_ordering.o util_seed.o util_seqnum.o \
2N/A util_set.o util_token.o util_validate.o \
2N/A val_cred.o verify.o wrap_size_limit.o naming_exts.o
2N/A
2N/AGSSAPI_UTS= gen_oids.o
2N/A
2N/APROFILE_OBJS= prof_tree.o prof_file.o prof_parse.o prof_init.o \
2N/A prof_set.o prof_get.o prof_solaris.o
2N/A
2N/ASUPPORT_OBJS= fake-addrinfo.o init-addrinfo.o threads.o errors.o plugins.o \
2N/A utf8_conv.o utf8.o k5buf.o zap.o gmt_mktime.o
2N/A
2N/AKWARN_OBJS= kwarnd_clnt_stubs.o kwarnd_clnt.o kwarnd_handle.o kwarnd_xdr.o
2N/A
2N/AOBJECTS= \
2N/A $(MECH) $(MECH_UTS) $(GSSAPI_UTS)\
2N/A $(SUPPORT_OBJS) \
2N/A $(KWARN_OBJS) \
2N/A $(PROFILE_OBJS) \
2N/A $(CRYPTO) $(CRYPTO_UTS) \
2N/A $(CRYPTO_CRC32) \
2N/A $(CRYPTO_CRC32_UTS) \
2N/A $(CRYPTO_DES) $(CRYPTO_DES_UTS) \
2N/A $(CRYPTO_MD4) \
2N/A $(CRYPTO_DK) $(CRYPTO_DK_UTS) \
2N/A $(CRYPTO_ARCFOUR) $(CRYPTO_ARCFOUR_UTS) \
2N/A $(CRYPTO_AES) \
2N/A $(CRYPTO_ENC) \
2N/A $(CRYPTO_HASH) $(CRYPTO_HASH_UTS) \
2N/A $(CRYPTO_KEYHASH) $(CRYPTO_KEYHASH_UTS) \
2N/A $(CRYPTO_OLD) $(CRYPTO_OLD_UTS) \
2N/A $(CRYPTO_RAW) \
2N/A $(DTRACE_OBJS) \
2N/A $(ET) \
2N/A $(K5_ASN1) \
2N/A $(K5_CC) \
2N/A $(K5_KT) \
2N/A $(K5_KRB) $(K5_KRB_UTS) \
2N/A $(K5_OS) $(K5_OS_UTS) \
2N/A $(K5_POSIX) $(K5_RCACHE) \
2N/A $(K5_UNICODE)
2N/A
2N/A# include library definitions
2N/Ainclude $(REL_PATH)/../../Makefile.lib
2N/A
2N/A# Must come after Makefile.lib so CPPFLAGS doesn't get overwritten
2N/Ainclude $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5
2N/A
2N/AK5LIBLINK=$(LIBRARY:%.a=lib%.so)
2N/A
2N/A# The following objects are unused. Refer to comments in Makefile.master.
2N/AUNUSEDMECHOBJS = disp_com_err_status.o util_localhost.o
2N/AUNUSEDCRYPTOOBJS = enctype_util_solaris.o
2N/AUNUSEDCRYPTO_CRC32OBJS = crc.o
2N/AUNUSEDK5_CCOBJS = cccursor.o
2N/AUNUSEDK5_UNICODEOBJS = ure.o urestubs.o
2N/AUNUSEDFILES = \
2N/A $(UNUSEDMECHOBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/mech/%.c) \
2N/A $(UNUSEDCRYPTOOBJS:%.o=$(SRC)/lib/gss_mechs/mech_krb5/crypto/%.c) \
2N/A $(UNUSEDCRYPTO_CRC32OBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/crc32/%.c)\
2N/A $(UNUSEDK5_CCOBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/ccache/%.c) \
2N/A $(UNUSEDK5_UNICODEOBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/unicode/%.c)
2N/APOST_PROCESS_SO += $(ACCESS_UNUSEDFILES)
2N/A
2N/A# override default text domain
2N/ATEXT_DOMAIN= SUNW_OST_NETRPC
2N/AINS.liblink2= -$(RM) $@; $(SYMLINK) gss/$(LIBLINKPATH)$(LIBLINKS) $@
2N/A
2N/ACPPFLAGS += -I$(REL_PATH)/libgss -I../include \
2N/A -I$(SRC)/uts/common/gssapi \
2N/A -I$(SRC)/uts/common/gssapi/include \
2N/A -I$(SRC)/lib/gss_mechs/mech_krb5/mech \
2N/A -I$(SRC)/lib/gss_mechs/mech_krb5/include/krb5 \
2N/A -I../dtrace \
2N/A -I../include/krb5 \
2N/A -I../krb5/keytab \
2N/A -I../krb5/krb \
2N/A -I../krb5/os \
2N/A -I../krb5/ccache \
2N/A -I../krb5/rcache \
2N/A -I$(SRC)/lib/krb5 \
2N/A -I$(SRC)/lib/krb5/kadm5 \
2N/A -I$(SRC)/uts/common/gssapi/mechs/krb5/include \
2N/A -I$(SRC)/uts/common/gssapi/mechs/krb5/crypto/des \
2N/A -I.
2N/A
2N/A# KRB5_DEFS can be assigned various preprocessor flags, typically -D
2N/A# defines on the make invocation. These values will be appended to
2N/A# CPPFLAGS so the other flags in CPPFLAGS will not be overwritten.
2N/A
2N/ACPPFLAGS += $(KRB5_DEFS)
2N/AC99MODE = -xc99=%all
2N/AC99LMODE = -Xc99=%all
2N/A
2N/AMAPFILE_EXPORT = ../mapfile-vers-clean
2N/A$(EXPORT_RELEASE_BUILD)MAPFILE_EXPORT = \
2N/A $(CLOSED)/lib/gss_mechs/mech_krb5/mapfile-vers-export
2N/AMAPFILES = ../mapfile-vers $(MAPFILE_EXPORT)
2N/A
2N/A$(EXPORT_RELEASE_BUILD)include $(CLOSED)/lib/gss_mechs/mech_krb5/Makefile.export
2N/A
2N/A#CPPFLAGS += -D_REENTRANT
2N/A$(PICS) := CFLAGS += $(XFFLAG)
2N/A$(PICS) := CFLAGS64 += $(XFFLAG)
2N/A$(PICS) := CCFLAGS += $(XFFLAG)
2N/A$(PICS) := CCFLAGS64 += $(XFFLAG)
2N/A
2N/ALIBS = $(DYNLIB) $(K5LIBLINK)
2N/A
2N/A# override ROOTLIBDIR and ROOTLINKS
2N/AINSTALL_LIBDIR= usr/lib/gss
2N/AINSTALL_LIBDIR64= usr/lib/$(MACH64)/gss
2N/A
2N/AK5MECHLINK= $(K5LIBLINK:%=$(ROOT)/usr/lib/%)
2N/AK5MECHLINK64= $(K5LIBLINK:%=$(ROOT)/usr/lib/$(MACH64)/%)
2N/ASTUBK5MECHLINK= $(K5LIBLINK:%=$(STUBROOT)/usr/lib/%)
2N/ASTUBK5MECHLINK64= $(K5LIBLINK:%=$(STUBROOT)/usr/lib/$(MACH64)/%)
2N/A
2N/AROOTLIBS= $(LIBS:%=$(ROOTLIBDIR)/%) $(K5MECHLINK)
2N/AROOTLIBS64= $(LIBS:%=$(ROOTLIBDIR64)/%) $(K5MECHLINK64)
2N/ASTUBROOTLIBS= $(LIBS:%=$(STUBROOTLIBDIR)/%) $(STUBK5MECHLINK)
2N/ASTUBROOTLIBS64= $(LIBS:%=$(STUBROOTLIBDIR64)/%) $(STUBK5MECHLINK64)
2N/A
2N/A$(ROOTLIBDIR) $(ROOTLIBDIR64) $(STUBROOTLIBDIR) $(STUBROOTLIBDIR64):
2N/A $(INS.dir)
2N/A
2N/A# create libmech_krb5 link locally
2N/A$(K5LIBLINK): $(DYNLIB)
2N/A -$(RM) $@; $(SYMLINK) $(DYNLIB) $@
2N/A
2N/A# create libmech_krb5 link in $ROOT/usr/lib/gss/
2N/A$(ROOTLIBDIR)/$(K5LIBLINK): $(ROOTLIBDIR)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink)
2N/A$(STUBROOTLIBDIR)/$(K5LIBLINK): $(STUBROOTLIBDIR)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink)
2N/A
2N/A# create libmech_krb5 link in $ROOT/usr/lib/$(MACH64)/gss
2N/A$(ROOTLIBDIR64)/$(K5LIBLINK): $(ROOTLIBDIR64)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink)
2N/A$(STUBROOTLIBDIR64)/$(K5LIBLINK): $(STUBROOTLIBDIR64)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink)
2N/A
2N/A# create libmech_krb5 link in ROOT/usr/lib
2N/A$(K5MECHLINK): $(ROOTLIBDIR)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink2)
2N/A$(STUBK5MECHLINK): $(STUBROOTLIBDIR)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink2)
2N/A
2N/A# create libmech_krb5 link in ROOT/usr/lib/$(MACH64)
2N/A$(K5MECHLINK64): $(ROOTLIBDIR64)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink2)
2N/A$(STUBK5MECHLINK64): $(STUBROOTLIBDIR64)/$(LIBLINKS)$(VERS)
2N/A $(INS.liblink2)
2N/A
2N/ALDLIBS += -lgss -lsocket -lresolv -lc -lpkcs11 -lnsl -lkstat
2N/A# -z ignore causes linker to ignore unneeded dependencies. This is
2N/A# needed because -lnsl is only used if DEBUG is defined.
2N/ADYNFLAGS += $(ZIGNORE)
2N/A
2N/A# mech lib needs special initialization at load time
2N/ADYNFLAGS += -zinitarray=krb5_ld_init
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/mech/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/lib/gss_mechs/mech_krb5/mech/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/md4/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/des/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/des/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/arcfour/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/arcfour/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/aes/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/dk/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/dk/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/raw/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/crc32/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/crc32/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/sha1/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/enc_provider/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/hash_provider/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/hash_provider/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/keyhash_provider/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/keyhash_provider/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/old/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/old/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/os/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/crypto/sha1/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/dtrace/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/et/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/asn.1/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/file/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/stdio/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/memory/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/keytab/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/keytab/file/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/krb5/krb/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/krb/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/krb5/os/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/os/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/posix/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/rcache/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/krb5/unicode/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/profile/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/Aobjs/%.o pics/%.o: $(REL_PATH)/support/%.c
2N/A $(COMPILE.c) -o $@ $<
2N/A $(POST_PROCESS_O)
2N/A
2N/A# include library targets
2N/Ainclude $(REL_PATH)/../../Makefile.targ
2N/A
2N/ASOURCES= \
2N/A $(CRYPTO_OS_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/os/%.c)\
2N/A $(K5_OS_UTS:%.o=$(SRC)/uts/common/gssapi/mechs/krb5/krb5/os/%.c) \
2N/A $(K5_OS:%.o=$(SRC)/lib/gss_mechs/mech_krb5/krb5/os/%.c) \
2N/A $(CRYPTO:%.o=$(SRC)/lib/gss_mechs/mech_krb5/crypto/%.c) \
2N/A $(CRYPTO_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/%.c)\
2N/A $(CRYPTO_RAW:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/raw/%.c)\
2N/A $(CRYPTO_DES:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/des/%.c)\
2N/A $(CRYPTO_DES_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/des/%.c)\
2N/A $(CRYPTO_ARCFOUR:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/arcfour/%.c)\
2N/A $(CRYPTO_ARCFOUR_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/arcfour/%.c)\
2N/A $(CRYPTO_AES:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/aes/%.c)\
2N/A $(CRYPTO_DK:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/dk/%.c)\
2N/A $(CRYPTO_DK_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/dk/%.c)\
2N/A $(CRYPTO_CRC32:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/crc32/%.c)\
2N/A $(CRYPTO_MD4:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/md4/%.c)\
2N/A $(CRYPTO_CRC32_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/crc32/%.c)\
2N/A $(CRYPTO_ENC:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/enc_provider/%.c)\
2N/A $(CRYPTO_HASH:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/hash_provider/%.c)\
2N/A $(CRYPTO_HASH_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/hash_provider/%.c)\
2N/A $(CRYPTO_KEYHASH:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/keyhash_provider/%.c)\
2N/A $(CRYPTO_KEYHASH_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/keyhash_provider/%.c)\
2N/A $(CRYPTO_OLD:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/old/%.c)\
2N/A $(CRYPTO_OLD_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/old/%.c)\
2N/A $(DTRACE_OBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/dtrace/%.c) \
2N/A $(ET:%.o= $(SRC)/lib/gss_mechs/mech_krb5/et/%.c) \
2N/A $(K5_ASN1:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/asn.1/%.c) \
2N/A $(K5_CC:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/ccache/%.c) \
2N/A $(K5_KT:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/keytab/%.c) \
2N/A $(K5_KRB:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/krb/%.c)\
2N/A $(K5_KRB_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/krb5/krb/%.c)\
2N/A $(K5_OS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/os/%.c)\
2N/A $(K5_OS_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/krb5/os/%.c)\
2N/A $(K5_POSIX:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/posix/%.c)\
2N/A $(K5_RCACHE:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/rcache/%.c) \
2N/A $(K5_UNICODE:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/unicode/%.c) \
2N/A $(MECH:%.o= $(SRC)/lib/gss_mechs/mech_krb5/mech/%.c) \
2N/A $(MECH_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/mech/%.c) \
2N/A $(GSSAPI_UTS:%.o= $(SRC)/uts/common/gssapi/%.c) \
2N/A $(PROFILE_OBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/profile/%.c) \
2N/A $(SUPPORT_OBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/support/%.c)
2N/A
2N/Akwarnd.h: $(SRC)/cmd/krb5/kwarn/kwarnd.x
2N/A $(RM) $@
2N/A $(RPCGEN) -M -h $(SRC)/cmd/krb5/kwarn/kwarnd.x | \
2N/A $(SED) -e 's!$(SRC)/cmd/krb5/kwarn/kwarnd.h!kwarnd.h!' > $@
2N/A
2N/Akwarnd_xdr.c: kwarnd.h $(SRC)/cmd/krb5/kwarn/kwarnd.x
2N/A $(RM) $@
2N/A $(RPCGEN) -M -c $(SRC)/cmd/krb5/kwarn/kwarnd.x | \
2N/A $(SED) -e 's!$(SRC)/cmd/krb5/kwarn/kwarnd.h!kwarnd.h!' > $@
2N/A
2N/Akwarnd_clnt.c: kwarnd.h $(SRC)/cmd/krb5/kwarn/kwarnd.x
2N/A $(RM) $@
2N/A $(RPCGEN) -M -l $(SRC)/cmd/krb5/kwarn/kwarnd.x | \
2N/A $(SED) -e 's!$(SRC)/cmd/krb5/kwarn/kwarnd.h!kwarnd.h!' > $@
2N/A
2N/Akwarnd_clnt_stubs.c: kwarnd.h $(SRC)/cmd/krb5/kwarn/kwarnd_clnt_stubs.c
2N/A $(RM) $@
2N/A $(CP) $(SRC)/cmd/krb5/kwarn/kwarnd_clnt_stubs.c $@
2N/A
2N/Akwarnd_handle.c: $(SRC)/cmd/krb5/kwarn/kwarnd_handle.c
2N/A $(RM) $@
2N/A $(CP) $(SRC)/cmd/krb5/kwarn/kwarnd_handle.c $@
2N/A
2N/A# DTrace
2N/A
2N/AKRB_DTRACE_SRC = $(REL_PATH)dtrace
2N/A
2N/AKERBEROS_D = kerberos.d
2N/AKERBEROS_D_SRC = $(KERBEROS_D:%=%.m4)
2N/AROOT_D = $(ROOT)/usr/lib/dtrace/$(KERBEROS_D)
2N/A
2N/AKRB_IMPL_HDR = kerberos_dtrace_impl.h
2N/AKRB_IMPL_HDR_SRC = $(KRB_IMPL_HDR:%=%.m4)
2N/A
2N/APROVIDER_SRC = kerberos_provider.d
2N/APROVIDER_HDR = $(PROVIDER_SRC:%.d=%.h)
2N/APROVIDER_OBJ = $(PROVIDER_SRC:%.d=%.o)
2N/A
2N/ADTRACE_HDR = $(KRB_IMPL_HDR) $(PROVIDER_HDR)
2N/A
2N/A$(DYNLIB): $(PROVIDER_OBJ)
2N/A
2N/A# Rules for building intermediate files
2N/A$(PROVIDER_HDR): $(KRB_DTRACE_SRC)/$(PROVIDER_SRC)
2N/A $(DTRACE) -xnolibs -h -s $? -o $@
2N/A
2N/A$(PROVIDER_OBJ): $(KRB_DTRACE_SRC)/$(PROVIDER_SRC) $(PICS)
2N/A $(COMPILE.d) -xnolibs -s $(KRB_DTRACE_SRC)/$(PROVIDER_SRC) $(PICS) -o $@
2N/A
2N/A$(KRB_IMPL_HDR): $(KRB_DTRACE_SRC)/$(KRB_IMPL_HDR_SRC)
2N/A $(M4) -D$(M4ARG)=1 $? > $@
2N/A
2N/A$(KERBEROS_D): $(KRB_DTRACE_SRC)/$(KERBEROS_D_SRC)
2N/A $(M4) $? > $@
2N/A
2N/A$(ROOT)/usr/lib/dtrace/%: %
2N/A $(INS.file)
2N/A
2N/ACLEANFILES += $(DTRACE_HDR) $(PROVIDER_OBJ)
2N/ACLOBBERFILES += $(KERBEROS_D)
2N/A
2N/A# So lint.out won't be needlessly recreated
2N/Alint: $(LINTOUT)
2N/A
2N/A$(LINTOUT): $(DTRACE_HDR) $(SOURCES)
2N/A $(LINT.c) -o $(LIBNAME) $(SOURCES) > $(LINTOUT) 2>&1