Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
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 (the "License").
ba9e87b35e561bc7354ce3f4b9685b747b7be507Tinderbox User# You may not use this file except in compliance with the License.
1f9754245cbd5eec2d2a667bb292f62f72386d4bMark Andrews#
59663800d2ec04777dae2791dd92aa563faf94c8Evan Hunt# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# or http://www.opensolaris.org/os/licensing.
1f9754245cbd5eec2d2a667bb292f62f72386d4bMark Andrews# See the License for the specific language governing permissions
59663800d2ec04777dae2791dd92aa563faf94c8Evan Hunt# and limitations under the License.
1ca2cf024391992fe14b2df7d3ae0f575d074452Evan Hunt#
0726d872f6f36901ea09321df57084614e5bb6faTinderbox User# When distributing Covered Code, include this CDDL HEADER in each
1ca2cf024391992fe14b2df7d3ae0f575d074452Evan Hunt# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
a2c370ca12bb0360ff7e969474ead3f788c65fffTinderbox User# If applicable, add the following below this CDDL HEADER, with the
8de3f14f1c300c3e1ed99084cc03485b42c92bf1Tinderbox User# fields enclosed by brackets "[]" replaced with your own identifying
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# CDDL HEADER END
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
2b7254075b883d70852a2757210793603085a0f1Tinderbox User#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Use is subject to license terms.
b91d11bfcc30b96f2c80f3a76d12e3dcc8597a68Mark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark AndrewsUTSBASE = ../..
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
415d630b6309922caee8469384a6fab75cf05032Mark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Define the module and object file sets.
415d630b6309922caee8469384a6fab75cf05032Mark Andrews#
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsMODULE = dld
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox UserOBJECTS = $(DLD_OBJS:%=$(OBJS_DIR)/%)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLINTS = $(DLD_OBJS:%.o=$(LINTS_DIR)/%.ln)
415d630b6309922caee8469384a6fab75cf05032Mark AndrewsROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark AndrewsCONF_SRCDIR = $(UTSBASE)/common/io/dld
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsROOTDEVLINK = $(ROOT)/dev/$(MODULE)
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
415d630b6309922caee8469384a6fab75cf05032Mark Andrews# Include common rules.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
415d630b6309922caee8469384a6fab75cf05032Mark Andrewsinclude $(UTSBASE)/intel/Makefile.intel
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Define targets
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark AndrewsALL_TARGET = $(BINARY) $(SRC_CONFILE)
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntLINT_TARGET = $(MODULE).lint
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# Overrides
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark AndrewsCFLAGS += $(CCVERBOSE)
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntLDFLAGS += -dy -N misc/dls -N misc/mac
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark AndrewsINC_PATH += -I$(UTSBASE)/common/io/bpf
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# For now, disable these lint checks; maintainers should endeavor
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# to investigate and remove these for maximum lint coverage.
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# Please do not carry these forward to new Makefiles.
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic UpdaterLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox UserLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsCERRWARN += -_gcc=-Wno-uninitialized
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterCERRWARN += -_gcc=-Wno-type-limits
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsCERRWARN += -_gcc=-Wno-parentheses
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Default build targets.
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews.KEEP_STATE:
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsdef: $(DEF_DEPS)
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox Userall: $(ALL_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox Userclean: $(CLEAN_DEPS)
3ccf87473f7cf6d9faac156df38a935a238f96fdTinderbox User
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrewsclobber: $(CLOBBER_DEPS)
b378314925e78f21853a98cec924788ce1822c6cTinderbox User
ebe53509ca55a141131c104b6d722236b606e0efTinderbox Userlint: $(LINT_DEPS)
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews
415d630b6309922caee8469384a6fab75cf05032Mark Andrewsmodlintlib: $(MODLINTLIB_DEPS)
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
415d630b6309922caee8469384a6fab75cf05032Mark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox Userinstall: $(INSTALL_DEPS) $(ROOTDEVLINK)
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
7cc0a5d21ef046bfd630c4769943d896a7d7472cTinderbox User$(ROOTDEVLINK):
3ccf87473f7cf6d9faac156df38a935a238f96fdTinderbox User -$(RM) $@; $(SYMLINK) ../devices/pseudo/$(@F)@0:ctl $@
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox User#
551e6d2414c4f47d58a9bb0b37f206f915a4f5acTinderbox User# Include common targets.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
9218b940febade3085fd6d95a15e67d5f94833f0Tinderbox Userinclude $(UTSBASE)/intel/Makefile.targ
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews