Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
e334405421979688f2d838805ac67ee47bd62976Mark Andrews#
e334405421979688f2d838805ac67ee47bd62976Mark Andrews# CDDL HEADER START
8aee18709f238406719768b8a6b843a15c5075f8Mark Andrews#
8aee18709f238406719768b8a6b843a15c5075f8Mark Andrews# The contents of this file are subject to the terms of the
8aee18709f238406719768b8a6b843a15c5075f8Mark Andrews# Common Development and Distribution License (the "License").
e78c2b856b9bfbf713fe805224f345f8e8f84e4aEvan Hunt# You may not use this file except in compliance with the License.
e78c2b856b9bfbf713fe805224f345f8e8f84e4aEvan Hunt#
e78c2b856b9bfbf713fe805224f345f8e8f84e4aEvan Hunt# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
e78c2b856b9bfbf713fe805224f345f8e8f84e4aEvan Hunt# or http://www.opensolaris.org/os/licensing.
c0a76b3c0b42a110e14eb56103973944900400c4Mark Andrews# See the License for the specific language governing permissions
c0a76b3c0b42a110e14eb56103973944900400c4Mark Andrews# and limitations under the License.
82f0630bae09598209cc37c1db00ff4356efee27Mark Andrews#
82f0630bae09598209cc37c1db00ff4356efee27Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
82f0630bae09598209cc37c1db00ff4356efee27Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
36fc19f9397ac2469d5432e5eb6ff8774cf60676Mark Andrews# If applicable, add the following below this CDDL HEADER, with the
b44b120c66d9c36f1648f18d169bb4daf4b921afMark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
c87f15dac8bb22ffb3ebf044ee48ce570c87948bMark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
97664670d0e45ec865da407112fceb892133eaf3Mark Andrews#
97664670d0e45ec865da407112fceb892133eaf3Mark Andrews# CDDL HEADER END
97664670d0e45ec865da407112fceb892133eaf3Mark Andrews#
97664670d0e45ec865da407112fceb892133eaf3Mark Andrews#
b5b934a0bb46aded1552a17473652b5a7f4a3274Evan Hunt# uts/sun4u/us/Makefile
b5b934a0bb46aded1552a17473652b5a7f4a3274Evan Hunt#
b5b934a0bb46aded1552a17473652b5a7f4a3274Evan Hunt# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
b5b934a0bb46aded1552a17473652b5a7f4a3274Evan Hunt# Use is subject to license terms.
b5b934a0bb46aded1552a17473652b5a7f4a3274Evan Hunt#
5af195d1dbe4c266a47264111a9293069041209dMark Andrews
5af195d1dbe4c266a47264111a9293069041209dMark Andrews#
5af195d1dbe4c266a47264111a9293069041209dMark Andrews# This makefile drives the production of us (UltraSPARC) driver
5af195d1dbe4c266a47264111a9293069041209dMark Andrews# kernel module.
5af195d1dbe4c266a47264111a9293069041209dMark Andrews#
5a636f9951e0a6968498d588a57cb01161d2a109Mark Andrews# sun4u implementation architecture dependent
5a636f9951e0a6968498d588a57cb01161d2a109Mark Andrews#
8eb30f8dd3c1170406f4f2307964e4c0994494beEvan Hunt
8eb30f8dd3c1170406f4f2307964e4c0994494beEvan Hunt#
8eb30f8dd3c1170406f4f2307964e4c0994494beEvan Hunt# Path to the base of the uts directory tree (usually /usr/src/uts).
8eb30f8dd3c1170406f4f2307964e4c0994494beEvan Hunt#
d48730a446ffffa8d75462a4abefce030425fa64Mark AndrewsUTSBASE = ../..
d48730a446ffffa8d75462a4abefce030425fa64Mark Andrews
d48730a446ffffa8d75462a4abefce030425fa64Mark Andrews#
d48730a446ffffa8d75462a4abefce030425fa64Mark Andrews# Define the module and object file sets.
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark Andrews#
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark AndrewsMODULE = us
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark AndrewsOBJECTS = $(US_OBJS:%=$(OBJS_DIR)/%)
d48730a446ffffa8d75462a4abefce030425fa64Mark AndrewsLINTS = $(US_OBJS:%.o=$(LINTS_DIR)/%.ln)
380c874925f684847d9278b909cf511cb5b0289aShawn RouthierROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE)
380c874925f684847d9278b909cf511cb5b0289aShawn Routhier
380c874925f684847d9278b909cf511cb5b0289aShawn Routhier#
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark Andrews# Include common rules.
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark Andrews#
380c874925f684847d9278b909cf511cb5b0289aShawn Routhierinclude $(UTSBASE)/sun4u/Makefile.sun4u
a27b3757fdd8976ce05e37f391ad9e7ac4638e5dMark Andrews
a27b3757fdd8976ce05e37f391ad9e7ac4638e5dMark Andrews#
a27b3757fdd8976ce05e37f391ad9e7ac4638e5dMark Andrews# Define targets
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark Andrews#
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark AndrewsALL_TARGET = $(BINARY)
7ffe86618c91097b73cde82fb535180dbd5f8e91Mark AndrewsLINT_TARGET = $(MODULE).lint
a27b3757fdd8976ce05e37f391ad9e7ac4638e5dMark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
c9c2ffe729bf24a7fd0f0a234a4a84e67621d414Mark Andrews
c9c2ffe729bf24a7fd0f0a234a4a84e67621d414Mark Andrews#
c9c2ffe729bf24a7fd0f0a234a4a84e67621d414Mark Andrews# lint pass one enforcement
7bce3361868c7c00929e0c1b64a45f24a714972fMark Andrews#
7bce3361868c7c00929e0c1b64a45f24a714972fMark AndrewsCFLAGS += $(CCVERBOSE)
7bce3361868c7c00929e0c1b64a45f24a714972fMark Andrews
7bce3361868c7c00929e0c1b64a45f24a714972fMark Andrews#
7bce3361868c7c00929e0c1b64a45f24a714972fMark Andrews# Turn on doubleword alignment for 64 bit registers
2015023399657c36e9dcc8b5dc35ce20dfc876f0Mark Andrews#
2015023399657c36e9dcc8b5dc35ce20dfc876f0Mark AndrewsCFLAGS += -dalign
2015023399657c36e9dcc8b5dc35ce20dfc876f0Mark Andrews
b2c8cc4f2d61f0593300a5851e26e7ddb30b7e10Mark Andrews#
b2c8cc4f2d61f0593300a5851e26e7ddb30b7e10Mark Andrews# For now, disable these lint checks; maintainers should endeavor
ed83fa75f5657ab2394a701f7ccc169dd9ef48fcMark Andrews# to investigate and remove these for maximum lint coverage.
ed83fa75f5657ab2394a701f7ccc169dd9ef48fcMark Andrews# Please do not carry these forward to new Makefiles.
ed83fa75f5657ab2394a701f7ccc169dd9ef48fcMark Andrews#
9eba1cf5e5420aeded5ed380d9942269fbde90f1Mark AndrewsLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
c470afc7ac0040f1bf7553ce8183b7a1d1726211Mark AndrewsLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
c470afc7ac0040f1bf7553ce8183b7a1d1726211Mark Andrews
506a2177bfafa4321cf1ba27ff4a1d09bac69e14Mark AndrewsCERRWARN += -_gcc=-Wno-parentheses
506a2177bfafa4321cf1ba27ff4a1d09bac69e14Mark AndrewsCERRWARN += -_gcc=-Wno-uninitialized
506a2177bfafa4321cf1ba27ff4a1d09bac69e14Mark Andrews
082f42dcf2f38509a8c842013548f680a6ad06f3Mark Andrews#
082f42dcf2f38509a8c842013548f680a6ad06f3Mark Andrews# Default build targets.
082f42dcf2f38509a8c842013548f680a6ad06f3Mark Andrews#
c75523bcb30c2b8426ee7cb226d9b429c337325bMark Andrews.KEEP_STATE:
c75523bcb30c2b8426ee7cb226d9b429c337325bMark Andrews
c75523bcb30c2b8426ee7cb226d9b429c337325bMark Andrewsdef: $(DEF_DEPS)
c75523bcb30c2b8426ee7cb226d9b429c337325bMark Andrews
c75523bcb30c2b8426ee7cb226d9b429c337325bMark Andrewsall: $(ALL_DEPS)
c75523bcb30c2b8426ee7cb226d9b429c337325bMark Andrews
70ba55161bbecab6b58ad4d2203741e9b57951bcMark Andrewsclean: $(CLEAN_DEPS)
70ba55161bbecab6b58ad4d2203741e9b57951bcMark Andrews
70ba55161bbecab6b58ad4d2203741e9b57951bcMark Andrewsclobber: $(CLOBBER_DEPS)
70ba55161bbecab6b58ad4d2203741e9b57951bcMark Andrews
ad9107efaaae2407cf11bf0c55407d8daed2e2d4Mark Andrewslint: $(LINT_DEPS)
ad9107efaaae2407cf11bf0c55407d8daed2e2d4Mark Andrews
3f9f14055b85c2dda341b341de0e65d4639542c5Mark Andrewsmodlintlib: $(MODLINTLIB_DEPS)
3f9f14055b85c2dda341b341de0e65d4639542c5Mark Andrews
75f48cecb3289c6d23a45127da65f18937160341Mark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
75f48cecb3289c6d23a45127da65f18937160341Mark Andrews
75f48cecb3289c6d23a45127da65f18937160341Mark Andrewsinstall: $(INSTALL_DEPS)
8fb412590e03dcf9de775dad1eb7acf320b575edMark Andrews
8fb412590e03dcf9de775dad1eb7acf320b575edMark Andrews#
8fb412590e03dcf9de775dad1eb7acf320b575edMark Andrews# Include common targets.
8fb412590e03dcf9de775dad1eb7acf320b575edMark Andrews#
1b42401954a8770d82a168ae1ac06ce66862fd25Mark Andrewsinclude $(UTSBASE)/sun4u/Makefile.targ
1b42401954a8770d82a168ae1ac06ce66862fd25Mark Andrews