version 1.204, 2012/08/09 10:32:17
|
version 1.210, 2013/05/28 12:34:23
|
|
|
## NOTE: If the default below is changed, please update the definition | ## NOTE: If the default below is changed, please update the definition |
## of default for this variable in pegasus/doc/BuildAndReleaseOptions.html | ## of default for this variable in pegasus/doc/BuildAndReleaseOptions.html |
ifndef PEGASUS_CIM_SCHEMA | ifndef PEGASUS_CIM_SCHEMA |
PEGASUS_CIM_SCHEMA=CIM231 |
PEGASUS_CIM_SCHEMA=CIM236 |
endif | endif |
| |
CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA) | CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA) |
|
|
DEFINES += -DMAX_THREADS_PER_SVC_QUEUE=$(PEGASUS_MAX_THREADS_PER_SVC_QUEUE) | DEFINES += -DMAX_THREADS_PER_SVC_QUEUE=$(PEGASUS_MAX_THREADS_PER_SVC_QUEUE) |
endif | endif |
| |
############################################################################## |
|
## |
|
## 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 |
|
|
|
|
|
# Allow PEGASUS_ASSERT statements to be disabled. | # Allow PEGASUS_ASSERT statements to be disabled. |
ifdef PEGASUS_NOASSERTS | ifdef PEGASUS_NOASSERTS |
DEFINES += -DNDEBUG |
DEFINES += -DNDEBUG -DPEGASUS_NOASSERTS |
endif | endif |
| |
# do not compile trace code. sometimes it causes problems debugging | # do not compile trace code. sometimes it causes problems debugging |
|
|
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 |
|
|
DEFINES += -DPEGASUS_ENABLE_REMOTE_CMPI | DEFINES += -DPEGASUS_ENABLE_REMOTE_CMPI |
endif | endif |
| |
############################################################ |
|
# |
|
# Set any vendor-specific compile flags |
|
# |
|
############################################################ |
|
|
|
ifdef PEGASUS_VENDOR_HP |
|
DEFINES+= -DPEGASUS_VENDOR_HP |
|
endif |
|
|
|
| |
############################################################ | ############################################################ |
# | # |
|
|
| |
##============================================================================== | ##============================================================================== |
## | ## |
|
## PEGASUS_PAM_SESSION_SECURITY |
|
## |
|
## This is a new method to handle authentication with PAM in case it is required |
|
## to keep the PAM session established by pam_start() open across an |
|
## entire CIM request. |
|
## |
|
## This feature contradicts PEGASUS_PAM_AUTHENTICATION and |
|
## PEGASUS_USE_PAM_STANDALONE_PROC |
|
## Because of the additional process this feature is not compatible with |
|
## Privilege Separation. |
|
## |
|
##============================================================================== |
|
|
|
ifeq ($(PEGASUS_PAM_SESSION_SECURITY),true) |
|
ifdef PEGASUS_PAM_AUTHENTICATION |
|
$(error "PEGASUS_PAM_AUTHENTICATION must NOT be defined when PEGASUS_PAM_SESSION_SECURITY is defined") |
|
endif |
|
ifdef PEGASUS_USE_PAM_STANDALONE_PROC |
|
$(error "PEGASUS_USE_PAM_STANDALONE_PROC must NOT be defined when PEGASUS_PAM_SESSION_SECURITY is defined") |
|
endif |
|
ifdef PEGASUS_ENABLE_PRIVILEGE_SEPARATION |
|
$(error "PEGASUS_ENABLE_PRIVILEGE_SEPARATION must NOT be defined when PEGASUS_PAM_SESSION_SECURITY is defined") |
|
endif |
|
# Compile in the code required for PAM |
|
# and compile out the code that uses the password file. |
|
DEFINES += -DPEGASUS_PAM_SESSION_SECURITY -DPEGASUS_NO_PASSWORDFILE |
|
# Link with libpam only where it is needed. |
|
ifeq ($(HAS_PAM_DEPENDENCY),true) |
|
SYS_LIBS += -lpam |
|
endif |
|
endif |
|
|
|
|
|
##============================================================================== |
|
## |
## PEGASUS_PAM_AUTHENTICATION | ## PEGASUS_PAM_AUTHENTICATION |
## | ## |
##============================================================================== | ##============================================================================== |