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 src/sun_nws/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 src/sun_nws/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 # Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  23 # Use is subject to license terms.
  24 #
  25 #ident  "@(#)Makefile.config    1.45    08/03/23 SMI"
  26 #
  27 # src/sun_nws/Makefile.config
  28 
  29 # The variable POUND_SIGN is used to disable 32 bit or 64 bit builds when they
  30 # don't apply.  An example of that are:
  31 #
  32 #       BUILD32 = $(MACH32:sparc=$(POUND_SIGN))
  33 #       BUILD64 = $(POUND_SIGN)
  34 #
  35 # If BUILD32 or BUILD64 are set to $(POUND_SIGN), all the line starting with
  36 # BUILD32 or BUILD64 will considered comments by make (or dmake).
  37 
  38 POUND_SIGN:sh=  echo \\043
  39 
  40 OBJDIR_PREFIX   = obj_
  41 DBGDIR_PREFIX   = dbg_
  42 CPU_AMD64       = amd64
  43 CPU_I386        = i386
  44 CPU_SPARCV9     = sparcv9
  45 CPU_SPARC       = sparc
  46 
  47 # ON workspace and proto area for reference
  48 sparc_ON_REF_GATE  = /net/nwsc-gates.central/nws-pool/consolidation/wks/S11/onref/onnvs_REF_BLD
  49 i386_ON_REF_GATE   = /net/nwsc-gates.central/nws-pool/consolidation/wks/S11/onref/onnvx_REF_BLD
  50 ON_REF_GATE        = $($(MACH)_ON_REF_GATE)
  51 
  52 # Misc packaging related requirements
  53 PROJAREA        = $(CODEMGR_WS)/src/sun_nws
  54 PKGAREA         = $(CODEMGR_WS)/packages/$(MACH)/nightly$(BUILD_TYPE)
  55 PKGS            = $(PROJAREA)/pkgdefs
  56 
  57 CLASS_ACTIONS_DIR   = $(PKGS)/class_actions
  58 # Default setting
  59 CLASS_ACTIONS       = none
  60 
  61 COPYRIGHT           = $(ON_REF_GATE)/usr/src/pkgdefs/common_files/copyright
  62 BLDAWKPKGINFO       = $(ON_REF_GATE)/usr/src/pkgdefs/bld_awk_pkginfo.ksh
  63 PKGDEPEND           = $(ON_REF_GATE)/usr/src/pkgdefs/common_files/depend
  64 
  65 RELEASE             = 5.11
  66 #VERSION            = SunOS Development
  67 VERSION             = NWSC
  68 ONVERS              = 11.11
  69 
  70 # in ON, MACH is set in the env file; here it is defined by the current OS
  71 MACH:sh             = uname -p
  72 ARCH:sh             = uname -m
  73 
  74 #
  75 # MACH64 and MACH32 are derived from MACH
  76 #
  77 MACH64_1=       $(MACH:sparc=sparcv9)
  78 MACH64=         $(MACH64_1:i386=amd64)
  79 MACH32_1=       $(MACH:sparc=sparc)
  80 MACH32=         $(MACH32_1:i386=i386)
  81 
  82 BUILD32=
  83 BUILD64=
  84 
  85 # These are no longer used but are being saved in case the ctfmerge is ever needed.
  86 sparc_GENUNIX_PATH      = $(ON_REF_GATE)/usr/src/uts/$(ARCH)/genunix
  87 i386_GENUNIX_PATH       = $(ON_REF_GATE)/usr/src/uts/intel/genunix
  88 
  89 GENUNIX_PATH            = $($(MACH)_GENUNIX_PATH)
  90 
  91 GENUNIX32               = $(GENUNIX_PATH)/$(OBJ)32/genunix
  92 GENUNIX64               = $(GENUNIX_PATH)/$(OBJ)64/genunix
  93 
  94 DMAKE_MODE=parallel
  95 DMAKE_MAX_JOBS=1
  96 DMAKE_ADJUST_MAX_JOBS=YES
  97 
  98 # Common Tools
  99 
 100 BUILD_TOOLS         = /ws/onnv-tools
 101 sparc_BUILD_TOOLS   = $(BUILD_TOOLS)/SUNWspro/SS11
 102 i386_BUILD_TOOLS    = $(BUILD_TOOLS)/SUNWspro/SS11
 103 ONBLD               = $(BUILD_TOOLS)/onbld/bin
 104 
 105 CC                  = $($(MACH)_BUILD_TOOLS)/bin/cc
 106 CCC                 = $($(MACH)_BUILD_TOOLS)/bin/CC
 107 CP                  = /usr/bin/cp
 108 CTFCONVERTCMD       = $(ONBLD)/$(MACH)/ctfconvert
 109 CTFMERGECMD         = $(ONBLD)/$(MACH)/ctfmerge
 110 ECHO                = /usr/bin/echo
 111 GREP                = /usr/bin/grep
 112 INSTALL             = /usr/sbin/install
 113 LD                  = /usr/ccs/bin/ld
 114 LN                  = /usr/bin/ln
 115 LINT32              = $($(MACH)_BUILD_TOOLS)/bin/lint
 116 LINT64              = $($(MACH)_BUILD_TOOLS)/bin/lint
 117 MAKE                = $($(MACH)_BUILD_TOOLS)/bin/dmake -m $(DMAKE_MODE) -j $(DMAKE_MAX_JOBS)
 118 MKDEPEND            = /usr/openwin/bin/makedepend
 119 MV                  = /usr/bin/mv
 120 NAWK                = /usr/bin/nawk
 121 PKGMK               = /usr/bin/pkgmk
 122 TEST                = /usr/bin/test
 123 TOUCH               = /usr/bin/touch
 124 SCCS                = /usr/ccs/bin/sccs
 125 SED                 = /usr/bin/sed
 126 XGETTEXT            = /usr/bin/xgettext
 127 DTRACE              = /usr/sbin/dtrace
 128 
 129 #
 130 # Standard Flags
 131 #
 132 # These flags are based on the S10 ON build.
 133 
 134 # Determine build type (debug, nondebug)
 135 # Default is debug; Use envriroment variable NONDEBUG
 136 # to override.
 137 
 138 NONDEBUG=$(POUND_SIGN)
 139 OBJ = $(DBGDIR_PREFIX)
 140 DEBUG = -DDEBUG
 141 BUILD_TYPE = -debug
 142 
 143 # if NONDEBUG is set:
 144 $(NONDEBUG)OBJ = $(OBJDIR_PREFIX)
 145 $(NONDEBUG)DEBUG =
 146 $(NONDEBUG)BUILD_TYPE = -nondebug
 147 
 148 # Determine lint type (basic, enhanced)
 149 # Default is basic
 150 
 151 ENHANCED_LINT=$(POUND_SIGN)
 152 ENHANCED_LINT_LEVEL=4
 153 
 154 SRC_DIR         = ./src
 155 MDB_SRC_DIR     = ./src
 156 HDRS_DIR        = ./hdrs
 157 HDRS            = $(HDRS_DIR)
 158 SPECS_DIR       = ./spec
 159 OBJ32           = $(OBJ)$(MACH32)
 160 OBJ64           = $(OBJ)$(MACH64)
 161 DBG32           = $(DBGDIR_PREFIX)$(MACH32)
 162 DBG64           = $(DBGDIR_PREFIX)$(MACH64)
 163 
 164 # sparc-only components
 165 sparc_COMPONENTS        += qus
 166 sparc_COMPONENTS        += libg_fc
 167 sparc_COMPONENTS        += liba5k
 168 
 169 # all components
 170 COMPONENTS        += fcip
 171 COMPONENTS        += fcp
 172 COMPONENTS        += fcsm
 173 COMPONENTS        += fctl
 174 COMPONENTS        += fp
 175 COMPONENTS        += headers
 176 COMPONENTS        += qlc
 177 COMPONENTS        += hbaapi
 178 COMPONENTS        += sun_fc
 179 COMPONENTS        += luxadm
 180 COMPONENTS        += cfgadm_fp
 181 COMPONENTS        += iscsid
 182 COMPONENTS        += iscsi
 183 COMPONENTS        += idm
 184 COMPONENTS        += ima
 185 COMPONENTS        += sun_ima
 186 COMPONENTS        += iscsiadm
 187 COMPONENTS        += fcinfo
 188 COMPONENTS        += mpapi
 189 COMPONENTS        += mpapi_svplugin
 190 COMPONENTS        += mpathadm
 191 COMPONENTS        += isns
 192 COMPONENTS        += isnsadm
 193 COMPONENTS        += mdb_modules/fc
 194 COMPONENTS        += mdb_modules/iscsi
 195 COMPONENTS        += libstmf
 196 COMPONENTS        += stmfadm
 197 COMPONENTS        += stmfsvc
 198 COMPONENTS        += sbdadm
 199 COMPONENTS        += comstar/lu_providers/sbd
 200 COMPONENTS        += comstar/mdb
 201 COMPONENTS        += comstar/port_providers/fct
 202 COMPONENTS        += comstar/port_providers/mptt
 203 COMPONENTS        += comstar/port_providers/qlt
 204 COMPONENTS        += comstar/port_providers/iscsit
 205 COMPONENTS        += comstar/stmf
 206 COMPONENTS        += $($(MACH)_COMPONENTS)
 207 
 208 MOD_DIR_CMDPARSE= $(PROJAREA)/common_cmd/cmdparse/
 209 MOD_OBJ_CMDPARSE= cmdparse.o
 210 MOD_INC_FCIP    = $(PROJAREA)/fcip/hdrs
 211 MOD_INC_FCP     = $(PROJAREA)/fcp/hdrs
 212 MOD_INC_FCSM    = $(PROJAREA)/fcsm/hdrs
 213 MOD_INC_FCTL    = $(PROJAREA)/fctl/hdrs
 214 MOD_INC_FP      = $(PROJAREA)/fp/hdrs
 215 MOD_INC_QLC     = $(PROJAREA)/qlc/hdrs
 216 MOD_INC_QUS     = $(PROJAREA)/qus/hdrs
 217 MOD_INC_IDM     = $(PROJAREA)/idm/hdrs
 218 MOD_INC_ISCSI   = $(PROJAREA)/iscsi/hdrs
 219 MOD_INC_FCINFO  = $(PROJAREA)/fcinfo/hdrs
 220 MOD_INC_HBAAPI  = $(PROJAREA)/hbaapi/hdrs
 221 MOD_INC_SUNFC   = $(PROJAREA)/sun_fc/hdrs
 222 MOD_INC_LIBG_FC = $(PROJAREA)/libg_fc/hdrs
 223 MOD_INC_LIBA5K  = $(PROJAREA)/liba5k/hdrs
 224 MOD_INC_IMA     = $(PROJAREA)/ima/hdrs
 225 MOD_INC_MPAPI   = $(PROJAREA)/mpapi/hdrs
 226 MOD_INC_ISNS    = $(PROJAREA)/isns/hdrs
 227 MOD_INC_LIBSTMF = $(PROJAREA)/libstmf/hdrs
 228 MOD_INC_STMF    = $(PROJAREA)/comstar/stmf/hdrs
 229 MOD_INC_FCT     = $(PROJAREA)/comstar/port_providers/fct/hdrs
 230 MOD_INC_QLT     = $(PROJAREA)/comstar/port_providers/qlt/hdrs
 231 MOD_INC_ISCSIT  = $(PROJAREA)/comstar/port_providers/iscsit/hdrs
 232 MOD_INC_SBD     = $(PROJAREA)/comstar/lu_providers/sbd/hdrs
 233 MOD_INC_MPTT    = $(PROJAREA)/comstar/port_providers/mptt/hdrs
 234 MOD_INC_CMDPARSE= $(PROJAREA)/common_cmd/cmdparse/hdrs
 235 
 236 COM_OBJ         = $(PROJAREA)/common_storage
 237 COM_INC         = $(PROJAREA)/headers/common/lib
 238 COM_INC_FC      = $(PROJAREA)/headers/common/fc
 239 COM_INC_ISCSI   = $(PROJAREA)/headers/common/iscsi
 240 COM_INC_STMF    = $(PROJAREA)/comstar/hdrs
 241 COM_SRC         = $(PROJAREA)/common_storage/src
 242 COM_SRC_CMDPARSE= $(PROJAREA)/common_cmd/cmdparse/src
 243 COM_SRC_ISCSI   = $(PROJAREA)/common_iscsi/src
 244 
 245 COMMON_FC_IMPL_HDRS_DIR         = $(PROJAREA)/headers/fc
 246 COMMON_ISCSI_IMPL_HDRS_DIR      = $(PROJAREA)/headers/iscsi
 247 COMMON_IMA_IMPL_HDRS_DIR        = $(PROJAREA)/headers/ima
 248 
 249 DIRS     = $(OBJ32)
 250 DIRS    += $(OBJ64)
 251 DIRS    += $(PKGAREA)
 252 DIRS    += $(STAGING32)
 253 DIRS    += $(STAGING64)
 254 
 255 PROTO_ROOT      = $(ROOT)$(BUILD_TYPE)
 256 LCMESSAGES      = $(PROTO_ROOT)/usr/lib/locale/C/LC_MESSAGES
 257 
 258 #
 259 # STABS FLAGS
 260 #
 261 CTFCONVERTARGS      =
 262 CTFMERGEARGS        =
 263