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

  1 a.dunfey 1.1 #//%2006////////////////////////////////////////////////////////////////////////
  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              #// Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12              #// EMC Corporation; Symantec Corporation; The Open Group.
 13              #//
 14              #// Permission is hereby granted, free of charge, to any person obtaining a copy
 15              #// of this software and associated documentation files (the "Software"), to
 16              #// deal in the Software without restriction, including without limitation the
 17              #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18              #// sell copies of the Software, and to permit persons to whom the Software is
 19              #// furnished to do so, subject to the following conditions:
 20              #// 
 21              #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22 a.dunfey 1.1 #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23              #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24              #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25              #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26              #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27              #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28              #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29              #//
 30              #//==============================================================================
 31              OS_TYPE = windows
 32              OS = win64
 33              ARCHITECTURE = IA64
 34              COMPILER = msvc
 35              
 36              SYS_INCLUDES =
 37              
 38              DEPEND_INCLUDES =
 39              
 40              DEFINES = -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM) -D_WIN32_WINNT=0x0400
 41              #-D_WIN32_WINNT=0x0400 -DWINVER=0x0400
 42              
 43 a.dunfey 1.1 
 44              #
 45              # Determine the version of the compiler being used.
 46              #
 47              CL_VERSION := $(word 8, $(shell cl.exe 2>&1))
 48              CL_MAJOR_VERSION := $(word 1, $(subst .,  , $(CL_VERSION)))
 49              
 50 dave.sudlik 1.2 
 51                 #
 52                 # Determine the version of Windows being used.
 53                 # IPv6 is not supported on Windows 2000 (earliest Windows version supported
 54                 # by Pegasus), nor by the VC 6 compiler (CL_MAJOR_VERSION is 12 for VC 6).
 55                 #
 56                 WIN_VERSION := $(shell ver)
 57                 ifeq ($(findstring [Version 5.0.,$(WIN_VERSION)),[Version 5.0.)
 58                     PEGASUS_ENABLE_IPV6 = false
 59                 endif
 60                 ifeq ($(CL_MAJOR_VERSION), 12)
 61                     PEGASUS_ENABLE_IPV6 = false
 62                 endif
 63                 
 64                 
 65 a.dunfey    1.1 #
 66                 # The flags set here should be valid for VC 6.
 67                 #
 68                 # The -Zm105 flag was added as part of bug 4418 to resolve this compile error:
 69                 #   C:\Program Files\Microsoft Visual Studio\VC98\include\xlocale(467) : 
 70                 #   fatal error C1076: compiler limit : internal heap limit reached; use /Zm to 
 71                 #   specify a higher limit
 72                 # 
 73                 CXX_VERSION_FLAGS := -Zm105
 74                 CXX_VERSION_DEBUG_FLAGS :=
 75                 CXX_VERSION_RELEASE_FLAGS :=
 76                 LINK_VERSION_RELEASE_FLAGS :=
 77                 
 78                 
 79                 #
 80                 # CL_MAJOR_VERSION 13 is VC 7
 81                 #
 82                 ifeq ($(CL_MAJOR_VERSION), 13)
 83                     CXX_VERSION_FLAGS := -EHsc
 84                     CXX_VERSION_DEBUG_FLAGS := -Gs
 85                     CXX_VERSION_RELEASE_FLAGS := -Gs -GF -Gy
 86 a.dunfey    1.1     LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 87                 endif
 88                 
 89                 
 90                 #
 91                 # CL_MAJOR_VERSION 14 is VC 8
 92                 #
 93                 ifeq ($(CL_MAJOR_VERSION), 14)
 94                     CXX_VERSION_FLAGS := -EHsc
 95                     CXX_VERSION_DEBUG_FLAGS := -RTCc -RTCsu
 96                     CXX_VERSION_RELEASE_FLAGS := -GF -GL -Gy
 97                     LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 98                     DEFINES += -D_CRT_SECURE_NO_DEPRECATE
 99                 endif
100                 
101                     CXX_VERSION_FLAGS := -Wp64 -EHsc
102                     CXX_VERSION_DEBUG_FLAGS := -RTCc -RTCsu
103                 
104                 ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS 
105                     FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_DEBUG_FLAGS) -GR -W3 -Od -Zi -MDd -DDEBUG -Fd$(OBJ_DIR)/
106                     LINK_FLAGS += -debug
107 a.dunfey    1.1 else
108                     FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_RELEASE_FLAGS) -GR -W3 -O2 -MD
109                     LINK_FLAGS += $(LINK_VERSION_RELEASE_FLAGS)
110                 endif
111                 
112                 
113                 ifdef PEGASUS_DEBUG_CIMEXCEPTION
114                     DEFINES += -DPEGASUS_DEBUG_CIMEXCEPTION
115                 endif
116                 
117                 # if PEGASUS_ENABLE_SLP is already set then honor the users preference else
118                 # Enable the compilation of the SLP functions.
119                 #
120                 ifndef PEGASUS_ENABLE_SLP
121                     PEGASUS_ENABLE_SLP = true
122                 endif
123                 
124                 # ATTN KS 20020927 - Add flag to allow conditional testing of interoperability
125                 # changes during interoperability tests.
126                 ifdef PEGASUS_SNIA_INTEROP_TEST
127                     DEFINES+= -DPEGASUS_SNIA_INTEROP_TEST
128 a.dunfey    1.1 endif
129                 
130                 RM = mu rm
131                 
132                 RMDIRHIER = mu rmdirhier
133                 
134                 MKDIRHIER = mu mkdirhier
135                 
136                 DIFF = mu compare
137                 
138                 SORT = mu sort
139                 
140                 COPY = mu copy
141                 
142                 MOVE = mu move
143                 
144                 CXX = cl -nologo
145                 
146                 EXE_OUT = -Fe
147                 
148                 LIB_OUT = -out:
149 a.dunfey    1.1 
150                 OBJ = .obj
151                 
152                 OBJ_OUT = -Fo
153                 
154                 EXE = .exe
155                 
156                 DLL = .dll
157                 
158                 ILK = .ilk
159                 
160                 PDB = .pdb
161                 
162                 EXP = .exp
163                 
164                 AR = LINK -nologo -dll
165                 
166                 LIB_PREFIX =
167                 
168                 LIB_SUFFIX = .lib
169                 
170 a.dunfey    1.1 TOUCH = mu touch
171                 
172                 ECHO = mu echo
173                 
174                 LEX = flex
175                 
176                 YACC = bison
177                 
178                 SH = bash
179                 
180                 # Windows DLLs are installed in the $(PEGASUS_HOME)/bin directory
181                 PEGASUS_DEST_LIB_DIR = bin
182                  
183                 # The Provider User Context feature (PEP 197) is not supported on Windows
184                 PEGASUS_DISABLE_PROV_USERCTXT=1
185                 
186                 # Windows does not support local domain sockets or the equivalent Bug 2147
187                 PEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET=1
188                 
189                 # l10n
190                 ifdef PEGASUS_HAS_MESSAGES
191 a.dunfey    1.1     DEFINES += -DPEGASUS_HAS_MESSAGES
192                     ifdef ICU_ROOT
193                         MSG_COMPILE = genrb
194                         MSG_FLAGS =
195                         MSG_SOURCE_EXT = .txt
196                         MSG_COMPILE_EXT = .res
197                         CNV_ROOT_CMD = cnv2rootbundle
198                 
199                 ##################################
200                 ##
201                 ## ICU_NO_UPPERCASE_ROOT if set, specifies NOT to uppercase the root resource bundle,
202                 ## default is to uppercase the root resource bundle##
203                 ##################################
204                 
205                 ifdef ICU_NO_UPPERCASE_ROOT
206                     CNV_ROOT_FLAGS =
207                 else
208                     CNV_ROOT_FLAGS = -u
209                 endif
210                 
211                 ####################################
212 a.dunfey    1.1 ##
213                 ##   ICU_ROOT_BUNDLE_LANG if set, specifies the language that the root resource bundle will be generated from
214                 ##   defaults to _en if not set.  if set, for any directory containing resource bundles,
215                 ##   there must exist a file name: package(the value of ICU_ROOT_BUNDLE_LANG).txt or the make messages target will fail
216                 ##
217                 ##   We have to use the full path library because the cl /Fe command in program-windows.mak does
218                 ##   not take libpath as an argument (as far as I can tell)
219                 ####################################
220                 
221                 ifdef ICU_ROOT_BUNDLE_LANG
222                     MSG_ROOT_SOURCE = $(ICU_ROOT_BUNDLE_LANG)
223                 else
224                     MSG_ROOT_SOURCE = _en
225                 endif
226                         DEFINES += -DPEGASUS_HAS_ICU
227                         EXTRA_LIBRARIES += $(ICU_INSTALL)/lib/icuuc.lib $(ICU_INSTALL)/lib/icuin.lib $(ICU_INSTALL)/lib/icudt.lib
228                         SYS_INCLUDES += -I$(ICU_ROOT)/source/common -I$(ICU_ROOT)/source/i18n
229                     endif
230                 endif
231                 
232                 PEGASUS_JAVA_CLASSPATH_DELIMITER = ;
233 mateus.baur 1.3 
234                 ##################################
235                 ##
236                 ## Pegasus WMIMapper
237                 ## 
238                 ##################################
239                 
240                 ifeq ($(PEGASUS_BUILD_WMIMAPPER),true)
241                   FLAGS += -DPEGASUS_WMIMAPPER
242                 else 
243                   ifdef PEGASUS_WMIMAPPER
244                     FLAGS += -DPEGASUS_WMIMAPPER
245                   endif   
246                 endif
247                 
248 mateus.baur 1.4 ##################################
249                 ## 
250                 ## The newer compiler versions need neither MS Platform SDK installed nor MSSdk variable defined.
251                 ##
252                 ##################################
253 mateus.baur 1.3 ifeq ($(PEGASUS_BUILD_WMIMAPPER),true)
254 mateus.baur 1.4   ifeq ($(CL_MAJOR_VERSION), 12)
255                     PEGASUS_WMIMAPPER_NEED_MSSDK=true
256                   endif
257                   ifeq ($(CL_MAJOR_VERSION), 13) 
258                     PEGASUS_WMIMAPPER_NEED_MSSDK=true
259                   endif
260                   ifeq ($(PEGASUS_WMIMAPPER_NEED_MSSDK),true)
261                     ifndef MSSdk
262                       $(error MSSdk environment variable undefined)
263                     endif
264 mateus.baur 1.3   endif
265                 endif
266 mateus.baur 1.4 

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2