Makefile revision 80e2ca8596e3435bc3b76f3c597833ea0a87f85e
2439N/A#
2439N/A# CDDL HEADER START
2439N/A#
2439N/A# The contents of this file are subject to the terms of the
2439N/A# Common Development and Distribution License (the "License").
2439N/A# You may not use this file except in compliance with the License.
2439N/A#
2439N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
6983N/A# or http://www.opensolaris.org/os/licensing.
6983N/A# See the License for the specific language governing permissions
2439N/A# and limitations under the License.
2439N/A#
2439N/A# When distributing Covered Code, include this CDDL HEADER in each
2439N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
6983N/A# If applicable, add the following below this CDDL HEADER, with the
6983N/A# fields enclosed by brackets "[]" replaced with your own identifying
6983N/A# information: Portions Copyright [yyyy] [name of copyright owner]
6983N/A#
2439N/A# CDDL HEADER END
2439N/A#
2439N/A#
2439N/A# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
2439N/A#
3231N/A# This makefile drives the production of the kernel component of
2439N/A# the Solaris 10 brand
2439N/A#
2439N/A
2439N/A#
2439N/A# Path to the base of the uts directory tree (usually /usr/src/uts).
2439N/A#
2439N/AUTSBASE = ../..
2439N/AS10_BASE = $(UTSBASE)/common/brand/solaris10
2439N/A
2439N/A#
2439N/A# Define the module and object file sets.
2439N/A#
2439N/AMODULE = s10_brand
2439N/AOBJECTS = $(S10_BRAND_OBJS:%=$(OBJS_DIR)/%)
2439N/ALINTS = $(S10_BRAND_OBJS:%.o=$(LINTS_DIR)/%.ln)
2439N/AROOTMODULE = $(USR_BRAND_DIR)/$(MODULE)
2439N/A
2439N/A#
2439N/A# Include common rules.
2439N/A#
2439N/Ainclude $(UTSBASE)/intel/Makefile.intel
2439N/A
2439N/A#
2439N/A# Define targets
2439N/A#
2439N/AALL_TARGET = $(BINARY)
2439N/ALINT_TARGET = $(MODULE).lint
2439N/AINSTALL_TARGET = $(BINARY) $(ROOTMODULE)
2439N/A
2439N/A
2439N/A#
2439N/A# Update compiler variables.
2439N/A#
2439N/AINC_PATH += -I$(S10_BASE) -I$(OBJS_DIR)
2439N/AAS_INC_PATH += -I$(UTSBASE)/i86pc/genassym/$(OBJS_DIR)
2439N/ALDFLAGS += -dy -Nexec/elfexec
2439N/A
2439N/A#
2439N/A# Ugh, this is a gross hack. s10_brand_asm.s uses lots of defines
2439N/A# to simplify variable access. All these defines work fine for amd64
2439N/A# compiles because when compiling for amd64 we use the GNU assembler,
2439N/A# gas. For 32-bit code we use the Sun assembler, as. Unfortunatly
2439N/A# as does not handle certian constructs that gas does. So rather than
2439N/A# make our code less readable, we'll just use gas to compile our 32-bit
2439N/A# code as well.
2439N/A#
2439N/Ai386_AS = $(amd64_AS)
2439N/A
2439N/A#
2439N/A# Default build targets.
2439N/A#
2439N/A.KEEP_STATE:
2439N/A
2439N/Adef: $(DEF_DEPS)
2439N/A
2439N/Aall: $(ALL_DEPS)
2439N/A
2439N/Aclean: $(CLEAN_DEPS)
2439N/A
2439N/Aclobber: $(CLOBBER_DEPS)
2439N/A
2439N/Alint: $(LINT_DEPS)
2439N/A
2439N/Amodlintlib: $(MODLINTLIB_DEPS)
2439N/A
2439N/Aclean.lint: $(CLEAN_LINT_DEPS)
2439N/A
2439N/Ainstall: $(INSTALL_DEPS)
2439N/A
2439N/A#
2439N/A# Include common targets.
2439N/A#
2439N/Ainclude $(UTSBASE)/intel/Makefile.targ
2439N/A