Makefile revision 22eb7cb54d8a6bcf6fe2674cb4b1f0cf2d85cfb6
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
499b34cea04a46823d003d4c0520c8b03e8513cbBrian Wellington# CDDL HEADER START
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# The contents of this file are subject to the terms of the
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# Common Development and Distribution License (the "License").
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# You may not use this file except in compliance with the License.
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence#
15a44745412679c30a6d022733925af70a38b715David Lawrence# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
15a44745412679c30a6d022733925af70a38b715David Lawrence# or http://www.opensolaris.org/os/licensing.
15a44745412679c30a6d022733925af70a38b715David Lawrence# See the License for the specific language governing permissions
15a44745412679c30a6d022733925af70a38b715David Lawrence# and limitations under the License.
15a44745412679c30a6d022733925af70a38b715David Lawrence#
15a44745412679c30a6d022733925af70a38b715David Lawrence# When distributing Covered Code, include this CDDL HEADER in each
15a44745412679c30a6d022733925af70a38b715David Lawrence# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15a44745412679c30a6d022733925af70a38b715David Lawrence# If applicable, add the following below this CDDL HEADER, with the
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrews#
9c3531d72aeaad6c5f01efe6a1c82023e1379e4dDavid Lawrence# CDDL HEADER END
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington# Use is subject to license terms.
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#ident "%Z%%M% %I% %E% SMI"
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# This makefile drives the production of the Realtek
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# Gigabit Ethernet (RGE) driver module in sparc systems
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark AndrewsUTSBASE = ../..
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence# Define the module and object file sets.
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington#
8e40433e347bc487cd70f02487fc7ce947a2422aMark AndrewsMODULE = rge
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian WellingtonOBJECTS = $(RGE_OBJS:%=$(OBJS_DIR)/%)
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark AndrewsLINTS = $(RGE_OBJS:%.o=$(LINTS_DIR)/%.ln)
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian WellingtonROOTMODULE = $(ROOT_DRV_DIR)/$(MODULE)
8e40433e347bc487cd70f02487fc7ce947a2422aMark Andrews
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington#
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington# Include common rules.
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrewsinclude $(UTSBASE)/sparc/Makefile.sparc
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
3ddd814a97de1d152ba0913c592d6e6dc83d38a6Michael Graff#
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews# Define targets
78838d3e0cd62423c23de5503910e01884d2104bBrian Wellington#
78838d3e0cd62423c23de5503910e01884d2104bBrian WellingtonALL_TARGET = $(BINARY)
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark AndrewsLINT_TARGET = $(MODULE).lint
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
542189f21b3ea9b27b0fbc047d832a34dcaf75bcAndreas Gustafsson
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews#
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews# lint pass one enforcement
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews#
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark AndrewsCFLAGS += $(CCVERBOSE)
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews#
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews# Turn on doubleword alignment for 64 bit registers
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark Andrews#
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark AndrewsCFLAGS += -dalign
b03a619e1d426c52c5cf7a5778982074ac6515c8Mark Andrews
b03a619e1d426c52c5cf7a5778982074ac6515c8Mark Andrews#
b03a619e1d426c52c5cf7a5778982074ac6515c8Mark Andrews# Driver depends on MAC & IP
b03a619e1d426c52c5cf7a5778982074ac6515c8Mark Andrews#
f6a9dd2c61911bf4902d6de02a18a31c9d5497f7Mark AndrewsLDFLAGS += -dy -N misc/mac -N drv/ip
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# For now, disable these lint checks; maintainers should endeavor
f9aa0a668c059e0fda1b06882c68aaeb4e840e1bDavid Lawrence# to investigate and remove these for maximum lint coverage.
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews# Please do not carry these forward to new Makefiles.
3ddd814a97de1d152ba0913c592d6e6dc83d38a6Michael Graff#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark AndrewsLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark AndrewsLINTTAGS += -erroff=E_ASSIGN_NARROW_CONV
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark AndrewsLINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrews
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrews#
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrews# Default build targets.
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews.KEEP_STATE:
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrewsdef: $(DEF_DEPS)
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellingtonall: $(ALL_DEPS)
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrews
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrewsclean: $(CLEAN_DEPS)
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrews
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellingtonclobber: $(CLOBBER_DEPS)
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrewslint: $(LINT_DEPS)
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrewsmodlintlib: $(MODLINTLIB_DEPS)
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellingtoninstall: $(INSTALL_DEPS)
1431917c7cddbac7442cb910e83cb058fea59fb5Mark Andrews
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington#
ee84964a7d29ae88769f67326a65256731769ea7Mark Andrews# Include common targets.
eeb77542a8b85f04665b2cfe34496cdab844a1b1Brian Wellington#
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrewsinclude $(UTSBASE)/sparc/Makefile.targ
d0aee194aad64f4c4c54933c0250ee58d47212f4Mark Andrews