version 1.116, 2006/01/25 20:50:30
|
version 1.139.2.1, 2007/05/23 23:36:00
|
|
|
#//%2005//////////////////////////////////////////////////////////////////////// |
#//%2006//////////////////////////////////////////////////////////////////////// |
#// | #// |
#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development | #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development |
#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. | #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. |
|
|
#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. | #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. |
#// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.; | #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.; |
#// EMC Corporation; VERITAS Software Corporation; The Open Group. | #// 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 | #// Permission is hereby granted, free of charge, to any person obtaining a copy |
#// of this software and associated documentation files (the "Software"), to | #// of this software and associated documentation files (the "Software"), to |
|
|
| |
################################################################################ | ################################################################################ |
ifeq ($(findstring _GNU, $(PEGASUS_PLATFORM)), _GNU) | ifeq ($(findstring _GNU, $(PEGASUS_PLATFORM)), _GNU) |
|
ifdef CXX |
|
GCC_VERSION = $(shell $(CXX) -dumpversion) |
|
else |
GCC_VERSION = $(shell g++ -dumpversion) | GCC_VERSION = $(shell g++ -dumpversion) |
|
endif |
else | else |
GCC_VERSION = | GCC_VERSION = |
endif | endif |
|
|
CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA))) | CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA))) |
endif | endif |
else | else |
CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM29 |
CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM2131 |
CIM_SCHEMA_VER= | CIM_SCHEMA_VER= |
endif | endif |
| |
|
|
endif | endif |
| |
| |
# Setup the conditional compile for client displays. |
|
# |
|
ifdef PEGASUS_CLIENT_TRACE_ENABLE |
|
DEFINES += -DPEGASUS_CLIENT_TRACE_ENABLE |
|
endif |
|
|
|
# Allow PEGASUS_ASSERT statements to be disabled. | # Allow PEGASUS_ASSERT statements to be disabled. |
ifdef PEGASUS_NOASSERTS | ifdef PEGASUS_NOASSERTS |
DEFINES += -DNDEBUG | DEFINES += -DNDEBUG |
|
|
endif | endif |
| |
# | # |
|
# Allow to define the default value for the Provider User Context |
|
# 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 |
|
|
|
# |
# PEP 197 | # PEP 197 |
# Allow the Provider User Context feature to be disabled. | # Allow the Provider User Context feature to be disabled. |
# | # |
ifdef PEGASUS_DISABLE_PROV_USERCTXT | ifdef PEGASUS_DISABLE_PROV_USERCTXT |
DEFINES += -DPEGASUS_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 | endif |
| |
# Bug 2147 | # Bug 2147 |
|
|
DEFINES += -DPEGASUS_ENABLE_OBJECT_NORMALIZATION | DEFINES += -DPEGASUS_ENABLE_OBJECT_NORMALIZATION |
endif | endif |
| |
|
# PEP 233 |
|
# Controls support for EmbeddedInstance properties |
|
# and parameters |
|
ifndef PEGASUS_EMBEDDED_INSTANCE_SUPPORT |
|
PEGASUS_EMBEDDED_INSTANCE_SUPPORT = true |
|
endif |
|
|
|
ifeq ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT), true) |
|
DEFINES += -DPEGASUS_EMBEDDED_INSTANCE_SUPPORT |
|
else |
|
ifneq ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT), false) |
|
$(error PEGASUS_EMBEDDED_INSTANCE_SUPPORT ($(PEGASUS_EMBEDDED_INSTANCE_SUPPORT)) invalid, must be true or false) |
|
endif |
|
endif |
|
|
|
|
# Allow ExecQuery functionality to be enabled | # Allow ExecQuery functionality to be enabled |
ifndef PEGASUS_ENABLE_EXECQUERY | ifndef PEGASUS_ENABLE_EXECQUERY |
DEFINES += -DPEGASUS_DISABLE_EXECQUERY | DEFINES += -DPEGASUS_DISABLE_EXECQUERY |
|
|
DEFINES += -DPEGASUS_USE_NET_SNMP | DEFINES += -DPEGASUS_USE_NET_SNMP |
endif | endif |
| |
|
ifdef PEGASUS_HAS_SSL |
|
ifndef OPENSSL_BIN |
|
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 |
|
|
|
# Enable CRL verification |
|
ifndef PEGASUS_ENABLE_SSL_CRL_VERIFICATION |
|
PEGASUS_ENABLE_SSL_CRL_VERIFICATION = true |
|
endif |
|
|
|
# Check for Enable SSL CRL verification |
|
ifdef PEGASUS_ENABLE_SSL_CRL_VERIFICATION |
|
ifeq ($(PEGASUS_ENABLE_SSL_CRL_VERIFICATION), true) |
|
DEFINES += -DPEGASUS_ENABLE_SSL_CRL_VERIFICATION |
|
else |
|
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 |
|
|
|
# |
|
# PEP 258 |
|
# 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 |
|
|
# | # |
# PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP | # PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP |
# | # |
|
|
endif | endif |
endif | endif |
| |
|
|
|
############################################################################ |
|
# |
|
# PEGASUS_USE_OPENSLP |
|
# |
|
# 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. |
|
# |
|
|
|
ifdef PEGASUS_USE_OPENSLP |
|
ifeq ($(PEGASUS_ENABLE_SLP),true) |
|
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 |
|
|
|
############################################################################ |
|
# |
|
# PEGASUS_OPENSLP_HOME |
|
# |
|
# Environment variable to set home location for OpenSLP include and library |
|
# 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 | # Enable this flag to allow the handshake to continue regardless of verification result |
# | # |
|
|
ifdef PEGASUS_INDICATION_HASHTRACE | ifdef PEGASUS_INDICATION_HASHTRACE |
DEFINES += -DPEGASUS_INDICATION_HASHTRACE | DEFINES += -DPEGASUS_INDICATION_HASHTRACE |
endif | 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 |
|
|
| |
# Set compile flag to control compilation of CIMOM statistics | # Set compile flag to control compilation of CIMOM statistics |
ifdef PEGASUS_DISABLE_PERFINST | ifdef PEGASUS_DISABLE_PERFINST |
FLAGS += -DPEGASUS_DISABLE_PERFINST |
DEFINES += -DPEGASUS_DISABLE_PERFINST |
endif | endif |
| |
# Set compile flag to control compilation of SNIA Extensions | # Set compile flag to control compilation of SNIA Extensions |
ifdef PEGASUS_SNIA_EXTENSIONS | ifdef PEGASUS_SNIA_EXTENSIONS |
FLAGS += -DPEGASUS_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 | endif |
| |
# Allow remote CMPI functionality to be enabled | # Allow remote CMPI functionality to be enabled |
ifdef PEGASUS_ENABLE_REMOTE_CMPI | ifdef PEGASUS_ENABLE_REMOTE_CMPI |
FLAGS += -DPEGASUS_ENABLE_REMOTE_CMPI |
DEFINES += -DPEGASUS_ENABLE_REMOTE_CMPI |
endif | endif |
| |
############################################################ | ############################################################ |
|
|
RMREPOSITORY = $(RMDIRHIER) | RMREPOSITORY = $(RMDIRHIER) |
| |
ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS | ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS |
FLAGS += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS |
DEFINES += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS |
endif | endif |
| |
ifdef PEGASUS_USE_RELEASE_DIRS | ifdef PEGASUS_USE_RELEASE_DIRS |
FLAGS += -DPEGASUS_USE_RELEASE_DIRS |
DEFINES += -DPEGASUS_USE_RELEASE_DIRS |
endif | endif |
| |
ifdef PEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS | ifdef PEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS |
FLAGS += -DPEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS |
DEFINES += -DPEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS |
endif | endif |
| |
# Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib | # Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib |
|
|
EXTRA_LINK_FLAGS = $(PEGASUS_EXTRA_LINK_FLAGS) | EXTRA_LINK_FLAGS = $(PEGASUS_EXTRA_LINK_FLAGS) |
endif | 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. |
|
ifdef PEGASUS_CIMSERVERMAIN_USER |
|
DEFINES += -DPEGASUS_CIMSERVERMAIN_USER=\"$(PEGASUS_CIMSERVERMAIN_USER)\" |
|
endif |
|
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 |