(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                        include $(PEGASUS_ENVVAR_FILE)
 14                      else
 15                        include $(ROOT)/env_var.status
 16                      endif
 17 konrad.r        1.55 
 18 mike            1.2  ifdef PEGASUS_HOME
 19                        HOME_DIR = $(subst \,/,$(PEGASUS_HOME))
 20 mike            1.1  else
 21 mike            1.2    ERROR = pegasus_home_undefined
 22                      pegasus_home_undefined:
 23 mike            1.4  	@ echo PEGASUS_HOME environment variable undefined
 24 mike            1.2  	@ exit 1
 25 mike            1.1  endif
 26                      
 27 karl            1.18 ifdef PEGASUS_ROOT
 28                          ROOT =  $(subst \,/,$(PEGASUS_ROOT))
 29                      else
 30                          ERROR = pegasus_root_undefined
 31                      pegasus_root_undefined:
 32                      	@ echo PEGASUS_ROOT environment variable undefined
 33                      	@ exit 1
 34                      endif
 35                      
 36 chuck           1.35 # l10n
 37                      ifdef ICU_ROOT
 38                          ICUROOT =  $(subst \,/,$(ICU_ROOT))
 39                      endif
 40                      
 41 kumpf           1.21 ifdef PEGASUS_TMP
 42                        TMP_DIR = $(subst \,/,$(PEGASUS_TMP))
 43                      else
 44                        TMP_DIR = .
 45                      endif
 46                      
 47 kumpf           1.26 ifdef PEGASUS_DISPLAYCONSUMER_DIR
 48                        DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_DISPLAYCONSUMER_DIR))
 49                      else
 50 kumpf           1.38   DISPLAYCONSUMER_DIR = $(subst \,/,$(PEGASUS_HOME))
 51 kumpf           1.26 endif
 52                      
 53 mike            1.14 VALID_PLATFORMS = \
 54                          WIN32_IX86_MSVC \
 55                          LINUX_IX86_GNU \
 56 david.eger      1.32     LINUX_PPC_GNU \
 57 w.otsuka        1.64.2.2     LINUX_PPC64_GNU \
 58 kumpf           1.19         LINUX_IA64_GNU \
 59 david.eger      1.33         LINUX_ZSERIES_GNU \
 60 w.otsuka        1.64.2.2     LINUX_ZSERIES64_GNU \
 61 mike            1.14         AIX_RS_IBMCXX \
 62                              HPUX_PARISC_ACC \
 63 kumpf           1.22         HPUX_IA64_ACC \
 64 mike            1.15         TRU64_ALPHA_DECCXX \
 65 mike            1.16         SOLARIS_SPARC_GNU \
 66 keith.petley    1.34         SOLARIS_SPARC_CC \
 67 mike            1.16         ZOS_ZSERIES_IBM \
 68 dudhe.girish    1.48         NSK_NONSTOP_NMCPLUS \
 69                              DARWIN_PPC_GNU 
 70 mike            1.8      
 71                          ifndef PEGASUS_PLATFORM
 72                            ERROR = pegasus_platform_undefined
 73                          pegasus_platform_undefined:
 74                          	@ echo PEGASUS_PLATFORM environment variable undefined. Please set to\
 75                          	    one of the following: $(VALID_PLATFORMS)
 76                          	@ exit 1
 77                          endif
 78                          
 79 mike            1.1      ################################################################################
 80                          
 81 kumpf           1.22     OBJ_DIR = $(HOME_DIR)/obj/$(DIR)
 82                          BIN_DIR = $(HOME_DIR)/bin
 83                          LIB_DIR = $(HOME_DIR)/lib
 84 chuck           1.35     
 85                          # l10n
 86                          # define the location for the compiled messages
 87                          MSG_ROOT = $(HOME_DIR)/msg
 88 kumpf           1.22     
 89                          # define the location for the repository
 90                          REPOSITORY_DIR = $(HOME_DIR)
 91                          REPOSITORY_ROOT = $(REPOSITORY_DIR)/repository
 92 mike            1.1      
 93 kumpf           1.23     # The two variables, CIM_SCHEMA_DIR and CIM_SCHEMA_VER,
 94                          # are used to control the version of the CIM Schema 
 95                          # loaded into the Pegasus Internal, InterOp,
 96                          # root/cimv2 and various test namespaces.
 97                          #
 98                          # Update the following two environment variables to 
 99                          # change the version.
