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

Diff for /pegasus/mak/config.mak between version 1.54 and 1.141.2.1

version 1.54, 2004/07/01 00:09:11 version 1.141.2.1, 2007/06/08 10:28:29
Line 1 
Line 1 
   #//%2006////////////////////////////////////////////////////////////////////////
   #//
   #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
   #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
   #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
   #// IBM Corp.; EMC Corporation, The Open Group.
   #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   #// EMC Corporation; VERITAS Software Corporation; The Open Group.
   #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   #// EMC Corporation; Symantec Corporation; The Open Group.
   #//
   #// Permission is hereby granted, free of charge, to any person obtaining a copy
   #// of this software and associated documentation files (the "Software"), to
   #// deal in the Software without restriction, including without limitation the
   #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
   #// sell copies of the Software, and to permit persons to whom the Software is
   #// furnished to do so, subject to the following conditions:
   #//
   #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
   #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
   #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
   #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
   #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
   #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
   #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
   #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
   #//
   #//==============================================================================
 ################################################################################ ################################################################################
 ## ##
 ## Get external environment variables. Note that all external environment ## Get external environment variables. Note that all external environment
Line 5 
Line 35 
 ## ##
 ################################################################################ ################################################################################
  
   ifndef ROOT
       ROOT =  $(subst \,/,$(PEGASUS_ROOT))
   endif
   
   ifdef PEGASUS_ENVVAR_FILE
       include $(PEGASUS_ENVVAR_FILE)
   else
       include $(ROOT)/env_var.status
   endif
   
 ifdef PEGASUS_HOME ifdef PEGASUS_HOME
   HOME_DIR = $(subst \,/,$(PEGASUS_HOME))   HOME_DIR = $(subst \,/,$(PEGASUS_HOME))
 else else
   ERROR = pegasus_home_undefined      $(error PEGASUS_HOME environment variable undefined)
 pegasus_home_undefined:  
         @ echo PEGASUS_HOME environment variable undefined  
         @ exit 1  
 endif endif
  
 ifdef PEGASUS_ROOT ifdef PEGASUS_ROOT
     ROOT =  $(subst \,/,$(PEGASUS_ROOT))     ROOT =  $(subst \,/,$(PEGASUS_ROOT))
 else else
     ERROR = pegasus_root_undefined      $(error PEGASUS_ROOT environment variable undefined)
 pegasus_root_undefined:  
         @ echo PEGASUS_ROOT environment variable undefined  
         @ exit 1  
 endif endif
  
 # l10n # l10n
Line 40 
Line 74 
   DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_HOME))   DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_HOME))
 endif endif
  
 VALID_PLATFORMS = \  ifdef PEGASUS_DEBUG
     WIN32_IX86_MSVC \       PEGASUS_USE_DEBUG_BUILD_OPTIONS = 1
     LINUX_IX86_GNU \  endif
     LINUX_PPC_GNU \  
     LINUX_IA64_GNU \  PLATFORM_FILES=$(wildcard $(ROOT)/mak/platform*.mak)
     LINUX_ZSERIES_GNU \  PLATFORM_TEMP=$(subst $(ROOT)/mak/platform_,, $(PLATFORM_FILES))
     AIX_RS_IBMCXX \  VALID_PLATFORMS=$(subst .mak,  , $(PLATFORM_TEMP))
     HPUX_PARISC_ACC \  
     HPUX_IA64_ACC \  
     TRU64_ALPHA_DECCXX \  
     SOLARIS_SPARC_GNU \  
     SOLARIS_SPARC_CC \  
     ZOS_ZSERIES_IBM \  
     NSK_NONSTOP_NMCPLUS \  
     DARWIN_PPC_GNU  
  
 ifndef PEGASUS_PLATFORM ifndef PEGASUS_PLATFORM
   ERROR = pegasus_platform_undefined      $(error PEGASUS_PLATFORM environment variable undefined. Please set to\
 pegasus_platform_undefined:          one of the following:$(VALID_PLATFORMS))
         @ echo PEGASUS_PLATFORM environment variable undefined. Please set to\  
             one of the following: $(VALID_PLATFORMS)  
         @ exit 1  
 endif endif
  
 ################################################################################ ################################################################################
   ifeq ($(findstring _GNU, $(PEGASUS_PLATFORM)), _GNU)
       ifdef CXX
         GCC_VERSION = $(shell $(CXX) -dumpversion)
       else
         GCC_VERSION = $(shell g++ -dumpversion)
       endif
   else
       GCC_VERSION =
   endif
  
 OBJ_DIR = $(HOME_DIR)/obj/$(DIR) OBJ_DIR = $(HOME_DIR)/obj/$(DIR)
 BIN_DIR = $(HOME_DIR)/bin BIN_DIR = $(HOME_DIR)/bin
