Makefile revision 337fc9e235877b459e389f54daf9833bbc645439
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder#
c63ebf815c8a874525cf18670ad74847f7fc7b26Christian Maeder# CDDL HEADER START
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
25cc5fbba63f84b47e389af749f55abbbde71c8cChristian Maeder# The contents of this file are subject to the terms of the
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# Common Development and Distribution License (the "License").
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder# You may not use this file except in compliance with the License.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder#
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# or http://www.opensolaris.org/os/licensing.
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder# See the License for the specific language governing permissions
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# and limitations under the License.
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder#
f2f9df2e17e70674f0bf426ed1763c973ee4cde0Christian Maeder# When distributing Covered Code, include this CDDL HEADER in each
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# If applicable, add the following below this CDDL HEADER, with the
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# fields enclosed by brackets "[]" replaced with your own identifying
68d10d143f29fcff3c637ba24f90e983995ceae6Christian Maeder# information: Portions Copyright [yyyy] [name of copyright owner]
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettich#
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettich# CDDL HEADER END
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettich#
a53841f6d6e86ac751c12a33dc8aadf53f59d977Klaus Luettich#
a737caf82de97c1907027c03e4b4509eb492b4b8Christian Maeder# uts/i86pc/npe/Makefile
68d10d143f29fcff3c637ba24f90e983995ceae6Christian Maeder#
96646aed2ae087b942ae23f15bbe729a8f7c43d3Christian Maeder# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
01e383014b555bbcf639c0ca60c5810b3eff83c0Christian Maeder# Use is subject to license terms.
3b06e23643a9f65390cb8c1caabe83fa7e87a708Till Mossakowski#
9dac90ec2be2a72e03893095461960d483fe2fc2Christian Maeder#ident "%Z%%M% %I% %E% SMI"
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich#
ce8b15da31cd181b7e90593cbbca98f47eda29d6Till Mossakowski# This makefile drives the production of the PCI-E nexus driver
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder#
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder# i86pc implementation architecture dependent
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
a1ed34933c266ce85066acb0d7b20c90cb8eb213Christian Maeder#
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder# Path to the base of the uts directory tree (usually /usr/src/uts).
8410667510a76409aca9bb24ff0eda0420088274Christian Maeder#
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian MaederUTSBASE = ../..
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
8410667510a76409aca9bb24ff0eda0420088274Christian Maeder#
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich# Define the module and object file sets.
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder#
ad270004874ce1d0697fb30d7309f180553bb315Christian MaederMODULE = npe
4d56f2fa72e4aec20eb827c11ed49c8cbb7014bdChristian MaederOBJECTS = $(PCI_E_NEXUS_OBJS:%=$(OBJS_DIR)/%)
4cb215739e9ab13447fa21162482ebe485b47455Christian MaederLINTS = $(PCI_E_NEXUS_OBJS:%.o=$(LINTS_DIR)/%.ln)
8ef75f1cc0437656bf622cec5ac9e8ea221da8f2Christian MaederROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE)
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
356fa49fe3e6a8398f92d13e9f920d0f093697ecChristian Maeder# Include common rules.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
55adfe57a4de1f36adc3e3bfc16f342e44a7d444Christian Maederinclude $(UTSBASE)/i86pc/Makefile.i86pc
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder
8d97ef4f234681b11bb5924bd4d03adef858d2d2Christian Maeder#
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder# Define targets
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
e593b89bfd4952698dc37feced21cefe869d87a2Christian MaederALL_TARGET = $(BINARY)
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian MaederLINT_TARGET = $(MODULE).lint
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder#
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder# depends on misc/pcihp, misc/acpica and misc/pcie
f041c9a6bda23de33a38490e35b831ae18d96b45Christian Maeder#
7cc09dd93962a2155c34d209d1d4cd7d7b838264Christian Maeder# For PCI Hotplug support, the misc/pcihp module provides devctl control
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder# device and cb_ops functions to support hotplug operations.
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder#
c3053d57f642ca507cdf79512e604437c4546cb9Christian Maeder# acpica supplies ACPI access routines
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder#
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder# pcie supplies PCI Express fabric error support
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder#
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian MaederLDFLAGS += -dy -Nmisc/pcihp -Nmisc/acpica -Nmisc/pcie
2c9df69accd8924e7cef3bf8f686626958499c7aChristian Maeder
c2fcc35abb03cf0b4ca4b050efeb10827f38c322Christian Maeder#
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder# Name of the module is needed by the source, to distinguish from other
356fa49fe3e6a8398f92d13e9f920d0f093697ecChristian Maeder# PCI/PCI-express nexi
356fa49fe3e6a8398f92d13e9f920d0f093697ecChristian Maeder#
4ed0007ac9caea5b468f202521352d153481423cChristian MaederCFLAGS += -D_MODULE_NAME="\"$(MODULE)\""
356fa49fe3e6a8398f92d13e9f920d0f093697ecChristian MaederLINTFLAGS += -D_MODULE_NAME="\"$(MODULE)\""
356fa49fe3e6a8398f92d13e9f920d0f093697ecChristian Maeder
0206ab93ef846e4e0885996d052b9b73b9dc66b0Christian Maeder#
f13d1e86e58da53680e78043e8df182eed867efbChristian Maeder# For now, disable these lint checks; maintainers should endeavor
c2a4d8ae266aa37cc922eba97077520229a19902Christian Maeder# to investigate and remove these for maximum lint coverage.
79e80c4b3f0ebb337d84415a50f29ccfc793e68bChristian Maeder# Please do not carry these forward to new Makefiles.
79e80c4b3f0ebb337d84415a50f29ccfc793e68bChristian Maeder#
79e80c4b3f0ebb337d84415a50f29ccfc793e68bChristian MaederLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
79e80c4b3f0ebb337d84415a50f29ccfc793e68bChristian MaederLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
757e6c79ec40491d45dc72c82b5eb59a386634b0Jian Chun Wang
ecf76bc89d9a2ecd7ac7310d30654b9a79d97d62Klaus Luettich#
ecf76bc89d9a2ecd7ac7310d30654b9a79d97d62Klaus Luettich# Default build targets.
ecf76bc89d9a2ecd7ac7310d30654b9a79d97d62Klaus Luettich#
36f63902db2b3463faa9f59912ad106e2d5aaa24Klaus Luettich.KEEP_STATE:
36f63902db2b3463faa9f59912ad106e2d5aaa24Klaus Luettich
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettichdef: $(DEF_DEPS)
5ad5dffe06818a13e1632b1119fbca7881085fc1Dominik Luecke
8cacad2a09782249243b80985f28e9387019fe40Christian Maederall: $(ALL_DEPS)
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder
a7c27282e71cf4505026645f96d4f5cb8a284e32Christian Maederclean: $(CLEAN_DEPS)
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder
8a28707e9155465c6f2236a06eac6580a65c7025Christian Maederclobber: $(CLOBBER_DEPS)
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich
797ccd67cb8ae127be097cd43448801b673e3b69Christian Maederlint: $(LINT_DEPS)
797ccd67cb8ae127be097cd43448801b673e3b69Christian Maeder
431d34c7007a787331c4e5ec997badb0f8190fc7Christian Maedermodlintlib: $(MODLINTLIB_DEPS)
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
d3ae0072823e2ef0d41d4431fcc768e66489c20eChristian Maederclean.lint: $(CLEAN_LINT_DEPS)
9e748851c150e1022fb952bab3315e869aaf0214Christian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maederinstall: $(INSTALL_DEPS)
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
9e748851c150e1022fb952bab3315e869aaf0214Christian Maeder#
9e748851c150e1022fb952bab3315e869aaf0214Christian Maeder# Include common targets.
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder#
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maederinclude $(UTSBASE)/i86pc/Makefile.targ
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder