Makefile revision bf56214c0556fa6864189c826d39dbe156bb22a0
280a8a0544b4aeb52414d20e8c6e6c5b1108562eTinderbox User#
59602f2a7c4e4809941583bed3e94cd26e628f1aTinderbox User# CDDL HEADER START
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater#
5affecff6e148a8e124d03f5dbac0da11e30dcc5Tinderbox User# The contents of this file are subject to the terms of the
19558a04decde0e7261d489d92d04ad88104217bTinderbox User# Common Development and Distribution License (the "License").
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews# You may not use this file except in compliance with the License.
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews#
969eaf7df8ac651946f76b6631ff5db568c11ef6Tinderbox User# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
03ebc228ee3725738b067b6bd7082a9a731822a1Tinderbox User# or http://www.opensolaris.org/os/licensing.
f4ee48be3994797a8332b86c101db4d7b54799ceTinderbox User# See the License for the specific language governing permissions
a2c370ca12bb0360ff7e969474ead3f788c65fffTinderbox User# and limitations under the License.
8de3f14f1c300c3e1ed99084cc03485b42c92bf1Tinderbox User#
e5a6871cd0635ecdb2bf792316a2d8c53206f4b2Tinderbox User# When distributing Covered Code, include this CDDL HEADER in each
950d203b64f512b85fcc093ee1e9e3e531a1aea3Tinderbox User# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# If applicable, add the following below this CDDL HEADER, with the
03ebc228ee3725738b067b6bd7082a9a731822a1Tinderbox User# fields enclosed by brackets "[]" replaced with your own identifying
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupont# information: Portions Copyright [yyyy] [name of copyright owner]
e676a596869d8a80a644c99a848afb53d1c5975eMark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# CDDL HEADER END
b91d11bfcc30b96f2c80f3a76d12e3dcc8597a68Mark Andrews#
d5637bdbb931ff79fced3d4858d83212ea58ed15Tinderbox User#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Use is subject to license terms.
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupont#
d5637bdbb931ff79fced3d4858d83212ea58ed15Tinderbox User# uts/sparc/ibcm/Makefile
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User# This makefile drives the production of the ibcm kernel
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# module. SPARC architecture dependent
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt# ident "%Z%%M% %I% %E% SMI"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan HuntUTSBASE = ../..
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Define the module and object file sets.
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User#
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsMODULE = ibcm
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan HuntOBJECTS = $(IBCM_OBJS:%=$(OBJS_DIR)/%)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLINTS = $(IBCM_OBJS:%.o=$(LINTS_DIR)/%.ln)
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox UserROOTMODULE = $(ROOT_MISC_DIR)/$(MODULE)
03ebc228ee3725738b067b6bd7082a9a731822a1Tinderbox UserWARLOCK_OUT = $(IBCM_OBJS:%.o=%.ll)
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntWARLOCK_OK = $(MODULE).ok
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox UserWLCMD_DIR = $(UTSBASE)/common/io/warlock
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# Include common rules.
3759f10fc543747668b1ca4b4671f35b0dea8445Francis Dupont#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updaterinclude $(UTSBASE)/sparc/Makefile.sparc
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User#
827f8cccb5280f4da66c46186e792d1cb9d73503Mark Andrews# Define targets
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox UserALL_TARGET = $(BINARY)
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterLINT_TARGET = $(MODULE).lint
3759f10fc543747668b1ca4b4671f35b0dea8445Francis DupontINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater# Overrides.
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan HuntALL_BUILDS = $(ALL_BUILDSONLY64)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsDEF_BUILDS = $(DEF_BUILDSONLY64)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# lint pass one enforcement
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan HuntCFLAGS += $(CCVERBOSE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# depends on misc/ibtl and misc/ibmf
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLDFLAGS += -dy -Nmisc/ibtl -Nmisc/ibmf
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# For now, disable these lint checks; maintainers should endeavor
015055b6e23f5c08f6a5b34726f90b62597e9e45Tinderbox User# to investigate and remove these for maximum lint coverage.
03ebc228ee3725738b067b6bd7082a9a731822a1Tinderbox User# Please do not carry these forward to new Makefiles.
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark Andrews#
b91d11bfcc30b96f2c80f3a76d12e3dcc8597a68Mark AndrewsLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
b91d11bfcc30b96f2c80f3a76d12e3dcc8597a68Mark AndrewsLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
fec6e13f2d1e69fe1c2b8fac36f732f124cf5398Mark AndrewsLINTTAGS += -erroff=E_STATIC_UNUSED
2ae159b376dac23870d8005563c585acf85a4b5aEvan HuntLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt#
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews# Default build targets.
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt#
2ae159b376dac23870d8005563c585acf85a4b5aEvan Hunt.KEEP_STATE:
7cc0a5d21ef046bfd630c4769943d896a7d7472cTinderbox User
e76dfff967cfbe00f4d1540434832e4499a9cd83Tinderbox Userdef: $(DEF_DEPS)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
549c517e2ecad52bb1d32f08920e29d4e8cda71eTinderbox Userall: $(ALL_DEPS)
549c517e2ecad52bb1d32f08920e29d4e8cda71eTinderbox User
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewsclean: $(CLEAN_DEPS)
549c517e2ecad52bb1d32f08920e29d4e8cda71eTinderbox User $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
e40c4e4c17d4df338e2a7db0f84d8dbb3858964cTinderbox Userclobber: $(CLOBBER_DEPS)
3bd8b5a8fb126e45c67ff53b68183c889cc27918Tinderbox User $(RM) $(WARLOCK_OUT) $(WARLOCK_OK)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
b91d11bfcc30b96f2c80f3a76d12e3dcc8597a68Mark Andrewslint: $(LINT_DEPS)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
e40c4e4c17d4df338e2a7db0f84d8dbb3858964cTinderbox Usermodlintlib: $(MODLINTLIB_DEPS) lint32
aef6cf0f147a5014d4891c9689b9f463399e16e7Tinderbox User
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafssoninstall: $(INSTALL_DEPS)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt# Include common targets.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox Userinclude $(UTSBASE)/sparc/Makefile.targ
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews#
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt# Defines for local commands.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserWARLOCK = warlock
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonWLCC = wlcc
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox UserTOUCH = touch
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark AndrewsTEST = test
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewswarlock: $(WARLOCK_OK)
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson$(WARLOCK_OK): $(WARLOCK_OUT) $(WLCMD_DIR)/ibcm.wlcmd
9ecb5d33470ebfb3719a1b8d56bcefdf4b27f7b2Tinderbox User $(WARLOCK) -c $(WLCMD_DIR)/ibcm.wlcmd $(WARLOCK_OUT)
e813f036c8251b6d9d2a72fa84f80c2c9d2795afMark Andrews $(TOUCH) $@
30370d905e9be3be7d9b947fd432bacecbb13bb9Evan Hunt
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews%.ll: $(UTSBASE)/common/io/ib/mgt/ibcm/%.c \
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrews $(UTSBASE)/common/sys/ib/mgt/ibcm/ibcm_impl.h
03ebc228ee3725738b067b6bd7082a9a731822a1Tinderbox User $(WLCC) $(CPPFLAGS) -DDEBUG -o $@ $<
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews
e40c4e4c17d4df338e2a7db0f84d8dbb3858964cTinderbox Userwarlock_ddi.files:
a450977e98155f6e828fe6f8d52cf24674231831Mark Andrews @cd ../warlock; pwd; $(MAKE) warlock
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews