7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# CDDL HEADER START
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# The contents of this file are subject to the terms of the
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Common Development and Distribution License (the "License").
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# You may not use this file except in compliance with the License.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# or http://www.opensolaris.org/os/licensing.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# See the License for the specific language governing permissions
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# and limitations under the License.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# When distributing Covered Code, include this CDDL HEADER in each
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# If applicable, add the following below this CDDL HEADER, with the
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# fields enclosed by brackets "[]" replaced with your own identifying
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# information: Portions Copyright [yyyy] [name of copyright owner]
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# CDDL HEADER END
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
60471b7bbfab236de7d8776aed871d919c5f81c3Tim Foster# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Use is subject to license terms.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# This makefile drives the production of the xpvtap
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# driver module.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# i86xpv architecture dependent
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Path to the base of the uts directory tree (usually /usr/src/uts).
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonUTSBASE = ../..
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Define the module and object file sets.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonMODULE = xpvtap
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonOBJECTS = $(XPVTAP_OBJS:%=$(OBJS_DIR)/%)
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLINTS = $(XPVTAP_OBJS:%.o=$(LINTS_DIR)/%.ln)
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE)
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Include common rules.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnsoninclude $(UTSBASE)/i86xpv/Makefile.i86xpv
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Define targets
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonALL_TARGET = $(BINARY)
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLINT_TARGET = $(MODULE).lint
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
60471b7bbfab236de7d8776aed871d919c5f81c3Tim Foster#
60471b7bbfab236de7d8776aed871d919c5f81c3Tim Foster# Overrides
60471b7bbfab236de7d8776aed871d919c5f81c3Tim Foster#
60471b7bbfab236de7d8776aed871d919c5f81c3Tim FosterDEF_BUILDS = $(DEF_BUILDS64)
60471b7bbfab236de7d8776aed871d919c5f81c3Tim FosterALL_BUILDS = $(ALL_BUILDS64)
60471b7bbfab236de7d8776aed871d919c5f81c3Tim Foster
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLDFLAGS +=
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# use Solaris specific code in xen public header files
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonCFLAGS += -D_SOLARIS
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLINTFLAGS += -D_SOLARIS
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
7eea693d6b672899726e75993fddc4e95b52647fMark JohnsonLINTTAGS += -erroff=E_CONSTANT_CONDITION
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7014882c6a3672fd0e5d60200af8643ae53c5928Richard LoweCERRWARN += -_gcc=-Wno-unused-label
7014882c6a3672fd0e5d60200af8643ae53c5928Richard Lowe
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Default build targets.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson.KEEP_STATE:
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnsondef: $(DEF_DEPS)
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnsonall: $(ALL_DEPS)
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
b6805bf78d2bbbeeaea8909a05623587b42d58b3Gordon Ross# This build only 64-bit, but the lint32 below
b6805bf78d2bbbeeaea8909a05623587b42d58b3Gordon Ross# needs corresponding clean/clobber deps.
b6805bf78d2bbbeeaea8909a05623587b42d58b3Gordon Rossclean: $(CLEAN_DEPS) clean.debug32
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
b6805bf78d2bbbeeaea8909a05623587b42d58b3Gordon Rossclobber: $(CLOBBER_DEPS) clobber.debug32
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnsonlint: $(LINT_DEPS)
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
60471b7bbfab236de7d8776aed871d919c5f81c3Tim Fostermodlintlib: $(MODLINTLIB_DEPS) lint32
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnsonclean.lint: $(CLEAN_LINT_DEPS)
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnsoninstall: $(INSTALL_DEPS)
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson# Include common targets.
7eea693d6b672899726e75993fddc4e95b52647fMark Johnson#
7eea693d6b672899726e75993fddc4e95b52647fMark Johnsoninclude $(UTSBASE)/i86xpv/Makefile.targ