Makefile revision fb9f9b975cb9214fec5dab37d461199adab9b964
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# CDDL HEADER START
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# The contents of this file are subject to the terms of the
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Common Development and Distribution License, Version 1.0 only
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# (the "License"). You may not use this file except in compliance
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# with the License.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# or http://www.opensolaris.org/os/licensing.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# See the License for the specific language governing permissions
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# and limitations under the License.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# If applicable, add the following below this CDDL HEADER, with the
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# CDDL HEADER END
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# uts/sun4u/cherrystone/Makefile
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Use is subject to license terms.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#ident "%Z%%M% %I% %E% SMI"
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# This makefile drives the production of all Cherrystone system
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# dependent modules for the sun4u architecture.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsUTSBASE = ../..
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Include common rules.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsinclude $(UTSBASE)/sun4u/cherrystone/Makefile.cherrystone
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsdef := TARGET= def
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsall := TARGET= all
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsinstall := TARGET= install
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsinstall_h := TARGET= install_h
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsclean := TARGET= clean
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsclobber := TARGET= clobber
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewslint := TARGET= lint
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewslintlib := TARGET= lintlib
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsmodlintlib := TARGET= modlintlib
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsmodlist := TARGET= modlist
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsmodlist := NO_STATE= -K $$MODSTATE$$$$
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsclean.lint := TARGET= clean.lint
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewscheck := TARGET= check
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Default build targets.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews.KEEP_STATE:
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsdef all clean.lint clean clobber modlist: $(CHERRYSTONE_KMODS)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsmodlintlib: $(CHERRYSTONE_KMODS)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsIMPLEMENTED_PLATFORM = SUNW,Sun-Fire-480R
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsLINKED_PLATFORMS = SUNW,Sun-Fire-V490
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# EXPORT DELETE START
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# aes256 is delivered in the SUNWcryr package which is removed
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# from the EXPORT_SRC build.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsCHERRYSTONE_CRYPTO_LINKS += aes256
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# EXPORT DELETE END
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsinstall: $(ROOT_CHERRYSTONE_DIR) $(USR_CHERRYSTONE_DIR) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(USR_CHERRYSTONE_INC_DIR) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(USR_CHERRYSTONE_SBIN_DIR) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(USR_CHERRYSTONE_LIB_DIR) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(LINKED_PLATFORMS:%=$(ROOT_PLAT_DIR)/%) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(LINKED_PLATFORMS:%=$(USR_PLAT_DIR)/%/lib) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(LINKED_PLATFORMS:%=$(USR_PLAT_DIR)/%/include) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(LINKED_PLATFORMS:%=$(USR_PLAT_DIR)/%/sbin) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(CHERRYSTONE_CRYPTO_LINKS) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews .WAIT $(CHERRYSTONE_KMODS)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsinstall_h check: FRC
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews @cd sys; pwd; $(MAKE) $(TARGET)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews$(CHERRYSTONE_CRYPTO_LINKS): $(ROOT_CHERRYSTONE_CRYPTO_DIR_64)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews -$(RM) $(ROOT_CHERRYSTONE_CRYPTO_DIR_64)/$@;
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(SYMLINK) $(ROOT_US3_CRYPTO_LINK)/$@ \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(ROOT_CHERRYSTONE_CRYPTO_DIR_64)/$@
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewslint: modlintlib
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsLINT_LIBS = $(LINT_LIB) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews -L$(CHERRYSTONE_LINT_LIB_DIR) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews -L$(LINT_LIB_DIR) $(LINT_KMODS:%=-l%) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(CLOSED_LINT_KMODS:%=-l%) \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews -L$(SPARC_LIB_DIR) $(SPARC_LINTS:%=-l%)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewslint.platmod: modlintlib
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews @-$(ECHO) "\nCherrystone Platform-dependent module: global crosschecks:"
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews @-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews$(CHERRYSTONE_KMODS): FRC
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# EXPORT DELETE START
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsEXPORT_SRC:
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(RM) Makefile+
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews sed -e "/^# EXPORT DELETE START/,/^# EXPORT DELETE END/d" \
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews < Makefile > Makefile+
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(MV) Makefile+ Makefile
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews $(CHMOD) 444 Makefile
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# EXPORT DELETE END
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Include common targets.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrewsinclude $(UTSBASE)/sun4u/cherrystone/Makefile.targ
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews