version 1.174, 2008/10/01 04:46:13
|
version 1.187, 2009/08/16 16:21:01
|
|
|
#//%2006//////////////////////////////////////////////////////////////////////// |
#//%LICENSE//////////////////////////////////////////////////////////////// |
#// | #// |
#// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development |
#// Licensed to The Open Group (TOG) under one or more contributor license |
#// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems. |
#// agreements. Refer to the OpenPegasusNOTICE.txt file distributed with |
#// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.; |
#// this work for additional information regarding copyright ownership. |
#// IBM Corp.; EMC Corporation, The Open Group. |
#// Each contributor licenses this file to you under the OpenPegasus Open |
#// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.; |
#// Source License; you may not use this file except in compliance with the |
#// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group. |
#// License. |
#// 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 |
#// Permission is hereby granted, free of charge, to any person obtaining a |
#// of this software and associated documentation files (the "Software"), to |
#// copy of this software and associated documentation files (the "Software"), |
#// deal in the Software without restriction, including without limitation the |
#// to deal in the Software without restriction, including without limitation |
#// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or |
#// the rights to use, copy, modify, merge, publish, distribute, sublicense, |
#// sell copies of the Software, and to permit persons to whom the Software is |
#// and/or sell copies of the Software, and to permit persons to whom the |
#// furnished to do so, subject to the following conditions: |
#// Software is furnished to do so, subject to the following conditions: |
#// | #// |
#// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN |
#// The above copyright notice and this permission notice shall be included |
#// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED |
#// in all copies or substantial portions of the Software. |
#// "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. |
|
#// | #// |
#//============================================================================== |
#// 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 |
|
|
# ***** | # ***** |
| |
ifndef PEGASUS_CIM_SCHEMA | ifndef PEGASUS_CIM_SCHEMA |
PEGASUS_CIM_SCHEMA=CIM217 |
PEGASUS_CIM_SCHEMA=CIM222 |
endif | endif |
| |
CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA) | CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA) |
|
|
else | else |
ifeq ($(OS),zos) | ifeq ($(OS),zos) |
EXTRA_LIBRARIES += \ | EXTRA_LIBRARIES += \ |
$(ICU_INSTALL)/lib/libicui18n.x \ |
$(ICU_INSTALL)/lib/libicui18n$(DYNLIB_SUFFIX) \ |
$(ICU_INSTALL)/lib/libicuuc.x |
$(ICU_INSTALL)/lib/libicuuc$(DYNLIB_SUFFIX) |
else | else |
EXTRA_LIBRARIES += -licuuc -licui18n | EXTRA_LIBRARIES += -licuuc -licui18n |
ifeq ($(OS),linux) | ifeq ($(OS),linux) |
|
|
endif | endif |
endif | endif |
| |
|
# SQLite repository support |
|
|
|
ifndef PEGASUS_USE_SQLITE_REPOSITORY |
|
PEGASUS_USE_SQLITE_REPOSITORY = false |
|
endif |
|
|
|
ifeq ($(PEGASUS_USE_SQLITE_REPOSITORY),true) |
|
ifeq ($(PEGASUS_REPOSITORY_STORE_COMPLETE_CLASSES),true) |
|
$(error PEGASUS_REPOSITORY_STORE_COMPLETE_CLASSES may not be set to true when PEGASUS_USE_SQLITE_REPOSITORY is true) |
|
endif |
|
DEFINES += -DPEGASUS_USE_SQLITE_REPOSITORY |
|
else |
|
ifneq ($(PEGASUS_USE_SQLITE_REPOSITORY),false) |
|
$(error PEGASUS_USE_SQLITE_REPOSITORY ($(PEGASUS_USE_SQLITE_REPOSITORY)) invalid, must be true or false) |
|
endif |
|
endif |
|
|
# PEP 161 | # PEP 161 |
# Control whether utf-8 filenames are supported by the repository |
# Control whether utf-8 filenames are supported by the repository. |
|
# Note: These options only apply to the file-based repository, not SQLite. |
ifdef PEGASUS_SUPPORT_UTF8_FILENAME | ifdef PEGASUS_SUPPORT_UTF8_FILENAME |
DEFINES += -DPEGASUS_SUPPORT_UTF8_FILENAME | DEFINES += -DPEGASUS_SUPPORT_UTF8_FILENAME |
| |
|
|
endif | 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 |
|
|
|
# | # |
## PEP 323, DMTF Indications Profile support, stage 1 | ## PEP 323, DMTF Indications Profile support, stage 1 |
# | # |
|
|
endif | 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 |
|
|
ifdef PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER | ifdef PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER |
ifeq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), true) | ifeq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), true) |
DEFINES += -DPEGASUS_ENABLE_JMPI_PROVIDER_MANAGER | DEFINES += -DPEGASUS_ENABLE_JMPI_PROVIDER_MANAGER |
|
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 |
|
|
else | else |
ifneq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), false) | ifneq ($(PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER), false) |
$(error PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER \ | $(error PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER \ |
|
|
##============================================================================== | ##============================================================================== |
| |
ifdef PEGASUS_USE_STATIC_LIBRARIES | ifdef PEGASUS_USE_STATIC_LIBRARIES |
ifeq ($(PEGASUS_USE_STATIC_LIBRARIES),true) |
ifeq ($(OS_TYPE),windows) |
|
$(error PEGASUS_USE_STATIC_LIBRARIES is not support on windows.) |
else | else |
ifneq ($(PEGASUS_USE_STATIC_LIBRARIES),false) |
ifneq ($(PEGASUS_USE_STATIC_LIBRARIES),true) |
$(error PEGASUS_USE_STATIC_LIBRARIES ($(PEGASUS_USE_STATIC_LIBRARIES)) invalid, must be true or false) |
$(error PEGASUS_USE_STATIC_LIBRARIES \ |
|
($(PEGASUS_USE_STATIC_LIBRARIES)) invalid, must be true.) |
endif | endif |
endif | endif |
endif | 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 |
|
|
|
# Disable client timeouts when we're doing a valgrind build | # Disable client timeouts when we're doing a valgrind build |
ifdef PEGASUS_TEST_VALGRIND_LOG_DIR | ifdef PEGASUS_TEST_VALGRIND_LOG_DIR |
DEFINES += -DPEGASUS_DISABLE_CLIENT_TIMEOUT -DPEGASUS_TEST_VALGRIND | DEFINES += -DPEGASUS_DISABLE_CLIENT_TIMEOUT -DPEGASUS_TEST_VALGRIND |
|
|
endif | endif |
endif | endif |
| |
|
##============================================================================== |
|
## |
|
## PEGASUS_ENABLE_PROTOCOL_INTERNAL_BINARY |
|
## |
|
## Enable binary protocol between cimserver and out-of-process providers. |
|
## By default this feature is enabled. |
|
## |
|
##============================================================================== |
|
|
|
ifndef PEGASUS_ENABLE_PROTOCOL_INTERNAL_BINARY |
|
PEGASUS_ENABLE_PROTOCOL_INTERNAL_BINARY=true |
|
endif |
|
|
|
ifeq ($(PEGASUS_ENABLE_PROTOCOL_INTERNAL_BINARY),true) |
|
DEFINES += -DPEGASUS_ENABLE_PROTOCOL_INTERNAL_BINARY |
|
else |
|
ifneq ($(PEGASUS_ENABLE_PROTOCOL_INTERNAL_BINARY),false) |
|
$(error "PEGASUS_ENABLE_PROTOCOL_INTERNAL_BINARY must be true or false") |
|
endif |
|
endif |
|
|
|
##============================================================================== |
|
## |
|
## PEGASUS_ENABLE_PROTOCOL_BINARY |
|
## |
|
## Enables the binary protocol between clients and cimserver. With provider |
|
## agent, both requests and responses are binary. For "ordinary" clients, |
|
## requests are XML and responses are binary. By default, this only affects |
|
## the protocol used over local domain sockets. |
|
## |
|
##============================================================================== |
|
|
|
ifndef PEGASUS_ENABLE_PROTOCOL_BINARY |
|
PEGASUS_ENABLE_PROTOCOL_BINARY=false |
|
endif |
|
|
|
ifeq ($(PEGASUS_ENABLE_PROTOCOL_BINARY),true) |
|
DEFINES += -DPEGASUS_ENABLE_PROTOCOL_BINARY |
|
else |
|
ifneq ($(PEGASUS_ENABLE_PROTOCOL_BINARY),false) |
|
$(error "PEGASUS_ENABLE_PROTOCOL_BINARY must be true or false") |
|
endif |
|
endif |
|
|
|
## ====================================================================== |
|
## |
|
## PLATFORM_CORE_PATTERN |
|
## This variable describes the pattern used to search for core files. |
|
## If not defined, this variable will be set to core*. |
|
## Only wildcard characters supported by the make wildcard function |
|
## may be used. |
|
|
|
ifndef PLATFORM_CORE_PATTERN |
|
PLATFORM_CORE_PATTERN = core* |
|
endif |