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