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

  1 mike  1.1 ################################################################################
  2           ##
  3           ## Get external environment variables. Note that all external environment
  4           ## variables begin with "PEGASUS_".
  5           ##
  6           ################################################################################
  7           
  8 konrad.r 1.55 ifndef ROOT
  9                   ROOT =  $(subst \,/,$(PEGASUS_ROOT))
 10               endif
 11               
 12 denise.eckstein 1.61 ifdef PEGASUS_ENVVAR_FILE
 13 david.dillard   1.65     include $(PEGASUS_ENVVAR_FILE)
 14 denise.eckstein 1.61 else
 15 david.dillard   1.65     include $(ROOT)/env_var.status
 16 denise.eckstein 1.61 endif
 17 konrad.r        1.55 
 18 mike            1.2  ifdef PEGASUS_HOME
 19 david.dillard   1.65     HOME_DIR = $(subst \,/,$(PEGASUS_HOME))
 20 mike            1.1  else
 21 david.dillard   1.65     $(error PEGASUS_HOME environment variable undefined)
 22 mike            1.1  endif
 23                      
 24 karl            1.18 ifdef PEGASUS_ROOT
 25                          ROOT =  $(subst \,/,$(PEGASUS_ROOT))
 26                      else
 27 david.dillard   1.65     $(error PEGASUS_ROOT environment variable undefined)
 28 karl            1.18 endif
 29                      
 30 chuck           1.35 # l10n
 31                      ifdef ICU_ROOT
 32                          ICUROOT =  $(subst \,/,$(ICU_ROOT))
 33                      endif
 34                      
 35 kumpf           1.21 ifdef PEGASUS_TMP
 36 david.dillard   1.65     TMP_DIR = $(subst \,/,$(PEGASUS_TMP))
 37 kumpf           1.21 else
 38 david.dillard   1.65     TMP_DIR = .
 39 kumpf           1.21 endif
 40                      
 41 kumpf           1.26 ifdef PEGASUS_DISPLAYCONSUMER_DIR
 42 david.dillard   1.65     DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_DISPLAYCONSUMER_DIR))
 43 kumpf           1.26 else
 44 david.dillard   1.65     DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_HOME))
 45 kumpf           1.26 endif
 46                      
 47 david.dillard   1.66 PLATFORM_FILES=$(wildcard $(ROOT)/mak/platform*.mak)
 48                      TEMP=$(subst $(ROOT)/mak/platform_,, $(PLATFORM_FILES))
 49                      VALID_PLATFORMS=$(subst .mak,, $(TEMP))
 50 mike            1.8  
 51                      ifndef PEGASUS_PLATFORM
 52 david.dillard   1.66     $(error PEGASUS_PLATFORM environment variable undefined. Please set to\
 53                              one of the following:$(VALID_PLATFORMS))
 54 mike            1.8  endif
 55                      
 56 mike            1.1  ################################################################################
 57                      
 58 kumpf           1.22 OBJ_DIR = $(HOME_DIR)/obj/$(DIR)
 59                      BIN_DIR = $(HOME_DIR)/bin
 60                      LIB_DIR = $(HOME_DIR)/lib
 61 chuck           1.35 
 62                      # l10n
 63                      # define the location for the compiled messages
 64                      MSG_ROOT = $(HOME_DIR)/msg
 65 kumpf           1.22 
 66                      # define the location for the repository
 67                      REPOSITORY_DIR = $(HOME_DIR)
 68                      REPOSITORY_ROOT = $(REPOSITORY_DIR)/repository
 69 mike            1.1  
 70 kumpf           1.23 # The two variables, CIM_SCHEMA_DIR and CIM_SCHEMA_VER,
 71 chip            1.76 # are used to control the version of the CIM Schema
 72 kumpf           1.23 # loaded into the Pegasus Internal, InterOp,
 73                      # root/cimv2 and various test namespaces.
 74                      #
 75 chip            1.76 # Update the following two environment variables to
 76 kumpf           1.23 # change the version.
 77                      
 78 kumpf           1.37 # The environment variable PEGASUS_CIM_SCHEMA can be used
 79 chip            1.76 # to change the values of CIM_SCHEMA_DIR, CIM_SCHEMA_VER
 80 kumpf           1.37 # and ALLOW_EXPERIMENTAL.
 81                      #
 82                      # To use the PEGASUS_CIM_SCHEMA variable the Schema mof
 83                      # files must be placed in the directory
 84                      # $(PEGAUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
 85 chip            1.76 #
 86 kumpf           1.37 # The value of PEGASUS_CIM_SCHEMA must conform to the
 87                      # following syntax:
 88                      #
 89                      #        CIM[Prelim]<CIM_SCHEMA_VER>
 90                      #
 91 chip            1.76 # The string "Prelim" should be included if the
 92 kumpf           1.37 # Schema contains "Experimental" class definitions.
 93                      #
 94                      # The value of <CIM_SCHEMA_VER> must be the value
 95 chip            1.76 # of the version string included by the DMTF as
 96                      # part of the mof file names (e.g, CIM_Core27.mof).
 97 kumpf           1.37 # Therefore, for example, the value of <CIM_SCHEMA_VER>
 98                      # for CIM27 Schema directories MUST be 27.
 99                      #
100 chip            1.76 # Examples of valid values of PEGASUS_CIM_SCHEMA
101 kumpf           1.37 # include CIMPrelim27, CIM27, CIMPrelim28, and CIM28.
102                      #
103                      # Note the CIMPrelim271 would NOT be a valid value
104                      # for PEGASUS_CIM_SCHEMA because the version string
105                      # portion of the mof files (e.g., CIM_Core27.mof) in
106                      # the CIMPrelimin271 directory is 27 not 271.
107 kumpf           1.23 
108 gerarda         1.29 # ***** CIM_SCHEMA_DIR INFO ****
109                      # If CIM_SCHEMA_DIR changes to use a preliminary schema which
110                      # has experimentals make sure and change the path below to appopriate
111                      # directory path.  Example:  CIMPrelim271 is preliminary and has
112                      # experimental classes.  Since experimental classes exist the -aE
113                      # option of the mof compiler needs to be set.
114                      # *****
115 kumpf           1.37 
116                      ifdef PEGASUS_CIM_SCHEMA
117 david.dillard   1.65     CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
118 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),)
119 david.dillard   1.65        CIM_SCHEMA_VER=
120                          else
121                             CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA)))
122                          endif
123 kumpf           1.37 else
124 david.dillard   1.65     CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM28
125                          CIM_SCHEMA_VER=28
126 kumpf           1.37 endif
127                      
128                      ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR)))
129 david.dillard   1.65     ALLOW_EXPERIMENTAL = -aE
130 gerarda         1.29 else
131 david.dillard   1.65     ALLOW_EXPERIMENTAL =
132 gerarda         1.29 endif
133                      
134 bob             1.5  LEX = flex
135                      
136 mike            1.8  ################################################################################
137                      ##
138 chip            1.76 ## Default installation paths
139 konrad.r        1.52 ##
140                      ################################################################################
141                      
142                      ## Default values to install files when 'make install' is invoked.
143                      
144                      ifndef PREFIX
145 david.dillard   1.65     PREFIX=$(HOME_DIR)/install
146 konrad.r        1.52 endif
147                      
148                      ifndef SYSCONF_PREFIX
149 david.dillard   1.65     SYSCONF_PREFIX=$(PREFIX)/etc
150 konrad.r        1.52 endif
151                      
152                      ifndef LOCAL_STATE_PREFIX
153 david.dillard   1.65     LOCAL_STATE_PREFIX=$(PREFIX)/var/
154 konrad.r        1.52 endif
155                      
156                      ifndef DEST_LIB_DIR
157 david.dillard   1.65     DEST_LIB_DIR = $(PREFIX)/lib
158 konrad.r        1.52 endif
159                      
160                      ifndef DEST_BIN_DIR
161 david.dillard   1.65     DEST_BIN_DIR = $(PREFIX)/bin
162 konrad.r        1.52 endif
163                      
164                      ifndef DEST_SBIN_DIR
165 david.dillard   1.65     DEST_SBIN_DIR = $(PREFIX)/sbin
166 konrad.r        1.52 endif
167                      
168                      ifndef DEST_ETC_DIR
169 david.dillard   1.65     DEST_ETC_DIR = $(SYSCONF_PREFIX)/pegasus
170 konrad.r        1.52 endif
171                      
172                      ifndef DEST_MAN_DIR
173 david.dillard   1.65     DEST_MAN_DIR = $(PREFIX)/man
174 konrad.r        1.52 endif
175                      
176                      ifndef DEST_VAR_DIR
177 david.dillard   1.65     DEST_VAR_DIR = $(LOCAL_STATE_PREFIX)
178 konrad.r        1.52 endif
179                      
180                      ################################################################################
181                      ##
182 mike            1.8  ## Attempt to include a platform configuration file:
183                      ##
184                      ################################################################################
185                      
186 david.dillard   1.66 PLATFORM_FILE = $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
187                      ifneq ($(wildcard $(PLATFORM_FILE)), )
188                          include $(PLATFORM_FILE)
189                      else
190 david.dillard   1.65   $(error  PEGASUS_PLATFORM environment variable must be set to one of\
191 david.dillard   1.66         the following:$(VALID_PLATFORMS))
192 mike            1.8  endif
193 karl            1.17 
194 karl            1.36 ################################################################################
195                      ##
196 chip            1.76 ## Default installation macros
197 konrad.r        1.52 ##
198                      ################################################################################
199                      
200                      ## INSTALL_LIB creates the destination directory if missing,
201                      ## copies the library and generates the symbolic link.
202                      
203                      ifndef INSTALL_LIBRARY
204 chip            1.76     ## These macros are also defined in the Platform_<*>.mak files.
205 david.dillard   1.65     INSTALL_LIBRARY =  $(MKDIRHIER) $(DEST_LIB_DIR); $(COPY) $(FULL_LIB) $(DEST_LIB_DIR)
206 konrad.r        1.52 endif
207                      
208                      ## INSTALL_PROGRAM creates the destination directory if missing and
209                      ## copies the file.
210                      ifndef INSTALL_PROGRAM
211 david.dillard   1.65     INSTALL_PROGRAM = $(MKDIRHIER) $(DEST_BIN_DIR); $(COPY) $(FULL_PROGRAM) $(DEST_BIN_DIR)
212 konrad.r        1.52 endif
213                      ## INSTALL_PROGRAM creates the destination directory if missing and
214                      ## copies the file.
215                      ifndef INSTALL_SBIN_PROGRAM
216 david.dillard   1.65     INSTALL_SBIN_PROGRAM = $(MKDIRHIER) $(DEST_SBIN_DIR);  $(COPY) $(FULL_PROGRAM) $(DEST_SBIN_DIR)
217 konrad.r        1.52 endif
218                      ## The rest of the macros for DEST_MAN_DIR, DEST_VAR_DIR, etc. are not provided in this file.
219                      
220                      ################################################################################
221                      ##
222 karl            1.36 ##  Set up any platform independent compile conditionals by adding them to
223                      ##  precreated FLAGS parameter.
224 chip            1.76 ##  Assumes that the basic flags have been setup in FLAGS.
225 karl            1.36 ##  Assumes that compile time flags are controlled with -D CLI option.
226                      ##
227                      ################################################################################
228 karl            1.17 
229 karl            1.36 # Setup the conditional compile for client displays.
230 chip            1.76 #
231 karl            1.36 ifdef PEGASUS_CLIENT_TRACE_ENABLE
232 david.dillard   1.65     DEFINES += -DPEGASUS_CLIENT_TRACE_ENABLE
233 karl            1.36 endif
234                      
235 mday            1.40 # do not compile trace code. sometimes it causes problems debugging
236                      ifdef PEGASUS_REMOVE_TRACE
237 david.dillard   1.65     DEFINES += -DPEGASUS_REMOVE_TRACE
238 mday            1.40 endif
239                      
240 chuck           1.47 # PEP 161
241                      # Control whether utf-8 filenames are supported by the repository
242                      ifdef PEGASUS_SUPPORT_UTF8_FILENAME
243 david.dillard   1.65     DEFINES += -DPEGASUS_SUPPORT_UTF8_FILENAME
244 chuck           1.47 
245 david.dillard   1.65     # Control whether utf-8 filenames in the repository are escaped
246                          ifdef PEGASUS_REPOSITORY_ESCAPE_UTF8
247                              DEFINES += -DPEGASUS_REPOSITORY_ESCAPE_UTF8
248                          endif
249 chuck           1.47 endif
250                      
251 kumpf           1.49 #
252                      # PEP 142
253                      # The following flag need to be set to enable
254                      # user group authorization functionality.
255                      #
256                      ifdef PEGASUS_ENABLE_USERGROUP_AUTHORIZATION
257 david.dillard   1.65     DEFINES += -DPEGASUS_ENABLE_USERGROUP_AUTHORIZATION
258 kumpf           1.49 endif
259                      
260 chuck           1.67 #
261                      # PEP 193
262                      # The following flag need to be set to disable
263                      # CQL in indication subscriptions
264                      #
265                      ifdef PEGASUS_DISABLE_CQL
266                          DEFINES += -DPEGASUS_DISABLE_CQL
267                      endif
268                      
269 kumpf           1.68 #
270                      # PEP 186
271                      # Allow override of product name/version/status.  A file
272                      # pegasus/src/Pegasus/Common/ProductVersion.h must exist when this
273                      # flag is defined.
274                      #
275                      ifdef PEGASUS_OVERRIDE_PRODUCT_ID
276                          DEFINES += -DPEGASUS_OVERRIDE_PRODUCT_ID
277                      endif
278                      
279 kumpf           1.71 #
280                      # PEP 197
281                      # Allow the Provider User Context feature to be disabled.
282                      #
283 kumpf           1.74 PEGASUS_DISABLE_PROV_USERCTXT=1
284                      ifdef PEGASUS_DISABLE_PROV_USERCTXT
285 kumpf           1.71     DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT
286 kumpf           1.74 else
287                          ifdef PEGASUS_DISABLE_PROV_USERCTXT_REQUESTOR
288                              DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_REQUESTOR
289                          endif
290                          ifdef PEGASUS_DISABLE_PROV_USERCTXT_DESIGNATED
291                              DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_DESIGNATED
292                          endif
293                          ifdef PEGASUS_DISABLE_PROV_USERCTXT_PRIVILEGED
294                              DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_PRIVILEGED
295                          endif
296                          ifdef PEGASUS_DISABLE_PROV_USERCTXT_CIMSERVER
297                              DEFINES += -DPEGASUS_DISABLE_PROV_USERCTXT_CIMSERVER
298                          endif
299                      endif
300 kumpf           1.71 
301 chip            1.76 # PEP 211
302                      # Controls object normalization support.
303                      ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION
304                          DEFINES += -DPEGASUS_ENABLE_OBJECT_NORMALIZATION
305                      endif
306                      
307 kumpf           1.49 
308 karl            1.39 # setup function to enable SLP functions in the Pegasus standard compile
309 karl            1.75 # Set the environment varaible PEGASUS_ENABLE_SLP to enable SLP code.
310                      # NOTE. Effective with Bug # 2633 some platforms now enable SLP.
311                      # To see which platforms look for platform make files that set
312 chip            1.76 # the variable PEGASUS_ENABLE_SLP
313 karl            1.39 ifdef PEGASUS_ENABLE_SLP
314 david.dillard   1.65     DEFINES += -DPEGASUS_ENABLE_SLP
315 karl            1.39 endif
316 karl            1.36 
317 karl            1.60 # set PEGASUS_DEBUG into the DEFINES if it exists.
318                      # Note that this flag is the general separator between
319                      # debug compiles and non-debug compiles and controls both
320                      # the use of any debug options on compilers and linkers
321                      # and general debug support that we want to be turned on in
322 chip            1.76 # debug mode.
323 karl            1.60 ifdef PEGASUS_DEBUG
324 david.dillard   1.65     DEFINES += -DPEGASUS_DEBUG
325 karl            1.60 endif
326                      
327 chuck           1.42 # compile in the experimental APIs
328 david.dillard   1.65 DEFINES += -DPEGASUS_USE_EXPERIMENTAL_INTERFACES
329 chuck           1.42 
330 w.white         1.57 # Set compile flag to control compilation of CIMOM statistics
331 karl            1.73 ifdef PEGASUS_DISABLE_PERFINST
332                          FLAGS += -DPEGASUS_DISABLE_PERFINST
333 w.white         1.57 endif
334 kumpf           1.56 
335                      ############################################################
336                      #
337                      # Set any vendor-specific compile flags
338                      #
339                      ############################################################
340                      
341                      ifdef PEGASUS_VENDOR_HP
342 david.dillard   1.65     DEFINES+= -DPEGASUS_VENDOR_HP
343 kumpf           1.56 endif
344                      
345 chip            1.76 
346 karl            1.17 ############################################################
347                      #
348                      # Set up other Make Variables that depend on platform config files
349                      #
350                      ############################################################
351                      
352                      # This is temporary until we end up with a better place to
353                      # put this variable
354                      # Makefiles can do directory remove with
355                      # $(RMREPOSITORY) repositoryname
356                      #
357                      RMREPOSITORY = $(RMDIRHIER)
358                      
359 w.otsuka        1.63 ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS
360 david.dillard   1.65     FLAGS += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS
361 w.otsuka        1.62 endif
362                      
363                      ifdef PEGASUS_USE_RELEASE_DIRS
364 david.dillard   1.65     FLAGS += -DPEGASUS_USE_RELEASE_DIRS
365 w.otsuka        1.62 endif
366 mday            1.27 
367 kumpf           1.64 # Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib
368                      ifndef PEGASUS_DEST_LIB_DIR
369 david.dillard   1.65     PEGASUS_DEST_LIB_DIR = lib
370 kumpf           1.64 endif
371 mday            1.28 
372 gs.keenan       1.77 ifeq ($(OS),VMS)
373                       DEFINES += -DPEGASUS_DEST_LIB_DIR="""$(PEGASUS_DEST_LIB_DIR)"""
374                      else
375                       DEFINES += -DPEGASUS_DEST_LIB_DIR=\"$(PEGASUS_DEST_LIB_DIR)\"
376                      endif
377                      

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2