1 # CDDL HEADER START
2 #
3 # The contents of this file are subject to the terms of the
4 # Common Development and Distribution License (the "License").
5 # You may not use this file except in compliance with the License.
6 #
7 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
8 # or http://www.opensolaris.org/os/licensing.
9 # See the License for the specific language governing permissions
10 # and limitations under the License.
11 #
12 # When distributing Covered Code, include this CDDL HEADER in each
13 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
14 # If applicable, add the following below this CDDL HEADER, with the
15 # fields enclosed by brackets "[]" replaced with your own identifying
16 # information: Portions Copyright [yyyy] [name of copyright owner]
17 #
18 # CDDL HEADER END
19 #
20 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
21 # Use is subject to license terms.
22 #
23 #
24 # This makefile drives the production of the pmcs driver kernel module.
25 #
26 # SPARC architecture dependent
27 #
28
29 #
30 # Paths to the base of the uts directory trees
31 #
32 UTSBASE = ../../../../src/uts
33
34 #
35 # Define the module and object file sets.
36 #
37 MODULE = pmcs
38 OBJECTS = $(PMCS_OBJS:%=$(OBJS_DIR)/%)
39 LINTS = $(PMCS_OBJS:%.o=$(LINTS_DIR)/%.ln)
40 ROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
41 CONF_SRCDIR = $(UTSBASE)/common/io/scsi/adapters/pmcs
42
43 #
44 # Kernel Module Dependencies
45 #
46 LDFLAGS += -dy -Nmisc/scsi
47
48 #
49 # Define targets
50 #
51 ALL_TARGET = $(BINARY) $(CONFMOD)
52 LINT_TARGET = $(MODULE).lint
53 INSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
54
55 #
56 # Include common rules.
57 #
58 include $(UTSBASE)/sparc/Makefile.sparc
59 include $(CONF_SRCDIR)/pmcs8001fw.version
60
61 #
62 # Add additional flags
63 #
64 PMCS_DRV_FLGS = -DMODNAME=\"${MODULE}\" -DDISABLE_MSIX
65 CPPFLAGS += $(PMCS_DRV_FLGS) \
66 -DPMCS_FIRMWARE_VERSION=${PMCS_FW_VERSION} \
67 -DPMCS_FIRMWARE_VERSION_STRING=\"${PMCS_FW_VERSION_STRING}\"
68
69 CERRWARN += -_gcc=-Wno-switch
70 CERRWARN += $(CNOWARN_UNINIT)
71 CERRWARN += -_gcc=-Wno-unused-value
72 CERRWARN += -_gcc=-Wno-unused-label
73 CERRWARN += -_gcc=-Wno-parentheses
74
75
76 #
77 # Default build targets.
78 #
79 .KEEP_STATE:
80
81 all: $(ALL_DEPS)
82
83 def: $(DEF_DEPS)
84
85 clean: $(CLEAN_DEPS)
86
87 clobber: $(CLOBBER_DEPS)
88
89 lint: $(LINT_DEPS)
90
91 modlintlib: $(MODLINTLIB_DEPS)
92
93 clean.lint: $(CLEAN_LINT_DEPS)
94
95 install: $(INSTALL_DEPS)
96
97 #
98 # Include common targets.
99 #
100 include $(UTSBASE)/sparc/Makefile.targ