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

  1 martin 1.9 #//%LICENSE////////////////////////////////////////////////////////////////
  2 a.dunfey 1.1 #// 
  3 martin   1.9 #// Licensed to The Open Group (TOG) under one or more contributor license
  4              #// agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
  5              #// this work for additional information regarding copyright ownership.
  6              #// Each contributor licenses this file to you under the OpenPegasus Open
  7              #// Source License; you may not use this file except in compliance with the
  8              #// License.
  9              #// 
 10              #// Permission is hereby granted, free of charge, to any person obtaining a
 11              #// copy of this software and associated documentation files (the "Software"),
 12              #// to deal in the Software without restriction, including without limitation
 13              #// the rights to use, copy, modify, merge, publish, distribute, sublicense,
 14              #// and/or sell copies of the Software, and to permit persons to whom the
 15              #// Software is furnished to do so, subject to the following conditions:
 16              #// 
 17              #// The above copyright notice and this permission notice shall be included
 18              #// in all copies or substantial portions of the Software.
 19              #// 
 20              #// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 21              #// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
 22              #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 23              #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
 24 martin   1.9 #// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
 25              #// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 26              #// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 27              #// 
 28              #//////////////////////////////////////////////////////////////////////////
 29 a.dunfey 1.1 OS_TYPE = windows
 30              OS = win64
 31              ARCHITECTURE = X86X64
 32              COMPILER = msvc
 33              
 34              SYS_INCLUDES =
 35              
 36              DEPEND_INCLUDES =
 37              
 38              DEFINES = -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM) -D_WIN32_WINNT=0x0400
 39              #-D_WIN32_WINNT=0x0400 -DWINVER=0x0400
 40              
 41              
 42              #
 43              # Determine the version of the compiler being used.
 44              #
 45              CL_VERSION := $(word 8, $(shell cl.exe 2>&1))
 46              CL_MAJOR_VERSION := $(word 1, $(subst .,  , $(CL_VERSION)))
 47              
 48 dave.sudlik 1.2 
 49                 #
 50                 # Determine the version of Windows being used.
 51                 # IPv6 is not supported on Windows 2000 (earliest Windows version supported
 52 dave.sudlik 1.4 # by Pegasus), but we don't enforce that here.
 53                 # IPv6 is not supported by the VC 6 compiler (CL_MAJOR_VERSION is 12 for VC 6).
 54 dave.sudlik 1.2 #
 55                 ifeq ($(CL_MAJOR_VERSION), 12)
 56                     PEGASUS_ENABLE_IPV6 = false
 57                 endif
 58                 
 59                 
 60 a.dunfey    1.1 #
 61                 # The flags set here should be valid for VC 6.
 62                 #
 63                 # The -Zm105 flag was added as part of bug 4418 to resolve this compile error:
 64                 #   C:\Program Files\Microsoft Visual Studio\VC98\include\xlocale(467) : 
 65                 #   fatal error C1076: compiler limit : internal heap limit reached; use /Zm to 
 66                 #   specify a higher limit
 67                 # 
 68                 CXX_VERSION_FLAGS := -Zm105
 69                 CXX_VERSION_DEBUG_FLAGS :=
 70                 CXX_VERSION_RELEASE_FLAGS :=
 71                 LINK_VERSION_RELEASE_FLAGS :=
 72                 
 73                 
 74                 #
 75                 # CL_MAJOR_VERSION 13 is VC 7
 76                 #
 77                 ifeq ($(CL_MAJOR_VERSION), 13)
 78                     CXX_VERSION_FLAGS := -EHsc
 79                     CXX_VERSION_DEBUG_FLAGS := -Gs
 80                     CXX_VERSION_RELEASE_FLAGS := -Gs -GF -Gy
 81 a.dunfey    1.1     LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 82                 endif
 83                 
 84                 
 85                 #
 86                 # CL_MAJOR_VERSION 14 is VC 8
 87                 #
 88                 ifeq ($(CL_MAJOR_VERSION), 14)
 89                     CXX_VERSION_FLAGS := -EHsc
 90                     CXX_VERSION_DEBUG_FLAGS := -RTCc -RTCsu
 91                     CXX_VERSION_RELEASE_FLAGS := -GF -GL -Gy
 92                     LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 93                     DEFINES += -D_CRT_SECURE_NO_DEPRECATE
 94 kavita.gupta 1.8     DEFINES += -D_CRT_NONSTDC_NO_DEPRECATE
 95 a.dunfey     1.1 endif
 96                  
 97                      CXX_VERSION_FLAGS := -Wp64 -EHsc
 98                      CXX_VERSION_DEBUG_FLAGS := -RTCc -RTCsu
 99                  
