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

  1 martin 1.36 #//%2005////////////////////////////////////////////////////////////////////////
  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             #//
 12             #// Permission is hereby granted, free of charge, to any person obtaining a copy
 13             #// of this software and associated documentation files (the "Software"), to
 14             #// deal in the Software without restriction, including without limitation the
 15             #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 16             #// sell copies of the Software, and to permit persons to whom the Software is
 17             #// furnished to do so, subject to the following conditions:
 18             #// 
 19             #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 20             #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 21             #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 22 martin 1.36 #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 23             #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 24             #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 25             #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 26             #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 27             #//
 28             #//==============================================================================
 29 mike   1.1  OS_TYPE = windows
 30             OS = win32
 31             ARCHITECTURE = iX86
 32             COMPILER = msvc
 33             
 34             SYS_INCLUDES =
 35             
 36             DEPEND_INCLUDES =
 37             
 38 kumpf  1.17 DEFINES = -DPEGASUS_PLATFORM_$(PEGASUS_PLATFORM) -D_WIN32_WINNT=0x0400
 39 mike   1.6  #-D_WIN32_WINNT=0x0400 -DWINVER=0x0400
 40 mike   1.1  
 41 david.dillard 1.27 
 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                    
 49                    #
 50                    # The flags set here should be valid for VC 6.
 51                    #
 52 dave.sudlik   1.39 # The -Zm105 flag was added as part of bug 4418 to resolve this compile error:
 53                    #   C:\Program Files\Microsoft Visual Studio\VC98\include\xlocale(467) : 
 54                    #   fatal error C1076: compiler limit : internal heap limit reached; use /Zm to 
 55                    #   specify a higher limit
 56                    # 
 57                    CXX_VERSION_FLAGS := -GX -Zm105
 58 david.dillard 1.35 CXX_VERSION_DEBUG_FLAGS :=
 59                    CXX_VERSION_RELEASE_FLAGS :=
 60                    LINK_VERSION_RELEASE_FLAGS :=
 61 david.dillard 1.27 
 62                    
 63                    #
 64                    # CL_MAJOR_VERSION 13 is VC 7
 65                    #
 66                    ifeq ($(CL_MAJOR_VERSION), 13)
 67 david.dillard 1.35     CXX_VERSION_FLAGS := -Wp64 -EHsc
 68                        CXX_VERSION_DEBUG_FLAGS := -Gs
 69                        CXX_VERSION_RELEASE_FLAGS := -Gs -GF -Gy
 70                        LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 71 david.dillard 1.27 endif
 72                    
 73                    
 74                    #
 75                    # CL_MAJOR_VERSION 14 is VC 8
 76                    #
 77                    ifeq ($(CL_MAJOR_VERSION), 14)
 78 david.dillard 1.35     CXX_VERSION_FLAGS := -Wp64 -EHsc
 79                        CXX_VERSION_DEBUG_FLAGS := -RTCc -RTCsu
 80                        CXX_VERSION_RELEASE_FLAGS := -GF -GL -Gy
 81                        LINK_VERSION_RELEASE_FLAGS := /LTCG /OPT:REF /OPT:ICF=5 /OPT:NOWIN98
 82 david.dillard 1.27     DEFINES += -D_CRT_SECURE_NO_DEPRECATE
 83                    endif
 84                    
 85                    
 86 aruran.ms     1.38 ifdef PEGASUS_USE_DEBUG_BUILD_OPTIONS 
 87 david.dillard 1.35     FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_DEBUG_FLAGS) -GR -W3 -Od -Zi -MDd -DDEBUG -Fd$(OBJ_DIR)/
 88                        LINK_FLAGS += -debug
 89 mike          1.1  else
 90 david.dillard 1.35     FLAGS = $(CXX_VERSION_FLAGS) $(CXX_VERSION_RELEASE_FLAGS) -GR -W3 -O2 -MD
 91                        LINK_FLAGS += $(LINK_VERSION_RELEASE_FLAGS)
 92 mike          1.1  endif
 93                    
 94 david.dillard 1.27 
 95 karl          1.9  ifdef PEGASUS_DEBUG_CIMEXCEPTION
 96 david.dillard 1.27     DEFINES += -DPEGASUS_DEBUG_CIMEXCEPTION
 97 karl          1.9  endif
 98                    
 99 karl          1.23 # Enable the compilation of the SLP functions.
