Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder#
c63ebf815c8a874525cf18670ad74847f7fc7b26Christian Maeder# CDDL HEADER START
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder#
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# The contents of this file are subject to the terms of the
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder# Common Development and Distribution License (the "License").
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian 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
43b4c41fbb07705c9df321221ab9cb9832460407Christian Maeder# or http://www.opensolaris.org/os/licensing.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder# See the License for the specific language governing permissions
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian Maeder# and limitations under the License.
f2f9df2e17e70674f0bf426ed1763c973ee4cde0Christian Maeder#
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maeder# When distributing Covered Code, include this CDDL HEADER in each
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maeder# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder# If applicable, add the following below this CDDL HEADER, with the
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder# fields enclosed by brackets "[]" replaced with your own identifying
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder# information: Portions Copyright [yyyy] [name of copyright owner]
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
a1ed34933c266ce85066acb0d7b20c90cb8eb213Christian Maeder# CDDL HEADER END
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder#
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich#
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder#
4d56f2fa72e4aec20eb827c11ed49c8cbb7014bdChristian Maeder# This makefile drives the production of the fct driver for
4cb215739e9ab13447fa21162482ebe485b47455Christian Maeder# COMSTAR.
8ef75f1cc0437656bf622cec5ac9e8ea221da8f2Christian Maeder
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich#
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder# Path to the base of the uts directory tree (usually /usr/src/uts).
74eed04be26f549d2f7ca35c370e1c03879b28b1Christian Maeder#
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder
3e8b136f23ed57d40ee617f49bcac37830b58cabChristian Maeder
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian MaederUTSBASE = ../..
bab2d88d650448628730ed3b65c9f99c52500e8cChristian Maeder
3e8b136f23ed57d40ee617f49bcac37830b58cabChristian MaederARCHDIR:sh = cd ..; basename `pwd`
ef9e8535c168d3f774d9e74368a2317a9eda5826Christian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
e593b89bfd4952698dc37feced21cefe869d87a2Christian Maeder# Define the module and object file sets.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian MaederMODULE = fct
c3053d57f642ca507cdf79512e604437c4546cb9Christian MaederOBJECTS = $(FCT_OBJS:%=$(OBJS_DIR)/%)
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian MaederLINTS = $(FCT_OBJS:%.o=$(LINTS_DIR)/%.ln)
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian MaederROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
f4a2a20e49f41b2afa657e5e64d9e349c7faa091Christian MaederCONF_SRCDIR = $(UTSBASE)/common/io/comstar/port/fct
dcbd32289a7bdf1e6edd06c6ab0698c6a9dbf37aChristian Maeder
05a62e84edac8c64de04f8349dee418598d216b9Christian Maeder#
1cd4f6541984962658add5cfaa9f28a93879881bChristian Maeder# Include common rules.
1aee4aaddde105264c1faf394d88e302c05094ffChristian Maeder#
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maederinclude ../Makefile.$(ARCHDIR)
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder#
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder# Define targets
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder#
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian MaederALL_TARGET = $(BINARY) $(SRC_CONFILE)
456238178f89e5a3de2988ee6c8af924297d52d9Christian MaederLINT_TARGET = $(MODULE).lint
d54cd08a4cfa26256c38d8ed12c343adbfe1a0e3Christian MaederINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
308834907a120fd8771e18292ed2ca9cd767c12dChristian Maeder
bab2d88d650448628730ed3b65c9f99c52500e8cChristian Maeder#
bab2d88d650448628730ed3b65c9f99c52500e8cChristian Maeder# Overrides and depends_on
8cacad2a09782249243b80985f28e9387019fe40Christian Maeder#
6a2dad705deefd1b7a7e09b84fd2d75f2213be47Christian MaederMODSTUBS_DIR = $(OBJS_DIR)
a7c27282e71cf4505026645f96d4f5cb8a284e32Christian MaederLDFLAGS += -dy -Ndrv/stmf
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder
014dc30f64ec25e4790cca987d4d1e6635430510Christian MaederC99MODE= -xc99=%all
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus LuettichC99LMODE= -Xc99=%all
6aea82c63ba1d2efc0329bc784a14e521469ec20Christian Maeder
4ba08bfca0cc8d9da65397b8dfd2654fdb4c0e62Christian Maeder#
feca1d35123d8c31aee238c9ce79947b0bf65494Christian Maeder# For now, disable these lint checks; maintainers should endeavor
431d34c7007a787331c4e5ec997badb0f8190fc7Christian Maeder# to investigate and remove these for maximum lint coverage.
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian Maeder#
db675e8302ddb0d6528088ce68f5e98a00e890e3Christian MaederLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
db675e8302ddb0d6528088ce68f5e98a00e890e3Christian MaederLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian MaederLINTTAGS += -erroff=E_IF_ELSE_ANNOTATION
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian MaederCERRWARN += -_gcc=-Wno-unused-label
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian MaederCERRWARN += -_gcc=-Wno-switch
23ffcc44ca8612feccbd8fda63fa5be7ab5f9dc3Christian MaederCERRWARN += -_gcc=-Wno-uninitialized
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder#
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder# Default build targets.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder#
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder.KEEP_STATE:
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maederdef: $(DEF_DEPS)
9e748851c150e1022fb952bab3315e869aaf0214Christian Maeder
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maederall: $(ALL_DEPS)
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maeder
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maederclean: $(CLEAN_DEPS)
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maederclobber: $(CLOBBER_DEPS)
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
6a79849bed67264c396dddb3e9c184bdfc1a1bc9Christian Maederlint: $(LINT_DEPS)
a5e5b8c3e5c11177e5034ef2423813a5d28979edChristian Maeder
bc8cbf12aa172bf5673b92a9e7a0151d4aa4c315Christian Maedermodlintlib: $(MODLINTLIB_DEPS)
2d130d212db7208777ca896a7ecad619a8944971Christian Maeder
2d130d212db7208777ca896a7ecad619a8944971Christian Maederclean.lint: $(CLEAN_LINT_DEPS)
51d769d55d88dfa88bdf54bee78d8fa85a2deba8Christian Maeder
a5e5b8c3e5c11177e5034ef2423813a5d28979edChristian Maederinstall: $(INSTALL_DEPS)
a42fbfe7becf0eae2d624123eb0db73a794593f0Christian Maeder
a42fbfe7becf0eae2d624123eb0db73a794593f0Christian Maeder#
b363eb04791e7f735633b9b4088502c2bc50ebfcChristian Maeder# Include common targets.
a42fbfe7becf0eae2d624123eb0db73a794593f0Christian Maeder#
1cd4f6541984962658add5cfaa9f28a93879881bChristian Maederinclude ../Makefile.targ
1cd4f6541984962658add5cfaa9f28a93879881bChristian Maeder