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 2006 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25# ident "%Z%%M% %I% %E% SMI" 26# 27 28# 29# This make file will build mech_krb5.so.1. This shared object 30# contains all the functionality needed to support the Kereros V5 GSS-API 31# mechanism. No other Kerberos libraries are needed. 32# 33 34 35LIBRARY= mech_krb5.a 36VERS = .1 37 38GROUP= sys 39FILEMODE= 755 40 41# objects are listed by source directory 42REL_PATH= ../ 43 44to_all: all 45 46# crypto 47CRYPTO = cksumtype_to_string.o \ 48 coll_proof_cksum.o enctype_compare.o enctype_to_string.o \ 49 keyed_checksum_types.o keyed_cksum.o \ 50 make_random_key.o string_to_cksumtype.o \ 51 string_to_enctype.o string_to_key.o valid_cksumtype.o \ 52 valid_enctype.o pkcs11slot.o state.o pbkdf2.o old_api_glue.o 53 54CRYPTO_UTS= cksumtypes.o decrypt.o encrypt.o encrypt_length.o \ 55 etypes.o nfold.o verify_checksum.o default_state.o \ 56 prng.o block_size.o make_checksum.o checksum_length.o hmac.o \ 57 mandatory_sumtype.o combine_keys.o 58 59# crypto/raw 60CRYPTO_RAW= raw_decrypt.o raw_encrypt.o 61 62# crypto/des user space only 63CRYPTO_DES= afsstring2key.o string2key.o 64 65# crypto/des common to user and kernel space 66CRYPTO_DES_UTS= f_cbc.o f_cksum.o f_parity.o weak_key.o d3_cbc.o 67 68# crypto/arcfour user space only 69CRYPTO_ARCFOUR= arcfour_str2key.o 70 71# crypto/aes user space only 72CRYPTO_AES= aes_s2k.o 73 74# crypto/arcfour common to user and kernel space 75CRYPTO_ARCFOUR_UTS = k5_arcfour.o 76 77#crypto/dk 78CRYPTO_DK= stringtokey.o 79 80CRYPTO_DK_UTS= checksum.o derive.o dk_decrypt.o dk_encrypt.o 81 82# crypto/crc32 83CRYPTO_CRC32= crc.o 84 85# crypto/crc32 86CRYPTO_CRC32_UTS= crc32.o 87 88# crypto/md4 89CRYPTO_MD4= md4.o 90 91# crypto/enc_provider 92CRYPTO_ENC= des.o des3.o arcfour_provider.o aes_provider.o 93 94# crypto/hash_provider 95CRYPTO_HASH= hash_md5.o hash_sha1.o hash_ef_generic.o 96CRYPTO_HASH_UTS= hash_crc32.o 97 98# crypto/keyhash_provider 99CRYPTO_KEYHASH= k5_md5des.o hmac_md5.o 100CRYPTO_KEYHASH_UTS= descbc.o 101 102# crypto/old 103CRYPTO_OLD= des_stringtokey.o 104 105# crypto/old 106CRYPTO_OLD_UTS= old_encrypt.o old_decrypt.o 107 108# et error_tables 109ET= adb_err.o adm_err.o asn1_err.o chpass_util_strings.o error_message.o \ 110 com_err.o gssapi_err_generic.o import_err.o \ 111 gssapi_err_krb5.o kadm_err.o kdb5_err.o kpasswd_strings.o kdc5_err.o \ 112 krb5_err.o kv5m_err.o prof_err.o pty_err.o ss_err.o 113 114# krb5/asn.1 115K5_ASN1= asn1_decode.o asn1_k_decode.o asn1_encode.o \ 116 asn1_get.o asn1_make.o \ 117 asn1buf.o krb5_decode.o krb5_encode.o \ 118 asn1_k_encode.o asn1_misc.o 119 120# krb5/ccache 121K5_CC= cc_file.o cc_memory.o ccbase.o ccfns.o ccdefault.o ccdefops.o ser_cc.o cc_retr.o cccopy.o 122 123# krb5/keytab 124K5_KT= ktadd.o ktbase.o ktdefault.o ktfr_entry.o \ 125 ktremove.o read_servi.o kt_file.o kt_srvtab.o ktfns.o 126 127K5_KRB= addr_comp.o addr_order.o addr_srch.o \ 128 auth_con.o bld_pr_ext.o bld_princ.o chk_trans.o \ 129 conv_princ.o copy_addrs.o copy_creds.o copy_data.o copy_tick.o \ 130 cp_key_cnt.o decode_kdc.o decrypt_tk.o encode_kdc.o encrypt_tk.o \ 131 free_rtree.o fwd_tgt.o gc_frm_kdc.o gc_via_tkt.o gen_seqnum.o \ 132 gen_subkey.o get_creds.o get_in_tkt.o kdc_rep_dc.o mk_cred.o \ 133 mk_error.o mk_priv.o mk_rep.o mk_req.o mk_req_ext.o mk_safe.o \ 134 pr_to_salt.o princ_comp.o privacy_allowed.o rd_cred.o \ 135 rd_error.o rd_priv.o rd_rep.o rd_req.o rd_req_dec.o rd_safe.o \ 136 recvauth.o send_tgs.o sendauth.o srv_rcache.o str_conv.o \ 137 tgtname.o valid_times.o walk_rtree.o appdefault.o deltat.o \ 138 enc_helper.o gic_keytab.o gic_opt.o gic_pwd.o preauth2.o \ 139 vfy_increds.o vic_opt.o set_realm.o krb5_libinit.o chpw.o \ 140 init_keyblock.o init_allocated_keyblock.o get_set_keyblock.o 141 142K5_KRB_UTS= copy_athctr.o copy_auth.o copy_cksum.o copy_key.o \ 143 copy_princ.o init_ctx.o kfree.o parse.o ser_actx.o \ 144 ser_adata.o ser_addr.o ser_auth.o \ 145 ser_cksum.o ser_ctx.o ser_key.o \ 146 ser_princ.o serialize.o unparse.o 147 148K5_OS= an_to_ln.o def_realm.o ccdefname.o free_krbhs.o free_hstrl.o \ 149 full_ipadr.o get_krbhst.o gen_port.o genaddrs.o gen_rname.o \ 150 gmt_mktime.o hostaddr.o hst_realm.o krbfileio.o \ 151 ktdefname.o kuserok.o mk_faddr.o localaddr.o locate_kdc.o lock_file.o \ 152 net_read.o net_write.o osconfig.o port2ip.o promptusr.o \ 153 read_msg.o read_pwd.o realm_dom.o sendto_kdc.o sn2princ.o \ 154 unlck_file.o ustime.o write_msg.o safechown.o \ 155 prompter.o realm_iter.o foreachaddr.o \ 156 dnsglue.o dnssrv.o thread_safe.o changepw.o 157 158K5_OS_UTS=init_os_ctx.o timeofday.o toffset.o c_ustime.o 159 160K5_POSIX= setenv.o daemon.o 161 162K5_RCACHE=rc_base.o rc_file.o rc_mem.o rc_common.o rc_io.o rcdef.o rc_conv.o \ 163 ser_rc.o rcfns.o 164 165MECH= accept_sec_context.o store_cred.o \ 166 add_cred.o disp_com_err_status.o disp_major_status.o \ 167 compare_name.o context_time.o copy_ccache.o \ 168 disp_name.o disp_status.o export_sec_context.o \ 169 get_tkt_flags.o import_name.o indicate_mechs.o \ 170 inq_context.o inq_cred.o inq_names.o \ 171 k5mech.o \ 172 pname_to_uid.o process_context_token.o \ 173 rel_buffer.o rel_oid.o rel_oid_set.o \ 174 rel_cred.o rel_name.o util_buffer.o \ 175 util_dup.o util_localhost.o \ 176 util_cksum.o acquire_cred.o init_sec_context.o \ 177 util_ctxsetup.o set_ccache.o acquire_cred_with_pw.o 178 179MECH_UTS= delete_sec_context.o gssapi_krb5.o \ 180 import_sec_context.o k5seal.o k5sealv3.o \ 181 k5unseal.o seal.o ser_sctx.o \ 182 sign.o unseal.o util_crypt.o \ 183 util_ordering.o util_seed.o util_seqnum.o \ 184 util_set.o util_token.o util_validate.o \ 185 val_cred.o verify.o wrap_size_limit.o 186 187PROFILE_OBJS= prof_tree.o prof_file.o prof_parse.o prof_init.o \ 188 prof_set.o prof_get.o 189 190SUPPORT_OBJS= fake-addrinfo.o threads.o 191 192OBJECTS= \ 193 $(MECH) $(MECH_UTS) \ 194 $(SUPPORT_OBJS) \ 195 $(PROFILE_OBJS) \ 196 $(CRYPTO) $(CRYPTO_UTS) \ 197 $(CRYPTO_CRC32) \ 198 $(CRYPTO_CRC32_UTS) \ 199 $(CRYPTO_DES) $(CRYPTO_DES_UTS) \ 200 $(CRYPTO_MD4) \ 201 $(CRYPTO_DK) $(CRYPTO_DK_UTS) \ 202 $(CRYPTO_ARCFOUR) $(CRYPTO_ARCFOUR_UTS) \ 203 $(CRYPTO_AES) \ 204 $(CRYPTO_ENC) \ 205 $(CRYPTO_HASH) $(CRYPTO_HASH_UTS) \ 206 $(CRYPTO_KEYHASH) $(CRYPTO_KEYHASH_UTS) \ 207 $(CRYPTO_OLD) $(CRYPTO_OLD_UTS) \ 208 $(CRYPTO_RAW) \ 209 $(ET) \ 210 $(K5_ASN1) \ 211 $(K5_CC) \ 212 $(K5_KT) \ 213 $(K5_KRB) $(K5_KRB_UTS) \ 214 $(K5_OS) $(K5_OS_UTS) \ 215 $(K5_POSIX) $(K5_RCACHE) 216 217# include library definitions 218include $(REL_PATH)/../../Makefile.lib 219 220# Must come after Makefile.lib so CPPFLAGS doesn't get overwritten 221include $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5 222 223K5LIBLINK=$(LIBRARY:%.a=lib%.so) 224 225# override default text domain 226TEXT_DOMAIN= SUNW_OST_NETRPC 227INS.liblink2= -$(RM) $@; $(SYMLINK) gss/$(LIBLINKPATH)$(LIBLINKS) $@ 228 229CPPFLAGS += -I$(REL_PATH)/libgss -I../include \ 230 -I$(SRC)/uts/common/gssapi \ 231 -I$(SRC)/uts/common/gssapi/include \ 232 -I$(SRC)/lib/gss_mechs/mech_krb5/include/krb5 \ 233 -I../include/krb5 \ 234 -I../krb5/keytab \ 235 -I../krb5/krb \ 236 -I../krb5/os \ 237 -I../krb5/ccache \ 238 -I../krb5/rcache \ 239 -I$(SRC)/lib/krb5 \ 240 -I$(SRC)/lib/krb5/kadm5 \ 241 -I$(SRC)/uts/common/gssapi/mechs/krb5/include \ 242 -I$(SRC)/uts/common/gssapi/mechs/krb5/crypto/des 243 244# KRB5_DEFS can be assigned various preprocessor flags, typically -D 245# defines on the make invocation. These values will be appended to 246# CPPFLAGS so the other flags in CPPFLAGS will not be overwritten. 247 248CPPFLAGS += $(KRB5_DEFS) 249 250MAPFILE_EXPORT = ../mapfile-vers-clean 251$(EXPORT_RELEASE_BUILD)MAPFILE_EXPORT = \ 252 $(CLOSED)/lib/gss_mechs/mech_krb5/mapfile-vers-export 253MAPFILES = ../mapfile-vers $(MAPFILE_EXPORT) 254 255$(EXPORT_RELEASE_BUILD)include $(CLOSED)/lib/gss_mechs/mech_krb5/Makefile.export 256 257#CPPFLAGS += -D_REENTRANT 258$(PICS) := CFLAGS += $(XFFLAG) 259$(PICS) := CCFLAGS += $(XFFLAG) 260 261LIBS = $(DYNLIB) $(K5LIBLINK) 262 263# override ROOTLIBDIR and ROOTLINKS 264ROOTLIBDIR= $(ROOT)/usr/lib/gss 265ROOTLIBDIR64= $(ROOT)/usr/lib/$(MACH64)/gss 266 267K5MECHLINK= $(K5LIBLINK:%=$(ROOT)/usr/lib/%) 268K5MECHLINK64= $(K5LIBLINK:%=$(ROOT)/usr/lib/$(MACH64)/%) 269 270ROOTLIBS= $(LIBS:%=$(ROOTLIBDIR)/%) $(K5MECHLINK) 271ROOTLIBS64= $(LIBS:%=$(ROOTLIBDIR64)/%) $(K5MECHLINK64) 272 273$(ROOTLIBDIR) $(ROOTLIBDIR64): 274 $(INS.dir) 275 276# create libmech_krb5 link locally 277$(K5LIBLINK): $(DYNLIB) 278 -$(RM) $@; $(SYMLINK) $(DYNLIB) $@ 279 280# create libmech_krb5 link in $ROOT/usr/lib/gss/ 281$(ROOTLIBDIR)/$(K5LIBLINK): $(ROOTLIBDIR)/$(LIBLINKS)$(VERS) 282 $(INS.liblink) 283 284# create libmech_krb5 link in $ROOT/usr/lib/$(MACH64)/gss 285$(ROOTLIBDIR64)/$(K5LIBLINK): $(ROOTLIBDIR64)/$(LIBLINKS)$(VERS) 286 $(INS.liblink) 287 288# create libmech_krb5 link in ROOT/usr/lib 289$(K5MECHLINK): $(ROOTLIBDIR)/$(LIBLINKS)$(VERS) 290 $(INS.liblink2) 291 292# create libmech_krb5 link in ROOT/usr/lib/$(MACH64) 293$(K5MECHLINK64): $(ROOTLIBDIR64)/$(LIBLINKS)$(VERS) 294 $(INS.liblink2) 295 296LDLIBS += -lgss -lsocket -lresolv -lc -lpkcs11 -lnsl 297# -z ignore causes linker to ignore unneeded dependencies. This is 298# needed because -lnsl is only used if DEBUG is defined. 299DYNFLAGS += $(ZIGNORE) 300 301# mech lib needs special initialization at load time 302DYNFLAGS += -zinitarray=krb5_ld_init 303 304objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/mech/%.c 305 $(COMPILE.c) -o $@ $< 306 $(POST_PROCESS_O) 307 308objs/%.o pics/%.o: $(SRC)/lib/gss_mechs/mech_krb5/mech/%.c 309 $(COMPILE.c) -o $@ $< 310 $(POST_PROCESS_O) 311 312objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/%.c 313 $(COMPILE.c) -o $@ $< 314 $(POST_PROCESS_O) 315 316objs/%.o pics/%.o: $(REL_PATH)/crypto/%.c 317 $(COMPILE.c) -o $@ $< 318 $(POST_PROCESS_O) 319 320objs/%.o pics/%.o: $(REL_PATH)/crypto/md4/%.c 321 $(COMPILE.c) -o $@ $< 322 $(POST_PROCESS_O) 323 324objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/des/%.c 325 $(COMPILE.c) -o $@ $< 326 $(POST_PROCESS_O) 327 328objs/%.o pics/%.o: $(REL_PATH)/crypto/des/%.c 329 $(COMPILE.c) -o $@ $< 330 $(POST_PROCESS_O) 331 332objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/arcfour/%.c 333 $(COMPILE.c) -o $@ $< 334 $(POST_PROCESS_O) 335 336objs/%.o pics/%.o: $(REL_PATH)/crypto/arcfour/%.c 337 $(COMPILE.c) -o $@ $< 338 $(POST_PROCESS_O) 339 340objs/%.o pics/%.o: $(REL_PATH)/crypto/aes/%.c 341 $(COMPILE.c) -o $@ $< 342 $(POST_PROCESS_O) 343 344objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/dk/%.c 345 $(COMPILE.c) -o $@ $< 346 $(POST_PROCESS_O) 347 348objs/%.o pics/%.o: $(REL_PATH)/crypto/dk/%.c 349 $(COMPILE.c) -o $@ $< 350 $(POST_PROCESS_O) 351 352objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/raw/%.c 353 $(COMPILE.c) -o $@ $< 354 $(POST_PROCESS_O) 355 356objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/crc32/%.c 357 $(COMPILE.c) -o $@ $< 358 $(POST_PROCESS_O) 359 360objs/%.o pics/%.o: $(REL_PATH)/crypto/crc32/%.c 361 $(COMPILE.c) -o $@ $< 362 $(POST_PROCESS_O) 363 364objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/sha1/%.c 365 $(COMPILE.c) -o $@ $< 366 $(POST_PROCESS_O) 367 368objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/enc_provider/%.c 369 $(COMPILE.c) -o $@ $< 370 $(POST_PROCESS_O) 371 372objs/%.o pics/%.o: $(REL_PATH)/crypto/hash_provider/%.c 373 $(COMPILE.c) -o $@ $< 374 $(POST_PROCESS_O) 375 376objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/hash_provider/%.c 377 $(COMPILE.c) -o $@ $< 378 $(POST_PROCESS_O) 379 380objs/%.o pics/%.o: $(REL_PATH)/crypto/keyhash_provider/%.c 381 $(COMPILE.c) -o $@ $< 382 $(POST_PROCESS_O) 383 384objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/keyhash_provider/%.c 385 $(COMPILE.c) -o $@ $< 386 $(POST_PROCESS_O) 387 388objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/old/%.c 389 $(COMPILE.c) -o $@ $< 390 $(POST_PROCESS_O) 391 392objs/%.o pics/%.o: $(REL_PATH)/crypto/old/%.c 393 $(COMPILE.c) -o $@ $< 394 $(POST_PROCESS_O) 395 396objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/crypto/os/%.c 397 $(COMPILE.c) -o $@ $< 398 $(POST_PROCESS_O) 399 400objs/%.o pics/%.o: $(REL_PATH)/crypto/sha1/%.c 401 $(COMPILE.c) -o $@ $< 402 $(POST_PROCESS_O) 403 404objs/%.o pics/%.o: $(REL_PATH)/et/%.c 405 $(COMPILE.c) -o $@ $< 406 $(POST_PROCESS_O) 407 408objs/%.o pics/%.o: $(REL_PATH)/krb5/asn.1/%.c 409 $(COMPILE.c) -o $@ $< 410 $(POST_PROCESS_O) 411 412objs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/%.c 413 $(COMPILE.c) -o $@ $< 414 $(POST_PROCESS_O) 415 416objs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/file/%.c 417 $(COMPILE.c) -o $@ $< 418 $(POST_PROCESS_O) 419 420objs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/stdio/%.c 421 $(COMPILE.c) -o $@ $< 422 $(POST_PROCESS_O) 423 424objs/%.o pics/%.o: $(REL_PATH)/krb5/ccache/memory/%.c 425 $(COMPILE.c) -o $@ $< 426 $(POST_PROCESS_O) 427 428objs/%.o pics/%.o: $(REL_PATH)/krb5/keytab/%.c 429 $(COMPILE.c) -o $@ $< 430 $(POST_PROCESS_O) 431 432objs/%.o pics/%.o: $(REL_PATH)/krb5/keytab/file/%.c 433 $(COMPILE.c) -o $@ $< 434 $(POST_PROCESS_O) 435 436objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/krb5/krb/%.c 437 $(COMPILE.c) -o $@ $< 438 $(POST_PROCESS_O) 439 440objs/%.o pics/%.o: $(REL_PATH)/krb5/krb/%.c 441 $(COMPILE.c) -o $@ $< 442 $(POST_PROCESS_O) 443 444objs/%.o pics/%.o: $(SRC)/uts/common/gssapi/mechs/krb5/krb5/os/%.c 445 $(COMPILE.c) -o $@ $< 446 $(POST_PROCESS_O) 447 448objs/%.o pics/%.o: $(REL_PATH)/krb5/os/%.c 449 $(COMPILE.c) -o $@ $< 450 $(POST_PROCESS_O) 451 452objs/%.o pics/%.o: $(REL_PATH)/krb5/posix/%.c 453 $(COMPILE.c) -o $@ $< 454 $(POST_PROCESS_O) 455 456objs/%.o pics/%.o: $(REL_PATH)/krb5/rcache/%.c 457 $(COMPILE.c) -o $@ $< 458 $(POST_PROCESS_O) 459 460objs/%.o pics/%.o: $(REL_PATH)/profile/%.c 461 $(COMPILE.c) -o $@ $< 462 $(POST_PROCESS_O) 463 464objs/%.o pics/%.o: $(REL_PATH)/support/%.c 465 $(COMPILE.c) -o $@ $< 466 $(POST_PROCESS_O) 467 468# include library targets 469include $(REL_PATH)/../../Makefile.targ 470# We need to include all CPPFLAGS for the files since we are using 471# the macro to expand and they are not aware of flags yet .. ugh.. 472 473OS_FLAGS = -DHAVE_LIBSOCKET -DHAVE_LIBNSL -DTIME_WITH_SYS_TIME \ 474 -DHAVE_UNISTD_H -DHAVE_SYS_TIME_H -DHAVE_REGEX_H \ 475 -DHAVE_REGEXP_H -DHAVE_RE_COMP -DHAVE_REGCOMP \ 476 -DPOSIX_TYPES -DNDBM -DAN_TO_LN_RULES \ 477 -DHAVE_STDLIB_H -DHAVE_STDARG_H -DHAVE_SYS_TYPES_H \ 478 -DHAVE_NETINET_IN_H -DUSE_LOGIN_LIBRARY -DHAVE_SRAND48 \ 479 -DHAVE_SRAND -DHAVE_SRANDOM -DHAVE_GETPID \ 480 -DHAVE_ERRNO -DHAVE_STRFTIME -DHAVE_STRPTIME -DHAVE_STRERROR \ 481 -DHAVE_STAT -DSIZEOF_INT=4 -DPROVIDE_KERNEL_IMPORT \ 482 -DHAVE_STDINT_H -DPOSIX_SIGNALS -DHAVE_GETENV -DHAVE_SETENV \ 483 -DHAVE_UNSETENV -DHAVE_FCHMOD -DHAVE_STRUCT_LIFCONF 484 485CPPFLAGS += -I$(REL_PATH)krb5/ccache/file $(OS_FLAGS) 486 487SOURCES= \ 488 $(CRYPTO_OS_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/os/%.c)\ 489 $(K5_OS_UTS:%.o=$(SRC)/uts/common/gssapi/mechs/krb5/krb5/os/%.c) \ 490 $(K5_OS:%.o=$(SRC)/lib/gss_mechs/mech_krb5/krb5/os/%.c) \ 491 $(CRYPTO:%.o=$(SRC)/lib/gss_mechs/mech_krb5/crypto/%.c) \ 492 $(CRYPTO_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/%.c)\ 493 $(CRYPTO_RAW:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/raw/%.c)\ 494 $(CRYPTO_DES:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/des/%.c)\ 495 $(CRYPTO_DES_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/des/%.c)\ 496 $(CRYPTO_ARCFOUR:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/arcfour/%.c)\ 497 $(CRYPTO_ARCFOUR_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/arcfour/%.c)\ 498 $(CRYPTO_AES:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/aes/%.c)\ 499 $(CRYPTO_DK:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/dk/%.c)\ 500 $(CRYPTO_DK_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/dk/%.c)\ 501 $(CRYPTO_CRC32:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/crc32/%.c)\ 502 $(CRYPTO_MD4:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/md4/%.c)\ 503 $(CRYPTO_CRC32_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/crc32/%.c)\ 504 $(CRYPTO_ENC:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/enc_provider/%.c)\ 505 $(CRYPTO_HASH:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/hash_provider/%.c)\ 506 $(CRYPTO_HASH_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/hash_provider/%.c)\ 507 $(CRYPTO_KEYHASH:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/keyhash_provider/%.c)\ 508 $(CRYPTO_KEYHASH_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/keyhash_provider/%.c)\ 509 $(CRYPTO_OLD:%.o= $(SRC)/lib/gss_mechs/mech_krb5/crypto/old/%.c)\ 510 $(CRYPTO_OLD_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/crypto/old/%.c)\ 511 $(ET:%.o= $(SRC)/lib/gss_mechs/mech_krb5/et/%.c) \ 512 $(K5_ASN1:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/asn.1/%.c) \ 513 $(K5_CC:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/ccache/%.c) \ 514 $(K5_KT:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/keytab/%.c) \ 515 $(K5_KRB:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/krb/%.c)\ 516 $(K5_KRB_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/krb5/krb/%.c)\ 517 $(K5_OS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/os/%.c)\ 518 $(K5_OS_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/krb5/os/%.c)\ 519 $(K5_POSIX:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/posix/%.c)\ 520 $(K5_RCACHE:%.o= $(SRC)/lib/gss_mechs/mech_krb5/krb5/rcache/%.c) \ 521 $(MECH:%.o= $(SRC)/lib/gss_mechs/mech_krb5/mech/%.c) \ 522 $(MECH_UTS:%.o= $(SRC)/uts/common/gssapi/mechs/krb5/mech/%.c) \ 523 $(PROFILE_OBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/profile/%.c) \ 524 $(SUPPORT_OBJS:%.o= $(SRC)/lib/gss_mechs/mech_krb5/support/%.c) 525 526# So lint.out won't be needlessly recreated 527lint: $(LINTOUT) 528 529$(LINTOUT): $(SOURCES) 530 $(LINT.c) -o $(LIBNAME) $(SOURCES) > $(LINTOUT) 2>&1 531 532