100                  ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS 
101                      FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_DEBUG_FLAGS) -GR -W3 -Od -Zi -MDd -DDEBUG -Fd$(OBJ_DIR)/
102                      LINK_FLAGS += -debug
103                  else
104                      FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_RELEASE_FLAGS) -GR -W3 -O2 -MD
105 s.kodali     1.7     LINK_FLAGS += $(LINK_VERSION_RELEASE_FLAGS) -map
106 a.dunfey     1.1 endif
107                  
108                  
109                  ifdef PEGASUS_DEBUG_CIMEXCEPTION
110                      DEFINES += -DPEGASUS_DEBUG_CIMEXCEPTION
111                  endif
112                  
113                  # if PEGASUS_ENABLE_SLP is already set then honor the users preference else
114                  # Enable the compilation of the SLP functions.
115                  #
116                  ifndef PEGASUS_ENABLE_SLP
117                      PEGASUS_ENABLE_SLP = true
118                  endif
119                  
120                  # ATTN KS 20020927 - Add flag to allow conditional testing of interoperability
121                  # changes during interoperability tests.
122                  ifdef PEGASUS_SNIA_INTEROP_TEST
123                      DEFINES+= -DPEGASUS_SNIA_INTEROP_TEST
124                  endif
125                  
126                  RM = mu rm
127 a.dunfey     1.1 
128                  RMDIRHIER = mu rmdirhier
129                  
130                  MKDIRHIER = mu mkdirhier
131                  
132                  DIFF = mu compare
133                  
134                  SORT = mu sort
135                  
136                  COPY = mu copy
137                  
138                  MOVE = mu move
139                  
140                  CXX = cl -nologo
141                  
142                  EXE_OUT = -Fe
143                  
144                  LIB_OUT = -out:
145                  
146                  OBJ = .obj
147                  
148 a.dunfey     1.1 OBJ_OUT = -Fo
149                  
150                  EXE = .exe
151                  
152                  DLL = .dll
153                  
154                  ILK = .ilk
155                  
156                  PDB = .pdb
157                  
158                  EXP = .exp
159                  
160                  AR = LINK -nologo -dll
161                  
162                  LIB_PREFIX =
163                  
164                  LIB_SUFFIX = .lib
165                  
166                  TOUCH = mu touch
167                  
168                  ECHO = mu echo
169 a.dunfey     1.1 
170                  LEX = flex
171                  
172                  YACC = bison
173                  
174                  SH = bash
175                  
176 s.kodali     1.7 RC = rc
177                  
178 a.dunfey     1.1 # Windows DLLs are installed in the $(PEGASUS_HOME)/bin directory
179                  PEGASUS_DEST_LIB_DIR = bin
180                   
181                  # The Provider User Context feature (PEP 197) is not supported on Windows
182                  PEGASUS_DISABLE_PROV_USERCTXT=1
183                  
184                  # Windows does not support local domain sockets or the equivalent Bug 2147
185                  PEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET=1
186                  
187                  PEGASUS_JAVA_CLASSPATH_DELIMITER = ;
188 mateus.baur  1.3 
189                  ##################################
190                  ##
191                  ## Pegasus WMIMapper
192                  ## 
193                  ##################################
194                  
195                  ifeq ($(PEGASUS_BUILD_WMIMAPPER),true)
196                    FLAGS += -DPEGASUS_WMIMAPPER
197                  else 
198                    ifdef PEGASUS_WMIMAPPER
199                      FLAGS += -DPEGASUS_WMIMAPPER
200                    endif   
201                  endif
202                  
203                  ##################################
204                  ## 
205                  ## The newer compiler versions need neither MS Platform SDK installed nor MSSdk variable defined.
206                  ##
207                  ##################################
208                  ifeq ($(PEGASUS_BUILD_WMIMAPPER),true)
209 mateus.baur  1.3   ifeq ($(CL_MAJOR_VERSION), 12)
210                      PEGASUS_WMIMAPPER_NEED_MSSDK=true
211                    endif
212                    ifeq ($(CL_MAJOR_VERSION), 13) 
213                      PEGASUS_WMIMAPPER_NEED_MSSDK=true
214                    endif
215                    ifeq ($(PEGASUS_WMIMAPPER_NEED_MSSDK),true)
216                      ifndef MSSdk
217                        $(error MSSdk environment variable undefined)
218                      endif
219                    endif
220                  endif

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2