(file) Return to config.mak CVS log (file) (dir) Up to [Pegasus] / pegasus / mak

   1 karl  1.117 #//%2006////////////////////////////////////////////////////////////////////////
   2 martin 1.92  #//
   3              #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
   4              #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
   5              #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
   6              #// IBM Corp.; EMC Corporation, The Open Group.
   7              #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   8              #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   9              #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
  10              #// EMC Corporation; VERITAS Software Corporation; The Open Group.
  11 karl   1.117 #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
  12              #// EMC Corporation; Symantec Corporation; The Open Group.
  13 martin 1.92  #//
  14              #// Permission is hereby granted, free of charge, to any person obtaining a copy
  15              #// of this software and associated documentation files (the "Software"), to
  16              #// deal in the Software without restriction, including without limitation the
  17              #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
  18              #// sell copies of the Software, and to permit persons to whom the Software is
  19              #// furnished to do so, subject to the following conditions:
  20              #// 
  21              #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
  22              #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
  23              #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
  24              #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
  25              #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  26              #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
  27              #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  28              #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  29              #//
  30              #//==============================================================================
  31 mike   1.1   ################################################################################
  32              ##
  33              ## Get external environment variables. Note that all external environment
  34              ## variables begin with "PEGASUS_".
  35              ##
  36              ################################################################################
  37              
  38 konrad.r 1.55  ifndef ROOT
  39                    ROOT =  $(subst \,/,$(PEGASUS_ROOT))
  40                endif
  41                
  42 mike     1.151.2.7 -include $(ROOT)/options.mak
  43 mike     1.151.2.1 
  44 denise.eckstein 1.61      ifdef PEGASUS_ENVVAR_FILE
  45 david.dillard   1.65          include $(PEGASUS_ENVVAR_FILE)
  46 denise.eckstein 1.61      else
  47 david.dillard   1.65          include $(ROOT)/env_var.status
  48 denise.eckstein 1.61      endif
  49 konrad.r        1.55      
  50 mike            1.2       ifdef PEGASUS_HOME
  51 david.dillard   1.65          HOME_DIR = $(subst \,/,$(PEGASUS_HOME))
  52 mike            1.1       else
  53 david.dillard   1.65          $(error PEGASUS_HOME environment variable undefined)
  54 mike            1.1       endif
  55                           
  56 karl            1.18      ifdef PEGASUS_ROOT
  57                               ROOT =  $(subst \,/,$(PEGASUS_ROOT))
  58                           else
  59 david.dillard   1.65          $(error PEGASUS_ROOT environment variable undefined)
  60 karl            1.18      endif
  61                           
  62 chuck           1.35      # l10n
  63                           ifdef ICU_ROOT
  64                               ICUROOT =  $(subst \,/,$(ICU_ROOT))
  65                           endif
  66                           
  67 kumpf           1.21      ifdef PEGASUS_TMP
  68 david.dillard   1.65          TMP_DIR = $(subst \,/,$(PEGASUS_TMP))
  69 kumpf           1.21      else
  70 david.dillard   1.65          TMP_DIR = .
  71 kumpf           1.21      endif
  72                           
  73 kumpf           1.26      ifdef PEGASUS_DISPLAYCONSUMER_DIR
  74 david.dillard   1.65          DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_DISPLAYCONSUMER_DIR))
  75 kumpf           1.26      else
  76 david.dillard   1.65          DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_HOME))
  77 kumpf           1.26      endif
  78                           
  79 aruran.ms       1.102     ifdef PEGASUS_DEBUG
  80                                PEGASUS_USE_DEBUG_BUILD_OPTIONS = 1
  81                           endif
  82                           
  83 david.dillard   1.66      PLATFORM_FILES=$(wildcard $(ROOT)/mak/platform*.mak)
  84 karl            1.78      PLATFORM_TEMP=$(subst $(ROOT)/mak/platform_,, $(PLATFORM_FILES))
  85 jim.wunderlich  1.104     VALID_PLATFORMS=$(subst .mak,  , $(PLATFORM_TEMP))
  86 mike            1.8       
  87                           ifndef PEGASUS_PLATFORM
  88 david.dillard   1.66          $(error PEGASUS_PLATFORM environment variable undefined. Please set to\
  89                                   one of the following:$(VALID_PLATFORMS))
  90 mike            1.8       endif
  91                           
  92 mike            1.1       ################################################################################
  93 denise.eckstein 1.116     ifeq ($(findstring _GNU, $(PEGASUS_PLATFORM)), _GNU)
  94 mike            1.118         ifdef CXX
  95                                 GCC_VERSION = $(shell $(CXX) -dumpversion)
  96                               else
  97                                 GCC_VERSION = $(shell g++ -dumpversion)
  98                               endif
  99 denise.eckstein 1.116     else
 100                               GCC_VERSION =
 101                           endif
 102 mike            1.1       
 103 denise.eckstein 1.143     #############################################################################
 104                           ## As a general rule, the directory structure for the object files mirrors
 105                           ## the directory structure of the source files.  E.g.,
 106                           ## $PEGASUS_HOME/obj/Pegasus/Common contains the object files for the
 107                           ## source files in $PEGASUS_ROOT/src/Pegasus/Common.  Each source-level
 108                           ## Makefile includes a DIR value that defines this common path (e.g.,
 109                           ## Pegasus/Common). In a small number of cases, source files are built
 110                           ## multiple times with difference compile options.  
 111                           ## To handle this situation, the ALT_OBJ_DIR variable can be used to
 112                           ## specify an alternative object directory for use in building the
 113                           ## objects defined in the Makefile.
 114                           ##
 115                           
 116                           ifndef ALT_OBJ_DIR
 117                               OBJ_DIR = $(HOME_DIR)/obj/$(DIR)
 118                           else
 119                               OBJ_DIR = $(HOME_DIR)/obj/$(ALT_OBJ_DIR)
 120                           endif
 121                           
 122                           #############################################################################
 123                           
 124 kumpf           1.22      BIN_DIR = $(HOME_DIR)/bin
 125                           LIB_DIR = $(HOME_DIR)/lib
 126 chuck           1.35      
 127                           # l10n
 128                           # define the location for the compiled messages
 129                           MSG_ROOT = $(HOME_DIR)/msg
 130 kumpf           1.22      
 131 jim.wunderlich  1.90      #############################################################################
 132 kumpf           1.140     ##  The following REPOSITORY_XXX variables are only used within the
 133                           ## makefiles for building the repository (cimmofl) and running the tests.
 134 jim.wunderlich  1.90      ## They have no effect on CIMconfig initial startup configuration.
 135                           
 136                           #
 137 kumpf           1.22      # define the location for the repository
 138 jim.wunderlich  1.90      #
 139                           # NOTE: There is another variable efined in many of the test makefiles
 140                           # called REPOSITORYDIR. It is a local variable in each of those Makefiles
 141 kumpf           1.140     # to localally control where the temporay small repository they
 142 jim.wunderlich  1.90      # build, use and then delete is located. Most of the time it is set to TMP_DIR.
 143                           #
 144 jim.wunderlich  1.91      
 145 kumpf           1.22      REPOSITORY_DIR = $(HOME_DIR)
 146 jim.wunderlich  1.90      
 147                           #
 148 kumpf           1.140     # WARNING: The REPOSITORY_NAME varible is not used by all the test,
 149 jim.wunderlich  1.90      # many of them are still hardcoded to "repository".  What this means
 150 kumpf           1.140     # is that you can change the repository name and build it. But you
 151 jim.wunderlich  1.90      # cannot run the test without many of them failing
 152                           #
 153 jim.wunderlich  1.91      
 154 jim.wunderlich  1.81      REPOSITORY_NAME = repository
 155 jim.wunderlich  1.91      
 156 jim.wunderlich  1.90      
 157 jim.wunderlich  1.81      REPOSITORY_ROOT = $(REPOSITORY_DIR)/$(REPOSITORY_NAME)
 158                           
 159 kumpf           1.140     # define the repository mode
 160 h.sterling      1.89      #       XML = XML format
 161                           #       BIN = Binary format
 162 jim.wunderlich  1.81      #
 163 jim.wunderlich  1.91      ifndef PEGASUS_REPOSITORY_MODE
 164                              ## set to default value
 165                              REPOSITORY_MODE = XML
 166 kumpf           1.140     else
 167 jim.wunderlich  1.91         ## validate assigned value
 168                              ifeq ($(PEGASUS_REPOSITORY_MODE),XML)
 169                                  REPOSITORY_MODE = XML
 170                              else
 171                                ifeq ($(PEGASUS_REPOSITORY_MODE),BIN)
 172                                 REPOSITORY_MODE = BIN
 173                                else
 174                                 $(error PEGASUS_REPOSITORY_MODE ($(PEGASUS_REPOSITORY_MODE)) \
 175                           		 is invalid. It must be set to either XML or BIN)
 176                                endif
 177                              endif
 178 jim.wunderlich  1.90      endif
 179                           
 180 jim.wunderlich  1.91      
 181 jim.wunderlich  1.90      ###########################################################################
 182 mike            1.1       
 183 kumpf           1.23      # The two variables, CIM_SCHEMA_DIR and CIM_SCHEMA_VER,
 184 chip            1.76      # are used to control the version of the CIM Schema
 185 kumpf           1.23      # loaded into the Pegasus Internal, InterOp,
 186                           # root/cimv2 and various test namespaces.
 187                           #
 188 chip            1.76      # Update the following two environment variables to
 189 kumpf           1.23      # change the version.
 190                           
 191 kumpf           1.37      # The environment variable PEGASUS_CIM_SCHEMA can be used
 192 chip            1.76      # to change the values of CIM_SCHEMA_DIR, CIM_SCHEMA_VER
 193 kumpf           1.37      # and ALLOW_EXPERIMENTAL.
 194                           #
 195                           # To use the PEGASUS_CIM_SCHEMA variable the Schema mof
 196                           # files must be placed in the directory
 197 denise.eckstein 1.115     # $(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
 198 chip            1.76      #
 199 kumpf           1.37      # The value of PEGASUS_CIM_SCHEMA must conform to the
 200                           # following syntax:
 201                           #
 202                           #        CIM[Prelim]<CIM_SCHEMA_VER>
 203                           #
 204 chip            1.76      # The string "Prelim" should be included if the
 205 kumpf           1.37      # Schema contains "Experimental" class definitions.
 206                           #
 207                           # The value of <CIM_SCHEMA_VER> must be the value
 208 chip            1.76      # of the version string included by the DMTF as
 209                           # part of the mof file names (e.g, CIM_Core27.mof).
 210 kumpf           1.37      # Therefore, for example, the value of <CIM_SCHEMA_VER>
 211                           # for CIM27 Schema directories MUST be 27.
 212                           #
 213 chip            1.76      # Examples of valid values of PEGASUS_CIM_SCHEMA
 214 kumpf           1.37      # include CIMPrelim27, CIM27, CIMPrelim28, and CIM28.
 215                           #
 216                           # Note the CIMPrelim271 would NOT be a valid value
 217                           # for PEGASUS_CIM_SCHEMA because the version string
 218                           # portion of the mof files (e.g., CIM_Core27.mof) in
 219                           # the CIMPrelimin271 directory is 27 not 271.
 220 kumpf           1.23      
 221 gerarda         1.29      # ***** CIM_SCHEMA_DIR INFO ****
 222                           # If CIM_SCHEMA_DIR changes to use a preliminary schema which
 223                           # has experimentals make sure and change the path below to appopriate
 224                           # directory path.  Example:  CIMPrelim271 is preliminary and has
 225                           # experimental classes.  Since experimental classes exist the -aE
 226                           # option of the mof compiler needs to be set.
 227                           # *****
 228 kumpf           1.37      
 229                           ifdef PEGASUS_CIM_SCHEMA
 230 david.dillard   1.65          CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
 231 chip            1.76          ifeq ($(findstring $(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA))),1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 271 28),)
 232 david.dillard   1.65             CIM_SCHEMA_VER=
 233                               else
 234                                  CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA)))
 235                               endif
 236 kumpf           1.37      else
 237 s.manicka       1.139         CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM2131
 238 a.dunfey        1.82          CIM_SCHEMA_VER=
 239 kumpf           1.37      endif
 240                           
 241                           ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR)))
 242 david.dillard   1.65          ALLOW_EXPERIMENTAL = -aE
 243 gerarda         1.29      else
 244 david.dillard   1.65          ALLOW_EXPERIMENTAL =
 245 gerarda         1.29      endif
 246                           
 247 bob             1.5       LEX = flex
 248                           
 249 jim.wunderlich  1.94      ## ======================================================================
 250                           ##
 251 kumpf           1.140     ## PEGASUS_ENABLE_SORTED_DIFF
 252 jim.wunderlich  1.94      ## This controls if the DIFFSORT function is used rather than a simple DIFF of
 253                           ##  of the test results files to the static results file.
 254                           ##
 255                           ##   Set to "true" enables the sorted diffs of results to static results files.
 256                           ##   otherwise results in regular diffs of results to static results files.
 257 kumpf           1.140     ##   see bug 2283 for background information concerning this config variable.
 258 jim.wunderlich  1.94      ##
 259                           ##  Defaults to true.
 260                           ##
 261                           ##
 262                           ifndef PEGASUS_ENABLE_SORTED_DIFF
 263                           PEGASUS_ENABLE_SORTED_DIFF=true
 264                           endif
 265                           
 266 jim.wunderlich  1.86      ## ========================================================================
 267 kumpf           1.140     ## DIFFSORT function definition
 268 jim.wunderlich  1.86      ## Here is an example using the DIFFSORT function:
 269 kumpf           1.140     ##
 270 jim.wunderlich  1.86      ## difftest: FORCE
 271 h.sterling      1.89      ##      @ test > result
 272 jim.wunderlich  1.86      ##      @ $(call DIFFSORT,result,standard_result)
 273 h.sterling      1.89      ##      @ $(ECHO) +++++ all test passed
 274 jim.wunderlich  1.86      ##
 275                           
 276                           define NL
 277                           
 278                           
 279                           endef
 280                           
 281 kumpf           1.140     ifndef FORCE_NOCASE
 282                           
 283 jim.wunderlich  1.86      DIFFSORT = $(SORT) $(1) > $(1).tmp $(NL) \
 284                           $(SORT) $(2) > $(2).tmp $(NL) \
 285                           $(DIFF) $(1).tmp $(2).tmp $(NL) \
 286                           $(RM) -f $(1).tmp $(NL) \
 287                           $(RM) -f $(2).tmp $(NL)
 288                           
 289 marek           1.107     else
 290                           
 291                           DIFFSORT = $(SORT) -f $(1) > $(1).tmp $(NL) \
 292                           $(SORT) -f $(2) > $(2).tmp $(NL) \
 293                           $(DIFF) -i $(1).tmp $(2).tmp $(NL) \
 294                           $(RM) -f $(1).tmp $(NL) \
 295                           $(RM) -f $(2).tmp $(NL)
 296                           
 297                           endif
 298                           
 299                           DIFFSORTNOCASE = $(SORT) $(1) > $(1).tmp $(NL) \
 300                           $(SORT) $(2) > $(2).tmp $(NL) \
 301                           $(DIFF) -i $(1).tmp $(2).tmp $(NL) \
 302                           $(RM) -f $(1).tmp $(NL) \
 303                           $(RM) -f $(2).tmp $(NL)
 304                           
 305 jim.wunderlich  1.104     #
 306                           # The following is used to define the usage message for MakeFile
 307                           #
 308                           # See the pegasus/Makfile for an exampleof its usage.
 309                           #
 310                           USAGE = @$(ECHO) " $(1)"
 311                           
 312 mike            1.8       ################################################################################
 313                           ##
 314                           ## Attempt to include a platform configuration file:
 315                           ##
 316                           ################################################################################
 317                           
 318 david.dillard   1.66      PLATFORM_FILE = $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
 319                           ifneq ($(wildcard $(PLATFORM_FILE)), )
 320                               include $(PLATFORM_FILE)
 321                           else
 322 david.dillard   1.65        $(error  PEGASUS_PLATFORM environment variable must be set to one of\
 323 david.dillard   1.66              the following:$(VALID_PLATFORMS))
 324 mike            1.8       endif
 325 karl            1.17      
 326 karl            1.36      ################################################################################
 327                           ##
 328                           ##  Set up any platform independent compile conditionals by adding them to
 329                           ##  precreated FLAGS parameter.
 330 chip            1.76      ##  Assumes that the basic flags have been setup in FLAGS.
 331 karl            1.36      ##  Assumes that compile time flags are controlled with -D CLI option.
 332                           ##
 333                           ################################################################################
 334 karl            1.17      
 335 jim.wunderlich  1.97      
 336                           ################################################################################
 337                           ##
 338                           ## PEGASUS_MAX_THREADS_PER_SVC_QUEUE
 339                           ##
 340                           ## Controls the maximum number of threads allowed per message service queue.
 341                           ##     It is allowed to range between 1 and MAX_THREADS_PER_SVC_QUEUE_LIMIT
 342 kumpf           1.103     ##     as set in pegasus/src/Pegasus/Common/MessageQueueService.cpp.  If the
 343                           ##     specified value is out of range, MAX_THREADS_PER_SVC_QUEUE_LIMIT is
 344                           ##     used.  The default value is MAX_THREADS_PER_SVC_QUEUE_DEFAULT, as
 345                           ##     defined in pegasus/src/Pegasus/Common/MessageQueueService.cpp.
 346 jim.wunderlich  1.98      ##
 347                           ##	Label					Current value
 348                           ##	--------------------------------------  -------------
 349                           ##      MAX_THREADS_PER_SVC_QUEUE_LIMIT	        5000
 350                           ##      MAX_THREADS_PER_SVC_QUEUE_DEFAULT       5
 351 jim.wunderlich  1.97      ##
 352                           ##
 353                           
 354                           ifdef PEGASUS_MAX_THREADS_PER_SVC_QUEUE
 355                             DEFINES += -DMAX_THREADS_PER_SVC_QUEUE=$(PEGASUS_MAX_THREADS_PER_SVC_QUEUE)
 356                           endif
 357                           
 358 jim.wunderlich  1.99      ##############################################################################
 359 kumpf           1.140     ##
 360 jim.wunderlich  1.99      ## PEGASUS_INDICATIONS_Q_THRESHOLD
 361                           ##
 362                           ## Controls if indications providers are stalled if the indications
 363                           ## service queue is too large.
 364                           ##
 365 jim.wunderlich  1.100     ##      defaults to not set.
 366 jim.wunderlich  1.99      ##
 367                           ## 	It can be set to any positive value.
 368                           ##
 369 jim.wunderlich  1.100     ## If not set providers are never stalled. This implies that the
 370 jim.wunderlich  1.99      ## indications service queue may become as large as neccesary to hold all
 371                           ## the indicaitons generated.
 372                           ##
 373 jim.wunderlich  1.100     ## If set to any value then providers are stalled by forcing them to sleep
 374 jim.wunderlich  1.99      ## when they try to deliver an indication and the indications service queue
 375                           ## exceeds this value. They are resumed when the queue count falls 10 percent
 376 kumpf           1.140     ## below this value.
 377 jim.wunderlich  1.99      ##
 378                           ## Stall and resume log entries are made to inform the administrator
 379                           ## the condition has occured.
 380                           ##
 381                           ## WARNING: This also affects the Out of Process Providers (OOP Providers)
 382                           ##    The OOP Providers use two one way pipes for communication.
 383                           ##    By stalling the Provider this prevents the pipe from being read
 384                           ##    which will cause the pipe to fill up and the remote side will block.
 385                           ##    OOP Prividers mix indications and operations on these two pipes.
 386                           ##    This means the operations will also be blocked as a side effect of
 387                           ##    the indications being stalled.
 388 kumpf           1.140     ##
 389 jim.wunderlich  1.99      ##
 390                           
 391                           ifdef PEGASUS_INDICATIONS_Q_THRESHOLD
 392                             DEFINES += -DPEGASUS_INDICATIONS_Q_THRESHOLD=$(PEGASUS_INDICATIONS_Q_THRESHOLD)
 393                           endif
 394                           
 395 jim.wunderlich  1.97      
 396 kumpf           1.87      # Allow PEGASUS_ASSERT statements to be disabled.
 397                           ifdef PEGASUS_NOASSERTS
 398                               DEFINES += -DNDEBUG
 399                           endif
 400                           
 401 mday            1.40      # do not compile trace code. sometimes it causes problems debugging
 402                           ifdef PEGASUS_REMOVE_TRACE
 403 david.dillard   1.65          DEFINES += -DPEGASUS_REMOVE_TRACE
 404 mday            1.40      endif
 405                           
 406 chuck           1.47      # PEP 161
 407                           # Control whether utf-8 filenames are supported by the repository
 408                           ifdef PEGASUS_SUPPORT_UTF8_FILENAME
 409 david.dillard   1.65          DEFINES += -DPEGASUS_SUPPORT_UTF8_FILENAME
 410 chuck           1.47      
 411 david.dillard   1.65          # Control whether utf-8 filenames in the repository are escaped
 412                               ifdef PEGASUS_REPOSITORY_ESCAPE_UTF8
 413                                   DEFINES += -DPEGASUS_REPOSITORY_ESCAPE_UTF8
 414                               endif
 415 chuck           1.47      endif
 416                           
 417 kumpf           1.49      #
 418                           # PEP 142
 419                           # The following flag need to be set to enable
 420                           # user group authorization functionality.
 421                           #
 422                           ifdef PEGASUS_ENABLE_USERGROUP_AUTHORIZATION
 423 david.dillard   1.65          DEFINES += -DPEGASUS_ENABLE_USERGROUP_AUTHORIZATION
 424 kumpf           1.49      endif
 425                           
 426 chuck           1.67      #
 427                           # PEP 193
 428                           # The following flag need to be set to disable
 429                           # CQL in indication subscriptions
 430                           #
 431                           ifdef PEGASUS_DISABLE_CQL
 432                               DEFINES += -DPEGASUS_DISABLE_CQL
 433                           endif
 434                           
 435 karl            1.151.2.8 ###################################################
 436                           # Allow EXPORT Server within cimserver to be disabled
 437                           # default - enabled
 438                           # true - enabled
 439                           # false - disabled and not referenced within server
 440                           
 441                           ifdef PEGASUS_ENABLE_EXPORTSERVER
 442                             ifeq ($(PEGASUS_ENABLE_EXPORTSERVER),true)
 443                               DEFINES += -DPEGASUS_ENABLE_EXPORTSERVER
 444                             else
 445                               ifneq ($(PEGASUS_ENABLE_EXPORTSERVER),false)
 446                                 $(error PEGASUS_ENABLE_EXPORTSERVER ($(PEGASUS_ENABLE_EXPORTSERVER)) invalid, must be true or false)
 447                               endif
 448                             endif
 449                           else
 450                             DEFINES += -DPEGASUS_ENABLE_EXPORTSERVER
 451                             PEGASUS_ENABLE_EXPORTSERVER=true
 452                           endif
 453                           
 454 kumpf           1.68      #
 455                           # PEP 186
 456                           # Allow override of product name/version/status.  A file
 457                           # pegasus/src/Pegasus/Common/ProductVersion.h must exist when this
 458                           # flag is defined.
 459                           #
 460                           ifdef PEGASUS_OVERRIDE_PRODUCT_ID
 461                               DEFINES += -DPEGASUS_OVERRIDE_PRODUCT_ID
 462                           endif
 463                           
 464 kumpf           1.71      #
 465 kumpf           1.106     # PEP 72
 466                           # Allow Out-of-Process Providers to be disabled by default
 467                           #
 468 jim.wunderlich  1.113     ifdef PEGASUS_DEFAULT_ENABLE_OOP
 469                             ifeq ($(PEGASUS_DEFAULT_ENABLE_OOP),true)
 470                               DEFINES += -DPEGASUS_DEFAULT_ENABLE_OOP
 471 jim.wunderlich  1.111       else
 472 jim.wunderlich  1.113         ifneq ($(PEGASUS_DEFAULT_ENABLE_OOP),false)
 473                                 $(error PEGASUS_DEFAULT_ENABLE_OOP ($(PEGASUS_DEFAULT_ENABLE_OOP)) invalid, must be true or false)
 474 kumpf           1.140         endif
 475 jim.wunderlich  1.111       endif
 476 kumpf           1.106     endif
 477                           
 478                           #
 479 mateus.baur     1.130     # Allow to define the default value for the Provider User Context
 480                           # property as REQUESTOR.
 481                           # If is set and true use REQUESTOR
 482                           # If is not set or false use PRIVILEGED
 483                           #
 484                           ifdef PEGASUS_DEFAULT_USERCTXT_REQUESTOR
 485                             ifeq ($(PEGASUS_DEFAULT_USERCTXT_REQUESTOR),true)
 486                               DEFINES += -DPEGASUS_DEFAULT_USERCTXT_REQUESTOR
 487                             else
 488                               ifneq ($(PEGASUS_DEFAULT_USERCTXT_REQUESTOR),false)
 489                                 $(error PEGASUS_DEFAULT_USERCTXT_REQUESTOR ($(PEGASUS_DEFAULT_USERCTXT_REQUESTOR)) invalid, must be true or false)
 490 kumpf           1.140         endif
 491 mateus.baur     1.130       endif
 492                           endif
 493                           
 494                           #
 495 kumpf           1.71      # PEP 197
 496                           # Allow the Provider User Context feature to be disabled.
 497                           #
 498 kumpf           1.74      ifdef PEGASUS_DISABLE_PROV_USERCTXT
 499 kumpf           1.71          DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT
 500 kumpf           1.74      endif
 501 kumpf           1.71      
 502 h.sterling      1.89      # Bug 2147
 503                           # Allow local domain socket usage to be disabled.
 504                           ifdef PEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET
 505                               DEFINES += -DPEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET
 506                           endif
 507                           
 508 chip            1.76      # PEP 211
 509                           # Controls object normalization support.
 510                           ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION
 511                               DEFINES += -DPEGASUS_ENABLE_OBJECT_NORMALIZATION
 512                           endif
 513                           
 514 a.dunfey        1.125     # PEP 233
 515                           # Controls support for EmbeddedInstance properties
 516                           # and parameters
 517 a.dunfey        1.129     ifndef PEGASUS_EMBEDDED_INSTANCE_SUPPORT
 518                               PEGASUS_EMBEDDED_INSTANCE_SUPPORT = true
 519                           endif
 520                           
 521                           ifeq ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT), true)
 522                               DEFINES += -DPEGASUS_EMBEDDED_INSTANCE_SUPPORT
 523                           else
 524                               ifneq ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT), false)
 525                                   $(error PEGASUS_EMBEDDED_INSTANCE_SUPPORT ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT)) invalid, must be true or false)
 526 a.dunfey        1.125         endif
 527                           endif
 528                           
 529 a.dunfey        1.129     
 530 kumpf           1.80      # Allow ExecQuery functionality to be enabled
 531                           ifndef PEGASUS_ENABLE_EXECQUERY
 532                               DEFINES += -DPEGASUS_DISABLE_EXECQUERY
 533                           endif
 534                           
 535 yi.zhou         1.85      # Allow System Log Handler to be enabled
 536                           ifdef PEGASUS_ENABLE_SYSTEM_LOG_HANDLER
 537                             DEFINES += -DPEGASUS_ENABLE_SYSTEM_LOG_HANDLER
 538                           endif
 539                           
 540                           # Allow Email Handler to be enabled
 541                           ifdef PEGASUS_ENABLE_EMAIL_HANDLER
 542                             DEFINES += -DPEGASUS_ENABLE_EMAIL_HANDLER
 543                           endif
 544 kumpf           1.49      
 545 h.sterling      1.109     # Allow qualifiers to be disabled for instance operations
 546                           ifdef PEGASUS_DISABLE_INSTANCE_QUALIFIERS
 547                             DEFINES += -DPEGASUS_DISABLE_INSTANCE_QUALIFIERS
 548                           endif
 549                           
 550 yi.zhou         1.108     # Controls snmp indication handler to use NET-SNMP to deliver trap
 551                           ifdef PEGASUS_USE_NET_SNMP
 552                             DEFINES += -DPEGASUS_USE_NET_SNMP
 553                           endif
 554                           
 555 denise.eckstein 1.120     ifdef PEGASUS_HAS_SSL
 556 kumpf           1.145         DEFINES += -DPEGASUS_HAS_SSL -DPEGASUS_SSL_RANDOMFILE
 557                           
 558                               ifndef OPENSSL_COMMAND
 559 denise.eckstein 1.147             ifdef OPENSSL_BIN
 560                                       OPENSSL_COMMAND = $(OPENSSL_BIN)/openssl
 561                                   else
 562                                       OPENSSL_COMMAND = openssl
 563                                   endif
 564 kumpf           1.145         endif
 565                               ifndef OPENSSL_SET_SERIAL_SUPPORTED
 566                                   ifneq (, $(findstring 0.9.6, $(shell $(OPENSSL_COMMAND) version)))
 567                                       OPENSSL_SET_SERIAL_SUPPORTED = false
 568                                   else
 569                                       OPENSSL_SET_SERIAL_SUPPORTED = true
 570                                   endif
 571 denise.eckstein 1.120         endif
 572 sushma.fernandes 1.123     
 573 kumpf            1.145         # Enable CRL verification
 574                                ifndef PEGASUS_ENABLE_SSL_CRL_VERIFICATION
 575                                    PEGASUS_ENABLE_SSL_CRL_VERIFICATION = true
 576                                endif
 577 sushma.fernandes 1.123     
 578 kumpf            1.145         # Check for Enable SSL CRL verification
 579                                ifdef PEGASUS_ENABLE_SSL_CRL_VERIFICATION
 580                                    ifeq ($(PEGASUS_ENABLE_SSL_CRL_VERIFICATION), true)
 581                                        DEFINES += -DPEGASUS_ENABLE_SSL_CRL_VERIFICATION
 582                                    else
 583                                        ifneq ($(PEGASUS_ENABLE_SSL_CRL_VERIFICATION), false)
 584                                            $(error PEGASUS_ENABLE_SSL_CRL_VERIFICATION\
 585                                                 ($(PEGASUS_ENABLE_SSL_CRL_VERIFICATION)) invalid, \
 586                                                  must be true or false)
 587                                        endif
 588 sushma.fernandes 1.123             endif
 589                                endif
 590                            endif
 591 denise.eckstein  1.120     
 592 jim.wunderlich   1.101     #
 593 yi.zhou          1.134     # PEP 258
 594                            # Allow Audit Logger to be disabled
 595                            #
 596                            ifdef PEGASUS_DISABLE_AUDIT_LOGGER
 597                              ifeq ($(PEGASUS_DISABLE_AUDIT_LOGGER),true)
 598 kumpf            1.140         DEFINES += -DPEGASUS_DISABLE_AUDIT_LOGGER
 599 yi.zhou          1.134       else
 600                                ifneq ($(PEGASUS_DISABLE_AUDIT_LOGGER),false)
 601                                  $(error PEGASUS_DISABLE_AUDIT_LOGGER ($(PEGASUS_DISABLE_AUDIT_LOGGER)) \
 602                                   invalid, must be true or false)
 603 kumpf            1.140         endif
 604                              endif
 605 yi.zhou          1.134     endif
 606                            
 607 dave.sudlik      1.142     
 608                            #
 609                            # PEP 291
 610                            # Enable IPv6 support
 611                            #
 612 venkat.puvvada   1.149     
 613 dave.sudlik      1.142     ifndef PEGASUS_ENABLE_IPV6
 614                                PEGASUS_ENABLE_IPV6 = true
 615                            endif
 616                            
 617                            # Check for Enable IPv6 support
 618                            ifdef PEGASUS_ENABLE_IPV6
 619                              ifeq ($(PEGASUS_ENABLE_IPV6),true)
 620                                DEFINES += -DPEGASUS_ENABLE_IPV6
 621                              else
 622                                ifneq ($(PEGASUS_ENABLE_IPV6),false)
 623                                  $(error PEGASUS_ENABLE_IPV6 ($(PEGASUS_ENABLE_IPV6)) \
 624                                   invalid, must be true or false)
 625                                endif
 626                              endif
 627                            endif
 628                            
 629 venkat.puvvada   1.149     # Verify Test IPv6 support
 630                            # If PEGASUS_ENABLE_IPV6 is defined and PEGASUS_TEST_IPV6 is not defined, we set
 631                            # PEGASUS_TEST_IPV6 to the same value as PEGASUS_ENABLE_IPV6.
 632                            # You can explicitly set PEGASUS_TEST_IPV6 to false if you don't want to run the
 633                            # IPv6 tests (for example, on an IPv4 system that is running an IPv6-enabled
 634                            # version of Pegasus).
 635                            #
 636                            ifdef PEGASUS_TEST_IPV6
 637                              ifneq ($(PEGASUS_TEST_IPV6),true)
 638                                ifneq ($(PEGASUS_TEST_IPV6),false)
 639                                  $(error PEGASUS_TEST_IPV6 ($(PEGASUS_TEST_IPV6)) \
 640                                   invalid, must be true or false)
 641                                endif
 642                              endif
 643                            else 
 644 venkat.puvvada   1.150       PEGASUS_TEST_IPV6 = $(PEGASUS_ENABLE_IPV6)
 645 venkat.puvvada   1.149     endif
 646                            
 647 karl             1.151     ############################################################################
 648 yi.zhou          1.134     #
 649 jim.wunderlich   1.101     # PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP
 650                            #
 651 jim.wunderlich   1.112     # PEGASUS_DISABLE_SLP has been depracated. New use model is:
 652 jim.wunderlich   1.101     #
 653 jim.wunderlich   1.112     # Use PEGASUS_ENABLE_SLP=true  to enable  compilation of SLP functions.
 654                            #
 655 kumpf            1.140     # Use PEGASUS_ENABLE_SLP=false to disable compilation of SLP functions.
 656 jim.wunderlich   1.101     #
 657 kumpf            1.140     # Currently (Aug. 12, 2005) Windows is the only platform that enables SLP
 658 jim.wunderlich   1.101     # by default.
 659                            #
 660                            # NOTE. Effective with Bug # 2633 some platforms enable SLP.
 661 karl             1.75      # To see which platforms look for platform make files that set
 662 kumpf            1.140     # the variable PEGASUS_ENABLE_SLP.
 663 jim.wunderlich   1.101     #
 664                            #
 665 jim.wunderlich   1.112     
 666 karl             1.39      ifdef PEGASUS_ENABLE_SLP
 667 jim.wunderlich   1.101       ifdef PEGASUS_DISABLE_SLP
 668                                $(error Conflicting defines PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP both set)
 669                              endif
 670 jim.wunderlich   1.112     endif
 671                            
 672                            ifdef PEGASUS_DISABLE_SLP
 673                                $(error PEGASUS_DISABLE_SLP has been deprecated. Please use PEGASUS_ENABLE_SLP=[true/false] )
 674                            
 675                            PEGASUS_ENABLE_SLP=false
 676                            
 677                            endif
 678                            
 679                            ifdef PEGASUS_ENABLE_SLP
 680                              ifeq ($(PEGASUS_ENABLE_SLP),true)
 681 david.dillard    1.65          DEFINES += -DPEGASUS_ENABLE_SLP
 682 jim.wunderlich   1.112       else
 683                                ifneq ($(PEGASUS_ENABLE_SLP),false)
 684                                  $(error PEGASUS_ENABLE_SLP ($(PEGASUS_ENABLE_SLP)) invalid, must be true or false)
 685 kumpf            1.140         endif
 686 jim.wunderlich   1.112       endif
 687 karl             1.39      endif
 688 karl             1.36      
 689 jim.wunderlich   1.121     
 690                            ############################################################################
 691                            #
 692                            # PEGASUS_USE_OPENSLP
 693                            #
 694                            # Environment variable to set openslp as SLP environment to use
 695                            # for SLP Directory and User Agents.
 696                            #
 697                            # Allows enabling use of openslp interfaces for slp instead of the
 698                            # internal pegasus slp agent.  Note that this does not disable the
 699                            # compilation of the internal agent code, etc.  However, it assumes
 700                            # openslp is installed on the platform and changes the interfaces
 701                            # to match this.  At this moment, this is a change specifically for
 702                            # adaptec but we expect to generalize it to provide openslp as a
 703                            # generalized alternative to ldapslp.
 704 kumpf            1.140     # to use this. To set this function up,
 705 jim.wunderlich   1.121     #
 706                            # Use this variable in conjunction with PEGASUS_OPENSLP_HOME
 707 kumpf            1.140     # to enable OpenSlp as the slp implementation.
 708 jim.wunderlich   1.121     #
 709                            # NOTE that it has no affect if the PEGASUS_ENABLE_SLP etc. flags are not set.
 710                            #
 711                            
 712                            ifdef PEGASUS_USE_OPENSLP
 713                               ifeq ($(PEGASUS_ENABLE_SLP),true)
 714                                  DEFINES += -DPEGASUS_USE_OPENSLP
 715                                else
 716                                  $(error PEGASUS_USE_OPENSLP defined but PEGASUS_ENABLE_SLP is not true. Please correct this inconsistency)
 717                                endif
 718                            endif
 719                            
 720 dave.sudlik      1.135     # PEP 267
 721                            # SLP reregistration support.
 722                            # PEGASUS_SLP_REG_TIMEOUT is defined as the SLP registration timeout
 723                            # interval, in minutes.
 724                            ifdef PEGASUS_SLP_REG_TIMEOUT
 725                                ifeq ($(PEGASUS_ENABLE_SLP),true)
 726                                   DEFINES += -DPEGASUS_SLP_REG_TIMEOUT=$(PEGASUS_SLP_REG_TIMEOUT)
 727                                 else
 728                                   $(error PEGASUS_SLP_REG_TIMEOUT defined but PEGASUS_ENABLE_SLP is not true. Please correct this inconsistency)
 729                                 endif
 730                             endif
 731 jim.wunderlich   1.121     
 732                            ############################################################################
 733                            #
 734                            # PEGASUS_OPENSLP_HOME
 735                            #
 736                            # Environment variable to set home location for OpenSLP include and library
 737 kumpf            1.140     # files if they are located somewhere other than /usr/include and /usr/lib.
 738 jim.wunderlich   1.121     #
 739                            # PEGASUS_USE_OPENSLP must also be defined for this environment variable
 740                            # to have any effect.
 741                            #
 742 kumpf            1.140     # This is the directory level within which both the include and lib
 743                            # directories holding the OpenSLP files will be found.
 744 jim.wunderlich   1.121     #
 745 kumpf            1.140     # EG: If the are located in /opt/OpenSLP/include and /opt/OpenSLP/lib
 746 jim.wunderlich   1.121     #     then this environment variable should be set to /opt/OpenSLP.
 747                            #
 748                            
 749                            
 750 sushma.fernandes 1.114     #
 751 kumpf            1.140     # Enable this flag to allow the handshake to continue regardless of verification result
 752 sushma.fernandes 1.114     #
 753                            ifdef PEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT
 754                              DEFINES += -DPEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT
 755                            endif
 756                            
 757 karl             1.151     ############################################################################
 758                            #
 759                            # PEGASUS_ENABLE_INTEROP_PROVIDER
 760                            # Enables the interop provider AND the server profile.
 761                            # initially this was activated by setting either the perfinst or slp enable
 762                            # flags.  This allows activating this function without any either perfinst or
 763                            # slp enabled.  Note that if either of these are enabled, this funtion is also
 764                            # enabled
 765                            
 766                            ## if either slp or perfinst are enabled and this is false, flag error
 767                            ## This gets messy because should account for both postive and negative on
 768                            ## interop so we don't get multiples.
 769                            
 770                            ifdef PEGASUS_ENABLE_SLP
 771                                ifeq ($(PEGASUS_ENABLE_SLP),true)
 772                                    ifndef PEGASUS_ENABLE_INTEROP_PROVIDER
 773                                        PEGASUS_ENABLE_INTEROP_PROVIDER = true
 774                                    else
 775                                        ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),false)
 776                                            $(error PEGASUS_ENABLE_INTEROP_PROVIDER ($(PEGASUS_ENABLE_INTEROP_PROVIDER)) invalid, must be true if SLP enabled)
 777                                        endif
 778 karl             1.151             endif
 779                                endif
 780                            endif
 781                            
 782                            ## if PERFINST enabled, set to force interop.
 783                            ifndef PEGASUS_DISABLE_PERFINST
 784                                ifndef PEGASUS_ENABLE_INTEROP_PROVIDER
 785                                    PEGASUS_ENABLE_INTEROP_PROVIDER = true
 786                                else
 787                                    ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),false)
 788                                        $(error PEGASUS_ENABLE_INTEROP_PROVIDER ($(PEGASUS_ENABLE_INTEROP_PROVIDER)) invalid, must be true if PERFINST enabled)
 789                                    endif
 790                                endif
 791                            endif
 792                            
 793                            ifdef PEGASUS_ENABLE_INTEROP_PROVIDER
 794                                ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),true)
 795                                    DEFINES += -DPEGASUS_ENABLE_INTEROP_PROVIDER
 796                                else
 797                                    ifneq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),false)
 798                                        $(error PEGASUS_ENABLE_INTEROP_PROVIDER ($(PEGASUS_ENABLE_INTEROP_PROVIDER)) invalid, must be true or false)
 799 karl             1.151             endif
 800                                endif
 801                            endif
 802                            
 803                            
 804                            ############################################################################
 805 karl             1.60      # set PEGASUS_DEBUG into the DEFINES if it exists.
 806                            # Note that this flag is the general separator between
 807                            # debug compiles and non-debug compiles and controls both
 808                            # the use of any debug options on compilers and linkers
 809                            # and general debug support that we want to be turned on in
 810 chip             1.76      # debug mode.
 811 karl             1.60      ifdef PEGASUS_DEBUG
 812 david.dillard    1.65          DEFINES += -DPEGASUS_DEBUG
 813 kumpf            1.88      
 814                                # Indications debugging options
 815                                ifdef PEGASUS_INDICATION_PERFINST
 816                                    DEFINES += -DPEGASUS_INDICATION_PERFINST
 817                                endif
 818                            
 819                                ifdef PEGASUS_INDICATION_HASHTRACE
 820                                    DEFINES += -DPEGASUS_INDICATION_HASHTRACE
 821                                endif
 822 kumpf            1.131     
 823                                # Setup the conditional compile for client displays.
 824                                ifdef PEGASUS_CLIENT_TRACE_ENABLE
 825                                    DEFINES += -DPEGASUS_CLIENT_TRACE_ENABLE
 826                                endif
 827 karl             1.60      endif
 828                            
 829 chuck            1.42      # compile in the experimental APIs
 830 david.dillard    1.65      DEFINES += -DPEGASUS_USE_EXPERIMENTAL_INTERFACES
 831 chuck            1.42      
 832 kumpf            1.93      # Ensure that the deprecated interfaces are defined in the Pegasus libraries.
 833                            # One may wish to disable these interfaces if binary compatibility with
 834                            # previous Pegasus releases is not required.
 835                            ifndef PEGASUS_DISABLE_DEPRECATED_INTERFACES
 836                                DEFINES += -DPEGASUS_USE_DEPRECATED_INTERFACES
 837                            endif
 838                            
 839 w.white          1.57      # Set compile flag to control compilation of CIMOM statistics
 840 karl             1.73      ifdef PEGASUS_DISABLE_PERFINST
 841 marek            1.136         DEFINES += -DPEGASUS_DISABLE_PERFINST
 842 w.white          1.57      endif
 843 kumpf            1.56      
 844 karl             1.96      # Set compile flag to control compilation of SNIA Extensions
 845                            ifdef PEGASUS_SNIA_EXTENSIONS
 846 marek            1.136         DEFINES += -DPEGASUS_SNIA_EXTENSIONS
 847 karl             1.96      endif
 848                            
 849 denise.eckstein  1.119     ifdef PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER
 850                                ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), true)
 851 marek            1.136             DEFINES += -DPEGASUS_ENABLE_CMPI_PROVIDER_MANAGER
 852 denise.eckstein  1.119         else
 853                                    ifneq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), false)
 854                                        $(error PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER \
 855                                             ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER)) invalid, \
 856                                              must be true or false)
 857                                    endif
 858                                endif
 859                            endif
 860                            
 861 mark.hamzy       1.124     ifdef PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER
 862                                ifeq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), true)
 863 marek            1.136             DEFINES += -DPEGASUS_ENABLE_JMPI_PROVIDER_MANAGER
 864 mark.hamzy       1.124         else
 865                                    ifneq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), false)
 866                                        $(error PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER \
 867                                             ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER)) invalid, \
 868                                              must be true or false)
 869                                    endif
 870                                endif
 871                            endif
 872                            
 873 kumpf            1.95      # Allow remote CMPI functionality to be enabled
 874                            ifdef PEGASUS_ENABLE_REMOTE_CMPI
 875 marek            1.136         DEFINES += -DPEGASUS_ENABLE_REMOTE_CMPI
 876 kumpf            1.95      endif
 877                            
 878 kumpf            1.56      ############################################################
 879                            #
 880                            # Set any vendor-specific compile flags
 881                            #
 882                            ############################################################
 883                            
 884                            ifdef PEGASUS_VENDOR_HP
 885 david.dillard    1.65          DEFINES+= -DPEGASUS_VENDOR_HP
 886 kumpf            1.56      endif
 887                            
 888 chip             1.76      
 889 karl             1.17      ############################################################
 890                            #
 891                            # Set up other Make Variables that depend on platform config files
 892                            #
 893                            ############################################################
 894                            
 895                            # This is temporary until we end up with a better place to
 896                            # put this variable
 897                            # Makefiles can do directory remove with
 898                            # $(RMREPOSITORY) repositoryname
 899                            #
 900                            RMREPOSITORY = $(RMDIRHIER)
 901                            
 902 w.otsuka         1.63      ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS
 903 marek            1.136         DEFINES += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS
 904 w.otsuka         1.62      endif
 905                            
 906                            ifdef PEGASUS_USE_RELEASE_DIRS
 907 marek            1.136         DEFINES += -DPEGASUS_USE_RELEASE_DIRS
 908 w.otsuka         1.62      endif
 909 mday             1.27      
 910 denise.eckstein  1.110     ifdef PEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS
 911 marek            1.136         DEFINES += -DPEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS
 912 denise.eckstein  1.110     endif
 913                            
 914 kumpf            1.64      # Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib
 915                            ifndef PEGASUS_DEST_LIB_DIR
 916 david.dillard    1.65          PEGASUS_DEST_LIB_DIR = lib
 917 kumpf            1.64      endif
 918 mday             1.28      
 919 gs.keenan        1.77      ifeq ($(OS),VMS)
 920                             DEFINES += -DPEGASUS_DEST_LIB_DIR="""$(PEGASUS_DEST_LIB_DIR)"""
 921                            else
 922                             DEFINES += -DPEGASUS_DEST_LIB_DIR=\"$(PEGASUS_DEST_LIB_DIR)\"
 923                            endif
 924                            
 925 w.otsuka         1.79      ################################################################################
 926                            ##
 927 mike             1.105     ## PEGASUS_CLASS_CACHE_SIZE
 928                            ##
 929                            ##     This environment variable gives the size of the class cache used by
 930                            ##     the CIM repository. When it is undefined, the size defaults to something
 931                            ##     relatively small (see src/Pegasus/Repository/CIMRepository.cpp). If
 932                            ##     defined, it gives the size of the class cache. If it is 0 , the class
 933                            ##     cache is not defined compiled in at all.
 934                            ##
 935                            ################################################################################
 936                            
 937                            ifdef PEGASUS_CLASS_CACHE_SIZE
 938                            DEFINES += -DPEGASUS_CLASS_CACHE_SIZE=$(PEGASUS_CLASS_CACHE_SIZE)
 939                            endif
 940                            
 941                            ################################################################################
 942                            ##
 943 w.otsuka         1.79      ## Additional build flags passed in through environment variables.
 944                            ## These flags are added to the compile/link commands.
 945                            ##
 946                            ################################################################################
 947                            
 948                            ifdef PEGASUS_EXTRA_CXX_FLAGS
 949                                EXTRA_CXX_FLAGS = $(PEGASUS_EXTRA_CXX_FLAGS)
 950                            endif
 951                            
 952                            ifdef PEGASUS_EXTRA_C_FLAGS
 953                                EXTRA_C_FLAGS = $(PEGASUS_EXTRA_C_FLAGS)
 954                            endif
 955                            
 956                            ifdef PEGASUS_EXTRA_LINK_FLAGS
 957                                EXTRA_LINK_FLAGS = $(PEGASUS_EXTRA_LINK_FLAGS)
 958                            endif
 959                            
 960 mike             1.126     ##==============================================================================
 961                            ##
 962                            ## By definining PEGASUS_USE_STATIC_LIBRARIES in the environment and STATIC
 963                            ## in the Makefile, a static library is produced rather than a shared one.
 964                            ## PEGASUS_USE_STATIC_LIBRARIES should be "true" or "false".
 965                            ##
 966                            ##==============================================================================
 967                            
 968                            ifdef PEGASUS_USE_STATIC_LIBRARIES
 969                              ifeq ($(PEGASUS_USE_STATIC_LIBRARIES),true)
 970                              else
 971                                ifneq ($(PEGASUS_USE_STATIC_LIBRARIES),false)
 972                                  $(error PEGASUS_USE_STATIC_LIBRARIES ($(PEGASUS_USE_STATIC_LIBRARIES)) invalid, must be true or false)
 973 kumpf            1.140         endif
 974                              endif
 975                            endif
 976                            
 977                            ##==============================================================================
 978                            ##
 979                            ## PEGASUS_ENABLE_PRIVILEGE_SEPARATION
 980                            ##
 981                            ##     Enables privilege separation support (uses the executor process to
 982                            ##     perform privileged operations).
 983                            ##
 984                            ##==============================================================================
 985                            
 986                            ifdef PEGASUS_ENABLE_PRIVILEGE_SEPARATION
 987                              ifeq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),true)
 988                                DEFINES += -DPEGASUS_ENABLE_PRIVILEGE_SEPARATION
 989                              else
 990                                ifneq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),false)
 991                                  $(error PEGASUS_ENABLE_PRIVILEGE_SEPARATION \
 992                                    ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION)) invalid, must be true or false)
 993                                endif
 994 kumpf            1.140       endif
 995                            
 996 kumpf            1.148       ## Defines the user context of the cimservermain process when privilege
 997 kumpf            1.140       ## separation is enabled.
 998 kumpf            1.148       PEGASUS_CIMSERVERMAIN_USER = cimsrvr
 999 kumpf            1.141       DEFINES += -DPEGASUS_CIMSERVERMAIN_USER=\"$(PEGASUS_CIMSERVERMAIN_USER)\"
