Makefile revision 4604:5989fb2cb1d5
1270310Sse# CDDL HEADER START
2270310Sse#
343334Syokota# The contents of this file are subject to the terms of the
443334Syokota# Common Development and Distribution License (the "License").
543334Syokota# You may not use this file except in compliance with the License.
643334Syokota#
743334Syokota# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
843334Syokota# or http://www.opensolaris.org/os/licensing.
943334Syokota# See the License for the specific language governing permissions
1043334Syokota# and limitations under the License.
1143334Syokota#
12270310Sse# When distributing Covered Code, include this CDDL HEADER in each
1343334Syokota# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
14270310Sse# If applicable, add the following below this CDDL HEADER, with the
15270310Sse# fields enclosed by brackets "[]" replaced with your own identifying
16270310Sse# information: Portions Copyright [yyyy] [name of copyright owner]
1743334Syokota#
18270310Sse# CDDL HEADER END
1943334Syokota#
20270310Sse
21270310Sse#
22270310Sse# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
2343334Syokota# Use is subject to license terms.
2443334Syokota#
2543334Syokota# ident	"%Z%%M%	%I%	%E% SMI"
2643334Syokota#
2743334Syokota
2843334Syokota#
2943334Syokota# uts/sparc/si3124/Makefile
3043334Syokota#
3143334Syokota#	This makefile drives the production of the 
3243334Syokota#	"platform/i86pc/kernel/drv/si3124" kernel module.
3343334Syokota#
3443334Syokota#	sparc architecture dependent
35270310Sse#
36270310Sse
3743334Syokota#
3843334Syokota#	Path to the base of the uts directory tree (usually /usr/src/uts).
3943334Syokota#
4043334SyokotaUTSBASE	= ../..
4143334Syokota
4243334Syokota#
4343334Syokota#	Define the module and object file sets.
4443334Syokota#
4543334SyokotaMODULE		= si3124
46270310SseOBJECTS		= $(SI3124_OBJS:%=$(OBJS_DIR)/%)
47270310SseLINTS		= $(SI3124_OBJS:%.o=$(LINTS_DIR)/%.ln)
48270310SseWARLOCK_OUT     = $(SI3124_OBJS:%.o=%.ll)
49270310SseWARLOCK_OK      = $(MODULE).ok
50270310SseROOTMODULE	= $(ROOT_DRV_DIR)/$(MODULE)
5143334SyokotaCONF_SRCDIR     = $(UTSBASE)/common/io/sata/adapters/si3124
52270310SseWLCMD_DIR       = $(UTSBASE)/common/io/warlock
5343334Syokota
5443334Syokota#
5543334Syokota#	Include common rules.
5643334Syokota#
5743334Syokotainclude $(UTSBASE)/sparc/Makefile.sparc
5843334Syokota
59270310Sse#
60166500Sphilip#	Define targets
61166500Sphilip#
6243334SyokotaALL_TARGET	= $(BINARY)
6343334SyokotaLINT_TARGET	= $(MODULE).lint
6443334SyokotaINSTALL_TARGET	= $(BINARY) $(ROOTMODULE)
6543334Syokota
6643334Syokota#
6743334Syokota#	Overrides.
6843334Syokota#
6943334SyokotaDEBUG_FLGS	=
7043334SyokotaDEBUG_DEFS	+= $(DEBUG_FLGS)
7143334Syokota
7243334Syokota#
7343334Syokota# lint pass one enforcement
7443334Syokota#  
7543334SyokotaCFLAGS += $(CCVERBOSE)
7643334Syokota
7743334Syokota#
7843334Syokota#	Default build targets.
7943334Syokota#
8043334Syokota.KEEP_STATE:
8143334Syokota
8243334Syokotadef:		$(DEF_DEPS)
8343334Syokota
8443334Syokotaall:		$(ALL_DEPS)
8543334Syokota
8643334Syokotaclean:		$(CLEAN_DEPS)
8743334Syokota		$(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
8843334Syokota
8943334Syokotaclobber:	$(CLOBBER_DEPS)
9043334Syokota		$(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
9143334Syokota
9243334Syokotalint:		$(LINT_DEPS)
9343334Syokota
9443334Syokotamodlintlib:	$(MODLINTLIB_DEPS)
9543334Syokota
9643334Syokotaclean.lint:	$(CLEAN_LINT_DEPS)
9743334Syokota
9843334Syokotainstall:	$(INSTALL_DEPS)
9943334Syokota
10043334Syokota#
10174119Sache#	Include common targets.
10243334Syokota#
10343334Syokotainclude $(UTSBASE)/sparc/Makefile.targ
10443334Syokota
10543334Syokota
10643334Syokota#
10743334Syokota#	Defines for local commands.
10843334Syokota#
10943334SyokotaWARLOCK		= warlock
11043334SyokotaWLCC		= wlcc
11174119SacheTOUCH		= touch
112270310SseTEST		= test
11343334Syokota
11443334SyokotaSD_FILES = $(SD_OBJS:%.o=../sd/%.ll)
11543334SyokotaSATA_FILES = $(SATA_OBJS:%.o=-l ../sata/%.ll)
11643334SyokotaSCSI_FILES = $(SCSI_OBJS:%.o=-l ../scsi/%.ll)
11743334SyokotaCMLB_FILES = $(CMLB_OBJS:%.o=-l ../cmlb/%.ll)
118
119warlock: $(WARLOCK_OK)
120
121$(WARLOCK_OK): $(WLCMD_DIR)/si3124.wlcmd $(WARLOCK_OUT) warlock_ddi.files \
122	sata.files scsi.files sd.files cmlb.files
123	$(WARLOCK) -c $(WLCMD_DIR)/si3124.wlcmd $(WARLOCK_OUT) \
124	$(SD_FILES) \
125	$(SCSI_FILES) \
126	$(CMLB_FILES) \
127        $(SATA_FILES) \
128	-l ../warlock/ddi_dki_impl.ll
129	$(TOUCH) $@
130
131%.ll: $(UTSBASE)/common/io/sata/adapters/si3124/%.c
132	$(WLCC) $(CPPFLAGS) -D DEBUG -D __sparcv9 -o $@ $<
133
134sata.files:
135	@cd ../sata; pwd; $(MAKE) warlock
136
137scsi.files:
138	@cd ../scsi; pwd; $(MAKE) warlock
139
140sd.files: 
141	@cd ../sd; pwd; $(MAKE) warlock_alone
142
143cmlb.files:
144	@cd ../cmlb; pwd; $(MAKE) warlock
145
146warlock_ddi.files:
147	@cd ../warlock; pwd; $(MAKE) warlock
148