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