Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
ca18417083383060354c1d2e053c385ac0173d97Mark Andrews#
ca18417083383060354c1d2e053c385ac0173d97Mark Andrews# CDDL HEADER START
ca18417083383060354c1d2e053c385ac0173d97Mark Andrews#
ca18417083383060354c1d2e053c385ac0173d97Mark Andrews# The contents of this file are subject to the terms of the
3ca4b8062f845489a9c7e33a4af63cf9c863c1d4Mark Andrews# Common Development and Distribution License (the "License").
3ca4b8062f845489a9c7e33a4af63cf9c863c1d4Mark Andrews# You may not use this file except in compliance with the License.
3ca4b8062f845489a9c7e33a4af63cf9c863c1d4Mark Andrews#
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews# or http://www.opensolaris.org/os/licensing.
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews# See the License for the specific language governing permissions
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews# and limitations under the License.
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews#
72ddc4cef9c6a6de53aae530dea1ddbb90631131Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
ad4b2f37e0f51a90c160edbe8633589ce42e60b9Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
ad4b2f37e0f51a90c160edbe8633589ce42e60b9Mark Andrews# If applicable, add the following below this CDDL HEADER, with the
ad4b2f37e0f51a90c160edbe8633589ce42e60b9Mark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
ad4b2f37e0f51a90c160edbe8633589ce42e60b9Mark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
b589c679027849d3dcc34aa8dd4fc78f583be107Mark Andrews#
b589c679027849d3dcc34aa8dd4fc78f583be107Mark Andrews# CDDL HEADER END
b589c679027849d3dcc34aa8dd4fc78f583be107Mark Andrews#
b589c679027849d3dcc34aa8dd4fc78f583be107Mark Andrews#
9c1eb2279d715188bf631d98d103f6f81a3c76fbMark Andrews# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
9c1eb2279d715188bf631d98d103f6f81a3c76fbMark Andrews# Use is subject to license terms.
edfcbabd60f8479b72d91bcc2d2082a36ace4003Mark Andrews#
edfcbabd60f8479b72d91bcc2d2082a36ace4003Mark Andrews# Copyright (c) 2010, Intel Corporation.
f95231835fdcd8d5f58486c9f9993602f27fe157Mark Andrews# All rights reserved.
f95231835fdcd8d5f58486c9f9993602f27fe157Mark Andrews#
21f1794606dce19928cf455029e173321f166380Mark Andrews# This makefile drives the production of the dr driver module.
21f1794606dce19928cf455029e173321f166380Mark Andrews#
21f1794606dce19928cf455029e173321f166380Mark Andrews# i86pc architecture dependent
3425cd6803ca599c4c1ebf7cab7399f0b6913842Mark Andrews#
0cb25226fba18befbe40156c93845f2fc9bf3524Mark Andrews
0cb25226fba18befbe40156c93845f2fc9bf3524Mark Andrews#
2610933abd985bdea28801c35d740d2cab2f137aMark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
2610933abd985bdea28801c35d740d2cab2f137aMark Andrews#
7a857bdb6828e75eec5a7080e4670ce199875922Mark AndrewsUTSBASE = ../..
7a857bdb6828e75eec5a7080e4670ce199875922Mark AndrewsPLATFORM = i86pc
68aff652083dd10323ea9e9d09cd0539dc7a66f4Mark Andrews
fc87397df60d3c5e5d9900ff5ac82da29fe1dbb7Mark Andrews#
a22f967b7e3589dab640d2cc65fd202d077a9d90Mark Andrews# Define the module and object file sets.
a22f967b7e3589dab640d2cc65fd202d077a9d90Mark Andrews#
a22f967b7e3589dab640d2cc65fd202d077a9d90Mark AndrewsMODULE = dr
c6385d5575f964e6ee1916679985497f6bac550dMark AndrewsOBJECTS = $(DR_OBJS:%=$(OBJS_DIR)/%)
c6385d5575f964e6ee1916679985497f6bac550dMark AndrewsLINTS = $(DR_OBJS:%.o=$(LINTS_DIR)/%.ln)
1a4d687359d89ff3b3e4e3f7acc4b6b8d8c982e9Mark AndrewsROOTMODULE = $(ROOT_PSM_DRV_DIR)/$(MODULE)
397f86cf2767cabfb8b4238188187e2abc8a48d1Mark AndrewsCONF_SRCDIR = $(UTSBASE)/i86pc/io/dr
051706a29a73416fbae116952dd6b6bdda765538Mark Andrews
c7c5645e062287294326fdb92e7e9b831950c4f3Mark Andrews#
c7c5645e062287294326fdb92e7e9b831950c4f3Mark Andrews# Include common rules.
051706a29a73416fbae116952dd6b6bdda765538Mark Andrews#
f5af519ab547bc80c51387529103e4e852a1171eMark Andrewsinclude $(UTSBASE)/i86pc/Makefile.i86pc
f5af519ab547bc80c51387529103e4e852a1171eMark Andrews
f5af519ab547bc80c51387529103e4e852a1171eMark Andrews#
f5af519ab547bc80c51387529103e4e852a1171eMark Andrews# Define targets
051706a29a73416fbae116952dd6b6bdda765538Mark Andrews#
b0c2141b236832664119c9c7c647359b0c7fead4Mark AndrewsALL_TARGET = $(BINARY) $(SRC_CONFILE)
b0c2141b236832664119c9c7c647359b0c7fead4Mark AndrewsLINT_TARGET = $(MODULE).lint
182a34004c7c48e2c1626f3ce7e787f413955126Mark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
182a34004c7c48e2c1626f3ce7e787f413955126Mark Andrews
182a34004c7c48e2c1626f3ce7e787f413955126Mark Andrews#
603658ea65b34c4b57f154b1e2412b4f01866b6bMark Andrews# Overrides
603658ea65b34c4b57f154b1e2412b4f01866b6bMark Andrews#
603658ea65b34c4b57f154b1e2412b4f01866b6bMark AndrewsDEF_BUILDS = $(DEF_BUILDS64)
dd3f0d86f8f0def6bdb7abb5774aa4b9bb0e4a96Mark AndrewsALL_BUILDS = $(ALL_BUILDS64)
163547c0c064251e97c74538c5ede3232b3f0ffaMark Andrews
1c935a070ecf9989b525f9bccd56e4d15f7686f0Mark Andrews#
8ff31bab2f51b171a8eab3a0b8415c64529e116eMark Andrews# lint pass one enforcement
8ff31bab2f51b171a8eab3a0b8415c64529e116eMark Andrews#
07a849ba02aba7e8e869bc82c360fcc4b27eb009Mark AndrewsCFLAGS += $(CCVERBOSE)
07a849ba02aba7e8e869bc82c360fcc4b27eb009Mark Andrews
806c235ecf533b98d068b3f8df9d7abbe1e30cf9Mark AndrewsCERRWARN += -_gcc=-Wno-parentheses
806c235ecf533b98d068b3f8df9d7abbe1e30cf9Mark AndrewsCERRWARN += -_gcc=-Wno-uninitialized
935000aa6e2b9d08f363b2e698a258a458a5a7cfMark AndrewsCERRWARN += -_gcc=-Wno-empty-body
935000aa6e2b9d08f363b2e698a258a458a5a7cfMark Andrews
935000aa6e2b9d08f363b2e698a258a458a5a7cfMark Andrews#
cfa19fe5c9cf279b38e4258a54acb3fd16b9550bMark Andrews# module dependencies
cfa19fe5c9cf279b38e4258a54acb3fd16b9550bMark Andrews#
2fd63cf561135572339d4e2ff0c06695e3dcf1baMark AndrewsLDFLAGS += -dy -Nmisc/drmach_acpi
2fd63cf561135572339d4e2ff0c06695e3dcf1baMark Andrews
2fd63cf561135572339d4e2ff0c06695e3dcf1baMark AndrewsCLEANFILES += $(DR_GENERR)
8ca42f6318be756354b70260050132545aa680d3Mark AndrewsCLEANFILES += $(DR_IO)/dr_err.c
8ca42f6318be756354b70260050132545aa680d3Mark Andrews
8ca42f6318be756354b70260050132545aa680d3Mark Andrews#
8ca42f6318be756354b70260050132545aa680d3Mark Andrews# Default build targets.
8ca42f6318be756354b70260050132545aa680d3Mark Andrews#
8ca42f6318be756354b70260050132545aa680d3Mark Andrews.KEEP_STATE:
7ec0f55f1542d8bb9475bbe93e911d7520f043caMark Andrews
7ec0f55f1542d8bb9475bbe93e911d7520f043caMark Andrewsdef: $(DEF_DEPS)
4cb69e7c919cc43b16852016588af714bc421da3Mark Andrews
4cb69e7c919cc43b16852016588af714bc421da3Mark Andrewsall: $(ALL_DEPS)
ea6fe0d54f36754c195b3b8dac47c81f7993677eMark Andrews
ea6fe0d54f36754c195b3b8dac47c81f7993677eMark Andrewsclean: $(CLEAN_DEPS)
ea6fe0d54f36754c195b3b8dac47c81f7993677eMark Andrews
1c935a070ecf9989b525f9bccd56e4d15f7686f0Mark Andrewsclobber: $(CLOBBER_DEPS)
6bd8cee98332533a4fa705b82ca9ec1606738ba9Mark Andrews
6bd8cee98332533a4fa705b82ca9ec1606738ba9Mark Andrewslint: $(LINT_DEPS)
0c2509b0b9f9e455fa9d347d08f6ba9abd86d418Mark Andrews
0c2509b0b9f9e455fa9d347d08f6ba9abd86d418Mark Andrewsmodlintlib: $(MODLINTLIB_DEPS) lint32
0c2509b0b9f9e455fa9d347d08f6ba9abd86d418Mark Andrews
8b5de9701428e2b5eb50aba96af23dc1186124ddMark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
8b5de9701428e2b5eb50aba96af23dc1186124ddMark Andrews
80b782f356f0692c11b4e52e8dd46ec41704e5a2Mark Andrewsinstall: $(INSTALL_DEPS) $(CONF_INSTALL_DEPS)
80b782f356f0692c11b4e52e8dd46ec41704e5a2Mark Andrews
80b782f356f0692c11b4e52e8dd46ec41704e5a2Mark Andrews#
80b782f356f0692c11b4e52e8dd46ec41704e5a2Mark Andrews# Include common targets.
6a2f7bba6f4df137ab3f781fe07b0b88e72e0b19Mark Andrews#
6a2f7bba6f4df137ab3f781fe07b0b88e72e0b19Mark Andrewsinclude $(UTSBASE)/i86pc/Makefile.targ
b500de3be9ba5318da157364bf9fbbda5f88f203Mark Andrews
6a2f7bba6f4df137ab3f781fe07b0b88e72e0b19Mark Andrews