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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2