Makefile revision fb9f9b975cb9214fec5dab37d461199adab9b964
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# CDDL HEADER START
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# The contents of this file are subject to the terms of the
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# Common Development and Distribution License, Version 1.0 only
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# (the "License"). You may not use this file except in compliance
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# with the License.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# or http://www.opensolaris.org/os/licensing.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# See the License for the specific language governing permissions
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington# and limitations under the License.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington# When distributing Covered Code, include this CDDL HEADER in each
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington# If applicable, add the following below this CDDL HEADER, with the
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# fields enclosed by brackets "[]" replaced with your own identifying
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# information: Portions Copyright [yyyy] [name of copyright owner]
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# CDDL HEADER END
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# uts/sun4u/montecarlo/Makefile
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# Use is subject to license terms.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#ident "%Z%%M% %I% %E% SMI"
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# This makefile drives the production of all MonteCarlo system
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# dependent modules for the sun4u architecture.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# Path to the base of the uts directory tree (usually /usr/src/uts).
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkUTSBASE = ../..
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkGROUP = sys
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkCHGRP = /usr/bin/chgrp -h
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# Include common rules.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkinclude $(UTSBASE)/sun4u/montecarlo/Makefile.montecarlo
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkdef := TARGET= def
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkall := TARGET= all
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkinstall := TARGET= install
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkinstall_h := TARGET= install_h
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkclean := TARGET= clean
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkclobber := TARGET= clobber
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenklint := TARGET= lint
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#lintlib := TARGET= lintlib
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkmodlintlib := TARGET= modlintlib
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkmodlist := TARGET= modlist
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkmodlist := NO_STATE= -K $$MODSTATE$$$$
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkclean.lint := TARGET= clean.lint
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkcheck := TARGET= check
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# Default build targets.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk.KEEP_STATE:
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkdef all clean.lint clean clobber modlist: $(MONTECARLO_KMODS) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CLOSED_MONTECARLO_KMODS)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkmodlintlib: $(MONTECARLO_KMODS) $(CLOSED_MONTECARLO_KMODS)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkinstall: $(ROOT_MONTECARLO_DIR) $(USR_MONTECARLO_DIR) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(USR_MONTECARLO_INC_DIR) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(USR_MONTECARLO_SBIN_DIR) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(USR_MONTECARLO_LIB_DIR) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk .WAIT $(MONTECARLO_KMODS) $(CLOSED_MONTECARLO_KMODS) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk pcicfg se.conf ttymux.conf
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkpcicfg: $(ROOT_MONTECARLO_MISC_DIR_64)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk -@$(RM) $(ROOT_MONTECARLO_MISC_DIR_64)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(SYMLINK) ../../../../sun4u/kernel/misc/sparcv9/pcicfg.e \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(ROOT_MONTECARLO_MISC_DIR_64)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkse.conf: $(ROOT_MONTECARLO_DRV_DIR)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk -@$(RM) $(ROOT_MONTECARLO_DRV_DIR)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CP) $(UTSBASE)/sun4u/montecarlo/io/$@ \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(ROOT_MONTECARLO_DRV_DIR)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CHMOD) $(CFILEMODE) $(ROOT_MONTECARLO_DRV_DIR)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CHGRP) $(GROUP) $(ROOT_MONTECARLO_DRV_DIR)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkttymux.conf: $(ROOT_MONTECARLO_DRV_DIR)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk -@$(RM) $(ROOT_MONTECARLO_DRV_DIR)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CP) $(UTSBASE)/sun4u/montecarlo/io/$@ \
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington $(ROOT_MONTECARLO_DRV_DIR)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CHMOD) $(CFILEMODE) $(ROOT_MONTECARLO_DRV_DIR)/$@
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CHGRP) $(GROUP) $(ROOT_MONTECARLO_DRV_DIR)/$@
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkinstall_h check: FRC
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk @cd sys; pwd; $(MAKE) $(TARGET)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenklint: modlintlib
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# The 'lint.platmod' target lints the montecarlo platform module against
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington# the sun4u kernel. This ends up doing all the kernel cross-checks,
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# so it takes a couple of minutes.
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington# Due to the low ROI, it's not run by default, but it's a good
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# idea to run this if you change os/montecarlo.c.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkLINT_LIBS = $(LINT_LIB) \
c49a898cb851f8fef7d7a6a9501c66b8f03ae05cPhill Cunnington -L$(MONTECARLO_LINT_LIB_DIR) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk -L$(LINT_LIB_DIR) $(LINT_KMODS:%=-l%) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(CLOSED_LINT_KMODS:%=-l%) \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk -L$(SPARC_LIB_DIR) $(SPARC_LINTS:%=-l%)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenklint.platmod: modlintlib
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk @-$(ECHO) "\nMonteCarlo Platform-dependent module: global crosschecks:"
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk @-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk$(MONTECARLO_KMODS): FRC
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk$(CLOSED_MONTECARLO_KMODS): FRC
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk cd $(CLOSED)/uts/sun4u/montecarlo/$@; pwd; \
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk $(MAKE) $(NO_STATE) $(TARGET)
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk# Include common targets.
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk#
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenkinclude $(UTSBASE)/sun4u/montecarlo/Makefile.targ
89503929c8983c48e2049c77284b52e79ad37c32jeff.schenk