100 a.dunfey      1.37 ifndef PEGASUS_DISABLE_SLP
101                        PEGASUS_ENABLE_SLP = true
102                        DEFINES += -DPEGASUS_ENABLE_SLP
103 joyce.j       1.34 endif
104 karl          1.23 
105 karl          1.11 # ATTN KS 20020927 - Add flag to allow conditional testing of interoperability
106                    # changes during interoperability tests.
107                    ifdef PEGASUS_SNIA_INTEROP_TEST
108 david.dillard 1.27     DEFINES+= -DPEGASUS_SNIA_INTEROP_TEST
109 karl          1.11 endif
110 kumpf         1.22 
111 mike          1.1  RM = mu rm
112                    
113                    RMDIRHIER = mu rmdirhier
114                    
115                    MKDIRHIER = mu mkdirhier
116                    
117 jim.wunderlich 1.26 DIFF = mu compare
118                     
119                     SORT = mu sort
120                     
121 mike           1.1  COPY = mu copy
122                     
123 mike           1.4  MOVE = mu move
124                     
125 mike           1.1  CXX = cl -nologo
126                     
127                     EXE_OUT = -Fe
128                     
129                     LIB_OUT = -out:
130                     
131                     OBJ = .obj
132                     
133                     OBJ_OUT = -Fo
134                     
135                     EXE = .exe
136 tony           1.15 
137                     DLL = .dll
138                     
139                     ILK = .ilk
140                     
141                     PDB = .pdb
142                     
143                     EXP = .exp
144 mike           1.1  
145                     AR = LINK -nologo -dll
146                     
147                     LIB_PREFIX =
148                     
149                     LIB_SUFFIX = .lib
150                     
151                     TOUCH = mu touch
152                     
153                     ECHO = mu echo
154                     
155                     LEX = flex
156                     
157                     YACC = bison
158 mike           1.3  
159                     SH = bash
160 mike           1.4  
161                     YACC = bison
162 konrad.r       1.19 
163 kumpf          1.21 # Windows DLLs are installed in the $(PEGASUS_HOME)/bin directory
164                     PEGASUS_DEST_LIB_DIR = bin
165 kumpf          1.22  
166                     # The Provider User Context feature (PEP 197) is not supported on Windows
167                     PEGASUS_DISABLE_PROV_USERCTXT=1
168 h.sterling     1.24 
169 h.sterling     1.33 # Windows does not support local domain sockets or the equivalent Bug 2147
170                     PEGASUS_DISABLE_LOCAL_DOMAIN_SOCKET=1
171 h.sterling     1.30 
172 h.sterling     1.24 # l10n
173                     ifdef PEGASUS_HAS_MESSAGES
174 david.dillard  1.27     DEFINES += -DPEGASUS_HAS_MESSAGES
175                         ifdef ICU_ROOT
176 h.sterling     1.30         MSG_COMPILE = genrb
177                             MSG_FLAGS =
178                             MSG_SOURCE_EXT = .txt
179                             MSG_COMPILE_EXT = .res
180                             CNV_ROOT_CMD = cnv2rootbundle
181 h.sterling     1.24 
182                     ##################################
183                     ##
184                     ## ICU_NO_UPPERCASE_ROOT if set, specifies NOT to uppercase the root resource bundle,
185                     ## default is to uppercase the root resource bundle##
186                     ##################################
187                     
188                     ifdef ICU_NO_UPPERCASE_ROOT
189 david.dillard  1.27     CNV_ROOT_FLAGS =
190 h.sterling     1.24 else
191 david.dillard  1.27     CNV_ROOT_FLAGS = -u
192 h.sterling     1.24 endif
193                     
194                     ####################################
195                     ##
196                     ##   ICU_ROOT_BUNDLE_LANG if set, specifies the language that the root resource bundle will be generated from
197                     ##   defaults to _en if not set.  if set, for any directory containing resource bundles,
198                     ##   there must exist a file name: package(the value of ICU_ROOT_BUNDLE_LANG).txt or the make messages target will fail
199                     ##
200                     ##   We have to use the full path library because the cl /Fe command in program-windows.mak does
201                     ##   not take libpath as an argument (as far as I can tell)
202                     ####################################
203                     
204                     ifdef ICU_ROOT_BUNDLE_LANG
205 david.dillard  1.27     MSG_ROOT_SOURCE = $(ICU_ROOT_BUNDLE_LANG)
206 h.sterling     1.24 else
207 david.dillard  1.27     MSG_ROOT_SOURCE = _en
208 h.sterling     1.24 endif
209 david.dillard  1.27         DEFINES += -DPEGASUS_HAS_ICU
210                             EXTRA_LIBRARIES += $(ICU_INSTALL)/lib/icuuc.lib $(ICU_INSTALL)/lib/icuin.lib $(ICU_INSTALL)/lib/icudt.lib
211                             SYS_INCLUDES += -I$(ICU_ROOT)/source/common -I$(ICU_ROOT)/source/i18n
212                         endif
213 h.sterling     1.24 endif

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2