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

  1 martin 1.92 #//%2005////////////////////////////////////////////////////////////////////////
  2             #//
  3             #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
  4             #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
  5             #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
  6             #// IBM Corp.; EMC Corporation, The Open Group.
  7             #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
  8             #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
  9             #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10             #// EMC Corporation; VERITAS Software Corporation; The Open Group.
 11             #//
 12             #// Permission is hereby granted, free of charge, to any person obtaining a copy
 13             #// of this software and associated documentation files (the "Software"), to
 14             #// deal in the Software without restriction, including without limitation the
 15             #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 16             #// sell copies of the Software, and to permit persons to whom the Software is
 17             #// furnished to do so, subject to the following conditions:
 18             #// 
 19             #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 20             #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 21             #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 22 martin 1.92 #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 23             #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 24             #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 25             #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 26             #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 27             #//
 28             #//==============================================================================
 29 mike   1.1  ################################################################################
 30             ##
 31             ## Get external environment variables. Note that all external environment
 32             ## variables begin with "PEGASUS_".
 33             ##
 34             ################################################################################
 35             
 36 konrad.r 1.55 ifndef ROOT
 37                   ROOT =  $(subst \,/,$(PEGASUS_ROOT))
 38               endif
 39               
 40 denise.eckstein 1.61 ifdef PEGASUS_ENVVAR_FILE
 41 david.dillard   1.65     include $(PEGASUS_ENVVAR_FILE)
 42 denise.eckstein 1.61 else
 43 david.dillard   1.65     include $(ROOT)/env_var.status
 44 denise.eckstein 1.61 endif
 45 konrad.r        1.55 
 46 mike            1.2  ifdef PEGASUS_HOME
 47 david.dillard   1.65     HOME_DIR = $(subst \,/,$(PEGASUS_HOME))
 48 mike            1.1  else
 49 david.dillard   1.65     $(error PEGASUS_HOME environment variable undefined)
 50 mike            1.1  endif
 51                      
 52 karl            1.18 ifdef PEGASUS_ROOT
 53                          ROOT =  $(subst \,/,$(PEGASUS_ROOT))
 54                      else
 55 david.dillard   1.65     $(error PEGASUS_ROOT environment variable undefined)
 56 karl            1.18 endif
 57                      
 58 chuck           1.35 # l10n
 59                      ifdef ICU_ROOT
 60                          ICUROOT =  $(subst \,/,$(ICU_ROOT))
 61                      endif
 62                      
 63 kumpf           1.21 ifdef PEGASUS_TMP
 64 david.dillard   1.65     TMP_DIR = $(subst \,/,$(PEGASUS_TMP))
 65 kumpf           1.21 else
 66 david.dillard   1.65     TMP_DIR = .
 67 kumpf           1.21 endif
 68                      
 69 kumpf           1.26 ifdef PEGASUS_DISPLAYCONSUMER_DIR
 70 david.dillard   1.65     DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_DISPLAYCONSUMER_DIR))
 71 kumpf           1.26 else
 72 david.dillard   1.65     DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_HOME))
 73 kumpf           1.26 endif
 74                      
 75 aruran.ms       1.102 ifdef PEGASUS_DEBUG
 76                            PEGASUS_USE_DEBUG_BUILD_OPTIONS = 1
 77                       endif
 78                       
 79 david.dillard   1.66  PLATFORM_FILES=$(wildcard $(ROOT)/mak/platform*.mak)
 80 karl            1.78  PLATFORM_TEMP=$(subst $(ROOT)/mak/platform_,, $(PLATFORM_FILES))
 81 jim.wunderlich  1.104 VALID_PLATFORMS=$(subst .mak,  , $(PLATFORM_TEMP))
 82 mike            1.8   
 83                       ifndef PEGASUS_PLATFORM
 84 david.dillard   1.66      $(error PEGASUS_PLATFORM environment variable undefined. Please set to\
 85                               one of the following:$(VALID_PLATFORMS))
 86 mike            1.8   endif
 87                       
 88 mike            1.1   ################################################################################
 89 denise.eckstein 1.116 ifeq ($(findstring _GNU, $(PEGASUS_PLATFORM)), _GNU)
 90                           GCC_VERSION = $(shell g++ -dumpversion)
 91                       else
 92                           GCC_VERSION =
 93                       endif
 94 mike            1.1   
 95 kumpf           1.22  OBJ_DIR = $(HOME_DIR)/obj/$(DIR)
 96                       BIN_DIR = $(HOME_DIR)/bin
 97                       LIB_DIR = $(HOME_DIR)/lib
 98 chuck           1.35  
 99                       # l10n
