xref: /titanic_41/usr/src/uts/sun4u/schumacher/Makefile (revision 24dd95375a09d43fe4f6b55f6d5188f4bac4f68d)
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# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
22# Use is subject to license terms.
23#
24#pragma ident	"%Z%%M%	%I%	%E% SMI"
25#
26#	This makefile drives the production of the sun4u schumacher platform
27#	module.
28#
29#	sun4u implementation architecture dependent
30#
31
32#
33#	Path to the base of the uts directory tree (usually /usr/src/uts).
34#
35UTSBASE	= ../..
36
37#
38#	Include common rules.
39#
40include $(UTSBASE)/sun4u/schumacher/Makefile.schumacher
41
42def		:=	TARGET= def
43all		:=	TARGET= all
44install		:=	TARGET= install
45install_h	:=	TARGET= install_h
46clean		:=	TARGET= clean
47clobber		:=	TARGET= clobber
48lint		:=	TARGET= lint
49lintlib		:=	TARGET= lintlib
50modlintlib	:=	TARGET= modlintlib
51modlist		:=	TARGET= modlist
52modlist		:=	NO_STATE= -K $$MODSTATE$$$$
53clean.lint	:=	TARGET= clean.lint
54check		:=	TARGET= check
55
56#
57#	Default build targets.
58#
59.KEEP_STATE:
60
61def all clean clean.lint clobber modlist: $(SCHUMACHER_KMODS)
62
63modlintlib:	$(SCHUMACHER_KMODS)
64
65# EXPORT DELETE START
66#
67# aes256 is delivered in the SUNWcryr package which is removed from
68# the EXPORT_SRC build.
69#
70SCHUMACHER_CRYPTO_LINKS	+= aes256
71# EXPORT DELETE END
72
73install:	$(ROOT_SCHUMACHER_DIR) \
74		$(USR_SCHUMACHER_DIR) \
75		$(USR_SCHUMACHER_INC_DIR) \
76		$(USR_SCHUMACHER_SBIN_DIR) \
77		$(USR_SCHUMACHER_SBIN_PRTDIAG) \
78		$(USR_SCHUMACHER_SBIN_TRAPSTAT) \
79		$(USR_SCHUMACHER_SBIN_FRUADM) \
80		$(USR_SCHUMACHER_LIB_DIR) \
81		$(SCHUMACHER_CRYPTO_LINKS) \
82		$(SCHUMACHER_KMODS)
83
84check install_h:
85
86lint:		modlintlib
87
88#
89# The 'lint.platmod' target lints the schumacher platform module against the sun4u
90# kernel.  This ends up doing all the kernel cross-checks, so it takes a couple
91# of minutes.
92#
93LINT_LIBS	 = $(LINT_LIB) \
94		   -L$(SCHUMACHER_LINT_LIB_DIR) \
95		   -L$(LINT_LIB_DIR) $(LINT_KMODS:%=-l%) \
96		   	$(CLOSED_LINT_KMODS:%=-l%) \
97		   -L$(SPARC_LIB_DIR) $(SPARC_LINTS:%=-l%)
98
99lint.platmod:	modlintlib
100	@-$(ECHO) "\nSchumacher Platform-dependent module: global crosschecks:"
101	@-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2)
102
103$(SCHUMACHER_KMODS): FRC
104	@cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
105
106$(SCHUMACHER_CRYPTO_LINKS): $(ROOT_SCHUMACHER_CRYPTO_DIR_64)
107	-$(RM) $(ROOT_SCHUMACHER_CRYPTO_DIR_64)/$@;
108	$(SYMLINK) $(ROOT_US3_CRYPTO_LINK)/$@ $(ROOT_SCHUMACHER_CRYPTO_DIR_64)/$@
109
110# EXPORT DELETE START
111
112EXPORT_SRC:
113	$(RM) Makefile+
114	sed -e "/^# EXPORT DELETE START/,/^# EXPORT DELETE END/d" \
115	    < Makefile > Makefile+
116	$(MV) Makefile+ Makefile
117	$(CHMOD) 444 Makefile
118
119# EXPORT DELETE END
120
121#
122#	Include common targets.
123#
124include $(UTSBASE)/sun4u/schumacher/Makefile.targ
125