xref: /illumos-gate/usr/src/cmd/krb5/kadmin/kclient/Makefile (revision f52943a93040563107b95bccb9db87d9971ef47d)
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) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
22#
23# Makefile for Kerberos client-install utility.
24#
25# Copyright (c) 2018, Joyent, Inc.
26
27PROG=		ksetpw \
28		kdyndns \
29		ksmb \
30		kconf
31
32SHFILES=	kclient
33SECFILES=	pam_krb5_first \
34		pam_krb5_only \
35		pam_krb5_optional
36CLOBBERFILES +=	$(SHFILES)
37
38KRB5SBINSHFILES=$(SHFILES:%=$(KRB5SBIN)/%)
39
40USRLIBSEC=	$(ROOT)/usr/lib/security
41SEC=		$(SECFILES:%=$(USRLIBSEC)/%)
42$(SEC):=	FILEMODE = $(LIBFILEMODE)
43
44KS_OBJS=	ksetpw.o
45KD_OBJS=	kdyndns.o
46KSMB_OBJS=	ksmb.o
47KC_OBJS=	kconf.o
48
49OBJS=		$(KS_OBJS) $(KD_OBJS) $(KSMB_OBJS) $(KC_OBJS)
50
51SSRCS=	kclient.sh
52SRCS=	$(OBJS:%.o=%.c)
53
54include ../../../Makefile.cmd
55include $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5
56
57POFILE=	$(SSRCS:%.sh=%.po)
58
59CPPFLAGS += -I$(SRC)/uts/common/gssapi/include \
60	-I$(SRC)/lib/krb5 -I$(SRC)/lib/gss_mechs/mech_krb5/include \
61	-I$(SRC)/uts/common/gssapi/include  \
62	-I$(SRC)/uts/common/gssapi/mechs/krb5/include
63
64CERRWARN += $(CNOWARN_UNINIT)
65CERRWARN += -_gcc=-Wno-parentheses
66CERRWARN += -_gcc=-Wno-unused-function
67
68# not linted
69SMATCH=off
70
71ksetpw:=	LDFLAGS += $(KRUNPATH)
72kdyndns:=	LDFLAGS += -R/usr/lib/smbsrv
73ksmb:=		LDFLAGS += -R/usr/lib/smbsrv
74kconf:=		LDFLAGS += $(KRUNPATH)
75
76KS_LDLIBS =	$(LDLIBS) $(KMECHLIB)
77KD_LDLIBS =	$(LDLIBS) -L$(ROOT)/usr/lib/smbsrv -lsmbns
78KSMB_LDLIBS =	$(LDLIBS) -L$(ROOT)/usr/lib/smbsrv -lsmb
79KC_LDLIBS =	$(LDLIBS) $(KMECHLIB)
80
81.KEEP_STATE:
82
83all: $(PROG) $(SHFILES) $(SEC)
84
85install: all $(KRB5SBIN) $(KRB5SBINSHFILES) $(KRB5LIBSHFILES) $(KRB5LIBPROG)
86
87kdyndns:	$(KD_OBJS)
88	$(LINK.c) $(KD_OBJS) -o $@ $(KD_LDLIBS)
89	$(POST_PROCESS)
90
91ksmb:		$(KSMB_OBJS)
92	$(LINK.c) $(KSMB_OBJS) -o $@ $(KSMB_LDLIBS)
93	$(POST_PROCESS)
94
95ksetpw:		$(KS_OBJS)
96	$(LINK.c) $(KS_OBJS) -o $@ $(KS_LDLIBS)
97	$(POST_PROCESS)
98
99kconf:		$(KC_OBJS)
100	$(LINK.c) $(KC_OBJS) -o $@ $(KC_LDLIBS)
101	$(POST_PROCESS)
102
103$(KRB5SBIN):
104	$(INS.dir)
105
106$(USRLIBSEC)/%: %
107	$(INS.file)
108
109clean:
110	$(RM) $(OBJS)
111
112lint:	lint_SRCS
113
114include ../../../Makefile.targ
115