1000 mike             1.126     endif
1001 mark.hamzy       1.127     
1002 kumpf            1.140     ##==============================================================================
1003                            ##
1004                            ## PEGASUS_USE_PAM_STANDALONE_PROC
1005                            ##
1006                            ##==============================================================================
1007                            
1008                            ifdef PEGASUS_USE_PAM_STANDALONE_PROC
1009                              DEFINES += -DPEGASUS_USE_PAM_STANDALONE_PROC
1010                            endif
1011                            
1012                            ##==============================================================================
1013 mark.hamzy       1.127     
1014                            ifndef PEGASUS_JAVA_CLASSPATH_DELIMITER
1015                                PEGASUS_JAVA_CLASSPATH_DELIMITER = :
1016                            endif
1017 mark.hamzy       1.132     
1018                            ifndef PEGASUS_JVM
1019                            	PEGASUS_JVM = sun
1020                            endif
1021                            ifeq ($(PEGASUS_JVM),gcj)
1022                            	PEGASUS_JAVA_COMPILER		= gcj -C
1023                            	PEGASUS_JAVA_JAR		= fastjar
1024                            	PEGASUS_JAVA_INTERPRETER	= gij
1025                            else
1026                            	PEGASUS_JAVA_COMPILER		= javac -target 1.4 -source 1.4
1027                            	PEGASUS_JAVA_JAR		= jar
1028                            	PEGASUS_JAVA_INTERPRETER	= java
1029                            endif

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2