Makefile revision fb9f9b975cb9214fec5dab37d461199adab9b964
12343c067e12be071a68bbb10d1d1c4870696769Tinderbox User#
6c2a76b3e2ccd32c35814b6e0f54da00190749d7Evan Hunt# CDDL HEADER START
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater#
c7fd128f8ea8a527fe27c1b95ab46df7155bc8e4Tinderbox User# The contents of this file are subject to the terms of the
c7fd128f8ea8a527fe27c1b95ab46df7155bc8e4Tinderbox User# Common Development and Distribution License, Version 1.0 only
ba9e87b35e561bc7354ce3f4b9685b747b7be507Tinderbox User# (the "License"). You may not use this file except in compliance
1f9754245cbd5eec2d2a667bb292f62f72386d4bMark Andrews# with the License.
59663800d2ec04777dae2791dd92aa563faf94c8Evan Hunt#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
1f9754245cbd5eec2d2a667bb292f62f72386d4bMark Andrews# or http://www.opensolaris.org/os/licensing.
59663800d2ec04777dae2791dd92aa563faf94c8Evan Hunt# See the License for the specific language governing permissions
1ca2cf024391992fe14b2df7d3ae0f575d074452Evan Hunt# and limitations under the License.
0726d872f6f36901ea09321df57084614e5bb6faTinderbox User#
1ca2cf024391992fe14b2df7d3ae0f575d074452Evan Hunt# When distributing Covered Code, include this CDDL HEADER in each
a2c370ca12bb0360ff7e969474ead3f788c65fffTinderbox User# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
8de3f14f1c300c3e1ed99084cc03485b42c92bf1Tinderbox User# If applicable, add the following below this CDDL HEADER, with the
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# CDDL HEADER END
2b7254075b883d70852a2757210793603085a0f1Tinderbox User#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# uts/sun4u/excalibur/Makefile
b91d11bfcc30b96f2c80f3a76d12e3dcc8597a68Mark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# Copyright 2005 Sun Microsystems, Inc. All rights reserved.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Use is subject to license terms.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#pragma ident "%Z%%M% %I% %E% SMI"
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# This makefile drives the production of the sun4u excalibur platform
415d630b6309922caee8469384a6fab75cf05032Mark Andrews# module.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
415d630b6309922caee8469384a6fab75cf05032Mark Andrews# sun4u implementation architecture dependent
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
415d630b6309922caee8469384a6fab75cf05032Mark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews#
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsUTSBASE = ../..
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
415d630b6309922caee8469384a6fab75cf05032Mark Andrews# Include common rules.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
415d630b6309922caee8469384a6fab75cf05032Mark Andrewsinclude $(UTSBASE)/sun4u/excalibur/Makefile.excalibur
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox Userdef := TARGET= def
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsall := TARGET= all
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox Userinstall := TARGET= install
7fcb9dbe08bc0111c5e03e953ba889f86a38b854Tinderbox Userinstall_h := TARGET= install_h
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Huntclean := TARGET= clean
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrewsclobber := TARGET= clobber
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrewslint := TARGET= lint
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Huntlintlib := TARGET= lintlib
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrewsmodlintlib := TARGET= modlintlib
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrewsmodlist := TARGET= modlist
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrewsmodlist := NO_STATE= -K $$MODSTATE$$$$
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Huntclean.lint := TARGET= clean.lint
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrewscheck := TARGET= check
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# Default build targets.
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews.KEEP_STATE:
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsdef all clean clean.lint clobber modlist: $(EXCALIBUR_KMODS)
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrewsmodlintlib: $(EXCALIBUR_KMODS)
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# EXPORT DELETE START
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# aes256 is delivered in the SUNWcryr package which is removed from
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# the EXPORT_SRC build.
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox UserEXCALIBUR_CRYPTO_LINKS += aes256
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# EXPORT DELETE END
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsinstall: $(ROOT_EXCALIBUR_DIR) \
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrews $(USR_EXCALIBUR_DIR) \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $(USR_EXCALIBUR_INC_DIR) \
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews $(USR_EXCALIBUR_SBIN_DIR) \
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User $(USR_EXCALIBUR_LIB_DIR) \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $(EXCALIBUR_CRYPTO_LINKS) \
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User $(EXCALIBUR_KMODS)
3ccf87473f7cf6d9faac156df38a935a238f96fdTinderbox User
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrewscheck install_h:
b378314925e78f21853a98cec924788ce1822c6cTinderbox User
ebe53509ca55a141131c104b6d722236b606e0efTinderbox Userlint: modlintlib
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews
415d630b6309922caee8469384a6fab75cf05032Mark Andrews#
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt# The 'lint.platmod' target lints the excalibur platform module against the sun4u
415d630b6309922caee8469384a6fab75cf05032Mark Andrews# kernel. This ends up doing all the kernel cross-checks, so it takes a couple
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews# of minutes. Due to the low ROI, it's not run by default, but it's a good
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User# idea to run this if you change os/excalibur.c.
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt#
7cc0a5d21ef046bfd630c4769943d896a7d7472cTinderbox UserLINT_LIBS = $(LINT_LIB) \
3ccf87473f7cf6d9faac156df38a935a238f96fdTinderbox User -L$(EXCALIBUR_LINT_LIB_DIR) \
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews -L$(LINT_LIB_DIR) $(LINT_KMODS:%=-l%) \
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User $(CLOSED_LINT_KMODS:%=-l%) \
551e6d2414c4f47d58a9bb0b37f206f915a4f5acTinderbox User -L$(SPARC_LIB_DIR) $(SPARC_LINTS:%=-l%)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox Userlint.platmod: modlintlib
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews @-$(ECHO) "\nExcalibur Platform-dependent module: global crosschecks:"
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User @-$(LINT) $(LINTFLAGS) $(LINT_LIBS) 2>&1 | $(LGREP.2)
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews$(EXCALIBUR_KMODS): FRC
51aeb0ae19596e99b029cfa933e73b76ebec480aTinderbox User @cd $@; pwd; $(MAKE) $(NO_STATE) $(TARGET)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User$(EXCALIBUR_CRYPTO_LINKS): $(ROOT_EXCALIBUR_CRYPTO_DIR_64)
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User -$(RM) $(ROOT_EXCALIBUR_CRYPTO_DIR_64)/$@;
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews $(SYMLINK) $(ROOT_US3_CRYPTO_LINK)/$@ $(ROOT_EXCALIBUR_CRYPTO_DIR_64)/$@
415d630b6309922caee8469384a6fab75cf05032Mark Andrews
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson# EXPORT DELETE START
415d630b6309922caee8469384a6fab75cf05032Mark Andrews
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsEXPORT_SRC:
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User $(RM) Makefile+
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews sed -e "/^# EXPORT DELETE START/,/^# EXPORT DELETE END/d" \
415d630b6309922caee8469384a6fab75cf05032Mark Andrews < Makefile > Makefile+
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews $(MV) Makefile+ Makefile
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews $(CHMOD) 444 Makefile
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# EXPORT DELETE END
415d630b6309922caee8469384a6fab75cf05032Mark Andrews
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson#
415d630b6309922caee8469384a6fab75cf05032Mark Andrews# Include common targets.
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox Userinclude $(UTSBASE)/sun4u/excalibur/Makefile.targ
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews