Makefile revision 9e39c5ba00a55fa05777cc94b148296af305e135
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# CDDL HEADER START
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin# The contents of this file are subject to the terms of the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Common Development and Distribution License (the "License").
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# You may not use this file except in compliance with the License.
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# or http://www.opensolaris.org/os/licensing.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# See the License for the specific language governing permissions
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# and limitations under the License.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# When distributing Covered Code, include this CDDL HEADER in each
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# If applicable, add the following below this CDDL HEADER, with the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# fields enclosed by brackets "[]" replaced with your own identifying
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# information: Portions Copyright [yyyy] [name of copyright owner]
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# CDDL HEADER END
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Use is subject to license terms.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# This makefile drives the production of the tavor InfiniBand module
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# intel architecture dependent
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# uts/intel/tavor/Makefile
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Paths to the base of the uts directory trees
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinUTSBASE = ../..
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Define the module and object file sets.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinMODULE = tavor
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinOBJECTS = $(TAVOR_OBJS:%=$(OBJS_DIR)/%)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinLINTS = $(TAVOR_OBJS:%.o=$(LINTS_DIR)/%.ln)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinCONF_SRCDIR = $(UTSBASE)/common/io/ib/adapters/tavor
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinLDFLAGS += -dy -Ndrv/ib -Nmisc/ibtl -Nmisc/ibmf
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinWARLOCK_OUT = $(TAVOR_OBJS:%.o=%.ll)
7c2fbfb345896881c631598ee3852ce9ce33fb07April ChinWARLOCK_OK = $(MODULE).ok
7c2fbfb345896881c631598ee3852ce9ce33fb07April ChinWLCMD_DIR = $(UTSBASE)/common/io/warlock
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Include common rules.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chininclude $(UTSBASE)/intel/Makefile.intel
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Define targets
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinALL_TARGET = $(BINARY) $(SRC_CONFFILE)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinLINT_TARGET = $(MODULE).lint
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Overrides
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Build with no debug TNF probes enabled (by default)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#DEBUG_DEFS_DBG32 += -DTNF_DEBUG
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#DEBUG_DEFS_DBG64 += -DTNF_DEBUG
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# lint pass one enforcement
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinCFLAGS += $(CCVERBOSE)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# For now, disable these lint checks; maintainers should endeavor
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# to investigate and remove these for maximum lint coverage.
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin# Please do not carry these forward to new Makefiles.
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#
7c2fbfb345896881c631598ee3852ce9ce33fb07April ChinLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
7c2fbfb345896881c631598ee3852ce9ce33fb07April ChinLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
7c2fbfb345896881c631598ee3852ce9ce33fb07April ChinLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin# Default build targets.
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin#
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin.KEEP_STATE:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chindef: $(DEF_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinall: $(ALL_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinclean: $(CLEAN_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinclobber: $(CLOBBER_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinlint: $(LINT_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinmodlintlib: $(MODLINTLIB_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinclean.lint: $(CLEAN_LINT_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chininstall: $(INSTALL_DEPS)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Include common targets.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chininclude $(UTSBASE)/intel/Makefile.targ
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin# Defines for local commands.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin#
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinWARLOCK = warlock
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinWLCC = wlcc
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinTOUCH = touch
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinTEST = test
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinwarlock: $(WARLOCK_OK)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin$(WARLOCK_OK): $(WARLOCK_OUT) warlock_ddi.files $(WLCMD_DIR)/tavor.wlcmd
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin $(WARLOCK) -c $(WLCMD_DIR)/tavor.wlcmd $(WARLOCK_OUT) -l \
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin $(UTSBASE)/intel/warlock/ddi_dki_impl.ll
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin $(TOUCH) $@
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin%.ll: $(UTSBASE)/common/io/ib/adapters/tavor/%.c
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin $(WLCC) $(CPPFLAGS) -DNPROBE -DDEBUG -o $@ $<
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinwarlock_ddi.files:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin @cd $(UTSBASE)/intel/warlock; pwd; $(MAKE) warlock
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin