1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# 22# uts/i86pc/i86hvm/Makefile 23# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26#ident "%Z%%M% %I% %E% SMI" 27# 28# This makefile drives the production of the i86hvm platform modules. 29# 30# i86pc implementation architecture dependent 31# 32 33# 34# Path to the base of the uts directory tree (usually /usr/src/uts). 35# 36UTSBASE = ../.. 37 38# 39# Include common rules. 40# 41include $(UTSBASE)/i86pc/i86hvm/Makefile.i86hvm 42 43def := TARGET= def 44all := TARGET= all 45install := TARGET= install 46install_h := TARGET= install_h 47clean := TARGET= clean 48clobber := TARGET= clobber 49lint := TARGET= lint 50lintlib := TARGET= lintlib 51modlintlib := TARGET= modlintlib 52modlist := TARGET= modlist 53modlist := NO_STATE= -K $$MODSTATE$$$$ 54clean.lint := TARGET= clean.lint 55check := TARGET= check 56 57# 58# Default build targets. 59# 60.KEEP_STATE: 61 62.PARALLEL: $(HVM_KMODS) 63 64def all clean clobber clean.lint modlist modlintlib: $(HVM_KMODS) 65 66install: install_implementations .WAIT \ 67 $(HVM_KMODS) 68 69install_implementations: \ 70 $(ROOT_HVM_DIR) \ 71 $(ROOT_HVM_DRV_DIR) \ 72 $(ROOT_HVM_MISC_DIR) \ 73 $(USR_HVM_DIR) 74 75$(HVM_KMODS): FRC 76 @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET) 77 78install_h check: FRC 79 80lintlib lint: modlintlib .WAIT $(LINT_DEPS) 81 82# 83# The 'lint.platmod' target lints the i86hvm platform modules against the i86pc 84# kernel. This ends up doing all the kernel cross-checks. 85# 86LINT_TARGET = lint.platmod 87INTEL_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR) 88INTEL_LINTS = genunix 89LINT_LIBS = $(LINT_LIB) \ 90 -L$(HVM_LINT_LIB_DIR) \ 91 -L$(LINT_LIB_DIR) \ 92 $(GENUNIX_KMODS:%=-l%) \ 93 $(PARALLEL_KMODS:%=-l%) \ 94 $(CLOSED_KMODS:%=-l%) \ 95 -L$(INTEL_LIB_DIR) \ 96 $(INTEL_LINTS:%=-l%) 97 98# workaround for multiply defined errors 99lint.platmod := LINTFLAGS += -erroff=E_NAME_MULTIPLY_DEF2 100 101lint.platmod: modlintlib 102 @-$(ECHO) "\ni86hvm platform-dependent module: global crosschecks:" 103 @-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2) 104 105# 106# Include common targets. 107# 108include $(UTSBASE)/$(PLATFORM)/i86hvm/Makefile.targ 109