(file) Return to platform_WIN64_X86_64_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 = X86X64
 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              #
 51              # The flags set here should be valid for VC 6.
 52              #
 53              # The -Zm105 flag was added as part of bug 4418 to resolve this compile error:
 54              #   C:\Program Files\Microsoft Visual Studio\VC98\include\xlocale(467) : 
 55              #   fatal error C1076: compiler limit : internal heap limit reached; use /Zm to 
 56              #   specify a higher limit
 57              # 
 58              CXX_VERSION_FLAGS := -Zm105
 59              CXX_VERSION_DEBUG_FLAGS :=
 60              CXX_VERSION_RELEASE_FLAGS :=
 61              LINK_VERSION_RELEASE_FLAGS :=
 62              
 63              
 64 a.dunfey 1.1 #
 65              # CL_MAJOR_VERSION 13 is VC 7
 66              #
 67              ifeq ($(CL_MAJOR_VERSION), 13)
 68                  CXX_VERSION_FLAGS := -EHsc
 69                  CXX_VERSION_DEBUG_FLAGS := -Gs
 70                  CXX_VERSION_RELEASE_FLAGS := -Gs -GF -Gy
 71                  LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 72              endif
 73              
 74              
 75              #
 76              # CL_MAJOR_VERSION 14 is VC 8
 77              #
 78              ifeq ($(CL_MAJOR_VERSION), 14)
 79                  CXX_VERSION_FLAGS := -EHsc
 80                  CXX_VERSION_DEBUG_FLAGS := -RTCc -RTCsu
 81                  CXX_VERSION_RELEASE_FLAGS := -GF -GL -Gy
 82                  LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 83                  DEFINES += -D_CRT_SECURE_NO_DEPRECATE
 84              endif
 85 a.dunfey 1.1 
 86                  CXX_VERSION_FLAGS := -Wp64 -EHsc
 87                  CXX_VERSION_DEBUG_FLAGS := -RTCc -RTCsu
 88              
 89              ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS 
 90                  FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_DEBUG_FLAGS) -GR -W3 -Od -Zi -MDd -DDEBUG -Fd$(OBJ_DIR)/
 91                  LINK_FLAGS += -debug
 92              else
 93                  FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_RELEASE_FLAGS) -GR -W3 -O2 -MD
 94                  LINK_FLAGS += $(LINK_VERSION_RELEASE_FLAGS)
 95              endif
 96              
 97              
 98              ifdef PEGASUS_DEBUG_CIMEXCEPTION
 99                  DEFINES += -DPEGASUS_DEBUG_CIMEXCEPTION
100              endif
101              
102              # if PEGASUS_ENABLE_SLP is already set then honor the users preference else
103              # Enable the compilation of the SLP functions.
104              #
105              ifndef PEGASUS_ENABLE_SLP
106 a.dunfey 1.1     PEGASUS_ENABLE_SLP = true
107              endif
108              
109              # ATTN KS 20020927 - Add flag to allow conditional testing of interoperability
110              # changes during interoperability tests.
111              ifdef PEGASUS_SNIA_INTEROP_TEST
112                  DEFINES+= -DPEGASUS_SNIA_INTEROP_TEST
113              endif
114              
115              RM = mu rm
116              
117              RMDIRHIER = mu rmdirhier
118              
119              MKDIRHIER = mu mkdirhier
120              
121              DIFF = mu compare
122              
123              SORT = mu sort
124              
125              COPY = mu copy
126              
127 a.dunfey 1.1 MOVE = mu move
128              
129              CXX = cl -nologo
130              
131              EXE_OUT = -Fe
132              
133              LIB_OUT = -out:
134              
135              OBJ = .obj
136              
137              OBJ_OUT = -Fo
138              
139              EXE = .exe
140              
141              DLL = .dll
142              
143              ILK = .ilk
144              
145              PDB = .pdb
146              
147              EXP = .exp
148 a.dunfey 1.1 
149              AR = LINK -nologo -dll
150              
151              LIB_PREFIX =
152              
153              LIB_SUFFIX = .lib
154              
155              TOUCH = mu touch
156              
157              ECHO = mu echo
158              
159              LEX = flex
160              
161              YACC = bison
162              
163              SH = bash
164              
165              # Windows DLLs are installed in the $(PEGASUS_HOME)/bin directory
166              PEGASUS_DEST_LIB_DIR = bin
167               
168              # The Provider User Context feature (PEP 197) is not supported on Windows
169 a.dunfey 1.1 PEGASUS_DISABLE_PROV_USERCTXT=1
170              
171              # Windows does not support local domain sockets or the equivalent Bug 2147
172              PEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET=1
173              
174              # l10n
175              ifdef PEGASUS_HAS_MESSAGES
176                  DEFINES += -DPEGASUS_HAS_MESSAGES
177                  ifdef ICU_ROOT
178                      MSG_COMPILE = genrb
179                      MSG_FLAGS =
180                      MSG_SOURCE_EXT = .txt
181                      MSG_COMPILE_EXT = .res
182                      CNV_ROOT_CMD = cnv2rootbundle
183              
184              ##################################
185              ##
186              ## ICU_NO_UPPERCASE_ROOT if set, specifies NOT to uppercase the root resource bundle,
187              ## default is to uppercase the root resource bundle##
188              ##################################
189              
190 a.dunfey 1.1 ifdef ICU_NO_UPPERCASE_ROOT
191                  CNV_ROOT_FLAGS =
192              else
193                  CNV_ROOT_FLAGS = -u
194              endif
195              
196              ####################################
197              ##
198              ##   ICU_ROOT_BUNDLE_LANG if set, specifies the language that the root resource bundle will be generated from
199              ##   defaults to _en if not set.  if set, for any directory containing resource bundles,
200              ##   there must exist a file name: package(the value of ICU_ROOT_BUNDLE_LANG).txt or the make messages target will fail
201              ##
202              ##   We have to use the full path library because the cl /Fe command in program-windows.mak does
203              ##   not take libpath as an argument (as far as I can tell)
204              ####################################
205              
206              ifdef ICU_ROOT_BUNDLE_LANG
207                  MSG_ROOT_SOURCE = $(ICU_ROOT_BUNDLE_LANG)
208              else
209                  MSG_ROOT_SOURCE = _en
210              endif
211 a.dunfey 1.1         DEFINES += -DPEGASUS_HAS_ICU
212                      EXTRA_LIBRARIES += $(ICU_INSTALL)/lib/icuuc.lib $(ICU_INSTALL)/lib/icuin.lib $(ICU_INSTALL)/lib/icudt.lib
213                      SYS_INCLUDES += -I$(ICU_ROOT)/source/common -I$(ICU_ROOT)/source/i18n
214                  endif
215              endif
216              
217              PEGASUS_JAVA_CLASSPATH_DELIMITER = ;

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2