xref: /illumos-gate/usr/src/cmd/fs.d/nfs/mount/Makefile (revision 14b24e2b79293068c8e016a69ef1d872fb5e2fd5)
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) 1990, 2010, Oracle and/or its affiliates. All rights reserved.
22# Copyright 2017, Joyent, Inc. All rights reserved.
23#
24# cmd/fs.d/nfs/mount/Makefile
25
26FSTYPE=		nfs
27LIBPROG=	mount
28ROOTFS_PROG=	$(LIBPROG)
29
30# duplicate ROOTLIBFSTYPE value needed for installation rule
31# we must define this before including Makefile.fstype
32ROOTLIBFSTYPE = $(ROOT)/usr/lib/fs/$(FSTYPE)
33$(ROOTLIBFSTYPE)/%:	$(ROOTLIBFSTYPE) %
34	$(RM) $@; $(SYMLINK) ../../../../etc/fs/$(FSTYPE)/$(LIBPROG) $@
35
36include		../../Makefile.fstype
37
38COMMON= $(FSLIB) nfs_sec.o replica.o nfs_subr.o selfcheck.o smfcfg.o
39OBJS=	$(LIBPROG).o $(COMMON) webnfs_client.o webnfs_xdr.o
40SRCS=	$(LIBPROG).c $(FSLIBSRC) ../lib/nfs_sec.c ../lib/replica.c \
41	../lib/nfs_subr.c webnfs_xdr.c webnfs_client.c ../lib/selfcheck.c \
42	../lib/smfcfg.c
43
44UNCHECKED_HDRS=	webnfs.h
45
46CERRWARN += -_gcc=-Wno-parentheses
47CERRWARN += -_gcc=-Wno-switch
48CERRWARN += -_gcc=-Wno-unused-variable
49CERRWARN += -_gcc=-Wno-uninitialized
50CERRWARN += -_gcc=-Wno-address
51CERRWARN += -_gcc=-Wno-unused-function
52
53#
54# Message catalog
55#
56POFILE= mount.po
57
58LDLIBS += -lrpcsvc -lnsl -lsocket -lscf
59CPPFLAGS += -I. -I../.. -I../lib
60CFLAGS += $(CCVERBOSE)
61
62nfs_sec.o :=	CPPFLAGS += -DWNFS_SEC_NEGO
63
64ROOTETCPROG	= $(LIBPROG:%=$(ROOTETCFSTYPE)/%)
65CLOBBERFILES	+= $(LIBPROG)
66
67.KEEP_STATE:
68
69all:	$(ROOTFS_PROG)
70
71$(LIBPROG):	webnfs.h $(OBJS)
72		$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
73		$(POST_PROCESS)
74
75nfs_sec.o:	../lib/nfs_sec.c
76		$(COMPILE.c) ../lib/nfs_sec.c
77
78replica.o:	../lib/replica.c
79		$(COMPILE.c) ../lib/replica.c
80
81nfs_subr.o:	../lib/nfs_subr.c
82		$(COMPILE.c) ../lib/nfs_subr.c
83
84selfcheck.o:	../lib/selfcheck.c
85		$(COMPILE.c) ../lib/selfcheck.c
86
87nfs_tbind.o:	../lib/nfs_tbind.c
88		$(COMPILE.c) ../lib/nfs_tbind.c
89
90smfcfg.o:	../lib/smfcfg.c
91		$(COMPILE.c) ../lib/smfcfg.c
92
93webnfs_xdr.c:	webnfs.x
94	$(RPCGEN) -M -C -c -o $@ webnfs.x
95
96webnfs_client.c:	webnfs.x
97	$(RPCGEN) -M -C -l -o $@ webnfs.x
98
99webnfs.h:	webnfs.x
100	$(RPCGEN) -M -C -h -o $@ webnfs.x
101
102webnfs.x:	../lib/webnfs.x
103		$(RM) webnfs.x
104		cp ../lib/webnfs.x .
105
106#
107# message catalog
108#
109catalog: $(POFILE)
110
111$(POFILE): $(SRCS) webnfs.h
112	$(RM) $@
113	$(COMPILE.cpp) $(SRCS)   > $(POFILE).i
114	$(XGETTEXT)     $(XGETFLAGS) $(POFILE).i
115	sed "/^domain/d"        messages.po     > $@
116	$(RM) $(POFILE).i messages.po
117
118install:	$(ROOTETCPROG)
119
120lint:	webnfs.h webnfs_xdr.c webnfs_client.c lint_SRCS
121
122clean:
123	$(RM) $(OBJS) webnfs.x webnfs.h webnfs_xdr.c webnfs_client.c
124