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/serengeti/Makefile 24# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 25# Use is subject to license terms. 26# 27# 28#ident "%Z%%M% %I% %E% SMI" 29# 30# This makefile drives the production of the sun4u serengeti platform 31# module. 32# 33# sun4u implementation architecture dependent 34# 35 36# 37# Path to the base of the uts directory tree (usually /usr/src/uts). 38# 39UTSBASE = ../.. 40 41# 42# Include common rules. 43# 44include $(UTSBASE)/sun4u/serengeti/Makefile.serengeti 45 46def := TARGET= def 47all := TARGET= all 48install := TARGET= install 49install_h := TARGET= install_h 50clean := TARGET= clean 51clobber := TARGET= clobber 52lint := TARGET= lint 53lintlib := TARGET= lintlib 54modlintlib := TARGET= modlintlib 55modlist := TARGET= modlist 56modlist := NO_STATE= -K $$MODSTATE$$$$ 57clean.lint := TARGET= clean.lint 58check := TARGET= check 59 60# 61# Default build targets. 62# 63.KEEP_STATE: 64 65def all clean clean.lint clobber: genassym unix .WAIT \ 66 $(SERENGETI_KMODS) $(CLOSED_SERENGETI_KMODS) 67 68modlist: unix $(SERENGETI_KMODS) $(CLOSED_SERENGETI_KMODS) 69 70lintlib: unix 71 72modlintlib: $(SERENGETI_KMODS) $(CLOSED_SERENGETI_KMODS) 73 74IMPLEMENTED_PLATFORM = SUNW,Sun-Fire 75 76# EXPORT DELETE START 77# 78# aes256 is delivered in the SUNWcryr package which is removed from 79# the EXPORT_SRC build. 80# 81SERENGETI_CRYPTO_LINKS += aes256 82# EXPORT DELETE END 83 84install: $(ROOT_SERENGETI_DIR) $(USR_SERENGETI_DIR) \ 85 $(USR_SERENGETI_INC_DIR) \ 86 $(USR_SERENGETI_SBIN_DIR) \ 87 $(USR_SERENGETI_LIB_DIR) \ 88 $(SERENGETI_CRYPTO_LINKS) \ 89 genassym unix .WAIT \ 90 $(SERENGETI_KMODS) $(CLOSED_SERENGETI_KMODS) 91 92genassym unix $(SERENGETI_KMODS): FRC 93 @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET) 94 95$(CLOSED_SERENGETI_KMODS): FRC 96 cd $(CLOSED)/uts/sun4u/serengeti/$@; pwd; \ 97 $(MAKE) $(NO_STATE) $(TARGET) 98 99$(SERENGETI_CRYPTO_LINKS): $(ROOT_SERENGETI_CRYPTO_DIR_64) 100 -$(RM) $(ROOT_SERENGETI_CRYPTO_DIR_64)/$@; 101 $(SYMLINK) $(ROOT_US3_CRYPTO_LINK)/$@ $(ROOT_SERENGETI_CRYPTO_DIR_64)/$@ 102 103install_h check: FRC 104 @cd sys; pwd; $(MAKE) $(TARGET) 105 106 107lint: modlintlib 108 109# 110# The 'lint.platmod' target lints the serengeti platform module against the sun4u 111# kernel. This ends up doing all the kernel cross-checks, so it takes a couple 112# of minutes. Due to the low ROI, it's not run by default, but it's a good 113# idea to run this if you change os/serengeti.c. 114# 115LINT_LIBS = $(LINT_LIB) \ 116 -L$(SERENGETI_LINT_LIB_DIR) \ 117 -L$(LINT_LIB_DIR) $(LINT_KMODS:%=-l%) \ 118 $(CLOSED_LINT_KMODS:%=-l%) \ 119 -L$(SPARC_LIB_DIR) $(SPARC_LINTS:%=-l%) 120 121lint.platmod: modlintlib 122 @-$(ECHO) "\nSerengeti Platform-dependent module: global crosschecks:" 123 @-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2) 124 125# EXPORT DELETE START 126 127EXPORT_SRC: 128 $(RM) Makefile+ 129 sed -e "/^# EXPORT DELETE START/,/^# EXPORT DELETE END/d" \ 130 < Makefile > Makefile+ 131 $(MV) Makefile+ Makefile 132 $(CHMOD) 444 Makefile 133 134# EXPORT DELETE END 135 136# 137# 138# Include common targets. 139# 140include $(UTSBASE)/sun4u/serengeti/Makefile.targ 141