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 (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved. 23# 24# Copyright (c) 2018, Joyent, Inc. 25 26LIBRARY = libgss.a 27VERS = .1 28 29GSSOBJECTS = g_acquire_cred.o \ 30 g_acquire_cred_with_pw.o \ 31 g_store_cred.o \ 32 g_rel_cred.o \ 33 g_init_sec_context.o \ 34 g_accept_sec_context.o \ 35 g_process_context.o \ 36 g_delete_sec_context.o \ 37 g_imp_sec_context.o \ 38 g_exp_sec_context.o \ 39 g_context_time.o \ 40 g_sign.o \ 41 g_verify.o \ 42 g_seal.o \ 43 g_unseal.o \ 44 g_dsp_status.o \ 45 g_compare_name.o \ 46 g_dsp_name.o \ 47 g_imp_name.o \ 48 g_rel_name.o \ 49 g_rel_buffer.o \ 50 g_rel_oid_set.o \ 51 g_oid_ops.o \ 52 g_inquire_cred.o \ 53 g_inquire_context.o \ 54 g_inquire_names.o \ 55 g_initialize.o \ 56 g_glue.o \ 57 gssd_pname_to_uid.o \ 58 oid_ops.o \ 59 g_canon_name.o \ 60 g_dup_name.o \ 61 g_export_name.o \ 62 g_utils.o \ 63 g_userok.o \ 64 g_buffer_set.o \ 65 g_inq_context_oid.o \ 66 67 68# defines the duplicate sources we share with gsscred 69GSSCRED_DIR = $(SRC)/cmd/gss/gsscred 70GSSCREDOBJ = gsscred_utils.o gsscred_file.o 71# defines the duplicate sources we share with krb5 mech 72KRB5DIR= $(SRC)/lib/gss_mechs/mech_krb5/mech 73KRB5OBJ= rel_buffer.o util_buffer_set.o disp_com_err_status.o \ 74 util_buffer.o util_errmap.o 75# defines the duplicate sources we share with krb5 mech error table 76KRB5ETDIR= $(SRC)/lib/gss_mechs/mech_krb5/et 77KRB5ETOBJ= error_message.o adb_err.o adm_err.o asn1_err.o \ 78 chpass_util_strings.o \ 79 gssapi_err_krb5.o gssapi_err_generic.o \ 80 import_err.o \ 81 kadm_err.o kdb5_err.o kdc5_err.o kpasswd_strings.o krb5_err.o \ 82 kv5m_err.o prof_err.o pty_err.o ss_err.o 83# defines the duplicate sources we share with kernel module 84UTSGSSDIR = $(SRC)/uts/common/gssapi 85UTSGSSOBJ = gen_oids.o 86 87SRCS += $(GSSCREDOBJ:%.o=$(GSSCRED_DIR)/%.c) \ 88 $(KRB5OBJ:%.o=$(KRB5DIR)/%.c) \ 89 $(KRB5ETOBJ:%.o=$(KRB5ETDIR)/%.c) \ 90 $(UTSGSSOBJ:%.o=$(UTSGSSDIR)/%.c) 91OBJECTS = $(GSSOBJECTS) $(GSSCREDOBJ) $(KRB5OBJ) $(UTSGSSOBJ) $(KRB5ETOBJ) 92 93# include library definitions 94include ../../Makefile.lib 95 96LIBS = $(DYNLIB) 97 98LDLIBS += -lc 99 100CPPFLAGS += -I$(GSSCRED_DIR) -I$(SRC)/uts/common/gssapi/include \ 101 -I$(SRC)/uts/common/gssapi/mechs/krb5/include \ 102 -I$(SRC)/uts/common/gssapi/ \ 103 -I$(SRC)/lib/gss_mechs/mech_krb5/include/ \ 104 -DHAVE_STDLIB_H 105 106CERRWARN += -_gcc=-Wno-unused-function 107CERRWARN += $(CNOWARN_UNINIT) 108CERRWARN += -_gcc=-Wno-parentheses 109CERRWARN += -_gcc=-Wno-empty-body 110 111# not linted 112SMATCH=off 113 114.KEEP_STATE: 115 116all: $(LIBS) 117 118 119$(GSSCREDOBJ:%.o=pics/%.o): 120 $(COMPILE.c) -o $@ $(@:pics/%.o=$(GSSCRED_DIR)/%.c) 121 $(POST_PROCESS_O) 122 123# we need this in libgss so we don't have to link against mech_krb5 124pics/rel_buffer.o: $(KRB5DIR)/rel_buffer.c 125 $(COMPILE.c) -o $@ $(KRB5DIR)/rel_buffer.c 126 $(POST_PROCESS_O) 127 128# we need this in libgss so we don't have to link against mech_krb5 129pics/util_buffer_set.o: $(KRB5DIR)/util_buffer_set.c 130 $(COMPILE.c) -o $@ $(KRB5DIR)/util_buffer_set.c 131 $(POST_PROCESS_O) 132 133# we need this in libgss so we don't have to link against mech_krb5 134pics/disp_com_err_status.o: $(KRB5DIR)/disp_com_err_status.c 135 $(COMPILE.c) -o $@ $(KRB5DIR)/disp_com_err_status.c 136 $(POST_PROCESS_O) 137 138# we need this in libgss so we don't have to link against mech_krb5 139pics/util_buffer.o: $(KRB5DIR)/util_buffer.c 140 $(COMPILE.c) -o $@ $(KRB5DIR)/util_buffer.c 141 $(POST_PROCESS_O) 142 143# we need this in libgss so we don't have to link against mech_krb5 144pics/util_errmap.o: $(KRB5DIR)/util_errmap.c 145 $(COMPILE.c) -o $@ $(KRB5DIR)/util_errmap.c 146 $(POST_PROCESS_O) 147 148# we need this in libgss so we don't have to link against mech_krb5 149pics/error_message.o: $(KRB5ETDIR)/error_message.c 150 $(COMPILE.c) -o $@ $(KRB5ETDIR)/error_message.c 151 $(POST_PROCESS_O) 152 153# we need this in libgss so we don't have to link against mech_krb5 154pics/adb_err.o: $(KRB5ETDIR)/adb_err.c 155 $(COMPILE.c) -o $@ $(KRB5ETDIR)/adb_err.c 156 $(POST_PROCESS_O) 157 158pics/adm_err.o: $(KRB5ETDIR)/adm_err.c 159 $(COMPILE.c) -o $@ $(KRB5ETDIR)/adm_err.c 160 $(POST_PROCESS_O) 161 162# we need this in libgss so we don't have to link against mech_krb5 163pics/asn1_err.o: $(KRB5ETDIR)/asn1_err.c 164 $(COMPILE.c) -o $@ $(KRB5ETDIR)/asn1_err.c 165 $(POST_PROCESS_O) 166 167# we need this in libgss so we don't have to link against mech_krb5 168pics/chpass_util_strings.o: $(KRB5ETDIR)/chpass_util_strings.c 169 $(COMPILE.c) -o $@ $(KRB5ETDIR)/chpass_util_strings.c 170 $(POST_PROCESS_O) 171 172# we need this in libgss so we don't have to link against mech_krb5 173pics/gssapi_err_generic.o: $(KRB5ETDIR)/gssapi_err_generic.c 174 $(COMPILE.c) -o $@ $(KRB5ETDIR)/gssapi_err_generic.c 175 $(POST_PROCESS_O) 176 177# we need this in libgss so we don't have to link against mech_krb5 178pics/gssapi_err_krb5.o: $(KRB5ETDIR)/gssapi_err_krb5.c 179 $(COMPILE.c) -o $@ $(KRB5ETDIR)/gssapi_err_krb5.c 180 $(POST_PROCESS_O) 181 182 183# we need this in libgss so we don't have to link against mech_krb5 184pics/import_err.o: $(KRB5ETDIR)/import_err.c 185 $(COMPILE.c) -o $@ $(KRB5ETDIR)/import_err.c 186 $(POST_PROCESS_O) 187 188# we need this in libgss so we don't have to link against mech_krb5 189pics/kadm_err.o: $(KRB5ETDIR)/kadm_err.c 190 $(COMPILE.c) -o $@ $(KRB5ETDIR)/kadm_err.c 191 $(POST_PROCESS_O) 192 193# we need this in libgss so we don't have to link against mech_krb5 194pics/kdb5_err.o: $(KRB5ETDIR)/kdb5_err.c 195 $(COMPILE.c) -o $@ $(KRB5ETDIR)/kdb5_err.c 196 $(POST_PROCESS_O) 197 198# we need this in libgss so we don't have to link against mech_krb5 199pics/kdc5_err.o: $(KRB5ETDIR)/kdc5_err.c 200 $(COMPILE.c) -o $@ $(KRB5ETDIR)/kdc5_err.c 201 $(POST_PROCESS_O) 202 203# we need this in libgss so we don't have to link against mech_krb5 204pics/kpasswd_strings.o: $(KRB5ETDIR)/kpasswd_strings.c 205 $(COMPILE.c) -o $@ $(KRB5ETDIR)/kpasswd_strings.c 206 $(POST_PROCESS_O) 207 208# we need this in libgss so we don't have to link against mech_krb5 209pics/krb5_err.o: $(KRB5ETDIR)/krb5_err.c 210 $(COMPILE.c) -o $@ $(KRB5ETDIR)/krb5_err.c 211 $(POST_PROCESS_O) 212 213# we need this in libgss so we don't have to link against mech_krb5 214pics/kv5m_err.o: $(KRB5ETDIR)/kv5m_err.c 215 $(COMPILE.c) -o $@ $(KRB5ETDIR)/kv5m_err.c 216 $(POST_PROCESS_O) 217 218# we need this in libgss so we don't have to link against mech_krb5 219pics/prof_err.o: $(KRB5ETDIR)/prof_err.c 220 $(COMPILE.c) -o $@ $(KRB5ETDIR)/prof_err.c 221 $(POST_PROCESS_O) 222 223# we need this in libgss so we don't have to link against mech_krb5 224pics/pty_err.o: $(KRB5ETDIR)/pty_err.c 225 $(COMPILE.c) -o $@ $(KRB5ETDIR)/pty_err.c 226 $(POST_PROCESS_O) 227 228# we need this in libgss so we don't have to link against mech_krb5 229pics/ss_err.o: $(KRB5ETDIR)/ss_err.c 230 $(COMPILE.c) -o $@ $(KRB5ETDIR)/ss_err.c 231 $(POST_PROCESS_O) 232 233# gen_oids.c is kept in the kernel since the OIDs declared in them are 234# used by rpcsec module 235pics/gen_oids.o: $(SRC)/uts/common/gssapi/gen_oids.c 236 $(COMPILE.c) -o $@ $(SRC)/uts/common/gssapi/gen_oids.c 237 $(POST_PROCESS_O) 238 239# include library targets 240include ../../Makefile.targ 241