100                       # define the location for the compiled messages
101                       MSG_ROOT = $(HOME_DIR)/msg
102 kumpf           1.22  
103 jim.wunderlich  1.90  #############################################################################
104                       ##  The following REPOSITORY_XXX variables are only used within the 
105                       ## makefiles for building the repository (cimmofl) and running the tests. 
106                       ## They have no effect on CIMconfig initial startup configuration.
107                       
108                       #
109 kumpf           1.22  # define the location for the repository
110 jim.wunderlich  1.90  #
111                       # NOTE: There is another variable efined in many of the test makefiles
112                       # called REPOSITORYDIR. It is a local variable in each of those Makefiles
113                       # to localally control where the temporay small repository they 
114                       # build, use and then delete is located. Most of the time it is set to TMP_DIR.
115                       #
116 jim.wunderlich  1.91  
117 kumpf           1.22  REPOSITORY_DIR = $(HOME_DIR)
118 jim.wunderlich  1.90  
119                       #
120                       # WARNING: The REPOSITORY_NAME varible is not used by all the test, 
121                       # many of them are still hardcoded to "repository".  What this means
122                       # is that you can change the repository name and build it. But you 
123                       # cannot run the test without many of them failing
124                       #
125 jim.wunderlich  1.91  
126 jim.wunderlich  1.81  REPOSITORY_NAME = repository
127 jim.wunderlich  1.91  
128 jim.wunderlich  1.90  
129 jim.wunderlich  1.81  REPOSITORY_ROOT = $(REPOSITORY_DIR)/$(REPOSITORY_NAME)
130                       
131                       # define the repository mode 
132 h.sterling      1.89  #       XML = XML format
133                       #       BIN = Binary format
134 jim.wunderlich  1.81  #
135 jim.wunderlich  1.91  ifndef PEGASUS_REPOSITORY_MODE
136                          ## set to default value
137                          REPOSITORY_MODE = XML
138                       else 
139                          ## validate assigned value
140                          ifeq ($(PEGASUS_REPOSITORY_MODE),XML)
141                              REPOSITORY_MODE = XML
142                          else
143                            ifeq ($(PEGASUS_REPOSITORY_MODE),BIN)
144                             REPOSITORY_MODE = BIN
145                            else
146                             $(error PEGASUS_REPOSITORY_MODE ($(PEGASUS_REPOSITORY_MODE)) \
147                       		 is invalid. It must be set to either XML or BIN)
148                            endif
149                          endif
150 jim.wunderlich  1.90  endif
151                       
152 jim.wunderlich  1.91  
153 jim.wunderlich  1.90  ###########################################################################
154 mike            1.1   
155 kumpf           1.23  # The two variables, CIM_SCHEMA_DIR and CIM_SCHEMA_VER,
156 chip            1.76  # are used to control the version of the CIM Schema
157 kumpf           1.23  # loaded into the Pegasus Internal, InterOp,
158                       # root/cimv2 and various test namespaces.
159                       #
160 chip            1.76  # Update the following two environment variables to
161 kumpf           1.23  # change the version.
162                       
163 kumpf           1.37  # The environment variable PEGASUS_CIM_SCHEMA can be used
164 chip            1.76  # to change the values of CIM_SCHEMA_DIR, CIM_SCHEMA_VER
165 kumpf           1.37  # and ALLOW_EXPERIMENTAL.
166                       #
167                       # To use the PEGASUS_CIM_SCHEMA variable the Schema mof
168                       # files must be placed in the directory
169 denise.eckstein 1.115 # $(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
170 chip            1.76  #
171 kumpf           1.37  # The value of PEGASUS_CIM_SCHEMA must conform to the
172                       # following syntax:
173                       #
174                       #        CIM[Prelim]<CIM_SCHEMA_VER>
175                       #
176 chip            1.76  # The string "Prelim" should be included if the
177 kumpf           1.37  # Schema contains "Experimental" class definitions.
178                       #
179                       # The value of <CIM_SCHEMA_VER> must be the value
180 chip            1.76  # of the version string included by the DMTF as
181                       # part of the mof file names (e.g, CIM_Core27.mof).
182 kumpf           1.37  # Therefore, for example, the value of <CIM_SCHEMA_VER>
183                       # for CIM27 Schema directories MUST be 27.
184                       #
185 chip            1.76  # Examples of valid values of PEGASUS_CIM_SCHEMA
186 kumpf           1.37  # include CIMPrelim27, CIM27, CIMPrelim28, and CIM28.
187                       #
188                       # Note the CIMPrelim271 would NOT be a valid value
189                       # for PEGASUS_CIM_SCHEMA because the version string
190                       # portion of the mof files (e.g., CIM_Core27.mof) in
191                       # the CIMPrelimin271 directory is 27 not 271.
192 kumpf           1.23  
193 gerarda         1.29  # ***** CIM_SCHEMA_DIR INFO ****
194                       # If CIM_SCHEMA_DIR changes to use a preliminary schema which
195                       # has experimentals make sure and change the path below to appopriate
196                       # directory path.  Example:  CIMPrelim271 is preliminary and has
197                       # experimental classes.  Since experimental classes exist the -aE
198                       # option of the mof compiler needs to be set.
199                       # *****
200 kumpf           1.37  
201                       ifdef PEGASUS_CIM_SCHEMA
202 david.dillard   1.65      CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
203 chip            1.76      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),)
204 david.dillard   1.65         CIM_SCHEMA_VER=
205                           else
206                              CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA)))
207                           endif
208 kumpf           1.37  else
209 a.dunfey        1.82      CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM29
210                           CIM_SCHEMA_VER=
211 kumpf           1.37  endif
212                       
213                       ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR)))
214 david.dillard   1.65      ALLOW_EXPERIMENTAL = -aE
215 gerarda         1.29  else
216 david.dillard   1.65      ALLOW_EXPERIMENTAL =
217 gerarda         1.29  endif
218                       
219 bob             1.5   LEX = flex
220                       
221 jim.wunderlich  1.94  ## ======================================================================
222                       ##
223                       ## PEGASUS_ENABLE_SORTED_DIFF 
224                       ## This controls if the DIFFSORT function is used rather than a simple DIFF of
225                       ##  of the test results files to the static results file.
226                       ##
227                       ##   Set to "true" enables the sorted diffs of results to static results files.
228                       ##   otherwise results in regular diffs of results to static results files.
229                       ##   see bug 2283 for background information concerning this config variable. 
230                       ##
231                       ##  Defaults to true.
232                       ##
233                       ##
234                       ifndef PEGASUS_ENABLE_SORTED_DIFF
235                       PEGASUS_ENABLE_SORTED_DIFF=true
236                       endif
237                       
238 jim.wunderlich  1.86  ## ========================================================================
239                       ## DIFFSORT function definition 
240                       ## Here is an example using the DIFFSORT function:
241                       ## 
242                       ## difftest: FORCE
243 h.sterling      1.89  ##      @ test > result
244 jim.wunderlich  1.86  ##      @ $(call DIFFSORT,result,standard_result)
245 h.sterling      1.89  ##      @ $(ECHO) +++++ all test passed
246 jim.wunderlich  1.86  ##
247                       
248                       define NL
249                       
250                       
251                       endef
252                       
253 marek           1.107 ifndef FORCE_NOCASE	    
254                       	    
255 jim.wunderlich  1.86  DIFFSORT = $(SORT) $(1) > $(1).tmp $(NL) \
256                       $(SORT) $(2) > $(2).tmp $(NL) \
257                       $(DIFF) $(1).tmp $(2).tmp $(NL) \
258                       $(RM) -f $(1).tmp $(NL) \
259                       $(RM) -f $(2).tmp $(NL)
260                       
261 marek           1.107 else
262                       
263                       DIFFSORT = $(SORT) -f $(1) > $(1).tmp $(NL) \
264                       $(SORT) -f $(2) > $(2).tmp $(NL) \
265                       $(DIFF) -i $(1).tmp $(2).tmp $(NL) \
266                       $(RM) -f $(1).tmp $(NL) \
267                       $(RM) -f $(2).tmp $(NL)
268                       
269                       endif
270                       
271                       DIFFSORTNOCASE = $(SORT) $(1) > $(1).tmp $(NL) \
272                       $(SORT) $(2) > $(2).tmp $(NL) \
273                       $(DIFF) -i $(1).tmp $(2).tmp $(NL) \
274                       $(RM) -f $(1).tmp $(NL) \
275                       $(RM) -f $(2).tmp $(NL)
276                       
277 jim.wunderlich  1.104 #
278                       # The following is used to define the usage message for MakeFile
279                       #
280                       # See the pegasus/Makfile for an exampleof its usage.
281                       #
282                       USAGE = @$(ECHO) " $(1)"
283                       
284 mike            1.8   ################################################################################
285                       ##
286                       ## Attempt to include a platform configuration file:
287                       ##
288                       ################################################################################
289                       
290 david.dillard   1.66  PLATFORM_FILE = $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
291                       ifneq ($(wildcard $(PLATFORM_FILE)), )
292                           include $(PLATFORM_FILE)
293                       else
294 david.dillard   1.65    $(error  PEGASUS_PLATFORM environment variable must be set to one of\
295 david.dillard   1.66          the following:$(VALID_PLATFORMS))
296 mike            1.8   endif
297 karl            1.17  
298 karl            1.36  ################################################################################
299                       ##
300                       ##  Set up any platform independent compile conditionals by adding them to
301                       ##  precreated FLAGS parameter.
302 chip            1.76  ##  Assumes that the basic flags have been setup in FLAGS.
303 karl            1.36  ##  Assumes that compile time flags are controlled with -D CLI option.
304                       ##
305                       ################################################################################
306 karl            1.17  
307 jim.wunderlich  1.97  
308                       ################################################################################
309                       ##
310                       ## PEGASUS_MAX_THREADS_PER_SVC_QUEUE
311                       ##
312                       ## Controls the maximum number of threads allowed per message service queue.
313                       ##     It is allowed to range between 1 and MAX_THREADS_PER_SVC_QUEUE_LIMIT
314 kumpf           1.103 ##     as set in pegasus/src/Pegasus/Common/MessageQueueService.cpp.  If the
315                       ##     specified value is out of range, MAX_THREADS_PER_SVC_QUEUE_LIMIT is
316                       ##     used.  The default value is MAX_THREADS_PER_SVC_QUEUE_DEFAULT, as
317                       ##     defined in pegasus/src/Pegasus/Common/MessageQueueService.cpp.
318 jim.wunderlich  1.98  ##
319                       ##	Label					Current value
320                       ##	--------------------------------------  -------------
321                       ##      MAX_THREADS_PER_SVC_QUEUE_LIMIT	        5000
322                       ##      MAX_THREADS_PER_SVC_QUEUE_DEFAULT       5
323 jim.wunderlich  1.97  ##
324                       ##
325                       
326                       ifdef PEGASUS_MAX_THREADS_PER_SVC_QUEUE
327                         DEFINES += -DMAX_THREADS_PER_SVC_QUEUE=$(PEGASUS_MAX_THREADS_PER_SVC_QUEUE)
328                       endif
329                       
330 jim.wunderlich  1.99  ##############################################################################
331                       ## 
332                       ## PEGASUS_INDICATIONS_Q_THRESHOLD
333                       ##
334                       ## Controls if indications providers are stalled if the indications
335                       ## service queue is too large.
336                       ##
337 jim.wunderlich  1.100 ##      defaults to not set.
338 jim.wunderlich  1.99  ##
339                       ## 	It can be set to any positive value.
340                       ##
341 jim.wunderlich  1.100 ## If not set providers are never stalled. This implies that the
342 jim.wunderlich  1.99  ## indications service queue may become as large as neccesary to hold all
343                       ## the indicaitons generated.
344                       ##
345 jim.wunderlich  1.100 ## If set to any value then providers are stalled by forcing them to sleep
346 jim.wunderlich  1.99  ## when they try to deliver an indication and the indications service queue
347                       ## exceeds this value. They are resumed when the queue count falls 10 percent
348                       ## below this value. 
349                       ##
350                       ## Stall and resume log entries are made to inform the administrator
351                       ## the condition has occured.
352                       ##
353                       ## WARNING: This also affects the Out of Process Providers (OOP Providers)
354                       ##    The OOP Providers use two one way pipes for communication.
355                       ##    By stalling the Provider this prevents the pipe from being read
356                       ##    which will cause the pipe to fill up and the remote side will block.
357                       ##    OOP Prividers mix indications and operations on these two pipes.
358                       ##    This means the operations will also be blocked as a side effect of
359                       ##    the indications being stalled.
360                       ##    
361                       ##
362                       
363                       ifdef PEGASUS_INDICATIONS_Q_THRESHOLD
364                         DEFINES += -DPEGASUS_INDICATIONS_Q_THRESHOLD=$(PEGASUS_INDICATIONS_Q_THRESHOLD)
365                       endif
366                       
367 jim.wunderlich  1.97  
368 karl            1.36  # Setup the conditional compile for client displays.
369 chip            1.76  #
370 karl            1.36  ifdef PEGASUS_CLIENT_TRACE_ENABLE
371 david.dillard   1.65      DEFINES += -DPEGASUS_CLIENT_TRACE_ENABLE
372 karl            1.36  endif
373                       
374 kumpf           1.87  # Allow PEGASUS_ASSERT statements to be disabled.
375                       ifdef PEGASUS_NOASSERTS
376                           DEFINES += -DNDEBUG
377                       endif
378                       
379 mday            1.40  # do not compile trace code. sometimes it causes problems debugging
380                       ifdef PEGASUS_REMOVE_TRACE
381 david.dillard   1.65      DEFINES += -DPEGASUS_REMOVE_TRACE
382 mday            1.40  endif
383                       
384 chuck           1.47  # PEP 161
385                       # Control whether utf-8 filenames are supported by the repository
386                       ifdef PEGASUS_SUPPORT_UTF8_FILENAME
387 david.dillard   1.65      DEFINES += -DPEGASUS_SUPPORT_UTF8_FILENAME
388 chuck           1.47  
389 david.dillard   1.65      # Control whether utf-8 filenames in the repository are escaped
390                           ifdef PEGASUS_REPOSITORY_ESCAPE_UTF8
391                               DEFINES += -DPEGASUS_REPOSITORY_ESCAPE_UTF8
392                           endif
393 chuck           1.47  endif
394                       
395 kumpf           1.49  #
396                       # PEP 142
397                       # The following flag need to be set to enable
398                       # user group authorization functionality.
399                       #
400                       ifdef PEGASUS_ENABLE_USERGROUP_AUTHORIZATION
401 david.dillard   1.65      DEFINES += -DPEGASUS_ENABLE_USERGROUP_AUTHORIZATION
402 kumpf           1.49  endif
403                       
404 chuck           1.67  #
405                       # PEP 193
406                       # The following flag need to be set to disable
407                       # CQL in indication subscriptions
408                       #
409                       ifdef PEGASUS_DISABLE_CQL
410                           DEFINES += -DPEGASUS_DISABLE_CQL
411                       endif
412                       
413 kumpf           1.68  #
414                       # PEP 186
415                       # Allow override of product name/version/status.  A file
416                       # pegasus/src/Pegasus/Common/ProductVersion.h must exist when this
417                       # flag is defined.
418                       #
419                       ifdef PEGASUS_OVERRIDE_PRODUCT_ID
420                           DEFINES += -DPEGASUS_OVERRIDE_PRODUCT_ID
421                       endif
422                       
423 kumpf           1.71  #
424 kumpf           1.106 # PEP 72
425                       # Allow Out-of-Process Providers to be disabled by default
426                       #
427 jim.wunderlich  1.113 ifdef PEGASUS_DEFAULT_ENABLE_OOP
428                         ifeq ($(PEGASUS_DEFAULT_ENABLE_OOP),true)
429                           DEFINES += -DPEGASUS_DEFAULT_ENABLE_OOP
430 jim.wunderlich  1.111   else
431 jim.wunderlich  1.113     ifneq ($(PEGASUS_DEFAULT_ENABLE_OOP),false)
432                             $(error PEGASUS_DEFAULT_ENABLE_OOP ($(PEGASUS_DEFAULT_ENABLE_OOP)) invalid, must be true or false)
433 jim.wunderlich  1.111     endif 
434                         endif
435 kumpf           1.106 endif
436                       
437                       #
438 kumpf           1.71  # PEP 197
439                       # Allow the Provider User Context feature to be disabled.
440                       #
441 kumpf           1.74  ifdef PEGASUS_DISABLE_PROV_USERCTXT
442 kumpf           1.71      DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT
443 kumpf           1.74  else
444                           ifdef PEGASUS_DISABLE_PROV_USERCTXT_REQUESTOR
445                               DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_REQUESTOR
446                           endif
447                           ifdef PEGASUS_DISABLE_PROV_USERCTXT_DESIGNATED
448                               DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_DESIGNATED
449                           endif
450                           ifdef PEGASUS_DISABLE_PROV_USERCTXT_PRIVILEGED
451                               DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_PRIVILEGED
452                           endif
453                           ifdef PEGASUS_DISABLE_PROV_USERCTXT_CIMSERVER
454                               DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_CIMSERVER
455                           endif
456                       endif
457 kumpf           1.71  
458 h.sterling      1.89  # Bug 2147
459                       # Allow local domain socket usage to be disabled.
460                       ifdef PEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET
461                           DEFINES += -DPEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET
462                       endif
463                       
464 chip            1.76  # PEP 211
465                       # Controls object normalization support.
466                       ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION
467                           DEFINES += -DPEGASUS_ENABLE_OBJECT_NORMALIZATION
468                       endif
469                       
470 kumpf           1.80  # Allow ExecQuery functionality to be enabled
471                       ifndef PEGASUS_ENABLE_EXECQUERY
472                           DEFINES += -DPEGASUS_DISABLE_EXECQUERY
473                       endif
474                       
475 yi.zhou         1.85  # Allow System Log Handler to be enabled
476                       ifdef PEGASUS_ENABLE_SYSTEM_LOG_HANDLER
477                         DEFINES += -DPEGASUS_ENABLE_SYSTEM_LOG_HANDLER
478                       endif
479                       
480                       # Allow Email Handler to be enabled
481                       ifdef PEGASUS_ENABLE_EMAIL_HANDLER
482                         DEFINES += -DPEGASUS_ENABLE_EMAIL_HANDLER
483                       endif
484 kumpf           1.49  
485 h.sterling      1.109 # Allow qualifiers to be disabled for instance operations
486                       ifdef PEGASUS_DISABLE_INSTANCE_QUALIFIERS
487                         DEFINES += -DPEGASUS_DISABLE_INSTANCE_QUALIFIERS
488                       endif
489                       
490 yi.zhou         1.108 # Controls snmp indication handler to use NET-SNMP to deliver trap
491                       ifdef PEGASUS_USE_NET_SNMP
492                         DEFINES += -DPEGASUS_USE_NET_SNMP
493                       endif
494                       
495 jim.wunderlich  1.101 #
496                       # PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP
497                       #
498 jim.wunderlich  1.112 # PEGASUS_DISABLE_SLP has been depracated. New use model is:
499 jim.wunderlich  1.101 #
500 jim.wunderlich  1.112 # Use PEGASUS_ENABLE_SLP=true  to enable  compilation of SLP functions.
501                       #
502                       # Use PEGASUS_ENABLE_SLP=false to disable compilation of SLP functions. 
503 jim.wunderlich  1.101 #
504                       # Currently (Aug. 12, 2005) Windows is the only platform that enables SLP 
505                       # by default.
506                       #
507                       # NOTE. Effective with Bug # 2633 some platforms enable SLP.
508 karl            1.75  # To see which platforms look for platform make files that set
509 jim.wunderlich  1.101 # the variable PEGASUS_ENABLE_SLP. 
510                       #
511                       #
512 jim.wunderlich  1.112 
513 karl            1.39  ifdef PEGASUS_ENABLE_SLP
514 jim.wunderlich  1.101   ifdef PEGASUS_DISABLE_SLP
515                           $(error Conflicting defines PEGASUS_ENABLE_SLP and PEGASUS_DISABLE_SLP both set)
516                         endif
517 jim.wunderlich  1.112 endif
518                       
519                       ifdef PEGASUS_DISABLE_SLP
520                           $(error PEGASUS_DISABLE_SLP has been deprecated. Please use PEGASUS_ENABLE_SLP=[true/false] )
521                       
522                       PEGASUS_ENABLE_SLP=false
523                       
524                       endif
525                       
526                       ifdef PEGASUS_ENABLE_SLP
527                         ifeq ($(PEGASUS_ENABLE_SLP),true)
528 david.dillard   1.65      DEFINES += -DPEGASUS_ENABLE_SLP
529 jim.wunderlich  1.112   else
530                           ifneq ($(PEGASUS_ENABLE_SLP),false)
531                             $(error PEGASUS_ENABLE_SLP ($(PEGASUS_ENABLE_SLP)) invalid, must be true or false)
532                           endif 
533                         endif
534 karl            1.39  endif
535 karl            1.36  
536 sushma.fernandes 1.114 #
537                        # Enable this flag to allow the handshake to continue regardless of verification result 
538                        #
539                        ifdef PEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT
540                          DEFINES += -DPEGASUS_OVERRIDE_SSL_CERT_VERIFICATION_RESULT
541                        endif
542                        
543 karl             1.60  # set PEGASUS_DEBUG into the DEFINES if it exists.
544                        # Note that this flag is the general separator between
545                        # debug compiles and non-debug compiles and controls both
546                        # the use of any debug options on compilers and linkers
547                        # and general debug support that we want to be turned on in
548 chip             1.76  # debug mode.
549 karl             1.60  ifdef PEGASUS_DEBUG
550 david.dillard    1.65      DEFINES += -DPEGASUS_DEBUG
551 kumpf            1.88  
552                            # Indications debugging options
553                            ifdef PEGASUS_INDICATION_PERFINST
554                                DEFINES += -DPEGASUS_INDICATION_PERFINST
555                            endif
556                        
557                            ifdef PEGASUS_INDICATION_HASHTRACE
558                                DEFINES += -DPEGASUS_INDICATION_HASHTRACE
559                            endif
560 karl             1.60  endif
561                        
562 chuck            1.42  # compile in the experimental APIs
563 david.dillard    1.65  DEFINES += -DPEGASUS_USE_EXPERIMENTAL_INTERFACES
564 chuck            1.42  
565 kumpf            1.93  # Ensure that the deprecated interfaces are defined in the Pegasus libraries.
566                        # One may wish to disable these interfaces if binary compatibility with
567                        # previous Pegasus releases is not required.
568                        ifndef PEGASUS_DISABLE_DEPRECATED_INTERFACES
569                            DEFINES += -DPEGASUS_USE_DEPRECATED_INTERFACES
570                        endif
571                        
572 w.white          1.57  # Set compile flag to control compilation of CIMOM statistics
573 karl             1.73  ifdef PEGASUS_DISABLE_PERFINST
574                            FLAGS += -DPEGASUS_DISABLE_PERFINST
575 w.white          1.57  endif
576 kumpf            1.56  
577 karl             1.96  # Set compile flag to control compilation of SNIA Extensions
578                        ifdef PEGASUS_SNIA_EXTENSIONS
579                            FLAGS += -DPEGASUS_SNIA_EXTENSIONS
580                        endif
581                        
582 kumpf            1.95  # Allow remote CMPI functionality to be enabled
583                        ifdef PEGASUS_ENABLE_REMOTE_CMPI
584                            FLAGS += -DPEGASUS_ENABLE_REMOTE_CMPI
585                        endif
586                        
587 kumpf            1.56  ############################################################
588                        #
589                        # Set any vendor-specific compile flags
590                        #
591                        ############################################################
592                        
593                        ifdef PEGASUS_VENDOR_HP
594 david.dillard    1.65      DEFINES+= -DPEGASUS_VENDOR_HP
595 kumpf            1.56  endif
596                        
597 chip             1.76  
598 karl             1.17  ############################################################
599                        #
600                        # Set up other Make Variables that depend on platform config files
601                        #
602                        ############################################################
603                        
604                        # This is temporary until we end up with a better place to
605                        # put this variable
606                        # Makefiles can do directory remove with
607                        # $(RMREPOSITORY) repositoryname
608                        #
609                        RMREPOSITORY = $(RMDIRHIER)
610                        
611 w.otsuka         1.63  ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS
612 david.dillard    1.65      FLAGS += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS
613 w.otsuka         1.62  endif
614                        
615                        ifdef PEGASUS_USE_RELEASE_DIRS
616 david.dillard    1.65      FLAGS += -DPEGASUS_USE_RELEASE_DIRS
617 w.otsuka         1.62  endif
618 mday             1.27  
619 denise.eckstein  1.110 ifdef PEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS
620                            FLAGS += -DPEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS
621                        endif
622                        
623 kumpf            1.64  # Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib
624                        ifndef PEGASUS_DEST_LIB_DIR
625 david.dillard    1.65      PEGASUS_DEST_LIB_DIR = lib
626 kumpf            1.64  endif
627 mday             1.28  
628 gs.keenan        1.77  ifeq ($(OS),VMS)
629                         DEFINES += -DPEGASUS_DEST_LIB_DIR="""$(PEGASUS_DEST_LIB_DIR)"""
630                        else
631                         DEFINES += -DPEGASUS_DEST_LIB_DIR=\"$(PEGASUS_DEST_LIB_DIR)\"
632                        endif
633                        
634 w.otsuka         1.79  ################################################################################
635                        ##
636 mike             1.105 ## PEGASUS_CLASS_CACHE_SIZE
637                        ##
638                        ##     This environment variable gives the size of the class cache used by
639                        ##     the CIM repository. When it is undefined, the size defaults to something
640                        ##     relatively small (see src/Pegasus/Repository/CIMRepository.cpp). If
641                        ##     defined, it gives the size of the class cache. If it is 0 , the class
642                        ##     cache is not defined compiled in at all.
643                        ##
644                        ################################################################################
645                        
646                        ifdef PEGASUS_CLASS_CACHE_SIZE
647                        DEFINES += -DPEGASUS_CLASS_CACHE_SIZE=$(PEGASUS_CLASS_CACHE_SIZE)
648                        endif
649                        
650                        ################################################################################
651                        ##
652 w.otsuka         1.79  ## Additional build flags passed in through environment variables.
653                        ## These flags are added to the compile/link commands.
654                        ##
655                        ################################################################################
656                        
657                        ifdef PEGASUS_EXTRA_CXX_FLAGS
658                            EXTRA_CXX_FLAGS = $(PEGASUS_EXTRA_CXX_FLAGS)
659                        endif
660                        
661                        ifdef PEGASUS_EXTRA_C_FLAGS
662                            EXTRA_C_FLAGS = $(PEGASUS_EXTRA_C_FLAGS)
663                        endif
664                        
665                        ifdef PEGASUS_EXTRA_LINK_FLAGS
666                            EXTRA_LINK_FLAGS = $(PEGASUS_EXTRA_LINK_FLAGS)
667                        endif
668                        

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2