Line 74 
Line 106 
 # define the location for the compiled messages # define the location for the compiled messages
 MSG_ROOT = $(HOME_DIR)/msg MSG_ROOT = $(HOME_DIR)/msg
  
   #############################################################################
   ##  The following REPOSITORY_XXX variables are only used within the
   ## makefiles for building the repository (cimmofl) and running the tests.
   ## They have no effect on CIMconfig initial startup configuration.
   
   #
 # define the location for the repository # define the location for the repository
   #
   # NOTE: There is another variable efined in many of the test makefiles
   # called REPOSITORYDIR. It is a local variable in each of those Makefiles
   # to localally control where the temporay small repository they
   # build, use and then delete is located. Most of the time it is set to TMP_DIR.
   #
   
 REPOSITORY_DIR = $(HOME_DIR) REPOSITORY_DIR = $(HOME_DIR)
 REPOSITORY_ROOT = $(REPOSITORY_DIR)/repository  
   #
   # WARNING: The REPOSITORY_NAME varible is not used by all the test,
   # many of them are still hardcoded to "repository".  What this means
   # is that you can change the repository name and build it. But you
   # cannot run the test without many of them failing
   #
   
   REPOSITORY_NAME = repository
   
   
   REPOSITORY_ROOT = $(REPOSITORY_DIR)/$(REPOSITORY_NAME)
   
   # define the repository mode
   #       XML = XML format
   #       BIN = Binary format
   #
   ifndef PEGASUS_REPOSITORY_MODE
      ## set to default value
      REPOSITORY_MODE = XML
   else
      ## validate assigned value
      ifeq ($(PEGASUS_REPOSITORY_MODE),XML)
          REPOSITORY_MODE = XML
      else
        ifeq ($(PEGASUS_REPOSITORY_MODE),BIN)
         REPOSITORY_MODE = BIN
        else
         $(error PEGASUS_REPOSITORY_MODE ($(PEGASUS_REPOSITORY_MODE)) \
                    is invalid. It must be set to either XML or BIN)
        endif
      endif
   endif
   
   
   ###########################################################################
  
 # The two variables, CIM_SCHEMA_DIR and CIM_SCHEMA_VER, # The two variables, CIM_SCHEMA_DIR and CIM_SCHEMA_VER,
 # are used to control the version of the CIM Schema # are used to control the version of the CIM Schema
Line 92 
Line 172 
 # #
 # To use the PEGASUS_CIM_SCHEMA variable the Schema mof # To use the PEGASUS_CIM_SCHEMA variable the Schema mof
 # files must be placed in the directory # files must be placed in the directory
 # $(PEGAUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)  # $(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
 # #
 # The value of PEGASUS_CIM_SCHEMA must conform to the # The value of PEGASUS_CIM_SCHEMA must conform to the
 # following syntax: # following syntax:
Line 126 
Line 206 
  
 ifdef PEGASUS_CIM_SCHEMA ifdef PEGASUS_CIM_SCHEMA
   CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)   CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
       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),)
          CIM_SCHEMA_VER=
       else
   CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA)))   CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA)))
       endif
 else else
   CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM28      CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM2131
   CIM_SCHEMA_VER=28      CIM_SCHEMA_VER=
 endif endif
  
 ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR))) ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR)))
Line 140 
Line 224 
  
 LEX = flex LEX = flex
  
 ################################################################################  ## ======================================================================
 ## ##
 ## Default installation paths  ## PEGASUS_ENABLE_SORTED_DIFF
   ## This controls if the DIFFSORT function is used rather than a simple DIFF of
   ##  of the test results files to the static results file.
 ## ##
 ################################################################################  ##   Set to "true" enables the sorted diffs of results to static results files.
   ##   otherwise results in regular diffs of results to static results files.
   ##   see bug 2283 for background information concerning this config variable.
   ##
   ##  Defaults to true.
   ##
   ##
   ifndef PEGASUS_ENABLE_SORTED_DIFF
   PEGASUS_ENABLE_SORTED_DIFF=true
   endif
   
   ## ========================================================================
   ## DIFFSORT function definition
   ## Here is an example using the DIFFSORT function:
   ##
   ## difftest: FORCE
   ##      @ test > result
   ##      @ $(call DIFFSORT,result,standard_result)
   ##      @ $(ECHO) +++++ all test passed
   ##
   
   define NL
   
   
   endef
   
   ifndef FORCE_NOCASE
   
   DIFFSORT = $(SORT) $(1) > $(1).tmp $(NL) \
   $(SORT) $(2) > $(2).tmp $(NL) \
   $(DIFF) $(1).tmp $(2).tmp $(NL) \
   $(RM) -f $(1).tmp $(NL) \
   $(RM) -f $(2).tmp $(NL)
   
   else
  
 ## Default values to install files when 'make install' is invoked.  DIFFSORT = $(SORT) -f $(1) > $(1).tmp $(NL) \
   $(SORT) -f $(2) > $(2).tmp $(NL) \
   $(DIFF) -i $(1).tmp $(2).tmp $(NL) \
   $(RM) -f $(1).tmp $(NL) \
   $(RM) -f $(2).tmp $(NL)
  
 ifndef PREFIX  
 PREFIX=$(HOME_DIR)/install  
 endif endif
  
 ifndef SYSCONF_PREFIX  DIFFSORTNOCASE = $(SORT) $(1) > $(1).tmp $(NL) \
 SYSCONF_PREFIX=$(PREFIX)/etc  $(SORT) $(2) > $(2).tmp $(NL) \
   $(DIFF) -i $(1).tmp $(2).tmp $(NL) \
   $(RM) -f $(1).tmp $(NL) \
   $(RM) -f $(2).tmp $(NL)
   
   #
   # The following is used to define the usage message for MakeFile
   #
   # See the pegasus/Makfile for an exampleof its usage.
   #
   USAGE = @$(ECHO) " $(1)"
   
   ################################################################################
   ##
   ## Attempt to include a platform configuration file:
   ##
   ################################################################################
   
   PLATFORM_FILE = $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
   ifneq ($(wildcard $(PLATFORM_FILE)), )
       include $(PLATFORM_FILE)
   else
     $(error  PEGASUS_PLATFORM environment variable must be set to one of\
           the following:$(VALID_PLATFORMS))
 endif endif
  
 ifndef LOCAL_STATE_PREFIX  ################################################################################
 LOCAL_STATE_PREFIX=$(PREFIX)/var/  ##
   ##  Set up any platform independent compile conditionals by adding them to
   ##  precreated FLAGS parameter.
   ##  Assumes that the basic flags have been setup in FLAGS.
   ##  Assumes that compile time flags are controlled with -D CLI option.
   ##
   ################################################################################
   
   
   ################################################################################
   ##
   ## PEGASUS_MAX_THREADS_PER_SVC_QUEUE
   ##
   ## Controls the maximum number of threads allowed per message service queue.
   ##     It is allowed to range between 1 and MAX_THREADS_PER_SVC_QUEUE_LIMIT
   ##     as set in pegasus/src/Pegasus/Common/MessageQueueService.cpp.  If the
   ##     specified value is out of range, MAX_THREADS_PER_SVC_QUEUE_LIMIT is
   ##     used.  The default value is MAX_THREADS_PER_SVC_QUEUE_DEFAULT, as
   ##     defined in pegasus/src/Pegasus/Common/MessageQueueService.cpp.
   ##
   ##      Label                                   Current value
   ##      --------------------------------------  -------------
   ##      MAX_THREADS_PER_SVC_QUEUE_LIMIT         5000
   ##      MAX_THREADS_PER_SVC_QUEUE_DEFAULT       5
   ##
   ##
   
   ifdef PEGASUS_MAX_THREADS_PER_SVC_QUEUE
     DEFINES += -DMAX_THREADS_PER_SVC_QUEUE=$(PEGASUS_MAX_THREADS_PER_SVC_QUEUE)
 endif endif
  
 ifndef DEST_LIB_DIR  ##############################################################################
 DEST_LIB_DIR = $(PREFIX)/lib  ##
   ## PEGASUS_INDICATIONS_Q_THRESHOLD
   ##
   ## Controls if indications providers are stalled if the indications
   ## service queue is too large.
   ##
   ##      defaults to not set.
   ##
   ##      It can be set to any positive value.
   ##
   ## If not set providers are never stalled. This implies that the
   ## indications service queue may become as large as neccesary to hold all
   ## the indicaitons generated.
   ##
   ## If set to any value then providers are stalled by forcing them to sleep
   ## when they try to deliver an indication and the indications service queue
   ## exceeds this value. They are resumed when the queue count falls 10 percent
   ## below this value.
   ##
   ## Stall and resume log entries are made to inform the administrator
   ## the condition has occured.
   ##
   ## WARNING: This also affects the Out of Process Providers (OOP Providers)
   ##    The OOP Providers use two one way pipes for communication.
   ##    By stalling the Provider this prevents the pipe from being read
   ##    which will cause the pipe to fill up and the remote side will block.
   ##    OOP Prividers mix indications and operations on these two pipes.
   ##    This means the operations will also be blocked as a side effect of
   ##    the indications being stalled.
   ##
   ##
   
   ifdef PEGASUS_INDICATIONS_Q_THRESHOLD
     DEFINES += -DPEGASUS_INDICATIONS_Q_THRESHOLD=$(PEGASUS_INDICATIONS_Q_THRESHOLD)
 endif endif
  
 ifndef DEST_BIN_DIR  
 DEST_BIN_DIR = $(PREFIX)/bin  # Allow PEGASUS_ASSERT statements to be disabled.
   ifdef PEGASUS_NOASSERTS
       DEFINES += -DNDEBUG
 endif endif
  
 ifndef DEST_SBIN_DIR  # do not compile trace code. sometimes it causes problems debugging
 DEST_SBIN_DIR = $(PREFIX)/sbin  ifdef PEGASUS_REMOVE_TRACE
       DEFINES += -DPEGASUS_REMOVE_TRACE
 endif endif
  
 ifndef DEST_ETC_DIR  # PEP 161
 DEST_ETC_DIR = $(SYSCONF_PREFIX)/pegasus  # Control whether utf-8 filenames are supported by the repository
   ifdef PEGASUS_SUPPORT_UTF8_FILENAME
       DEFINES += -DPEGASUS_SUPPORT_UTF8_FILENAME
   
       # Control whether utf-8 filenames in the repository are escaped
       ifdef PEGASUS_REPOSITORY_ESCAPE_UTF8
           DEFINES += -DPEGASUS_REPOSITORY_ESCAPE_UTF8
       endif
 endif endif
  
 ifndef DEST_MAN_DIR  #
 DEST_MAN_DIR = $(PREFIX)/man  # PEP 142
   # The following flag need to be set to enable
   # user group authorization functionality.
   #
   ifdef PEGASUS_ENABLE_USERGROUP_AUTHORIZATION
       DEFINES += -DPEGASUS_ENABLE_USERGROUP_AUTHORIZATION
 endif endif
  
 ifndef DEST_VAR_DIR  #
 DEST_VAR_DIR = $(LOCAL_STATE_PREFIX)  # PEP 193
   # The following flag need to be set to disable
   # CQL in indication subscriptions
   #
   ifdef PEGASUS_DISABLE_CQL
       DEFINES += -DPEGASUS_DISABLE_CQL
 endif endif
  
 ################################################################################  #
 ##  # PEP 186
 ## Attempt to include a platform configuration file:  # Allow override of product name/version/status.  A file
 ##  # pegasus/src/Pegasus/Common/ProductVersion.h must exist when this
 ################################################################################  # flag is defined.
   #
   ifdef PEGASUS_OVERRIDE_PRODUCT_ID
       DEFINES += -DPEGASUS_OVERRIDE_PRODUCT_ID
   endif
  
 ifeq ($(PEGASUS_PLATFORM),WIN32_IX86_MSVC)  #
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  # PEP 72
   FOUND = true  # Allow Out-of-Process Providers to be disabled by default
   #
   ifdef PEGASUS_DEFAULT_ENABLE_OOP
     ifeq ($(PEGASUS_DEFAULT_ENABLE_OOP),true)
       DEFINES += -DPEGASUS_DEFAULT_ENABLE_OOP
     else
       ifneq ($(PEGASUS_DEFAULT_ENABLE_OOP),false)
         $(error PEGASUS_DEFAULT_ENABLE_OOP ($(PEGASUS_DEFAULT_ENABLE_OOP)) invalid, must be true or false)
       endif
     endif
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),LINUX_IX86_GNU)  #
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  # Allow to define the default value for the Provider User Context
   FOUND = true  # property as REQUESTOR.
   # If is set and true use REQUESTOR
   # If is not set or false use PRIVILEGED
   #
   ifdef PEGASUS_DEFAULT_USERCTXT_REQUESTOR
     ifeq ($(PEGASUS_DEFAULT_USERCTXT_REQUESTOR),true)
       DEFINES += -DPEGASUS_DEFAULT_USERCTXT_REQUESTOR
     else
       ifneq ($(PEGASUS_DEFAULT_USERCTXT_REQUESTOR),false)
         $(error PEGASUS_DEFAULT_USERCTXT_REQUESTOR ($(PEGASUS_DEFAULT_USERCTXT_REQUESTOR)) invalid, must be true or false)
       endif
     endif
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),LINUX_PPC_GNU)  #
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  # PEP 197
   FOUND = true  # Allow the Provider User Context feature to be disabled.
   #
   ifdef PEGASUS_DISABLE_PROV_USERCTXT
       DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),LINUX_IA64_GNU)  # Bug 2147
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  # Allow local domain socket usage to be disabled.
   FOUND = true  ifdef PEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET
       DEFINES += -DPEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),LINUX_ZSERIES_GNU)  # PEP 211
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  # Controls object normalization support.
   FOUND = true  ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION
       DEFINES += -DPEGASUS_ENABLE_OBJECT_NORMALIZATION
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX)  # PEP 233
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  # Controls support for EmbeddedInstance properties
   FOUND = true  # and parameters
   ifndef PEGASUS_EMBEDDED_INSTANCE_SUPPORT
       PEGASUS_EMBEDDED_INSTANCE_SUPPORT = true
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),HPUX_PARISC_ACC)  ifeq ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT), true)
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak      DEFINES += -DPEGASUS_EMBEDDED_INSTANCE_SUPPORT
   FOUND = true  else
       ifneq ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT), false)
           $(error PEGASUS_EMBEDDED_INSTANCE_SUPPORT ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT)) invalid, must be true or false)
       endif
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),HPUX_IA64_ACC)  
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  # Allow ExecQuery functionality to be enabled
   FOUND = true  ifndef PEGASUS_ENABLE_EXECQUERY
       DEFINES += -DPEGASUS_DISABLE_EXECQUERY
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),TRU64_ALPHA_DECCXX)  # Allow System Log Handler to be enabled
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  ifdef PEGASUS_ENABLE_SYSTEM_LOG_HANDLER
   FOUND = true    DEFINES += -DPEGASUS_ENABLE_SYSTEM_LOG_HANDLER
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),SOLARIS_SPARC_GNU)  # Allow Email Handler to be enabled
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  ifdef PEGASUS_ENABLE_EMAIL_HANDLER
   FOUND = true    DEFINES += -DPEGASUS_ENABLE_EMAIL_HANDLER
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),SOLARIS_SPARC_CC)  # Allow qualifiers to be disabled for instance operations
   include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  ifdef PEGASUS_DISABLE_INSTANCE_QUALIFIERS
   FOUND = true    DEFINES += -DPEGASUS_DISABLE_INSTANCE_QUALIFIERS
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),ZOS_ZSERIES_IBM)  # Controls snmp indication handler to use NET-SNMP to deliver trap
    include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  ifdef PEGASUS_USE_NET_SNMP
    FOUND = true    DEFINES += -DPEGASUS_USE_NET_SNMP
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),NSK_NONSTOP_NMCPLUS)  ifdef PEGASUS_HAS_SSL
    include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak   ifndef OPENSSL_BIN
    FOUND = true      OPENSSL_BIN = $(OPENSSL_HOME)/bin
    endif
    ifndef OPENSSL_COMMAND
       OPENSSL_COMMAND = $(OPENSSL_BIN)/openssl
    endif
    ifndef OPENSSL_SET_SERIAL_SUPPORTED
       ifneq (, $(findstring 0.9.6, $(shell $(OPENSSL_COMMAND) version)))
           OPENSSL_SET_SERIAL_SUPPORTED = false
       else
           OPENSSL_SET_SERIAL_SUPPORTED = true
       endif
 endif endif
  
 ifeq ($(PEGASUS_PLATFORM),DARWIN_PPC_GNU)  # Enable CRL verification
    include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak  ifndef PEGASUS_ENABLE_SSL_CRL_VERIFICATION
    FOUND = true      PEGASUS_ENABLE_SSL_CRL_VERIFICATION = true
 endif endif
  
 ifneq ($(FOUND),true)  # Check for Enable SSL CRL verification
   ERROR = pegasus_unknown_platform  ifdef PEGASUS_ENABLE_SSL_CRL_VERIFICATION
 pegasus_unknown_platform:      ifeq ($(PEGASUS_ENABLE_SSL_CRL_VERIFICATION), true)
         @ echo PEGASUS_PLATFORM environment variable must be set to one of\          DEFINES += -DPEGASUS_ENABLE_SSL_CRL_VERIFICATION
             the following: $(VALID_PLATFORMS)      else
         @ exit 1          ifneq ($(PEGASUS_ENABLE_SSL_CRL_VERIFICATION), false)
               $(error PEGASUS_ENABLE_SSL_CRL_VERIFICATION\
                    ($(PEGASUS_ENABLE_SSL_CRL_VERIFICATION)) invalid, \
                     must be true or false)
           endif
       endif
   endif
 endif endif
  
 ################################################################################  #
 ##  # PEP 258
 ## Default installation macros  # Allow Audit Logger to be disabled
 ##  #
 ################################################################################  ifdef PEGASUS_DISABLE_AUDIT_LOGGER
     ifeq ($(PEGASUS_DISABLE_AUDIT_LOGGER),true)
       DEFINES += -DPEGASUS_DISABLE_AUDIT_LOGGER
     else
       ifneq ($(PEGASUS_DISABLE_AUDIT_LOGGER),false)
         $(error PEGASUS_DISABLE_AUDIT_LOGGER ($(PEGASUS_DISABLE_AUDIT_LOGGER)) \
          invalid, must be true or false)
       endif
     endif
   endif
  
 ## INSTALL_LIB creates the destination directory if missing,  
 ## copies the library and generates the symbolic link.  
  
 ifndef INSTALL_LIBRARY  #
 ## These macros are also defined in the Platform_<*>.mak files.  # PEP 291
 INSTALL_LIBRARY =  $(MKDIRHIER) $(DEST_LIB_DIR); $(COPY) $(FULL_LIB) $(DEST_LIB_DIR)  # IPV6 Support for pegaus, Phase 1
   #
   ifdef PEGASUS_DISABLE_IPV6
     ifeq ($(PEGASUS_DISABLE_IPV6),true)
       DEFINES += -DPEGASUS_DISABLE_IPV6
     else
       ifneq ($(PEGASUS_DISABLE_IPV6),false)
         $(error PEGASUS_DISABLE_IPV6 ($(PEGASUS_DISABLE_IPV6)) \
          invalid, must be true or false)
 endif endif
     endif
   endif
   
   #
   # PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP
   #
   # PEGASUS_DISABLE_SLP has been depracated. New use model is:
   #
   # Use PEGASUS_ENABLE_SLP=true  to enable  compilation of SLP functions.
   #
   # Use PEGASUS_ENABLE_SLP=false to disable compilation of SLP functions.
   #
   # Currently (Aug. 12, 2005) Windows is the only platform that enables SLP
   # by default.
   #
   # NOTE. Effective with Bug # 2633 some platforms enable SLP.
   # To see which platforms look for platform make files that set
   # the variable PEGASUS_ENABLE_SLP.
   #
   #
  
 ## INSTALL_PROGRAM creates the destination directory if missing and  ifdef PEGASUS_ENABLE_SLP
 ## copies the file.    ifdef PEGASUS_DISABLE_SLP
 ifndef INSTALL_PROGRAM      $(error Conflicting defines PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP both set)
 INSTALL_PROGRAM = $(MKDIRHIER) $(DEST_BIN_DIR); $(COPY) $(FULL_PROGRAM) $(DEST_BIN_DIR)  
 endif endif
 ## INSTALL_PROGRAM creates the destination directory if missing and  
 ## copies the file.  
 ifndef INSTALL_SBIN_PROGRAM  
 INSTALL_SBIN_PROGRAM = $(MKDIRHIER) $(DEST_SBIN_DIR);  $(COPY) $(FULL_PROGRAM) $(DEST_SBIN_DIR)  
 endif endif
 ## The rest of the macros for DEST_MAN_DIR, DEST_VAR_DIR, etc. are not provided in this file.  
  
 ################################################################################  ifdef PEGASUS_DISABLE_SLP
 ##      $(error PEGASUS_DISABLE_SLP has been deprecated. Please use PEGASUS_ENABLE_SLP=[true/false] )
 ##  Set up any platform independent compile conditionals by adding them to  
 ##  precreated FLAGS parameter.  PEGASUS_ENABLE_SLP=false
 ##  Assumes that the basic flags have been setup in FLAGS.  
 ##  Assumes that compile time flags are controlled with -D CLI option.  
 ##  
 ################################################################################  
  
 # Setup the conditional compile for client displays.  
 #  
 ifdef PEGASUS_CLIENT_TRACE_ENABLE  
   DEFINES+= -DPEGASUS_CLIENT_TRACE_ENABLE  
 endif endif
  
 # do not compile trace code. sometimes it causes problems debugging  ifdef PEGASUS_ENABLE_SLP
 ifdef PEGASUS_REMOVE_TRACE    ifeq ($(PEGASUS_ENABLE_SLP),true)
         DEFINES+= -DPEGASUS_REMOVE_TRACE      DEFINES += -DPEGASUS_ENABLE_SLP
     else
       ifneq ($(PEGASUS_ENABLE_SLP),false)
         $(error PEGASUS_ENABLE_SLP ($(PEGASUS_ENABLE_SLP)) invalid, must be true or false)
       endif
     endif
 endif endif
  
 # PEP 123 use monitor2 (the default) or not  
 #ifdef PEGASUS_USE_23HTTPMONITOR_SERVER  
 DEFINES+= -DPEGASUS_USE_23HTTPMONITOR_SERVER  
 #endif  
   
 #BUG 1170 Monitor2 Client Workaround  
 #ifdef PEGASUS_USE_23HTTPMONITOR_CLIENT  
 DEFINES+= -DPEGASUS_USE_23HTTPMONITOR_CLIENT  
 #endif  
  
 # PEP 161  ############################################################################
 # Control whether utf-8 filenames are supported by the repository  #
 ifdef PEGASUS_SUPPORT_UTF8_FILENAME  # PEGASUS_USE_OPENSLP
         DEFINES+= -DPEGASUS_SUPPORT_UTF8_FILENAME  #
   # Environment variable to set openslp as SLP environment to use
   # for SLP Directory and User Agents.
   #
   # Allows enabling use of openslp interfaces for slp instead of the
   # internal pegasus slp agent.  Note that this does not disable the
   # compilation of the internal agent code, etc.  However, it assumes
   # openslp is installed on the platform and changes the interfaces
   # to match this.  At this moment, this is a change specifically for
   # adaptec but we expect to generalize it to provide openslp as a
   # generalized alternative to ldapslp.
   # to use this. To set this function up,
   #
   # Use this variable in conjunction with PEGASUS_OPENSLP_HOME
   # to enable OpenSlp as the slp implementation.
   #
   # NOTE that it has no affect if the PEGASUS_ENABLE_SLP etc. flags are not set.
   #
  
         # Control whether utf-8 filenames in the repository are escaped  ifdef PEGASUS_USE_OPENSLP
         ifdef PEGASUS_REPOSITORY_ESCAPE_UTF8     ifeq ($(PEGASUS_ENABLE_SLP),true)
         DEFINES+= -DPEGASUS_REPOSITORY_ESCAPE_UTF8        DEFINES += -DPEGASUS_USE_OPENSLP
       else
         $(error PEGASUS_USE_OPENSLP defined but PEGASUS_ENABLE_SLP is not true. Please correct this inconsistency)
       endif
   endif
   
   # PEP 267
   # SLP reregistration support.
   # PEGASUS_SLP_REG_TIMEOUT is defined as the SLP registration timeout
   # interval, in minutes.
   ifdef PEGASUS_SLP_REG_TIMEOUT
       ifeq ($(PEGASUS_ENABLE_SLP),true)
          DEFINES += -DPEGASUS_SLP_REG_TIMEOUT=$(PEGASUS_SLP_REG_TIMEOUT)
        else
          $(error PEGASUS_SLP_REG_TIMEOUT defined but PEGASUS_ENABLE_SLP is not true. Please correct this inconsistency)
         endif         endif
 endif endif
  
   ############################################################################
 # #
 # PEP 142  # PEGASUS_OPENSLP_HOME
 # The following flag need to be set to enable  
 # user group authorization functionality.  
 # #
 ifdef PEGASUS_ENABLE_USERGROUP_AUTHORIZATION  # Environment variable to set home location for OpenSLP include and library
  DEFINES += -DPEGASUS_ENABLE_USERGROUP_AUTHORIZATION  # files if they are located somewhere other than /usr/include and /usr/lib.
   #
   # PEGASUS_USE_OPENSLP must also be defined for this environment variable
   # to have any effect.
   #
   # This is the directory level within which both the include and lib
   # directories holding the OpenSLP files will be found.
   #
   # EG: If the are located in /opt/OpenSLP/include and /opt/OpenSLP/lib
   #     then this environment variable should be set to /opt/OpenSLP.
   #
   
   
   #
   # Enable this flag to allow the handshake to continue regardless of verification result
   #
   ifdef PEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT
     DEFINES += -DPEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT
 endif endif
  
   # set PEGASUS_DEBUG into the DEFINES if it exists.
   # Note that this flag is the general separator between
   # debug compiles and non-debug compiles and controls both
   # the use of any debug options on compilers and linkers
   # and general debug support that we want to be turned on in
   # debug mode.
   ifdef PEGASUS_DEBUG
       DEFINES += -DPEGASUS_DEBUG
  
 # setup function to enable SLP functions in the Pegasus standard compile      # Indications debugging options
 # Set the environment varaible PEGASUS_ENABLE_SLP to enable SLP code.      ifdef PEGASUS_INDICATION_PERFINST
 ifdef PEGASUS_ENABLE_SLP          DEFINES += -DPEGASUS_INDICATION_PERFINST
   DEFINES+= -DPEGASUS_ENABLE_SLP      endif
   
       ifdef PEGASUS_INDICATION_HASHTRACE
           DEFINES += -DPEGASUS_INDICATION_HASHTRACE
       endif
   
       # Setup the conditional compile for client displays.
       ifdef PEGASUS_CLIENT_TRACE_ENABLE
           DEFINES += -DPEGASUS_CLIENT_TRACE_ENABLE
       endif
 endif endif
  
 # compile in the experimental APIs # compile in the experimental APIs
 DEFINES+= -DPEGASUS_USE_EXPERIMENTAL_INTERFACES DEFINES+= -DPEGASUS_USE_EXPERIMENTAL_INTERFACES
  
   # Ensure that the deprecated interfaces are defined in the Pegasus libraries.
   # One may wish to disable these interfaces if binary compatibility with
   # previous Pegasus releases is not required.
   ifndef PEGASUS_DISABLE_DEPRECATED_INTERFACES
       DEFINES += -DPEGASUS_USE_DEPRECATED_INTERFACES
   endif
   
   # Set compile flag to control compilation of CIMOM statistics
   ifdef PEGASUS_DISABLE_PERFINST
       DEFINES += -DPEGASUS_DISABLE_PERFINST
   endif
   
   # Set compile flag to control compilation of SNIA Extensions
   ifdef PEGASUS_SNIA_EXTENSIONS
       DEFINES += -DPEGASUS_SNIA_EXTENSIONS
   endif
   
   ifdef PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER
       ifeq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), true)
           DEFINES += -DPEGASUS_ENABLE_CMPI_PROVIDER_MANAGER
       else
           ifneq ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER), false)
               $(error PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER \
                    ($(PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER)) invalid, \
                     must be true or false)
           endif
       endif
   endif
   
   ifdef PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER
       ifeq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), true)
           DEFINES += -DPEGASUS_ENABLE_JMPI_PROVIDER_MANAGER
       else
           ifneq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), false)
               $(error PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER \
                    ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER)) invalid, \
                     must be true or false)
           endif
       endif
   endif
   
   # Allow remote CMPI functionality to be enabled
   ifdef PEGASUS_ENABLE_REMOTE_CMPI
       DEFINES += -DPEGASUS_ENABLE_REMOTE_CMPI
   endif
   
   ############################################################
   #
   # Set any vendor-specific compile flags
   #
   ############################################################
   
   ifdef PEGASUS_VENDOR_HP
       DEFINES+= -DPEGASUS_VENDOR_HP
   endif
   
  
 ############################################################ ############################################################
 # #
