xref: /titanic_52/usr/src/uts/intel/getgen/Makefile (revision ba7df1e9cdf360fd0cbebd04b9c854b532a34e96)
1372a60c3SAndreas Jaekel#
2372a60c3SAndreas Jaekel# CDDL HEADER START
3372a60c3SAndreas Jaekel#
4372a60c3SAndreas Jaekel# The contents of this file are subject to the terms of the
5372a60c3SAndreas Jaekel# Common Development and Distribution License (the "License").
6372a60c3SAndreas Jaekel# You may not use this file except in compliance with the License.
7372a60c3SAndreas Jaekel#
8372a60c3SAndreas Jaekel# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9372a60c3SAndreas Jaekel# or http://www.opensolaris.org/os/licensing.
10372a60c3SAndreas Jaekel# See the License for the specific language governing permissions
11372a60c3SAndreas Jaekel# and limitations under the License.
12372a60c3SAndreas Jaekel#
13372a60c3SAndreas Jaekel# When distributing Covered Code, include this CDDL HEADER in each
14372a60c3SAndreas Jaekel# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15372a60c3SAndreas Jaekel# If applicable, add the following below this CDDL HEADER, with the
16372a60c3SAndreas Jaekel# fields enclosed by brackets "[]" replaced with your own identifying
17372a60c3SAndreas Jaekel# information: Portions Copyright [yyyy] [name of copyright owner]
18372a60c3SAndreas Jaekel#
19372a60c3SAndreas Jaekel# CDDL HEADER END
20372a60c3SAndreas Jaekel#
21372a60c3SAndreas Jaekel#
22372a60c3SAndreas Jaekel# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
23372a60c3SAndreas Jaekel#
24372a60c3SAndreas Jaekel#	This makefile drives the production of the zut file system
25372a60c3SAndreas Jaekel#	kernel module.
26372a60c3SAndreas Jaekel
27372a60c3SAndreas Jaekel#
28372a60c3SAndreas Jaekel#	Path to the base of the uts directory tree (usually /usr/src/uts).
29372a60c3SAndreas Jaekel#
30372a60c3SAndreas JaekelUTSBASE	= ../..
31372a60c3SAndreas Jaekel
32372a60c3SAndreas JaekelARCHDIR:sh = cd ..; basename `pwd`
33372a60c3SAndreas Jaekel
34372a60c3SAndreas Jaekel#
35372a60c3SAndreas Jaekel#	Define the module and object file sets.
36372a60c3SAndreas Jaekel#
37372a60c3SAndreas JaekelMODULE		= getgen
38372a60c3SAndreas JaekelOBJECTS		= $(GETGEN_OBJS:%=$(OBJS_DIR)/%)
39372a60c3SAndreas JaekelLINTS		= $(GETGEN_OBJS:%.o=$(LINTS_DIR)/%.ln)
40372a60c3SAndreas JaekelROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
41372a60c3SAndreas JaekelCONF_SRCDIR	= $(UTSBASE)/common/fs/getgen
42372a60c3SAndreas Jaekel
43372a60c3SAndreas Jaekel#
44372a60c3SAndreas Jaekel#	Include common rules.
45372a60c3SAndreas Jaekel#
46372a60c3SAndreas Jaekelinclude ../Makefile.$(ARCHDIR)
47372a60c3SAndreas Jaekel
48372a60c3SAndreas Jaekel#
49372a60c3SAndreas Jaekel#	Define targets
50372a60c3SAndreas Jaekel#
51372a60c3SAndreas JaekelALL_TARGET	= $(BINARY) $(SRC_CONFILE)
52372a60c3SAndreas JaekelLINT_TARGET	= $(MODULE).lint
53372a60c3SAndreas JaekelINSTALL_TARGET	= $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
54372a60c3SAndreas Jaekel
55372a60c3SAndreas Jaekel#
56372a60c3SAndreas Jaekel#	Overrides and depends_on
57372a60c3SAndreas Jaekel#
58372a60c3SAndreas JaekelMODSTUBS_DIR	 = $(OBJS_DIR)
59*ba7df1e9SMarcel TelkaLDFLAGS		+= -dy -Ndrv/zfs
60372a60c3SAndreas Jaekel
61372a60c3SAndreas JaekelINC_PATH	+= -I$(UTSBASE)/common/fs/getgen
62372a60c3SAndreas JaekelINC_PATH	+= -I$(UTSBASE)/common/fs/zfs
63372a60c3SAndreas JaekelINC_PATH	+= -I$(SRC)/common
64372a60c3SAndreas JaekelINC_PATH	+= -I$(COMMONBASE)/getgen
65372a60c3SAndreas JaekelINC_PATH        += -I$(COMMONBASE)/zfs
66372a60c3SAndreas Jaekel
67372a60c3SAndreas Jaekel
68372a60c3SAndreas JaekelC99MODE=	-xc99=%all
69372a60c3SAndreas JaekelC99LMODE=	-Xc99=%all
70372a60c3SAndreas Jaekel
71372a60c3SAndreas Jaekel#
72372a60c3SAndreas Jaekel# For now, disable these lint checks; maintainers should endeavor
73372a60c3SAndreas Jaekel# to investigate and remove these for maximum lint coverage.
74372a60c3SAndreas Jaekel# Please do not carry these forward to new Makefiles.
75372a60c3SAndreas Jaekel#
76372a60c3SAndreas JaekelLINTTAGS	+= -erroff=E_PTRDIFF_OVERFLOW
77372a60c3SAndreas Jaekel
78372a60c3SAndreas JaekelCERRWARN	+= -_gcc=-Wno-parentheses
79372a60c3SAndreas JaekelCERRWARN	+= -_gcc=-Wno-uninitialized
80372a60c3SAndreas Jaekel
81372a60c3SAndreas Jaekel#
82372a60c3SAndreas Jaekel#	Default build targets.
83372a60c3SAndreas Jaekel#
84372a60c3SAndreas Jaekel.KEEP_STATE:
85372a60c3SAndreas Jaekel
86372a60c3SAndreas Jaekeldef:		$(DEF_DEPS)
87372a60c3SAndreas Jaekel
88372a60c3SAndreas Jaekelall:		$(ALL_DEPS)
89372a60c3SAndreas Jaekel
90372a60c3SAndreas Jaekelclean:		$(CLEAN_DEPS)
91372a60c3SAndreas Jaekel
92372a60c3SAndreas Jaekelclobber:	$(CLOBBER_DEPS)
93372a60c3SAndreas Jaekel
94372a60c3SAndreas Jaekellint:		$(LINT_DEPS)
95372a60c3SAndreas Jaekel
96372a60c3SAndreas Jaekelmodlintlib:	$(MODLINTLIB_DEPS)
97372a60c3SAndreas Jaekel
98372a60c3SAndreas Jaekelclean.lint:	$(CLEAN_LINT_DEPS)
99372a60c3SAndreas Jaekel
100372a60c3SAndreas Jaekelinstall:	$(INSTALL_DEPS)
101372a60c3SAndreas Jaekel
102372a60c3SAndreas Jaekel#
103372a60c3SAndreas Jaekel#	Include common targets.
104372a60c3SAndreas Jaekel#
105372a60c3SAndreas Jaekelinclude ../Makefile.targ
106