xref: /illumos-gate/usr/src/uts/i86xpv/Makefile (revision 58d4b16fe601073f2408de78e3db7e9bfa9abfd2)
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# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
23# Use is subject to license terms.
24#
25# Copyright 2013 Nexenta Systems, Inc.  All rights reserved.
26#
27#	This makefile drives the production of all implementation architecture
28#	dependent modules for the i86xpv architecture.
29#
30
31UTSBASE = ..
32
33include Makefile.i86xpv
34
35def		:=	TARGET= def
36all		:=	TARGET= all
37install		:=	TARGET= install
38clean		:=	TARGET= clean
39clobber		:=	TARGET= clobber
40modlist		:=	TARGET= modlist
41modlist	modlist.intel :=	NO_STATE= -K $$MODSTATE$$$$
42check		:=	TARGET= check
43
44.KEEP_STATE:
45
46.PARALLEL:	$(PARALLEL_KMODS) $(XMODS) modlist modlist.intel
47
48INITIAL_TARGETS = \
49	genassym \
50	unix \
51	cpu/scripts
52
53def all clean clobber: setup genassym unix .WAIT \
54	$(KMODS) $(XMODS)
55
56install: install_platforms setup genassym unix .WAIT \
57	$(KMODS) $(XMODS)
58
59clean:
60
61# list the modules under i86xpv.
62modlist: unix $(KMODS) $(XMODS)
63
64# list the modules for Install -k i86xpv.
65modlist.karch: modlist modlist.intel
66
67modlist.intel:
68	@cd $(SRC)/uts/intel; pwd; $(MAKE) $(NO_STATE) modlist
69
70genassym unix $(KMODS):	FRC
71	@cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
72
73setup: FRC
74	@cd cpu/scripts; pwd; $(MAKE) $(TARGET)
75
76$(XMODS):	FRC
77	@if [ -f $@/Makefile  ]; then \
78		cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET); \
79	else \
80		true; \
81	fi
82
83install_h check:	FRC
84	@cd sys; pwd; $(MAKE) $(TARGET)
85
86#
87# Definitions for the /platform directory aliases.
88# Currently none for i86xpv.
89#
90PLAT_LINKS	=
91
92#
93# Make the /platform directories.  This is hardwired here because
94# the first stage of the project (KBI) only implements the userland
95# changes, but the only reasonable place to record the aliases is
96# here in kernel land.
97#
98install_platforms:	$(ROOT_PSM_DIR) $(USR_PSM_DIR) \
99			$(ROOT_PLAT_LINKS) $(USR_PLAT_LINKS) \
100			$(OEM_USR_PLAT_LINKS)
101
102FRC:
103
104include ../Makefile.targ
105
106#
107# Cross-reference customization: build a cross-reference over all of the
108# i86pc-related directories.
109#
110XRDIRS	= ../i86xpv ../i86pc ../intel ../common
111XRPRUNE	= sun4v sun4u sun4 sfmmu sparc
112
113cscope.out tags: FRC
114	$(XREF) -x $@
115