Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews#
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews# CDDL HEADER START
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews#
86548554f6180bbe051c8cd8f03c93fc9b6a7825Mark Andrews# The contents of this file are subject to the terms of the
86548554f6180bbe051c8cd8f03c93fc9b6a7825Mark Andrews# Common Development and Distribution License (the "License").
86548554f6180bbe051c8cd8f03c93fc9b6a7825Mark Andrews# You may not use this file except in compliance with the License.
5ed76fa7ea83d3ce7a33d365aa3b84410c3b8773Mark Andrews#
5ed76fa7ea83d3ce7a33d365aa3b84410c3b8773Mark Andrews# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews# or http://www.opensolaris.org/os/licensing.
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews# See the License for the specific language governing permissions
ad3b537a241f40bbb3fdc4de252881c42645021bMark Andrews# and limitations under the License.
b21b49a1d43dbc44d2b15674ce03a13562165566Mark Andrews#
b21b49a1d43dbc44d2b15674ce03a13562165566Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
b21b49a1d43dbc44d2b15674ce03a13562165566Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
ea38808b7dc1b2e760f18f2cc3ae07deaf15ba1aMark Andrews# If applicable, add the following below this CDDL HEADER, with the
de6ceebf98bedee0b1e1e81d078befbd728b801cMark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews#
349f684cf175422918d10e91e7bee747c18ae840Mark Andrews# CDDL HEADER END
ed6e3610e3e56aac554dc93cad461a0016e961f9Mark Andrews#
c3c72c1033b9d085b1a1fe74a9e3efb6db724ce2Mark Andrews#
c3c72c1033b9d085b1a1fe74a9e3efb6db724ce2Mark Andrews# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
b4fe7caac90b28629d207b40a77862e2535f925cMark Andrews#
b4fe7caac90b28629d207b40a77862e2535f925cMark Andrews# This makefile drives the production of the fct driver for
a0a19510c03e6004fd11ec278745d499751cd081Mark Andrews# COMSTAR.
c2ec022f5784a2ff844f7d062c2022197dc4ad09Mark Andrews
c2ec022f5784a2ff844f7d062c2022197dc4ad09Mark Andrews#
c2ec022f5784a2ff844f7d062c2022197dc4ad09Mark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
46ed893dd0c8096d2bcbf31e6dcf79b2786e7b7fMark Andrews#
1ae75c1024eb0475c2be352b8707772e16332ad0Mark Andrews
1ae75c1024eb0475c2be352b8707772e16332ad0Mark Andrews
1ae75c1024eb0475c2be352b8707772e16332ad0Mark AndrewsUTSBASE = ../..
ea17e969771f19485dc7ab2f731d641128a9ee3bMark Andrews
ea17e969771f19485dc7ab2f731d641128a9ee3bMark AndrewsARCHDIR:sh = cd ..; basename `pwd`
ea17e969771f19485dc7ab2f731d641128a9ee3bMark Andrews
5eb0659963ec2aa5158425b39620ec1b30c83c7bMark Andrews#
5eb0659963ec2aa5158425b39620ec1b30c83c7bMark Andrews# Define the module and object file sets.
5eb0659963ec2aa5158425b39620ec1b30c83c7bMark Andrews#
e1f638a7141a4c1364e4ca45025241c9e2fecf74Mark AndrewsMODULE = fct
e1f638a7141a4c1364e4ca45025241c9e2fecf74Mark AndrewsOBJECTS = $(FCT_OBJS:%=$(OBJS_DIR)/%)
e1f638a7141a4c1364e4ca45025241c9e2fecf74Mark AndrewsLINTS = $(FCT_OBJS:%.o=$(LINTS_DIR)/%.ln)
e1f638a7141a4c1364e4ca45025241c9e2fecf74Mark AndrewsROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
4995dba770c1f5f421cf22a2e9e138586a153765Mark AndrewsCONF_SRCDIR = $(UTSBASE)/common/io/comstar/port/fct
4995dba770c1f5f421cf22a2e9e138586a153765Mark Andrews
4995dba770c1f5f421cf22a2e9e138586a153765Mark Andrews#
4995dba770c1f5f421cf22a2e9e138586a153765Mark Andrews# Include common rules.
b39213ce599dc433c6f99144c97ca3d562f40344Mark Andrews#
b39213ce599dc433c6f99144c97ca3d562f40344Mark Andrewsinclude ../Makefile.$(ARCHDIR)
154bd87b5c9d603329dd691b822525c6885f21d4Mark Andrews
8862388bcb44f634cbfc3e69f11ff4cb76590a4bMark Andrews#
8862388bcb44f634cbfc3e69f11ff4cb76590a4bMark Andrews# Define targets
6ec0f98cf6e88aeba1615763fdec253bf391f22eMark Andrews#
80cc19dc262cead5a8af41838ebfae5a6e587605Mark AndrewsALL_TARGET = $(BINARY) $(SRC_CONFILE)
80cc19dc262cead5a8af41838ebfae5a6e587605Mark AndrewsLINT_TARGET = $(MODULE).lint
80cc19dc262cead5a8af41838ebfae5a6e587605Mark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOT_CONFFILE)
d4e1933abc4bfa3d42dcc2f093c81816a317dde6Mark Andrews
8d414d155953f89a4eff40f16878438a8c9228f3Mark Andrews#
8d414d155953f89a4eff40f16878438a8c9228f3Mark Andrews# Overrides and depends_on
7c82b7ae3f3006e20d00529a15372d6cba133c20Mark Andrews#
8d414d155953f89a4eff40f16878438a8c9228f3Mark AndrewsMODSTUBS_DIR = $(OBJS_DIR)
7c82b7ae3f3006e20d00529a15372d6cba133c20Mark AndrewsLDFLAGS += -dy -Ndrv/stmf
8d414d155953f89a4eff40f16878438a8c9228f3Mark Andrews
8d414d155953f89a4eff40f16878438a8c9228f3Mark AndrewsC99MODE= -xc99=%all
7c82b7ae3f3006e20d00529a15372d6cba133c20Mark AndrewsC99LMODE= -Xc99=%all
39e5cab80a2abc95ca034ac79ea3f973fc66f5b3Mark Andrews
39e5cab80a2abc95ca034ac79ea3f973fc66f5b3Mark Andrews#
0b9af9eb37f624033652f6cc463262474ee13344Mark Andrews# For now, disable these lint checks; maintainers should endeavor
85315eb5361d92ba034cecc26c3526e121392386Mark Andrews# to investigate and remove these for maximum lint coverage.
3b1fce680f1dbe9467cd3b0ab3138ea52d5a976fMark Andrews#
3b1fce680f1dbe9467cd3b0ab3138ea52d5a976fMark AndrewsLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
ead4d2d676b12a856769d3750861c6efbb95f709Mark AndrewsLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
0822cc50657c972c6a5ee29cba9506847c7ea7c2Mark AndrewsLINTTAGS += -erroff=E_IF_ELSE_ANNOTATION
0822cc50657c972c6a5ee29cba9506847c7ea7c2Mark Andrews
bdb609f5874056f6f1cd212ebf8700132e683fe5Mark AndrewsCERRWARN += -_gcc=-Wno-unused-label
c5cde9d5a70c921da901a23845e740ccc7a8c4e4Mark AndrewsCERRWARN += -_gcc=-Wno-switch
c5cde9d5a70c921da901a23845e740ccc7a8c4e4Mark AndrewsCERRWARN += -_gcc=-Wno-uninitialized
bae21f249ead77e442a025b9b18d90e21ebf72ceMark Andrews
321df4df1972da49223fc8ee1180f94b88295568Mark Andrews#
a3a09ca2497e925a9f0ba76f1525c6c60e5d5094Mark Andrews# Default build targets.
7f5a3cea4e93ad683b13ebef8a6589afd97fb762Mark Andrews#
7f5a3cea4e93ad683b13ebef8a6589afd97fb762Mark Andrews.KEEP_STATE:
9c3df90dd3767bcc14c4028fb3d81b26d056e821Mark Andrews
9c3df90dd3767bcc14c4028fb3d81b26d056e821Mark Andrewsdef: $(DEF_DEPS)
50105afc551903541608b11851d73278b23579a3Mark Andrews
50105afc551903541608b11851d73278b23579a3Mark Andrewsall: $(ALL_DEPS)
1285fa26e632e3b386435b730b47b5ff1a03e553Mark Andrews
1285fa26e632e3b386435b730b47b5ff1a03e553Mark Andrewsclean: $(CLEAN_DEPS)
5a680f4170ba77be1e31cf1fc40ab43856919078Mark Andrews
5a680f4170ba77be1e31cf1fc40ab43856919078Mark Andrewsclobber: $(CLOBBER_DEPS)
ad35e0aec9dae18ee31e760beab1602f7eb4ef05Mark Andrews
2047977ce2dfcfe3a0fa2d638c3242841310fad3Mark Andrewslint: $(LINT_DEPS)
2047977ce2dfcfe3a0fa2d638c3242841310fad3Mark Andrews
8c5d451ea2898586c00932efeb5123b41afc9650Mark Andrewsmodlintlib: $(MODLINTLIB_DEPS)
9c8fb5f756d99a4ecba95df9a00757384f3b71b7Mark Andrews
a8fb98aff8a186bf80fa4e48cc3e99a42939dd0aMark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
fa7ee558e0536a94bfdb154a7c7ba298535459c4Mark Andrews
d81018ac98b287438248cd0e3a1c230eb40b0b55Mark Andrewsinstall: $(INSTALL_DEPS)
1d7cbe71b99ea0e883a4cf8af8a91bba04a3597eMark Andrews
1d7cbe71b99ea0e883a4cf8af8a91bba04a3597eMark Andrews#
7436bb66c610c039ca3dec12aac5024037898910Mark Andrews# Include common targets.
c569a0e4d518bf30be1b2ba9cc3592fe470e9822Mark Andrews#
c569a0e4d518bf30be1b2ba9cc3592fe470e9822Mark Andrewsinclude ../Makefile.targ
e9964e7db4467722300c0d7d52ec1d7a51a784c1Mark Andrews