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

Diff for /pegasus/mak/config.mak between version 1.4 and 1.86

version 1.4, 2001/02/11 05:45:33 version 1.86, 2005/03/19 04:01:37
Line 5 
Line 5 
 ## ##
 ################################################################################ ################################################################################
  
 ifdef PEGASUS_OS_TYPE  ifndef ROOT
   OS_TYPE = $(PEGASUS_OS_TYPE)      ROOT =  $(subst \,/,$(PEGASUS_ROOT))
   endif
   
   ifdef PEGASUS_ENVVAR_FILE
       include $(PEGASUS_ENVVAR_FILE)
 else else
   OS_TYPE = windows      include $(ROOT)/env_var.status
 endif 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:  endif
         @ echo PEGASUS_HOME environment variable undefined  
         @ exit 1  ifdef PEGASUS_ROOT
       ROOT =  $(subst \,/,$(PEGASUS_ROOT))
   else
       $(error PEGASUS_ROOT environment variable undefined)
   endif
   
   # l10n
   ifdef ICU_ROOT
       ICUROOT =  $(subst \,/,$(ICU_ROOT))
   endif
   
   ifdef PEGASUS_TMP
       TMP_DIR = $(subst \,/,$(PEGASUS_TMP))
   else
       TMP_DIR = .
 endif endif
  
 ifdef PEGASUS_ACE_ROOT  ifdef PEGASUS_DISPLAYCONSUMER_DIR
   ACE_ROOT = $(subst \,/,$(PEGASUS_ACE_ROOT))      DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_DISPLAYCONSUMER_DIR))
 else  else
   ERROR = pegasus_ace_root_undefined      DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_HOME))
 pegasus_ace_root_undefined:  
         @ echo PEGASUS_ACE_ROOT environment variable undefined  
         @ exit 1  
 endif endif
  
   PLATFORM_FILES=$(wildcard $(ROOT)/mak/platform*.mak)
   PLATFORM_TEMP=$(subst $(ROOT)/mak/platform_,, $(PLATFORM_FILES))
   VALID_PLATFORMS=$(subst .mak,, $(PLATFORM_TEMP))
   
   ifndef PEGASUS_PLATFORM
       $(error PEGASUS_PLATFORM environment variable undefined. Please set to\
           one of the following:$(VALID_PLATFORMS))
   endif
  
 ################################################################################ ################################################################################
  
 OBJ_DIR = $(HOME_DIR)/obj/$(DIR) OBJ_DIR = $(HOME_DIR)/obj/$(DIR)
 BIN_DIR = $(HOME_DIR)/bin BIN_DIR = $(HOME_DIR)/bin
 LIB_DIR = $(HOME_DIR)/lib LIB_DIR = $(HOME_DIR)/lib
 REPOSITORY_ROOT = $(HOME_DIR)  
  
 ifeq ($(OS_TYPE),windows)  # l10n
 include $(ROOT)/mak/config-windows.mak  # define the location for the compiled messages
   MSG_ROOT = $(HOME_DIR)/msg
   
   # define the location for the repository
   REPOSITORY_DIR = $(HOME_DIR)
   REPOSITORY_NAME = repository
   REPOSITORY_ROOT = $(REPOSITORY_DIR)/$(REPOSITORY_NAME)
   
   # define the repository mode
   #       XML = XML format
   #       BIN = Binary format
   #
   REPOSITORY_MODE = XML
   
   # The two variables, CIM_SCHEMA_DIR and CIM_SCHEMA_VER,
   # are used to control the version of the CIM Schema
   # loaded into the Pegasus Internal, InterOp,
   # root/cimv2 and various test namespaces.
   #
   # Update the following two environment variables to
   # change the version.
   
   # The environment variable PEGASUS_CIM_SCHEMA can be used
   # to change the values of CIM_SCHEMA_DIR, CIM_SCHEMA_VER
   # and ALLOW_EXPERIMENTAL.
   #
   # To use the PEGASUS_CIM_SCHEMA variable the Schema mof
   # files must be placed in the directory
   # $(PEGAUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
   #
   # The value of PEGASUS_CIM_SCHEMA must conform to the
   # following syntax:
   #
   #        CIM[Prelim]<CIM_SCHEMA_VER>
   #
   # The string "Prelim" should be included if the
   # Schema contains "Experimental" class definitions.
   #
   # The value of <CIM_SCHEMA_VER> must be the value
   # of the version string included by the DMTF as
   # part of the mof file names (e.g, CIM_Core27.mof).
   # Therefore, for example, the value of <CIM_SCHEMA_VER>
   # for CIM27 Schema directories MUST be 27.
   #
   # Examples of valid values of PEGASUS_CIM_SCHEMA
   # include CIMPrelim27, CIM27, CIMPrelim28, and CIM28.
   #
   # Note the CIMPrelim271 would NOT be a valid value
   # for PEGASUS_CIM_SCHEMA because the version string
   # portion of the mof files (e.g., CIM_Core27.mof) in
   # the CIMPrelimin271 directory is 27 not 271.
   
   # ***** CIM_SCHEMA_DIR INFO ****
   # If CIM_SCHEMA_DIR changes to use a preliminary schema which
   # has experimentals make sure and change the path below to appopriate
   # directory path.  Example:  CIMPrelim271 is preliminary and has
   # experimental classes.  Since experimental classes exist the -aE
   # option of the mof compiler needs to be set.
   # *****
   
   ifdef 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)))
       endif
 else else
 include $(ROOT)/mak/config-unix.mak      CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM29
       CIM_SCHEMA_VER=
 endif endif
   
   ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR)))
       ALLOW_EXPERIMENTAL = -aE
   else
       ALLOW_EXPERIMENTAL =
   endif
   
   LEX = flex
   
   ## ========================================================================
   ## 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
   
   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)
   
   
   ################################################################################
   ##
   ## 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
   
   ################################################################################
   ##
   ##  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.
   ##
   ################################################################################
   
   # Setup the conditional compile for client displays.
   #
   ifdef PEGASUS_CLIENT_TRACE_ENABLE
       DEFINES += -DPEGASUS_CLIENT_TRACE_ENABLE
   endif
   
   # do not compile trace code. sometimes it causes problems debugging
   ifdef PEGASUS_REMOVE_TRACE
       DEFINES += -DPEGASUS_REMOVE_TRACE
   endif
   
   # PEP 161
   # 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
   
   #
   # 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
   
   #
   # PEP 193
   # The following flag need to be set to disable
   # CQL in indication subscriptions
   #
   ifdef PEGASUS_DISABLE_CQL
       DEFINES += -DPEGASUS_DISABLE_CQL
   endif
   
   #
   # PEP 186
   # 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
   
   #
   # PEP 197
   # Allow the Provider User Context feature to be disabled.
   #
   ifdef PEGASUS_DISABLE_PROV_USERCTXT
       DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT
   else
       ifdef PEGASUS_DISABLE_PROV_USERCTXT_REQUESTOR
           DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_REQUESTOR
       endif
       ifdef PEGASUS_DISABLE_PROV_USERCTXT_DESIGNATED
           DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_DESIGNATED
       endif
       ifdef PEGASUS_DISABLE_PROV_USERCTXT_PRIVILEGED
           DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_PRIVILEGED
       endif
       ifdef PEGASUS_DISABLE_PROV_USERCTXT_CIMSERVER
           DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_CIMSERVER
       endif
   endif
   
   # PEP 211
   # Controls object normalization support.
   ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION
       DEFINES += -DPEGASUS_ENABLE_OBJECT_NORMALIZATION
   endif
   
   # Allow ExecQuery functionality to be enabled
   ifndef PEGASUS_ENABLE_EXECQUERY
       DEFINES += -DPEGASUS_DISABLE_EXECQUERY
   endif
   
   # Allow System Log Handler to be enabled
   ifdef PEGASUS_ENABLE_SYSTEM_LOG_HANDLER
     DEFINES += -DPEGASUS_ENABLE_SYSTEM_LOG_HANDLER
   endif
   
   # Allow Email Handler to be enabled
   ifdef PEGASUS_ENABLE_EMAIL_HANDLER
     DEFINES += -DPEGASUS_ENABLE_EMAIL_HANDLER
   endif
   
   # setup function to enable SLP functions in the Pegasus standard compile
   # Set the environment varaible PEGASUS_ENABLE_SLP to enable SLP code.
   # NOTE. Effective with Bug # 2633 some platforms now enable SLP.
   # To see which platforms look for platform make files that set
   # the variable PEGASUS_ENABLE_SLP
   ifdef PEGASUS_ENABLE_SLP
       DEFINES += -DPEGASUS_ENABLE_SLP
   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
   endif
   
   # compile in the experimental APIs
   DEFINES += -DPEGASUS_USE_EXPERIMENTAL_INTERFACES
   
   # Set compile flag to control compilation of CIMOM statistics
   ifdef PEGASUS_DISABLE_PERFINST
       FLAGS += -DPEGASUS_DISABLE_PERFINST
   endif
   
   ############################################################
   #
   # Set any vendor-specific compile flags
   #
   ############################################################
   
   ifdef PEGASUS_VENDOR_HP
       DEFINES+= -DPEGASUS_VENDOR_HP
   endif
   
   
   ############################################################
   #
   # Set up other Make Variables that depend on platform config files
   #
   ############################################################
   
   # This is temporary until we end up with a better place to
   # put this variable
   # Makefiles can do directory remove with
   # $(RMREPOSITORY) repositoryname
   #
   RMREPOSITORY = $(RMDIRHIER)
   
   ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS
       FLAGS += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS
   endif
   
   ifdef PEGASUS_USE_RELEASE_DIRS
       FLAGS += -DPEGASUS_USE_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
   
   ################################################################################
   ##
   ## 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
   


Legend:
Removed from v.1.4  
changed lines
  Added in v.1.86

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2