Makefile revision bb25c06cca41ca78e5fb87fbb8e81d55beb18c95
9N/A#
9N/A# CDDL HEADER START
9N/A#
9N/A# The contents of this file are subject to the terms of the
9N/A# Common Development and Distribution License (the "License").
9N/A# You may not use this file except in compliance with the License.
9N/A#
9N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9N/A# or http://www.opensolaris.org/os/licensing.
9N/A# See the License for the specific language governing permissions
9N/A# and limitations under the License.
9N/A#
9N/A# When distributing Covered Code, include this CDDL HEADER in each
9N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9N/A# If applicable, add the following below this CDDL HEADER, with the
9N/A# fields enclosed by brackets "[]" replaced with your own identifying
9N/A# information: Portions Copyright [yyyy] [name of copyright owner]
9N/A#
9N/A# CDDL HEADER END
9N/A#
2321N/A#
9N/A# uts/sparc/hci1394/Makefile
9N/A#
9N/A# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
9N/A# Use is subject to license terms.
814N/A#
1470N/A#ident "%Z%%M% %I% %E% SMI"
814N/A#
814N/A# This makefile drives the production of the hci1394 OHCI HAL module.
814N/A#
814N/A# sparc architecture dependent
814N/A#
814N/A
1845N/A#
814N/A# Path to the base of the uts directory tree (usually /usr/src/uts).
1845N/A#
1845N/AUTSBASE = ../..
1845N/A
1845N/A#
1845N/A# Define the module and object file sets.
3441N/A#
3441N/AMODULE = hci1394
1845N/AOBJECTS = $(HCI1394_OBJS:%=$(OBJS_DIR)/%)
1845N/ALINTS = $(HCI1394_OBJS:%.o=$(LINTS_DIR)/%.ln)
1845N/AROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
814N/ACONF_SRCDIR = $(UTSBASE)/common/io/1394/adapters
2051N/ALDFLAGS += -dy -Nmisc/s1394
2051N/AWARLOCK_OUT = $(HCI1394_OBJS:%.o=%.ll)
2051N/AWARLOCK_OK = $(MODULE).ok
2051N/A
2051N/A#
2051N/A# Include common rules.
2051N/A#
2051N/Ainclude $(UTSBASE)/sparc/Makefile.sparc
814N/A
1470N/A#
1470N/A# Define targets
1470N/A#
1470N/AALL_TARGET = $(BINARY) $(SRC_CONFILE)
1470N/ALINT_TARGET = $(MODULE).lint
1470N/AINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
1470N/A
16N/A#
16N/A# Overrides
16N/A#
16N/AALL_BUILDS = $(ALL_BUILDSONLY64)
16N/ADEF_BUILDS = $(DEF_BUILDSONLY64)
1470N/ACLEANLINTFILES += $(LINT32_FILES)
9N/A
16N/ADEBUG_DEFS_DBG32 += -DTNF_DEBUG
1470N/ADEBUG_DEFS_DBG64 += -DTNF_DEBUG
16N/A
16N/A#
1470N/A# lint pass one enforcement
1470N/A#
16N/ACFLAGS += $(CCVERBOSE)
16N/A
1470N/A#
2051N/A# For now, disable these lint checks; maintainers should endeavor
814N/A# to investigate and remove these for maximum lint coverage.
# Please do not carry these forward to new Makefiles.
#
LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
LINTTAGS += -erroff=E_STATIC_UNUSED
LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
#
# Default build targets.
#
.KEEP_STATE:
def: $(DEF_DEPS)
all: $(ALL_DEPS)
clean: $(CLEAN_DEPS); \
$(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
clobber: $(CLOBBER_DEPS); \
$(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
lint: $(LINT_DEPS)
modlintlib: $(MODLINTLIB_DEPS) lint32
clean.lint: $(CLEAN_LINT_DEPS)
install: $(INSTALL_DEPS)
#
# Include common targets.
#
include $(UTSBASE)/sparc/Makefile.targ
#
# Defines for local commands.
#
WARLOCK = warlock
WLCC = wlcc
TOUCH = touch
SCCS = sccs
TEST = test
#
# Warlock targets
#
WARLOCK_OBJECTS = $(HCI1394_OBJS:%.o=%.ll)
S1394_FILES = $(S1394_OBJS:%.o= -l ../s1394/%.ll)
warlock: $(MODULE).ok
%.wlcmd:
$(TEST) -f $@ || $(SCCS) get $@
$(MODULE).ok: $(WARLOCK_OBJECTS) s1394.files warlock_ddi.files hci1394.wlcmd
$(WARLOCK) -c hci1394.wlcmd $(WARLOCK_OBJECTS) $(S1394_FILES) \
-l ../warlock/ddi_dki_impl.ll
$(TOUCH) $@
%.ll: $(UTSBASE)/common/io/1394/adapters/%.c
$(WLCC) $(CPPFLAGS) -DNPROBE -DDEBUG -o $@ $<
warlock_ddi.files:
@cd ../warlock; pwd; $(MAKE) warlock
s1394.files:
@cd ../s1394; pwd; $(MAKE) warlock