xref: /illumos-gate/usr/src/cmd/ypcmd/yppasswd/Makefile (revision 28ab0ca48b3e331cbbb231b1c8325f9f24f9af95)
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) 1994, 2010, Oracle and/or its affiliates. All rights reserved.
23#
24# Copyright 2020 Joyent, Inc.
25
26NETYPPROG =	rpc.yppasswdd
27DEFAULTFILES =	yppasswdd.dfl
28PROG =		$(NETYPPROG)
29
30MANIFEST = passwd.xml
31
32include ../../Makefile.cmd
33
34ROOTMANIFESTDIR = $(ROOTSVCNETWORKNIS)
35
36#installed directories
37RPCSVC=		$(ROOT)/usr/include/rpcsvc
38NETSVC =	$(ROOTLIB)/netsvc
39NETYP =		$(NETSVC)/yp
40ROOTDIRS =	$(NETSVC) $(NETYP)
41
42# include library definitions
43#LDLIBS +=	-lrpcsvc -lnsl -lcrypt -lintl -lgen
44LDLIBS +=	-lnsl -lnisdb -lc
45MAPFILES =	$(MAPFILE.INT) $(MAPFILE.NGB)
46LDFLAGS +=	$(MAPFILES:%=-Wl,-M%)
47
48ZGUIDANCE =	-Wl,-zguidance=nounused
49
50# Pick up includes from library
51CPPFLAGS += -I$(SRC)/lib/libnisdb/yptol
52
53# This file is now in the $(SRC)/head/rpcsvc directory.
54#HDRFILE= yppasswd.h
55#IHDRFILE= $(HDRFILE:%=$(RPCSVC)/%)
56
57INETYPPROG=		$(NETYPPROG:%=$(NETYP)/%)
58
59COMMONOBJ =		yppasswdxdr.o yplckpwdf.o
60RPCYPPASSWDDOBJ =	yppasswdd.o changepasswd.o
61
62CERRWARN +=		-_gcc=-Wno-implicit-function-declaration
63CERRWARN +=		-_gcc=-Wno-parentheses
64CERRWARN +=		$(CNOWARN_UNINIT)
65
66# not linted
67SMATCH=off
68
69#
70# Objects shared between all the major components
71#
72SHAREDOBJ= ../shared/utils.o ../shared/lockmap.o ../shared/ancil.o
73
74OBJS =			$(RPCYPPASSWDDOBJ) \
75			$(COMMONOBJ)
76			# $(YPPWCONVOBJ) $(YPPASSMGMTOBJ)
77
78SRCS =			$(OBJS:%.o=%.c)
79
80#conditional assignments
81$(INETSVC)   := FILEMODE=555
82
83$(ETCDFLTFILE) := FILEMODE=0444
84
85#install rules
86
87.KEEP_STATE:
88
89all: $(PROG)
90
91rpc.yppasswdd: $(RPCYPPASSWDDOBJ) $(COMMONOBJ) $(MAPFILES)
92	$(LINK.cc) -o $@ $(RPCYPPASSWDDOBJ) \
93	$(SHAREDOBJ) $(COMMONOBJ) $(LDLIBS)
94	$(POST_PROCESS)
95
96install: all $(ROOTDIRS) $(IBINPROG) $(INETYPPROG) $(ROOTETCDEFAULTFILES) \
97	$(ROOTMANIFEST)
98
99$(ROOTDIRS):
100	$(INS.dir)
101
102$(NETYP)/%: %
103	$(INS.file)
104
105clean:
106	$(RM) $(OBJS)
107
108check: $(CHKMANIFEST)
109
110cstyle:
111	${CSTYLE} ${SRCS}
112
113# include library targets
114include ../../Makefile.targ
115