275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# CDDL HEADER START
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# The contents of this file are subject to the terms of the
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# Common Development and Distribution License (the "License").
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# You may not use this file except in compliance with the License.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# or http://www.opensolaris.org/os/licensing.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# See the License for the specific language governing permissions
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# and limitations under the License.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# When distributing Covered Code, include this CDDL HEADER in each
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# If applicable, add the following below this CDDL HEADER, with the
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# fields enclosed by brackets "[]" replaced with your own identifying
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# information: Portions Copyright [yyyy] [name of copyright owner]
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# CDDL HEADER END
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# Use is subject to license terms.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# ident "%Z%%M% %I% %E% SMI"
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock.KEEP_STATE:
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock.SUFFIXES:
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockinclude ../../../../../../../cmd/Makefile.cmd
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockinclude ../../../../../Makefile.defs
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# Set PROG and OBJS based on the values of MODULE and SRCS. We expect that
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# these macros to be defined by the Makefile that is including this file.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockPROG = $(MODULE:%=%.so)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockYOBJS = $(YSRCS:%.y=%.o)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockOBJS = $(YOBJS) $(SRCS:%.c=%.o)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# A module may set DMOD and DMOD_SRCS if it has a mdb proc module.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# DMOD, if set, must match PROG above (for mdb autoloading) so it will
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock# be built in a subdirectory.
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock#
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockROOTDMOD = $(DMOD:%.so=$(ROOT)/usr/lib/mdb/proc/%.so)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockROOTDMOD64 = $(DMOD:%.so=$(ROOT)/usr/lib/mdb/proc/$(MACH64)/%.so)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockDMODPROG = $(DMOD:%=dmod/%)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockDMOD_OBJS = $(DMOD_SRCS:%.c=%.o)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockROOTPROG = $(ROOTPLUGINLIBDIR)/scsi/engines/$(PROG)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockROOTPROG64 = $(ROOTPLUGINLIBDIR)/scsi/engines/$(MACH64)/$(PROG)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockLINTFLAGS += -mu
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockLINTFILES = $(SRCS:%.c=%.ln)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockDMODLINTTGT = $(DMOD:%=lint_dmod)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockDMODLINTFILES = $(DMOD_SRCS:%.c=%.ln)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockAPIMAP = ../../../../../libscsi/libscsi_api.map
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockC99MODE = $(C99_ENABLE)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockCFLAGS += $(CTF_FLAGS) $(CCVERBOSE) $(XSTRCONST) $(CC_PICFLAGS)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockCFLAGS += -G $(XREGSFLAG)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockCFLAGS64 += $(CTF_FLAGS) $(CCVERBOSE) $(XSTRCONST) $(CC_PICFLAGS)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockCFLAGS64 += -G $(XREGSFLAG)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockCPPFLAGS += -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrockCPPFLAGS += -I../../../../../libscsi/common
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock$(NOT_RELEASE_BUILD)CPPFLAGS += -DDEBUG
67e3a03ed4a2813074d36330f062ed6e593a4937rieLDFLAGS += $(ZTEXT) $(ZIGNORE)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock$(PROG) := LDFLAGS += $(ZDEFS) -M$(APIMAP)
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock$(PROG) := LDLIBS += -lc
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock
275c9da86e89f8abf71135cf63d9fc23671b2e60eschrock$(DMODPROG) := LDFLAGS += $(ZNODEFS)