diff options
author | Josef 'Jeff' Sipek <jeffpc@josefsipek.net> | 2014-01-06 13:34:20 -0500 |
---|---|---|
committer | Robert Mustacchi <rm@joyent.com> | 2014-01-06 10:37:31 -0800 |
commit | 2063d9c01c4a721994a3cb528444d7f328135869 (patch) | |
tree | 1d7a65e67c689eee9f5d273323185e93bff8b767 | |
parent | 34ae5cdf42c9fd8bc75aedb3a91cc2fba8d5182c (diff) | |
download | illumos-joyent-2063d9c01c4a721994a3cb528444d7f328135869.tar.gz |
4266 remove Makefile*.shared nonsense in uts
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Approved by: Robert Mustacchi <rm@joyent.com>
71 files changed, 4330 insertions, 5307 deletions
diff --git a/usr/src/uts/README b/usr/src/uts/README index 0c1d4fd795..90ce373f22 100644 --- a/usr/src/uts/README +++ b/usr/src/uts/README @@ -23,7 +23,6 @@ # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" KERNEL MAKEFILE STRUCTURE ------------------------- @@ -152,10 +151,6 @@ uts/sun4c/unix.static/Makefile to build multiple configurations. This configuration is roughly equivalent to the GENERIC kernel of SunOS 4.x. -uts/*/Makefile.?.shared - These denote Makefile contents which are shared between open and - closed builds. - The Makefiles are verbosely commented. It is desired that they should stay this way. diff --git a/usr/src/uts/common/io/1394/inc.flg b/usr/src/uts/common/io/1394/inc.flg index 7519eaa338..5c0ff64f53 100644 --- a/usr/src/uts/common/io/1394/inc.flg +++ b/usr/src/uts/common/io/1394/inc.flg @@ -25,8 +25,6 @@ # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" - # This file brings down all that is needed to build just # 1394 drivers. # @@ -76,9 +74,7 @@ echo_file usr/src/uts/sparc/Makefile echo_file usr/src/uts/sparc/Makefile.files echo_file usr/src/uts/sparc/Makefile.rules echo_file usr/src/uts/sparc/Makefile.sparc -echo_file usr/src/uts/sparc/Makefile.sparc.shared echo_file usr/src/uts/sparc/Makefile.targ -echo_file usr/src/uts/sparc/Makefile.targ.shared echo_file usr/src/uts/sparc/ml/sparc.il echo_file usr/src/uts/sparc/req.flg diff --git a/usr/src/uts/common/io/ib/inc.flg b/usr/src/uts/common/io/ib/inc.flg index 19641d2763..a7fbf4569a 100644 --- a/usr/src/uts/common/io/ib/inc.flg +++ b/usr/src/uts/common/io/ib/inc.flg @@ -106,18 +106,14 @@ echo_file usr/src/uts/sparc/Makefile echo_file usr/src/uts/sparc/Makefile.files echo_file usr/src/uts/sparc/Makefile.rules echo_file usr/src/uts/sparc/Makefile.sparc -echo_file usr/src/uts/sparc/Makefile.sparc.shared echo_file usr/src/uts/sparc/Makefile.targ -echo_file usr/src/uts/sparc/Makefile.targ.shared echo_file usr/src/uts/sparc/ml/sparc.il echo_file usr/src/uts/sparc/req.flg echo_file usr/src/uts/intel/Makefile echo_file usr/src/uts/intel/Makefile.files echo_file usr/src/uts/intel/Makefile.rules echo_file usr/src/uts/intel/Makefile.intel -echo_file usr/src/uts/intel/Makefile.intel.shared echo_file usr/src/uts/intel/Makefile.targ -echo_file usr/src/uts/intel/Makefile.targ.shared echo_file usr/src/uts/intel/ia32/ml/ia32.il echo_file usr/src/uts/sun4/Makefile.files echo_file usr/src/uts/sun4/Makefile.rules @@ -125,9 +121,7 @@ echo_file usr/src/uts/sun4u/Makefile echo_file usr/src/uts/sun4u/Makefile.files echo_file usr/src/uts/sun4u/Makefile.rules echo_file usr/src/uts/sun4u/Makefile.sun4u -echo_file usr/src/uts/sun4u/Makefile.sun4u.shared echo_file usr/src/uts/sun4u/Makefile.targ -echo_file usr/src/uts/sun4u/Makefile.targ.shared echo_file usr/src/uts/sun4u/Makefile.workarounds echo_file usr/src/uts/sfmmu/Makefile.files echo_file usr/src/uts/sfmmu/Makefile.rules diff --git a/usr/src/uts/i86pc/Makefile.i86pc b/usr/src/uts/i86pc/Makefile.i86pc index 041f425e02..9a5a625b4c 100644 --- a/usr/src/uts/i86pc/Makefile.i86pc +++ b/usr/src/uts/i86pc/Makefile.i86pc @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -19,12 +20,310 @@ # # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. +# uts/i86pc/Makefile.i86pc +# +# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2013 Andrew Stormont. All rights reserved. +# +# +# This makefile contains the common definitions for the i86pc unix +# and all i86pc implementation architecture dependent modules. +# + +# +# Machine type (implementation architecture): +# +PLATFORM = i86pc + +# +# uname -m value +# +UNAME_M = $(PLATFORM) + +# +# Definitions for the platform-specific /platform directories. +# +# IMPLEMENTATIONS is used to designate i86pc machines which have +# platform specific modules. All code specific to a given implementation +# resides in the appropriately named subdirectory. This requires +# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS, +# USR_PLAT_DIRS, etc. +# +IMPLEMENTATIONS = i86hvm + +# +# Everybody needs to know how to build modstubs.o and to locate unix.o +# +UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix +GENLIB_DIR = $(UTSBASE)/intel/genunix +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) +GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR) + +LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) +LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln) + +DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o +DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so + +SYM_MOD = $(OBJS_DIR)/unix.sym + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o +MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o +GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so +LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln +DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln +GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) # -# ident "%Z%%M% %I% %E% SMI" +include $(UTSBASE)/$(PLATFORM)/Makefile.files +include $(UTSBASE)/intel/Makefile.files +include $(UTSBASE)/common/Makefile.files + # +# Include machine independent rules. Note that this does not imply +# that the resulting module from rules in Makefile.uts is machine +# independent. Only that the build rules are machine independent. +# +include $(UTSBASE)/Makefile.uts -UTSTREE=$(UTSBASE) +# +# Define supported builds +# +DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32) +ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32) -include $(UTSBASE)/i86pc/Makefile.i86pc.shared +# +# x86 or amd64 inline templates +# +INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \ + $(UTSBASE)/$(PLATFORM)/ml/ia32.il +INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \ + $(UTSBASE)/$(PLATFORM)/ml/amd64.il +INLINES += $(INLINES_$(CLASS)) + +# +# kernel-specific optimizations; override default in Makefile.master +# + +CFLAGS_XARCH_32 = $(i386_CFLAGS) +CFLAGS_XARCH_64 = $(amd64_CFLAGS) +CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS)) + +COPTFLAG_32 = $(COPTFLAG) +COPTFLAG_64 = $(COPTFLAG64) +COPTIMIZE = $(COPTFLAG_$(CLASS)) + +CFLAGS = $(CFLAGS_XARCH) +CFLAGS += $(COPTIMIZE) +CFLAGS += $(INLINES) -D_ASM_INLINES +CFLAGS += $(CCMODE) +CFLAGS += $(SPACEFLAG) +CFLAGS += $(CCUNBOUND) +CFLAGS += $(CFLAGS_uts) +CFLAGS += -xstrconst + +ASFLAGS_XARCH_32 = $(i386_ASFLAGS) +ASFLAGS_XARCH_64 = $(amd64_ASFLAGS) +ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS)) + +ASFLAGS += $(ASFLAGS_XARCH) + +AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) + +# +# The following must be defined for all implementations: +# +# MAPFILE: ld mapfile for the build of kernel/unix. +# MODSTUBS: Module stubs source file. +# GENASSYM_SRC: genassym.c +# +MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile +MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s +GENASSYM_SRC = $(UTSBASE)/$(PLATFORM)/ml/genassym.c +OFFSETS_SRC = $(UTSBASE)/$(PLATFORM)/ml/offsets.in +PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in +PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in +PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS)) +KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in + +# +# Define the actual specific platforms +# +MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP + +# +# Software workarounds for hardware "features" +# + +include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds + +# +# Debugging level +# +# Special knowledge of which special debugging options effect which +# file is used to optimize the build if these flags are changed. +# +# XXX: The above could possibly be done for more flags and files, but +# is left as an experiment to the interested reader. Be forewarned, +# that excessive use could lead to maintenance difficulties. +# +DEBUG_DEFS_OBJ32 = +DEBUG_DEFS_DBG32 = -DDEBUG +DEBUG_DEFS_OBJ64 = +DEBUG_DEFS_DBG64 = -DDEBUG +DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) + +DEBUG_COND_OBJ32 = $(POUND_SIGN) +DEBUG_COND_DBG32 = +DEBUG_COND_OBJ64 = $(POUND_SIGN) +DEBUG_COND_DBG64 = +IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ + +$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE +$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE +$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE +$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE + +# +# Collect the preprocessor definitions to be associated with *all* +# files. +# +ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ + $(OPTION_DEFS) +GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \ + -_gcc=-fno-eliminate-unused-debug-symbols \ + -_gcc=-fno-eliminate-unused-debug-types + +# +# ----- TRANSITIONAL SECTION -------------------------------------------------- +# + +# +# Not everything which *should* be a module is a module yet. The +# following is a list of such objects which are currently part of +# the base kernel but should soon become kmods. +# +# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever +# made into a module. If it is made MT safe before being made +# into a module, it should be added to this list. It was in +# this list pre ON-4.0. +# +# +MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) + +# +# ----- END OF TRANSITIONAL SECTION ------------------------------------------- +# + +# +# The kernels modules which are "implementation architecture" +# specific for this machine are enumerated below. Note that most +# of these modules must exist (in one form or another) for each +# architecture. +# +# Machine Specific Driver Modules (/kernel/drv) +# DRV_KMODS are built both 32-bit and 64-bit +# DRV_KMODS_32 are built only 32-bit +# DRV_KMODS_64 are built only 64-bit +# +DRV_KMODS += rootnex +DRV_KMODS += isa +DRV_KMODS += pcplusmp +DRV_KMODS += apix +DRV_KMODS += cpc +DRV_KMODS += pci +DRV_KMODS += npe +DRV_KMODS += pci-ide +DRV_KMODS += xsvc +DRV_KMODS += tzmon +DRV_KMODS += acpi_drv +DRV_KMODS += acpinex +DRV_KMODS += amd_iommu +DRV_KMODS += dr +DRV_KMODS += ioat +DRV_KMODS += fipe + +DRV_KMODS += cpudrv + + +# +# Platform Power Modules +# +DRV_KMODS += ppm acpippm + +# +# CPU Modules +# +CPU_KMODS += amd_opteron +CPU_KMODS += generic_cpu +CPU_KMODS += authenticamd +CPU_KMODS += genuineintel + +# +# Exec Class Modules (/kernel/exec): +# +EXEC_KMODS += + +# +# Scheduling Class Modules (/kernel/sched): +# +SCHED_KMODS += + +# +# File System Modules (/kernel/fs): +# +FS_KMODS += + +# +# Streams Modules (/kernel/strmod): +# +STRMOD_KMODS += + +# +# 'System' Modules (/kernel/sys): +# +SYS_KMODS += + +# +# 'Misc' Modules (/kernel/misc): +# +MISC_KMODS += gfx_private pcie +MISC_KMODS += acpidev +MISC_KMODS += drmach_acpi + +# +# 'Dacf' modules (/kernel/dacf) +# +DACF_KMODS += consconfig_dacf + +# +# 'Mach' Modules (/kernel/mach): +# +MACH_KMODS += uppc + +# +# CPR Misc Module. +# +MISC_KMODS += cpr diff --git a/usr/src/uts/i86pc/Makefile.i86pc.shared b/usr/src/uts/i86pc/Makefile.i86pc.shared deleted file mode 100644 index f8c63c2763..0000000000 --- a/usr/src/uts/i86pc/Makefile.i86pc.shared +++ /dev/null @@ -1,329 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# uts/i86pc/Makefile.i86pc -# -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -# Copyright (c) 2013 Andrew Stormont. All rights reserved. -# -# -# This makefile contains the common definitions for the i86pc unix -# and all i86pc implementation architecture dependent modules. -# - -# -# Machine type (implementation architecture): -# -PLATFORM = i86pc - -# -# uname -m value -# -UNAME_M = $(PLATFORM) - -# -# Definitions for the platform-specific /platform directories. -# -# IMPLEMENTATIONS is used to designate i86pc machines which have -# platform specific modules. All code specific to a given implementation -# resides in the appropriately named subdirectory. This requires -# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS, -# USR_PLAT_DIRS, etc. -# -IMPLEMENTATIONS = i86hvm - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o -# -UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix -GENLIB_DIR = $(UTSBASE)/intel/genunix -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) -GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR) - -LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) -LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln) - -DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o -DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so - -SYM_MOD = $(OBJS_DIR)/unix.sym - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o -MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o -GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so -LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln -DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln -GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSTREE)/$(PLATFORM)/Makefile.files -include $(UTSTREE)/intel/Makefile.files -include $(UTSTREE)/common/Makefile.files - -# -# Include machine independent rules. Note that this does not imply -# that the resulting module from rules in Makefile.uts is machine -# independent. Only that the build rules are machine independent. -# -include $(UTSBASE)/Makefile.uts - -# -# Define supported builds -# -DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32) -ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32) - -# -# x86 or amd64 inline templates -# -INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \ - $(UTSBASE)/$(PLATFORM)/ml/ia32.il -INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \ - $(UTSBASE)/$(PLATFORM)/ml/amd64.il -INLINES += $(INLINES_$(CLASS)) - -# -# kernel-specific optimizations; override default in Makefile.master -# - -CFLAGS_XARCH_32 = $(i386_CFLAGS) -CFLAGS_XARCH_64 = $(amd64_CFLAGS) -CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS)) - -COPTFLAG_32 = $(COPTFLAG) -COPTFLAG_64 = $(COPTFLAG64) -COPTIMIZE = $(COPTFLAG_$(CLASS)) - -CFLAGS = $(CFLAGS_XARCH) -CFLAGS += $(COPTIMIZE) -CFLAGS += $(INLINES) -D_ASM_INLINES -CFLAGS += $(CCMODE) -CFLAGS += $(SPACEFLAG) -CFLAGS += $(CCUNBOUND) -CFLAGS += $(CFLAGS_uts) -CFLAGS += -xstrconst - -ASFLAGS_XARCH_32 = $(i386_ASFLAGS) -ASFLAGS_XARCH_64 = $(amd64_ASFLAGS) -ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS)) - -ASFLAGS += $(ASFLAGS_XARCH) - -AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) - -# -# The following must be defined for all implementations: -# -# MAPFILE: ld mapfile for the build of kernel/unix. -# MODSTUBS: Module stubs source file. -# GENASSYM_SRC: genassym.c -# -MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile -MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s -GENASSYM_SRC = $(UTSBASE)/$(PLATFORM)/ml/genassym.c -OFFSETS_SRC = $(UTSBASE)/$(PLATFORM)/ml/offsets.in -PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in -PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in -PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS)) -KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in - -# -# Define the actual specific platforms -# -MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP - -# -# Software workarounds for hardware "features" -# - -include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds - -# -# Debugging level -# -# Special knowledge of which special debugging options effect which -# file is used to optimize the build if these flags are changed. -# -# XXX: The above could possibly be done for more flags and files, but -# is left as an experiment to the interested reader. Be forewarned, -# that excessive use could lead to maintenance difficulties. -# -DEBUG_DEFS_OBJ32 = -DEBUG_DEFS_DBG32 = -DDEBUG -DEBUG_DEFS_OBJ64 = -DEBUG_DEFS_DBG64 = -DDEBUG -DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) - -DEBUG_COND_OBJ32 = $(POUND_SIGN) -DEBUG_COND_DBG32 = -DEBUG_COND_OBJ64 = $(POUND_SIGN) -DEBUG_COND_DBG64 = -IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ - -$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE -$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE -$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE -$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE - -# -# Collect the preprocessor definitions to be associated with *all* -# files. -# -ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ - $(OPTION_DEFS) -GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \ - -_gcc=-fno-eliminate-unused-debug-symbols \ - -_gcc=-fno-eliminate-unused-debug-types - -# -# ----- TRANSITIONAL SECTION -------------------------------------------------- -# - -# -# Not everything which *should* be a module is a module yet. The -# following is a list of such objects which are currently part of -# the base kernel but should soon become kmods. -# -# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever -# made into a module. If it is made MT safe before being made -# into a module, it should be added to this list. It was in -# this list pre ON-4.0. -# -# -MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) - -# -# ----- END OF TRANSITIONAL SECTION ------------------------------------------- -# - -# -# The kernels modules which are "implementation architecture" -# specific for this machine are enumerated below. Note that most -# of these modules must exist (in one form or another) for each -# architecture. -# -# Machine Specific Driver Modules (/kernel/drv) -# DRV_KMODS are built both 32-bit and 64-bit -# DRV_KMODS_32 are built only 32-bit -# DRV_KMODS_64 are built only 64-bit -# -DRV_KMODS += rootnex -DRV_KMODS += isa -DRV_KMODS += pcplusmp -DRV_KMODS += apix -DRV_KMODS += cpc -DRV_KMODS += pci -DRV_KMODS += npe -DRV_KMODS += pci-ide -DRV_KMODS += xsvc -DRV_KMODS += tzmon -DRV_KMODS += acpi_drv -DRV_KMODS += acpinex -DRV_KMODS += amd_iommu -DRV_KMODS += dr -DRV_KMODS += ioat -DRV_KMODS += fipe - -DRV_KMODS += cpudrv - - -# -# Platform Power Modules -# -DRV_KMODS += ppm acpippm - -# -# CPU Modules -# -CPU_KMODS += amd_opteron -CPU_KMODS += generic_cpu -CPU_KMODS += authenticamd -CPU_KMODS += genuineintel - -# -# Exec Class Modules (/kernel/exec): -# -EXEC_KMODS += - -# -# Scheduling Class Modules (/kernel/sched): -# -SCHED_KMODS += - -# -# File System Modules (/kernel/fs): -# -FS_KMODS += - -# -# Streams Modules (/kernel/strmod): -# -STRMOD_KMODS += - -# -# 'System' Modules (/kernel/sys): -# -SYS_KMODS += - -# -# 'Misc' Modules (/kernel/misc): -# -MISC_KMODS += gfx_private pcie -MISC_KMODS += acpidev -MISC_KMODS += drmach_acpi - -# -# 'Dacf' modules (/kernel/dacf) -# -DACF_KMODS += consconfig_dacf - -# -# 'Mach' Modules (/kernel/mach): -# -MACH_KMODS += uppc - -# -# CPR Misc Module. -# -MISC_KMODS += cpr diff --git a/usr/src/uts/i86pc/Makefile.targ b/usr/src/uts/i86pc/Makefile.targ index 3e889bbbcc..e82166c1ba 100644 --- a/usr/src/uts/i86pc/Makefile.targ +++ b/usr/src/uts/i86pc/Makefile.targ @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -18,12 +19,26 @@ # # CDDL HEADER END # +# +# uts/i86pc/Makefile.targ +# # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This Makefile defines the set of all required, target containing +# included Makefiles for the i86pc "implementation architecture". +# + +# +# Targets for all implementations: # +include $(UTSBASE)/Makefile.targ -UTSTREE=$(UTSBASE) +# +# Target set for i86pc (order is not important, as it is with the +# isomorphic Makefile.files set). +# +include $(UTSBASE)/i86pc/Makefile.rules +include $(UTSBASE)/intel/Makefile.rules +include $(UTSBASE)/common/Makefile.rules -include $(UTSBASE)/i86pc/Makefile.targ.shared diff --git a/usr/src/uts/i86pc/Makefile.targ.shared b/usr/src/uts/i86pc/Makefile.targ.shared deleted file mode 100644 index 4ffd2669d6..0000000000 --- a/usr/src/uts/i86pc/Makefile.targ.shared +++ /dev/null @@ -1,46 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# uts/i86pc/Makefile.targ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#pragma ident "%Z%%M% %I% %E% SMI" -# -# This Makefile defines the set of all required, target containing -# included Makefiles for the i86pc "implementation architecture". -# - -# -# Targets for all implementations: -# -include $(UTSBASE)/Makefile.targ - -# -# Target set for i86pc (order is not important, as it is with the -# isomorphic Makefile.files set). -# -include $(UTSTREE)/i86pc/Makefile.rules -include $(UTSTREE)/intel/Makefile.rules -include $(UTSTREE)/common/Makefile.rules - diff --git a/usr/src/uts/i86xpv/Makefile.i86xpv b/usr/src/uts/i86xpv/Makefile.i86xpv index 04a37c2d10..b26dde3710 100644 --- a/usr/src/uts/i86xpv/Makefile.i86xpv +++ b/usr/src/uts/i86xpv/Makefile.i86xpv @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -19,12 +20,301 @@ # # -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. +# uts/i86xpv/Makefile.i86xpv +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2013 Andrew Stormont. All rights reserved. +# + +# +# This makefile contains the common definitions for the i86xpv unix +# and all i86xpv implementation architecture dependent modules. +# + +# +# Machine type (implementation architecture): +# +PLATFORM = i86xpv + +# +# uname -m value +# +UNAME_M = i86pc + +# +# Everybody needs to know how to build modstubs.o and to locate unix.o +# +UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix +GENLIB_DIR = $(UTSBASE)/intel/genunix +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) +GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR) + +DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o +DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so + +SYM_MOD = $(OBJS_DIR)/unix.sym + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o +MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o +GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so +LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln +DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln +GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln + +LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) +LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln) + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# +include $(UTSBASE)/$(PLATFORM)/Makefile.files +include $(UTSBASE)/intel/Makefile.files +include $(UTSBASE)/common/Makefile.files + +# +# Include machine independent rules. Note that this does not imply +# that the resulting module from rules in Makefile.uts is machine +# independent. Only that the build rules are machine independent. +# +include $(UTSBASE)/Makefile.uts + # -# ident "%Z%%M% %I% %E% SMI" +# Define supported builds # +DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32) +ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32) -UTSTREE=$(UTSBASE) +# +# x86 or amd64 inline templates +# +INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \ + $(UTSBASE)/$(PLATFORM)/ml/ia32.il +INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \ + $(UTSBASE)/$(PLATFORM)/ml/amd64.il +INLINES += $(INLINES_$(CLASS)) + +# +# kernel-specific optimizations; override default in Makefile.master +# + +CFLAGS_XARCH_32 = $(i386_CFLAGS) +CFLAGS_XARCH_64 = $(amd64_CFLAGS) +CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS)) + +COPTFLAG_32 = $(COPTFLAG) +COPTFLAG_64 = $(COPTFLAG64) +COPTIMIZE = $(COPTFLAG_$(CLASS)) + +CFLAGS = $(CFLAGS_XARCH) +CFLAGS += $(COPTIMIZE) +CFLAGS += $(INLINES) -D_ASM_INLINES +CFLAGS += $(CCMODE) +CFLAGS += $(SPACEFLAG) +CFLAGS += $(CCUNBOUND) +CFLAGS += $(CFLAGS_uts) + +ASFLAGS_XARCH_32 = $(i386_ASFLAGS) +ASFLAGS_XARCH_64 = $(amd64_ASFLAGS) +ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS)) + +ASFLAGS += $(ASFLAGS_XARCH) + +AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) + +# +# The following must be defined for all implementations: +# +# MAPFILE: ld mapfile for the build of kernel/unix. +# MODSTUBS: Module stubs source file. +# GENASSYM_SRC: genassym.c + +MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile +MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s +GENASSYM_SRC = $(UTSBASE)/i86pc/ml/genassym.c +OFFSETS_SRC = $(UTSBASE)/i86pc/ml/offsets.in -include $(UTSBASE)/i86xpv/Makefile.i86xpv.shared +#PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in +PLATFORM_OFFSETS_32 = $(UTSBASE)/i86pc/ml/mach_offsets.in +PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in +PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS)) +KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in + +# +# Define the actual specific platforms +# +MACHINE_DEFS = -D__$(PLATFORM) -D__xpv -D_MACHDEP + +# +# Software workarounds for hardware "features" +# + +include $(UTSBASE)/i86pc/Makefile.workarounds + +# +# Debugging level +# +# Special knowledge of which special debugging options effect which +# file is used to optimize the build if these flags are changed. +# +# XXX: The above could possibly be done for more flags and files, but +# is left as an experiment to the interested reader. Be forewarned, +# that excessive use could lead to maintenance difficulties. +# +DEBUG_DEFS_OBJ32 = +DEBUG_DEFS_DBG32 = -DDEBUG +DEBUG_DEFS_OBJ64 = +DEBUG_DEFS_DBG64 = -DDEBUG +DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) + +DEBUG_COND_OBJ32 = $(POUND_SIGN) +DEBUG_COND_DBG32 = +DEBUG_COND_OBJ64 = $(POUND_SIGN) +DEBUG_COND_DBG64 = +IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ + +$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE +$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE +$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE +$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)hyperevent.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_DEBUG_OBJ)evtchn.o := DEBUG_DEFS += -DTRAPTRACE + +# +# Collect the preprocessor definitions to be associated with *all* +# files. +# +ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ + $(OPTION_DEFS) +GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \ + -_gcc=-fno-eliminate-unused-debug-symbols \ + -_gcc=-fno-eliminate-unused-debug-types + +# +# ----- TRANSITIONAL SECTION -------------------------------------------------- +# + +# +# Not everything which *should* be a module is a module yet. The +# following is a list of such objects which are currently part of +# the base kernel but should soon become kmods. +# +# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever +# made into a module. If it is made MT safe before being made +# into a module, it should be added to this list. It was in +# this list pre ON-4.0. +# +# +MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) + +# +# ----- END OF TRANSITIONAL SECTION ------------------------------------------- +# + +# +# The kernels modules which are "implementation architecture" +# specific for this machine are enumerated below. Note that most +# of these modules must exist (in one form or another) for each +# architecture. +# +# Machine Specific Driver Modules (/kernel/drv): +# DRV_KMODS are built both 32-bit and 64-bit +# DRV_KMODS_32 are built only 32-bit +# DRV_KMODS_64 are built only 64-bit +# + +DRV_KMODS += rootnex +DRV_KMODS += ioat +DRV_KMODS += isa +DRV_KMODS += pci +DRV_KMODS += pit_beep +DRV_KMODS += npe +DRV_KMODS += pci-ide +DRV_KMODS += xsvc +DRV_KMODS += xenbus +DRV_KMODS += xencons +DRV_KMODS += xpvd +DRV_KMODS += xnbe +DRV_KMODS += xnbo +DRV_KMODS += xnbu +DRV_KMODS += xnf +DRV_KMODS += xdb +DRV_KMODS += xdf +DRV_KMODS += privcmd +DRV_KMODS += domcaps +DRV_KMODS += evtchn +DRV_KMODS += balloon +DRV_KMODS += xpvtap +DRV_KMODS += xdt + +# +# CPU Modules +# +CPU_KMODS += generic_cpu +CPU_KMODS += amd_opteron +CPU_KMODS += genuineintel +CPU_KMODS += authenticamd + +# +# Exec Class Modules (/kernel/exec): +# +EXEC_KMODS += + +# +# Scheduling Class Modules (/kernel/sched): +# +SCHED_KMODS += + +# +# File System Modules (/kernel/fs): +# +FS_KMODS += + +# +# Streams Modules (/kernel/strmod): +# +STRMOD_KMODS += + +# +# 'System' Modules (/kernel/sys): +# +SYS_KMODS += + +# +# 'Misc' Modules (/kernel/misc): +# +MISC_KMODS += xpv_autoconfig gfx_private xnb + +# 'Dacf' modules (/kernel/dacf) +# +DACF_KMODS += consconfig_dacf + +# +# 'Mach' Modules (/kernel/mach): +# +MACH_KMODS += xpv_psm xpv_uppc + +# +# 'TOD' modules (/platform/.../kernel/tod): +# +TOD_KMODS += xpvtod diff --git a/usr/src/uts/i86xpv/Makefile.i86xpv.shared b/usr/src/uts/i86xpv/Makefile.i86xpv.shared deleted file mode 100644 index 83d3991147..0000000000 --- a/usr/src/uts/i86xpv/Makefile.i86xpv.shared +++ /dev/null @@ -1,320 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# uts/i86xpv/Makefile.i86xpv.shared -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# Copyright (c) 2013 Andrew Stormont. All rights reserved. -# - -# -# This makefile contains the common definitions for the i86xpv unix -# and all i86xpv implementation architecture dependent modules. -# - -# -# Machine type (implementation architecture): -# -PLATFORM = i86xpv - -# -# uname -m value -# -UNAME_M = i86pc - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o -# -UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix -GENLIB_DIR = $(UTSBASE)/intel/genunix -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) -GEN_LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR) - -DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o -DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so - -SYM_MOD = $(OBJS_DIR)/unix.sym - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o -MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o -GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so -LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln -DBOOT_LINT_LIB = $(LINT_LIB_DIR)/llib-ldboot.ln -GEN_LINT_LIB = $(GEN_LINT_LIB_DIR)/llib-lgenunix.ln - -LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) -LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln) - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSTREE)/$(PLATFORM)/Makefile.files -include $(UTSTREE)/intel/Makefile.files -include $(UTSTREE)/common/Makefile.files - -# -# Include machine independent rules. Note that this does not imply -# that the resulting module from rules in Makefile.uts is machine -# independent. Only that the build rules are machine independent. -# -include $(UTSBASE)/Makefile.uts - -# -# Define supported builds -# -DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32) -ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32) - -# -# x86 or amd64 inline templates -# -INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il \ - $(UTSBASE)/$(PLATFORM)/ml/ia32.il -INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il \ - $(UTSBASE)/$(PLATFORM)/ml/amd64.il -INLINES += $(INLINES_$(CLASS)) - -# -# kernel-specific optimizations; override default in Makefile.master -# - -CFLAGS_XARCH_32 = $(i386_CFLAGS) -CFLAGS_XARCH_64 = $(amd64_CFLAGS) -CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS)) - -COPTFLAG_32 = $(COPTFLAG) -COPTFLAG_64 = $(COPTFLAG64) -COPTIMIZE = $(COPTFLAG_$(CLASS)) - -CFLAGS = $(CFLAGS_XARCH) -CFLAGS += $(COPTIMIZE) -CFLAGS += $(INLINES) -D_ASM_INLINES -CFLAGS += $(CCMODE) -CFLAGS += $(SPACEFLAG) -CFLAGS += $(CCUNBOUND) -CFLAGS += $(CFLAGS_uts) - -ASFLAGS_XARCH_32 = $(i386_ASFLAGS) -ASFLAGS_XARCH_64 = $(amd64_ASFLAGS) -ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS)) - -ASFLAGS += $(ASFLAGS_XARCH) - -AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) - -# -# The following must be defined for all implementations: -# -# MAPFILE: ld mapfile for the build of kernel/unix. -# MODSTUBS: Module stubs source file. -# GENASSYM_SRC: genassym.c - -MAPFILE = $(UTSBASE)/$(PLATFORM)/conf/Mapfile -MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s -GENASSYM_SRC = $(UTSBASE)/i86pc/ml/genassym.c -OFFSETS_SRC = $(UTSBASE)/i86pc/ml/offsets.in - -#PLATFORM_OFFSETS_32 = $(UTSBASE)/$(PLATFORM)/ml/mach_offsets.in -PLATFORM_OFFSETS_32 = $(UTSBASE)/i86pc/ml/mach_offsets.in -PLATFORM_OFFSETS_64 = $(UTSBASE)/intel/amd64/ml/mach_offsets.in -PLATFORM_OFFSETS_SRC = $(PLATFORM_OFFSETS_$(CLASS)) -KDI_OFFSETS_SRC = $(UTSBASE)/intel/kdi/kdi_offsets.in - -# -# Define the actual specific platforms -# -MACHINE_DEFS = -D__$(PLATFORM) -D__xpv -D_MACHDEP - -# -# Software workarounds for hardware "features" -# - -include $(UTSBASE)/i86pc/Makefile.workarounds - -# -# Debugging level -# -# Special knowledge of which special debugging options effect which -# file is used to optimize the build if these flags are changed. -# -# XXX: The above could possibly be done for more flags and files, but -# is left as an experiment to the interested reader. Be forewarned, -# that excessive use could lead to maintenance difficulties. -# -DEBUG_DEFS_OBJ32 = -DEBUG_DEFS_DBG32 = -DDEBUG -DEBUG_DEFS_OBJ64 = -DEBUG_DEFS_DBG64 = -DDEBUG -DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) - -DEBUG_COND_OBJ32 = $(POUND_SIGN) -DEBUG_COND_DBG32 = -DEBUG_COND_OBJ64 = $(POUND_SIGN) -DEBUG_COND_DBG64 = -IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ - -$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -DTRAPTRACE -$(IF_DEBUG_OBJ)syscall_asm.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE -$(IF_DEBUG_OBJ)syscall_asm_amd64.o := DEBUG_DEFS += -DSYSCALLTRACE -DTRAPTRACE -$(IF_DEBUG_OBJ)fast_trap_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)intr.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)locore.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)machdep.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)exception.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)mp_call.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)cbe.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)hyperevent.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_DEBUG_OBJ)evtchn.o := DEBUG_DEFS += -DTRAPTRACE - -# -# Collect the preprocessor definitions to be associated with *all* -# files. -# -ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ - $(OPTION_DEFS) -GENASSYM_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) \ - -_gcc=-fno-eliminate-unused-debug-symbols \ - -_gcc=-fno-eliminate-unused-debug-types - -# -# ----- TRANSITIONAL SECTION -------------------------------------------------- -# - -# -# Not everything which *should* be a module is a module yet. The -# following is a list of such objects which are currently part of -# the base kernel but should soon become kmods. -# -# XXX: $(KMACCT_OBJS) is neither in the MT kernel nor was it ever -# made into a module. If it is made MT safe before being made -# into a module, it should be added to this list. It was in -# this list pre ON-4.0. -# -# -MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) - -# -# ----- END OF TRANSITIONAL SECTION ------------------------------------------- -# - -# -# The kernels modules which are "implementation architecture" -# specific for this machine are enumerated below. Note that most -# of these modules must exist (in one form or another) for each -# architecture. -# -# Machine Specific Driver Modules (/kernel/drv): -# DRV_KMODS are built both 32-bit and 64-bit -# DRV_KMODS_32 are built only 32-bit -# DRV_KMODS_64 are built only 64-bit -# - -DRV_KMODS += rootnex -DRV_KMODS += ioat -DRV_KMODS += isa -DRV_KMODS += pci -DRV_KMODS += pit_beep -DRV_KMODS += npe -DRV_KMODS += pci-ide -DRV_KMODS += xsvc -DRV_KMODS += xenbus -DRV_KMODS += xencons -DRV_KMODS += xpvd -DRV_KMODS += xnbe -DRV_KMODS += xnbo -DRV_KMODS += xnbu -DRV_KMODS += xnf -DRV_KMODS += xdb -DRV_KMODS += xdf -DRV_KMODS += privcmd -DRV_KMODS += domcaps -DRV_KMODS += evtchn -DRV_KMODS += balloon -DRV_KMODS += xpvtap -DRV_KMODS += xdt - -# -# CPU Modules -# -CPU_KMODS += generic_cpu -CPU_KMODS += amd_opteron -CPU_KMODS += genuineintel -CPU_KMODS += authenticamd - -# -# Exec Class Modules (/kernel/exec): -# -EXEC_KMODS += - -# -# Scheduling Class Modules (/kernel/sched): -# -SCHED_KMODS += - -# -# File System Modules (/kernel/fs): -# -FS_KMODS += - -# -# Streams Modules (/kernel/strmod): -# -STRMOD_KMODS += - -# -# 'System' Modules (/kernel/sys): -# -SYS_KMODS += - -# -# 'Misc' Modules (/kernel/misc): -# -MISC_KMODS += xpv_autoconfig gfx_private xnb - -# 'Dacf' modules (/kernel/dacf) -# -DACF_KMODS += consconfig_dacf - -# -# 'Mach' Modules (/kernel/mach): -# -MACH_KMODS += xpv_psm xpv_uppc - -# -# 'TOD' modules (/platform/.../kernel/tod): -# -TOD_KMODS += xpvtod diff --git a/usr/src/uts/i86xpv/Makefile.targ b/usr/src/uts/i86xpv/Makefile.targ index 57dfd94b6d..09ac6b0616 100644 --- a/usr/src/uts/i86xpv/Makefile.targ +++ b/usr/src/uts/i86xpv/Makefile.targ @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -17,12 +18,25 @@ # # CDDL HEADER END # + +# # Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This Makefile defines the set of all required, target containing +# included Makefiles for the i86xpv "implementation architecture". +# + +# +# Targets for all implementations: # +include $(UTSBASE)/Makefile.targ -UTSTREE=$(UTSBASE) +# +# Target set for i86xpv (order is not important, as it is with the +# isomorphic Makefile.files set). +# +include $(UTSBASE)/i86xpv/Makefile.rules +include $(UTSBASE)/intel/Makefile.rules +include $(UTSBASE)/common/Makefile.rules -include $(UTSBASE)/i86xpv/Makefile.targ.shared diff --git a/usr/src/uts/i86xpv/Makefile.targ.shared b/usr/src/uts/i86xpv/Makefile.targ.shared deleted file mode 100644 index 133f6abff0..0000000000 --- a/usr/src/uts/i86xpv/Makefile.targ.shared +++ /dev/null @@ -1,44 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#pragma ident "%Z%%M% %I% %E% SMI" -# -# This Makefile defines the set of all required, target containing -# included Makefiles for the i86xpv "implementation architecture". -# - -# -# Targets for all implementations: -# -include $(UTSBASE)/Makefile.targ - -# -# Target set for i86xpv (order is not important, as it is with the -# isomorphic Makefile.files set). -# -include $(UTSTREE)/i86xpv/Makefile.rules -include $(UTSTREE)/intel/Makefile.rules -include $(UTSTREE)/common/Makefile.rules - diff --git a/usr/src/uts/intel/Makefile.intel b/usr/src/uts/intel/Makefile.intel index 1f515c8086..01574125b2 100644 --- a/usr/src/uts/intel/Makefile.intel +++ b/usr/src/uts/intel/Makefile.intel @@ -1,4 +1,3 @@ -# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -19,14 +18,700 @@ # CDDL HEADER END # +# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2012 Nexenta Systems, Inc. All rights reserved. +# Copyright (c) 2013 Andrew Stormont. All rights reserved. + +# +# This makefile contains the common definitions for all intel +# implementation architecture independent modules. +# + +# +# Machine type (implementation architecture): +# +PLATFORM = i86pc + +# +# Everybody needs to know how to build modstubs.o and to locate unix.o. +# Note that unix.o must currently be selected from among the possible +# "implementation architectures". Note further, that unix.o is only +# used as an optional error check for undefines so (theoretically) +# any "implementation architectures" could be used. We choose i86pc +# because it is the reference port. +# +UNIX_DIR = $(UTSBASE)/i86pc/unix +GENLIB_DIR = $(UTSBASE)/intel/genunix +IPDRV_DIR = $(UTSBASE)/intel/ip +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR) + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o +GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so +MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o +LINT_LIB = $(UTSBASE)/i86pc/lint-libs/$(OBJS_DIR)/llib-lunix.ln +GEN_LINT_LIB = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# +include $(UTSBASE)/intel/Makefile.files +include $(UTSBASE)/common/Makefile.files + +# +# ----- TRANSITIONAL SECTION -------------------------------------------------- +# + # -# Copyright 2010 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. +# Not everything which *should* be a module is a module yet. The +# following is a list of such objects which are currently part of +# genunix but which might someday become kmods. This must be +# defined before we include Makefile.uts, or else genunix's build +# won't be as parallel as we might like. # +NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS) + +# +# ----- END OF TRANSITIONAL SECTION ------------------------------------------- +# +# Include machine independent rules. Note that this does not imply +# that the resulting module from rules in Makefile.uts is machine +# independent. Only that the build rules are machine independent. +# +include $(UTSBASE)/Makefile.uts + +# +# The following must be defined for all implementations: +# +MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s + +# +# Define supported builds +# +DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32) +ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32) + +# +# x86 or amd64 inline templates +# +INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il +INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il +INLINES += $(INLINES_$(CLASS)) + +# +# kernel-specific optimizations; override default in Makefile.master +# + +CFLAGS_XARCH_32 = $(i386_CFLAGS) +CFLAGS_XARCH_64 = $(amd64_CFLAGS) +CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS)) + +COPTFLAG_32 = $(COPTFLAG) +COPTFLAG_64 = $(COPTFLAG64) +COPTIMIZE = $(COPTFLAG_$(CLASS)) -UTSTREE=$(UTSBASE) +CFLAGS = $(CFLAGS_XARCH) +CFLAGS += $(COPTIMIZE) +CFLAGS += $(INLINES) -D_ASM_INLINES +CFLAGS += $(CCMODE) +CFLAGS += $(SPACEFLAG) +CFLAGS += $(CCUNBOUND) +CFLAGS += $(CFLAGS_uts) +CFLAGS += -xstrconst -include $(UTSBASE)/intel/Makefile.intel.shared +ASFLAGS_XARCH_32 = $(i386_ASFLAGS) +ASFLAGS_XARCH_64 = $(amd64_ASFLAGS) +ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS)) + +ASFLAGS += $(ASFLAGS_XARCH) + +# +# Define the base directory for installation. +# +BASE_INS_DIR = $(ROOT) + +# +# Debugging level +# +# Special knowledge of which special debugging options affect which +# file is used to optimize the build if these flags are changed. +# +DEBUG_DEFS_OBJ32 = +DEBUG_DEFS_DBG32 = -DDEBUG +DEBUG_DEFS_OBJ64 = +DEBUG_DEFS_DBG64 = -DDEBUG +DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) + +DEBUG_COND_OBJ32 = $(POUND_SIGN) +DEBUG_COND_DBG32 = +DEBUG_COND_OBJ64 = $(POUND_SIGN) +DEBUG_COND_DBG64 = +IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ + +$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE +$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1 + +# +# Collect the preprocessor definitions to be associated with *all* +# files. +# +ALL_DEFS = $(DEBUG_DEFS) $(OPTION_DEFS) + +# +# The kernels modules which are "implementation architecture" +# specific for this machine are enumerated below. Note that most +# of these modules must exist (in one form or another) for each +# architecture. +# +# Common Drivers (usually pseudo drivers) (/kernel/drv) +# DRV_KMODS are built both 32-bit and 64-bit +# DRV_KMODS_32 are built only 32-bit +# DRV_KMODS_64 are built only 64-bit +# +DRV_KMODS += aac +DRV_KMODS += aggr +DRV_KMODS += ahci +DRV_KMODS += amd64_gart +DRV_KMODS += amr +DRV_KMODS += agpgart +DRV_KMODS += srn +DRV_KMODS += agptarget +DRV_KMODS += arn +DRV_KMODS += arp +DRV_KMODS += asy +DRV_KMODS += ata +DRV_KMODS += ath +DRV_KMODS += atu +DRV_KMODS += audio +DRV_KMODS += audio1575 +DRV_KMODS += audio810 +DRV_KMODS += audiocmi +DRV_KMODS += audiocmihd +DRV_KMODS += audioemu10k +DRV_KMODS += audioens +DRV_KMODS += audiohd +DRV_KMODS += audioixp +DRV_KMODS += audiols +DRV_KMODS += audiop16x +DRV_KMODS += audiopci +DRV_KMODS += audiosolo +DRV_KMODS += audiots +DRV_KMODS += audiovia823x +DRV_KMODS_32 += audiovia97 +DRV_KMODS += bl +DRV_KMODS += blkdev +DRV_KMODS += bge +DRV_KMODS += bofi +DRV_KMODS += bpf +DRV_KMODS += bridge +DRV_KMODS += bscbus +DRV_KMODS += bscv +DRV_KMODS += chxge +DRV_KMODS += cxgbe +DRV_KMODS += ntxn +DRV_KMODS += myri10ge +DRV_KMODS += clone +DRV_KMODS += cmdk +DRV_KMODS += cn +DRV_KMODS += conskbd +DRV_KMODS += consms +DRV_KMODS += cpqary3 +DRV_KMODS += cpuid +DRV_KMODS += cpunex +DRV_KMODS += crypto +DRV_KMODS += cryptoadm +DRV_KMODS += dca +DRV_KMODS += devinfo +DRV_KMODS += dld +DRV_KMODS += dlpistub +DRV_KMODS_32 += dnet +DRV_KMODS += dump +DRV_KMODS += ecpp +DRV_KMODS += emlxs +DRV_KMODS += fd +DRV_KMODS += fdc +DRV_KMODS += fm +DRV_KMODS += fssnap +DRV_KMODS += hxge +DRV_KMODS += i8042 +DRV_KMODS += i915 +DRV_KMODS += icmp +DRV_KMODS += icmp6 +DRV_KMODS += intel_nb5000 +DRV_KMODS += intel_nhm +DRV_KMODS += ip +DRV_KMODS += ip6 +DRV_KMODS += ipd +DRV_KMODS += ipf +DRV_KMODS += ipnet +DRV_KMODS += ippctl +DRV_KMODS += ipsecah +DRV_KMODS += ipsecesp +DRV_KMODS += ipw +DRV_KMODS += iwh +DRV_KMODS += iwi +DRV_KMODS += iwk +DRV_KMODS += iwp +DRV_KMODS += iwscn +DRV_KMODS += kb8042 +DRV_KMODS += keysock +DRV_KMODS += kssl +DRV_KMODS += kstat +DRV_KMODS += ksyms +DRV_KMODS += kmdb +DRV_KMODS += llc1 +DRV_KMODS += lofi +DRV_KMODS += log +DRV_KMODS += logindmux +DRV_KMODS += mega_sas +DRV_KMODS += mc-amd +DRV_KMODS += mm +DRV_KMODS += mouse8042 +DRV_KMODS += mpt_sas +DRV_KMODS += mr_sas +DRV_KMODS += mwl +DRV_KMODS += nca +DRV_KMODS += nsmb +DRV_KMODS += nulldriver +DRV_KMODS += nv_sata +DRV_KMODS += nxge +DRV_KMODS += oce +DRV_KMODS += openeepr +DRV_KMODS += pci_pci +DRV_KMODS += pcic +DRV_KMODS += pcieb +DRV_KMODS += physmem +DRV_KMODS += pit_beep +DRV_KMODS += pm +DRV_KMODS += poll +DRV_KMODS += pool +DRV_KMODS += power +DRV_KMODS += pseudo +DRV_KMODS += ptc +DRV_KMODS += ptm +DRV_KMODS += pts +DRV_KMODS += ptsl +DRV_KMODS += qlge +DRV_KMODS += radeon +DRV_KMODS += ral +DRV_KMODS += ramdisk +DRV_KMODS += random +DRV_KMODS += rds +DRV_KMODS += rdsv3 +DRV_KMODS += rpcib +DRV_KMODS += rsm +DRV_KMODS += rts +DRV_KMODS += rtw +DRV_KMODS += rum +DRV_KMODS += rwd +DRV_KMODS += rwn +DRV_KMODS += sad +DRV_KMODS += sd +DRV_KMODS += sdhost +DRV_KMODS += sgen +DRV_KMODS += si3124 +DRV_KMODS += smbios +DRV_KMODS += softmac +DRV_KMODS += spdsock +DRV_KMODS += smbsrv +DRV_KMODS += smp +DRV_KMODS += sppp +DRV_KMODS += sppptun +DRV_KMODS += srpt +DRV_KMODS += st +DRV_KMODS += sy +DRV_KMODS += sysevent +DRV_KMODS += sysmsg +DRV_KMODS += tcp +DRV_KMODS += tcp6 +DRV_KMODS += tl +DRV_KMODS += tnf +DRV_KMODS += tpm +DRV_KMODS += trill +DRV_KMODS += udp +DRV_KMODS += udp6 +DRV_KMODS += ucode +DRV_KMODS += ural +DRV_KMODS += uath +DRV_KMODS += urtw +DRV_KMODS += vgatext +DRV_KMODS += heci +DRV_KMODS += vnic +DRV_KMODS += vscan +DRV_KMODS += wc +DRV_KMODS += winlock +DRV_KMODS += wpi +DRV_KMODS += xge +DRV_KMODS += yge +DRV_KMODS += zcons +DRV_KMODS += zyd +DRV_KMODS += simnet +DRV_KMODS += stmf +DRV_KMODS += stmf_sbd +DRV_KMODS += fct +DRV_KMODS += fcoe +DRV_KMODS += fcoet +DRV_KMODS += fcoei +DRV_KMODS += qlt +DRV_KMODS += iscsit +DRV_KMODS += pppt +DRV_KMODS += ncall nsctl sdbc nskern sv +DRV_KMODS += ii rdc rdcsrv rdcstub +DRV_KMODS += iptun + +# +# Common code drivers +# + +DRV_KMODS += afe +DRV_KMODS += atge +DRV_KMODS += bfe +DRV_KMODS += dmfe +DRV_KMODS += e1000g +DRV_KMODS += efe +DRV_KMODS += elxl +DRV_KMODS += hme +DRV_KMODS += mxfe +DRV_KMODS += nge +DRV_KMODS += pcn +DRV_KMODS += rge +DRV_KMODS += rtls +DRV_KMODS += sfe +DRV_KMODS += amd8111s +DRV_KMODS += igb +DRV_KMODS += ipmi +DRV_KMODS += iprb +DRV_KMODS += ixgbe +DRV_KMODS += vr + +# +# Virtio drivers +# + +# Virtio core +DRV_KMODS += virtio + +# Virtio block driver +DRV_KMODS += vioblk + +# +# DTrace and DTrace Providers +# +DRV_KMODS += dtrace +DRV_KMODS += fbt +DRV_KMODS += lockstat +DRV_KMODS += profile +DRV_KMODS += sdt +DRV_KMODS += systrace +DRV_KMODS += fasttrap +DRV_KMODS += dcpc + +# +# I/O framework test drivers +# +DRV_KMODS += pshot +DRV_KMODS += gen_drv +DRV_KMODS += tvhci tphci tclient +DRV_KMODS += emul64 + +# +# Machine Specific Driver Modules (/kernel/drv): +# +DRV_KMODS += options +DRV_KMODS += scsi_vhci +DRV_KMODS += pmcs +DRV_KMODS += pmcs8001fw +DRV_KMODS += arcmsr +DRV_KMODS += fcp +DRV_KMODS += fcip +DRV_KMODS += fcsm +DRV_KMODS += fp +DRV_KMODS += qlc +DRV_KMODS += iscsi + +# +# PCMCIA specific module(s) +# +DRV_KMODS += pcs +MISC_KMODS += cardbus + +# +# SCSI Enclosure Services driver +# +DRV_KMODS += ses + +# +# USB specific modules +# +DRV_KMODS += hid +DRV_KMODS += hwarc hwahc +DRV_KMODS += hubd +DRV_KMODS += uhci +DRV_KMODS += ehci +DRV_KMODS += ohci +DRV_KMODS += usb_mid +DRV_KMODS += usb_ia +DRV_KMODS += scsa2usb +DRV_KMODS += usbprn +DRV_KMODS += ugen +DRV_KMODS += usbser +DRV_KMODS += usbsacm +DRV_KMODS += usbsksp +DRV_KMODS += usbsprl +DRV_KMODS += usb_ac +DRV_KMODS += usb_as +DRV_KMODS += usbskel +DRV_KMODS += usbvc +DRV_KMODS += usbftdi +DRV_KMODS += wusb_df +DRV_KMODS += wusb_ca +DRV_KMODS += usbecm + +# +# 1394 modules +# +MISC_KMODS += s1394 sbp2 +DRV_KMODS += hci1394 scsa1394 +DRV_KMODS += av1394 +DRV_KMODS += dcam1394 + +# +# InfiniBand pseudo drivers +# +DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs +DRV_KMODS += sol_umad + +# +# LVM modules +# +DRV_KMODS += md +MISC_KMODS += md_stripe md_hotspares md_mirror md_raid md_trans md_notify +MISC_KMODS += md_sp + +# +# Brand modules +# +BRAND_KMODS += sn1_brand s10_brand + +# +# Exec Class Modules (/kernel/exec): +# +EXEC_KMODS += elfexec intpexec shbinexec javaexec + +# +# Scheduling Class Modules (/kernel/sched): +# +SCHED_KMODS += IA RT TS RT_DPTBL TS_DPTBL FSS FX FX_DPTBL SDC + +# +# File System Modules (/kernel/fs): +# +FS_KMODS += autofs cachefs ctfs dcfs dev devfs fdfs fifofs hsfs lofs +FS_KMODS += mntfs namefs nfs objfs zfs zut +FS_KMODS += pcfs procfs sockfs specfs tmpfs udfs ufs sharefs +FS_KMODS += smbfs + +# +# Streams Modules (/kernel/strmod): +# +STRMOD_KMODS += bufmod connld dedump ldterm pckt pfmod pipemod +STRMOD_KMODS += ptem redirmod rpcmod rlmod telmod timod +STRMOD_KMODS += spppasyn spppcomp +STRMOD_KMODS += tirdwr ttcompat +STRMOD_KMODS += usbkbm +STRMOD_KMODS += usbms +STRMOD_KMODS += usbwcm +STRMOD_KMODS += usb_ah +STRMOD_KMODS += drcompat +STRMOD_KMODS += cryptmod +STRMOD_KMODS += vuid2ps2 +STRMOD_KMODS += vuid3ps2 +STRMOD_KMODS += vuidm3p +STRMOD_KMODS += vuidm4p +STRMOD_KMODS += vuidm5p + +# +# 'System' Modules (/kernel/sys): +# +SYS_KMODS += c2audit +SYS_KMODS += doorfs +SYS_KMODS += exacctsys +SYS_KMODS += inst_sync +SYS_KMODS += kaio +SYS_KMODS += msgsys +SYS_KMODS += pipe +SYS_KMODS += portfs +SYS_KMODS += pset +SYS_KMODS += semsys +SYS_KMODS += shmsys +SYS_KMODS += sysacct +SYS_KMODS += acctctl + +# +# 'Misc' Modules (/kernel/misc) +# MISC_KMODS are built both 32-bit and 64-bit +# MISC_KMODS_32 are built only 32-bit +# MISC_KMODS_64 are built only 64-bit +# +MISC_KMODS += ac97 +MISC_KMODS += acpica +MISC_KMODS += agpmaster +MISC_KMODS += bignum +MISC_KMODS += bootdev +MISC_KMODS += busra +MISC_KMODS += cmlb +MISC_KMODS += consconfig +MISC_KMODS += ctf +MISC_KMODS += dadk +MISC_KMODS += dcopy +MISC_KMODS += dls +MISC_KMODS += drm +MISC_KMODS += fssnap_if +MISC_KMODS += gda +MISC_KMODS += gld +MISC_KMODS += hidparser +MISC_KMODS += hook +MISC_KMODS += hpcsvc +MISC_KMODS += ibcm +MISC_KMODS += ibdm +MISC_KMODS += ibdma +MISC_KMODS += ibmf +MISC_KMODS += ibtl +MISC_KMODS += idm +MISC_KMODS += idmap +MISC_KMODS += iommulib +MISC_KMODS += ipc +MISC_KMODS += kbtrans +MISC_KMODS += kcf +MISC_KMODS += kgssapi +MISC_KMODS += kmech_dummy +MISC_KMODS += kmech_krb5 +MISC_KMODS += ksocket +MISC_KMODS += mac +MISC_KMODS += mii +MISC_KMODS += mwlfw +MISC_KMODS += net80211 +MISC_KMODS += nfs_dlboot +MISC_KMODS += nfssrv +MISC_KMODS += neti +MISC_KMODS += pci_autoconfig +MISC_KMODS += pcicfg +MISC_KMODS += pcihp +MISC_KMODS += pcmcia +MISC_KMODS += rpcsec +MISC_KMODS += rpcsec_gss +MISC_KMODS += rsmops +MISC_KMODS += sata +MISC_KMODS += scsi +MISC_KMODS += sda +MISC_KMODS += sol_ofs +MISC_KMODS += spuni +MISC_KMODS += strategy +MISC_KMODS += strplumb +MISC_KMODS += tem +MISC_KMODS += tlimod +MISC_KMODS += usba usba10 usbs49_fw +MISC_KMODS += scsi_vhci_f_sym_hds +MISC_KMODS += scsi_vhci_f_sym +MISC_KMODS += scsi_vhci_f_tpgs +MISC_KMODS += scsi_vhci_f_asym_sun +MISC_KMODS += scsi_vhci_f_tape +MISC_KMODS += scsi_vhci_f_tpgs_tape +MISC_KMODS += fctl +MISC_KMODS += emlxs_fw +MISC_KMODS += qlc_fw_2200 +MISC_KMODS += qlc_fw_2300 +MISC_KMODS += qlc_fw_2400 +MISC_KMODS += qlc_fw_2500 +MISC_KMODS += qlc_fw_6322 +MISC_KMODS += qlc_fw_8100 +MISC_KMODS += hwa1480_fw +MISC_KMODS += uathfw +MISC_KMODS += uwba + +MISC_KMODS += klmmod klmops + +# +# Software Cryptographic Providers (/kernel/crypto): +# +CRYPTO_KMODS += aes +CRYPTO_KMODS += arcfour +CRYPTO_KMODS += blowfish +CRYPTO_KMODS += des +CRYPTO_KMODS += ecc +CRYPTO_KMODS += md4 +CRYPTO_KMODS += md5 +CRYPTO_KMODS += rsa +CRYPTO_KMODS += sha1 +CRYPTO_KMODS += sha2 +CRYPTO_KMODS += swrand + +# +# IP Policy Modules (/kernel/ipp) +# +IPP_KMODS += dlcosmk +IPP_KMODS += flowacct +IPP_KMODS += ipgpc +IPP_KMODS += dscpmk +IPP_KMODS += tokenmt +IPP_KMODS += tswtclmt + +# +# generic-unix module (/kernel/genunix): +# +GENUNIX_KMODS += genunix + +# +# Modules eXcluded from the product: +# + +# +# 'Dacf' Modules (/kernel/dacf): +# + +# +# Performance Counter BackEnd modules (/usr/kernel/pcbe) +# +PCBE_KMODS += p123_pcbe p4_pcbe opteron_pcbe core_pcbe + +# +# MAC-Type Plugin Modules (/kernel/mac) +# +MAC_KMODS += mac_6to4 +MAC_KMODS += mac_ether +MAC_KMODS += mac_ipv4 +MAC_KMODS += mac_ipv6 +MAC_KMODS += mac_wifi +MAC_KMODS += mac_ib + +# +# socketmod (kernel/socketmod) +# +SOCKET_KMODS += sockpfp +SOCKET_KMODS += socksctp +SOCKET_KMODS += socksdp +SOCKET_KMODS += sockrds +SOCKET_KMODS += ksslf + +# +# kiconv modules (/kernel/kiconv): +# +KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc + +# +# 'Dacf' Modules (/kernel/dacf): +# +DACF_KMODS += net_dacf # # Ensure that the variable member of the cpu_t (cpu_m) is defined diff --git a/usr/src/uts/intel/Makefile.intel.shared b/usr/src/uts/intel/Makefile.intel.shared deleted file mode 100644 index dcacab9221..0000000000 --- a/usr/src/uts/intel/Makefile.intel.shared +++ /dev/null @@ -1,714 +0,0 @@ -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -# Copyright (c) 2012 Nexenta Systems, Inc. All rights reserved. -# Copyright (c) 2013 Andrew Stormont. All rights reserved. - -# -# This makefile contains the common definitions for all intel -# implementation architecture independent modules. -# - -# -# Machine type (implementation architecture): -# -PLATFORM = i86pc - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o. -# Note that unix.o must currently be selected from among the possible -# "implementation architectures". Note further, that unix.o is only -# used as an optional error check for undefines so (theoretically) -# any "implementation architectures" could be used. We choose i86pc -# because it is the reference port. -# -UNIX_DIR = $(UTSBASE)/i86pc/unix -GENLIB_DIR = $(UTSBASE)/intel/genunix -IPDRV_DIR = $(UTSBASE)/intel/ip -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR) - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o -GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so -MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o -LINT_LIB = $(UTSBASE)/i86pc/lint-libs/$(OBJS_DIR)/llib-lunix.ln -GEN_LINT_LIB = $(UTSBASE)/intel/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSTREE)/intel/Makefile.files -include $(UTSTREE)/common/Makefile.files - -# -# ----- TRANSITIONAL SECTION -------------------------------------------------- -# - -# -# Not everything which *should* be a module is a module yet. The -# following is a list of such objects which are currently part of -# genunix but which might someday become kmods. This must be -# defined before we include Makefile.uts, or else genunix's build -# won't be as parallel as we might like. -# -NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS) - -# -# ----- END OF TRANSITIONAL SECTION ------------------------------------------- -# -# Include machine independent rules. Note that this does not imply -# that the resulting module from rules in Makefile.uts is machine -# independent. Only that the build rules are machine independent. -# -include $(UTSBASE)/Makefile.uts - -# -# The following must be defined for all implementations: -# -MODSTUBS = $(UTSBASE)/intel/ia32/ml/modstubs.s - -# -# Define supported builds -# -DEF_BUILDS = $(DEF_BUILDS64) $(DEF_BUILDS32) -ALL_BUILDS = $(ALL_BUILDS64) $(ALL_BUILDS32) - -# -# x86 or amd64 inline templates -# -INLINES_32 = $(UTSBASE)/intel/ia32/ml/ia32.il -INLINES_64 = $(UTSBASE)/intel/amd64/ml/amd64.il -INLINES += $(INLINES_$(CLASS)) - -# -# kernel-specific optimizations; override default in Makefile.master -# - -CFLAGS_XARCH_32 = $(i386_CFLAGS) -CFLAGS_XARCH_64 = $(amd64_CFLAGS) -CFLAGS_XARCH = $(CFLAGS_XARCH_$(CLASS)) - -COPTFLAG_32 = $(COPTFLAG) -COPTFLAG_64 = $(COPTFLAG64) -COPTIMIZE = $(COPTFLAG_$(CLASS)) - -CFLAGS = $(CFLAGS_XARCH) -CFLAGS += $(COPTIMIZE) -CFLAGS += $(INLINES) -D_ASM_INLINES -CFLAGS += $(CCMODE) -CFLAGS += $(SPACEFLAG) -CFLAGS += $(CCUNBOUND) -CFLAGS += $(CFLAGS_uts) -CFLAGS += -xstrconst - -ASFLAGS_XARCH_32 = $(i386_ASFLAGS) -ASFLAGS_XARCH_64 = $(amd64_ASFLAGS) -ASFLAGS_XARCH = $(ASFLAGS_XARCH_$(CLASS)) - -ASFLAGS += $(ASFLAGS_XARCH) - -# -# Define the base directory for installation. -# -BASE_INS_DIR = $(ROOT) - -# -# Debugging level -# -# Special knowledge of which special debugging options affect which -# file is used to optimize the build if these flags are changed. -# -DEBUG_DEFS_OBJ32 = -DEBUG_DEFS_DBG32 = -DDEBUG -DEBUG_DEFS_OBJ64 = -DEBUG_DEFS_DBG64 = -DDEBUG -DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) - -DEBUG_COND_OBJ32 = $(POUND_SIGN) -DEBUG_COND_DBG32 = -DEBUG_COND_OBJ64 = $(POUND_SIGN) -DEBUG_COND_DBG64 = -IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ - -$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE -$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1 - -# -# Collect the preprocessor definitions to be associated with *all* -# files. -# -ALL_DEFS = $(DEBUG_DEFS) $(OPTION_DEFS) - -# -# The kernels modules which are "implementation architecture" -# specific for this machine are enumerated below. Note that most -# of these modules must exist (in one form or another) for each -# architecture. -# -# Common Drivers (usually pseudo drivers) (/kernel/drv) -# DRV_KMODS are built both 32-bit and 64-bit -# DRV_KMODS_32 are built only 32-bit -# DRV_KMODS_64 are built only 64-bit -# -DRV_KMODS += aac -DRV_KMODS += aggr -DRV_KMODS += ahci -DRV_KMODS += amd64_gart -DRV_KMODS += amr -DRV_KMODS += agpgart -DRV_KMODS += srn -DRV_KMODS += agptarget -DRV_KMODS += arn -DRV_KMODS += arp -DRV_KMODS += asy -DRV_KMODS += ata -DRV_KMODS += ath -DRV_KMODS += atu -DRV_KMODS += audio -DRV_KMODS += audio1575 -DRV_KMODS += audio810 -DRV_KMODS += audiocmi -DRV_KMODS += audiocmihd -DRV_KMODS += audioemu10k -DRV_KMODS += audioens -DRV_KMODS += audiohd -DRV_KMODS += audioixp -DRV_KMODS += audiols -DRV_KMODS += audiop16x -DRV_KMODS += audiopci -DRV_KMODS += audiosolo -DRV_KMODS += audiots -DRV_KMODS += audiovia823x -DRV_KMODS_32 += audiovia97 -DRV_KMODS += bl -DRV_KMODS += blkdev -DRV_KMODS += bge -DRV_KMODS += bofi -DRV_KMODS += bpf -DRV_KMODS += bridge -DRV_KMODS += bscbus -DRV_KMODS += bscv -DRV_KMODS += chxge -DRV_KMODS += cxgbe -DRV_KMODS += ntxn -DRV_KMODS += myri10ge -DRV_KMODS += clone -DRV_KMODS += cmdk -DRV_KMODS += cn -DRV_KMODS += conskbd -DRV_KMODS += consms -DRV_KMODS += cpqary3 -DRV_KMODS += cpuid -DRV_KMODS += cpunex -DRV_KMODS += crypto -DRV_KMODS += cryptoadm -DRV_KMODS += dca -DRV_KMODS += devinfo -DRV_KMODS += dld -DRV_KMODS += dlpistub -DRV_KMODS_32 += dnet -DRV_KMODS += dump -DRV_KMODS += ecpp -DRV_KMODS += emlxs -DRV_KMODS += fd -DRV_KMODS += fdc -DRV_KMODS += fm -DRV_KMODS += fssnap -DRV_KMODS += hxge -DRV_KMODS += i8042 -DRV_KMODS += i915 -DRV_KMODS += icmp -DRV_KMODS += icmp6 -DRV_KMODS += intel_nb5000 -DRV_KMODS += intel_nhm -DRV_KMODS += ip -DRV_KMODS += ip6 -DRV_KMODS += ipd -DRV_KMODS += ipf -DRV_KMODS += ipnet -DRV_KMODS += ippctl -DRV_KMODS += ipsecah -DRV_KMODS += ipsecesp -DRV_KMODS += ipw -DRV_KMODS += iwh -DRV_KMODS += iwi -DRV_KMODS += iwk -DRV_KMODS += iwp -DRV_KMODS += iwscn -DRV_KMODS += kb8042 -DRV_KMODS += keysock -DRV_KMODS += kssl -DRV_KMODS += kstat -DRV_KMODS += ksyms -DRV_KMODS += kmdb -DRV_KMODS += llc1 -DRV_KMODS += lofi -DRV_KMODS += log -DRV_KMODS += logindmux -DRV_KMODS += mega_sas -DRV_KMODS += mc-amd -DRV_KMODS += mm -DRV_KMODS += mouse8042 -DRV_KMODS += mpt_sas -DRV_KMODS += mr_sas -DRV_KMODS += mwl -DRV_KMODS += nca -DRV_KMODS += nsmb -DRV_KMODS += nulldriver -DRV_KMODS += nv_sata -DRV_KMODS += nxge -DRV_KMODS += oce -DRV_KMODS += openeepr -DRV_KMODS += pci_pci -DRV_KMODS += pcic -DRV_KMODS += pcieb -DRV_KMODS += physmem -DRV_KMODS += pit_beep -DRV_KMODS += pm -DRV_KMODS += poll -DRV_KMODS += pool -DRV_KMODS += power -DRV_KMODS += pseudo -DRV_KMODS += ptc -DRV_KMODS += ptm -DRV_KMODS += pts -DRV_KMODS += ptsl -DRV_KMODS += qlge -DRV_KMODS += radeon -DRV_KMODS += ral -DRV_KMODS += ramdisk -DRV_KMODS += random -DRV_KMODS += rds -DRV_KMODS += rdsv3 -DRV_KMODS += rpcib -DRV_KMODS += rsm -DRV_KMODS += rts -DRV_KMODS += rtw -DRV_KMODS += rum -DRV_KMODS += rwd -DRV_KMODS += rwn -DRV_KMODS += sad -DRV_KMODS += sd -DRV_KMODS += sdhost -DRV_KMODS += sgen -DRV_KMODS += si3124 -DRV_KMODS += smbios -DRV_KMODS += softmac -DRV_KMODS += spdsock -DRV_KMODS += smbsrv -DRV_KMODS += smp -DRV_KMODS += sppp -DRV_KMODS += sppptun -DRV_KMODS += srpt -DRV_KMODS += st -DRV_KMODS += sy -DRV_KMODS += sysevent -DRV_KMODS += sysmsg -DRV_KMODS += tcp -DRV_KMODS += tcp6 -DRV_KMODS += tl -DRV_KMODS += tnf -DRV_KMODS += tpm -DRV_KMODS += trill -DRV_KMODS += udp -DRV_KMODS += udp6 -DRV_KMODS += ucode -DRV_KMODS += ural -DRV_KMODS += uath -DRV_KMODS += urtw -DRV_KMODS += vgatext -DRV_KMODS += heci -DRV_KMODS += vnic -DRV_KMODS += vscan -DRV_KMODS += wc -DRV_KMODS += winlock -DRV_KMODS += wpi -DRV_KMODS += xge -DRV_KMODS += yge -DRV_KMODS += zcons -DRV_KMODS += zyd -DRV_KMODS += simnet -DRV_KMODS += stmf -DRV_KMODS += stmf_sbd -DRV_KMODS += fct -DRV_KMODS += fcoe -DRV_KMODS += fcoet -DRV_KMODS += fcoei -DRV_KMODS += qlt -DRV_KMODS += iscsit -DRV_KMODS += pppt -DRV_KMODS += ncall nsctl sdbc nskern sv -DRV_KMODS += ii rdc rdcsrv rdcstub -DRV_KMODS += iptun - -# -# Common code drivers -# - -DRV_KMODS += afe -DRV_KMODS += atge -DRV_KMODS += bfe -DRV_KMODS += dmfe -DRV_KMODS += e1000g -DRV_KMODS += efe -DRV_KMODS += elxl -DRV_KMODS += hme -DRV_KMODS += mxfe -DRV_KMODS += nge -DRV_KMODS += pcn -DRV_KMODS += rge -DRV_KMODS += rtls -DRV_KMODS += sfe -DRV_KMODS += amd8111s -DRV_KMODS += igb -DRV_KMODS += ipmi -DRV_KMODS += iprb -DRV_KMODS += ixgbe -DRV_KMODS += vr - -# -# Virtio drivers -# - -# Virtio core -DRV_KMODS += virtio - -# Virtio block driver -DRV_KMODS += vioblk - -# -# DTrace and DTrace Providers -# -DRV_KMODS += dtrace -DRV_KMODS += fbt -DRV_KMODS += lockstat -DRV_KMODS += profile -DRV_KMODS += sdt -DRV_KMODS += systrace -DRV_KMODS += fasttrap -DRV_KMODS += dcpc - -# -# I/O framework test drivers -# -DRV_KMODS += pshot -DRV_KMODS += gen_drv -DRV_KMODS += tvhci tphci tclient -DRV_KMODS += emul64 - -# -# Machine Specific Driver Modules (/kernel/drv): -# -DRV_KMODS += options -DRV_KMODS += scsi_vhci -DRV_KMODS += pmcs -DRV_KMODS += pmcs8001fw -DRV_KMODS += arcmsr -DRV_KMODS += fcp -DRV_KMODS += fcip -DRV_KMODS += fcsm -DRV_KMODS += fp -DRV_KMODS += qlc -DRV_KMODS += iscsi - -# -# PCMCIA specific module(s) -# -DRV_KMODS += pcs -MISC_KMODS += cardbus - -# -# SCSI Enclosure Services driver -# -DRV_KMODS += ses - -# -# USB specific modules -# -DRV_KMODS += hid -DRV_KMODS += hwarc hwahc -DRV_KMODS += hubd -DRV_KMODS += uhci -DRV_KMODS += ehci -DRV_KMODS += ohci -DRV_KMODS += usb_mid -DRV_KMODS += usb_ia -DRV_KMODS += scsa2usb -DRV_KMODS += usbprn -DRV_KMODS += ugen -DRV_KMODS += usbser -DRV_KMODS += usbsacm -DRV_KMODS += usbsksp -DRV_KMODS += usbsprl -DRV_KMODS += usb_ac -DRV_KMODS += usb_as -DRV_KMODS += usbskel -DRV_KMODS += usbvc -DRV_KMODS += usbftdi -DRV_KMODS += wusb_df -DRV_KMODS += wusb_ca -DRV_KMODS += usbecm - -# -# 1394 modules -# -MISC_KMODS += s1394 sbp2 -DRV_KMODS += hci1394 scsa1394 -DRV_KMODS += av1394 -DRV_KMODS += dcam1394 - -# -# InfiniBand pseudo drivers -# -DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs -DRV_KMODS += sol_umad - -# -# LVM modules -# -DRV_KMODS += md -MISC_KMODS += md_stripe md_hotspares md_mirror md_raid md_trans md_notify -MISC_KMODS += md_sp - -# -# Brand modules -# -BRAND_KMODS += sn1_brand s10_brand - -# -# Exec Class Modules (/kernel/exec): -# -EXEC_KMODS += elfexec intpexec shbinexec javaexec - -# -# Scheduling Class Modules (/kernel/sched): -# -SCHED_KMODS += IA RT TS RT_DPTBL TS_DPTBL FSS FX FX_DPTBL SDC - -# -# File System Modules (/kernel/fs): -# -FS_KMODS += autofs cachefs ctfs dcfs dev devfs fdfs fifofs hsfs lofs -FS_KMODS += mntfs namefs nfs objfs zfs zut -FS_KMODS += pcfs procfs sockfs specfs tmpfs udfs ufs sharefs -FS_KMODS += smbfs - -# -# Streams Modules (/kernel/strmod): -# -STRMOD_KMODS += bufmod connld dedump ldterm pckt pfmod pipemod -STRMOD_KMODS += ptem redirmod rpcmod rlmod telmod timod -STRMOD_KMODS += spppasyn spppcomp -STRMOD_KMODS += tirdwr ttcompat -STRMOD_KMODS += usbkbm -STRMOD_KMODS += usbms -STRMOD_KMODS += usbwcm -STRMOD_KMODS += usb_ah -STRMOD_KMODS += drcompat -STRMOD_KMODS += cryptmod -STRMOD_KMODS += vuid2ps2 -STRMOD_KMODS += vuid3ps2 -STRMOD_KMODS += vuidm3p -STRMOD_KMODS += vuidm4p -STRMOD_KMODS += vuidm5p - -# -# 'System' Modules (/kernel/sys): -# -SYS_KMODS += c2audit -SYS_KMODS += doorfs -SYS_KMODS += exacctsys -SYS_KMODS += inst_sync -SYS_KMODS += kaio -SYS_KMODS += msgsys -SYS_KMODS += pipe -SYS_KMODS += portfs -SYS_KMODS += pset -SYS_KMODS += semsys -SYS_KMODS += shmsys -SYS_KMODS += sysacct -SYS_KMODS += acctctl - -# -# 'Misc' Modules (/kernel/misc) -# MISC_KMODS are built both 32-bit and 64-bit -# MISC_KMODS_32 are built only 32-bit -# MISC_KMODS_64 are built only 64-bit -# -MISC_KMODS += ac97 -MISC_KMODS += acpica -MISC_KMODS += agpmaster -MISC_KMODS += bignum -MISC_KMODS += bootdev -MISC_KMODS += busra -MISC_KMODS += cmlb -MISC_KMODS += consconfig -MISC_KMODS += ctf -MISC_KMODS += dadk -MISC_KMODS += dcopy -MISC_KMODS += dls -MISC_KMODS += drm -MISC_KMODS += fssnap_if -MISC_KMODS += gda -MISC_KMODS += gld -MISC_KMODS += hidparser -MISC_KMODS += hook -MISC_KMODS += hpcsvc -MISC_KMODS += ibcm -MISC_KMODS += ibdm -MISC_KMODS += ibdma -MISC_KMODS += ibmf -MISC_KMODS += ibtl -MISC_KMODS += idm -MISC_KMODS += idmap -MISC_KMODS += iommulib -MISC_KMODS += ipc -MISC_KMODS += kbtrans -MISC_KMODS += kcf -MISC_KMODS += kgssapi -MISC_KMODS += kmech_dummy -MISC_KMODS += kmech_krb5 -MISC_KMODS += ksocket -MISC_KMODS += mac -MISC_KMODS += mii -MISC_KMODS += mwlfw -MISC_KMODS += net80211 -MISC_KMODS += nfs_dlboot -MISC_KMODS += nfssrv -MISC_KMODS += neti -MISC_KMODS += pci_autoconfig -MISC_KMODS += pcicfg -MISC_KMODS += pcihp -MISC_KMODS += pcmcia -MISC_KMODS += rpcsec -MISC_KMODS += rpcsec_gss -MISC_KMODS += rsmops -MISC_KMODS += sata -MISC_KMODS += scsi -MISC_KMODS += sda -MISC_KMODS += sol_ofs -MISC_KMODS += spuni -MISC_KMODS += strategy -MISC_KMODS += strplumb -MISC_KMODS += tem -MISC_KMODS += tlimod -MISC_KMODS += usba usba10 usbs49_fw -MISC_KMODS += scsi_vhci_f_sym_hds -MISC_KMODS += scsi_vhci_f_sym -MISC_KMODS += scsi_vhci_f_tpgs -MISC_KMODS += scsi_vhci_f_asym_sun -MISC_KMODS += scsi_vhci_f_tape -MISC_KMODS += scsi_vhci_f_tpgs_tape -MISC_KMODS += fctl -MISC_KMODS += emlxs_fw -MISC_KMODS += qlc_fw_2200 -MISC_KMODS += qlc_fw_2300 -MISC_KMODS += qlc_fw_2400 -MISC_KMODS += qlc_fw_2500 -MISC_KMODS += qlc_fw_6322 -MISC_KMODS += qlc_fw_8100 -MISC_KMODS += hwa1480_fw -MISC_KMODS += uathfw -MISC_KMODS += uwba - -MISC_KMODS += klmmod klmops - -# -# Software Cryptographic Providers (/kernel/crypto): -# -CRYPTO_KMODS += aes -CRYPTO_KMODS += arcfour -CRYPTO_KMODS += blowfish -CRYPTO_KMODS += des -CRYPTO_KMODS += ecc -CRYPTO_KMODS += md4 -CRYPTO_KMODS += md5 -CRYPTO_KMODS += rsa -CRYPTO_KMODS += sha1 -CRYPTO_KMODS += sha2 -CRYPTO_KMODS += swrand - -# -# IP Policy Modules (/kernel/ipp) -# -IPP_KMODS += dlcosmk -IPP_KMODS += flowacct -IPP_KMODS += ipgpc -IPP_KMODS += dscpmk -IPP_KMODS += tokenmt -IPP_KMODS += tswtclmt - -# -# generic-unix module (/kernel/genunix): -# -GENUNIX_KMODS += genunix - -# -# Modules eXcluded from the product: -# - -# -# 'Dacf' Modules (/kernel/dacf): -# - -# -# Performance Counter BackEnd modules (/usr/kernel/pcbe) -# -PCBE_KMODS += p123_pcbe p4_pcbe opteron_pcbe core_pcbe - -# -# MAC-Type Plugin Modules (/kernel/mac) -# -MAC_KMODS += mac_6to4 -MAC_KMODS += mac_ether -MAC_KMODS += mac_ipv4 -MAC_KMODS += mac_ipv6 -MAC_KMODS += mac_wifi -MAC_KMODS += mac_ib - -# -# socketmod (kernel/socketmod) -# -SOCKET_KMODS += sockpfp -SOCKET_KMODS += socksctp -SOCKET_KMODS += socksdp -SOCKET_KMODS += sockrds -SOCKET_KMODS += ksslf - -# -# kiconv modules (/kernel/kiconv): -# -KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc - -# -# 'Dacf' Modules (/kernel/dacf): -# -DACF_KMODS += net_dacf diff --git a/usr/src/uts/intel/Makefile.targ b/usr/src/uts/intel/Makefile.targ index 36c3ab4216..d1e77fb7e0 100644 --- a/usr/src/uts/intel/Makefile.targ +++ b/usr/src/uts/intel/Makefile.targ @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -18,12 +19,24 @@ # # CDDL HEADER END # +# +# uts/intel/Makefile.targ +# # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This Makefile defines the set of all required, target containing +# included Makefiles for the intel "implementation architecture". # -UTSTREE=$(UTSBASE) +# +# Targets for all implementations: +# +include $(UTSBASE)/Makefile.targ -include $(UTSBASE)/intel/Makefile.targ.shared +# +# Target set for intel (order is not important, as it is with the +# isomorphic Makefile.files set). +# +include $(UTSBASE)/intel/Makefile.rules +include $(UTSBASE)/common/Makefile.rules diff --git a/usr/src/uts/intel/Makefile.targ.shared b/usr/src/uts/intel/Makefile.targ.shared deleted file mode 100644 index 8c63e6e95f..0000000000 --- a/usr/src/uts/intel/Makefile.targ.shared +++ /dev/null @@ -1,44 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# uts/intel/Makefile.targ -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#pragma ident "%Z%%M% %I% %E% SMI" -# -# This Makefile defines the set of all required, target containing -# included Makefiles for the intel "implementation architecture". -# - -# -# Targets for all implementations: -# -include $(UTSBASE)/Makefile.targ - -# -# Target set for intel (order is not important, as it is with the -# isomorphic Makefile.files set). -# -include $(UTSTREE)/intel/Makefile.rules -include $(UTSTREE)/common/Makefile.rules diff --git a/usr/src/uts/intel/kmech_krb5/req.flg b/usr/src/uts/intel/kmech_krb5/req.flg index b7ac8da3cf..55c983ba48 100644 --- a/usr/src/uts/intel/kmech_krb5/req.flg +++ b/usr/src/uts/intel/kmech_krb5/req.flg @@ -21,17 +21,13 @@ # CDDL HEADER END # # -# ident "%Z%%M% %I% %E% SMI" -# # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # echo_file usr/src/uts/intel/Makefile echo_file usr/src/uts/intel/Makefile.files echo_file usr/src/uts/intel/Makefile.intel -echo_file usr/src/uts/intel/Makefile.intel.shared echo_file usr/src/uts/intel/Makefile.rules echo_file usr/src/uts/intel/Makefile.targ -echo_file usr/src/uts/intel/Makefile.targ.shared echo_file usr/src/uts/common/Makefile.files echo_file usr/src/uts/common/Makefile.rules diff --git a/usr/src/uts/sparc/Makefile.sparc b/usr/src/uts/sparc/Makefile.sparc index c5e313e0b9..600e8f07ee 100644 --- a/usr/src/uts/sparc/Makefile.sparc +++ b/usr/src/uts/sparc/Makefile.sparc @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -18,14 +19,479 @@ # CDDL HEADER END # +# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2013 Andrew Stormont. All rights reserved. + + +# +# This makefile contains the common definitions for all sparc +# implementation architecture independent modules. +# + +# +# Define supported builds +# +DEF_BUILDS = $(DEF_BUILDS64) +ALL_BUILDS = $(ALL_BUILDS64) + +# +# Everybody needs to know how to build modstubs.o and to locate unix.o. +# Note that unix.o must currently be selected from among the possible +# "implementation architectures". Note further, that unix.o is only +# used as an optional error check for undefines so (theoretically) +# any "implementation architectures" could be used. We choose sun4u +# because it is the reference port. +# +UNIX_DIR = $(UTSBASE)/sun4u/unix +GENLIB_DIR = $(UTSBASE)/sun4u/genunix +IPDRV_DIR = $(UTSBASE)/sparc/ip +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UNIX_DIR) +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/sparc/lint-libs/$(OBJS_DIR) + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o +MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o +GENLIB = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/libgenunix.so + +LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln +GEN_LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln + +LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln +GEN_LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln + +LINT_LIB = $(LINT_LIB_$(CLASS)) +GEN_LINT_LIB = $(GEN_LINT_LIB_$(CLASS)) + +LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%) +LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln) + +LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%) +LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln) + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# +include $(UTSBASE)/sparc/Makefile.files +include $(UTSBASE)/sparc/v9/Makefile.files +include $(UTSBASE)/sun/Makefile.files +include $(UTSBASE)/common/Makefile.files + +# +# ----- TRANSITIONAL SECTION -------------------------------------------------- +# + +# +# Not everything which *should* be a module is a module yet. The +# following is a list of such objects which are currently part of +# genunix but which might someday become kmods. This must be +# defined before we include Makefile.uts, or else genunix's build +# won't be as parallel as we might like. +# +NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS) + +# +# ----- END OF TRANSITIONAL SECTION ------------------------------------------- +# +# Include machine independent rules. Note that this does not imply +# that the resulting module from rules in Makefile.uts is machine +# independent. Only that the build rules are machine independent. +# +include $(UTSBASE)/Makefile.uts + +# +# machine specific optimization, override default in Makefile.master +# +XARCH_32 = -xarch=v8 +XARCH_64 = -m64 +XARCH = $(XARCH_$(CLASS)) + +COPTIMIZE_32 = -xO3 +COPTIMIZE_64 = -xO3 +COPTIMIZE = $(COPTIMIZE_$(CLASS)) + +CCMODE = -Xa + +CFLAGS_32 = -xcg92 +CFLAGS_64 = -xchip=ultra $(CCABS32) $(CCREGSYM) +CFLAGS = $(CFLAGS_$(CLASS)) + +CFLAGS += $(XARCH) +CFLAGS += $(COPTIMIZE) +CFLAGS += $(EXTRA_CFLAGS) +CFLAGS += $(XAOPT) +CFLAGS += $(INLINES) -D_ASM_INLINES +CFLAGS += $(CCMODE) +CFLAGS += $(SPACEFLAG) +CFLAGS += $(CERRWARN) +CFLAGS += $(CTF_FLAGS_$(CLASS)) +CFLAGS += $(C99MODE) +CFLAGS += $(CCUNBOUND) +CFLAGS += $(CCSTATICSYM) +CFLAGS += $(CC32BITCALLERS) +CFLAGS += $(CCNOAUTOINLINE) +CFLAGS += $(IROPTFLAG) +CFLAGS += $(CGLOBALSTATIC) +CFLAGS += -xregs=no%float +CFLAGS += -xstrconst +CFLAGS += $(CSOURCEDEBUGFLAGS) +CFLAGS += $(CUSERFLAGS) + +ASFLAGS += $(XARCH) + +LINT_DEFS_32 = +LINT_DEFS_64 = -m64 +LINT_DEFS += $(LINT_DEFS_$(CLASS)) + +# +# The following must be defined for all implementations: +# +# MODSTUBS: Module stubs source file. +# +MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s + +# +# Define the actual specific platforms - obviously none. +# +MACHINE_DEFS = + +# +# Debugging level +# +# Special knowledge of which special debugging options effect which +# file is used to optimize the build if these flags are changed. # -# Copyright 2010 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. +# XXX: The above could possibly be done for more flags and files, but +# is left as an experiment to the interested reader. Be forewarned, +# that excessive use could lead to maintenance difficulties. # +DEBUG_DEFS_OBJ32 = +DEBUG_DEFS_DBG32 = -DDEBUG +DEBUG_DEFS_OBJ64 = +DEBUG_DEFS_DBG64 = -DDEBUG +DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) -UTSTREE=$(UTSBASE) +DEBUG_COND_OBJ32 = $(POUND_SIGN) +DEBUG_COND_DBG32 = +DEBUG_COND_OBJ64 = $(POUND_SIGN) +DEBUG_COND_DBG64 = +IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ -include $(UTSBASE)/sparc/Makefile.sparc.shared +$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE +$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1 + +# Comment these out if you don't want dispatcher lock statistics. + +# $(IF_DEBUG_OBJ)disp_lock.o := DEBUG_DEFS += -DDISP_LOCK_STATS + +# +# Collect the preprocessor definitions to be associated with *all* +# files. +# +ALL_DEFS = $(MACHINE_DEFS) $(DEBUG_DEFS) $(OPTION_DEFS) +# +# +# The kernels modules which are "implementation architecture" +# specific for this machine are enumerated below. Note that most +# of these modules must exist (in one form or another) for each +# architecture. +# +# Common Drivers (usually pseudo drivers) (/kernel/drv): +# +DRV_KMODS += aggr arp audio bl blkdev bofi clone cn conskbd consms cpuid +DRV_KMODS += crypto cryptoadm devinfo dump +DRV_KMODS += dtrace fasttrap fbt lockstat profile sdt systrace dcpc +DRV_KMODS += fssnap icmp icmp6 ip ip6 ipnet ipsecah +DRV_KMODS += ipsecesp iptun iwscn keysock kmdb kstat ksyms llc1 +DRV_KMODS += lofi +DRV_KMODS += log logindmux kssl mm nca physmem pm poll pool +DRV_KMODS += pseudo ptc ptm pts ptsl ramdisk random rsm rts sad +DRV_KMODS += simnet softmac sppp sppptun sy sysevent sysmsg +DRV_KMODS += spdsock +DRV_KMODS += tcp tcp6 tl tnf ttymux udp udp6 wc winlock zcons +DRV_KMODS += ippctl +DRV_KMODS += dld +DRV_KMODS += ipf +DRV_KMODS += rpcib +DRV_KMODS += dlpistub +DRV_KMODS += vnic +DRV_KMODS += xge +DRV_KMODS += rds +DRV_KMODS += rdsv3 +DRV_KMODS += chxge +DRV_KMODS += smbsrv +DRV_KMODS += vscan +DRV_KMODS += nsmb +DRV_KMODS += fm +DRV_KMODS += nulldriver +DRV_KMODS += bridge trill +DRV_KMODS += bpf +DRV_KMODS += dca + +# +# Hardware Drivers in common space +# + +DRV_KMODS += afe +DRV_KMODS += audio1575 +DRV_KMODS += audioens +DRV_KMODS += audiols +DRV_KMODS += audiop16x +DRV_KMODS += audiopci +DRV_KMODS += audiots +DRV_KMODS += e1000g +DRV_KMODS += efe +DRV_KMODS += hxge +DRV_KMODS += mxfe +DRV_KMODS += rge +DRV_KMODS += rtls +DRV_KMODS += sfe +DRV_KMODS += aac +DRV_KMODS += igb +DRV_KMODS += ixgbe +DRV_KMODS += vr +DRV_KMODS += mr_sas +DRV_KMODS += yge + +# +# Machine Specific Driver Modules (/kernel/drv): +# +DRV_KMODS += audiocs +DRV_KMODS += bge dmfe eri fas hme qfe +DRV_KMODS += openeepr options sd ses st +DRV_KMODS += ssd +DRV_KMODS += ecpp +DRV_KMODS += hid hubd ehci ohci uhci usb_mid usb_ia scsa2usb usbprn ugen +DRV_KMODS += usbser usbsacm usbsksp usbsprl +DRV_KMODS += usb_as usb_ac +DRV_KMODS += usbskel +DRV_KMODS += usbvc +DRV_KMODS += usbftdi +DRV_KMODS += wusb_df hwahc hwarc wusb_ca +DRV_KMODS += usbecm +DRV_KMODS += hci1394 av1394 scsa1394 dcam1394 +DRV_KMODS += sbp2 +DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs +DRV_KMODS += sol_umad +DRV_KMODS += pci_pci pcieb pcieb_bcm +DRV_KMODS += i8042 kb8042 mouse8042 +DRV_KMODS += fcode +DRV_KMODS += mpt_sas +DRV_KMODS += socal +DRV_KMODS += sgen +DRV_KMODS += myri10ge +DRV_KMODS += smp +DRV_KMODS += dad +DRV_KMODS += scsi_vhci +DRV_KMODS += fcp +DRV_KMODS += fcip +DRV_KMODS += fcsm +DRV_KMODS += fp +DRV_KMODS += qlc +DRV_KMODS += qlge +DRV_KMODS += stmf +DRV_KMODS += stmf_sbd +DRV_KMODS += fct +DRV_KMODS += fcoe +DRV_KMODS += fcoet +DRV_KMODS += fcoei +DRV_KMODS += qlt +DRV_KMODS += iscsit +DRV_KMODS += pppt +DRV_KMODS += ncall nsctl sdbc nskern sv +DRV_KMODS += ii rdc rdcsrv rdcstub +DRV_KMODS += iscsi +DRV_KMODS += emlxs +DRV_KMODS += oce +DRV_KMODS += srpt +DRV_KMODS += pmcs +DRV_KMODS += pmcs8001fw + +# +# I/O framework test drivers +# +DRV_KMODS += pshot +DRV_KMODS += gen_drv +DRV_KMODS += tvhci tphci tclient +DRV_KMODS += emul64 + +# +# PCMCIA specific module(s) +# +DRV_KMODS += pcs +MISC_KMODS += busra cardbus dada pcmcia +DRV_KMODS += pcic + +# Add lvm +# +DRV_KMODS += md +MISC_KMODS += md_mirror md_stripe md_hotspares md_raid md_trans md_notify +MISC_KMODS += md_sp + +# +# Exec Class Modules (/kernel/exec): +# +EXEC_KMODS += aoutexec elfexec intpexec shbinexec javaexec + +# +# Scheduling Class Modules (/kernel/sched): +# +SCHED_KMODS += RT TS RT_DPTBL TS_DPTBL IA FSS FX FX_DPTBL SDC + +# +# File System Modules (/kernel/fs): +# +FS_KMODS += dev devfs fdfs fifofs hsfs lofs namefs nfs pcfs tmpfs zfs +FS_KMODS += zut specfs udfs ufs autofs cachefs procfs sockfs mntfs +FS_KMODS += ctfs objfs sharefs dcfs smbfs + +# +# Streams Modules (/kernel/strmod): +# +STRMOD_KMODS += bufmod connld dedump ldterm ms pckt pfmod +STRMOD_KMODS += pipemod ptem redirmod rpcmod rlmod telmod timod +STRMOD_KMODS += spppasyn spppcomp +STRMOD_KMODS += tirdwr ttcompat +STRMOD_KMODS += usbkbm usbms usbwcm usb_ah +STRMOD_KMODS += drcompat +STRMOD_KMODS += cryptmod +STRMOD_KMODS += vuid3ps2 + +# +# 'System' Modules (/kernel/sys): +# +SYS_KMODS += c2audit +SYS_KMODS += exacctsys +SYS_KMODS += inst_sync kaio msgsys semsys shmsys sysacct pipe +SYS_KMODS += doorfs pset acctctl portfs + +# +# 'User' Modules (/kernel/misc): +# +MISC_KMODS += ac97 +MISC_KMODS += bignum +MISC_KMODS += consconfig gld ipc nfs_dlboot nfssrv scsi +MISC_KMODS += strplumb swapgeneric tlimod +MISC_KMODS += rpcsec rpcsec_gss kgssapi kmech_dummy +MISC_KMODS += kmech_krb5 +MISC_KMODS += fssnap_if +MISC_KMODS += hidparser kbtrans usba usba10 usbs49_fw +MISC_KMODS += s1394 +MISC_KMODS += hpcsvc pcihp +MISC_KMODS += rsmops +MISC_KMODS += kcf +MISC_KMODS += ksocket +MISC_KMODS += ibcm +MISC_KMODS += ibdm +MISC_KMODS += ibdma +MISC_KMODS += ibmf +MISC_KMODS += ibtl +MISC_KMODS += sol_ofs +MISC_KMODS += idm +MISC_KMODS += idmap +MISC_KMODS += hook +MISC_KMODS += neti +MISC_KMODS += ctf +MISC_KMODS += mac dls +MISC_KMODS += cmlb +MISC_KMODS += tem +MISC_KMODS += pcicfg fcodem fcpci +MISC_KMODS += scsi_vhci_f_sym scsi_vhci_f_tpgs scsi_vhci_f_asym_sun +MISC_KMODS += scsi_vhci_f_sym_hds +MISC_KMODS += scsi_vhci_f_tape scsi_vhci_f_tpgs_tape +MISC_KMODS += fctl +MISC_KMODS += emlxs_fw +MISC_KMODS += qlc_fw_2200 +MISC_KMODS += qlc_fw_2300 +MISC_KMODS += qlc_fw_2400 +MISC_KMODS += qlc_fw_2500 +MISC_KMODS += qlc_fw_6322 +MISC_KMODS += qlc_fw_8100 +MISC_KMODS += spuni +MISC_KMODS += hwa1480_fw uwba +MISC_KMODS += mii + +MISC_KMODS += klmmod klmops + +# +# Software Cryptographic Providers (/kernel/crypto): +# +CRYPTO_KMODS += aes +CRYPTO_KMODS += arcfour +CRYPTO_KMODS += blowfish +CRYPTO_KMODS += des +CRYPTO_KMODS += md4 +CRYPTO_KMODS += md5 +CRYPTO_KMODS += ecc +CRYPTO_KMODS += rsa +CRYPTO_KMODS += sha1 +CRYPTO_KMODS += sha2 +CRYPTO_KMODS += swrand + +# +# IP Policy Modules (/kernel/ipp): +# +IPP_KMODS += dlcosmk +IPP_KMODS += flowacct +IPP_KMODS += ipgpc +IPP_KMODS += dscpmk +IPP_KMODS += tokenmt +IPP_KMODS += tswtclmt + +# +# 'Dacf' modules (/kernel/dacf) +DACF_KMODS += consconfig_dacf + +# +# SVVS Testing Modules (/kernel/strmod): +# +# These are streams and driver modules which are not to be +# delivered with a released system. However, during development +# it is convenient to build and install the SVVS kernel modules. +# +SVVS_KMODS += lmodb lmode lmodr lmodt svvslo tidg tivc tmux + +# +# Modules eXcluded from the product: +# +XMODS += + +# +# 'Dacf' Modules (/kernel/dacf): +# +DACF_KMODS += net_dacf + +# +# MAC-Type Plugin Modules (/kernel/mac) +# +MAC_KMODS += mac_6to4 +MAC_KMODS += mac_ether +MAC_KMODS += mac_ipv4 +MAC_KMODS += mac_ipv6 +MAC_KMODS += mac_wifi +MAC_KMODS += mac_ib + +# +# socketmod (kernel/socketmod) +# +SOCKET_KMODS += sockpfp +SOCKET_KMODS += socksctp +SOCKET_KMODS += socksdp +SOCKET_KMODS += sockrds +SOCKET_KMODS += ksslf + +# +# kiconv modules (/kernel/kiconv): +# +KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc # # Ensure that the variable member of the cpu_t (cpu_m) is defined diff --git a/usr/src/uts/sparc/Makefile.sparc.shared b/usr/src/uts/sparc/Makefile.sparc.shared deleted file mode 100644 index 11a89cfc61..0000000000 --- a/usr/src/uts/sparc/Makefile.sparc.shared +++ /dev/null @@ -1,494 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -# Copyright (c) 2013 Andrew Stormont. All rights reserved. - - -# -# This makefile contains the common definitions for all sparc -# implementation architecture independent modules. -# - -# -# Define supported builds -# -DEF_BUILDS = $(DEF_BUILDS64) -ALL_BUILDS = $(ALL_BUILDS64) - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o. -# Note that unix.o must currently be selected from among the possible -# "implementation architectures". Note further, that unix.o is only -# used as an optional error check for undefines so (theoretically) -# any "implementation architectures" could be used. We choose sun4u -# because it is the reference port. -# -UNIX_DIR = $(UTSBASE)/sun4u/unix -GENLIB_DIR = $(UTSBASE)/sun4u/genunix -IPDRV_DIR = $(UTSBASE)/sparc/ip -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UNIX_DIR) -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/sparc/lint-libs/$(OBJS_DIR) - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o -MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o -GENLIB = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/libgenunix.so - -LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln -GEN_LINT_LIB_32 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln - -LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lunix.ln -GEN_LINT_LIB_64 = $(UTSBASE)/sun4u/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln - -LINT_LIB = $(LINT_LIB_$(CLASS)) -GEN_LINT_LIB = $(GEN_LINT_LIB_$(CLASS)) - -LINT32_DIRS = $(LINT32_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%) -LINT32_FILES = $(LINT32_DIRS:%=%/llib-l$(MODULE).ln) - -LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/sparc/lint-libs/%) -LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln) - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSBASE)/sparc/Makefile.files -include $(UTSBASE)/sparc/v9/Makefile.files -include $(UTSTREE)/sun/Makefile.files -include $(UTSTREE)/common/Makefile.files - -# -# ----- TRANSITIONAL SECTION -------------------------------------------------- -# - -# -# Not everything which *should* be a module is a module yet. The -# following is a list of such objects which are currently part of -# genunix but which might someday become kmods. This must be -# defined before we include Makefile.uts, or else genunix's build -# won't be as parallel as we might like. -# -NOT_YET_KMODS = $(OLDPTY_OBJS) $(PTY_OBJS) $(VCONS_CONF_OBJS) $(MOD_OBJS) - -# -# ----- END OF TRANSITIONAL SECTION ------------------------------------------- -# -# Include machine independent rules. Note that this does not imply -# that the resulting module from rules in Makefile.uts is machine -# independent. Only that the build rules are machine independent. -# -include $(UTSBASE)/Makefile.uts - -# -# machine specific optimization, override default in Makefile.master -# -XARCH_32 = -xarch=v8 -XARCH_64 = -m64 -XARCH = $(XARCH_$(CLASS)) - -COPTIMIZE_32 = -xO3 -COPTIMIZE_64 = -xO3 -COPTIMIZE = $(COPTIMIZE_$(CLASS)) - -CCMODE = -Xa - -CFLAGS_32 = -xcg92 -CFLAGS_64 = -xchip=ultra $(CCABS32) $(CCREGSYM) -CFLAGS = $(CFLAGS_$(CLASS)) - -CFLAGS += $(XARCH) -CFLAGS += $(COPTIMIZE) -CFLAGS += $(EXTRA_CFLAGS) -CFLAGS += $(XAOPT) -CFLAGS += $(INLINES) -D_ASM_INLINES -CFLAGS += $(CCMODE) -CFLAGS += $(SPACEFLAG) -CFLAGS += $(CERRWARN) -CFLAGS += $(CTF_FLAGS_$(CLASS)) -CFLAGS += $(C99MODE) -CFLAGS += $(CCUNBOUND) -CFLAGS += $(CCSTATICSYM) -CFLAGS += $(CC32BITCALLERS) -CFLAGS += $(CCNOAUTOINLINE) -CFLAGS += $(IROPTFLAG) -CFLAGS += $(CGLOBALSTATIC) -CFLAGS += -xregs=no%float -CFLAGS += -xstrconst -CFLAGS += $(CSOURCEDEBUGFLAGS) -CFLAGS += $(CUSERFLAGS) - -ASFLAGS += $(XARCH) - -LINT_DEFS_32 = -LINT_DEFS_64 = -m64 -LINT_DEFS += $(LINT_DEFS_$(CLASS)) - -# -# The following must be defined for all implementations: -# -# MODSTUBS: Module stubs source file. -# -MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s - -# -# Define the actual specific platforms - obviously none. -# -MACHINE_DEFS = - -# -# Debugging level -# -# Special knowledge of which special debugging options effect which -# file is used to optimize the build if these flags are changed. -# -# XXX: The above could possibly be done for more flags and files, but -# is left as an experiment to the interested reader. Be forewarned, -# that excessive use could lead to maintenance difficulties. -# -DEBUG_DEFS_OBJ32 = -DEBUG_DEFS_DBG32 = -DDEBUG -DEBUG_DEFS_OBJ64 = -DEBUG_DEFS_DBG64 = -DDEBUG -DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) - -DEBUG_COND_OBJ32 = $(POUND_SIGN) -DEBUG_COND_DBG32 = -DEBUG_COND_OBJ64 = $(POUND_SIGN) -DEBUG_COND_DBG64 = -IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ - -$(IF_DEBUG_OBJ)syscall.o := DEBUG_DEFS += -DSYSCALLTRACE -$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=1 - -# Comment these out if you don't want dispatcher lock statistics. - -# $(IF_DEBUG_OBJ)disp_lock.o := DEBUG_DEFS += -DDISP_LOCK_STATS - -# -# Collect the preprocessor definitions to be associated with *all* -# files. -# -ALL_DEFS = $(MACHINE_DEFS) $(DEBUG_DEFS) $(OPTION_DEFS) -# -# -# The kernels modules which are "implementation architecture" -# specific for this machine are enumerated below. Note that most -# of these modules must exist (in one form or another) for each -# architecture. -# -# Common Drivers (usually pseudo drivers) (/kernel/drv): -# -DRV_KMODS += aggr arp audio bl blkdev bofi clone cn conskbd consms cpuid -DRV_KMODS += crypto cryptoadm devinfo dump -DRV_KMODS += dtrace fasttrap fbt lockstat profile sdt systrace dcpc -DRV_KMODS += fssnap icmp icmp6 ip ip6 ipnet ipsecah -DRV_KMODS += ipsecesp iptun iwscn keysock kmdb kstat ksyms llc1 -DRV_KMODS += lofi -DRV_KMODS += log logindmux kssl mm nca physmem pm poll pool -DRV_KMODS += pseudo ptc ptm pts ptsl ramdisk random rsm rts sad -DRV_KMODS += simnet softmac sppp sppptun sy sysevent sysmsg -DRV_KMODS += spdsock -DRV_KMODS += tcp tcp6 tl tnf ttymux udp udp6 wc winlock zcons -DRV_KMODS += ippctl -DRV_KMODS += dld -DRV_KMODS += ipf -DRV_KMODS += rpcib -DRV_KMODS += dlpistub -DRV_KMODS += vnic -DRV_KMODS += xge -DRV_KMODS += rds -DRV_KMODS += rdsv3 -DRV_KMODS += chxge -DRV_KMODS += smbsrv -DRV_KMODS += vscan -DRV_KMODS += nsmb -DRV_KMODS += fm -DRV_KMODS += nulldriver -DRV_KMODS += bridge trill -DRV_KMODS += bpf -DRV_KMODS += dca - -# -# Hardware Drivers in common space -# - -DRV_KMODS += afe -DRV_KMODS += audio1575 -DRV_KMODS += audioens -DRV_KMODS += audiols -DRV_KMODS += audiop16x -DRV_KMODS += audiopci -DRV_KMODS += audiots -DRV_KMODS += e1000g -DRV_KMODS += efe -DRV_KMODS += hxge -DRV_KMODS += mxfe -DRV_KMODS += rge -DRV_KMODS += rtls -DRV_KMODS += sfe -DRV_KMODS += aac -DRV_KMODS += igb -DRV_KMODS += ixgbe -DRV_KMODS += vr -DRV_KMODS += mr_sas -DRV_KMODS += yge - -# -# Machine Specific Driver Modules (/kernel/drv): -# -DRV_KMODS += audiocs -DRV_KMODS += bge dmfe eri fas hme qfe -DRV_KMODS += openeepr options sd ses st -DRV_KMODS += ssd -DRV_KMODS += ecpp -DRV_KMODS += hid hubd ehci ohci uhci usb_mid usb_ia scsa2usb usbprn ugen -DRV_KMODS += usbser usbsacm usbsksp usbsprl -DRV_KMODS += usb_as usb_ac -DRV_KMODS += usbskel -DRV_KMODS += usbvc -DRV_KMODS += usbftdi -DRV_KMODS += wusb_df hwahc hwarc wusb_ca -DRV_KMODS += usbecm -DRV_KMODS += hci1394 av1394 scsa1394 dcam1394 -DRV_KMODS += sbp2 -DRV_KMODS += ib ibp eibnx eoib rdsib sdp iser daplt hermon tavor sol_ucma sol_uverbs -DRV_KMODS += sol_umad -DRV_KMODS += pci_pci pcieb pcieb_bcm -DRV_KMODS += i8042 kb8042 mouse8042 -DRV_KMODS += fcode -DRV_KMODS += mpt_sas -DRV_KMODS += socal -DRV_KMODS += sgen -DRV_KMODS += myri10ge -DRV_KMODS += smp -DRV_KMODS += dad -DRV_KMODS += scsi_vhci -DRV_KMODS += fcp -DRV_KMODS += fcip -DRV_KMODS += fcsm -DRV_KMODS += fp -DRV_KMODS += qlc -DRV_KMODS += qlge -DRV_KMODS += stmf -DRV_KMODS += stmf_sbd -DRV_KMODS += fct -DRV_KMODS += fcoe -DRV_KMODS += fcoet -DRV_KMODS += fcoei -DRV_KMODS += qlt -DRV_KMODS += iscsit -DRV_KMODS += pppt -DRV_KMODS += ncall nsctl sdbc nskern sv -DRV_KMODS += ii rdc rdcsrv rdcstub -DRV_KMODS += iscsi -DRV_KMODS += emlxs -DRV_KMODS += oce -DRV_KMODS += srpt -DRV_KMODS += pmcs -DRV_KMODS += pmcs8001fw - -# -# I/O framework test drivers -# -DRV_KMODS += pshot -DRV_KMODS += gen_drv -DRV_KMODS += tvhci tphci tclient -DRV_KMODS += emul64 - -# -# PCMCIA specific module(s) -# -DRV_KMODS += pcs -MISC_KMODS += busra cardbus dada pcmcia -DRV_KMODS += pcic - -# Add lvm -# -DRV_KMODS += md -MISC_KMODS += md_mirror md_stripe md_hotspares md_raid md_trans md_notify -MISC_KMODS += md_sp - -# -# Exec Class Modules (/kernel/exec): -# -EXEC_KMODS += aoutexec elfexec intpexec shbinexec javaexec - -# -# Scheduling Class Modules (/kernel/sched): -# -SCHED_KMODS += RT TS RT_DPTBL TS_DPTBL IA FSS FX FX_DPTBL SDC - -# -# File System Modules (/kernel/fs): -# -FS_KMODS += dev devfs fdfs fifofs hsfs lofs namefs nfs pcfs tmpfs zfs -FS_KMODS += zut specfs udfs ufs autofs cachefs procfs sockfs mntfs -FS_KMODS += ctfs objfs sharefs dcfs smbfs - -# -# Streams Modules (/kernel/strmod): -# -STRMOD_KMODS += bufmod connld dedump ldterm ms pckt pfmod -STRMOD_KMODS += pipemod ptem redirmod rpcmod rlmod telmod timod -STRMOD_KMODS += spppasyn spppcomp -STRMOD_KMODS += tirdwr ttcompat -STRMOD_KMODS += usbkbm usbms usbwcm usb_ah -STRMOD_KMODS += drcompat -STRMOD_KMODS += cryptmod -STRMOD_KMODS += vuid3ps2 - -# -# 'System' Modules (/kernel/sys): -# -SYS_KMODS += c2audit -SYS_KMODS += exacctsys -SYS_KMODS += inst_sync kaio msgsys semsys shmsys sysacct pipe -SYS_KMODS += doorfs pset acctctl portfs - -# -# 'User' Modules (/kernel/misc): -# -MISC_KMODS += ac97 -MISC_KMODS += bignum -MISC_KMODS += consconfig gld ipc nfs_dlboot nfssrv scsi -MISC_KMODS += strplumb swapgeneric tlimod -MISC_KMODS += rpcsec rpcsec_gss kgssapi kmech_dummy -MISC_KMODS += kmech_krb5 -MISC_KMODS += fssnap_if -MISC_KMODS += hidparser kbtrans usba usba10 usbs49_fw -MISC_KMODS += s1394 -MISC_KMODS += hpcsvc pcihp -MISC_KMODS += rsmops -MISC_KMODS += kcf -MISC_KMODS += ksocket -MISC_KMODS += ibcm -MISC_KMODS += ibdm -MISC_KMODS += ibdma -MISC_KMODS += ibmf -MISC_KMODS += ibtl -MISC_KMODS += sol_ofs -MISC_KMODS += idm -MISC_KMODS += idmap -MISC_KMODS += hook -MISC_KMODS += neti -MISC_KMODS += ctf -MISC_KMODS += mac dls -MISC_KMODS += cmlb -MISC_KMODS += tem -MISC_KMODS += pcicfg fcodem fcpci -MISC_KMODS += scsi_vhci_f_sym scsi_vhci_f_tpgs scsi_vhci_f_asym_sun -MISC_KMODS += scsi_vhci_f_sym_hds -MISC_KMODS += scsi_vhci_f_tape scsi_vhci_f_tpgs_tape -MISC_KMODS += fctl -MISC_KMODS += emlxs_fw -MISC_KMODS += qlc_fw_2200 -MISC_KMODS += qlc_fw_2300 -MISC_KMODS += qlc_fw_2400 -MISC_KMODS += qlc_fw_2500 -MISC_KMODS += qlc_fw_6322 -MISC_KMODS += qlc_fw_8100 -MISC_KMODS += spuni -MISC_KMODS += hwa1480_fw uwba -MISC_KMODS += mii - -MISC_KMODS += klmmod klmops - -# -# Software Cryptographic Providers (/kernel/crypto): -# -CRYPTO_KMODS += aes -CRYPTO_KMODS += arcfour -CRYPTO_KMODS += blowfish -CRYPTO_KMODS += des -CRYPTO_KMODS += md4 -CRYPTO_KMODS += md5 -CRYPTO_KMODS += ecc -CRYPTO_KMODS += rsa -CRYPTO_KMODS += sha1 -CRYPTO_KMODS += sha2 -CRYPTO_KMODS += swrand - -# -# IP Policy Modules (/kernel/ipp): -# -IPP_KMODS += dlcosmk -IPP_KMODS += flowacct -IPP_KMODS += ipgpc -IPP_KMODS += dscpmk -IPP_KMODS += tokenmt -IPP_KMODS += tswtclmt - -# -# 'Dacf' modules (/kernel/dacf) -DACF_KMODS += consconfig_dacf - -# -# SVVS Testing Modules (/kernel/strmod): -# -# These are streams and driver modules which are not to be -# delivered with a released system. However, during development -# it is convenient to build and install the SVVS kernel modules. -# -SVVS_KMODS += lmodb lmode lmodr lmodt svvslo tidg tivc tmux - -# -# Modules eXcluded from the product: -# -XMODS += - -# -# 'Dacf' Modules (/kernel/dacf): -# -DACF_KMODS += net_dacf - -# -# MAC-Type Plugin Modules (/kernel/mac) -# -MAC_KMODS += mac_6to4 -MAC_KMODS += mac_ether -MAC_KMODS += mac_ipv4 -MAC_KMODS += mac_ipv6 -MAC_KMODS += mac_wifi -MAC_KMODS += mac_ib - -# -# socketmod (kernel/socketmod) -# -SOCKET_KMODS += sockpfp -SOCKET_KMODS += socksctp -SOCKET_KMODS += socksdp -SOCKET_KMODS += sockrds -SOCKET_KMODS += ksslf - -# -# kiconv modules (/kernel/kiconv): -# -KICONV_KMODS += kiconv_emea kiconv_ja kiconv_ko kiconv_sc kiconv_tc diff --git a/usr/src/uts/sparc/Makefile.targ b/usr/src/uts/sparc/Makefile.targ index 60f51356c1..ee5cb31db7 100644 --- a/usr/src/uts/sparc/Makefile.targ +++ b/usr/src/uts/sparc/Makefile.targ @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -18,12 +19,26 @@ # # CDDL HEADER END # +# # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This Makefile defines the set of all required, target containing +# included Makefiles for the sparc architecture. # -UTSTREE=$(UTSBASE) +# +# Targets for all implementations: +# +include $(UTSBASE)/Makefile.targ -include $(UTSBASE)/sparc/Makefile.targ.shared +# +# Target set for sparc (order is not important, as it is with the +# isomorphic Makefile.files set). +# +include $(UTSBASE)/sparc/Makefile.rules +include $(UTSBASE)/sparc/v9/Makefile.rules +include $(UTSBASE)/sun/Makefile.rules +include $(UTSBASE)/common/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.rules +include $(UTSBASE)/sun4/Makefile.rules diff --git a/usr/src/uts/sparc/Makefile.targ.shared b/usr/src/uts/sparc/Makefile.targ.shared deleted file mode 100644 index a3d42b3bd8..0000000000 --- a/usr/src/uts/sparc/Makefile.targ.shared +++ /dev/null @@ -1,46 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" -# -# This Makefile defines the set of all required, target containing -# included Makefiles for the sparc architecture. -# - -# -# Targets for all implementations: -# -include $(UTSBASE)/Makefile.targ - -# -# Target set for sparc (order is not important, as it is with the -# isomorphic Makefile.files set). -# -include $(UTSBASE)/sparc/Makefile.rules -include $(UTSBASE)/sparc/v9/Makefile.rules -include $(UTSTREE)/sun/Makefile.rules -include $(UTSTREE)/common/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.rules -include $(UTSBASE)/sun4/Makefile.rules diff --git a/usr/src/uts/sparc/kmech_krb5/req.flg b/usr/src/uts/sparc/kmech_krb5/req.flg index 4f0f1b4b90..2a0d817315 100644 --- a/usr/src/uts/sparc/kmech_krb5/req.flg +++ b/usr/src/uts/sparc/kmech_krb5/req.flg @@ -21,17 +21,13 @@ # CDDL HEADER END # # -# ident "%Z%%M% %I% %E% SMI" -# # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # echo_file usr/src/uts/sparc/Makefile echo_file usr/src/uts/sparc/Makefile.files echo_file usr/src/uts/sparc/Makefile.sparc -echo_file usr/src/uts/sparc/Makefile.sparc.shared echo_file usr/src/uts/sparc/Makefile.rules echo_file usr/src/uts/sparc/Makefile.targ -echo_file usr/src/uts/sparc/Makefile.targ.shared echo_file usr/src/uts/common/Makefile.files echo_file usr/src/uts/common/Makefile.rules diff --git a/usr/src/uts/sparc/req.flg b/usr/src/uts/sparc/req.flg index 35836f2430..b2dd456328 100644 --- a/usr/src/uts/sparc/req.flg +++ b/usr/src/uts/sparc/req.flg @@ -24,16 +24,12 @@ # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" -# echo_file usr/src/uts/sparc/Makefile echo_file usr/src/uts/sparc/Makefile.files echo_file usr/src/uts/sparc/Makefile.rules echo_file usr/src/uts/sparc/Makefile.sparc -echo_file usr/src/uts/sparc/Makefile.sparc.shared echo_file usr/src/uts/sparc/Makefile.targ -echo_file usr/src/uts/sparc/Makefile.targ.shared echo_file usr/src/uts/sun/Makefile.files echo_file usr/src/uts/sun/Makefile.rules diff --git a/usr/src/uts/sun/io/scsi/inc.flg b/usr/src/uts/sun/io/scsi/inc.flg index f7b1e98152..8d33ea8f71 100644 --- a/usr/src/uts/sun/io/scsi/inc.flg +++ b/usr/src/uts/sun/io/scsi/inc.flg @@ -74,9 +74,7 @@ echo_file usr/src/uts/sparc/Makefile echo_file usr/src/uts/sparc/Makefile.files echo_file usr/src/uts/sparc/Makefile.rules echo_file usr/src/uts/sparc/Makefile.sparc -echo_file usr/src/uts/sparc/Makefile.sparc.shared echo_file usr/src/uts/sparc/Makefile.targ -echo_file usr/src/uts/sparc/Makefile.targ.shared echo_file usr/src/uts/sparc/ml/sparc.il echo_file usr/src/uts/sparc/req.flg echo_file usr/src/uts/sun/Makefile.files diff --git a/usr/src/uts/sun4u/Makefile.sun4u b/usr/src/uts/sun4u/Makefile.sun4u index 3edae8fd87..86ccfa622b 100644 --- a/usr/src/uts/sun4u/Makefile.sun4u +++ b/usr/src/uts/sun4u/Makefile.sun4u @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,459 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. + +# +# Copyright 2010 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2013 Andrew Stormont. All rights reserved. +# +# This makefile contains the common definitions for the sun4u unix +# and all sun4u implementation architecture dependent modules. +# + +# +# Machine type (implementation architecture): +# +PLATFORM = sun4u +PROMIF = ieee1275 +PSMBASE = $(UTSBASE)/../psm + +# +# uname -m value +# +UNAME_M = $(PLATFORM) + +# +# Definitions for the platform-specific /platform directories. +# +# PLATFORMS designates those sun4u machines which have no platform +# specific code. +# +# IMPLEMENTATIONS is used to designate sun4u machines which do have +# platform specific modules (perhaps including their own unix). All +# code specific to a given implementation resides in the appropriately +# named subdirectory. This requires these platforms to have their +# own Makefiles to define ROOT_PLAT_DIRS, USR_PLAT_DIRS, etc. +# +# So if we had an implementation named 'foo', we would need the following +# Makefiles in the foo subdirectory: +# +# sun4u/foo/Makefile +# sun4u/foo/Makefile.foo +# sun4u/foo/Makefile.targ +# + +# +# /usr/platform/$(IMPLEMENTED_PLATFORM) is created as a directory that +# all the $(LINKED_PLATFORMS) link to. +# +IMPLEMENTED_PLATFORM = SUNW,Ultra-2 + +LINKED_PLATFORMS += SUNW,Ultra-30 +LINKED_PLATFORMS += SUNW,Ultra-60 + +# +# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list +# ie. all desktop platforms +# +PLATFORMS = $(IMPLEMENTED_PLATFORM) +PLATFORMS += $(LINKED_PLATFORMS) + +ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%) +USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%) + +USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM) +USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include +USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin +USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib + +# +# Welcome to SPARC V9. +# + +# +# Define supported builds +# +DEF_BUILDS = $(DEF_BUILDS64) +ALL_BUILDS = $(ALL_BUILDS64) + +# +# Everybody needs to know how to build modstubs.o and to locate unix.o +# +UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix +GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) + +DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o +DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o +MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o +GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so + +LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln +GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln + +LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) +LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln) + +# +# cpu and platform modules need to know how to build their own symcheck module +# +PLATMOD = platmod +PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so + +CPUNAME = cpu +CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so + +SYM_MOD = $(OBJS_DIR)/unix.sym + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# +include $(UTSBASE)/sun4/Makefile.files +include $(UTSBASE)/$(PLATFORM)/Makefile.files +include $(UTSBASE)/sfmmu/Makefile.files +include $(UTSBASE)/sparc/v9/Makefile.files +include $(UTSBASE)/sparc/Makefile.files +include $(UTSBASE)/sun/Makefile.files +include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files +include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files +include $(UTSBASE)/common/Makefile.files + +# +# Include machine independent rules. Note that this does not imply +# that the resulting module from rules in Makefile.uts is machine +# independent. Only that the build rules are machine independent. +# +include $(UTSBASE)/Makefile.uts + +# These come after Makefile.uts. +IMPLEMENTATIONS = tazmo +IMPLEMENTATIONS += starfire +IMPLEMENTATIONS += javelin +IMPLEMENTATIONS += darwin +IMPLEMENTATIONS += quasar +IMPLEMENTATIONS += grover +IMPLEMENTATIONS += enchilada +IMPLEMENTATIONS += taco +IMPLEMENTATIONS += mpxu +IMPLEMENTATIONS += excalibur +IMPLEMENTATIONS += montecarlo +IMPLEMENTATIONS += serengeti +IMPLEMENTATIONS += littleneck +IMPLEMENTATIONS += starcat +IMPLEMENTATIONS += daktari +IMPLEMENTATIONS += cherrystone +IMPLEMENTATIONS += fjlite +IMPLEMENTATIONS += snowbird +IMPLEMENTATIONS += schumacher +IMPLEMENTATIONS += blade +IMPLEMENTATIONS += boston +IMPLEMENTATIONS += seattle +IMPLEMENTATIONS += chicago +IMPLEMENTATIONS += sunfire +IMPLEMENTATIONS += lw8 +IMPLEMENTATIONS += makaha +IMPLEMENTATIONS += opl +IMPLEMENTATIONS += lw2plus + +# +# machine specific optimization, override default in Makefile.master +# +CC_XARCH = -m64 -xarch=sparcvis +AS_XARCH = -xarch=v9a +COPTIMIZE = -xO3 +CCMODE = -Xa + +CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM) +CFLAGS += $(CC_XARCH) +CFLAGS += $(COPTIMIZE) +CFLAGS += $(EXTRA_CFLAGS) +CFLAGS += $(XAOPT) +CFLAGS += $(INLINES) -D_ASM_INLINES +CFLAGS += $(CCMODE) +CFLAGS += $(SPACEFLAG) +CFLAGS += $(CERRWARN) +CFLAGS += $(CTF_FLAGS_$(CLASS)) +CFLAGS += $(C99MODE) +CFLAGS += $(CCUNBOUND) +CFLAGS += $(CCNOAUTOINLINE) +CFLAGS += $(CCSTATICSYM) +CFLAGS += $(CC32BITCALLERS) +CFLAGS += $(IROPTFLAG) +CFLAGS += $(CGLOBALSTATIC) +CFLAGS += -xregs=no%float +CFLAGS += -xstrconst +CFLAGS += $(CSOURCEDEBUGFLAGS) +CFLAGS += $(CUSERFLAGS) + +ASFLAGS += $(AS_XARCH) + +AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) + +LINT_KMODS += $(GENUNIX_KMODS) + +LINT_DEFS = -m64 + +# +# The following must be defined for all implementations: +# +# MAPFILE: ld mapfile for the build of kernel/unix. +# MODSTUBS: Module stubs source file. +# GENCONST_SRC: genconst.c +# OFFSETS: offsets.in +# PLATFORM_OFFSETS: Platform specific mach_offsets.in +# FDOFFSETS: fd_offsets.in +# +MAPFILE = $(UTSBASE)/sun4/conf/Mapfile +MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s +GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c +OFFSETS = $(UTSBASE)/sun4/ml/offsets.in +PLATFORM_OFFSETS = $(UTSBASE)/sun4u/ml/mach_offsets.in +FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in + +# +# Define the actual specific platforms +# + +MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU + +# +# Software workarounds for hardware "features" +# + +include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds + # -# ident "%Z%%M% %I% %E% SMI" +# Debugging level # +# Special knowledge of which special debugging options effect which +# file is used to optimize the build if these flags are changed. +# +# XXX: The above could possibly be done for more flags and files, but +# is left as an experiment to the interested reader. Be forewarned, +# that excessive use could lead to maintenance difficulties. +# +# Note: kslice can be enabled for the sun4u, but is disabled by default +# in all cases. +# + +DEBUG_DEFS_OBJ64 = +DEBUG_DEFS_DBG64 = -DDEBUG +DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) + +DEBUG_COND_OBJ64 = $(POUND_SIGN) +DEBUG_COND_DBG64 = +IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ + +$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG +$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG +$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE +$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0 + +IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ) +# comment this out for a non-debug kernel with TRAPTRACE +#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/ + +$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)spitfire_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)us3_common_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)us3_cheetah_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)us3_cheetahplus_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)us3_jalapeno_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)opl_olympus_asm.o := DEBUG_DEFS += -DTRAPTRACE + +# Comment these out if you don't want dispatcher lock statistics. + +#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS +#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS + +# Comment these out if you don't want dispatcher debugging + +#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG + +# +# Collect the preprocessor definitions to be associated with *all* +# files. +# +ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ + $(OPTION_DEFS) +GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) + +# +# ----- TRANSITIONAL SECTION -------------------------------------------------- +# + +# +# Not everything which *should* be a module is a module yet. The +# following is a list of such objects which are currently part of +# the base kernel but should soon become kmods. +# +MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) + +# +# ----- END OF TRANSITIONAL SECTION ------------------------------------------- +# + +# +# The kernels modules which are "implementation architecture" +# specific for this machine are enumerated below. Note that most +# of these modules must exist (in one form or another) for each +# architecture. +# +# Common Drivers (usually pseudo drivers) (/kernel/drv): +# + +# +# Machine Specific Driver Modules (/kernel/drv): +# +# XXX: How many of these are really machine specific? +# +DRV_KMODS += bbc_beep +DRV_KMODS += cpc +DRV_KMODS += fd +DRV_KMODS += rootnex sbusmem upa64s zs zsh +DRV_KMODS += sbus +DRV_KMODS += pcisch pcipsy simba +DRV_KMODS += px +DRV_KMODS += ebus +DRV_KMODS += su +DRV_KMODS += tod +DRV_KMODS += power +DRV_KMODS += epic +DRV_KMODS += grbeep +DRV_KMODS += pcf8584 max1617 seeprom tda8444 pca9556 +DRV_KMODS += ics951601 adm1031 +DRV_KMODS += lm75 ltc1427 pcf8591 pcf8574 ssc050 ssc100 +DRV_KMODS += pic16f819 +DRV_KMODS += pic16f747 +DRV_KMODS += adm1026 +DRV_KMODS += us +DRV_KMODS += ppm schppm jbusppm +DRV_KMODS += mc-us3 +DRV_KMODS += mc-us3i +DRV_KMODS += smbus +DRV_KMODS += db21554 +DRV_KMODS += gpio_87317 +DRV_KMODS += isadma +DRV_KMODS += sbbc +DRV_KMODS += pmubus +DRV_KMODS += pmugpio +DRV_KMODS += pmc +DRV_KMODS += trapstat +DRV_KMODS += rmc_comm +DRV_KMODS += rmcadm +DRV_KMODS += rmclomv +DRV_KMODS += sf +DRV_KMODS += nxge +DRV_KMODS += i2bsc +DRV_KMODS += mem_cache + +# +# Exec Class Modules (/kernel/exec): +# +EXEC_KMODS += + +# +# Scheduling Class Modules (/kernel/sched): +# +SCHED_KMODS += + +# +# File System Modules (/kernel/fs): +# +FS_KMODS += + +# +# Streams Modules (/kernel/strmod): +# +STRMOD_KMODS += kb + +# +# 'System' Modules (/kernel/sys): +# +SYS_KMODS += + +# +# 'User' Modules (/kernel/misc): +# +MISC_KMODS += bignum +MISC_KMODS += obpsym bootdev vis cpr platmod md5 sha1 i2c_svc +MISC_KMODS += sbd + +MISC_KMODS += opl_cfg +MISC_KMODS += zuluvm +MISC_KMODS += gptwo_cpu gptwocfg +MISC_KMODS += pcie + +# +# Brand modules +# +BRAND_KMODS += sn1_brand s10_brand -UTSTREE=$(UTSBASE) +# +# Software Cryptographic Providers (/kernel/crypto): +# +CRYPTO_KMODS += aes +CRYPTO_KMODS += arcfour +CRYPTO_KMODS += des + +# +# generic-unix module (/kernel/genunix): +# +GENUNIX_KMODS += genunix + +# 'User' "Modules" excluded from the Full Kernel lint target: +# + +# +# Modules eXcluded from the product: +# +XMODS += -include $(UTSBASE)/sun4u/Makefile.sun4u.shared +# +# cpu modules +# +CPU_KMODS += cheetah cheetahplus jalapeno serrano spitfire hummingbird + +# +# sun4u 'TOD' Modules (/platform/.../kernel/tod): +# +TOD_KMODS += todds1287 todds1337 todmostek todstarfire +TOD_KMODS += todm5819 todblade todbq4802 todsg todopl +TOD_KMODS += todm5819p_rmc todstarcat + +# +# Performance Counter BackEnd Modules (/usr/kernel/pcbe): +# +PCBE_KMODS += us234_pcbe +PCBE_KMODS += opl_pcbe diff --git a/usr/src/uts/sun4u/Makefile.sun4u.shared b/usr/src/uts/sun4u/Makefile.sun4u.shared deleted file mode 100644 index bbab20ce57..0000000000 --- a/usr/src/uts/sun4u/Makefile.sun4u.shared +++ /dev/null @@ -1,476 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2010 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# Copyright (c) 2013 Andrew Stormont. All rights reserved. -# -# This makefile contains the common definitions for the sun4u unix -# and all sun4u implementation architecture dependent modules. -# - -# -# Machine type (implementation architecture): -# -PLATFORM = sun4u -PROMIF = ieee1275 -PSMBASE = $(UTSBASE)/../psm - -# -# uname -m value -# -UNAME_M = $(PLATFORM) - -# -# Definitions for the platform-specific /platform directories. -# -# PLATFORMS designates those sun4u machines which have no platform -# specific code. -# -# IMPLEMENTATIONS is used to designate sun4u machines which do have -# platform specific modules (perhaps including their own unix). All -# code specific to a given implementation resides in the appropriately -# named subdirectory. This requires these platforms to have their -# own Makefiles to define ROOT_PLAT_DIRS, USR_PLAT_DIRS, etc. -# -# So if we had an implementation named 'foo', we would need the following -# Makefiles in the foo subdirectory: -# -# sun4u/foo/Makefile -# sun4u/foo/Makefile.foo -# sun4u/foo/Makefile.targ -# - -# -# /usr/platform/$(IMPLEMENTED_PLATFORM) is created as a directory that -# all the $(LINKED_PLATFORMS) link to. -# -IMPLEMENTED_PLATFORM = SUNW,Ultra-2 - -LINKED_PLATFORMS += SUNW,Ultra-30 -LINKED_PLATFORMS += SUNW,Ultra-60 - -# -# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list -# ie. all desktop platforms -# -PLATFORMS = $(IMPLEMENTED_PLATFORM) -PLATFORMS += $(LINKED_PLATFORMS) - -ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%) -USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%) - -USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM) -USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include -USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin -USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib - -# -# Welcome to SPARC V9. -# - -# -# Define supported builds -# -DEF_BUILDS = $(DEF_BUILDS64) -ALL_BUILDS = $(ALL_BUILDS64) - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o -# -UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix -GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) - -DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o -DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o -MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o -GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so - -LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln -GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln - -LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) -LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln) - -# -# cpu and platform modules need to know how to build their own symcheck module -# -PLATMOD = platmod -PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so - -CPUNAME = cpu -CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so - -SYM_MOD = $(OBJS_DIR)/unix.sym - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSBASE)/sun4/Makefile.files -include $(UTSTREE)/$(PLATFORM)/Makefile.files -include $(UTSBASE)/sfmmu/Makefile.files -include $(UTSBASE)/sparc/v9/Makefile.files -include $(UTSBASE)/sparc/Makefile.files -include $(UTSTREE)/sun/Makefile.files -include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files -include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files -include $(UTSTREE)/common/Makefile.files - -# -# Include machine independent rules. Note that this does not imply -# that the resulting module from rules in Makefile.uts is machine -# independent. Only that the build rules are machine independent. -# -include $(UTSBASE)/Makefile.uts - -# These come after Makefile.uts. -IMPLEMENTATIONS = tazmo -IMPLEMENTATIONS += starfire -IMPLEMENTATIONS += javelin -IMPLEMENTATIONS += darwin -IMPLEMENTATIONS += quasar -IMPLEMENTATIONS += grover -IMPLEMENTATIONS += enchilada -IMPLEMENTATIONS += taco -IMPLEMENTATIONS += mpxu -IMPLEMENTATIONS += excalibur -IMPLEMENTATIONS += montecarlo -IMPLEMENTATIONS += serengeti -IMPLEMENTATIONS += littleneck -IMPLEMENTATIONS += starcat -IMPLEMENTATIONS += daktari -IMPLEMENTATIONS += cherrystone -IMPLEMENTATIONS += fjlite -IMPLEMENTATIONS += snowbird -IMPLEMENTATIONS += schumacher -IMPLEMENTATIONS += blade -IMPLEMENTATIONS += boston -IMPLEMENTATIONS += seattle -IMPLEMENTATIONS += chicago -IMPLEMENTATIONS += sunfire -IMPLEMENTATIONS += lw8 -IMPLEMENTATIONS += makaha -IMPLEMENTATIONS += opl -IMPLEMENTATIONS += lw2plus - -# -# machine specific optimization, override default in Makefile.master -# -CC_XARCH = -m64 -xarch=sparcvis -AS_XARCH = -xarch=v9a -COPTIMIZE = -xO3 -CCMODE = -Xa - -CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM) -CFLAGS += $(CC_XARCH) -CFLAGS += $(COPTIMIZE) -CFLAGS += $(EXTRA_CFLAGS) -CFLAGS += $(XAOPT) -CFLAGS += $(INLINES) -D_ASM_INLINES -CFLAGS += $(CCMODE) -CFLAGS += $(SPACEFLAG) -CFLAGS += $(CERRWARN) -CFLAGS += $(CTF_FLAGS_$(CLASS)) -CFLAGS += $(C99MODE) -CFLAGS += $(CCUNBOUND) -CFLAGS += $(CCNOAUTOINLINE) -CFLAGS += $(CCSTATICSYM) -CFLAGS += $(CC32BITCALLERS) -CFLAGS += $(IROPTFLAG) -CFLAGS += $(CGLOBALSTATIC) -CFLAGS += -xregs=no%float -CFLAGS += -xstrconst -CFLAGS += $(CSOURCEDEBUGFLAGS) -CFLAGS += $(CUSERFLAGS) - -ASFLAGS += $(AS_XARCH) - -AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) - -LINT_KMODS += $(GENUNIX_KMODS) - -LINT_DEFS = -m64 - -# -# The following must be defined for all implementations: -# -# MAPFILE: ld mapfile for the build of kernel/unix. -# MODSTUBS: Module stubs source file. -# GENCONST_SRC: genconst.c -# OFFSETS: offsets.in -# PLATFORM_OFFSETS: Platform specific mach_offsets.in -# FDOFFSETS: fd_offsets.in -# -MAPFILE = $(UTSBASE)/sun4/conf/Mapfile -MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s -GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c -OFFSETS = $(UTSBASE)/sun4/ml/offsets.in -PLATFORM_OFFSETS = $(UTSBASE)/sun4u/ml/mach_offsets.in -FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in - -# -# Define the actual specific platforms -# - -MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU - -# -# Software workarounds for hardware "features" -# - -include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds - -# -# Debugging level -# -# Special knowledge of which special debugging options effect which -# file is used to optimize the build if these flags are changed. -# -# XXX: The above could possibly be done for more flags and files, but -# is left as an experiment to the interested reader. Be forewarned, -# that excessive use could lead to maintenance difficulties. -# -# Note: kslice can be enabled for the sun4u, but is disabled by default -# in all cases. -# - -DEBUG_DEFS_OBJ64 = -DEBUG_DEFS_DBG64 = -DDEBUG -DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) - -DEBUG_COND_OBJ64 = $(POUND_SIGN) -DEBUG_COND_DBG64 = -IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ - -$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG -$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE -$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0 - -IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ) -# comment this out for a non-debug kernel with TRAPTRACE -#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/ - -$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)spitfire_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)us3_common_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)us3_cheetah_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)us3_cheetahplus_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)us3_jalapeno_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)opl_olympus_asm.o := DEBUG_DEFS += -DTRAPTRACE - -# Comment these out if you don't want dispatcher lock statistics. - -#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS -#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS - -# Comment these out if you don't want dispatcher debugging - -#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG - -# -# Collect the preprocessor definitions to be associated with *all* -# files. -# -ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ - $(OPTION_DEFS) -GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) - -# -# ----- TRANSITIONAL SECTION -------------------------------------------------- -# - -# -# Not everything which *should* be a module is a module yet. The -# following is a list of such objects which are currently part of -# the base kernel but should soon become kmods. -# -MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) - -# -# ----- END OF TRANSITIONAL SECTION ------------------------------------------- -# - -# -# The kernels modules which are "implementation architecture" -# specific for this machine are enumerated below. Note that most -# of these modules must exist (in one form or another) for each -# architecture. -# -# Common Drivers (usually pseudo drivers) (/kernel/drv): -# - -# -# Machine Specific Driver Modules (/kernel/drv): -# -# XXX: How many of these are really machine specific? -# -DRV_KMODS += bbc_beep -DRV_KMODS += cpc -DRV_KMODS += fd -DRV_KMODS += rootnex sbusmem upa64s zs zsh -DRV_KMODS += sbus -DRV_KMODS += pcisch pcipsy simba -DRV_KMODS += px -DRV_KMODS += ebus -DRV_KMODS += su -DRV_KMODS += tod -DRV_KMODS += power -DRV_KMODS += epic -DRV_KMODS += grbeep -DRV_KMODS += pcf8584 max1617 seeprom tda8444 pca9556 -DRV_KMODS += ics951601 adm1031 -DRV_KMODS += lm75 ltc1427 pcf8591 pcf8574 ssc050 ssc100 -DRV_KMODS += pic16f819 -DRV_KMODS += pic16f747 -DRV_KMODS += adm1026 -DRV_KMODS += us -DRV_KMODS += ppm schppm jbusppm -DRV_KMODS += mc-us3 -DRV_KMODS += mc-us3i -DRV_KMODS += smbus -DRV_KMODS += db21554 -DRV_KMODS += gpio_87317 -DRV_KMODS += isadma -DRV_KMODS += sbbc -DRV_KMODS += pmubus -DRV_KMODS += pmugpio -DRV_KMODS += pmc -DRV_KMODS += trapstat -DRV_KMODS += rmc_comm -DRV_KMODS += rmcadm -DRV_KMODS += rmclomv -DRV_KMODS += sf -DRV_KMODS += nxge -DRV_KMODS += i2bsc -DRV_KMODS += mem_cache - -# -# Exec Class Modules (/kernel/exec): -# -EXEC_KMODS += - -# -# Scheduling Class Modules (/kernel/sched): -# -SCHED_KMODS += - -# -# File System Modules (/kernel/fs): -# -FS_KMODS += - -# -# Streams Modules (/kernel/strmod): -# -STRMOD_KMODS += kb - -# -# 'System' Modules (/kernel/sys): -# -SYS_KMODS += - -# -# 'User' Modules (/kernel/misc): -# -MISC_KMODS += bignum -MISC_KMODS += obpsym bootdev vis cpr platmod md5 sha1 i2c_svc -MISC_KMODS += sbd - -MISC_KMODS += opl_cfg -MISC_KMODS += zuluvm -MISC_KMODS += gptwo_cpu gptwocfg -MISC_KMODS += pcie - -# -# Brand modules -# -BRAND_KMODS += sn1_brand s10_brand - -# -# Software Cryptographic Providers (/kernel/crypto): -# -CRYPTO_KMODS += aes -CRYPTO_KMODS += arcfour -CRYPTO_KMODS += des - -# -# generic-unix module (/kernel/genunix): -# -GENUNIX_KMODS += genunix - -# 'User' "Modules" excluded from the Full Kernel lint target: -# - -# -# Modules eXcluded from the product: -# -XMODS += - -# -# cpu modules -# -CPU_KMODS += cheetah cheetahplus jalapeno serrano spitfire hummingbird - -# -# sun4u 'TOD' Modules (/platform/.../kernel/tod): -# -TOD_KMODS += todds1287 todds1337 todmostek todstarfire -TOD_KMODS += todm5819 todblade todbq4802 todsg todopl -TOD_KMODS += todm5819p_rmc todstarcat - -# -# Performance Counter BackEnd Modules (/usr/kernel/pcbe): -# -PCBE_KMODS += us234_pcbe -PCBE_KMODS += opl_pcbe diff --git a/usr/src/uts/sun4u/Makefile.targ b/usr/src/uts/sun4u/Makefile.targ index e89bccc6a0..e6aaede6f6 100644 --- a/usr/src/uts/sun4u/Makefile.targ +++ b/usr/src/uts/sun4u/Makefile.targ @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -18,12 +19,30 @@ # # CDDL HEADER END # +# +# uts/sun4u/Makefile.targ # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This Makefile defines the set of all required, target containing +# included Makefiles for the sun4u "implementation architecture". # -UTSTREE=$(UTSBASE) +# +# Targets for all implementations: +# +include $(UTSBASE)/Makefile.targ -include $(UTSBASE)/sun4u/Makefile.targ.shared +# +# Target set for sun4u (order is not important, as it is with the +# isomorphic Makefile.files set). +# +include $(UTSBASE)/sun4/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.rules +include $(UTSBASE)/sfmmu/Makefile.rules +include $(UTSBASE)/sparc/v9/Makefile.rules +include $(UTSBASE)/sparc/Makefile.rules +include $(UTSBASE)/sun/Makefile.rules +include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules +include $(PSMBASE)/promif/$(PROMIF)/sun4u/Makefile.rules +include $(UTSBASE)/common/Makefile.rules diff --git a/usr/src/uts/sun4u/Makefile.targ.shared b/usr/src/uts/sun4u/Makefile.targ.shared deleted file mode 100644 index 65101b7ffd..0000000000 --- a/usr/src/uts/sun4u/Makefile.targ.shared +++ /dev/null @@ -1,50 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# uts/sun4u/Makefile.targ -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" -# -# This Makefile defines the set of all required, target containing -# included Makefiles for the sun4u "implementation architecture". -# - -# -# Targets for all implementations: -# -include $(UTSBASE)/Makefile.targ - -# -# Target set for sun4u (order is not important, as it is with the -# isomorphic Makefile.files set). -# -include $(UTSBASE)/sun4/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.rules -include $(UTSBASE)/sfmmu/Makefile.rules -include $(UTSBASE)/sparc/v9/Makefile.rules -include $(UTSBASE)/sparc/Makefile.rules -include $(UTSTREE)/sun/Makefile.rules -include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules -include $(PSMBASE)/promif/$(PROMIF)/sun4u/Makefile.rules -include $(UTSTREE)/common/Makefile.rules diff --git a/usr/src/uts/sun4u/blade/Makefile.blade b/usr/src/uts/sun4u/blade/Makefile.blade index 011539cd3c..0ccf460698 100644 --- a/usr/src/uts/sun4u/blade/Makefile.blade +++ b/usr/src/uts/sun4u/blade/Makefile.blade @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,105 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Global definitions for sun4u jbos-blade implementation specific modules. +# + +# +# Define directories. +# +ROOT_BLADE_DIR = $(ROOT_PLAT_DIR)/SUNW,Serverblade1 +ROOT_BLADE_MOD_DIR = $(ROOT_BLADE_DIR)/kernel +ROOT_BLADE_MISC_DIR_32 = $(ROOT_BLADE_DIR)/kernel/misc +ROOT_BLADE_MISC_DIR_64 = $(ROOT_BLADE_MISC_DIR_32)/$(SUBDIR64) +ROOT_BLADE_KERN_DIR_32 = $(ROOT_BLADE_MOD_DIR) +ROOT_BLADE_KERN_DIR_64 = $(ROOT_BLADE_MOD_DIR)/$(SUBDIR64) +ROOT_BLADE_DRV_DIR_32 = $(ROOT_BLADE_MOD_DIR)/drv +ROOT_BLADE_DRV_DIR_64 = $(ROOT_BLADE_MOD_DIR)/drv/$(SUBDIR64) + +ROOT_BLADE_KERN_DIR = $(ROOT_BLADE_KERN_DIR_$(CLASS)) +ROOT_BLADE_DRV_DIR = $(ROOT_BLADE_DRV_DIR_$(CLASS)) +ROOT_BLADE_MISC_DIR = $(ROOT_BLADE_MISC_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_BLADE_MOD_DIR) +ROOT_PLAT_MISC_DIRS += $(ROOT_BLADE_MISC_DIR) + + +USR_SUN4U_PLAT_DIR = $(USR_PLAT_DIR)/sun4u +USR_BLADE_DIR = $(USR_PLAT_DIR)/SUNW,Serverblade1 +USR_BLADE_INC_DIR = $(USR_BLADE_DIR)/include +USR_BLADE_ISYS_DIR = $(USR_BLADE_INC_DIR)/sys +USR_BLADE_SBIN_DIR = $(USR_BLADE_DIR)/sbin +USR_BLADE_LIB_DIR = $(USR_BLADE_DIR)/lib + + +BLADE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR) + + +# Define Objects +# +BLADE_OBJS = blade.o + # +# Option conf file +BLADE_OPTION = options -UTSTREE=$(UTSBASE) +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# -include $(UTSBASE)/sun4u/blade/Makefile.blade.shared +include $(UTSBASE)/sun4u/blade/Makefile.files + +# +# Include common rules. +# +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Define modules (must come after Makefile.sun4u). +# +BLADE_KMODS = platmod +BLADE_KMODS += bscbus +BLADE_KMODS += bscv + +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR) +LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lunix.ln +GEN_LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln + + +# +# Define the actual specific platforms +# +MACHINE_DEFS += -D$(PLATFORM) -D_MACHDEP -DSFMMU + +# +# Define for inline pre-processing since +# cpp not smart about v9 yet. +# +#CPP_DEFS_32 = +#CPP_DEFS_64 = -D__sparcv9 +#CPP_DEFS = $(CPP_DEFS_$(CLASS)) + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/blade/Makefile.blade.shared b/usr/src/uts/sun4u/blade/Makefile.blade.shared deleted file mode 100644 index 366e627d0c..0000000000 --- a/usr/src/uts/sun4u/blade/Makefile.blade.shared +++ /dev/null @@ -1,122 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Global definitions for sun4u jbos-blade implementation specific modules. -# - -# -# Define directories. -# -ROOT_BLADE_DIR = $(ROOT_PLAT_DIR)/SUNW,Serverblade1 -ROOT_BLADE_MOD_DIR = $(ROOT_BLADE_DIR)/kernel -ROOT_BLADE_MISC_DIR_32 = $(ROOT_BLADE_DIR)/kernel/misc -ROOT_BLADE_MISC_DIR_64 = $(ROOT_BLADE_MISC_DIR_32)/$(SUBDIR64) -ROOT_BLADE_KERN_DIR_32 = $(ROOT_BLADE_MOD_DIR) -ROOT_BLADE_KERN_DIR_64 = $(ROOT_BLADE_MOD_DIR)/$(SUBDIR64) -ROOT_BLADE_DRV_DIR_32 = $(ROOT_BLADE_MOD_DIR)/drv -ROOT_BLADE_DRV_DIR_64 = $(ROOT_BLADE_MOD_DIR)/drv/$(SUBDIR64) - -ROOT_BLADE_KERN_DIR = $(ROOT_BLADE_KERN_DIR_$(CLASS)) -ROOT_BLADE_DRV_DIR = $(ROOT_BLADE_DRV_DIR_$(CLASS)) -ROOT_BLADE_MISC_DIR = $(ROOT_BLADE_MISC_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_BLADE_MOD_DIR) -ROOT_PLAT_MISC_DIRS += $(ROOT_BLADE_MISC_DIR) - - -USR_SUN4U_PLAT_DIR = $(USR_PLAT_DIR)/sun4u -USR_BLADE_DIR = $(USR_PLAT_DIR)/SUNW,Serverblade1 -USR_BLADE_INC_DIR = $(USR_BLADE_DIR)/include -USR_BLADE_ISYS_DIR = $(USR_BLADE_INC_DIR)/sys -USR_BLADE_SBIN_DIR = $(USR_BLADE_DIR)/sbin -USR_BLADE_LIB_DIR = $(USR_BLADE_DIR)/lib - - -BLADE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR) - - -# Define Objects -# -BLADE_OBJS = blade.o - -# -# Option conf file -BLADE_OPTION = options - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# - -include $(UTSTREE)/sun4u/blade/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules (must come after Makefile.sun4u). -# -BLADE_KMODS = platmod -BLADE_KMODS += bscbus -BLADE_KMODS += bscv - -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR) -LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lunix.ln -GEN_LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln - - -# -# Define the actual specific platforms -# -MACHINE_DEFS += -D$(PLATFORM) -D_MACHDEP -DSFMMU - -# -# Define for inline pre-processing since -# cpp not smart about v9 yet. -# -#CPP_DEFS_32 = -#CPP_DEFS_64 = -D__sparcv9 -#CPP_DEFS = $(CPP_DEFS_$(CLASS)) - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/blade/Makefile.targ b/usr/src/uts/sun4u/blade/Makefile.targ index 13257768ec..c1982355a9 100644 --- a/usr/src/uts/sun4u/blade/Makefile.targ +++ b/usr/src/uts/sun4u/blade/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,63 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# + +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Common targets for sun4u jbos-blade implementation specific modules. # -UTSTREE=$(UTSBASE) +.KEEP_STATE: + +# +# Rules for implementation subdirectories. +# +$(ROOT_BLADE_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_BLADE_MOD_DIR): $(ROOT_BLADE_DIR) + -$(INS.dir) + +$(ROOT_BLADE_DRV_DIR_32): $(ROOT_BLADE_MOD_DIR) + -$(INS.dir) + +$(ROOT_BLADE_DRV_DIR_64): $(ROOT_BLADE_DRV_DIR_32) + -$(INS.dir) + +$(ROOT_BLADE_MISC_DIR_32): $(ROOT_BLADE_MOD_DIR) + -$(INS.dir) -include $(UTSBASE)/sun4u/blade/Makefile.targ.shared +$(ROOT_BLADE_MISC_DIR_64): $(ROOT_BLADE_MISC_DIR_32) + -$(INS.dir) + +$(ROOT_BLADE_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MOD_DIR) FRC + $(INS.file) + +$(ROOT_BLADE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MISC_DIR) FRC + $(INS.file) + +$(ROOT_BLADE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_DRV_DIR) FRC + $(INS.file) + +$(USR_BLADE_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_BLADE_INC_DIR): $(USR_BLADE_DIR) + -$(INS.slink4) + +$(USR_BLADE_ISYS_DIR): $(USR_BLADE_INC_DIR) + -$(INS.dir) + +$(USR_BLADE_SBIN_DIR): $(USR_BLADE_DIR) + $(INS.slink5) + +$(USR_BLADE_LIB_DIR): $(USR_BLADE_DIR) + -$(INS.dir) +# +# Include common targets. +# +include $(UTSBASE)/sun4u/blade/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/blade/Makefile.targ.shared b/usr/src/uts/sun4u/blade/Makefile.targ.shared deleted file mode 100644 index a99bf60bcd..0000000000 --- a/usr/src/uts/sun4u/blade/Makefile.targ.shared +++ /dev/null @@ -1,80 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# - -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Common targets for sun4u jbos-blade implementation specific modules. -# - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_BLADE_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_BLADE_MOD_DIR): $(ROOT_BLADE_DIR) - -$(INS.dir) - -$(ROOT_BLADE_DRV_DIR_32): $(ROOT_BLADE_MOD_DIR) - -$(INS.dir) - -$(ROOT_BLADE_DRV_DIR_64): $(ROOT_BLADE_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_BLADE_MISC_DIR_32): $(ROOT_BLADE_MOD_DIR) - -$(INS.dir) - -$(ROOT_BLADE_MISC_DIR_64): $(ROOT_BLADE_MISC_DIR_32) - -$(INS.dir) - -$(ROOT_BLADE_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MOD_DIR) FRC - $(INS.file) - -$(ROOT_BLADE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_MISC_DIR) FRC - $(INS.file) - -$(ROOT_BLADE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_BLADE_DRV_DIR) FRC - $(INS.file) - -$(USR_BLADE_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_BLADE_INC_DIR): $(USR_BLADE_DIR) - -$(INS.slink4) - -$(USR_BLADE_ISYS_DIR): $(USR_BLADE_INC_DIR) - -$(INS.dir) - -$(USR_BLADE_SBIN_DIR): $(USR_BLADE_DIR) - $(INS.slink5) - -$(USR_BLADE_LIB_DIR): $(USR_BLADE_DIR) - -$(INS.dir) -# -# Include common targets. -# -include $(UTSTREE)/sun4u/blade/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/grover/Makefile.grover b/usr/src/uts/sun4u/grover/Makefile.grover index 1fc9316c47..cd1f23c48c 100644 --- a/usr/src/uts/sun4u/grover/Makefile.grover +++ b/usr/src/uts/sun4u/grover/Makefile.grover @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,67 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# uts/sun4u/grover/Makefile.grover +# Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Global definitions for sun4u implementation specific modules. +# + +# +# Define directories. +# +ROOT_GROVER_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Blade-100 +ROOT_GROVER_MOD_DIR = $(ROOT_GROVER_DIR)/kernel + +ROOT_GROVER_MISC_DIR_32 = $(ROOT_GROVER_MOD_DIR)/misc +ROOT_GROVER_MISC_DIR_64 = $(ROOT_GROVER_MISC_DIR_32)/$(SUBDIR64) +ROOT_GROVER_DRV_DIR_32 = $(ROOT_GROVER_MOD_DIR)/drv +ROOT_GROVER_DRV_DIR_64 = $(ROOT_GROVER_DRV_DIR_32)/$(SUBDIR64) + +ROOT_GROVER_MISC_DIR = $(ROOT_GROVER_MISC_DIR_$(CLASS)) +ROOT_GROVER_DRV_DIR = $(ROOT_GROVER_DRV_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_GROVER_MOD_DIR) +ROOT_PLAT_MISC_DIRS += $(ROOT_GROVER_MISC_DIR) + +USR_GROVER_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Blade-100 +USR_GROVER_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM) +USR_GROVER_INC_DIR = $(USR_GROVER_DIR)/include +USR_GROVER_ISYS_DIR = $(USR_GROVER_INC_DIR)/sys +USR_GROVER_SBIN_DIR = $(USR_GROVER_DIR)/sbin +USR_GROVER_LIB_DIR = $(USR_GROVER_DIR)/lib + + +GROVER_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/grover/lint-libs/$(OBJS_DIR) + +# +# Define objects. # +GROVER_OBJS = grover.o -UTSTREE=$(UTSBASE) +include $(UTSBASE)/sun4u/grover/Makefile.files + +# +# Include common rules. +# +include $(UTSBASE)/sun4u/Makefile.sun4u -include $(UTSBASE)/sun4u/grover/Makefile.grover.shared +# +# Define modules (must come after Makefile.sun4u). +# +GROVER_KMODS = platmod +GROVER_KMODS += grfans + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/grover/Makefile.grover.shared b/usr/src/uts/sun4u/grover/Makefile.grover.shared deleted file mode 100644 index 6a19aa1ef5..0000000000 --- a/usr/src/uts/sun4u/grover/Makefile.grover.shared +++ /dev/null @@ -1,84 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# uts/sun4u/grover/Makefile.grover -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Global definitions for sun4u implementation specific modules. -# - -# -# Define directories. -# -ROOT_GROVER_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Blade-100 -ROOT_GROVER_MOD_DIR = $(ROOT_GROVER_DIR)/kernel - -ROOT_GROVER_MISC_DIR_32 = $(ROOT_GROVER_MOD_DIR)/misc -ROOT_GROVER_MISC_DIR_64 = $(ROOT_GROVER_MISC_DIR_32)/$(SUBDIR64) -ROOT_GROVER_DRV_DIR_32 = $(ROOT_GROVER_MOD_DIR)/drv -ROOT_GROVER_DRV_DIR_64 = $(ROOT_GROVER_DRV_DIR_32)/$(SUBDIR64) - -ROOT_GROVER_MISC_DIR = $(ROOT_GROVER_MISC_DIR_$(CLASS)) -ROOT_GROVER_DRV_DIR = $(ROOT_GROVER_DRV_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_GROVER_MOD_DIR) -ROOT_PLAT_MISC_DIRS += $(ROOT_GROVER_MISC_DIR) - -USR_GROVER_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Blade-100 -USR_GROVER_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM) -USR_GROVER_INC_DIR = $(USR_GROVER_DIR)/include -USR_GROVER_ISYS_DIR = $(USR_GROVER_INC_DIR)/sys -USR_GROVER_SBIN_DIR = $(USR_GROVER_DIR)/sbin -USR_GROVER_LIB_DIR = $(USR_GROVER_DIR)/lib - - -GROVER_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/grover/lint-libs/$(OBJS_DIR) - -# -# Define objects. -# -GROVER_OBJS = grover.o - -include $(UTSTREE)/sun4u/grover/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules (must come after Makefile.sun4u). -# -GROVER_KMODS = platmod -GROVER_KMODS += grfans - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/grover/Makefile.targ b/usr/src/uts/sun4u/grover/Makefile.targ index be9826f382..b120075a57 100644 --- a/usr/src/uts/sun4u/grover/Makefile.targ +++ b/usr/src/uts/sun4u/grover/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,63 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" + +# +# Common targets for sun4u Grover implementation specific modules. # -UTSTREE=$(UTSBASE) +.KEEP_STATE: + +IMPLEMENTED_PLATFORM = SUNW,Sun-Blade-100 + +# +# Rules for implementation subdirectories. +# +$(ROOT_GROVER_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_GROVER_MOD_DIR): $(ROOT_GROVER_DIR) + -$(INS.dir) + +$(ROOT_GROVER_MISC_DIR_32): $(ROOT_GROVER_MOD_DIR) + -$(INS.dir) + +$(ROOT_GROVER_MISC_DIR_64): $(ROOT_GROVER_MISC_DIR_32) + -$(INS.dir) -include $(UTSBASE)/sun4u/grover/Makefile.targ.shared +$(ROOT_GROVER_DRV_DIR_32): $(ROOT_GROVER_MOD_DIR) + -$(INS.dir) + +$(ROOT_GROVER_DRV_DIR_64): $(ROOT_GROVER_DRV_DIR_32) + -$(INS.dir) + +$(USR_GROVER_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_GROVER_INC_DIR): $(USR_GROVER_DIR) + -$(INS.slink4) + +$(USR_GROVER_SBIN_DIR): $(USR_GROVER_DIR) + -$(INS.slink5) + +$(USR_GROVER_LIB_DIR): $(USR_GROVER_DIR) + -$(INS.dir) + +$(ROOT_GROVER_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MOD_DIR) FRC + $(INS.file) + +$(ROOT_GROVER_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MISC_DIR) FRC + $(INS.file) + +$(ROOT_GROVER_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_DRV_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/grover/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/grover/Makefile.targ.shared b/usr/src/uts/sun4u/grover/Makefile.targ.shared deleted file mode 100644 index 90839a3355..0000000000 --- a/usr/src/uts/sun4u/grover/Makefile.targ.shared +++ /dev/null @@ -1,80 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# -# Common targets for sun4u Grover implementation specific modules. -# - -.KEEP_STATE: - -IMPLEMENTED_PLATFORM = SUNW,Sun-Blade-100 - -# -# Rules for implementation subdirectories. -# -$(ROOT_GROVER_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_GROVER_MOD_DIR): $(ROOT_GROVER_DIR) - -$(INS.dir) - -$(ROOT_GROVER_MISC_DIR_32): $(ROOT_GROVER_MOD_DIR) - -$(INS.dir) - -$(ROOT_GROVER_MISC_DIR_64): $(ROOT_GROVER_MISC_DIR_32) - -$(INS.dir) - -$(ROOT_GROVER_DRV_DIR_32): $(ROOT_GROVER_MOD_DIR) - -$(INS.dir) - -$(ROOT_GROVER_DRV_DIR_64): $(ROOT_GROVER_DRV_DIR_32) - -$(INS.dir) - -$(USR_GROVER_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_GROVER_INC_DIR): $(USR_GROVER_DIR) - -$(INS.slink4) - -$(USR_GROVER_SBIN_DIR): $(USR_GROVER_DIR) - -$(INS.slink5) - -$(USR_GROVER_LIB_DIR): $(USR_GROVER_DIR) - -$(INS.dir) - -$(ROOT_GROVER_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MOD_DIR) FRC - $(INS.file) - -$(ROOT_GROVER_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_MISC_DIR) FRC - $(INS.file) - -$(ROOT_GROVER_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_GROVER_DRV_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/grover/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/javelin/Makefile.javelin b/usr/src/uts/sun4u/javelin/Makefile.javelin index 460c4bcccc..e36b2ce589 100644 --- a/usr/src/uts/sun4u/javelin/Makefile.javelin +++ b/usr/src/uts/sun4u/javelin/Makefile.javelin @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,59 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. + +# +# Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This makefile contains the common definitions for the +# sun4u Javelin system dependent modules. +# + +# +# Define directories # +ROOT_JAVELIN_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-250 +ROOT_JAVELIN_MOD_DIR = $(ROOT_JAVELIN_DIR)/kernel +ROOT_JAVELIN_KERN_DIR_32 = $(ROOT_JAVELIN_MOD_DIR) +ROOT_JAVELIN_KERN_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/$(SUBDIR64) +ROOT_JAVELIN_DRV_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/drv +ROOT_JAVELIN_DRV_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/drv/$(SUBDIR64) +ROOT_JAVELIN_MISC_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/misc +ROOT_JAVELIN_MISC_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/misc/$(SUBDIR64) + +ROOT_JAVELIN_KERN_DIR = $(ROOT_JAVELIN_KERN_DIR_$(CLASS)) +ROOT_JAVELIN_MISC_DIR = $(ROOT_JAVELIN_MISC_DIR_$(CLASS)) +ROOT_JAVELIN_DRV_DIR = $(ROOT_JAVELIN_DRV_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_JAVELIN_MOD_DIR) +ROOT_PLAT_MISC_DIRS += $(ROOT_JAVELIN_MISC_DIR) +ROOT_PLAT_MISC_DIRS_32 += $(ROOT_JAVELIN_MISC_DIR_32) +ROOT_PLAT_DRV_DIRS = $(ROOT_JAVELIN_DRV_DIR) + +USR_JAVELIN_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-250 +USR_JAVELIN_INC_DIR = $(USR_JAVELIN_DIR)/include +USR_JAVELIN_SBIN_DIR = $(USR_JAVELIN_DIR)/sbin +USR_JAVELIN_LIB_DIR = $(USR_JAVELIN_DIR)/lib +USR_JAVELIN_ISYS_DIR = $(USR_JAVELIN_INC_DIR)/sys + +JAVELIN_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/javelin/lint-libs/$(OBJS_DIR) -UTSTREE=$(UTSBASE) +# +# Define objects. +# +JAVELIN_OBJS = javelin.o + +include $(UTSBASE)/sun4u/javelin/Makefile.files + +# +# Include common rules. +# +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Define modules (must come after Makefile.sun4u) +# +JAVELIN_KMODS = platmod +JAVELIN_KMODS += envctrltwo -include $(UTSBASE)/sun4u/javelin/Makefile.javelin.shared diff --git a/usr/src/uts/sun4u/javelin/Makefile.javelin.shared b/usr/src/uts/sun4u/javelin/Makefile.javelin.shared deleted file mode 100644 index 53e59004cd..0000000000 --- a/usr/src/uts/sun4u/javelin/Makefile.javelin.shared +++ /dev/null @@ -1,76 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# This makefile contains the common definitions for the -# sun4u Javelin system dependent modules. -# - -# -# Define directories -# -ROOT_JAVELIN_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-250 -ROOT_JAVELIN_MOD_DIR = $(ROOT_JAVELIN_DIR)/kernel -ROOT_JAVELIN_KERN_DIR_32 = $(ROOT_JAVELIN_MOD_DIR) -ROOT_JAVELIN_KERN_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/$(SUBDIR64) -ROOT_JAVELIN_DRV_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/drv -ROOT_JAVELIN_DRV_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/drv/$(SUBDIR64) -ROOT_JAVELIN_MISC_DIR_32 = $(ROOT_JAVELIN_MOD_DIR)/misc -ROOT_JAVELIN_MISC_DIR_64 = $(ROOT_JAVELIN_MOD_DIR)/misc/$(SUBDIR64) - -ROOT_JAVELIN_KERN_DIR = $(ROOT_JAVELIN_KERN_DIR_$(CLASS)) -ROOT_JAVELIN_MISC_DIR = $(ROOT_JAVELIN_MISC_DIR_$(CLASS)) -ROOT_JAVELIN_DRV_DIR = $(ROOT_JAVELIN_DRV_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_JAVELIN_MOD_DIR) -ROOT_PLAT_MISC_DIRS += $(ROOT_JAVELIN_MISC_DIR) -ROOT_PLAT_MISC_DIRS_32 += $(ROOT_JAVELIN_MISC_DIR_32) -ROOT_PLAT_DRV_DIRS = $(ROOT_JAVELIN_DRV_DIR) - -USR_JAVELIN_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-250 -USR_JAVELIN_INC_DIR = $(USR_JAVELIN_DIR)/include -USR_JAVELIN_SBIN_DIR = $(USR_JAVELIN_DIR)/sbin -USR_JAVELIN_LIB_DIR = $(USR_JAVELIN_DIR)/lib -USR_JAVELIN_ISYS_DIR = $(USR_JAVELIN_INC_DIR)/sys - -JAVELIN_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/javelin/lint-libs/$(OBJS_DIR) - -# -# Define objects. -# -JAVELIN_OBJS = javelin.o - -include $(UTSTREE)/sun4u/javelin/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules (must come after Makefile.sun4u) -# -JAVELIN_KMODS = platmod -JAVELIN_KMODS += envctrltwo - diff --git a/usr/src/uts/sun4u/javelin/Makefile.targ b/usr/src/uts/sun4u/javelin/Makefile.targ index 6b345942e6..792bf742c9 100644 --- a/usr/src/uts/sun4u/javelin/Makefile.targ +++ b/usr/src/uts/sun4u/javelin/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,65 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" + +# +# Common targets for sun4u Javelin implementation specific modules. +# +# + +IMPLEMENTED_PLATFORM = SUNW,Ultra-250 + +# +# Platform targets # +$(ROOT_JAVELIN_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_JAVELIN_MOD_DIR): $(ROOT_JAVELIN_DIR) + -$(INS.dir) + +$(ROOT_JAVELIN_DRV_DIR_32): $(ROOT_JAVELIN_MOD_DIR) + -$(INS.dir) + +$(ROOT_JAVELIN_DRV_DIR_64): $(ROOT_JAVELIN_DRV_DIR_32) + -$(INS.dir) -UTSTREE=$(UTSBASE) +$(ROOT_JAVELIN_MISC_DIR_32): $(ROOT_JAVELIN_MOD_DIR) + -$(INS.dir) -include $(UTSBASE)/sun4u/javelin/Makefile.targ.shared +$(ROOT_JAVELIN_MISC_DIR_64): $(ROOT_JAVELIN_MISC_DIR_32) + -$(INS.dir) + +$(USR_JAVELIN_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_JAVELIN_INC_DIR): $(USR_JAVELIN_DIR) + -$(INS.slink4) + +$(USR_JAVELIN_SBIN_DIR): $(USR_JAVELIN_DIR) + -$(INS.slink5) + +$(USR_JAVELIN_LIB_DIR): $(USR_JAVELIN_DIR) + -$(INS.dir) + +$(USR_JAVELIN_ISYS_DIR): $(USR_JAVELIN_INC_DIR) + -$(INS.dir) + +$(ROOT_JAVELIN_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MOD_DIR) FRC + $(INS.file) + +$(ROOT_JAVELIN_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MISC_DIR) FRC + $(INS.file) + +$(ROOT_JAVELIN_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_DRV_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/javelin/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/javelin/Makefile.targ.shared b/usr/src/uts/sun4u/javelin/Makefile.targ.shared deleted file mode 100644 index 8cc5019975..0000000000 --- a/usr/src/uts/sun4u/javelin/Makefile.targ.shared +++ /dev/null @@ -1,82 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# -# Common targets for sun4u Javelin implementation specific modules. -# -# - -IMPLEMENTED_PLATFORM = SUNW,Ultra-250 - -# -# Platform targets -# -$(ROOT_JAVELIN_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_JAVELIN_MOD_DIR): $(ROOT_JAVELIN_DIR) - -$(INS.dir) - -$(ROOT_JAVELIN_DRV_DIR_32): $(ROOT_JAVELIN_MOD_DIR) - -$(INS.dir) - -$(ROOT_JAVELIN_DRV_DIR_64): $(ROOT_JAVELIN_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_JAVELIN_MISC_DIR_32): $(ROOT_JAVELIN_MOD_DIR) - -$(INS.dir) - -$(ROOT_JAVELIN_MISC_DIR_64): $(ROOT_JAVELIN_MISC_DIR_32) - -$(INS.dir) - -$(USR_JAVELIN_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_JAVELIN_INC_DIR): $(USR_JAVELIN_DIR) - -$(INS.slink4) - -$(USR_JAVELIN_SBIN_DIR): $(USR_JAVELIN_DIR) - -$(INS.slink5) - -$(USR_JAVELIN_LIB_DIR): $(USR_JAVELIN_DIR) - -$(INS.dir) - -$(USR_JAVELIN_ISYS_DIR): $(USR_JAVELIN_INC_DIR) - -$(INS.dir) - -$(ROOT_JAVELIN_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MOD_DIR) FRC - $(INS.file) - -$(ROOT_JAVELIN_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_MISC_DIR) FRC - $(INS.file) - -$(ROOT_JAVELIN_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_JAVELIN_DRV_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/javelin/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo b/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo index e0a8f7bcae..91bc30f4c0 100644 --- a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo +++ b/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,81 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This makefile contains the common definitions for the +# sun4u MonteCarlo system dependent modules. +# + +# +# Define directories. +# +ROOT_MONTECARLO_DIR = $(ROOT_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract +ROOT_MONTECARLO_MOD_DIR = $(ROOT_MONTECARLO_DIR)/kernel + +ROOT_MONTECARLO_KERN_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR) +ROOT_MONTECARLO_KERN_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/$(SUBDIR64) +ROOT_MONTECARLO_DRV_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/drv +ROOT_MONTECARLO_DACF_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/dacf +ROOT_MONTECARLO_DACF_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/dacf/$(SUBDIR64) +ROOT_MONTECARLO_DRV_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/drv/$(SUBDIR64) +ROOT_MONTECARLO_MISC_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/misc +ROOT_MONTECARLO_MISC_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/misc/$(SUBDIR64) + +ROOT_MONTECARLO_KERN_DIR = $(ROOT_MONTECARLO_KERN_DIR_$(CLASS)) +ROOT_MONTECARLO_MISC_DIR = $(ROOT_MONTECARLO_MISC_DIR_$(CLASS)) +ROOT_MONTECARLO_DRV_DIR = $(ROOT_MONTECARLO_DRV_DIR_$(CLASS)) +ROOT_MONTECARLO_DACF_DIR = $(ROOT_MONTECARLO_DACF_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_MONTECARLO_MOD_DIR) +ROOT_PLAT_MISC_DIRS += $(ROOT_MONTECARLO_MISC_DIR) +ROOT_PLAT_MISC_DIRS_32 += $(ROOT_MONTECARLO_MISC_DIR_32) +ROOT_PLAT_DRV_DIRS = $(ROOT_MONTECARLO_DRV_DIR) +ROOT_PLAT_DACF_DIRS = $(ROOT_MONTECARLO_DACF_DIR) + +USR_MONTECARLO_DIR = $(USR_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract +USR_MONTECARLO_INC_DIR = $(USR_MONTECARLO_DIR)/include +USR_MONTECARLO_SBIN_DIR = $(USR_MONTECARLO_DIR)/sbin +USR_MONTECARLO_LIB_DIR = $(USR_MONTECARLO_DIR)/lib +USR_MONTECARLO_ISYS_DIR = $(USR_MONTECARLO_INC_DIR)/sys + +MONTECARLO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/montecarlo/lint-libs/$(OBJS_DIR) + +# +# Define objects. +# + +include $(UTSBASE)/sun4u/montecarlo/Makefile.files + +# +# Include common rules. +# +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Define modules # +MONTECARLO_KMODS = acebus pcf8574_nct pcf8591_nct scsb ttymux_dacf -UTSTREE=$(UTSBASE) +# +# we need the official MONTECARLO name here, and for the sun4u/montecarlo +# directory and Makefile.montecarlo +# for now we'll use montecarlo for workspace file/dir names +# and NORDICA_CP1500 for conditional code compiles, since that's our current +# test platform +# +MACHINE_DEFS += -DNORDICA_CP1500 -include $(UTSBASE)/sun4u/montecarlo/Makefile.montecarlo.shared +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo.shared b/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo.shared deleted file mode 100644 index 826d563cb3..0000000000 --- a/usr/src/uts/sun4u/montecarlo/Makefile.montecarlo.shared +++ /dev/null @@ -1,100 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" -# -# This makefile contains the common definitions for the -# sun4u MonteCarlo system dependent modules. -# - -# -# Define directories. -# -ROOT_MONTECARLO_DIR = $(ROOT_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract -ROOT_MONTECARLO_MOD_DIR = $(ROOT_MONTECARLO_DIR)/kernel - -ROOT_MONTECARLO_KERN_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR) -ROOT_MONTECARLO_KERN_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/$(SUBDIR64) -ROOT_MONTECARLO_DRV_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/drv -ROOT_MONTECARLO_DACF_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/dacf -ROOT_MONTECARLO_DACF_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/dacf/$(SUBDIR64) -ROOT_MONTECARLO_DRV_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/drv/$(SUBDIR64) -ROOT_MONTECARLO_MISC_DIR_32 = $(ROOT_MONTECARLO_MOD_DIR)/misc -ROOT_MONTECARLO_MISC_DIR_64 = $(ROOT_MONTECARLO_MOD_DIR)/misc/$(SUBDIR64) - -ROOT_MONTECARLO_KERN_DIR = $(ROOT_MONTECARLO_KERN_DIR_$(CLASS)) -ROOT_MONTECARLO_MISC_DIR = $(ROOT_MONTECARLO_MISC_DIR_$(CLASS)) -ROOT_MONTECARLO_DRV_DIR = $(ROOT_MONTECARLO_DRV_DIR_$(CLASS)) -ROOT_MONTECARLO_DACF_DIR = $(ROOT_MONTECARLO_DACF_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_MONTECARLO_MOD_DIR) -ROOT_PLAT_MISC_DIRS += $(ROOT_MONTECARLO_MISC_DIR) -ROOT_PLAT_MISC_DIRS_32 += $(ROOT_MONTECARLO_MISC_DIR_32) -ROOT_PLAT_DRV_DIRS = $(ROOT_MONTECARLO_DRV_DIR) -ROOT_PLAT_DACF_DIRS = $(ROOT_MONTECARLO_DACF_DIR) - -USR_MONTECARLO_DIR = $(USR_PLAT_DIR)/SUNW,UltraSPARC-IIi-Netract -USR_MONTECARLO_INC_DIR = $(USR_MONTECARLO_DIR)/include -USR_MONTECARLO_SBIN_DIR = $(USR_MONTECARLO_DIR)/sbin -USR_MONTECARLO_LIB_DIR = $(USR_MONTECARLO_DIR)/lib -USR_MONTECARLO_ISYS_DIR = $(USR_MONTECARLO_INC_DIR)/sys - -MONTECARLO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/montecarlo/lint-libs/$(OBJS_DIR) - -# -# Define objects. -# - -include $(UTSTREE)/sun4u/montecarlo/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules -# -MONTECARLO_KMODS = acebus pcf8574_nct pcf8591_nct scsb ttymux_dacf - -# -# we need the official MONTECARLO name here, and for the sun4u/montecarlo -# directory and Makefile.montecarlo -# for now we'll use montecarlo for workspace file/dir names -# and NORDICA_CP1500 for conditional code compiles, since that's our current -# test platform -# -MACHINE_DEFS += -DNORDICA_CP1500 - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.targ b/usr/src/uts/sun4u/montecarlo/Makefile.targ index 82741e5359..481d036cc5 100644 --- a/usr/src/uts/sun4u/montecarlo/Makefile.targ +++ b/usr/src/uts/sun4u/montecarlo/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,75 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" + +# +# Common targets for sun4u MonteCarlo implementation specific modules. # +# +# Platform targets +# +$(ROOT_MONTECARLO_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +.KEEP_STATE: + +# +# Rules for implementation subdirectories. +# +$(ROOT_MONTECARLO_MOD_DIR): $(ROOT_MONTECARLO_DIR) + -$(INS.dir) + +$(ROOT_MONTECARLO_DACF_DIR_32): $(ROOT_MONTECARLO_MOD_DIR) + -$(INS.dir) + +$(ROOT_MONTECARLO_DACF_DIR_64): $(ROOT_MONTECARLO_DACF_DIR_32) + -$(INS.dir) + +$(ROOT_MONTECARLO_DRV_DIR_32): $(ROOT_MONTECARLO_MOD_DIR) + -$(INS.dir) -UTSTREE=$(UTSBASE) +$(ROOT_MONTECARLO_DRV_DIR_64): $(ROOT_MONTECARLO_DRV_DIR_32) + -$(INS.dir) -include $(UTSBASE)/sun4u/montecarlo/Makefile.targ.shared +$(ROOT_MONTECARLO_MISC_DIR_32): $(ROOT_MONTECARLO_MOD_DIR) + -$(INS.dir) + +$(ROOT_MONTECARLO_MISC_DIR_64): $(ROOT_MONTECARLO_MISC_DIR_32) + -$(INS.dir) + +$(USR_MONTECARLO_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_MONTECARLO_INC_DIR): $(USR_MONTECARLO_DIR) + -$(INS.slink4) + +$(USR_MONTECARLO_SBIN_DIR): $(USR_MONTECARLO_DIR) + -$(INS.slink5) + +$(USR_MONTECARLO_LIB_DIR): $(USR_MONTECARLO_DIR) + -$(INS.dir) + +$(USR_MONTECARLO_ISYS_DIR): $(USR_MONTECARLO_INC_DIR) + -$(INS.dir) + +$(ROOT_MONTECARLO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MOD_DIR) FRC + $(INS.file) + +$(ROOT_MONTECARLO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MISC_DIR) FRC + $(INS.file) + +$(ROOT_MONTECARLO_DACF_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DACF_DIR) + $(INS.file) + +$(ROOT_MONTECARLO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DRV_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/montecarlo/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/montecarlo/Makefile.targ.shared b/usr/src/uts/sun4u/montecarlo/Makefile.targ.shared deleted file mode 100644 index 0a0ea5baea..0000000000 --- a/usr/src/uts/sun4u/montecarlo/Makefile.targ.shared +++ /dev/null @@ -1,92 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# -# Common targets for sun4u MonteCarlo implementation specific modules. -# -# -# Platform targets -# -$(ROOT_MONTECARLO_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_MONTECARLO_MOD_DIR): $(ROOT_MONTECARLO_DIR) - -$(INS.dir) - -$(ROOT_MONTECARLO_DACF_DIR_32): $(ROOT_MONTECARLO_MOD_DIR) - -$(INS.dir) - -$(ROOT_MONTECARLO_DACF_DIR_64): $(ROOT_MONTECARLO_DACF_DIR_32) - -$(INS.dir) - -$(ROOT_MONTECARLO_DRV_DIR_32): $(ROOT_MONTECARLO_MOD_DIR) - -$(INS.dir) - -$(ROOT_MONTECARLO_DRV_DIR_64): $(ROOT_MONTECARLO_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_MONTECARLO_MISC_DIR_32): $(ROOT_MONTECARLO_MOD_DIR) - -$(INS.dir) - -$(ROOT_MONTECARLO_MISC_DIR_64): $(ROOT_MONTECARLO_MISC_DIR_32) - -$(INS.dir) - -$(USR_MONTECARLO_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_MONTECARLO_INC_DIR): $(USR_MONTECARLO_DIR) - -$(INS.slink4) - -$(USR_MONTECARLO_SBIN_DIR): $(USR_MONTECARLO_DIR) - -$(INS.slink5) - -$(USR_MONTECARLO_LIB_DIR): $(USR_MONTECARLO_DIR) - -$(INS.dir) - -$(USR_MONTECARLO_ISYS_DIR): $(USR_MONTECARLO_INC_DIR) - -$(INS.dir) - -$(ROOT_MONTECARLO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MOD_DIR) FRC - $(INS.file) - -$(ROOT_MONTECARLO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_MISC_DIR) FRC - $(INS.file) - -$(ROOT_MONTECARLO_DACF_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DACF_DIR) - $(INS.file) - -$(ROOT_MONTECARLO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MONTECARLO_DRV_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/montecarlo/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/mpxu/Makefile.mpxu b/usr/src/uts/sun4u/mpxu/Makefile.mpxu index 19dc84d49e..d57afbc988 100644 --- a/usr/src/uts/sun4u/mpxu/Makefile.mpxu +++ b/usr/src/uts/sun4u/mpxu/Makefile.mpxu @@ -2,9 +2,8 @@ # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -19,12 +18,108 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. # -UTSTREE=$(UTSBASE) +# +# Global definitions for sun4u implementation specific modules. +# + +# +# Define the name of this implementation. +# + +# +# Define directories. +# +ROOT_MPXU_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-V240 +ROOT_MPXU_MOD_DIR = $(ROOT_MPXU_DIR)/kernel + +ROOT_MPXU_DRV_DIR_32 = $(ROOT_MPXU_MOD_DIR)/drv +ROOT_MPXU_DRV_DIR_64 = $(ROOT_MPXU_MOD_DIR)/drv/$(SUBDIR64) +ROOT_MPXU_DRV_DIR = $(ROOT_MPXU_DRV_DIR_$(CLASS)) + +ROOT_MPXU_MISC_DIR_32 = $(ROOT_MPXU_MOD_DIR)/misc +ROOT_MPXU_MISC_DIR_64 = $(ROOT_MPXU_MOD_DIR)/misc/$(SUBDIR64) +ROOT_MPXU_MISC_DIR = $(ROOT_MPXU_MISC_DIR_$(CLASS)) + +ROOT_MPXU_CRYPTO_DIR_32 = $(ROOT_MPXU_MOD_DIR)/crypto +ROOT_MPXU_CRYPTO_DIR_64 = $(ROOT_MPXU_MOD_DIR)/crypto/$(SUBDIR64) +ROOT_MPXU_CRYPTO_DIR = $(ROOT_MPXU_CRYPTO_DIR_$(CLASS)) + +USR_MPXU_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-V240 +USR_MPXU_INC_DIR = $(USR_MPXU_DIR)/include +USR_MPXU_ISYS_DIR = $(USR_MPXU_INC_DIR)/sys +USR_MPXU_SBIN_DIR = $(USR_MPXU_DIR)/sbin +USR_MPXU_SBIN_PRTDIAG = $(USR_MPXU_SBIN_DIR)/prtdiag +USR_MPXU_SBIN_FRUADM = $(USR_MPXU_SBIN_DIR)/fruadm +USR_MPXU_LIB_DIR = $(USR_MPXU_DIR)/lib + +MPXU_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR) + +# +# Links to UltraSparc III crypto modules +# +MPXU_CRYPTO_LINKS = aes + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# -include $(UTSBASE)/sun4u/mpxu/Makefile.mpxu.shared +include $(UTSBASE)/sun4u/mpxu/Makefile.files +# +# Include common rules. +# + +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Define modules (must come after Makefile.sun4u). +# +MPXU_KMODS = tsalarm + +MODSTUBS_DIR = $(UNIX_DIR) +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR) + +# +# Define the actual specific platforms +# +MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP + +# +# Define platform specific values +# +#MACHINE_DEFS += -DNCPU=554 +#MACHINE_DEFS += -DMAX_UPA=1024 +#MACHINE_DEFS += -DIGN_SIZE=10 +# Max IOSRAM TOC major version number supported +#MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1 + +# Define for inline pre-processing since +# cpp not smart about v9 yet. +# +CPP_DEFS_32 = +CPP_DEFS_64 = -D__sparcv9 +CPP_DEFS = $(CPP_DEFS_$(CLASS)) + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/mpxu/Makefile.mpxu.shared b/usr/src/uts/sun4u/mpxu/Makefile.mpxu.shared deleted file mode 100644 index 86c40a6b5a..0000000000 --- a/usr/src/uts/sun4u/mpxu/Makefile.mpxu.shared +++ /dev/null @@ -1,125 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -# - -# -# Global definitions for sun4u implementation specific modules. -# - -# -# Define the name of this implementation. -# - -# -# Define directories. -# -ROOT_MPXU_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-V240 -ROOT_MPXU_MOD_DIR = $(ROOT_MPXU_DIR)/kernel - -ROOT_MPXU_DRV_DIR_32 = $(ROOT_MPXU_MOD_DIR)/drv -ROOT_MPXU_DRV_DIR_64 = $(ROOT_MPXU_MOD_DIR)/drv/$(SUBDIR64) -ROOT_MPXU_DRV_DIR = $(ROOT_MPXU_DRV_DIR_$(CLASS)) - -ROOT_MPXU_MISC_DIR_32 = $(ROOT_MPXU_MOD_DIR)/misc -ROOT_MPXU_MISC_DIR_64 = $(ROOT_MPXU_MOD_DIR)/misc/$(SUBDIR64) -ROOT_MPXU_MISC_DIR = $(ROOT_MPXU_MISC_DIR_$(CLASS)) - -ROOT_MPXU_CRYPTO_DIR_32 = $(ROOT_MPXU_MOD_DIR)/crypto -ROOT_MPXU_CRYPTO_DIR_64 = $(ROOT_MPXU_MOD_DIR)/crypto/$(SUBDIR64) -ROOT_MPXU_CRYPTO_DIR = $(ROOT_MPXU_CRYPTO_DIR_$(CLASS)) - -USR_MPXU_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-V240 -USR_MPXU_INC_DIR = $(USR_MPXU_DIR)/include -USR_MPXU_ISYS_DIR = $(USR_MPXU_INC_DIR)/sys -USR_MPXU_SBIN_DIR = $(USR_MPXU_DIR)/sbin -USR_MPXU_SBIN_PRTDIAG = $(USR_MPXU_SBIN_DIR)/prtdiag -USR_MPXU_SBIN_FRUADM = $(USR_MPXU_SBIN_DIR)/fruadm -USR_MPXU_LIB_DIR = $(USR_MPXU_DIR)/lib - -MPXU_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR) - -# -# Links to UltraSparc III crypto modules -# -MPXU_CRYPTO_LINKS = aes - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# - -include $(UTSTREE)/sun4u/mpxu/Makefile.files -# -# Include common rules. -# - -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules (must come after Makefile.sun4u). -# -MPXU_KMODS = tsalarm - -MODSTUBS_DIR = $(UNIX_DIR) -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/mpxu/lint-libs/$(OBJS_DIR) - -# -# Define the actual specific platforms -# -MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP - -# -# Define platform specific values -# -#MACHINE_DEFS += -DNCPU=554 -#MACHINE_DEFS += -DMAX_UPA=1024 -#MACHINE_DEFS += -DIGN_SIZE=10 -# Max IOSRAM TOC major version number supported -#MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1 - -# Define for inline pre-processing since -# cpp not smart about v9 yet. -# -CPP_DEFS_32 = -CPP_DEFS_64 = -D__sparcv9 -CPP_DEFS = $(CPP_DEFS_$(CLASS)) - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/mpxu/Makefile.targ b/usr/src/uts/sun4u/mpxu/Makefile.targ index 1cc834d0b2..3097b325e1 100644 --- a/usr/src/uts/sun4u/mpxu/Makefile.targ +++ b/usr/src/uts/sun4u/mpxu/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,78 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. +# + +# +# Common targets for sun4u MPXU implementation specific modules. +# + +.KEEP_STATE: + +# +# Rules for implementation subdirectories. # +$(ROOT_MPXU_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_MPXU_MOD_DIR): $(ROOT_MPXU_DIR) + -$(INS.dir) + +$(ROOT_MPXU_DRV_DIR_32): $(ROOT_MPXU_MOD_DIR) + -$(INS.dir) + +$(ROOT_MPXU_DRV_DIR_64): $(ROOT_MPXU_DRV_DIR_32) + -$(INS.dir) + +$(ROOT_MPXU_MISC_DIR_32): $(ROOT_MPXU_MOD_DIR) + -$(INS.dir) + +$(ROOT_MPXU_MISC_DIR_64): $(ROOT_MPXU_MISC_DIR_32) + -$(INS.dir) + +$(ROOT_MPXU_CRYPTO_DIR_32): $(ROOT_MPXU_MOD_DIR) + -$(INS.dir) -UTSTREE=$(UTSBASE) +$(ROOT_MPXU_CRYPTO_DIR_64): $(ROOT_MPXU_CRYPTO_DIR_32) + -$(INS.dir) -include $(UTSBASE)/sun4u/mpxu/Makefile.targ.shared +$(USR_MPXU_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_MPXU_INC_DIR): $(USR_MPXU_DIR) + $(INS.slink4) + +$(USR_MPXU_ISYS_DIR): $(USR_MPXU_INC_DIR) + $(INS.dir) + +$(USR_MPXU_SBIN_DIR): $(USR_MPXU_DIR) + $(INS.dir) + +$(USR_MPXU_SBIN_PRTDIAG): $(USR_MPXU_SBIN_DIR) + $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@ + +$(USR_MPXU_SBIN_FRUADM): $(USR_MPXU_SBIN_DIR) + $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@ + +$(LINKED_PLATFORMS:%=$(ROOT_PLAT_DIR)/%): $(ROOT_PLAT_DIR) + $(INS.slink3) + +$(LINKED_PLATFORMS:%=$(USR_PLAT_DIR)/%): $(USR_PLAT_DIR) + $(INS.slink3) + +$(USR_MPXU_LIB_DIR): $(USR_MPXU_DIR) + -$(INS.dir) + +$(ROOT_MPXU_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_MISC_DIR) + $(INS.file) + +$(ROOT_MPXU_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_DRV_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/mpxu/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/mpxu/Makefile.targ.shared b/usr/src/uts/sun4u/mpxu/Makefile.targ.shared deleted file mode 100644 index 281480eb08..0000000000 --- a/usr/src/uts/sun4u/mpxu/Makefile.targ.shared +++ /dev/null @@ -1,95 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. -# - -# -# Common targets for sun4u MPXU implementation specific modules. -# - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_MPXU_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_MPXU_MOD_DIR): $(ROOT_MPXU_DIR) - -$(INS.dir) - -$(ROOT_MPXU_DRV_DIR_32): $(ROOT_MPXU_MOD_DIR) - -$(INS.dir) - -$(ROOT_MPXU_DRV_DIR_64): $(ROOT_MPXU_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_MPXU_MISC_DIR_32): $(ROOT_MPXU_MOD_DIR) - -$(INS.dir) - -$(ROOT_MPXU_MISC_DIR_64): $(ROOT_MPXU_MISC_DIR_32) - -$(INS.dir) - -$(ROOT_MPXU_CRYPTO_DIR_32): $(ROOT_MPXU_MOD_DIR) - -$(INS.dir) - -$(ROOT_MPXU_CRYPTO_DIR_64): $(ROOT_MPXU_CRYPTO_DIR_32) - -$(INS.dir) - -$(USR_MPXU_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_MPXU_INC_DIR): $(USR_MPXU_DIR) - $(INS.slink4) - -$(USR_MPXU_ISYS_DIR): $(USR_MPXU_INC_DIR) - $(INS.dir) - -$(USR_MPXU_SBIN_DIR): $(USR_MPXU_DIR) - $(INS.dir) - -$(USR_MPXU_SBIN_PRTDIAG): $(USR_MPXU_SBIN_DIR) - $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@ - -$(USR_MPXU_SBIN_FRUADM): $(USR_MPXU_SBIN_DIR) - $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@ - -$(LINKED_PLATFORMS:%=$(ROOT_PLAT_DIR)/%): $(ROOT_PLAT_DIR) - $(INS.slink3) - -$(LINKED_PLATFORMS:%=$(USR_PLAT_DIR)/%): $(USR_PLAT_DIR) - $(INS.slink3) - -$(USR_MPXU_LIB_DIR): $(USR_MPXU_DIR) - -$(INS.dir) - -$(ROOT_MPXU_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_MISC_DIR) - $(INS.file) - -$(ROOT_MPXU_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_MPXU_DRV_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/mpxu/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/opl/Makefile.opl b/usr/src/uts/sun4u/opl/Makefile.opl index a479d21413..a20f97cfb1 100644 --- a/usr/src/uts/sun4u/opl/Makefile.opl +++ b/usr/src/uts/sun4u/opl/Makefile.opl @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -17,12 +18,163 @@ # # CDDL HEADER END # -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. +# +# Global definitions for sun4u opl implementation specific modules. +# +# uts/sun4u/opl/Makefile.opl +# + +# +# Define directories. +# +# +# +ROOT_OPL_DIR = $(ROOT_PLAT_DIR)/SUNW,SPARC-Enterprise +ROOT_OPL_MOD_DIR = $(ROOT_OPL_DIR)/kernel +ROOT_OPL_KERN_DIR_32 = $(ROOT_OPL_MOD_DIR) +ROOT_OPL_KERN_DIR_64 = $(ROOT_OPL_MOD_DIR)/$(SUBDIR64) +ROOT_OPL_MISC_DIR_32 = $(ROOT_OPL_MOD_DIR)/misc +ROOT_OPL_MISC_DIR_64 = $(ROOT_OPL_MOD_DIR)/misc/$(SUBDIR64) +ROOT_OPL_DRV_DIR_32 = $(ROOT_OPL_MOD_DIR)/drv +ROOT_OPL_DRV_DIR_64 = $(ROOT_OPL_MOD_DIR)/drv/$(SUBDIR64) +ROOT_OPL_CPU_DIR_32 = $(ROOT_OPL_MOD_DIR)/cpu +ROOT_OPL_CPU_DIR_64 = $(ROOT_OPL_MOD_DIR)/cpu/$(SUBDIR64) +ROOT_OPL_CRYPTO_DIR_32 = $(ROOT_OPL_MOD_DIR)/crypto +ROOT_OPL_CRYPTO_DIR_64 = $(ROOT_OPL_MOD_DIR)/crypto/$(SUBDIR64) + +ROOT_OPL_KERN_DIR = $(ROOT_OPL_KERN_DIR_$(CLASS)) +ROOT_OPL_MISC_DIR = $(ROOT_OPL_MISC_DIR_$(CLASS)) +ROOT_OPL_DRV_DIR = $(ROOT_OPL_DRV_DIR_$(CLASS)) +ROOT_OPL_CPU_DIR = $(ROOT_OPL_CPU_DIR_$(CLASS)) +ROOT_OPL_CRYPTO_DIR = $(ROOT_OPL_CRYPTO_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_OPL_MOD_DIR) +ROOT_PLAT_MISC_DIRS_32 += $(ROOT_OPL_MISC_DIR_32) + +USR_OPL_DIR = $(USR_PLAT_DIR)/SUNW,SPARC-Enterprise +USR_OPL_LIB_DIR = $(USR_OPL_DIR)/lib +USR_OPL_SBIN_DIR = $(USR_OPL_DIR)/sbin +USR_OPL_SBIN_PRTDIAG = $(USR_OPL_SBIN_DIR)/prtdiag +USR_OPL_SBIN_FRUADM = $(USR_OPL_SBIN_DIR)/fruadm +USR_OPL_INC_DIR = $(USR_OPL_DIR)/include +USR_OPL_ISYS_DIR = $(USR_OPL_INC_DIR)/sys + +OPL_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR) +OPLMSU_OPTION = options + +# +# Define modules. +# +OPL_KMODS = platmod +OPL_KMODS += dm2s +OPL_KMODS += oplkmdrv +OPL_KMODS += pcicmu +OPL_KMODS += oplpanel +OPL_KMODS += dr .WAIT drmach +OPL_KMODS += oplmsu +OPL_KMODS += mc-opl + # +# CPU modules. +# +OPL_CPU_KMODS += olympus_c + +# Links to OPL crypto modules +# +OPL_CRYPTO_LINKS = aes -UTSTREE=$(UTSBASE) +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# +include $(UTSBASE)/sun4u/ngdr/Makefile.files +include $(UTSBASE)/sun4u/opl/Makefile.files + +# +# Include common rules. +# +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Everybody needs to know how to build modstubs.o and to locate unix.o +# +UNIX_DIR = $(UTSBASE)/$(PLATFORM)/opl/unix +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/opl/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR) + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o + +LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln + +# +# Define the actual specific platforms +# +MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP +MACHINE_DEFS += -D_CPU_SIGNATURE + +# +# Maximum CPUID = 01111 11 01 1 = 0x1FB (507) +# Maximum CHIPID = 1 01111 11 00 0 = 0x5F8 (1528) +# +MACHINE_DEFS += -DNCPU=512 +MACHINE_DEFS += -DMAX_CPU_CHIPID=1529 +MACHINE_DEFS += -DMAX_UPA=256 +MACHINE_DEFS += -DIGN_SIZE=8 +MACHINE_DEFS += -DMAX_MEM_NODES=16 +# +# UTSB_PHYS will enable user TSB physical access for TL>0 +# +MACHINE_DEFS += -DUTSB_PHYS +MACHINE_DEFS += -D_OPL +MACHINE_DEFS += -DOLYMPUS_SHARED_FTLB +MACHINE_DEFS += -D_CMP_NO_ERROR_STEERING -D_HW_MEMSCRUB_SUPPORT +MACHINE_DEFS += -DDO_CORELEVEL_LOADBAL +MACHINE_DEFS += -DITLB_32M_256M_SUPPORT +# +# OLYMPUS C cross-call erratas. +# - revision A can only deliver one xcall at a time. +# - revision B can dispatch xcalls to 31 (IDSR_BN_SETS) CPUs at a time, +# but it can not send more xcalls until all the pending xcalls are +# dispatched. In other words, all previous 31 xcall slots must be +# in non-busy state before further xcalls can be issued. +MACHINE_DEFS += -DOLYMPUS_C_REV_A_ERRATA_XCALL +MACHINE_DEFS += -DOLYMPUS_C_REV_B_ERRATA_XCALL +# +# OLYMPUS C Spurious interrupts +# - When an UE is detected in a interrupt packet, +# Olympus-C takes an interrupt_vector_trap (TT=0x60) while +# ASI_INTR_RECIEVE.BUSY is set to zero to indicate the existence +# of the error. Software will see this as a spurious interrupt since +# the interrupt busy bit is set to zero. SW will still need to +# explicitly clear the interrupt busy bit to reset the HW state. +# Failure to do so will result in the processor continuously taking +# an interrupt vector trap when PSTATE.IE is reset to one. +# Note that UE in interrupt packet is reported to the SP and handled +# accordingly. For the domain, the system should panic as it is not +# recoverable. +MACHINE_DEFS += -DCLEAR_INTR_BUSYBIT_ON_SPURIOUS + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV -include $(UTSBASE)/sun4u/opl/Makefile.opl.shared +.KEEP_STATE: diff --git a/usr/src/uts/sun4u/opl/Makefile.opl.shared b/usr/src/uts/sun4u/opl/Makefile.opl.shared deleted file mode 100644 index 584e7f9488..0000000000 --- a/usr/src/uts/sun4u/opl/Makefile.opl.shared +++ /dev/null @@ -1,180 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. -# -# Global definitions for sun4u opl implementation specific modules. -# -# uts/sun4u/opl/Makefile.opl -# - -# -# Define directories. -# -# -# -ROOT_OPL_DIR = $(ROOT_PLAT_DIR)/SUNW,SPARC-Enterprise -ROOT_OPL_MOD_DIR = $(ROOT_OPL_DIR)/kernel -ROOT_OPL_KERN_DIR_32 = $(ROOT_OPL_MOD_DIR) -ROOT_OPL_KERN_DIR_64 = $(ROOT_OPL_MOD_DIR)/$(SUBDIR64) -ROOT_OPL_MISC_DIR_32 = $(ROOT_OPL_MOD_DIR)/misc -ROOT_OPL_MISC_DIR_64 = $(ROOT_OPL_MOD_DIR)/misc/$(SUBDIR64) -ROOT_OPL_DRV_DIR_32 = $(ROOT_OPL_MOD_DIR)/drv -ROOT_OPL_DRV_DIR_64 = $(ROOT_OPL_MOD_DIR)/drv/$(SUBDIR64) -ROOT_OPL_CPU_DIR_32 = $(ROOT_OPL_MOD_DIR)/cpu -ROOT_OPL_CPU_DIR_64 = $(ROOT_OPL_MOD_DIR)/cpu/$(SUBDIR64) -ROOT_OPL_CRYPTO_DIR_32 = $(ROOT_OPL_MOD_DIR)/crypto -ROOT_OPL_CRYPTO_DIR_64 = $(ROOT_OPL_MOD_DIR)/crypto/$(SUBDIR64) - -ROOT_OPL_KERN_DIR = $(ROOT_OPL_KERN_DIR_$(CLASS)) -ROOT_OPL_MISC_DIR = $(ROOT_OPL_MISC_DIR_$(CLASS)) -ROOT_OPL_DRV_DIR = $(ROOT_OPL_DRV_DIR_$(CLASS)) -ROOT_OPL_CPU_DIR = $(ROOT_OPL_CPU_DIR_$(CLASS)) -ROOT_OPL_CRYPTO_DIR = $(ROOT_OPL_CRYPTO_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_OPL_MOD_DIR) -ROOT_PLAT_MISC_DIRS_32 += $(ROOT_OPL_MISC_DIR_32) - -USR_OPL_DIR = $(USR_PLAT_DIR)/SUNW,SPARC-Enterprise -USR_OPL_LIB_DIR = $(USR_OPL_DIR)/lib -USR_OPL_SBIN_DIR = $(USR_OPL_DIR)/sbin -USR_OPL_SBIN_PRTDIAG = $(USR_OPL_SBIN_DIR)/prtdiag -USR_OPL_SBIN_FRUADM = $(USR_OPL_SBIN_DIR)/fruadm -USR_OPL_INC_DIR = $(USR_OPL_DIR)/include -USR_OPL_ISYS_DIR = $(USR_OPL_INC_DIR)/sys - -OPL_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR) -OPLMSU_OPTION = options - -# -# Define modules. -# -OPL_KMODS = platmod -OPL_KMODS += dm2s -OPL_KMODS += oplkmdrv -OPL_KMODS += pcicmu -OPL_KMODS += oplpanel -OPL_KMODS += dr .WAIT drmach -OPL_KMODS += oplmsu -OPL_KMODS += mc-opl - -# -# CPU modules. -# -OPL_CPU_KMODS += olympus_c - -# Links to OPL crypto modules -# -OPL_CRYPTO_LINKS = aes - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSBASE)/sun4u/ngdr/Makefile.files -include $(UTSTREE)/sun4u/opl/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o -# -UNIX_DIR = $(UTSBASE)/$(PLATFORM)/opl/unix -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/opl/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/opl/lint-libs/$(OBJS_DIR) - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o - -LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln - -# -# Define the actual specific platforms -# -MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -MACHINE_DEFS += -D_CPU_SIGNATURE - -# -# Maximum CPUID = 01111 11 01 1 = 0x1FB (507) -# Maximum CHIPID = 1 01111 11 00 0 = 0x5F8 (1528) -# -MACHINE_DEFS += -DNCPU=512 -MACHINE_DEFS += -DMAX_CPU_CHIPID=1529 -MACHINE_DEFS += -DMAX_UPA=256 -MACHINE_DEFS += -DIGN_SIZE=8 -MACHINE_DEFS += -DMAX_MEM_NODES=16 -# -# UTSB_PHYS will enable user TSB physical access for TL>0 -# -MACHINE_DEFS += -DUTSB_PHYS -MACHINE_DEFS += -D_OPL -MACHINE_DEFS += -DOLYMPUS_SHARED_FTLB -MACHINE_DEFS += -D_CMP_NO_ERROR_STEERING -D_HW_MEMSCRUB_SUPPORT -MACHINE_DEFS += -DDO_CORELEVEL_LOADBAL -MACHINE_DEFS += -DITLB_32M_256M_SUPPORT -# -# OLYMPUS C cross-call erratas. -# - revision A can only deliver one xcall at a time. -# - revision B can dispatch xcalls to 31 (IDSR_BN_SETS) CPUs at a time, -# but it can not send more xcalls until all the pending xcalls are -# dispatched. In other words, all previous 31 xcall slots must be -# in non-busy state before further xcalls can be issued. -MACHINE_DEFS += -DOLYMPUS_C_REV_A_ERRATA_XCALL -MACHINE_DEFS += -DOLYMPUS_C_REV_B_ERRATA_XCALL -# -# OLYMPUS C Spurious interrupts -# - When an UE is detected in a interrupt packet, -# Olympus-C takes an interrupt_vector_trap (TT=0x60) while -# ASI_INTR_RECIEVE.BUSY is set to zero to indicate the existence -# of the error. Software will see this as a spurious interrupt since -# the interrupt busy bit is set to zero. SW will still need to -# explicitly clear the interrupt busy bit to reset the HW state. -# Failure to do so will result in the processor continuously taking -# an interrupt vector trap when PSTATE.IE is reset to one. -# Note that UE in interrupt packet is reported to the SP and handled -# accordingly. For the domain, the system should panic as it is not -# recoverable. -MACHINE_DEFS += -DCLEAR_INTR_BUSYBIT_ON_SPURIOUS - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV - -.KEEP_STATE: diff --git a/usr/src/uts/sun4u/opl/Makefile.targ b/usr/src/uts/sun4u/opl/Makefile.targ index acc14934f3..051835e9e2 100644 --- a/usr/src/uts/sun4u/opl/Makefile.targ +++ b/usr/src/uts/sun4u/opl/Makefile.targ @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -17,12 +18,84 @@ # # CDDL HEADER END # -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. +# +# Common targets for sun4u opl implementation specific modules. +# +# uts/sun4u/opl/Makefile.targ +# + +.KEEP_STATE: + +# +# Rules for implementation subdirectories. # +$(ROOT_OPL_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_OPL_MOD_DIR): $(ROOT_OPL_DIR) + -$(INS.dir) + +$(ROOT_OPL_DRV_DIR_32): $(ROOT_OPL_MOD_DIR) + -$(INS.dir) + +$(ROOT_OPL_DRV_DIR_64): $(ROOT_OPL_DRV_DIR_32) + -$(INS.dir) + +$(ROOT_OPL_CPU_DIR_32): $(ROOT_OPL_MOD_DIR) + -$(INS.dir) + +$(ROOT_OPL_CPU_DIR_64): $(ROOT_OPL_CPU_DIR_32) + -$(INS.dir) + +$(ROOT_OPL_MISC_DIR_32): $(ROOT_OPL_MOD_DIR) + -$(INS.dir) + +$(ROOT_OPL_MISC_DIR_64): $(ROOT_OPL_MISC_DIR_32) + -$(INS.dir) -UTSTREE=$(UTSBASE) +$(ROOT_OPL_CRYPTO_DIR_32): $(ROOT_OPL_MOD_DIR) + -$(INS.dir) -include $(UTSBASE)/sun4u/opl/Makefile.targ.shared +$(ROOT_OPL_CRYPTO_DIR_64): $(ROOT_OPL_CRYPTO_DIR_32) + -$(INS.dir) + +$(USR_OPL_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_OPL_INC_DIR): $(USR_OPL_DIR) $(USR_PSM_INCL_DIR) + $(INS.slink4) + +$(USR_OPL_SBIN_DIR): $(USR_OPL_DIR) $(USR_PSM_SBIN_DIR) + $(INS.dir) + +$(USR_OPL_SBIN_PRTDIAG): $(USR_OPL_SBIN_DIR) + $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@ + +$(USR_OPL_SBIN_FRUADM): $(USR_OPL_SBIN_DIR) + $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@ + +$(USR_OPL_LIB_DIR): $(USR_OPL_DIR) $(USR_PSM_LIB_DIR) + -$(INS.dir) + +$(USR_OPL_ISYS_DIR): $(USR_OPL_INC_DIR) + $(INS.dir) + +$(ROOT_OPL_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_KERN_DIR) FRC + $(INS.file) + +$(ROOT_OPL_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_DRV_DIR) FRC + $(INS.file) + +$(ROOT_OPL_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_CPU_DIR) FRC + $(INS.file) + +$(ROOT_OPL_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_MISC_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/opl/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/opl/Makefile.targ.shared b/usr/src/uts/sun4u/opl/Makefile.targ.shared deleted file mode 100644 index cb91037c13..0000000000 --- a/usr/src/uts/sun4u/opl/Makefile.targ.shared +++ /dev/null @@ -1,101 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. -# -# Common targets for sun4u opl implementation specific modules. -# -# uts/sun4u/opl/Makefile.targ -# - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_OPL_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_OPL_MOD_DIR): $(ROOT_OPL_DIR) - -$(INS.dir) - -$(ROOT_OPL_DRV_DIR_32): $(ROOT_OPL_MOD_DIR) - -$(INS.dir) - -$(ROOT_OPL_DRV_DIR_64): $(ROOT_OPL_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_OPL_CPU_DIR_32): $(ROOT_OPL_MOD_DIR) - -$(INS.dir) - -$(ROOT_OPL_CPU_DIR_64): $(ROOT_OPL_CPU_DIR_32) - -$(INS.dir) - -$(ROOT_OPL_MISC_DIR_32): $(ROOT_OPL_MOD_DIR) - -$(INS.dir) - -$(ROOT_OPL_MISC_DIR_64): $(ROOT_OPL_MISC_DIR_32) - -$(INS.dir) - -$(ROOT_OPL_CRYPTO_DIR_32): $(ROOT_OPL_MOD_DIR) - -$(INS.dir) - -$(ROOT_OPL_CRYPTO_DIR_64): $(ROOT_OPL_CRYPTO_DIR_32) - -$(INS.dir) - -$(USR_OPL_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_OPL_INC_DIR): $(USR_OPL_DIR) $(USR_PSM_INCL_DIR) - $(INS.slink4) - -$(USR_OPL_SBIN_DIR): $(USR_OPL_DIR) $(USR_PSM_SBIN_DIR) - $(INS.dir) - -$(USR_OPL_SBIN_PRTDIAG): $(USR_OPL_SBIN_DIR) - $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/prtdiag $@ - -$(USR_OPL_SBIN_FRUADM): $(USR_OPL_SBIN_DIR) - $(RM) -r $@; $(SYMLINK) ../../$(PLATFORM)/sbin/fruadm $@ - -$(USR_OPL_LIB_DIR): $(USR_OPL_DIR) $(USR_PSM_LIB_DIR) - -$(INS.dir) - -$(USR_OPL_ISYS_DIR): $(USR_OPL_INC_DIR) - $(INS.dir) - -$(ROOT_OPL_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_KERN_DIR) FRC - $(INS.file) - -$(ROOT_OPL_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_DRV_DIR) FRC - $(INS.file) - -$(ROOT_OPL_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_CPU_DIR) FRC - $(INS.file) - -$(ROOT_OPL_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_OPL_MISC_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/opl/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/serengeti/Makefile.serengeti b/usr/src/uts/sun4u/serengeti/Makefile.serengeti index 656134d7f5..3e5184f235 100644 --- a/usr/src/uts/sun4u/serengeti/Makefile.serengeti +++ b/usr/src/uts/sun4u/serengeti/Makefile.serengeti @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,132 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" + +# +# Global definitions for sun4u implementation specific modules. +# + +# +# Define the name of this implementation. +# + +# +# Define directories. +# +ROOT_SERENGETI_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire +ROOT_SERENGETI_MOD_DIR = $(ROOT_SERENGETI_DIR)/kernel + +ROOT_SERENGETI_KERN_DIR_32 = $(ROOT_SERENGETI_MOD_DIR) +ROOT_SERENGETI_KERN_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/$(SUBDIR64) +ROOT_SERENGETI_KERN_DIR = $(ROOT_SERENGETI_KERN_DIR_$(CLASS)) + +ROOT_SERENGETI_CPU_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/cpu +ROOT_SERENGETI_CPU_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/cpu/$(SUBDIR64) +ROOT_SERENGETI_CPU_DIR = $(ROOT_SERENGETI_CPU_DIR_$(CLASS)) + +ROOT_SERENGETI_DRV_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/drv +ROOT_SERENGETI_DRV_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/drv/$(SUBDIR64) +ROOT_SERENGETI_DRV_DIR = $(ROOT_SERENGETI_DRV_DIR_$(CLASS)) + +ROOT_SERENGETI_MISC_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/misc +ROOT_SERENGETI_MISC_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/misc/$(SUBDIR64) +ROOT_SERENGETI_MISC_DIR = $(ROOT_SERENGETI_MISC_DIR_$(CLASS)) + +ROOT_SERENGETI_CRYPTO_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/crypto +ROOT_SERENGETI_CRYPTO_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/crypto/$(SUBDIR64) +ROOT_SERENGETI_CRYPTO_DIR = $(ROOT_SERENGETI_CRYPTO_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_SERENGETI_MOD_DIR) +ROOT_PLAT_MISC_DIRS_32 += $(ROOT_SERENGETI_MISC_DIR_32) + +USR_SERENGETI_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire +USR_SERENGETI_INC_DIR = $(USR_SERENGETI_DIR)/include +USR_SERENGETI_ISYS_DIR = $(USR_SERENGETI_INC_DIR)/sys +USR_SERENGETI_SBIN_DIR = $(USR_SERENGETI_DIR)/sbin +USR_SERENGETI_LIB_DIR = $(USR_SERENGETI_DIR)/lib + +SERENGETI_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR) + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# + +# +# Links to UltraSparc III crypto modules +# +SERENGETI_CRYPTO_LINKS += aes + +include $(UTSBASE)/sun4u/serengeti/Makefile.files +# +# Include common rules. +# + +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Define modules +# +SERENGETI_KMODS = cheetah cheetahplus +SERENGETI_KMODS += platmod sbdp sgcn sghsc sgsbbc ssm + # +# Everybody needs to know how to build modstubs.o and to locate unix.o +# +UNIX_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/unix +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR) + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o + +LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln -UTSTREE=$(UTSBASE) +# +# Define the actual specific platforms +# +MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED -include $(UTSBASE)/sun4u/serengeti/Makefile.serengeti.shared +# +# Define platform specific values +# +MACHINE_DEFS += -DNCPU=558 +MACHINE_DEFS += -DMAX_CPU_CHIPID=554 +MACHINE_DEFS += -DMAX_UPA=1024 +MACHINE_DEFS += -DIGN_SIZE=10 +MACHINE_DEFS += -DMAX_MEM_NODES=8 +MACHINE_DEFS += -DLOCKED_DTLB_ENTRIES=6 +# Max IOSRAM TOC major version number supported +MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1 +MACHINE_DEFS += -DC_OBP + +# Define for inline pre-processing since +# cpp is not smart about v9 yet. +# It's not smart about __sparc either since it only predefines sparc. +CPP_DEFS_32 = -D__sparc +CPP_DEFS_64 = -D__sparc -D__sparcv9 +CPP_DEFS = $(CPP_DEFS_$(CLASS)) + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/serengeti/Makefile.serengeti.shared b/usr/src/uts/sun4u/serengeti/Makefile.serengeti.shared deleted file mode 100644 index a822481917..0000000000 --- a/usr/src/uts/sun4u/serengeti/Makefile.serengeti.shared +++ /dev/null @@ -1,150 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" - -# -# Global definitions for sun4u implementation specific modules. -# - -# -# Define the name of this implementation. -# - -# -# Define directories. -# -ROOT_SERENGETI_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire -ROOT_SERENGETI_MOD_DIR = $(ROOT_SERENGETI_DIR)/kernel - -ROOT_SERENGETI_KERN_DIR_32 = $(ROOT_SERENGETI_MOD_DIR) -ROOT_SERENGETI_KERN_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/$(SUBDIR64) -ROOT_SERENGETI_KERN_DIR = $(ROOT_SERENGETI_KERN_DIR_$(CLASS)) - -ROOT_SERENGETI_CPU_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/cpu -ROOT_SERENGETI_CPU_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/cpu/$(SUBDIR64) -ROOT_SERENGETI_CPU_DIR = $(ROOT_SERENGETI_CPU_DIR_$(CLASS)) - -ROOT_SERENGETI_DRV_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/drv -ROOT_SERENGETI_DRV_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/drv/$(SUBDIR64) -ROOT_SERENGETI_DRV_DIR = $(ROOT_SERENGETI_DRV_DIR_$(CLASS)) - -ROOT_SERENGETI_MISC_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/misc -ROOT_SERENGETI_MISC_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/misc/$(SUBDIR64) -ROOT_SERENGETI_MISC_DIR = $(ROOT_SERENGETI_MISC_DIR_$(CLASS)) - -ROOT_SERENGETI_CRYPTO_DIR_32 = $(ROOT_SERENGETI_MOD_DIR)/crypto -ROOT_SERENGETI_CRYPTO_DIR_64 = $(ROOT_SERENGETI_MOD_DIR)/crypto/$(SUBDIR64) -ROOT_SERENGETI_CRYPTO_DIR = $(ROOT_SERENGETI_CRYPTO_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_SERENGETI_MOD_DIR) -ROOT_PLAT_MISC_DIRS_32 += $(ROOT_SERENGETI_MISC_DIR_32) - -USR_SERENGETI_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire -USR_SERENGETI_INC_DIR = $(USR_SERENGETI_DIR)/include -USR_SERENGETI_ISYS_DIR = $(USR_SERENGETI_INC_DIR)/sys -USR_SERENGETI_SBIN_DIR = $(USR_SERENGETI_DIR)/sbin -USR_SERENGETI_LIB_DIR = $(USR_SERENGETI_DIR)/lib - -SERENGETI_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR) - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# - -# -# Links to UltraSparc III crypto modules -# -SERENGETI_CRYPTO_LINKS += aes - -include $(UTSTREE)/sun4u/serengeti/Makefile.files -# -# Include common rules. -# - -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules -# -SERENGETI_KMODS = cheetah cheetahplus -SERENGETI_KMODS += platmod sbdp sgcn sghsc sgsbbc ssm - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o -# -UNIX_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/unix -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/serengeti/lint-libs/$(OBJS_DIR) - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o - -LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln - -# -# Define the actual specific platforms -# -MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED - -# -# Define platform specific values -# -MACHINE_DEFS += -DNCPU=558 -MACHINE_DEFS += -DMAX_CPU_CHIPID=554 -MACHINE_DEFS += -DMAX_UPA=1024 -MACHINE_DEFS += -DIGN_SIZE=10 -MACHINE_DEFS += -DMAX_MEM_NODES=8 -MACHINE_DEFS += -DLOCKED_DTLB_ENTRIES=6 -# Max IOSRAM TOC major version number supported -MACHINE_DEFS += -DMAX_IOSRAM_TOC_VER=0x1 -MACHINE_DEFS += -DC_OBP - -# Define for inline pre-processing since -# cpp is not smart about v9 yet. -# It's not smart about __sparc either since it only predefines sparc. -CPP_DEFS_32 = -D__sparc -CPP_DEFS_64 = -D__sparc -D__sparcv9 -CPP_DEFS = $(CPP_DEFS_$(CLASS)) - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/serengeti/Makefile.targ b/usr/src/uts/sun4u/serengeti/Makefile.targ index 541dc690e4..9c9f9809a2 100644 --- a/usr/src/uts/sun4u/serengeti/Makefile.targ +++ b/usr/src/uts/sun4u/serengeti/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,79 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" + +# +# Common targets for sun4u Serengeti implementation specific modules. +# + +.KEEP_STATE: + +# +# Rules for implementation subdirectories. # +$(ROOT_SERENGETI_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_SERENGETI_MOD_DIR): $(ROOT_SERENGETI_DIR) + -$(INS.dir) + +$(ROOT_SERENGETI_CPU_DIR_32): $(ROOT_SERENGETI_MOD_DIR) + -$(INS.dir) + +$(ROOT_SERENGETI_CPU_DIR_64): $(ROOT_SERENGETI_CPU_DIR_32) + -$(INS.dir) + +$(ROOT_SERENGETI_DRV_DIR_32): $(ROOT_SERENGETI_MOD_DIR) + -$(INS.dir) + +$(ROOT_SERENGETI_DRV_DIR_64): $(ROOT_SERENGETI_DRV_DIR_32) + -$(INS.dir) + +$(ROOT_SERENGETI_MISC_DIR_32): $(ROOT_SERENGETI_MOD_DIR) + -$(INS.dir) -UTSTREE=$(UTSBASE) +$(ROOT_SERENGETI_MISC_DIR_64): $(ROOT_SERENGETI_MISC_DIR_32) + -$(INS.dir) -include $(UTSBASE)/sun4u/serengeti/Makefile.targ.shared +$(ROOT_SERENGETI_CRYPTO_DIR_32): $(ROOT_SERENGETI_MOD_DIR) + -$(INS.dir) + +$(ROOT_SERENGETI_CRYPTO_DIR_64): $(ROOT_SERENGETI_CRYPTO_DIR_32) + -$(INS.dir) + +$(USR_SERENGETI_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_SERENGETI_INC_DIR): $(USR_SERENGETI_DIR) + $(INS.slink4) + +$(USR_SERENGETI_ISYS_DIR): $(USR_SERENGETI_INC_DIR) + $(INS.dir) + +$(USR_SERENGETI_SBIN_DIR): $(USR_SERENGETI_DIR) + $(INS.slink5) + +$(USR_SERENGETI_LIB_DIR): $(USR_SERENGETI_DIR) + -$(INS.dir) + +$(ROOT_SERENGETI_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_MISC_DIR) FRC + $(INS.file) + +$(ROOT_SERENGETI_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_CPU_DIR) FRC + $(INS.file) + +$(ROOT_SERENGETI_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_DRV_DIR) FRC + $(INS.file) + +$(ROOT_SERENGETI_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_KERN_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/serengeti/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/serengeti/Makefile.targ.shared b/usr/src/uts/sun4u/serengeti/Makefile.targ.shared deleted file mode 100644 index a74c1efc1b..0000000000 --- a/usr/src/uts/sun4u/serengeti/Makefile.targ.shared +++ /dev/null @@ -1,96 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# -# Common targets for sun4u Serengeti implementation specific modules. -# - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_SERENGETI_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_SERENGETI_MOD_DIR): $(ROOT_SERENGETI_DIR) - -$(INS.dir) - -$(ROOT_SERENGETI_CPU_DIR_32): $(ROOT_SERENGETI_MOD_DIR) - -$(INS.dir) - -$(ROOT_SERENGETI_CPU_DIR_64): $(ROOT_SERENGETI_CPU_DIR_32) - -$(INS.dir) - -$(ROOT_SERENGETI_DRV_DIR_32): $(ROOT_SERENGETI_MOD_DIR) - -$(INS.dir) - -$(ROOT_SERENGETI_DRV_DIR_64): $(ROOT_SERENGETI_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_SERENGETI_MISC_DIR_32): $(ROOT_SERENGETI_MOD_DIR) - -$(INS.dir) - -$(ROOT_SERENGETI_MISC_DIR_64): $(ROOT_SERENGETI_MISC_DIR_32) - -$(INS.dir) - -$(ROOT_SERENGETI_CRYPTO_DIR_32): $(ROOT_SERENGETI_MOD_DIR) - -$(INS.dir) - -$(ROOT_SERENGETI_CRYPTO_DIR_64): $(ROOT_SERENGETI_CRYPTO_DIR_32) - -$(INS.dir) - -$(USR_SERENGETI_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_SERENGETI_INC_DIR): $(USR_SERENGETI_DIR) - $(INS.slink4) - -$(USR_SERENGETI_ISYS_DIR): $(USR_SERENGETI_INC_DIR) - $(INS.dir) - -$(USR_SERENGETI_SBIN_DIR): $(USR_SERENGETI_DIR) - $(INS.slink5) - -$(USR_SERENGETI_LIB_DIR): $(USR_SERENGETI_DIR) - -$(INS.dir) - -$(ROOT_SERENGETI_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_MISC_DIR) FRC - $(INS.file) - -$(ROOT_SERENGETI_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_CPU_DIR) FRC - $(INS.file) - -$(ROOT_SERENGETI_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_DRV_DIR) FRC - $(INS.file) - -$(ROOT_SERENGETI_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_SERENGETI_KERN_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/serengeti/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/starcat/Makefile.starcat b/usr/src/uts/sun4u/starcat/Makefile.starcat index 9122646992..4205d221a5 100644 --- a/usr/src/uts/sun4u/starcat/Makefile.starcat +++ b/usr/src/uts/sun4u/starcat/Makefile.starcat @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,138 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Global definitions for sun4u starcat implementation specific modules. +# + +# +# Define directories. +# +ROOT_STARCAT_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-15000 +ROOT_STARCAT_MOD_DIR = $(ROOT_STARCAT_DIR)/kernel +ROOT_STARCAT_KERN_DIR_32 = $(ROOT_STARCAT_MOD_DIR) +ROOT_STARCAT_KERN_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/$(SUBDIR64) +ROOT_STARCAT_MISC_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/misc +ROOT_STARCAT_MISC_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/misc/$(SUBDIR64) +ROOT_STARCAT_DRV_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/drv +ROOT_STARCAT_DRV_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/drv/$(SUBDIR64) +ROOT_STARCAT_CPU_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/cpu +ROOT_STARCAT_CPU_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/cpu/$(SUBDIR64) +ROOT_STARCAT_CRYPTO_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/crypto +ROOT_STARCAT_CRYPTO_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/crypto/$(SUBDIR64) + +ROOT_STARCAT_KERN_DIR = $(ROOT_STARCAT_KERN_DIR_$(CLASS)) +ROOT_STARCAT_MISC_DIR = $(ROOT_STARCAT_MISC_DIR_$(CLASS)) +ROOT_STARCAT_DRV_DIR = $(ROOT_STARCAT_DRV_DIR_$(CLASS)) +ROOT_STARCAT_CPU_DIR = $(ROOT_STARCAT_CPU_DIR_$(CLASS)) +ROOT_STARCAT_CRYPTO_DIR = $(ROOT_STARCAT_CRYPTO_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_STARCAT_MOD_DIR) +ROOT_PLAT_MISC_DIRS_32 += $(ROOT_STARCAT_MISC_DIR_32) + +USR_STARCAT_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-15000 +USR_STARCAT_LIB_DIR = $(USR_STARCAT_DIR)/lib +USR_STARCAT_SBIN_DIR = $(USR_STARCAT_DIR)/sbin +USR_STARCAT_INC_DIR = $(USR_STARCAT_DIR)/include +USR_STARCAT_ISYS_DIR = $(USR_STARCAT_INC_DIR)/sys + +STARCAT_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR) + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# +include $(UTSBASE)/sun4u/ngdr/Makefile.files +include $(UTSBASE)/sun4u/starcat/Makefile.files + +# +# Include common rules. +# +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Define modules +# +STARCAT_KMODS += axq +STARCAT_KMODS += cvc +STARCAT_KMODS += cvcredir +STARCAT_KMODS += dman +STARCAT_KMODS += dr +STARCAT_KMODS += drmach +STARCAT_KMODS += fcgp2 +STARCAT_KMODS += gptwo_pci +STARCAT_KMODS += iosram +STARCAT_KMODS += mboxsc +STARCAT_KMODS += platmod +STARCAT_KMODS += sc_gptwocfg +STARCAT_KMODS += schpc +STARCAT_KMODS += sckmdrv +STARCAT_KMODS += scosmb + +# +# Define CPU modules. +# +STARCAT_CPU_KMODS += cheetah cheetahplus + +# +# Links to UltraSparc III crypto modules # +STARCAT_CRYPTO_LINKS = aes -UTSTREE=$(UTSBASE) +# +# Everybody needs to know how to build modstubs.o and to locate unix.o +# +UNIX_DIR = $(UTSBASE)/$(PLATFORM)/starcat/unix +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/starcat/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR) + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o -include $(UTSBASE)/sun4u/starcat/Makefile.starcat.shared +LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln + +# +# Define the actual specific platforms +# +MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED +MACHINE_DEFS += -D_CPU_SIGNATURE + +# +# Define platform specific value +# +MACHINE_DEFS += -DNCPU=558 +MACHINE_DEFS += -DMAX_CPU_CHIPID=554 +MACHINE_DEFS += -DMAX_UPA=1024 +MACHINE_DEFS += -DIGN_SIZE=10 +MACHINE_DEFS += -DMAX_MEM_NODES=18 + +# +# Define for inline pre-processing since +# cpp not smart about v9 yet. +# It's not smart about __sparc either since it only predefines sparc. +CPP_DEFS_32 = -D__sparc +CPP_DEFS_64 = -D__sparc -D__sparcv9 +CPP_DEFS = $(CPP_DEFS_$(CLASS)) + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/starcat/Makefile.starcat.shared b/usr/src/uts/sun4u/starcat/Makefile.starcat.shared deleted file mode 100644 index 15581dc1a4..0000000000 --- a/usr/src/uts/sun4u/starcat/Makefile.starcat.shared +++ /dev/null @@ -1,157 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2007 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" -# -# Global definitions for sun4u starcat implementation specific modules. -# - -# -# Define directories. -# -ROOT_STARCAT_DIR = $(ROOT_PLAT_DIR)/SUNW,Sun-Fire-15000 -ROOT_STARCAT_MOD_DIR = $(ROOT_STARCAT_DIR)/kernel -ROOT_STARCAT_KERN_DIR_32 = $(ROOT_STARCAT_MOD_DIR) -ROOT_STARCAT_KERN_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/$(SUBDIR64) -ROOT_STARCAT_MISC_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/misc -ROOT_STARCAT_MISC_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/misc/$(SUBDIR64) -ROOT_STARCAT_DRV_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/drv -ROOT_STARCAT_DRV_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/drv/$(SUBDIR64) -ROOT_STARCAT_CPU_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/cpu -ROOT_STARCAT_CPU_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/cpu/$(SUBDIR64) -ROOT_STARCAT_CRYPTO_DIR_32 = $(ROOT_STARCAT_MOD_DIR)/crypto -ROOT_STARCAT_CRYPTO_DIR_64 = $(ROOT_STARCAT_MOD_DIR)/crypto/$(SUBDIR64) - -ROOT_STARCAT_KERN_DIR = $(ROOT_STARCAT_KERN_DIR_$(CLASS)) -ROOT_STARCAT_MISC_DIR = $(ROOT_STARCAT_MISC_DIR_$(CLASS)) -ROOT_STARCAT_DRV_DIR = $(ROOT_STARCAT_DRV_DIR_$(CLASS)) -ROOT_STARCAT_CPU_DIR = $(ROOT_STARCAT_CPU_DIR_$(CLASS)) -ROOT_STARCAT_CRYPTO_DIR = $(ROOT_STARCAT_CRYPTO_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_STARCAT_MOD_DIR) -ROOT_PLAT_MISC_DIRS_32 += $(ROOT_STARCAT_MISC_DIR_32) - -USR_STARCAT_DIR = $(USR_PLAT_DIR)/SUNW,Sun-Fire-15000 -USR_STARCAT_LIB_DIR = $(USR_STARCAT_DIR)/lib -USR_STARCAT_SBIN_DIR = $(USR_STARCAT_DIR)/sbin -USR_STARCAT_INC_DIR = $(USR_STARCAT_DIR)/include -USR_STARCAT_ISYS_DIR = $(USR_STARCAT_INC_DIR)/sys - -STARCAT_LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR) - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSBASE)/sun4u/ngdr/Makefile.files -include $(UTSTREE)/sun4u/starcat/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules -# -STARCAT_KMODS += axq -STARCAT_KMODS += cvc -STARCAT_KMODS += cvcredir -STARCAT_KMODS += dman -STARCAT_KMODS += dr -STARCAT_KMODS += drmach -STARCAT_KMODS += fcgp2 -STARCAT_KMODS += gptwo_pci -STARCAT_KMODS += iosram -STARCAT_KMODS += mboxsc -STARCAT_KMODS += platmod -STARCAT_KMODS += sc_gptwocfg -STARCAT_KMODS += schpc -STARCAT_KMODS += sckmdrv -STARCAT_KMODS += scosmb - -# -# Define CPU modules. -# -STARCAT_CPU_KMODS += cheetah cheetahplus - -# -# Links to UltraSparc III crypto modules -# -STARCAT_CRYPTO_LINKS = aes - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o -# -UNIX_DIR = $(UTSBASE)/$(PLATFORM)/starcat/unix -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/starcat/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/starcat/lint-libs/$(OBJS_DIR) - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o - -LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln - -# -# Define the actual specific platforms -# -MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -DMP -DMIXEDCPU_DR_SUPPORTED -MACHINE_DEFS += -D_CPU_SIGNATURE - -# -# Define platform specific value -# -MACHINE_DEFS += -DNCPU=558 -MACHINE_DEFS += -DMAX_CPU_CHIPID=554 -MACHINE_DEFS += -DMAX_UPA=1024 -MACHINE_DEFS += -DIGN_SIZE=10 -MACHINE_DEFS += -DMAX_MEM_NODES=18 - -# -# Define for inline pre-processing since -# cpp not smart about v9 yet. -# It's not smart about __sparc either since it only predefines sparc. -CPP_DEFS_32 = -D__sparc -CPP_DEFS_64 = -D__sparc -D__sparcv9 -CPP_DEFS = $(CPP_DEFS_$(CLASS)) - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/starcat/Makefile.targ b/usr/src/uts/sun4u/starcat/Makefile.targ index b6bb4f7664..16e7b1456d 100644 --- a/usr/src/uts/sun4u/starcat/Makefile.targ +++ b/usr/src/uts/sun4u/starcat/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,79 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. + +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Common targets for sun4u starcat implementation specific modules. +# + +.KEEP_STATE: + +# +# Rules for implementation subdirectories. # +$(ROOT_STARCAT_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_STARCAT_MOD_DIR): $(ROOT_STARCAT_DIR) + -$(INS.dir) + +$(ROOT_STARCAT_CPU_DIR_32): $(ROOT_STARCAT_MOD_DIR) + -$(INS.dir) + +$(ROOT_STARCAT_CPU_DIR_64): $(ROOT_STARCAT_CPU_DIR_32) + -$(INS.dir) + +$(ROOT_STARCAT_DRV_DIR_32): $(ROOT_STARCAT_MOD_DIR) + -$(INS.dir) + +$(ROOT_STARCAT_DRV_DIR_64): $(ROOT_STARCAT_DRV_DIR_32) + -$(INS.dir) + +$(ROOT_STARCAT_MISC_DIR_32): $(ROOT_STARCAT_MOD_DIR) + -$(INS.dir) -UTSTREE=$(UTSBASE) +$(ROOT_STARCAT_MISC_DIR_64): $(ROOT_STARCAT_MISC_DIR_32) + -$(INS.dir) -include $(UTSBASE)/sun4u/starcat/Makefile.targ.shared +$(ROOT_STARCAT_CRYPTO_DIR_32): $(ROOT_STARCAT_MOD_DIR) + -$(INS.dir) + +$(ROOT_STARCAT_CRYPTO_DIR_64): $(ROOT_STARCAT_CRYPTO_DIR_32) + -$(INS.dir) + +$(USR_STARCAT_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_STARCAT_INC_DIR): $(USR_STARCAT_DIR) + $(INS.slink4) + +$(USR_STARCAT_SBIN_DIR): $(USR_STARCAT_DIR) + -$(INS.slink5) + +$(USR_STARCAT_LIB_DIR): $(USR_STARCAT_DIR) + -$(INS.dir) + +$(USR_STARCAT_ISYS_DIR): $(USR_STARCAT_INC_DIR) + $(INS.dir) + +$(ROOT_STARCAT_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_KERN_DIR) FRC + $(INS.file) + +$(ROOT_STARCAT_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_DRV_DIR) FRC + $(INS.file) + +$(ROOT_STARCAT_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_CPU_DIR) FRC + $(INS.file) + +$(ROOT_STARCAT_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_MISC_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/ngdr/Makefile.rules +include $(UTSBASE)/sun4u/starcat/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/starcat/Makefile.targ.shared b/usr/src/uts/sun4u/starcat/Makefile.targ.shared deleted file mode 100644 index e22885a50c..0000000000 --- a/usr/src/uts/sun4u/starcat/Makefile.targ.shared +++ /dev/null @@ -1,96 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Common targets for sun4u starcat implementation specific modules. -# - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_STARCAT_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_STARCAT_MOD_DIR): $(ROOT_STARCAT_DIR) - -$(INS.dir) - -$(ROOT_STARCAT_CPU_DIR_32): $(ROOT_STARCAT_MOD_DIR) - -$(INS.dir) - -$(ROOT_STARCAT_CPU_DIR_64): $(ROOT_STARCAT_CPU_DIR_32) - -$(INS.dir) - -$(ROOT_STARCAT_DRV_DIR_32): $(ROOT_STARCAT_MOD_DIR) - -$(INS.dir) - -$(ROOT_STARCAT_DRV_DIR_64): $(ROOT_STARCAT_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_STARCAT_MISC_DIR_32): $(ROOT_STARCAT_MOD_DIR) - -$(INS.dir) - -$(ROOT_STARCAT_MISC_DIR_64): $(ROOT_STARCAT_MISC_DIR_32) - -$(INS.dir) - -$(ROOT_STARCAT_CRYPTO_DIR_32): $(ROOT_STARCAT_MOD_DIR) - -$(INS.dir) - -$(ROOT_STARCAT_CRYPTO_DIR_64): $(ROOT_STARCAT_CRYPTO_DIR_32) - -$(INS.dir) - -$(USR_STARCAT_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_STARCAT_INC_DIR): $(USR_STARCAT_DIR) - $(INS.slink4) - -$(USR_STARCAT_SBIN_DIR): $(USR_STARCAT_DIR) - -$(INS.slink5) - -$(USR_STARCAT_LIB_DIR): $(USR_STARCAT_DIR) - -$(INS.dir) - -$(USR_STARCAT_ISYS_DIR): $(USR_STARCAT_INC_DIR) - $(INS.dir) - -$(ROOT_STARCAT_KERN_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_KERN_DIR) FRC - $(INS.file) - -$(ROOT_STARCAT_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_DRV_DIR) FRC - $(INS.file) - -$(ROOT_STARCAT_CPU_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_CPU_DIR) FRC - $(INS.file) - -$(ROOT_STARCAT_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_STARCAT_MISC_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSBASE)/sun4u/ngdr/Makefile.rules -include $(UTSTREE)/sun4u/starcat/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/sunfire/Makefile.sunfire b/usr/src/uts/sun4u/sunfire/Makefile.sunfire index 316592f634..1c7b558007 100644 --- a/usr/src/uts/sun4u/sunfire/Makefile.sunfire +++ b/usr/src/uts/sun4u/sunfire/Makefile.sunfire @@ -23,9 +23,61 @@ # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" +# Global definitions for sun4u implementation specific modules. # -UTSTREE=$(UTSBASE) +# +# Define the name of this implementation. +# + +# +# Define directories. +# +ROOT_SUNFIRE_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-Enterprise +ROOT_SUNFIRE_MOD_DIR = $(ROOT_SUNFIRE_DIR)/kernel + +ROOT_SUNFIRE_DRV_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/drv +ROOT_SUNFIRE_DRV_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/drv/$(SUBDIR64) +ROOT_SUNFIRE_DRV_DIR = $(ROOT_SUNFIRE_DRV_DIR_$(CLASS)) +ROOT_PLAT_DRV_DIRS = $(ROOT_SUNFIRE_DRV_DIR) -include $(UTSBASE)/sun4u/sunfire/Makefile.sunfire.shared +ROOT_SUNFIRE_MISC_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/misc +ROOT_SUNFIRE_MISC_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/misc/$(SUBDIR64) +ROOT_SUNFIRE_MISC_DIR = $(ROOT_SUNFIRE_MISC_DIR_$(CLASS)) + +USR_SUNFIRE_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-Enterprise +USR_SUNFIRE_INC_DIR = $(USR_SUNFIRE_DIR)/include +USR_SUNFIRE_ISYS_DIR = $(USR_SUNFIRE_INC_DIR)/sys +USR_SUNFIRE_SBIN_DIR = $(USR_SUNFIRE_DIR)/sbin +USR_SUNFIRE_LIB_DIR = $(USR_SUNFIRE_DIR)/lib + +SUNFIRE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/sunfire/lint-libs/$(OBJS_DIR) + +# +# Define objects. +# +SUNFIRE_OBJS = sunfire.o + +include $(UTSBASE)/sun4u/sunfire/Makefile.files + +# +# Include common rules. +# +include $(UTSBASE)/sun4u/Makefile.sun4u + +# +# Define modules (must come after Makefile.sun4u). +# +SUNFIRE_KMODS = ac central environ fhc simmstat sysctrl sram + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED +LINTTAGS += -erroff=E_STATIC_UNUSED +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/sunfire/Makefile.sunfire.shared b/usr/src/uts/sun4u/sunfire/Makefile.sunfire.shared deleted file mode 100644 index 657bca55c6..0000000000 --- a/usr/src/uts/sun4u/sunfire/Makefile.sunfire.shared +++ /dev/null @@ -1,83 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Global definitions for sun4u implementation specific modules. -# - -# -# Define the name of this implementation. -# - -# -# Define directories. -# -ROOT_SUNFIRE_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-Enterprise -ROOT_SUNFIRE_MOD_DIR = $(ROOT_SUNFIRE_DIR)/kernel - -ROOT_SUNFIRE_DRV_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/drv -ROOT_SUNFIRE_DRV_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/drv/$(SUBDIR64) -ROOT_SUNFIRE_DRV_DIR = $(ROOT_SUNFIRE_DRV_DIR_$(CLASS)) -ROOT_PLAT_DRV_DIRS = $(ROOT_SUNFIRE_DRV_DIR) - -ROOT_SUNFIRE_MISC_DIR_32 = $(ROOT_SUNFIRE_MOD_DIR)/misc -ROOT_SUNFIRE_MISC_DIR_64 = $(ROOT_SUNFIRE_MOD_DIR)/misc/$(SUBDIR64) -ROOT_SUNFIRE_MISC_DIR = $(ROOT_SUNFIRE_MISC_DIR_$(CLASS)) - -USR_SUNFIRE_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-Enterprise -USR_SUNFIRE_INC_DIR = $(USR_SUNFIRE_DIR)/include -USR_SUNFIRE_ISYS_DIR = $(USR_SUNFIRE_INC_DIR)/sys -USR_SUNFIRE_SBIN_DIR = $(USR_SUNFIRE_DIR)/sbin -USR_SUNFIRE_LIB_DIR = $(USR_SUNFIRE_DIR)/lib - -SUNFIRE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/sunfire/lint-libs/$(OBJS_DIR) - -# -# Define objects. -# -SUNFIRE_OBJS = sunfire.o - -include $(UTSTREE)/sun4u/sunfire/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules (must come after Makefile.sun4u). -# -SUNFIRE_KMODS = ac central environ fhc simmstat sysctrl sram - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED -LINTTAGS += -erroff=E_STATIC_UNUSED -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV diff --git a/usr/src/uts/sun4u/sunfire/Makefile.targ b/usr/src/uts/sun4u/sunfire/Makefile.targ index 8c85cb93aa..d400015197 100644 --- a/usr/src/uts/sun4u/sunfire/Makefile.targ +++ b/usr/src/uts/sun4u/sunfire/Makefile.targ @@ -20,12 +20,60 @@ # # -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" + +# +# Common targets for sun4u implementation specific modules. +# + +.KEEP_STATE: + # +# Rules for implementation subdirectories. +# +$(ROOT_SUNFIRE_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_SUNFIRE_MOD_DIR): $(ROOT_SUNFIRE_DIR) + -$(INS.dir) + +$(ROOT_SUNFIRE_MISC_DIR_32): $(ROOT_SUNFIRE_MOD_DIR) + -$(INS.dir) + +$(ROOT_SUNFIRE_MISC_DIR_64): $(ROOT_SUNFIRE_MISC_DIR_32) + -$(INS.dir) + +$(ROOT_SUNFIRE_DRV_DIR_32): $(ROOT_SUNFIRE_MOD_DIR) + -$(INS.dir) -UTSTREE=$(UTSBASE) +$(ROOT_SUNFIRE_DRV_DIR_64): $(ROOT_SUNFIRE_DRV_DIR_32) + -$(INS.dir) -include $(UTSBASE)/sun4u/sunfire/Makefile.targ.shared +$(USR_SUNFIRE_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_SUNFIRE_INC_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_INCL_DIR) + $(INS.slink4) + +$(USR_SUNFIRE_ISYS_DIR): $(USR_SUNFIRE_INC_DIR) + $(INS.dir) + +$(USR_SUNFIRE_SBIN_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_SBIN_DIR) + $(INS.slink5) + +$(USR_SUNFIRE_LIB_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_LIB_DIR) + -$(INS.dir) + +$(ROOT_SUNFIRE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_MISC_DIR) FRC + $(INS.file) + +$(ROOT_SUNFIRE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_DRV_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/sunfire/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/sunfire/Makefile.targ.shared b/usr/src/uts/sun4u/sunfire/Makefile.targ.shared deleted file mode 100644 index 51607c85c9..0000000000 --- a/usr/src/uts/sun4u/sunfire/Makefile.targ.shared +++ /dev/null @@ -1,79 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# -# Common targets for sun4u implementation specific modules. -# - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_SUNFIRE_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_SUNFIRE_MOD_DIR): $(ROOT_SUNFIRE_DIR) - -$(INS.dir) - -$(ROOT_SUNFIRE_MISC_DIR_32): $(ROOT_SUNFIRE_MOD_DIR) - -$(INS.dir) - -$(ROOT_SUNFIRE_MISC_DIR_64): $(ROOT_SUNFIRE_MISC_DIR_32) - -$(INS.dir) - -$(ROOT_SUNFIRE_DRV_DIR_32): $(ROOT_SUNFIRE_MOD_DIR) - -$(INS.dir) - -$(ROOT_SUNFIRE_DRV_DIR_64): $(ROOT_SUNFIRE_DRV_DIR_32) - -$(INS.dir) - -$(USR_SUNFIRE_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_SUNFIRE_INC_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_INCL_DIR) - $(INS.slink4) - -$(USR_SUNFIRE_ISYS_DIR): $(USR_SUNFIRE_INC_DIR) - $(INS.dir) - -$(USR_SUNFIRE_SBIN_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_SBIN_DIR) - $(INS.slink5) - -$(USR_SUNFIRE_LIB_DIR): $(USR_SUNFIRE_DIR) $(USR_PSM_LIB_DIR) - -$(INS.dir) - -$(ROOT_SUNFIRE_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_MISC_DIR) FRC - $(INS.file) - -$(ROOT_SUNFIRE_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_SUNFIRE_DRV_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/sunfire/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/tazmo/Makefile.targ b/usr/src/uts/sun4u/tazmo/Makefile.targ index 40a592af5a..a945fc6a5d 100644 --- a/usr/src/uts/sun4u/tazmo/Makefile.targ +++ b/usr/src/uts/sun4u/tazmo/Makefile.targ @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,63 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" + +# +# Common targets for sun4u Tazmo implementation specific modules. # -UTSTREE=$(UTSBASE) +IMPLEMENTED_PLATFORM = SUNW,Ultra-4 + +.KEEP_STATE: + +# +# Rules for implementation subdirectories. +# +$(ROOT_TAZMO_DIR): $(ROOT_PLAT_DIR) + -$(INS.dir) + +$(ROOT_TAZMO_MOD_DIR): $(ROOT_TAZMO_DIR) + -$(INS.dir) + +$(ROOT_TAZMO_DRV_DIR_32): $(ROOT_TAZMO_MOD_DIR) + -$(INS.dir) + +$(ROOT_TAZMO_DRV_DIR_64): $(ROOT_TAZMO_DRV_DIR_32) + -$(INS.dir) -include $(UTSBASE)/sun4u/tazmo/Makefile.targ.shared +$(ROOT_TAZMO_MISC_DIR_32): $(ROOT_TAZMO_MOD_DIR) + -$(INS.dir) + +$(ROOT_TAZMO_MISC_DIR_64): $(ROOT_TAZMO_MISC_DIR_32) + -$(INS.dir) + +$(USR_TAZMO_DIR): $(USR_PLAT_DIR) + -$(INS.dir) + +$(USR_TAZMO_INC_DIR): $(USR_TAZMO_DIR) + -$(INS.slink4) + +$(USR_TAZMO_SBIN_DIR): $(USR_TAZMO_DIR) + -$(INS.slink5) + +$(USR_TAZMO_LIB_DIR): $(USR_TAZMO_DIR) + -$(INS.dir) + +$(ROOT_TAZMO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MOD_DIR) FRC + $(INS.file) + +$(ROOT_TAZMO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MISC_DIR) FRC + $(INS.file) + +$(ROOT_TAZMO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_DRV_DIR) FRC + $(INS.file) + +# +# Include common targets. +# +include $(UTSBASE)/sun4u/tazmo/Makefile.rules +include $(UTSBASE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/tazmo/Makefile.targ.shared b/usr/src/uts/sun4u/tazmo/Makefile.targ.shared deleted file mode 100644 index 90658a52ab..0000000000 --- a/usr/src/uts/sun4u/tazmo/Makefile.targ.shared +++ /dev/null @@ -1,80 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# Copyright 2009 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# - -# -# Common targets for sun4u Tazmo implementation specific modules. -# - -IMPLEMENTED_PLATFORM = SUNW,Ultra-4 - -.KEEP_STATE: - -# -# Rules for implementation subdirectories. -# -$(ROOT_TAZMO_DIR): $(ROOT_PLAT_DIR) - -$(INS.dir) - -$(ROOT_TAZMO_MOD_DIR): $(ROOT_TAZMO_DIR) - -$(INS.dir) - -$(ROOT_TAZMO_DRV_DIR_32): $(ROOT_TAZMO_MOD_DIR) - -$(INS.dir) - -$(ROOT_TAZMO_DRV_DIR_64): $(ROOT_TAZMO_DRV_DIR_32) - -$(INS.dir) - -$(ROOT_TAZMO_MISC_DIR_32): $(ROOT_TAZMO_MOD_DIR) - -$(INS.dir) - -$(ROOT_TAZMO_MISC_DIR_64): $(ROOT_TAZMO_MISC_DIR_32) - -$(INS.dir) - -$(USR_TAZMO_DIR): $(USR_PLAT_DIR) - -$(INS.dir) - -$(USR_TAZMO_INC_DIR): $(USR_TAZMO_DIR) - -$(INS.slink4) - -$(USR_TAZMO_SBIN_DIR): $(USR_TAZMO_DIR) - -$(INS.slink5) - -$(USR_TAZMO_LIB_DIR): $(USR_TAZMO_DIR) - -$(INS.dir) - -$(ROOT_TAZMO_MOD_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MOD_DIR) FRC - $(INS.file) - -$(ROOT_TAZMO_MISC_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_MISC_DIR) FRC - $(INS.file) - -$(ROOT_TAZMO_DRV_DIR)/%: $(OBJS_DIR)/% $(ROOT_TAZMO_DRV_DIR) FRC - $(INS.file) - -# -# Include common targets. -# -include $(UTSTREE)/sun4u/tazmo/Makefile.rules -include $(UTSTREE)/sun4u/Makefile.targ diff --git a/usr/src/uts/sun4u/tazmo/Makefile.tazmo b/usr/src/uts/sun4u/tazmo/Makefile.tazmo index 0f3a8c3c3a..dd4bfa6ef5 100644 --- a/usr/src/uts/sun4u/tazmo/Makefile.tazmo +++ b/usr/src/uts/sun4u/tazmo/Makefile.tazmo @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,70 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. +# +# uts/sun4u/tazmo/Makefile.impl +# Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# Global definitions for sun4u implementation specific modules. +# + +# +# Define directories. +# +ROOT_TAZMO_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-4 +ROOT_TAZMO_MOD_DIR = $(ROOT_TAZMO_DIR)/kernel + +ROOT_TAZMO_KERN_DIR_32 = $(ROOT_TAZMO_MOD_DIR) +ROOT_TAZMO_KERN_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/$(SUBDIR64) +ROOT_TAZMO_DRV_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/drv +ROOT_TAZMO_DRV_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/drv/$(SUBDIR64) +ROOT_TAZMO_MISC_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/misc +ROOT_TAZMO_MISC_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/misc/$(SUBDIR64) + +ROOT_TAZMO_KERN_DIR = $(ROOT_TAZMO_KERN_DIR_$(CLASS)) +ROOT_TAZMO_MISC_DIR = $(ROOT_TAZMO_MISC_DIR_$(CLASS)) +ROOT_TAZMO_DRV_DIR = $(ROOT_TAZMO_DRV_DIR_$(CLASS)) + +ROOT_PLAT_MOD_DIRS += $(ROOT_TAZMO_MOD_DIR) +ROOT_PLAT_MISC_DIRS += $(ROOT_TAZMO_MISC_DIR) +ROOT_PLAT_MISC_DIRS_32 += $(ROOT_TAZMO_MISC_DIR_32) +ROOT_PLAT_DRV_DIRS = $(ROOT_TAZMO_DRV_DIR) + +USR_TAZMO_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-4 +USR_TAZMO_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM) +USR_TAZMO_INC_DIR = $(USR_TAZMO_DIR)/include +USR_TAZMO_ISYS_DIR = $(USR_TAZMO_INC_DIR)/sys +USR_TAZMO_SBIN_DIR = $(USR_TAZMO_DIR)/sbin +USR_TAZMO_LIB_DIR = $(USR_TAZMO_DIR)/lib + +TAZMO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/tazmo/lint-libs/$(OBJS_DIR) + +# +# Define objects. +# +TAZMO_OBJS = tazmo.o + +include $(UTSBASE)/sun4u/tazmo/Makefile.files + +# +# Include common rules. # +include $(UTSBASE)/sun4u/Makefile.sun4u -UTSTREE=$(UTSBASE) +# +# Define modules (must come after Makefile.sun4u). +# +TAZMO_KMODS = platmod +TAZMO_KMODS += envctrl + +# +# For now, disable these lint checks; maintainers should endeavor +# to investigate and remove these for maximum lint coverage. +# Please do not carry these forward to new Makefiles. +# +LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW +LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN +LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV +LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON -include $(UTSBASE)/sun4u/tazmo/Makefile.tazmo.shared diff --git a/usr/src/uts/sun4u/tazmo/Makefile.tazmo.shared b/usr/src/uts/sun4u/tazmo/Makefile.tazmo.shared deleted file mode 100644 index 7c0639ff27..0000000000 --- a/usr/src/uts/sun4u/tazmo/Makefile.tazmo.shared +++ /dev/null @@ -1,87 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# uts/sun4u/tazmo/Makefile.impl -# Copyright 2006 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -# Global definitions for sun4u implementation specific modules. -# - -# -# Define directories. -# -ROOT_TAZMO_DIR = $(ROOT_PLAT_DIR)/SUNW,Ultra-4 -ROOT_TAZMO_MOD_DIR = $(ROOT_TAZMO_DIR)/kernel - -ROOT_TAZMO_KERN_DIR_32 = $(ROOT_TAZMO_MOD_DIR) -ROOT_TAZMO_KERN_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/$(SUBDIR64) -ROOT_TAZMO_DRV_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/drv -ROOT_TAZMO_DRV_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/drv/$(SUBDIR64) -ROOT_TAZMO_MISC_DIR_32 = $(ROOT_TAZMO_MOD_DIR)/misc -ROOT_TAZMO_MISC_DIR_64 = $(ROOT_TAZMO_MOD_DIR)/misc/$(SUBDIR64) - -ROOT_TAZMO_KERN_DIR = $(ROOT_TAZMO_KERN_DIR_$(CLASS)) -ROOT_TAZMO_MISC_DIR = $(ROOT_TAZMO_MISC_DIR_$(CLASS)) -ROOT_TAZMO_DRV_DIR = $(ROOT_TAZMO_DRV_DIR_$(CLASS)) - -ROOT_PLAT_MOD_DIRS += $(ROOT_TAZMO_MOD_DIR) -ROOT_PLAT_MISC_DIRS += $(ROOT_TAZMO_MISC_DIR) -ROOT_PLAT_MISC_DIRS_32 += $(ROOT_TAZMO_MISC_DIR_32) -ROOT_PLAT_DRV_DIRS = $(ROOT_TAZMO_DRV_DIR) - -USR_TAZMO_DIR = $(USR_PLAT_DIR)/SUNW,Ultra-4 -USR_TAZMO_LINKED_DIR = $(USR_PLAT_DIR)/$(LINKED_PLATFORM) -USR_TAZMO_INC_DIR = $(USR_TAZMO_DIR)/include -USR_TAZMO_ISYS_DIR = $(USR_TAZMO_INC_DIR)/sys -USR_TAZMO_SBIN_DIR = $(USR_TAZMO_DIR)/sbin -USR_TAZMO_LIB_DIR = $(USR_TAZMO_DIR)/lib - -TAZMO_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/tazmo/lint-libs/$(OBJS_DIR) - -# -# Define objects. -# -TAZMO_OBJS = tazmo.o - -include $(UTSBASE)/sun4u/tazmo/Makefile.files - -# -# Include common rules. -# -include $(UTSTREE)/sun4u/Makefile.sun4u - -# -# Define modules (must come after Makefile.sun4u). -# -TAZMO_KMODS = platmod -TAZMO_KMODS += envctrl - -# -# For now, disable these lint checks; maintainers should endeavor -# to investigate and remove these for maximum lint coverage. -# Please do not carry these forward to new Makefiles. -# -LINTTAGS += -erroff=E_PTRDIFF_OVERFLOW -LINTTAGS += -erroff=E_BAD_PTR_CAST_ALIGN -LINTTAGS += -erroff=E_ASSIGN_NARROW_CONV -LINTTAGS += -erroff=E_SUSPICIOUS_COMPARISON - diff --git a/usr/src/uts/sun4v/Makefile.sun4v b/usr/src/uts/sun4v/Makefile.sun4v index a4e93da34d..31ad742860 100644 --- a/usr/src/uts/sun4v/Makefile.sun4v +++ b/usr/src/uts/sun4v/Makefile.sun4v @@ -1,9 +1,9 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. +# Common Development and Distribution License (the "License"). +# You may not use this file except in compliance with the License. # # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE # or http://www.opensolaris.org/os/licensing. @@ -18,12 +18,422 @@ # # CDDL HEADER END # -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. + +# +# Copyright 2010 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. +# Copyright (c) 2013 Andrew Stormont. All rights reserved. +# +# This makefile contains the common definitions for the sun4v unix +# and all sun4v implementation architecture dependent modules. +# + +# +# Machine type (implementation architecture): +# +PLATFORM = sun4v +LINKED_PLATFORMS += SUNW,Sun-Fire-T1000 +LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5120 +LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5220 +LINKED_PLATFORMS += SUNW,T5140 +LINKED_PLATFORMS += SUNW,T5240 +LINKED_PLATFORMS += SUNW,T5440 +LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T1000 +LINKED_PLATFORMS += SUNW,Sun-Blade-T6300 +LINKED_PLATFORMS += SUNW,Sun-Blade-T6320 +LINKED_PLATFORMS += SUNW,Netra-CP3260 +LINKED_PLATFORMS += SUNW,Netra-T5220 +LINKED_PLATFORMS += SUNW,USBRDT-5240 +LINKED_PLATFORMS += SUNW,Netra-T5440 +LINKED_PLATFORMS += SUNW,Sun-Blade-T6340 +PROMIF = ieee1275 +PSMBASE = $(UTSBASE)/../psm + +# +# uname -m value +# +UNAME_M = $(PLATFORM) + +# +# Definitions for the platform-specific /platform directories. +# +# PLATFORMS designates those sun4v machines which have no platform +# specific code. +# +# IMPLEMENTATIONS is used to designate sun4v machines which have +# platform specific modules. All code specific to a given implementation +# resides in the appropriately named subdirectory. This requires +# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS, +# USR_PLAT_DIRS, etc. +# The number of IMPLEMENTATIONS should not grow! +# +# So if we had an implementation named 'foo', we would need the following +# Makefiles in the foo subdirectory: +# +# sun4v/foo/Makefile +# sun4v/foo/Makefile.foo +# sun4v/foo/Makefile.targ +# + +# +# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list. +# This list should be empty. A platform without platform modules +# is a plain, generic sun4v platform. +# +#IMPLEMENTED_PLATFORM = +#PLATFORMS = $(IMPLEMENTED_PLATFORM) + +IMPLEMENTATIONS = ontario montoya huron maramba + +#ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%) +#USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%) + +#USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM) +#USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include +#USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin +#USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib + +# +# Define supported builds +# +DEF_BUILDS = $(DEF_BUILDS64) +ALL_BUILDS = $(ALL_BUILDS64) + +# +# Everybody needs to know how to build modstubs.o and to locate unix.o +# +UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix +GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix +MODSTUBS_DIR = $(UNIX_DIR) +DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym +LINTS_DIR = $(OBJS_DIR) +LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) + +DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o +DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so + +UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o +MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o +GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so + +LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln +GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln + +LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) +LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln) + +# +# cpu and platform modules need to know how to build their own symcheck module +# +PLATMOD = platmod +PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so + +CPUNAME = cpu +CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so + +SYM_MOD = $(OBJS_DIR)/unix.sym + +# +# Include the makefiles which define build rule templates, the +# collection of files per module, and a few specific flags. Note +# that order is significant, just as with an include path. The +# first build rule template which matches the files name will be +# used. By including these in order from most machine dependent +# to most machine independent, we allow a machine dependent file +# to be used in preference over a machine independent version +# (Such as a machine specific optimization, which preserves the +# interfaces.) +# +include $(UTSBASE)/sun4/Makefile.files +include $(UTSBASE)/$(PLATFORM)/Makefile.files +include $(UTSBASE)/sfmmu/Makefile.files +include $(UTSBASE)/sparc/v9/Makefile.files +include $(UTSBASE)/sparc/Makefile.files +include $(UTSBASE)/sun/Makefile.files +include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files +include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files +include $(UTSBASE)/common/Makefile.files + +# +# Include machine independent rules. Note that this does not imply +# that the resulting module from rules in Makefile.uts is machine +# independent. Only that the build rules are machine independent. +# +include $(UTSBASE)/Makefile.uts + +CTFMERGE_GUDIR = sun4v + +# +# machine specific optimization, override default in Makefile.master +# +CC_XARCH = -m64 -xarch=sparcvis +AS_XARCH = -xarch=v9v +COPTIMIZE = -xO3 +CCMODE = -Xa + +CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM) +CFLAGS += $(CC_XARCH) +CFLAGS += $(COPTIMIZE) +CFLAGS += $(EXTRA_CFLAGS) +CFLAGS += $(XAOPT) +CFLAGS += $(INLINES) -D_ASM_INLINES +CFLAGS += $(CCMODE) +CFLAGS += $(SPACEFLAG) +CFLAGS += $(CERRWARN) +CFLAGS += $(CTF_FLAGS_$(CLASS)) +CFLAGS += $(C99MODE) +CFLAGS += $(CCUNBOUND) +CFLAGS += $(CCNOAUTOINLINE) +CFLAGS += $(CCSTATICSYM) +CFLAGS += $(CC32BITCALLERS) +CFLAGS += $(IROPTFLAG) +CFLAGS += $(CGLOBALSTATIC) +CFLAGS += -xregs=no%float +CFLAGS += -xstrconst +CFLAGS += $(CSOURCEDEBUGFLAGS) +CFLAGS += $(CUSERFLAGS) + +CPPFLAGS += -DGLREG + +ASFLAGS += $(AS_XARCH) -DGLREG + +AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) + +LINT_KMODS += $(GENUNIX_KMODS) + +LINT_DEFS = -m64 + +# +# The following must be defined for all implementations: +# +# MAPFILE: ld mapfile for the build of kernel/unix. +# MODSTUBS: Module stubs source file. +# GENCONST_SRC: genconst.c +# OFFSETS: offsets.in +# PLATFORM_OFFSETS: Platform specific mach_offsets.in +# FDOFFSETS: fd_offsets.in +# +MAPFILE = $(UTSBASE)/sun4/conf/Mapfile +MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s +GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c +OFFSETS = $(UTSBASE)/sun4/ml/offsets.in +PLATFORM_OFFSETS = $(UTSBASE)/sun4v/ml/mach_offsets.in +FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in + +# +# Define the actual specific platforms +# + +MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU +MACHINE_DEFS += -DMAX_MEM_NODES=8 + +# +# Software workarounds for hardware "features" +# + +include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds + # -# ident "%Z%%M% %I% %E% SMI" +# Debugging level # +# Special knowledge of which special debugging options effect which +# file is used to optimize the build if these flags are changed. +# +# XXX: The above could possibly be done for more flags and files, but +# is left as an experiment to the interested reader. Be forewarned, +# that excessive use could lead to maintenance difficulties. +# +# Note: kslice can be enabled for the sun4v, but is disabled by default +# in all cases. +# + +DEBUG_DEFS_OBJ64 = +DEBUG_DEFS_DBG64 = -DDEBUG +DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) + +DEBUG_COND_OBJ64 = $(POUND_SIGN) +DEBUG_COND_DBG64 = +IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ + +$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG +$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG +$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE +$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0 + +IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ) +# comment this out for a non-debug kernel with TRAPTRACE +#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/ + +$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE +$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE + +# Comment these out if you don't want dispatcher lock statistics. + +#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS +#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS + +# Comment these out if you don't want dispatcher debugging + +#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG + +# +# Collect the preprocessor definitions to be associated with *all* +# files. +# +ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ + $(OPTION_DEFS) +GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) + +# +# ----- TRANSITIONAL SECTION -------------------------------------------------- +# + +# +# Not everything which *should* be a module is a module yet. The +# following is a list of such objects which are currently part of +# the base kernel but should soon become kmods. +# +MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) + +# +# ----- END OF TRANSITIONAL SECTION ------------------------------------------- +# + +# +# The kernels modules which are "implementation architecture" +# specific for this machine are enumerated below. Note that most +# of these modules must exist (in one form or another) for each +# architecture. +# +# Common Drivers (usually pseudo drivers) (/kernel/drv): +# + +# +# Machine Specific Driver Modules (/kernel/drv): +# +DRV_KMODS += bge +DRV_KMODS += cnex +DRV_KMODS += cpc +DRV_KMODS += drctl +DRV_KMODS += ds_pri +DRV_KMODS += ds_snmp +DRV_KMODS += ebus +DRV_KMODS += fpc +DRV_KMODS += glvc +DRV_KMODS += mdesc +DRV_KMODS += niumx +DRV_KMODS += ntwdt +DRV_KMODS += nxge +DRV_KMODS += n2piupc +DRV_KMODS += iospc +DRV_KMODS += n2rng +DRV_KMODS += px +DRV_KMODS += qcn +DRV_KMODS += rootnex +DRV_KMODS += su +DRV_KMODS += tpm +DRV_KMODS += trapstat +DRV_KMODS += vcc +DRV_KMODS += vdc +DRV_KMODS += vds +DRV_KMODS += vldc +DRV_KMODS += vlds +DRV_KMODS += vnet +DRV_KMODS += vnex +DRV_KMODS += vsw + +# +# Exec Class Modules (/kernel/exec): +# +EXEC_KMODS += -UTSTREE=$(UTSBASE) +# +# Scheduling Class Modules (/kernel/sched): +# +SCHED_KMODS += + +# +# File System Modules (/kernel/fs): +# +FS_KMODS += + +# +# Streams Modules (/kernel/strmod): +# +# STRMOD_KMODS += kb + +# +# 'System' Modules (/kernel/sys): +# +SYS_KMODS += + +# +# 'User' Modules (/kernel/misc): +# +MISC_KMODS += bootdev +MISC_KMODS += dr_cpu +MISC_KMODS += dr_io +MISC_KMODS += dr_mem +MISC_KMODS += ds +MISC_KMODS += fault_iso +MISC_KMODS += ldc +MISC_KMODS += obpsym +MISC_KMODS += platmod +MISC_KMODS += platsvc +MISC_KMODS += vis +MISC_KMODS += pcie + +# md5 optimized for Niagara +# +MISC_KMODS += md5 + +# +# Brand modules +# +BRAND_KMODS += sn1_brand s10_brand + +# +# Software Cryptographic Providers (/kernel/crypto): +# +CRYPTO_KMODS += arcfour -include $(UTSBASE)/sun4v/Makefile.sun4v.shared +# +# generic-unix module (/kernel/genunix): +# +GENUNIX_KMODS += genunix + +# +# Modules eXcluded from the product: +# +XMODS += + +# +# cpu modules +# +CPU_KMODS += generic niagara niagara2 vfalls kt + +LINT_CPU_KMODS += generic + +# +# Performance Counter BackEnd Modules (/usr/kernel/pcbe): +# +PCBE_KMODS += niagara_pcbe +PCBE_KMODS += niagara2_pcbe +PCBE_KMODS += vfalls_pcbe +PCBE_KMODS += kt_pcbe diff --git a/usr/src/uts/sun4v/Makefile.sun4v.shared b/usr/src/uts/sun4v/Makefile.sun4v.shared deleted file mode 100644 index f30ab80338..0000000000 --- a/usr/src/uts/sun4v/Makefile.sun4v.shared +++ /dev/null @@ -1,439 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License (the "License"). -# You may not use this file except in compliance with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# - -# -# Copyright 2010 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# Copyright (c) 2013 Andrew Stormont. All rights reserved. -# -# This makefile contains the common definitions for the sun4v unix -# and all sun4v implementation architecture dependent modules. -# - -# -# Machine type (implementation architecture): -# -PLATFORM = sun4v -LINKED_PLATFORMS += SUNW,Sun-Fire-T1000 -LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5120 -LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T5220 -LINKED_PLATFORMS += SUNW,T5140 -LINKED_PLATFORMS += SUNW,T5240 -LINKED_PLATFORMS += SUNW,T5440 -LINKED_PLATFORMS += SUNW,SPARC-Enterprise-T1000 -LINKED_PLATFORMS += SUNW,Sun-Blade-T6300 -LINKED_PLATFORMS += SUNW,Sun-Blade-T6320 -LINKED_PLATFORMS += SUNW,Netra-CP3260 -LINKED_PLATFORMS += SUNW,Netra-T5220 -LINKED_PLATFORMS += SUNW,USBRDT-5240 -LINKED_PLATFORMS += SUNW,Netra-T5440 -LINKED_PLATFORMS += SUNW,Sun-Blade-T6340 -PROMIF = ieee1275 -PSMBASE = $(UTSBASE)/../psm - -# -# uname -m value -# -UNAME_M = $(PLATFORM) - -# -# Definitions for the platform-specific /platform directories. -# -# PLATFORMS designates those sun4v machines which have no platform -# specific code. -# -# IMPLEMENTATIONS is used to designate sun4v machines which have -# platform specific modules. All code specific to a given implementation -# resides in the appropriately named subdirectory. This requires -# these platforms to have their own Makefiles to define ROOT_PLAT_DIRS, -# USR_PLAT_DIRS, etc. -# The number of IMPLEMENTATIONS should not grow! -# -# So if we had an implementation named 'foo', we would need the following -# Makefiles in the foo subdirectory: -# -# sun4v/foo/Makefile -# sun4v/foo/Makefile.foo -# sun4v/foo/Makefile.targ -# - -# -# all PLATFORMS that do not belong in the $(IMPLEMENTATIONS) list. -# This list should be empty. A platform without platform modules -# is a plain, generic sun4v platform. -# -#IMPLEMENTED_PLATFORM = -#PLATFORMS = $(IMPLEMENTED_PLATFORM) - -IMPLEMENTATIONS = ontario montoya huron maramba - -#ROOT_PLAT_DIRS = $(PLATFORMS:%=$(ROOT_PLAT_DIR)/%) -#USR_PLAT_DIRS = $(PLATFORMS:%=$(USR_PLAT_DIR)/%) - -#USR_DESKTOP_DIR = $(USR_PLAT_DIR)/$(IMPLEMENTED_PLATFORM) -#USR_DESKTOP_INC_DIR = $(USR_DESKTOP_DIR)/include -#USR_DESKTOP_SBIN_DIR = $(USR_DESKTOP_DIR)/sbin -#USR_DESKTOP_LIB_DIR = $(USR_DESKTOP_DIR)/lib - -# -# Define supported builds -# -DEF_BUILDS = $(DEF_BUILDS64) -ALL_BUILDS = $(ALL_BUILDS64) - -# -# Everybody needs to know how to build modstubs.o and to locate unix.o -# -UNIX_DIR = $(UTSBASE)/$(PLATFORM)/unix -GENLIB_DIR = $(UTSBASE)/$(PLATFORM)/genunix -MODSTUBS_DIR = $(UNIX_DIR) -DSF_DIR = $(UTSBASE)/$(PLATFORM)/genassym -LINTS_DIR = $(OBJS_DIR) -LINT_LIB_DIR = $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR) - -DTRACESTUBS_O = $(OBJS_DIR)/dtracestubs.o -DTRACESTUBS = $(OBJS_DIR)/libdtracestubs.so - -UNIX_O = $(UNIX_DIR)/$(OBJS_DIR)/unix.o -MODSTUBS_O = $(MODSTUBS_DIR)/$(OBJS_DIR)/modstubs.o -GENLIB = $(GENLIB_DIR)/$(OBJS_DIR)/libgenunix.so - -LINT_LIB = $(LINT_LIB_DIR)/llib-lunix.ln -GEN_LINT_LIB = $(LINT_LIB_DIR)/llib-lgenunix.ln - -LINT64_DIRS = $(LINT64_BUILDS:%=$(UTSBASE)/$(PLATFORM)/lint-libs/%) -LINT64_FILES = $(LINT64_DIRS:%=%/llib-l$(MODULE).ln) - -# -# cpu and platform modules need to know how to build their own symcheck module -# -PLATMOD = platmod -PLATLIB = $(PLAT_DIR)/$(OBJS_DIR)/libplatmod.so - -CPUNAME = cpu -CPULIB = $(CPU_DIR)/$(OBJS_DIR)/libcpu.so - -SYM_MOD = $(OBJS_DIR)/unix.sym - -# -# Include the makefiles which define build rule templates, the -# collection of files per module, and a few specific flags. Note -# that order is significant, just as with an include path. The -# first build rule template which matches the files name will be -# used. By including these in order from most machine dependent -# to most machine independent, we allow a machine dependent file -# to be used in preference over a machine independent version -# (Such as a machine specific optimization, which preserves the -# interfaces.) -# -include $(UTSBASE)/sun4/Makefile.files -include $(UTSTREE)/$(PLATFORM)/Makefile.files -include $(UTSBASE)/sfmmu/Makefile.files -include $(UTSBASE)/sparc/v9/Makefile.files -include $(UTSBASE)/sparc/Makefile.files -include $(UTSTREE)/sun/Makefile.files -include $(SRC)/psm/promif/$(PROMIF)/common/Makefile.files -include $(SRC)/psm/promif/$(PROMIF)/$(PLATFORM)/Makefile.files -include $(UTSTREE)/common/Makefile.files - -# -# Include machine independent rules. Note that this does not imply -# that the resulting module from rules in Makefile.uts is machine -# independent. Only that the build rules are machine independent. -# -include $(UTSBASE)/Makefile.uts - -CTFMERGE_GUDIR = sun4v - -# -# machine specific optimization, override default in Makefile.master -# -CC_XARCH = -m64 -xarch=sparcvis -AS_XARCH = -xarch=v9v -COPTIMIZE = -xO3 -CCMODE = -Xa - -CFLAGS = -xchip=ultra $(CCABS32) $(CCREGSYM) -CFLAGS += $(CC_XARCH) -CFLAGS += $(COPTIMIZE) -CFLAGS += $(EXTRA_CFLAGS) -CFLAGS += $(XAOPT) -CFLAGS += $(INLINES) -D_ASM_INLINES -CFLAGS += $(CCMODE) -CFLAGS += $(SPACEFLAG) -CFLAGS += $(CERRWARN) -CFLAGS += $(CTF_FLAGS_$(CLASS)) -CFLAGS += $(C99MODE) -CFLAGS += $(CCUNBOUND) -CFLAGS += $(CCNOAUTOINLINE) -CFLAGS += $(CCSTATICSYM) -CFLAGS += $(CC32BITCALLERS) -CFLAGS += $(IROPTFLAG) -CFLAGS += $(CGLOBALSTATIC) -CFLAGS += -xregs=no%float -CFLAGS += -xstrconst -CFLAGS += $(CSOURCEDEBUGFLAGS) -CFLAGS += $(CUSERFLAGS) - -CPPFLAGS += -DGLREG - -ASFLAGS += $(AS_XARCH) -DGLREG - -AS_INC_PATH += -I$(DSF_DIR)/$(OBJS_DIR) - -LINT_KMODS += $(GENUNIX_KMODS) - -LINT_DEFS = -m64 - -# -# The following must be defined for all implementations: -# -# MAPFILE: ld mapfile for the build of kernel/unix. -# MODSTUBS: Module stubs source file. -# GENCONST_SRC: genconst.c -# OFFSETS: offsets.in -# PLATFORM_OFFSETS: Platform specific mach_offsets.in -# FDOFFSETS: fd_offsets.in -# -MAPFILE = $(UTSBASE)/sun4/conf/Mapfile -MODSTUBS = $(UTSBASE)/sparc/ml/modstubs.s -GENCONST_SRC = $(UTSBASE)/sun4/ml/genconst.c -OFFSETS = $(UTSBASE)/sun4/ml/offsets.in -PLATFORM_OFFSETS = $(UTSBASE)/sun4v/ml/mach_offsets.in -FDOFFSETS = $(UTSBASE)/sun/io/fd_offsets.in - -# -# Define the actual specific platforms -# - -MACHINE_DEFS = -D$(PLATFORM) -D_MACHDEP -DSFMMU -MACHINE_DEFS += -DMAX_MEM_NODES=8 - -# -# Software workarounds for hardware "features" -# - -include $(UTSBASE)/$(PLATFORM)/Makefile.workarounds - -# -# Debugging level -# -# Special knowledge of which special debugging options effect which -# file is used to optimize the build if these flags are changed. -# -# XXX: The above could possibly be done for more flags and files, but -# is left as an experiment to the interested reader. Be forewarned, -# that excessive use could lead to maintenance difficulties. -# -# Note: kslice can be enabled for the sun4v, but is disabled by default -# in all cases. -# - -DEBUG_DEFS_OBJ64 = -DEBUG_DEFS_DBG64 = -DDEBUG -DEBUG_DEFS = $(DEBUG_DEFS_$(BUILD_TYPE)) - -DEBUG_COND_OBJ64 = $(POUND_SIGN) -DEBUG_COND_DBG64 = -IF_DEBUG_OBJ = $(DEBUG_COND_$(BUILD_TYPE))$(OBJS_DIR)/ - -$(IF_DEBUG_OBJ)trap.o := DEBUG_DEFS += -DTRAPDEBUG -$(IF_DEBUG_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPDEBUG -$(IF_DEBUG_OBJ)syscall_trap.o := DEBUG_DEFS += -DSYSCALLTRACE -$(IF_DEBUG_OBJ)clock.o := DEBUG_DEFS += -DKSLICE=0 - -IF_TRAPTRACE_OBJ = $(IF_DEBUG_OBJ) -# comment this out for a non-debug kernel with TRAPTRACE -#IF_TRAPTRACE_OBJ = $(OBJS_DIR)/ - -$(IF_TRAPTRACE_OBJ)mach_locore.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mlsetup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)syscall_trap.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mp_startup.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)cpu_states.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_cpu_states.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)interrupt.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_interrupt.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)sfmmu_asm.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)trap_table.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)xc.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_xc.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)wbuf.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)trap.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)mach_trap.o := DEBUG_DEFS += -DTRAPTRACE -$(IF_TRAPTRACE_OBJ)x_call.o := DEBUG_DEFS += -DTRAPTRACE - -# Comment these out if you don't want dispatcher lock statistics. - -#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_LOCK_STATS -#$(IF_DEBUG_OBJ)disp.o := DEBUG_DEFS += -DDISP_LOCK_STATS - -# Comment these out if you don't want dispatcher debugging - -#$(IF_DEBUG_OBJ)lock_prim.o := DEBUG_DEFS += -DDISP_DEBUG - -# -# Collect the preprocessor definitions to be associated with *all* -# files. -# -ALL_DEFS = $(MACHINE_DEFS) $(WORKAROUND_DEFS) $(DEBUG_DEFS) \ - $(OPTION_DEFS) -GENCONST_DEFS = $(MACHINE_DEFS) $(OPTION_DEFS) - -# -# ----- TRANSITIONAL SECTION -------------------------------------------------- -# - -# -# Not everything which *should* be a module is a module yet. The -# following is a list of such objects which are currently part of -# the base kernel but should soon become kmods. -# -MACH_NOT_YET_KMODS = $(AUTOCONF_OBJS) - -# -# ----- END OF TRANSITIONAL SECTION ------------------------------------------- -# - -# -# The kernels modules which are "implementation architecture" -# specific for this machine are enumerated below. Note that most -# of these modules must exist (in one form or another) for each -# architecture. -# -# Common Drivers (usually pseudo drivers) (/kernel/drv): -# - -# -# Machine Specific Driver Modules (/kernel/drv): -# -DRV_KMODS += bge -DRV_KMODS += cnex -DRV_KMODS += cpc -DRV_KMODS += drctl -DRV_KMODS += ds_pri -DRV_KMODS += ds_snmp -DRV_KMODS += ebus -DRV_KMODS += fpc -DRV_KMODS += glvc -DRV_KMODS += mdesc -DRV_KMODS += niumx -DRV_KMODS += ntwdt -DRV_KMODS += nxge -DRV_KMODS += n2piupc -DRV_KMODS += iospc -DRV_KMODS += n2rng -DRV_KMODS += px -DRV_KMODS += qcn -DRV_KMODS += rootnex -DRV_KMODS += su -DRV_KMODS += tpm -DRV_KMODS += trapstat -DRV_KMODS += vcc -DRV_KMODS += vdc -DRV_KMODS += vds -DRV_KMODS += vldc -DRV_KMODS += vlds -DRV_KMODS += vnet -DRV_KMODS += vnex -DRV_KMODS += vsw - -# -# Exec Class Modules (/kernel/exec): -# -EXEC_KMODS += - -# -# Scheduling Class Modules (/kernel/sched): -# -SCHED_KMODS += - -# -# File System Modules (/kernel/fs): -# -FS_KMODS += - -# -# Streams Modules (/kernel/strmod): -# -# STRMOD_KMODS += kb - -# -# 'System' Modules (/kernel/sys): -# -SYS_KMODS += - -# -# 'User' Modules (/kernel/misc): -# -MISC_KMODS += bootdev -MISC_KMODS += dr_cpu -MISC_KMODS += dr_io -MISC_KMODS += dr_mem -MISC_KMODS += ds -MISC_KMODS += fault_iso -MISC_KMODS += ldc -MISC_KMODS += obpsym -MISC_KMODS += platmod -MISC_KMODS += platsvc -MISC_KMODS += vis -MISC_KMODS += pcie - -# md5 optimized for Niagara -# -MISC_KMODS += md5 - -# -# Brand modules -# -BRAND_KMODS += sn1_brand s10_brand - -# -# Software Cryptographic Providers (/kernel/crypto): -# -CRYPTO_KMODS += arcfour - -# -# generic-unix module (/kernel/genunix): -# -GENUNIX_KMODS += genunix - -# -# Modules eXcluded from the product: -# -XMODS += - -# -# cpu modules -# -CPU_KMODS += generic niagara niagara2 vfalls kt - -LINT_CPU_KMODS += generic - -# -# Performance Counter BackEnd Modules (/usr/kernel/pcbe): -# -PCBE_KMODS += niagara_pcbe -PCBE_KMODS += niagara2_pcbe -PCBE_KMODS += vfalls_pcbe -PCBE_KMODS += kt_pcbe diff --git a/usr/src/uts/sun4v/Makefile.targ b/usr/src/uts/sun4v/Makefile.targ index 939028c403..bb4f06ee15 100644 --- a/usr/src/uts/sun4v/Makefile.targ +++ b/usr/src/uts/sun4v/Makefile.targ @@ -1,3 +1,4 @@ +# # CDDL HEADER START # # The contents of this file are subject to the terms of the @@ -18,12 +19,30 @@ # # CDDL HEADER END # +# +# uts/sun4v/Makefile.targ # Copyright 2005 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -# ident "%Z%%M% %I% %E% SMI" +# This Makefile defines the set of all required, target containing +# included Makefiles for the sun4v "implementation architecture". # -UTSTREE=$(UTSBASE) +# +# Targets for all implementations: +# +include $(UTSBASE)/Makefile.targ -include $(UTSBASE)/sun4v/Makefile.targ.shared +# +# Target set for sun4v (order is somewhat important, sun4 should come +# after sun4v) +# +include $(UTSBASE)/sun4/Makefile.rules +include $(UTSBASE)/sun4v/Makefile.rules +include $(UTSBASE)/sfmmu/Makefile.rules +include $(UTSBASE)/sparc/v9/Makefile.rules +include $(UTSBASE)/sparc/Makefile.rules +include $(UTSBASE)/sun/Makefile.rules +include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules +include $(PSMBASE)/promif/$(PROMIF)/sun4v/Makefile.rules +include $(UTSBASE)/common/Makefile.rules diff --git a/usr/src/uts/sun4v/Makefile.targ.shared b/usr/src/uts/sun4v/Makefile.targ.shared deleted file mode 100644 index d23af6942f..0000000000 --- a/usr/src/uts/sun4v/Makefile.targ.shared +++ /dev/null @@ -1,50 +0,0 @@ -# -# CDDL HEADER START -# -# The contents of this file are subject to the terms of the -# Common Development and Distribution License, Version 1.0 only -# (the "License"). You may not use this file except in compliance -# with the License. -# -# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE -# or http://www.opensolaris.org/os/licensing. -# See the License for the specific language governing permissions -# and limitations under the License. -# -# When distributing Covered Code, include this CDDL HEADER in each -# file and include the License file at usr/src/OPENSOLARIS.LICENSE. -# If applicable, add the following below this CDDL HEADER, with the -# fields enclosed by brackets "[]" replaced with your own identifying -# information: Portions Copyright [yyyy] [name of copyright owner] -# -# CDDL HEADER END -# -# -# uts/sun4v/Makefile.targ -# Copyright 2005 Sun Microsystems, Inc. All rights reserved. -# Use is subject to license terms. -# -#ident "%Z%%M% %I% %E% SMI" -# -# This Makefile defines the set of all required, target containing -# included Makefiles for the sun4v "implementation architecture". -# - -# -# Targets for all implementations: -# -include $(UTSBASE)/Makefile.targ - -# -# Target set for sun4v (order is somewhat important, sun4 should come -# after sun4v) -# -include $(UTSBASE)/sun4/Makefile.rules -include $(UTSTREE)/sun4v/Makefile.rules -include $(UTSBASE)/sfmmu/Makefile.rules -include $(UTSBASE)/sparc/v9/Makefile.rules -include $(UTSBASE)/sparc/Makefile.rules -include $(UTSTREE)/sun/Makefile.rules -include $(PSMBASE)/promif/$(PROMIF)/common/Makefile.rules -include $(PSMBASE)/promif/$(PROMIF)/sun4v/Makefile.rules -include $(UTSTREE)/common/Makefile.rules |