1 #
   2 # CDDL HEADER START
   3 #
   4 # The contents of this file are subject to the terms of the
   5 # Common Development and Distribution License (the "License").
   6 # You may not use this file except in compliance with the License.
   7 #
   8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9 # or http://www.opensolaris.org/os/licensing.
  10 # See the License for the specific language governing permissions
  11 # and limitations under the License.
  12 #
  13 # When distributing Covered Code, include this CDDL HEADER in each
  14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15 # If applicable, add the following below this CDDL HEADER, with the
  16 # fields enclosed by brackets "[]" replaced with your own identifying
  17 # information: Portions Copyright [yyyy] [name of copyright owner]
  18 #
  19 # CDDL HEADER END
  20 #
  21 #
  22 #ident  "%Z%%M% %I%     %E% SMI"
  23 #
  24 # Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
  25 # Use is subject to license terms.
  26 #
  27 #       Global definitions for sun4u jbos-blade implementation specific modules.
  28 #
  29 
  30 #
  31 #       Define directories.
  32 #
  33 ROOT_BLADE_DIR          = $(ROOT_PLAT_DIR)/SUNW,Serverblade1
  34 ROOT_BLADE_MOD_DIR      = $(ROOT_BLADE_DIR)/kernel
  35 ROOT_BLADE_MISC_DIR_32  = $(ROOT_BLADE_DIR)/kernel/misc
  36 ROOT_BLADE_MISC_DIR_64  = $(ROOT_BLADE_MISC_DIR_32)/$(SUBDIR64)
  37 ROOT_BLADE_KERN_DIR_32 = $(ROOT_BLADE_MOD_DIR)
  38 ROOT_BLADE_KERN_DIR_64 = $(ROOT_BLADE_MOD_DIR)/$(SUBDIR64)
  39 ROOT_BLADE_DRV_DIR_32   = $(ROOT_BLADE_MOD_DIR)/drv
  40 ROOT_BLADE_DRV_DIR_64   = $(ROOT_BLADE_MOD_DIR)/drv/$(SUBDIR64)
  41 
  42 ROOT_BLADE_KERN_DIR     = $(ROOT_BLADE_KERN_DIR_$(CLASS))
  43 ROOT_BLADE_DRV_DIR      = $(ROOT_BLADE_DRV_DIR_$(CLASS))
  44 ROOT_BLADE_MISC_DIR     = $(ROOT_BLADE_MISC_DIR_$(CLASS))
  45 
  46 ROOT_PLAT_MOD_DIRS      += $(ROOT_BLADE_MOD_DIR)
  47 ROOT_PLAT_MISC_DIRS     += $(ROOT_BLADE_MISC_DIR)
  48 
  49 
  50 USR_SUN4U_PLAT_DIR      = $(USR_PLAT_DIR)/sun4u
  51 USR_BLADE_DIR           = $(USR_PLAT_DIR)/SUNW,Serverblade1
  52 USR_BLADE_INC_DIR       = $(USR_BLADE_DIR)/include
  53 USR_BLADE_ISYS_DIR      = $(USR_BLADE_INC_DIR)/sys
  54 USR_BLADE_SBIN_DIR      = $(USR_BLADE_DIR)/sbin
  55 USR_BLADE_LIB_DIR       = $(USR_BLADE_DIR)/lib
  56 
  57 
  58 BLADE_LINT_LIB_DIR= $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR)
  59 
  60 
  61 #       Define Objects
  62 #
  63 BLADE_OBJS     = blade.o
  64 
  65 #
  66 #       Option conf file
  67 BLADE_OPTION    = options
  68 
  69 #
  70 #       Include the makefiles which define build rule templates, the
  71 #       collection of files per module, and a few specific flags. Note
  72 #       that order is significant, just as with an include path. The
  73 #       first build rule template which matches the files name will be
  74 #       used. By including these in order from most machine dependent
  75 #       to most machine independent, we allow a machine dependent file
  76 #       to be used in preference over a machine independent version
  77 #       (Such as a machine specific optimization, which preserves the
  78 #       interfaces.)
  79 #
  80 
  81 include $(UTSTREE)/sun4u/blade/Makefile.files
  82 
  83 #
  84 #       Include common rules.
  85 #
  86 include $(UTSTREE)/sun4u/Makefile.sun4u
  87 
  88 #
  89 #       Define modules (must come after Makefile.sun4u, for CLOSED_BUILD).
  90 #
  91 BLADE_KMODS             = platmod
  92 BLADE_KMODS             += bscbus
  93 BLADE_KMODS             += bscv
  94 
  95 LINTS_DIR       = $(OBJS_DIR)
  96 LINT_LIB_DIR    = $(UTSBASE)/$(PLATFORM)/blade/lint-libs/$(OBJS_DIR)
  97 LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lunix.ln
  98 GEN_LINT_LIB= $(UTSBASE)/$(PLATFORM)/lint-libs/$(OBJS_DIR)/llib-lgenunix.ln
  99 
 100 
 101 #
 102 #       Define the actual specific platforms
 103 #
 104 MACHINE_DEFS    += -D$(PLATFORM) -D_MACHDEP -DSFMMU
 105 
 106 #
 107 #       Define for inline pre-processing since
 108 #       cpp not smart about v9 yet.
 109 #
 110 #CPP_DEFS_32    =
 111 #CPP_DEFS_64    = -D__sparcv9
 112 #CPP_DEFS       = $(CPP_DEFS_$(CLASS))
 113 
 114 #
 115 # For now, disable these lint checks; maintainers should endeavor
 116 # to investigate and remove these for maximum lint coverage.
 117 # Please do not carry these forward to new Makefiles.
 118 #
 119 LINTTAGS        += -erroff=E_SUSPICIOUS_COMPARISON
 120 LINTTAGS        += -erroff=E_BAD_PTR_CAST_ALIGN
 121 LINTTAGS        += -erroff=E_SUPPRESSION_DIRECTIVE_UNUSED
 122 LINTTAGS        += -erroff=E_STATIC_UNUSED
 123 LINTTAGS        += -erroff=E_PTRDIFF_OVERFLOW
 124 LINTTAGS        += -erroff=E_ASSIGN_NARROW_CONV