xref: /illumos-gate/usr/src/cmd/fs.d/zfs/fstyp/Makefile (revision 0e42dee69ed771bf604dd1789fca9d77b5bbe302)
1fa9e4066Sahrens#
2fa9e4066Sahrens# CDDL HEADER START
3fa9e4066Sahrens#
4fa9e4066Sahrens# The contents of this file are subject to the terms of the
5*0e42dee6Sartem# Common Development and Distribution License (the "License").
6*0e42dee6Sartem# You may not use this file except in compliance with the License.
7fa9e4066Sahrens#
8fa9e4066Sahrens# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9fa9e4066Sahrens# or http://www.opensolaris.org/os/licensing.
10fa9e4066Sahrens# See the License for the specific language governing permissions
11fa9e4066Sahrens# and limitations under the License.
12fa9e4066Sahrens#
13fa9e4066Sahrens# When distributing Covered Code, include this CDDL HEADER in each
14fa9e4066Sahrens# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15fa9e4066Sahrens# If applicable, add the following below this CDDL HEADER, with the
16fa9e4066Sahrens# fields enclosed by brackets "[]" replaced with your own identifying
17fa9e4066Sahrens# information: Portions Copyright [yyyy] [name of copyright owner]
18fa9e4066Sahrens#
19fa9e4066Sahrens# CDDL HEADER END
20fa9e4066Sahrens#
21fa9e4066Sahrens#
22fa9e4066Sahrens#ident	"%Z%%M%	%I%	%E% SMI"
23fa9e4066Sahrens#
24*0e42dee6Sartem# Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
25fa9e4066Sahrens# Use is subject to license terms.
26fa9e4066Sahrens#
27fa9e4066Sahrens
28*0e42dee6SartemFSTYP_VERS=1
29fa9e4066SahrensFSTYPE=		zfs
30*0e42dee6SartemLIBPROG=	fstyp.so.${FSTYP_VERS}
31fa9e4066Sahrens
32*0e42dee6Sarteminclude ../../../../lib/Makefile.lib
33*0e42dee6Sarteminclude ../../Makefile.fstype
34fa9e4066Sahrens
35*0e42dee6SartemCFLAGS +=	$(C_PICFLAGS)
36*0e42dee6SartemDYNLIB=		$(LIBPROG)
37fa9e4066Sahrens
38*0e42dee6SartemLDLIBS += -lnvpair -lzfs -lc
39fa9e4066Sahrens
40*0e42dee6SartemLINTFLAGS += -erroff=E_BAD_PTR_CAST_ALIGN -erroff=E_NAME_DEF_NOT_USED2
41*0e42dee6SartemLINTFLAGS64 += -erroff=E_BAD_PTR_CAST_ALIGN -erroff=E_NAME_DEF_NOT_USED2
42fa9e4066Sahrens
43*0e42dee6SartemSRCS=	${LIBPROG:%.so.$(FSTYP_VERS)=%.c}
44*0e42dee6Sartem
45*0e42dee6SartemCPPFLAGS += 	-DFSTYP_VERS=${FSTYP_VERS} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
46*0e42dee6Sartem
47*0e42dee6Sartem#
48*0e42dee6Sartem# Override PMAP dependency
49*0e42dee6Sartem#
50*0e42dee6SartemPMAP=
51*0e42dee6Sartem
52*0e42dee6Sartem#
53*0e42dee6Sartem# Rules for making shared objects out of .c files.  Works well if
54*0e42dee6Sartem# we have a one-to-one mapping.  Applies in all cases so far.
55*0e42dee6Sartem#
56*0e42dee6Sartem.SUFFIXES: .so.${FSTYP_VERS} ${SUFFIXES}
57*0e42dee6Sartem
58*0e42dee6Sartem.c.so.${FSTYP_VERS}:
59*0e42dee6Sartem	$(CC) $(CPPFLAGS) $(CFLAGS) $(DYNFLAGS) $(GSHARED) -o $@ $< $(LDLIBS)
60*0e42dee6Sartem	$(POST_PROCESS_SO)
61*0e42dee6Sartem
62*0e42dee6Sartem
63*0e42dee6Sartem.KEEP_STATE:
64*0e42dee6Sartem
65*0e42dee6Sartemall: $(LIBPROG)
66*0e42dee6Sartem
67*0e42dee6Sarteminstall: all
68*0e42dee6Sartem	$(RM) $(ROOTLIBFSTYPE)/fstyp
69*0e42dee6Sartem	$(LN) $(ROOTUSRSBIN)/fstyp $(ROOTLIBFSTYPE)/fstyp
70*0e42dee6Sartem
71*0e42dee6Sartemlint: lint_SRCS
72*0e42dee6Sartem
73*0e42dee6Sartemcstyle:
74*0e42dee6Sartem	$(CSTYLE) $(SRCS)
75*0e42dee6Sartem
76*0e42dee6Sartemclean:
77*0e42dee6Sartem	${RM} $(LIBPROG)
78*0e42dee6Sartem
79*0e42dee6Sartemclobber: clean
80