xref: /titanic_50/usr/src/cmd/zfs/Makefile (revision fa9e4066f08beec538e775443c5be79dd423fcab)
1*fa9e4066Sahrens#
2*fa9e4066Sahrens# CDDL HEADER START
3*fa9e4066Sahrens#
4*fa9e4066Sahrens# The contents of this file are subject to the terms of the
5*fa9e4066Sahrens# Common Development and Distribution License, Version 1.0 only
6*fa9e4066Sahrens# (the "License").  You may not use this file except in compliance
7*fa9e4066Sahrens# with the License.
8*fa9e4066Sahrens#
9*fa9e4066Sahrens# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10*fa9e4066Sahrens# or http://www.opensolaris.org/os/licensing.
11*fa9e4066Sahrens# See the License for the specific language governing permissions
12*fa9e4066Sahrens# and limitations under the License.
13*fa9e4066Sahrens#
14*fa9e4066Sahrens# When distributing Covered Code, include this CDDL HEADER in each
15*fa9e4066Sahrens# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16*fa9e4066Sahrens# If applicable, add the following below this CDDL HEADER, with the
17*fa9e4066Sahrens# fields enclosed by brackets "[]" replaced with your own identifying
18*fa9e4066Sahrens# information: Portions Copyright [yyyy] [name of copyright owner]
19*fa9e4066Sahrens#
20*fa9e4066Sahrens# CDDL HEADER END
21*fa9e4066Sahrens#
22*fa9e4066Sahrens#
23*fa9e4066Sahrens# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
24*fa9e4066Sahrens# Use is subject to license terms.
25*fa9e4066Sahrens#
26*fa9e4066Sahrens# ident	"%Z%%M%	%I%	%E% SMI"
27*fa9e4066Sahrens#
28*fa9e4066Sahrens
29*fa9e4066SahrensPROG=		zfs
30*fa9e4066SahrensOBJS=		zfs_main.o zfs_iter.o
31*fa9e4066SahrensSRCS=		$(OBJS:%.o=%.c)
32*fa9e4066SahrensPOFILES=	zfs_main.po zfs_iter.po
33*fa9e4066SahrensPOFILE=		zfs.po
34*fa9e4066Sahrens
35*fa9e4066Sahrensinclude ../Makefile.cmd
36*fa9e4066Sahrens
37*fa9e4066SahrensFSTYPE=         zfs
38*fa9e4066SahrensLINKPROGS=	mount umount
39*fa9e4066SahrensROOTETCFSTYPE=  $(ROOTETC)/fs/$(FSTYPE)
40*fa9e4066SahrensUSRLIBFSTYPE=	$(ROOTLIB)/fs/$(FSTYPE)
41*fa9e4066Sahrens
42*fa9e4066SahrensLDLIBS += -lzfs -luutil -lumem
43*fa9e4066Sahrens
44*fa9e4066SahrensC99MODE=	-xc99=%all
45*fa9e4066SahrensC99LMODE=	-Xc99=%all
46*fa9e4066Sahrens
47*fa9e4066SahrensCPPFLAGS += -D_LARGEFILE64_SOURCE=1 -D_REENTRANT
48*fa9e4066Sahrens
49*fa9e4066Sahrens# lint complains about unused _umem_* functions
50*fa9e4066SahrensLINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2
51*fa9e4066SahrensLINTFLAGS64 += -xerroff=E_NAME_DEF_NOT_USED2
52*fa9e4066Sahrens
53*fa9e4066SahrensROOTUSRSBINLINKS = $(PROG:%=$(ROOTUSRSBIN)/%)
54*fa9e4066SahrensUSRLIBFSTYPELINKS = $(LINKPROGS:%=$(USRLIBFSTYPE)/%)
55*fa9e4066SahrensROOTETCFSTYPELINKS = $(LINKPROGS:%=$(ROOTETCFSTYPE)/%)
56*fa9e4066Sahrens
57*fa9e4066Sahrens.KEEP_STATE:
58*fa9e4066Sahrens
59*fa9e4066Sahrens.PARALLEL:
60*fa9e4066Sahrens
61*fa9e4066Sahrensall: $(PROG)
62*fa9e4066Sahrens
63*fa9e4066Sahrens$(PROG): $(OBJS)
64*fa9e4066Sahrens	$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
65*fa9e4066Sahrens	$(POST_PROCESS)
66*fa9e4066Sahrens
67*fa9e4066Sahrensinstall: all $(ROOTSBINPROG) $(ROOTUSRSBINLINKS) $(USRLIBFSTYPELINKS) \
68*fa9e4066Sahrens	$(ROOTETCFSTYPELINKS)
69*fa9e4066Sahrens
70*fa9e4066Sahrens$(POFILE): $(POFILES)
71*fa9e4066Sahrens	$(RM) $@
72*fa9e4066Sahrens	cat $(POFILES) > $@
73*fa9e4066Sahrens
74*fa9e4066Sahrensclean:
75*fa9e4066Sahrens	$(RM) $(OBJS)
76*fa9e4066Sahrens
77*fa9e4066Sahrenslint:	lint_SRCS
78*fa9e4066Sahrens
79*fa9e4066Sahrens# Links from /usr/sbin to /sbin
80*fa9e4066Sahrens$(ROOTUSRSBINLINKS):
81*fa9e4066Sahrens	-$(RM) $@; $(SYMLINK) ../../sbin/$(PROG) $@
82*fa9e4066Sahrens
83*fa9e4066Sahrens# Links from /usr/lib/fs/zfs to /sbin
84*fa9e4066Sahrens$(USRLIBFSTYPELINKS):
85*fa9e4066Sahrens	-$(RM) $@; $(SYMLINK) ../../../../sbin/$(PROG) $@
86*fa9e4066Sahrens
87*fa9e4066Sahrens# Links from /etc/fs/zfs to /sbin
88*fa9e4066Sahrens$(ROOTETCFSTYPELINKS):
89*fa9e4066Sahrens	-$(RM) $@; $(SYMLINK) ../../../sbin/$(PROG) $@
90*fa9e4066Sahrens
91*fa9e4066SahrensFRC:
92*fa9e4066Sahrens
93*fa9e4066Sahrensinclude ../Makefile.targ
94