17c478bd9Sstevel@tonic-gate#
2bd211b85Ssemery# CDDL HEADER START
3bd211b85Ssemery#
4bd211b85Ssemery# The contents of this file are subject to the terms of the
5bd211b85Ssemery# Common Development and Distribution License (the "License").
6bd211b85Ssemery# You may not use this file except in compliance with the License.
7bd211b85Ssemery#
8bd211b85Ssemery# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9bd211b85Ssemery# or http://www.opensolaris.org/os/licensing.
10bd211b85Ssemery# See the License for the specific language governing permissions
11bd211b85Ssemery# and limitations under the License.
12bd211b85Ssemery#
13bd211b85Ssemery# When distributing Covered Code, include this CDDL HEADER in each
14bd211b85Ssemery# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15bd211b85Ssemery# If applicable, add the following below this CDDL HEADER, with the
16bd211b85Ssemery# fields enclosed by brackets "[]" replaced with your own identifying
17bd211b85Ssemery# information: Portions Copyright [yyyy] [name of copyright owner]
18bd211b85Ssemery#
19bd211b85Ssemery# CDDL HEADER END
20bd211b85Ssemery#
21c48f4690SShawn Emery# Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
227c478bd9Sstevel@tonic-gate#
237c478bd9Sstevel@tonic-gate# Makefile for Kerberos client-install utility.
247c478bd9Sstevel@tonic-gate#
25*5661bb76SJohn Levon# Copyright (c) 2018, Joyent, Inc.
267c478bd9Sstevel@tonic-gate
27bd211b85SsemeryPROG=		ksetpw \
28bd211b85Ssemery		kdyndns \
29c48f4690SShawn Emery		ksmb \
30c48f4690SShawn Emery		kconf
31bd211b85Ssemery
32bd211b85SsemerySHFILES=	kclient
33bd211b85SsemerySECFILES=	pam_krb5_first \
34bd211b85Ssemery		pam_krb5_only \
35bd211b85Ssemery		pam_krb5_optional
36b6805bf7SGordon RossCLOBBERFILES +=	$(SHFILES)
37bd211b85Ssemery
38bd211b85SsemeryKRB5SBINSHFILES=$(SHFILES:%=$(KRB5SBIN)/%)
39bd211b85Ssemery
40bd211b85SsemeryUSRLIBSEC=	$(ROOT)/usr/lib/security
41bd211b85SsemerySEC=		$(SECFILES:%=$(USRLIBSEC)/%)
42bd211b85Ssemery$(SEC):=	FILEMODE = $(LIBFILEMODE)
43bd211b85Ssemery
44bd211b85SsemeryKS_OBJS=	ksetpw.o
45bd211b85SsemeryKD_OBJS=	kdyndns.o
46bd211b85SsemeryKSMB_OBJS=	ksmb.o
47c48f4690SShawn EmeryKC_OBJS=	kconf.o
48bd211b85Ssemery
49c48f4690SShawn EmeryOBJS=		$(KS_OBJS) $(KD_OBJS) $(KSMB_OBJS) $(KC_OBJS)
50bd211b85Ssemery
51bd211b85SsemerySSRCS=	kclient.sh
52bd211b85SsemerySRCS=	$(OBJS:%.o=%.c)
537c478bd9Sstevel@tonic-gate
547c478bd9Sstevel@tonic-gateinclude ../../../Makefile.cmd
55bd211b85Ssemeryinclude $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5
56bd211b85Ssemery
57bd211b85SsemeryPOFILE=	$(SSRCS:%.sh=%.po)
587c478bd9Sstevel@tonic-gate
59bd211b85SsemeryCPPFLAGS += -I$(SRC)/uts/common/gssapi/include \
60bd211b85Ssemery	-I$(SRC)/lib/krb5 -I$(SRC)/lib/gss_mechs/mech_krb5/include \
61bd211b85Ssemery	-I$(SRC)/uts/common/gssapi/include  \
62bd211b85Ssemery	-I$(SRC)/uts/common/gssapi/mechs/krb5/include
637c478bd9Sstevel@tonic-gate
647014882cSRichard LoweCERRWARN += -_gcc=-Wno-parentheses
657014882cSRichard LoweCERRWARN += -_gcc=-Wno-unused-function
667014882cSRichard Lowe
67*5661bb76SJohn Levon# not linted
68*5661bb76SJohn LevonSMATCH=off
69*5661bb76SJohn Levon
7036cb57a5Srieksetpw:=	LDFLAGS += $(KRUNPATH)
7136cb57a5Sriekdyndns:=	LDFLAGS += -R/usr/lib/smbsrv
7236cb57a5Srieksmb:=		LDFLAGS += -R/usr/lib/smbsrv
73c48f4690SShawn Emerykconf:=		LDFLAGS += $(KRUNPATH)
747c478bd9Sstevel@tonic-gate
7536cb57a5SrieKS_LDLIBS =	$(LDLIBS) $(KMECHLIB)
7636cb57a5SrieKD_LDLIBS =	$(LDLIBS) -L$(ROOT)/usr/lib/smbsrv -lsmbns
7736cb57a5SrieKSMB_LDLIBS =	$(LDLIBS) -L$(ROOT)/usr/lib/smbsrv -lsmb
78c48f4690SShawn EmeryKC_LDLIBS =	$(LDLIBS) $(KMECHLIB)
797c478bd9Sstevel@tonic-gate
807c478bd9Sstevel@tonic-gate.KEEP_STATE:
817c478bd9Sstevel@tonic-gate
82bd211b85Ssemeryall: $(PROG) $(SHFILES) $(SEC)
83bd211b85Ssemery
84bd211b85Ssemeryinstall: all $(KRB5SBIN) $(KRB5SBINSHFILES) $(KRB5LIBSHFILES) $(KRB5LIBPROG)
857c478bd9Sstevel@tonic-gate
86bd211b85Ssemerykdyndns:	$(KD_OBJS)
8736cb57a5Srie	$(LINK.c) $(KD_OBJS) -o $@ $(KD_LDLIBS)
88bd211b85Ssemery	$(POST_PROCESS)
89bd211b85Ssemery
90bd211b85Ssemeryksmb:		$(KSMB_OBJS)
9136cb57a5Srie	$(LINK.c) $(KSMB_OBJS) -o $@ $(KSMB_LDLIBS)
92bd211b85Ssemery	$(POST_PROCESS)
93bd211b85Ssemery
94bd211b85Ssemeryksetpw:		$(KS_OBJS)
9536cb57a5Srie	$(LINK.c) $(KS_OBJS) -o $@ $(KS_LDLIBS)
96bd211b85Ssemery	$(POST_PROCESS)
977c478bd9Sstevel@tonic-gate
98c48f4690SShawn Emerykconf:		$(KC_OBJS)
99c48f4690SShawn Emery	$(LINK.c) $(KC_OBJS) -o $@ $(KC_LDLIBS)
100c48f4690SShawn Emery	$(POST_PROCESS)
101c48f4690SShawn Emery
1027c478bd9Sstevel@tonic-gate$(KRB5SBIN):
1037c478bd9Sstevel@tonic-gate	$(INS.dir)
1047c478bd9Sstevel@tonic-gate
105bd211b85Ssemery$(USRLIBSEC)/%: %
1067c478bd9Sstevel@tonic-gate	$(INS.file)
1077c478bd9Sstevel@tonic-gate
1087c478bd9Sstevel@tonic-gateclean:
109b6805bf7SGordon Ross	$(RM) $(OBJS)
110bd211b85Ssemery
1117c478bd9Sstevel@tonic-gateinclude ../../../Makefile.targ
112