version 1.141.2.3, 2007/06/19 02:28:52
|
version 1.158, 2008/03/11 19:39:49
|
|
|
$(error PEGASUS_ROOT environment variable undefined) | $(error PEGASUS_ROOT environment variable undefined) |
endif | endif |
| |
|
############################################################################ |
|
# OpenPegasus relies on the existence of an external set of libraries to |
|
# support localized messages. Today, the only supported package is |
|
# the International Components for Unicode (ICU) OSS project, |
|
# http://oss.software.ibm.com/icu. If PEGASUS_HAS_ICU is true, |
|
# OpenPegasus will use the ICU library. |
|
# |
|
# ICU_ROOT points to the root directory of the ICU source tree. If set, |
|
# the OpenPegasus build will use this variable to locate the ICU include |
|
# files. If not set, the ICU include files are expected to be installed |
|
# in directories that are searched by default. |
|
# |
|
# ICU_INSTALL points to the directory containing the ICU libraries. |
|
# If set, the OpenPegasus will use this variable to locate the ICU |
|
# libraries. If not set, the ICU libraries are expected to be installed |
|
# in a directory that is searched by default. |
|
# |
|
# If PEGASUS_HAS_ICU is not set and either ICU_ROOT or ICU_INSTALL is |
|
# set, the value of PEGASUS_HAS_ICU will be set to true. |
|
############################################################################ |
|
ifdef PEGASUS_HAS_ICU |
|
ifneq ($(PEGASUS_HAS_ICU),true) |
|
ifneq ($(PEGASUS_HAS_ICU),false) |
|
$(error PEGASUS_HAS_ICU ($(PEGASUS_HAS_ICU)) \ |
|
invalid, must be true or false) |
|
endif |
|
endif |
|
else |
|
ifdef ICU_ROOT |
|
PEGASUS_HAS_ICU = true |
|
else |
|
ifdef ICU_INSTALL |
|
PEGASUS_HAS_ICU = true |
|
endif |
|
endif |
|
endif |
|
|
|
ifdef PEGASUS_HAS_MESSAGES |
|
ifneq ($(PEGASUS_HAS_ICU),true) |
|
$(error Support for localized messages in OpenPegasus \ |
|
requires PEGASUS_HAS_ICU to be true) |
|
endif |
|
endif |
|
|
# l10n | # l10n |
ifdef ICU_ROOT | ifdef ICU_ROOT |
ICUROOT = $(subst \,/,$(ICU_ROOT)) | ICUROOT = $(subst \,/,$(ICU_ROOT)) |
|
|
GCC_VERSION = | GCC_VERSION = |
endif | endif |
| |
|
############################################################################# |
|
## As a general rule, the directory structure for the object files mirrors |
|
## the directory structure of the source files. E.g., |
|
## $PEGASUS_HOME/obj/Pegasus/Common contains the object files for the |
|
## source files in $PEGASUS_ROOT/src/Pegasus/Common. Each source-level |
|
## Makefile includes a DIR value that defines this common path (e.g., |
|
## Pegasus/Common). In a small number of cases, source files are built |
|
## multiple times with difference compile options. |
|
## To handle this situation, the ALT_OBJ_DIR variable can be used to |
|
## specify an alternative object directory for use in building the |
|
## objects defined in the Makefile. |
|
## |
|
|
|
ifndef ALT_OBJ_DIR |
OBJ_DIR = $(HOME_DIR)/obj/$(DIR) | OBJ_DIR = $(HOME_DIR)/obj/$(DIR) |
|
else |
|
OBJ_DIR = $(HOME_DIR)/obj/$(ALT_OBJ_DIR) |
|
endif |
|
|
|
############################################################################# |
|
|
|
ifdef PEGASUS_TEST_VALGRIND_LOG_DIR |
|
BIN_DIR = $(HOME_DIR)/bin_exe |
|
VALGRIND_SCRIPT_BIN_DIR = $(HOME_DIR)/bin |
|
else |
BIN_DIR = $(HOME_DIR)/bin | BIN_DIR = $(HOME_DIR)/bin |
|
endif |
LIB_DIR = $(HOME_DIR)/lib | LIB_DIR = $(HOME_DIR)/lib |
| |
# l10n | # l10n |
|
|
# option of the mof compiler needs to be set. | # option of the mof compiler needs to be set. |
# ***** | # ***** |
| |
ifdef PEGASUS_CIM_SCHEMA |
ifndef PEGASUS_CIM_SCHEMA |
|
PEGASUS_CIM_SCHEMA=CIM2131 |
|
endif |
|
|
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),) | 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= | CIM_SCHEMA_VER= |
else | else |
CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA))) | CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA))) |
endif | endif |
else |
|
CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM2131 |
|
CIM_SCHEMA_VER= |
|
endif |
|
| |
ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR))) | ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR))) |
ALLOW_EXPERIMENTAL = -aE | ALLOW_EXPERIMENTAL = -aE |
|
|
endif | endif |
| |
ifdef PEGASUS_HAS_SSL | ifdef PEGASUS_HAS_SSL |
ifndef OPENSSL_BIN |
DEFINES += -DPEGASUS_HAS_SSL |
OPENSSL_BIN = $(OPENSSL_HOME)/bin |
|
|
# Enable SSL Random file by default. |
|
ifndef PEGASUS_USE_SSL_RANDOMFILE |
|
PEGASUS_USE_SSL_RANDOMFILE = true |
endif | endif |
|
|
|
# Allow SSL Random file functionality to be optionally disabled. |
|
ifdef PEGASUS_USE_SSL_RANDOMFILE |
|
ifeq ($(PEGASUS_USE_SSL_RANDOMFILE), true) |
|
DEFINES += -DPEGASUS_SSL_RANDOMFILE |
|
else |
|
ifneq ($(PEGASUS_USE_SSL_RANDOMFILE), false) |
|
$(error PEGASUS_USE_SSL_RANDOMFILE\ |
|
($(PEGASUS_USE_SSL_RANDOMFILE)) invalid, \ |
|
must be true or false) |
|
endif |
|
endif |
|
endif |
|
|
ifndef OPENSSL_COMMAND | ifndef OPENSSL_COMMAND |
|
ifdef OPENSSL_BIN |
OPENSSL_COMMAND = $(OPENSSL_BIN)/openssl | OPENSSL_COMMAND = $(OPENSSL_BIN)/openssl |
|
else |
|
OPENSSL_COMMAND = openssl |
|
endif |
endif | endif |
ifndef OPENSSL_SET_SERIAL_SUPPORTED | ifndef OPENSSL_SET_SERIAL_SUPPORTED |
ifneq (, $(findstring 0.9.6, $(shell $(OPENSSL_COMMAND) version))) | ifneq (, $(findstring 0.9.6, $(shell $(OPENSSL_COMMAND) version))) |
|
|
| |
# | # |
# PEP 258 | # PEP 258 |
# Allow Audit Logger to be disabled |
# Allow Audit Logger to be disabled. It is enabled by default. |
# | # |
ifdef PEGASUS_DISABLE_AUDIT_LOGGER |
|
ifeq ($(PEGASUS_DISABLE_AUDIT_LOGGER),true) |
ifndef PEGASUS_ENABLE_AUDIT_LOGGER |
DEFINES += -DPEGASUS_DISABLE_AUDIT_LOGGER |
PEGASUS_ENABLE_AUDIT_LOGGER = true |
|
endif |
|
|
|
ifdef PEGASUS_ENABLE_AUDIT_LOGGER |
|
ifeq ($(PEGASUS_ENABLE_AUDIT_LOGGER),true) |
|
DEFINES += -DPEGASUS_ENABLE_AUDIT_LOGGER |
else | else |
ifneq ($(PEGASUS_DISABLE_AUDIT_LOGGER),false) |
ifneq ($(PEGASUS_ENABLE_AUDIT_LOGGER),false) |
$(error PEGASUS_DISABLE_AUDIT_LOGGER ($(PEGASUS_DISABLE_AUDIT_LOGGER)) \ |
$(error PEGASUS_ENABLE_AUDIT_LOGGER \ |
invalid, must be true or false) |
($(PEGASUS_ENABLE_AUDIT_LOGGER)) invalid, must be true or false) |
endif | endif |
endif | endif |
endif | endif |
| |
|
# Check for use of deprecated variable |
|
ifdef PEGASUS_DISABLE_AUDIT_LOGGER |
|
$(error The PEGASUS_DISABLE_AUDIT_LOGGER variable is deprecated. \ |
|
Use PEGASUS_ENABLE_AUDIT_LOGGER=false instead) |
|
endif |
|
|
| |
# | # |
# PEP 291 | # PEP 291 |
# Enable IPv6 support | # Enable IPv6 support |
# | # |
|
|
ifndef PEGASUS_ENABLE_IPV6 | ifndef PEGASUS_ENABLE_IPV6 |
PEGASUS_ENABLE_IPV6 = true | PEGASUS_ENABLE_IPV6 = true |
endif | endif |
|
|
endif | endif |
endif | endif |
| |
|
# Verify Test IPv6 support |
|
# If PEGASUS_ENABLE_IPV6 is defined and PEGASUS_TEST_IPV6 is not defined, we set |
|
# PEGASUS_TEST_IPV6 to the same value as PEGASUS_ENABLE_IPV6. |
|
# You can explicitly set PEGASUS_TEST_IPV6 to false if you don't want to run the |
|
# IPv6 tests (for example, on an IPv4 system that is running an IPv6-enabled |
|
# version of Pegasus). |
|
# |
|
ifdef PEGASUS_TEST_IPV6 |
|
ifneq ($(PEGASUS_TEST_IPV6),true) |
|
ifneq ($(PEGASUS_TEST_IPV6),false) |
|
$(error PEGASUS_TEST_IPV6 ($(PEGASUS_TEST_IPV6)) \ |
|
invalid, must be true or false) |
|
endif |
|
endif |
|
else |
|
PEGASUS_TEST_IPV6 = $(PEGASUS_ENABLE_IPV6) |
|
endif |
|
|
|
############################################################################ |
# | # |
# PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP | # PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP |
# | # |
|
|
DEFINES += -DPEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT | DEFINES += -DPEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT |
endif | endif |
| |
|
############################################################################ |
|
# |
|
# PEGASUS_ENABLE_INTEROP_PROVIDER |
|
# Enables the interop provider AND the server profile. |
|
# initially this was activated by setting either the perfinst or slp enable |
|
# flags. This allows activating this function without any either perfinst or |
|
# slp enabled. Note that if either of these are enabled, this funtion is also |
|
# enabled |
|
|
|
## if either slp or perfinst are enabled and this is false, flag error |
|
## This gets messy because should account for both postive and negative on |
|
## interop so we don't get multiples. |
|
|
|
ifdef PEGASUS_ENABLE_SLP |
|
ifeq ($(PEGASUS_ENABLE_SLP),true) |
|
ifndef PEGASUS_ENABLE_INTEROP_PROVIDER |
|
PEGASUS_ENABLE_INTEROP_PROVIDER = true |
|
else |
|
ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),false) |
|
$(error PEGASUS_ENABLE_INTEROP_PROVIDER ($(PEGASUS_ENABLE_INTEROP_PROVIDER)) invalid, must be true if SLP enabled) |
|
endif |
|
endif |
|
endif |
|
endif |
|
|
|
## if PERFINST enabled, set to force interop. |
|
ifndef PEGASUS_DISABLE_PERFINST |
|
ifndef PEGASUS_ENABLE_INTEROP_PROVIDER |
|
PEGASUS_ENABLE_INTEROP_PROVIDER = true |
|
else |
|
ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),false) |
|
$(error PEGASUS_ENABLE_INTEROP_PROVIDER ($(PEGASUS_ENABLE_INTEROP_PROVIDER)) invalid, must be true if PERFINST enabled) |
|
endif |
|
endif |
|
endif |
|
|
|
ifdef PEGASUS_ENABLE_INTEROP_PROVIDER |
|
ifeq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),true) |
|
DEFINES += -DPEGASUS_ENABLE_INTEROP_PROVIDER |
|
else |
|
ifneq ($(PEGASUS_ENABLE_INTEROP_PROVIDER),false) |
|
$(error PEGASUS_ENABLE_INTEROP_PROVIDER ($(PEGASUS_ENABLE_INTEROP_PROVIDER)) invalid, must be true or false) |
|
endif |
|
endif |
|
endif |
|
|
|
|
|
############################################################################ |
# set PEGASUS_DEBUG into the DEFINES if it exists. | # set PEGASUS_DEBUG into the DEFINES if it exists. |
# Note that this flag is the general separator between | # Note that this flag is the general separator between |
# debug compiles and non-debug compiles and controls both | # debug compiles and non-debug compiles and controls both |
|
|
endif | endif |
endif | endif |
| |
## Specifies the user context of the cimservermain process when privilege |
## Defines the user context of the cimservermain process when privilege |
## separation is enabled. | ## separation is enabled. |
ifndef PEGASUS_CIMSERVERMAIN_USER |
PEGASUS_CIMSERVERMAIN_USER = cimsrvr |
PEGASUS_CIMSERVERMAIN_USER = pegasus |
|
endif |
|
DEFINES += -DPEGASUS_CIMSERVERMAIN_USER=\"$(PEGASUS_CIMSERVERMAIN_USER)\" | DEFINES += -DPEGASUS_CIMSERVERMAIN_USER=\"$(PEGASUS_CIMSERVERMAIN_USER)\" |
endif | endif |
| |
|
|
PEGASUS_JAVA_JAR = jar | PEGASUS_JAVA_JAR = jar |
PEGASUS_JAVA_INTERPRETER = java | PEGASUS_JAVA_INTERPRETER = java |
endif | endif |
|
|
|
# Disable client timeouts when we're doing a valgrind build |
|
ifdef PEGASUS_TEST_VALGRIND_LOG_DIR |
|
DEFINES += -DPEGASUS_DISABLE_CLIENT_TIMEOUT -DPEGASUS_TEST_VALGRIND |
|
endif |
|
|