xref: /titanic_53/usr/src/uts/intel/zev/Makefile (revision 2bb8e5e2ef829a38e0408e7207b4aa15f5eb947b)
1*2bb8e5e2SAndreas Jaekel#
2*2bb8e5e2SAndreas Jaekel# CDDL HEADER START
3*2bb8e5e2SAndreas Jaekel#
4*2bb8e5e2SAndreas Jaekel# The contents of this file are subject to the terms of the
5*2bb8e5e2SAndreas Jaekel# Common Development and Distribution License (the "License").
6*2bb8e5e2SAndreas Jaekel# You may not use this file except in compliance with the License.
7*2bb8e5e2SAndreas Jaekel#
8*2bb8e5e2SAndreas Jaekel# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9*2bb8e5e2SAndreas Jaekel# or http://www.opensolaris.org/os/licensing.
10*2bb8e5e2SAndreas Jaekel# See the License for the specific language governing permissions
11*2bb8e5e2SAndreas Jaekel# and limitations under the License.
12*2bb8e5e2SAndreas Jaekel#
13*2bb8e5e2SAndreas Jaekel# When distributing Covered Code, include this CDDL HEADER in each
14*2bb8e5e2SAndreas Jaekel# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15*2bb8e5e2SAndreas Jaekel# If applicable, add the following below this CDDL HEADER, with the
16*2bb8e5e2SAndreas Jaekel# fields enclosed by brackets "[]" replaced with your own identifying
17*2bb8e5e2SAndreas Jaekel# information: Portions Copyright [yyyy] [name of copyright owner]
18*2bb8e5e2SAndreas Jaekel#
19*2bb8e5e2SAndreas Jaekel# CDDL HEADER END
20*2bb8e5e2SAndreas Jaekel#
21*2bb8e5e2SAndreas Jaekel#
22*2bb8e5e2SAndreas Jaekel# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
23*2bb8e5e2SAndreas Jaekel#
24*2bb8e5e2SAndreas Jaekel#	This makefile drives the production of the zut file system
25*2bb8e5e2SAndreas Jaekel#	kernel module.
26*2bb8e5e2SAndreas Jaekel
27*2bb8e5e2SAndreas Jaekel#
28*2bb8e5e2SAndreas Jaekel#	Path to the base of the uts directory tree (usually /usr/src/uts).
29*2bb8e5e2SAndreas Jaekel#
30*2bb8e5e2SAndreas JaekelUTSBASE	= ../..
31*2bb8e5e2SAndreas Jaekel
32*2bb8e5e2SAndreas JaekelARCHDIR:sh = cd ..; basename `pwd`
33*2bb8e5e2SAndreas Jaekel
34*2bb8e5e2SAndreas Jaekel#
35*2bb8e5e2SAndreas Jaekel#	Define the module and object file sets.
36*2bb8e5e2SAndreas Jaekel#
37*2bb8e5e2SAndreas JaekelMODULE		= zev
38*2bb8e5e2SAndreas JaekelOBJECTS		= $(ZEV_OBJS:%=$(OBJS_DIR)/%)
39*2bb8e5e2SAndreas JaekelLINTS		= $(ZEV_OBJS:%.o=$(LINTS_DIR)/%.ln)
40*2bb8e5e2SAndreas JaekelROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
41*2bb8e5e2SAndreas JaekelCONF_SRCDIR	= $(UTSBASE)/common/fs/zev
42*2bb8e5e2SAndreas Jaekel
43*2bb8e5e2SAndreas Jaekel#
44*2bb8e5e2SAndreas Jaekel#	Include common rules.
45*2bb8e5e2SAndreas Jaekel#
46*2bb8e5e2SAndreas Jaekelinclude ../Makefile.$(ARCHDIR)
47*2bb8e5e2SAndreas Jaekel
48*2bb8e5e2SAndreas Jaekel#
49*2bb8e5e2SAndreas Jaekel#	Define targets
50*2bb8e5e2SAndreas Jaekel#
51*2bb8e5e2SAndreas JaekelALL_TARGET	= $(BINARY) $(SRC_CONFILE)
52*2bb8e5e2SAndreas JaekelLINT_TARGET	= $(MODULE).lint
53*2bb8e5e2SAndreas JaekelINSTALL_TARGET	= $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
54*2bb8e5e2SAndreas Jaekel
55*2bb8e5e2SAndreas Jaekel#
56*2bb8e5e2SAndreas Jaekel#	Overrides and depends_on
57*2bb8e5e2SAndreas Jaekel#
58*2bb8e5e2SAndreas JaekelMODSTUBS_DIR	 = $(OBJS_DIR)
59*2bb8e5e2SAndreas JaekelLDFLAGS		+= -dy
60*2bb8e5e2SAndreas Jaekel
61*2bb8e5e2SAndreas JaekelINC_PATH	+= -I$(UTSBASE)/common/fs/zev
62*2bb8e5e2SAndreas JaekelINC_PATH	+= -I$(UTSBASE)/common/fs/zfs
63*2bb8e5e2SAndreas JaekelINC_PATH	+= -I$(SRC)/common
64*2bb8e5e2SAndreas JaekelINC_PATH	+= -I$(COMMONBASE)/zev
65*2bb8e5e2SAndreas JaekelINC_PATH        += -I$(COMMONBASE)/zfs
66*2bb8e5e2SAndreas Jaekel
67*2bb8e5e2SAndreas Jaekel
68*2bb8e5e2SAndreas JaekelC99MODE=	-xc99=%all
69*2bb8e5e2SAndreas JaekelC99LMODE=	-Xc99=%all
70*2bb8e5e2SAndreas Jaekel
71*2bb8e5e2SAndreas Jaekel#
72*2bb8e5e2SAndreas Jaekel# For now, disable these lint checks; maintainers should endeavor
73*2bb8e5e2SAndreas Jaekel# to investigate and remove these for maximum lint coverage.
74*2bb8e5e2SAndreas Jaekel# Please do not carry these forward to new Makefiles.
75*2bb8e5e2SAndreas Jaekel#
76*2bb8e5e2SAndreas JaekelLINTTAGS	+= -erroff=E_PTRDIFF_OVERFLOW
77*2bb8e5e2SAndreas Jaekel
78*2bb8e5e2SAndreas JaekelCERRWARN	+= -_gcc=-Wno-parentheses
79*2bb8e5e2SAndreas JaekelCERRWARN	+= -_gcc=-Wno-uninitialized
80*2bb8e5e2SAndreas Jaekel
81*2bb8e5e2SAndreas Jaekel#
82*2bb8e5e2SAndreas Jaekel#	Default build targets.
83*2bb8e5e2SAndreas Jaekel#
84*2bb8e5e2SAndreas Jaekel.KEEP_STATE:
85*2bb8e5e2SAndreas Jaekel
86*2bb8e5e2SAndreas Jaekeldef:		$(DEF_DEPS)
87*2bb8e5e2SAndreas Jaekel
88*2bb8e5e2SAndreas Jaekelall:		$(ALL_DEPS)
89*2bb8e5e2SAndreas Jaekel
90*2bb8e5e2SAndreas Jaekelclean:		$(CLEAN_DEPS)
91*2bb8e5e2SAndreas Jaekel
92*2bb8e5e2SAndreas Jaekelclobber:	$(CLOBBER_DEPS)
93*2bb8e5e2SAndreas Jaekel
94*2bb8e5e2SAndreas Jaekellint:		$(LINT_DEPS)
95*2bb8e5e2SAndreas Jaekel
96*2bb8e5e2SAndreas Jaekelmodlintlib:	$(MODLINTLIB_DEPS)
97*2bb8e5e2SAndreas Jaekel
98*2bb8e5e2SAndreas Jaekelclean.lint:	$(CLEAN_LINT_DEPS)
99*2bb8e5e2SAndreas Jaekel
100*2bb8e5e2SAndreas Jaekelinstall:	$(INSTALL_DEPS)
101*2bb8e5e2SAndreas Jaekel
102*2bb8e5e2SAndreas Jaekel#
103*2bb8e5e2SAndreas Jaekel#	Include common targets.
104*2bb8e5e2SAndreas Jaekel#
105*2bb8e5e2SAndreas Jaekelinclude ../Makefile.targ
106