Makefile revision ae115bc77f6fcde83175c75b4206dc2e50747966
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# CDDL HEADER START
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# The contents of this file are subject to the terms of the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# Common Development and Distribution License (the "License").
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# You may not use this file except in compliance with the License.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# or http://www.opensolaris.org/os/licensing.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# See the License for the specific language governing permissions
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# and limitations under the License.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# When distributing Covered Code, include this CDDL HEADER in each
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# If applicable, add the following below this CDDL HEADER, with the
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# fields enclosed by brackets "[]" replaced with your own identifying
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# information: Portions Copyright [yyyy] [name of copyright owner]
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# CDDL HEADER END
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# Use is subject to license terms.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# ident "%Z%%M% %I% %E% SMI"
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# This makefile drives the production of the sun4u opl platform
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# module.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# sun4u opl implementation architecture dependent
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# uts/sun4u/opl/Makefile
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# Path to the base of the uts directory tree (usually /usr/src/uts).
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncUTSBASE = ../..
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync# Include common rules.
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync#
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncinclude $(UTSBASE)/sun4u/opl/Makefile.opl
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsync
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncdef := TARGET= def
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncall := TARGET= all
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncinstall := TARGET= install
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncinstall_h := TARGET= install_h
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncclean := TARGET= clean
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncclobber := TARGET= clobber
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynclint := TARGET= lint
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynclintlib := TARGET= lintlib
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncmodlist := TARGET= modlist
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncmodlist := NO_STATE= -K $$MODSTATE$$$$
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncmodlintlib := TARGET= modlintlib
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsyncclean.lint := TARGET= clean.lint
4fd606d1f5abe38e1f42c38de1d2e895166bd0f4vboxsynccheck := TARGET= check
#
# Default build targets.
#
.KEEP_STATE:
def all clean clobber clean.lint: genassym unix .WAIT \
$(OPL_CPU_KMODS) $(OPL_KMODS) $(CLOSED_OPL_KMODS)
modlist: unix $(OPL_CPU_KMODS) $(OPL_KMODS) $(CLOSED_OPL_KMODS)
lintlib: unix
modlintlib: $(OPL_KMODS) $(CLOSED_OPL_KMODS)
IMPLEMENTED_PLATFORM = SUNW,SPARC-Enterprise
# EXPORT DELETE START
#
# aes256 is delivered in the SUNWcryr package which is removed from
# the EXPORT_SRC build.
#
OPL_CRYPTO_LINKS += aes256
# EXPORT DELETE END
install: $(ROOT_OPL_DIR) $(USR_OPL_DIR) \
$(USR_OPL_INC_DIR) \
$(USR_OPL_SBIN_DIR) \
$(USR_OPL_SBIN_PRTDIAG) \
$(USR_OPL_SBIN_TRAPSTAT) \
$(USR_OPL_SBIN_FRUADM) \
$(USR_OPL_LIB_DIR) \
$(OPL_CRYPTO_LINKS) \
genassym unix .WAIT $(OPL_CPU_KMODS) $(OPL_KMODS) \
$(CLOSED_OPL_KMODS) $(OPLMSU_OPTION)
genassym unix $(OPL_KMODS) $(OPL_CPU_KMODS): FRC
@cd $@; pwd; $(MAKE) $(TARGET)
$(CLOSED_OPL_KMODS): FRC
cd $(CLOSED)/uts/sun4u/opl/$@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
$(OPL_CRYPTO_LINKS): $(ROOT_OPL_CRYPTO_DIR_64)
-$(RM) $(ROOT_OPL_CRYPTO_DIR_64)/$@
$(SYMLINK) $(ROOT_US3_CRYPTO_LINK)/$@ $(ROOT_OPL_CRYPTO_DIR_64)/$@
$(OPLMSU_OPTION): FRC
@cd $@; pwd; $(MAKE) $(TARGET)
install_h check: FRC
@cd sys; pwd; $(MAKE) $(TARGET)
lint: modlintlib
#
# The 'lint.platmod' target lints the opl platform module against
# the sun4u kernel. This ends up doing all the kernel cross-checks,
# so it takes a couple of minutes.
# Due to the low ROI, it's not run by default, but it's a good
# idea to run this if you change os/opl.c.
#
LINT_LIBS = $(LINT_LIB) \
-L$(OPL_LINT_LIB_DIR) \
-L$(LINT_LIB_DIR) $(LINT_KMODS:%=-l%) \
$(CLOSED_LINT_KMODS:%=-l%) \
-L$(SPARC_LIB_DIR) $(SPARC_LINTS:%=-l%)
lint.platmod: modlintlib
@-$(ECHO) "\nOpl Platform-dependent module: global crosschecks:"
@-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2)
# EXPORT DELETE START
EXPORT_SRC:
$(RM) Makefile+
$(SED) -e "/^# EXPORT DELETE START/,/^# EXPORT DELETE END/d" \
< Makefile > Makefile+
$(MV) Makefile+ Makefile
$(CHMOD) 444 Makefile
# EXPORT DELETE END
#
#
# Include common targets.
#
include $(UTSBASE)/sun4u/opl/Makefile.targ