xref: /titanic_44/usr/src/uts/sparc/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#	This makefile drives the production of the zfs file system
29*fa9e4066Sahrens#	kernel module.
30*fa9e4066Sahrens
31*fa9e4066Sahrens#
32*fa9e4066Sahrens#	Path to the base of the uts directory tree (usually /usr/src/uts).
33*fa9e4066Sahrens#
34*fa9e4066SahrensUTSBASE	= ../..
35*fa9e4066Sahrens
36*fa9e4066SahrensARCHDIR:sh = cd ..; basename `pwd`
37*fa9e4066Sahrens
38*fa9e4066Sahrens#
39*fa9e4066Sahrens#	Define the module and object file sets.
40*fa9e4066Sahrens#
41*fa9e4066SahrensMODULE		= zfs
42*fa9e4066SahrensOBJECTS		= $(ZFS_OBJS:%=$(OBJS_DIR)/%)
43*fa9e4066SahrensLINTS		= $(ZFS_OBJS:%.o=$(LINTS_DIR)/%.ln)
44*fa9e4066SahrensROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
45*fa9e4066SahrensROOTLINK	= $(ROOT_FS_DIR)/$(MODULE)
46*fa9e4066SahrensCONF_SRCDIR	= $(UTSBASE)/common/fs/zfs
47*fa9e4066Sahrens
48*fa9e4066Sahrens#
49*fa9e4066Sahrens#	Include common rules.
50*fa9e4066Sahrens#
51*fa9e4066Sahrensinclude ../Makefile.$(ARCHDIR)
52*fa9e4066Sahrens
53*fa9e4066Sahrens#
54*fa9e4066Sahrens#	Define targets
55*fa9e4066Sahrens#
56*fa9e4066SahrensALL_TARGET	= $(BINARY) $(SRC_CONFILE)
57*fa9e4066SahrensLINT_TARGET	= $(MODULE).lint
58*fa9e4066SahrensINSTALL_TARGET	= $(BINARY) $(ROOTMODULE) $(ROOTLINK) $(ROOT_CONFFILE)
59*fa9e4066Sahrens
60*fa9e4066Sahrens#
61*fa9e4066Sahrens#	Overrides and depends_on
62*fa9e4066Sahrens#
63*fa9e4066SahrensMODSTUBS_DIR	 = $(OBJS_DIR)
64*fa9e4066SahrensLDFLAGS		+= -dy -Nfs/specfs -Ndrv/random
65*fa9e4066Sahrens
66*fa9e4066SahrensINC_PATH	+= -I$(UTSBASE)/common/fs/zfs
67*fa9e4066SahrensINC_PATH	+= -I$(SRC)/common
68*fa9e4066SahrensINC_PATH	+= -I$(COMMONBASE)/zfs
69*fa9e4066Sahrens
70*fa9e4066SahrensC99MODE=	-xc99=%all
71*fa9e4066SahrensC99LMODE=	-Xc99=%all
72*fa9e4066Sahrens
73*fa9e4066Sahrens#
74*fa9e4066Sahrens#	Default build targets.
75*fa9e4066Sahrens#
76*fa9e4066Sahrens.KEEP_STATE:
77*fa9e4066Sahrens
78*fa9e4066Sahrensdef:		$(DEF_DEPS)
79*fa9e4066Sahrens
80*fa9e4066Sahrensall:		$(ALL_DEPS)
81*fa9e4066Sahrens
82*fa9e4066Sahrensclean:		$(CLEAN_DEPS)
83*fa9e4066Sahrens
84*fa9e4066Sahrensclobber:	$(CLOBBER_DEPS)
85*fa9e4066Sahrens
86*fa9e4066Sahrenslint:		$(LINT_DEPS)
87*fa9e4066Sahrens
88*fa9e4066Sahrensmodlintlib:	$(MODLINTLIB_DEPS)
89*fa9e4066Sahrens
90*fa9e4066Sahrensclean.lint:	$(CLEAN_LINT_DEPS)
91*fa9e4066Sahrens
92*fa9e4066Sahrensinstall:	$(INSTALL_DEPS)
93*fa9e4066Sahrens
94*fa9e4066Sahrens$(ROOTLINK):	$(ROOT_FS_DIR) $(ROOTMODULE)
95*fa9e4066Sahrens	-$(RM) $@; ln $(ROOTMODULE) $@
96*fa9e4066Sahrens
97*fa9e4066Sahrens#
98*fa9e4066Sahrens#	Include common targets.
99*fa9e4066Sahrens#
100*fa9e4066Sahrensinclude ../Makefile.targ
101