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# 23# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26# Copyright (c) 2018, Joyent, Inc. 27 28TESTPROG = kwarndtest 29 30PROG= ktkt_warnd 31MANIFEST= ktkt_warn.xml 32 33KWARNDOBJS = kwarnd.o kwarnd_svc.o kwarnd_proc.o kwarnd_generic.o kwarnd_send.o 34KWARNTOBJS = kwarndtest.o 35 36G_OBJS = kwarnd_xdr.o 37 38OBJS = $(KWARNDOBJS) $(KWARNTOBJS) $(G_OBJS) 39SRCS = $(OBJS:.o=.c) 40RSRC = kwarnd_xdr.c kwarnd_svc.c kwarnd.h 41 42CLOBBERFILES += $(TESTPROG) 43 44include ../../Makefile.cmd 45include $(SRC)/lib/gss_mechs/mech_krb5/Makefile.mech_krb5 46 47ROOTMANIFESTDIR= $(ROOTSVCNETWORKSECURITY) 48 49POFILE = $(PROG).po 50POFILES = generic.po 51 52COPTFLAG += $(XESS) #-I$(KINCDIR) 53CPPFLAGS += -D_REENTRANT 54 55CERRWARN += -_gcc=-Wno-unused-variable 56CERRWARN += -_gcc=-Wno-unused-function 57CERRWARN += -_gcc=-Wno-implicit-function-declaration 58CERRWARN += -_gcc=-Wno-parentheses 59 60# not linted 61SMATCH=off 62 63CPPFLAGS += -I../../lib/gss_mechs/mech_krb5/include \ 64 -I$(SRC)/lib/gss_mechs/mech_krb5 \ 65 -I$(SRC)/lib/gss_mechs/mech_krb5/include \ 66 -I$(SRC)/uts/common/gssapi/mechs/krb5/include 67 68ktkt_warnd := MAPFILES = $(MAPFILE.INT) $(MAPFILE.NGB) 69ktkt_warnd := LDFLAGS += $(KRUNPATH) $(MAPFILES:%=-M%) 70 71LDFLAGS += $(KRUNPATH) 72LDLIBS += $(KMECHLIB) -lnsl 73 74.KEEP_STATE: 75 76all: $(PROG) $(TESTPROG) 77 78$(PROG): $(G_OBJS) $(KWARNDOBJS) $$(MAPFILES) 79 $(LINK.c) $(KWARNDOBJS) $(G_OBJS) -o $@ $(LDLIBS) 80 $(POST_PROCESS) 81 82# the client entry points (kwarn_*_warning) are now avail in mech_krb5.so 83$(TESTPROG): $(KWARNTOBJS) 84 $(LINK.c) $(KWARNTOBJS) -o $@ $(LDLIBS) 85 $(POST_PROCESS) 86 87# Rules to generate derived rpcgen files from kwarnd.x spec file. 88 89kwarnd.h: kwarnd.x 90 $(RM) $@ 91 $(RPCGEN) -M -h kwarnd.x > $@ 92 93kwarnd_svc.c: kwarnd.x 94 $(RM) $@ 95 $(RPCGEN) -M -m kwarnd.x > $@ 96 97kwarnd_xdr.c: kwarnd.x 98 $(RM) $@ 99 $(RPCGEN) -M -c kwarnd.x > $@ 100 101$(OBJS): kwarnd.h 102 103# note that nightly depends on having all of the derived 104# .c files built here on 'make install', even though this 105# module doesn't use all of those files. 106install: $(KRB5LIBPROG) $(RSRC) $(ROOTMANIFEST) 107 108check: $(CHKMANIFEST) 109 110clean: 111 $(RM) $(OBJS) $(RSRC) 112 113lint: lint_SRCS 114 115include ../../Makefile.targ 116 117#additional dependencies 118 119$(LIBRARY) : $(OBJS) 120$(DYNLIB) : $(PICS) 121 122FRC: 123 124$(POFILE): $(DERIVED_FILES) .WAIT $(POFILES) 125 $(RM) $@ 126 $(CAT) $(POFILES) > $@ 127 128generic.po: FRC 129 $(RM) messages.po 130 $(XGETTEXT) $(XGETFLAGS) `$(GREP) -l gettext *.[ch]` 131 $(SED) "/^domain/d" messages.po > $@ 132 $(RM) messages.po 133