Makefile revision bb25c06cca41ca78e5fb87fbb8e81d55beb18c95
10139N/A#
10139N/A# CDDL HEADER START
10139N/A#
10139N/A# The contents of this file are subject to the terms of the
10139N/A# Common Development and Distribution License (the "License").
10139N/A# You may not use this file except in compliance with the License.
10139N/A#
10139N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10139N/A# or http://www.opensolaris.org/os/licensing.
10139N/A# See the License for the specific language governing permissions
10139N/A# and limitations under the License.
10139N/A#
10346N/A# When distributing Covered Code, include this CDDL HEADER in each
10139N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
10139N/A# If applicable, add the following below this CDDL HEADER, with the
10139N/A# fields enclosed by brackets "[]" replaced with your own identifying
10139N/A# information: Portions Copyright [yyyy] [name of copyright owner]
10285N/A#
10139N/A# CDDL HEADER END
10139N/A#
10139N/A#
10139N/A# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
10139N/A# Use is subject to license terms.
10139N/A#
10139N/A#ident "%Z%%M% %I% %E% SMI"
10139N/A#
10139N/A# This makefile drives the production of the zfs file system
10139N/A# kernel module.
10139N/A
10139N/A#
10139N/A# Path to the base of the uts directory tree (usually /usr/src/uts).
10139N/A#
10139N/AUTSBASE = ../..
10139N/A
10139N/AARCHDIR:sh = cd ..; basename `pwd`
10139N/A
10139N/A#
10139N/A# Define the module and object file sets.
10139N/A#
10139N/AMODULE = zfs
10139N/AOBJECTS = $(ZFS_OBJS:%=$(OBJS_DIR)/%)
10139N/ALINTS = $(ZFS_OBJS:%.o=$(LINTS_DIR)/%.ln)
10139N/AROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
10139N/AROOTLINK = $(ROOT_FS_DIR)/$(MODULE)
10139N/ACONF_SRCDIR = $(UTSBASE)/common/fs/zfs
10139N/A
10139N/A#
10139N/A# Include common rules.
10139N/A#
10139N/Ainclude ../Makefile.$(ARCHDIR)
10139N/A
10139N/A#
10139N/A# Define targets
10139N/A#
10139N/AALL_TARGET = $(BINARY) $(SRC_CONFILE)
10139N/ALINT_TARGET = $(MODULE).lint
10139N/AINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK) $(ROOT_CONFFILE)
10139N/A
10139N/A#
10139N/A# Overrides and depends_on
10139N/A#
10139N/AMODSTUBS_DIR = $(OBJS_DIR)
10139N/ALDFLAGS += -dy -Nfs/specfs -Ndrv/random
10139N/A
10139N/AINC_PATH += -I$(UTSBASE)/common/fs/zfs
10139N/AINC_PATH += -I$(SRC)/common
10139N/AINC_PATH += -I$(COMMONBASE)/zfs
10139N/A
10139N/AC99MODE= -xc99=%all
10139N/AC99LMODE= -Xc99=%all
10139N/A
10139N/A#
10139N/A# For now, disable these lint checks; maintainers should endeavor
10139N/A# to investigate and remove these for maximum lint coverage.
10139N/A# Please do not carry these forward to new Makefiles.
10139N/A#
10139N/ALINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
10139N/ALINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
10424N/ALINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
10424N/ALINTTAGS += -erroff=E_STATIC_UNUSED
10139N/ALINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
10139N/ALINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
10139N/A
10139N/A#
10139N/A# Default build targets.
10139N/A#
10139N/A.KEEP_STATE:
10139N/A
10139N/Adef: $(DEF_DEPS)
10139N/A
10139N/Aall: $(ALL_DEPS)
10139N/A
10139N/Aclean: $(CLEAN_DEPS)
10139N/A
10139N/Aclobber: $(CLOBBER_DEPS)
10139N/A
10139N/Alint: $(LINT_DEPS)
10139N/A
10139N/Amodlintlib: $(MODLINTLIB_DEPS)
10139N/A
10139N/Aclean.lint: $(CLEAN_LINT_DEPS)
10139N/A
10139N/Ainstall: $(INSTALL_DEPS)
10139N/A
10139N/A$(ROOTLINK): $(ROOT_FS_DIR) $(ROOTMODULE)
10139N/A -$(RM) $@; ln $(ROOTMODULE) $@
10139N/A
10139N/A#
10139N/A# Include common targets.
10139N/A#
10139N/Ainclude ../Makefile.targ
10139N/A