Makefile revision 7014882c6a3672fd0e5d60200af8643ae53c5928
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# CDDL HEADER START
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# The contents of this file are subject to the terms of the
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Common Development and Distribution License (the "License").
689023771c563d8660e45d439a207e06e96de28fMark Andrews# You may not use this file except in compliance with the License.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
689023771c563d8660e45d439a207e06e96de28fMark Andrews# or http://www.opensolaris.org/os/licensing.
689023771c563d8660e45d439a207e06e96de28fMark Andrews# See the License for the specific language governing permissions
689023771c563d8660e45d439a207e06e96de28fMark Andrews# and limitations under the License.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# When distributing Covered Code, include this CDDL HEADER in each
689023771c563d8660e45d439a207e06e96de28fMark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
689023771c563d8660e45d439a207e06e96de28fMark Andrews# If applicable, add the following below this CDDL HEADER, with the
689023771c563d8660e45d439a207e06e96de28fMark Andrews# fields enclosed by brackets "[]" replaced with your own identifying
689023771c563d8660e45d439a207e06e96de28fMark Andrews# information: Portions Copyright [yyyy] [name of copyright owner]
48f929d315bafeeffe0a37082ab4c9661a928c39Mark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# CDDL HEADER END
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# uts/sun4u/des/Makefile
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Use is subject to license terms.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# This makefile drives the production of the des kernel module.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# sun4u implementation architecture dependent
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Path to the base of the uts directory tree (usually /usr/src/uts).
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark AndrewsUTSBASE = ../..
689023771c563d8660e45d439a207e06e96de28fMark AndrewsCOM_DIR = $(COMMONBASE)/crypto
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Define the module and object file sets.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark AndrewsMODULE = des
689023771c563d8660e45d439a207e06e96de28fMark AndrewsOBJECTS = $(DES_OBJS:%=$(OBJS_DIR)/%)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINTS = $(DES_OBJS:%.o=$(LINTS_DIR)/%.ln)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsROOTMODULE = $(ROOT_PSM_CRYPTO_DIR)/$(MODULE)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsROOTLINK = $(ROOT_PSM_MISC_DIR)/$(MODULE)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsTARGET_32 = ../../kernel/crypto/$(MODULE)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsTARGET_64 = ../../../kernel/crypto/$(SUBDIR64)/$(MODULE)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINK_TARGET = $(TARGET_$(CLASS))
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Include common rules.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrewsinclude $(UTSBASE)/sun4u/Makefile.sun4u
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews# set signing mode
689023771c563d8660e45d439a207e06e96de28fMark AndrewsELFSIGN_MOD = $(ELFSIGN_CRYPTO)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Define targets
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark AndrewsALL_TARGET = $(BINARY)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINT_TARGET = $(MODULE).lint
689023771c563d8660e45d439a207e06e96de28fMark AndrewsINSTALL_TARGET = $(BINARY) $(ROOTMODULE) $(ROOTLINK)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Linkage dependencies
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLDFLAGS += -dy -Nmisc/kcf
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# lint pass one enforcement
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark AndrewsCFLAGS += $(CCVERBOSE) -I$(COM_DIR)
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINTFLAGS += -I$(COM_DIR)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Turn on doubleword alignment for 64 bit registers
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark AndrewsCFLAGS += -dalign
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# For now, disable these lint checks; maintainers should endeavor
689023771c563d8660e45d439a207e06e96de28fMark Andrews# to investigate and remove these for maximum lint coverage.
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Please do not carry these forward to new Makefiles.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINTTAGS += -erroff=E_PTRDIFF_OVERFLOW
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINTTAGS += -erroff=E_STATIC_UNUSED
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN
689023771c563d8660e45d439a207e06e96de28fMark AndrewsLINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark AndrewsCERRWARN += -_gcc=-Wno-parentheses
689023771c563d8660e45d439a207e06e96de28fMark AndrewsCERRWARN += -_gcc=-Wno-uninitialized
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Default build targets.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews.KEEP_STATE:
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewsdef: $(DEF_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewsall: $(ALL_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewsclean: $(CLEAN_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewsclobber: $(CLOBBER_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewslint: $(LINT_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewsmodlintlib: $(MODLINTLIB_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewsclean.lint: $(CLEAN_LINT_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrewsinstall: $(INSTALL_DEPS)
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews$(ROOTLINK): $(ROOT_PSM_MISC_DIR) $(ROOTMODULE)
689023771c563d8660e45d439a207e06e96de28fMark Andrews -$(RM) $@; ln -s $(LINK_TARGET) $@
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrews# Include common targets.
689023771c563d8660e45d439a207e06e96de28fMark Andrews#
689023771c563d8660e45d439a207e06e96de28fMark Andrewsinclude $(UTSBASE)/sun4u/Makefile.targ
689023771c563d8660e45d439a207e06e96de28fMark Andrews
689023771c563d8660e45d439a207e06e96de28fMark Andrews