Line 368 
Line 782 
 # #
 RMREPOSITORY = $(RMDIRHIER) RMREPOSITORY = $(RMDIRHIER)
  
   ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS
       DEFINES += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS
   endif
   
   ifdef PEGASUS_USE_RELEASE_DIRS
       DEFINES += -DPEGASUS_USE_RELEASE_DIRS
   endif
   
   ifdef PEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS
       DEFINES += -DPEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS
   endif
   
   # Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib
   ifndef PEGASUS_DEST_LIB_DIR
       PEGASUS_DEST_LIB_DIR = lib
   endif
   
   ifeq ($(OS),VMS)
    DEFINES += -DPEGASUS_DEST_LIB_DIR="""$(PEGASUS_DEST_LIB_DIR)"""
   else
    DEFINES += -DPEGASUS_DEST_LIB_DIR=\"$(PEGASUS_DEST_LIB_DIR)\"
   endif
   
   ################################################################################
   ##
   ## PEGASUS_CLASS_CACHE_SIZE
   ##
   ##     This environment variable gives the size of the class cache used by
   ##     the CIM repository. When it is undefined, the size defaults to something
   ##     relatively small (see src/Pegasus/Repository/CIMRepository.cpp). If
   ##     defined, it gives the size of the class cache. If it is 0 , the class
   ##     cache is not defined compiled in at all.
   ##
   ################################################################################
   
   ifdef PEGASUS_CLASS_CACHE_SIZE
   DEFINES += -DPEGASUS_CLASS_CACHE_SIZE=$(PEGASUS_CLASS_CACHE_SIZE)
   endif
   
   ################################################################################
   ##
   ## Additional build flags passed in through environment variables.
   ## These flags are added to the compile/link commands.
   ##
   ################################################################################
   
   ifdef PEGASUS_EXTRA_CXX_FLAGS
       EXTRA_CXX_FLAGS = $(PEGASUS_EXTRA_CXX_FLAGS)
   endif
   
   ifdef PEGASUS_EXTRA_C_FLAGS
       EXTRA_C_FLAGS = $(PEGASUS_EXTRA_C_FLAGS)
   endif
   
   ifdef PEGASUS_EXTRA_LINK_FLAGS
       EXTRA_LINK_FLAGS = $(PEGASUS_EXTRA_LINK_FLAGS)
   endif
  
   ##==============================================================================
   ##
   ## By definining PEGASUS_USE_STATIC_LIBRARIES in the environment and STATIC
   ## in the Makefile, a static library is produced rather than a shared one.
   ## PEGASUS_USE_STATIC_LIBRARIES should be "true" or "false".
   ##
   ##==============================================================================
  
   ifdef PEGASUS_USE_STATIC_LIBRARIES
     ifeq ($(PEGASUS_USE_STATIC_LIBRARIES),true)
     else
       ifneq ($(PEGASUS_USE_STATIC_LIBRARIES),false)
         $(error PEGASUS_USE_STATIC_LIBRARIES ($(PEGASUS_USE_STATIC_LIBRARIES)) invalid, must be true or false)
       endif
     endif
   endif
  
   ##==============================================================================
   ##
   ## PEGASUS_ENABLE_PRIVILEGE_SEPARATION
   ##
   ##     Enables privilege separation support (uses the executor process to
   ##     perform privileged operations).
   ##
   ##==============================================================================
   
   ifdef PEGASUS_ENABLE_PRIVILEGE_SEPARATION
     ifeq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),true)
       DEFINES += -DPEGASUS_ENABLE_PRIVILEGE_SEPARATION
     else
       ifneq ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION),false)
         $(error PEGASUS_ENABLE_PRIVILEGE_SEPARATION \
           ($(PEGASUS_ENABLE_PRIVILEGE_SEPARATION)) invalid, must be true or false)
       endif
     endif
   
     ## Specifies the user context of the cimservermain process when privilege
     ## separation is enabled.
     ifndef PEGASUS_CIMSERVERMAIN_USER
       PEGASUS_CIMSERVERMAIN_USER = pegasus
     endif
     DEFINES += -DPEGASUS_CIMSERVERMAIN_USER=\"$(PEGASUS_CIMSERVERMAIN_USER)\"
   endif
   
   ##==============================================================================
   ##
   ## PEGASUS_USE_PAM_STANDALONE_PROC
   ##
   ##==============================================================================
   
   ifdef PEGASUS_USE_PAM_STANDALONE_PROC
     DEFINES += -DPEGASUS_USE_PAM_STANDALONE_PROC
   endif
   
   ##==============================================================================
   
   ifndef PEGASUS_JAVA_CLASSPATH_DELIMITER
       PEGASUS_JAVA_CLASSPATH_DELIMITER = :
   endif
   
   ifndef PEGASUS_JVM
           PEGASUS_JVM = sun
   endif
   ifeq ($(PEGASUS_JVM),gcj)
           PEGASUS_JAVA_COMPILER           = gcj -C
           PEGASUS_JAVA_JAR                = fastjar
           PEGASUS_JAVA_INTERPRETER        = gij
   else
           PEGASUS_JAVA_COMPILER           = javac -target 1.4 -source 1.4
           PEGASUS_JAVA_JAR                = jar
           PEGASUS_JAVA_INTERPRETER        = java
   endif


Legend:
Removed from v.1.54  
changed lines
  Added in v.1.141.2.1

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2