xref: /titanic_44/usr/src/uts/sun4u/montecarlo/Makefile (revision 84ab085a13f931bc78e7415e7ce921dbaa14fcb3)
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, Version 1.0 only
6# (the "License").  You may not use this file except in compliance
7# with the License.
8#
9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10# or http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When distributing Covered Code, include this CDDL HEADER in each
15# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16# If applicable, add the following below this CDDL HEADER, with the
17# fields enclosed by brackets "[]" replaced with your own identifying
18# information: Portions Copyright [yyyy] [name of copyright owner]
19#
20# CDDL HEADER END
21#
22#
23# uts/sun4u/montecarlo/Makefile
24# Copyright (c) 1999-2001 by Sun Microsystems, Inc.
25# All rights reserved.
26#
27#ident	"%Z%%M%	%I%	%E% SMI"
28#
29#     This makefile drives the production of all MonteCarlo system
30#     dependent modules for the sun4u architecture.
31#
32
33#
34#	Path to the base of the uts directory tree (usually /usr/src/uts).
35#
36UTSBASE		= ../..
37GROUP		= sys
38CHGRP		= /usr/bin/chgrp -h
39
40#
41#	Include common rules.
42#
43include $(UTSBASE)/sun4u/montecarlo/Makefile.montecarlo
44
45def		:=	TARGET= def
46all		:=	TARGET= all
47install		:=	TARGET= install
48install_h	:=	TARGET= install_h
49clean		:=	TARGET= clean
50clobber		:=	TARGET= clobber
51lint		:=	TARGET= lint
52#lintlib	:=	TARGET= lintlib
53modlintlib	:=	TARGET= modlintlib
54clean.lint	:=	TARGET= clean.lint
55check		:=	TARGET= check
56
57#
58#	Default build targets.
59#
60.KEEP_STATE:
61
62def all clean.lint clean clobber: $(MONTECARLO_KMODS)
63
64modlintlib:	$(MONTECARLO_KMODS)
65
66install:        $(ROOT_MONTECARLO_DIR) $(USR_MONTECARLO_DIR) \
67                $(USR_MONTECARLO_INC_DIR) \
68                $(USR_MONTECARLO_SBIN_DIR) \
69                $(USR_MONTECARLO_LIB_DIR) \
70                .WAIT $(MONTECARLO_KMODS) \
71		pcicfg se.conf ttymux.conf
72
73pcicfg:		$(ROOT_MONTECARLO_MISC_DIR_64)
74		-@$(RM) $(ROOT_MONTECARLO_MISC_DIR_64)/$@
75		$(SYMLINK) ../../../../sun4u/kernel/misc/sparcv9/pcicfg.e \
76		$(ROOT_MONTECARLO_MISC_DIR_64)/$@
77
78se.conf:	$(ROOT_MONTECARLO_DRV_DIR)
79		-@$(RM) $(ROOT_MONTECARLO_DRV_DIR)/$@
80		$(CP) $(UTSBASE)/sun4u/montecarlo/io/$@ \
81		$(ROOT_MONTECARLO_DRV_DIR)/$@
82		$(CHMOD) $(CFILEMODE) $(ROOT_MONTECARLO_DRV_DIR)/$@
83		$(CHGRP) $(GROUP) $(ROOT_MONTECARLO_DRV_DIR)/$@
84
85ttymux.conf:	$(ROOT_MONTECARLO_DRV_DIR)
86		-@$(RM) $(ROOT_MONTECARLO_DRV_DIR)/$@
87		$(CP) $(UTSBASE)/sun4u/montecarlo/io/$@ \
88		$(ROOT_MONTECARLO_DRV_DIR)/$@
89		$(CHMOD) $(CFILEMODE) $(ROOT_MONTECARLO_DRV_DIR)/$@
90		$(CHGRP) $(GROUP) $(ROOT_MONTECARLO_DRV_DIR)/$@
91
92install_h check:	FRC
93	@cd sys; pwd; $(MAKE) $(TARGET)
94
95lint:		modlintlib
96
97#
98# The 'lint.platmod' target lints the montecarlo platform module against
99# the sun4u kernel.  This ends up doing all the kernel cross-checks,
100# so it takes a couple of minutes.
101# Due to the low ROI, it's not run by default, but it's a good
102# idea to run this if you change os/montecarlo.c.
103#
104LINT_LIBS	 = $(LINT_LIB) \
105		   -L$(MONTECARLO_LINT_LIB_DIR) \
106		   -L$(LINT_LIB_DIR) $(LINT_KMODS:%=-l%) \
107		   -L$(SPARC_LIB_DIR) $(SPARC_LINTS:%=-l%)
108
109lint.platmod:   modlintlib
110	@-$(ECHO) "\nMonteCarlo Platform-dependent module: global crosschecks:"
111	@-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2)
112
113$(MONTECARLO_KMODS): FRC
114	@cd $@; pwd; $(MAKE) $(TARGET)
115
116#
117#	Include common targets.
118#
119include $(UTSBASE)/sun4u/montecarlo/Makefile.targ
120