100                          
101 kumpf           1.37     # The environment variable PEGASUS_CIM_SCHEMA can be used
102                          # to change the values of CIM_SCHEMA_DIR, CIM_SCHEMA_VER 
103                          # and ALLOW_EXPERIMENTAL.
104                          #
105                          # To use the PEGASUS_CIM_SCHEMA variable the Schema mof
106                          # files must be placed in the directory
107                          # $(PEGAUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
108                          # 
109                          # The value of PEGASUS_CIM_SCHEMA must conform to the
110                          # following syntax:
111                          #
112                          #        CIM[Prelim]<CIM_SCHEMA_VER>
113                          #
114                          # The string "Prelim" should be included if the 
115                          # Schema contains "Experimental" class definitions.
116                          #
117                          # The value of <CIM_SCHEMA_VER> must be the value
118                          # of the version string included by the DMTF as 
119                          # part of the mof file names (e.g, CIM_Core27.mof). 
120                          # Therefore, for example, the value of <CIM_SCHEMA_VER>
121                          # for CIM27 Schema directories MUST be 27.
122 kumpf           1.37     #
123                          # Examples of valid values of PEGASUS_CIM_SCHEMA 
124                          # include CIMPrelim27, CIM27, CIMPrelim28, and CIM28.
125                          #
126                          # Note the CIMPrelim271 would NOT be a valid value
127                          # for PEGASUS_CIM_SCHEMA because the version string
128                          # portion of the mof files (e.g., CIM_Core27.mof) in
129                          # the CIMPrelimin271 directory is 27 not 271.
130 kumpf           1.23     
131 gerarda         1.29     # ***** CIM_SCHEMA_DIR INFO ****
132                          # If CIM_SCHEMA_DIR changes to use a preliminary schema which
133                          # has experimentals make sure and change the path below to appopriate
134                          # directory path.  Example:  CIMPrelim271 is preliminary and has
135                          # experimental classes.  Since experimental classes exist the -aE
136                          # option of the mof compiler needs to be set.
137                          # *****
138 kumpf           1.37     
139                          ifdef PEGASUS_CIM_SCHEMA
140                            CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/$(PEGASUS_CIM_SCHEMA)
141 dj.gorey        1.59       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),)  
142 dj.gorey        1.58          CIM_SCHEMA_VER=
143                            else
144                               CIM_SCHEMA_VER=$(patsubst CIM%,%,$(patsubst CIMPrelim%,%,$(PEGASUS_CIM_SCHEMA)))
145                            endif
146 kumpf           1.37     else
147 karl            1.51       CIM_SCHEMA_DIR=$(PEGASUS_ROOT)/Schemas/CIM28
148                            CIM_SCHEMA_VER=28
149 kumpf           1.37     endif
150                          
151                          ifneq (, $(findstring Prelim, $(CIM_SCHEMA_DIR)))
152                             ALLOW_EXPERIMENTAL = -aE
153 gerarda         1.29     else
154 kumpf           1.37        ALLOW_EXPERIMENTAL =
155 gerarda         1.29     endif
156                          
157 bob             1.5      LEX = flex
158                          
159 mike            1.8      ################################################################################
160                          ##
161 konrad.r        1.52     ## Default installation paths 
162                          ##
163                          ################################################################################
164                          
165                          ## Default values to install files when 'make install' is invoked.
166                          
167                          ifndef PREFIX
168                          PREFIX=$(HOME_DIR)/install
169                          endif
170                          
171                          ifndef SYSCONF_PREFIX
172                          SYSCONF_PREFIX=$(PREFIX)/etc
173                          endif
174                          
175                          ifndef LOCAL_STATE_PREFIX
176 konrad.r        1.53     LOCAL_STATE_PREFIX=$(PREFIX)/var/
177 konrad.r        1.52     endif
178                          
179                          ifndef DEST_LIB_DIR
180                          DEST_LIB_DIR = $(PREFIX)/lib
181                          endif
182                          
183                          ifndef DEST_BIN_DIR
184                          DEST_BIN_DIR = $(PREFIX)/bin
185                          endif
186                          
187                          ifndef DEST_SBIN_DIR
188                          DEST_SBIN_DIR = $(PREFIX)/sbin
189                          endif
190                          
191                          ifndef DEST_ETC_DIR
192 konrad.r        1.54     DEST_ETC_DIR = $(SYSCONF_PREFIX)/pegasus
193 konrad.r        1.52     endif
194                          
195                          ifndef DEST_MAN_DIR
196                          DEST_MAN_DIR = $(PREFIX)/man
197                          endif
198                          
199                          ifndef DEST_VAR_DIR
200                          DEST_VAR_DIR = $(LOCAL_STATE_PREFIX)
201                          endif
202                          
203                          ################################################################################
204                          ##
205 mike            1.8      ## Attempt to include a platform configuration file:
206                          ##
207                          ################################################################################
208                          
209 mike            1.9      ifeq ($(PEGASUS_PLATFORM),WIN32_IX86_MSVC)
210                            include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
211 mike            1.8        FOUND = true
212                          endif
213                          
214 mike            1.9      ifeq ($(PEGASUS_PLATFORM),LINUX_IX86_GNU)
215 david.eger      1.32       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
216                            FOUND = true
217                          endif
218                          
219                          ifeq ($(PEGASUS_PLATFORM),LINUX_PPC_GNU)
220 kumpf           1.19       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
221                            FOUND = true
222                          endif
223                          
224                          ifeq ($(PEGASUS_PLATFORM),LINUX_IA64_GNU)
225 david.eger      1.33       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
226                            FOUND = true
227                          endif
228                          
229                          ifeq ($(PEGASUS_PLATFORM),LINUX_ZSERIES_GNU)
230 mike            1.12       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
231                            FOUND = true
232                          endif
233                          
234 w.otsuka        1.64.2.5 ifeq ($(PEGASUS_PLATFORM),LINUX_ZSERIES64_GNU)
235                            include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
236                            FOUND = true
237                          endif
238                          
239 mike            1.12     ifeq ($(PEGASUS_PLATFORM),AIX_RS_IBMCXX)
240 mike            1.13       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
241                            FOUND = true
242                          endif
243                          
244                          ifeq ($(PEGASUS_PLATFORM),HPUX_PARISC_ACC)
245 kumpf           1.22       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
246                            FOUND = true
247                          endif
248                          
249                          ifeq ($(PEGASUS_PLATFORM),HPUX_IA64_ACC)
250 mike            1.14       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
251                            FOUND = true
252                          endif
253                          
254                          ifeq ($(PEGASUS_PLATFORM),TRU64_ALPHA_DECCXX)
255 mike            1.15       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
256                            FOUND = true
257                          endif
258                          
259                          ifeq ($(PEGASUS_PLATFORM),SOLARIS_SPARC_GNU)
260 keith.petley    1.34       include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
261                            FOUND = true
262                          endif
263                          
264                          ifeq ($(PEGASUS_PLATFORM),SOLARIS_SPARC_CC)
265 mike            1.9        include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
266 mike            1.8        FOUND = true
267 mike            1.16     endif
268                          
269                          ifeq ($(PEGASUS_PLATFORM),ZOS_ZSERIES_IBM)
270                             include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
271                             FOUND = true
272                          endif
273                          
274                          ifeq ($(PEGASUS_PLATFORM),NSK_NONSTOP_NMCPLUS)
275 dudhe.girish    1.48        include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
276                             FOUND = true
277                          endif
278                          
279                          ifeq ($(PEGASUS_PLATFORM),DARWIN_PPC_GNU)
280 mike            1.16        include $(ROOT)/mak/platform_$(PEGASUS_PLATFORM).mak
281                             FOUND = true
282 mike            1.8      endif
283                          
284                          ifneq ($(FOUND),true)
285                            ERROR = pegasus_unknown_platform
286                          pegasus_unknown_platform:
287                          	@ echo PEGASUS_PLATFORM environment variable must be set to one of\
288                          	    the following: $(VALID_PLATFORMS)
289                          	@ exit 1
290                          endif
291 karl            1.17     
292 karl            1.36     ################################################################################
293                          ##
294 konrad.r        1.52     ## Default installation macros 
295                          ##
296                          ################################################################################
297                          
298                          ## INSTALL_LIB creates the destination directory if missing,
299                          ## copies the library and generates the symbolic link.
300                          
301                          ifndef INSTALL_LIBRARY
302                          ## These macros are also defined in the Platform_<*>.mak files. 
303                          INSTALL_LIBRARY =  $(MKDIRHIER) $(DEST_LIB_DIR); $(COPY) $(FULL_LIB) $(DEST_LIB_DIR)
304                          endif
305                          
306                          ## INSTALL_PROGRAM creates the destination directory if missing and
307                          ## copies the file.
308                          ifndef INSTALL_PROGRAM
309                          INSTALL_PROGRAM = $(MKDIRHIER) $(DEST_BIN_DIR); $(COPY) $(FULL_PROGRAM) $(DEST_BIN_DIR)
310                          endif
311                          ## INSTALL_PROGRAM creates the destination directory if missing and
312                          ## copies the file.
313                          ifndef INSTALL_SBIN_PROGRAM
314                          INSTALL_SBIN_PROGRAM = $(MKDIRHIER) $(DEST_SBIN_DIR);  $(COPY) $(FULL_PROGRAM) $(DEST_SBIN_DIR)
315 konrad.r        1.52     endif
316                          ## The rest of the macros for DEST_MAN_DIR, DEST_VAR_DIR, etc. are not provided in this file.
317                          
318                          ################################################################################
319                          ##
320 karl            1.36     ##  Set up any platform independent compile conditionals by adding them to
321                          ##  precreated FLAGS parameter.
322                          ##  Assumes that the basic flags have been setup in FLAGS. 
323                          ##  Assumes that compile time flags are controlled with -D CLI option.
324                          ##
325                          ################################################################################
326 karl            1.17     
327 karl            1.36     # Setup the conditional compile for client displays.
328                          # 
329                          ifdef PEGASUS_CLIENT_TRACE_ENABLE
330                            DEFINES+= -DPEGASUS_CLIENT_TRACE_ENABLE
331                          endif
332                          
333 mday            1.40     # do not compile trace code. sometimes it causes problems debugging
334                          ifdef PEGASUS_REMOVE_TRACE
335                          	DEFINES+= -DPEGASUS_REMOVE_TRACE
336                          endif
337                          
338 kumpf           1.64.2.4 # Allow PEGASUS_ASSERT statements to be disabled
339                          ifdef PEGASUS_NOASSERTS
340                              DEFINES += -DNDEBUG
341                          endif
342                          
343 karl            1.43     # PEP 123 use monitor2 (the default) or not
344 dj.gorey        1.46     #ifdef PEGASUS_USE_23HTTPMONITOR_SERVER
345                          DEFINES+= -DPEGASUS_USE_23HTTPMONITOR_SERVER
346                          #endif
347 mday            1.40     
348 dj.gorey        1.45     #BUG 1170 Monitor2 Client Workaround
349 dj.gorey        1.46     #ifdef PEGASUS_USE_23HTTPMONITOR_CLIENT
350 dj.gorey        1.45     DEFINES+= -DPEGASUS_USE_23HTTPMONITOR_CLIENT
351 dj.gorey        1.46     #endif
352 dj.gorey        1.45     
353 chuck           1.47     # PEP 161
354                          # Control whether utf-8 filenames are supported by the repository
355                          ifdef PEGASUS_SUPPORT_UTF8_FILENAME
356                          	DEFINES+= -DPEGASUS_SUPPORT_UTF8_FILENAME
357                          
358                          	# Control whether utf-8 filenames in the repository are escaped
359                          	ifdef PEGASUS_REPOSITORY_ESCAPE_UTF8
360                          	DEFINES+= -DPEGASUS_REPOSITORY_ESCAPE_UTF8
361                          	endif
362                          endif
363                          
364 kumpf           1.49     #
365                          # PEP 142
366                          # The following flag need to be set to enable
367                          # user group authorization functionality.
368                          #
369                          ifdef PEGASUS_ENABLE_USERGROUP_AUTHORIZATION
370                           DEFINES += -DPEGASUS_ENABLE_USERGROUP_AUTHORIZATION
371                          endif
372                          
373 w.otsuka        1.64.2.3 # Allow ExecQuery functionality to be enabled
374                          ifndef PEGASUS_ENABLE_EXECQUERY
375                              DEFINES += -DPEGASUS_DISABLE_EXECQUERY
376                          endif
377 kumpf           1.49     
378 karl            1.39     # setup function to enable SLP functions in the Pegasus standard compile
379                          # Set the environment varaible PEGASUS_ENABLE_SLP to enable SLP code.  
380                          ifdef PEGASUS_ENABLE_SLP
381                            DEFINES+= -DPEGASUS_ENABLE_SLP
382                          endif
383 karl            1.36     
384 karl            1.60     # set PEGASUS_DEBUG into the DEFINES if it exists.
385                          # Note that this flag is the general separator between
386                          # debug compiles and non-debug compiles and controls both
387                          # the use of any debug options on compilers and linkers
388                          # and general debug support that we want to be turned on in
389                          # debug mode. 
390                          ifdef PEGASUS_DEBUG
391                            DEFINES+= -DPEGASUS_DEBUG
392                          endif
393                          
394 chuck           1.42     # compile in the experimental APIs
395                          DEFINES+= -DPEGASUS_USE_EXPERIMENTAL_INTERFACES
396                          
397 w.white         1.57     # Set compile flag to control compilation of CIMOM statistics
398                          ifdef PEGASUS_HAS_PERFINST
399                            FLAGS += -DPEGASUS_HAS_PERFINST
400                          endif
401 kumpf           1.56     
402                          ############################################################
403                          #
404                          # Set any vendor-specific compile flags
405                          #
406                          ############################################################
407                          
408                          ifdef PEGASUS_VENDOR_HP
409                            DEFINES+= -DPEGASUS_VENDOR_HP
410                          endif
411                          
412 karl            1.36      
413 karl            1.17     ############################################################
414                          #
415                          # Set up other Make Variables that depend on platform config files
416                          #
417                          ############################################################
418                          
419                          # This is temporary until we end up with a better place to
420                          # put this variable
421                          # Makefiles can do directory remove with
422                          # $(RMREPOSITORY) repositoryname
423                          #
424                          RMREPOSITORY = $(RMDIRHIER)
425                          
426 w.otsuka        1.63     ifdef PEGASUS_USE_RELEASE_CONFIG_OPTIONS
427                            FLAGS += -DPEGASUS_USE_RELEASE_CONFIG_OPTIONS
428 w.otsuka        1.62     endif
429                          
430                          ifdef PEGASUS_USE_RELEASE_DIRS
431                            FLAGS += -DPEGASUS_USE_RELEASE_DIRS
432                          endif
433 mday            1.27     
434 kumpf           1.64     # Unless otherwise specified, Pegasus libraries go in $(PEGASUS_HOME)/lib
435                          ifndef PEGASUS_DEST_LIB_DIR
436                            PEGASUS_DEST_LIB_DIR = lib
437                          endif
438 mday            1.28     
439 kumpf           1.64     DEFINES += -DPEGASUS_DEST_LIB_DIR=\"$(PEGASUS_DEST_LIB_DIR)\"
440 w.otsuka        1.64.2.1 
441                          ################################################################################
442                          ##
443                          ## Additional build flags passed in through environment variables.
444                          ## These flags are added to the compile/link commands.
445                          ##
446                          ################################################################################
447                          
448                          ifdef PEGASUS_PLATFORM_LINUX_GENERIC_GNU
449                            ifdef PEGASUS_EXTRA_CXX_FLAGS
450                                EXTRA_CXX_FLAGS = $(PEGASUS_EXTRA_CXX_FLAGS)
451                            endif
452                          
453                            ifdef PEGASUS_EXTRA_C_FLAGS
454                                EXTRA_C_FLAGS = $(PEGASUS_EXTRA_C_FLAGS)
455                            endif
456                          
457                            ifdef PEGASUS_EXTRA_LINK_FLAGS
458                                EXTRA_LINK_FLAGS = $(PEGASUS_EXTRA_LINK_FLAGS)
459                            endif
460                          endif

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2