Makefile revision f4b3ec61df05330d25f55a36b975b4d7519fdeb1
436aad11e01e916f75e68a2e9cb89ac217a990d3Tinderbox User#
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater# CDDL HEADER START
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox User#
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox User# The contents of this file are subject to the terms of the
a5636b773fa05a272b6876afd99309c0b3090e2fMark Andrews# Common Development and Distribution License (the "License").
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox User# You may not use this file except in compliance with the License.
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox User#
c57668a2fbbe558c1bd21652813616f2f517c469Tinderbox User# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews# or http://www.opensolaris.org/os/licensing.
137fdbc214e99c4cbe57551e9e14f2015c2e42aeTinderbox User# See the License for the specific language governing permissions
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User# and limitations under the License.
bed0874e1a09e810575328c4bfc346a47514b69fMark Andrews#
02b47c5d62e1e827743684c28a08e871da454a2dMark Andrews# When distributing Covered Code, include this CDDL HEADER in each
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User# If applicable, add the following below this CDDL HEADER, with the
e20309353e6246485c521278131d3fced73d7957Tinderbox User# fields enclosed by brackets "[]" replaced with your own identifying
e20309353e6246485c521278131d3fced73d7957Tinderbox User# information: Portions Copyright [yyyy] [name of copyright owner]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews# CDDL HEADER END
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# uts/sparc/rts/Makefile
e20309353e6246485c521278131d3fced73d7957Tinderbox User# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
e20309353e6246485c521278131d3fced73d7957Tinderbox User# Use is subject to license terms.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#ident "%Z%%M% %I% %E% SMI"
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# This makefile drives the production of the rts IP driver
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# sparc architecture dependent
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsUTSBASE = ../..
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# Define the module and object file sets.
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsMODULE = rts
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsOBJECTS = $(RTS_OBJS:%=$(OBJS_DIR)/%)
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox UserLINTS = $(RTS_OBJS:%.o=$(LINTS_DIR)/%.ln)
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox UserROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntROOTLINK = $(ROOT_STRMOD_DIR)/$(MODULE)
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox UserCONF_SRCDIR = $(UTSBASE)/common/inet/ip
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# Extra for $(MODULE).check target
24934f08b9ff81c2be711e566e8002d145573031Tinderbox User#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# Need to remove ipddi.o since it has non-static defines for _init etc.
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntIP_CHECK_OBJS = $(IP_OBJS:ipddi.o=ip.o)
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox UserEXTRA_CHECK_OBJS = $(IP_CHECK_OBJS:%=../ip/$(OBJS_DIR)/%)
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox User
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt#
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User# Include common rules.
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater#
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updaterinclude $(UTSBASE)/sparc/Makefile.sparc
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater# Define targets
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsALL_TARGET = $(BINARY) $(SRC_CONFFILE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLINT_TARGET = $(MODULE).lint
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK) $(ROOT_CONFFILE)
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews# lint pass one enforcement
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsCFLAGS += $(CCVERBOSE)
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrews# depends on tun
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
0eb371ca0dab50ae3462e98794a6126198c52f4bMark AndrewsLDFLAGS += -dy -Ndrv/ip
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews#
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# For now, disable these lint checks; maintainers should endeavor
e20309353e6246485c521278131d3fced73d7957Tinderbox User# to investigate and remove these for maximum lint coverage.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# Please do not carry these forward to new Makefiles.
24934f08b9ff81c2be711e566e8002d145573031Tinderbox User#
e20309353e6246485c521278131d3fced73d7957Tinderbox UserLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox UserLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
ad411d8ccf8a27eb903b842ab507ba6729d0246bTinderbox User#
80faf1588895fd26490f82f95a7a1b771df1c324Automatic Updater# Default build targets.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox User.KEEP_STATE:
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrewsdef: $(DEF_DEPS)
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrews
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewsall: $(ALL_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafssonclean: $(CLEAN_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsclobber: $(CLOBBER_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewslint: $(LINT_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrewsmodlintlib: $(MODLINTLIB_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsinstall: $(INSTALL_DEPS)
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews$(ROOTLINK): $(ROOT_STRMOD_DIR) $(ROOTMODULE)
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews -$(RM) $@; ln $(ROOTMODULE) $@
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewssis_check: sis_check.obj
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewssis_check.obj: $(ALL_DEPS)
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson @$(GREP) -v '#' $(MODULE).objt-symbols.obj64 |$(GREP) . |$(SORT) -u \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews > $(MODULE).symbols.tmp
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews @$(NM) obj64/$(MODULE) |$(GREP) OBJT |$(GREP) -v UNDEF | \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $(CUT) -d'|' -f8 |$(GREP) -v '^___const_' |$(SORT) -u \
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews > $(MODULE).symbols.tmp.new
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrews -@$(DIFF) $(MODULE).symbols.tmp $(MODULE).symbols.tmp.new
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrews
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews#
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User# Include common targets.
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User#
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrewsinclude $(UTSBASE)/sparc/Makefile.targ
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrews