Subversion Repositories DevTools

Rev

Rev 6133 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4814 dpurdie 1
# -*- mode: mak; -*-
2
###############################################################################
3
# File:         TOOLSET/VS2012_X64.DEF
4
# Contents:     Visual Studio .NET 2012 C/C++ defines for 64 Bit compilation
5
###############################################################################
6
 
7
toolset	= vs2012_x64
8
 
9
o		= obj
10
s		= asm
11
a		= lib
12
exe		= .exe
13
 
14
.SUFFIXES:	.asm
15
 
16
#
17
#   Setup the basic 64 Bit Visual Studio environment paths
18
#   This is taken from "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\vcvars64.bat"
19
#   This is a 64-bit compiler running natively on a 64-bit system
20
#
21
#   Cannot use vsvars64.bat data imported from the environment as it
22
#   will conflict with other versions of MS
23
#
24
#   The following are the default installed locations
25
#   Currently assume default installation of Visual Studio 2012
26
#
27
PROGRAMFILES        ?= C:/Program Files
28
WINDIR              ?= C:/WINDOWS
29
 
30
Platform			:= X64
31
CommandPromptType	:= Native
32
 
33
VSINSTALLDIR		?= $(PROGRAMFILES)/Microsoft Visual Studio 11.0
34
VCINSTALLDIR		?= $(VSINSTALLDIR)/VC
35
 
36
 
37
Framework35Version	?= v3.5
38
FrameworkVersion64	?= v4.0.30319
39
FrameworkVersion	?= $(FrameworkVersion64)
40
 
41
FrameworkDIR64		?= $(WINDIR)/Microsoft.NET/Framework64
42
FrameworkDir		?= $(FrameworkDIR64)
43
 
44
WindowsSdkDir		?= $(PROGRAMFILES)/Windows Kits/8.0
45
WindowsSdkDir_35	?= $(PROGRAMFILES)/Microsoft SDKs/Windows/v7.0A/Bin
46
WindowsSdkDir_old	?= $(PROGRAMFILES)/Microsoft SDKs/Windows/v8.0A
47
 
48
ExtensionSdkDir		?= $(PROGRAMFILES)/Microsoft SDKs/Windows/v8.0/ExtensionSDKs
49
 
50
 
51
DevEnvDir   := $(VSINSTALLDIR)/Common7/IDE
52
MSVCDir     := $(VCINSTALLDIR)/VC
53
 
54
# Clean up directory paths and remove trailing backslash
55
VSINSTALLDIR        := $(subst \,/,$(patsubst %\,%,$(VSINSTALLDIR)))
56
VCINSTALLDIR        := $(subst \,/,$(patsubst %\,%,$(VCINSTALLDIR)))
57
FrameworkDir        := $(subst \,/,$(patsubst %\,%,$(FrameworkDir)))
58
FrameworkDIR64      := $(subst \,/,$(patsubst %\,%,$(FrameworkDIR64)))
59
WindowsSdkDir       := $(subst \,/,$(patsubst %\,%,$(WindowsSdkDir)))
60
WindowsSdkDir       := $(subst \,/,$(patsubst %\,%,$(WindowsSdkDir)))
61
WindowsSdkDir_35    := $(subst \,/,$(patsubst %\,%,$(WindowsSdkDir_35)))
62
WindowsSdkDir_old   := $(subst \,/,$(patsubst %\,%,$(WindowsSdkDir_old)))
63
ExtensionSdkDir     := $(subst \,/,$(patsubst %\,%,$(ExtensionSdkDir)))
64
 
65
DevEnvDir           := $(subst \,/,$(patsubst %\,%,$(DevEnvDir)))
66
MSVCDir             := $(subst \,/,$(patsubst %\,%,$(MSVCDir)))
67
 
68
# Check for required update installed
6133 dpurdie 69
GBE_VS2012_ENVVER   ?= HKCU/SOFTWARE/Microsoft/VisualStudio/11.0_Config/SplashInfo/EnvVersion
5637 dpurdie 70
GBE_VS2012_ENVVAL4   ?= 11.0.61030.00 Update 4
71
GBE_VS2012_ENVVAL5   ?= 11.0.61219.00 Update 5
4814 dpurdie 72
 
73
 
74
# Verify environment variable requirements
75
.PHONY:		visualc
76
visualc:
77
  ifndef GBE_NOTOOLSTEST
6177 dpurdie 78
	    $(AA_PRE)$(echo) '[Toolset VS2012 X64]'; \
4814 dpurdie 79
	    if [ ! -d "$(VSINSTALLDIR)" ]; then echo "Directory VSINSTALLDIR does not exist: $(VSINSTALLDIR)"; exit 2; fi; \
80
	    if [ ! -d "$(VCINSTALLDIR)" ]; then echo "Directory VCINSTALLDIR does not exist: $(VCINSTALLDIR)"; exit 2; fi; \
81
	    if [ ! -d "$(FrameworkDir)" ]; then echo "Directory FrameworkDir does not exist: $(FrameworkDir)"; exit 2; fi; \
82
	    if [ ! -d "$(FrameworkDir)/$(FrameworkVersion)" ]; then echo "Directory FrameworkVersion does not exist: $(FrameworkVersion)"; exit 2; fi; \
83
	    if [ ! -d "$(WindowsSdkDir)" ]; then echo "Directory WindowsSdkDir does not exist: $(WindowsSdkDir)"; exit 2; fi ; \
5637 dpurdie 84
		checkReg "-key:$(GBE_VS2012_ENVVER)" "-value:$(GBE_VS2012_ENVVAL4)" && update4=1 ;\
85
		checkReg "-key:$(GBE_VS2012_ENVVER)" "-value:$(GBE_VS2012_ENVVAL5)" && update5=1 ;\
86
	    if [ "$${update4}$${update5}" ]; then true; else echo "VS2012 Update 4 or 5 not installed"; exit 2; fi;
4814 dpurdie 87
  endif
88
 
89
VISUALC		:= $(subst \,/,$(strip $(MSVCDir)))
90
visualc		:= $(subst $(space),$(spacealt),$(subst \,/,$(strip $(MSVCDir))))
91
 
92
#
93
#   Setup PATH, VC_LIB and INCLUDE for the SDK
94
#
95
NET_PATH:= $(DevEnvDir)/CommonExtensions/Microsoft/TestWindow;
96
NET_PATH:= $(NET_PATH);$(VSINSTALLDIR)/VC/BIN/amd64;
97
NET_PATH:= $(NET_PATH);$(FrameworkDIR64)/$(FrameworkVersion64);
98
NET_PATH:= $(NET_PATH);$(FrameworkDIR64)/$(Framework35Version);
99
NET_PATH:= $(NET_PATH);$(VSINSTALLDIR)/VC/VCPackages;
100
NET_PATH:= $(NET_PATH);$(DevEnvDir);
101
NET_PATH:= $(NET_PATH);$(VSINSTALLDIR)/Common7/Tools;
102
NET_PATH:= $(NET_PATH);$(ProgramFiles(x86))/HTML Help Workshop;
103
NET_PATH:= $(NET_PATH);$(VSINSTALLDIR)/Team Tools/Performance Tools/x64;
104
NET_PATH:= $(NET_PATH);$(VSINSTALLDIR)/Team Tools/Performance Tools;
105
NET_PATH:= $(NET_PATH);$(WindowsSdkDir)/bin/x64;
106
NET_PATH:= $(NET_PATH);$(WindowsSdkDir)/bin/x86;
107
NET_PATH:= $(NET_PATH);$(WindowsSdkDir_old)/bin/NETFX 4.0 Tools/x64;
108
NET_PATH:= $(NET_PATH);$(WindowsSdkDir_35)/x64;
109
NET_PATH:= $(NET_PATH);$(WindowsSdkDir_old)/bin/NETFX 4.0 Tools;
110
NET_PATH:= $(NET_PATH);$(WindowsSdkDir_35);
111
 
112
ifeq "$(findstring $(NET_PATH),$(PATH))" ""
113
PATH    := $(NET_PATH);$(PATH)
114
endif
115
Path    := $(PATH)
116
export PATH
117
 
118
 
119
INCLUDE  := $(VSINSTALLDIR)/VC/INCLUDE;
120
INCLUDE  := $(INCLUDE);$(VSINSTALLDIR)/VC/ATLMFC/INCLUDE;
121
INCLUDE  := $(INCLUDE);$(WindowsSdkDir)/include/shared;
122
INCLUDE  := $(INCLUDE);$(WindowsSdkDir)/include/um;
123
INCLUDE  := $(INCLUDE);$(WindowsSdkDir)/include/winrt;
124
export INCLUDE
125
 
126
 
127
LIB :=
128
export LIB
129
 
130
VC_LIB     :=$(VSINSTALLDIR)/VC/LIB/amd64;
131
VC_LIB     := $(VC_LIB);$(VSINSTALLDIR)/VC/ATLMFC/LIB/amd64;
132
VC_LIB     := $(VC_LIB);$(WindowsSdkDir)/lib/win8/um/x64;
133
VC_LIB     := $(VC_LIB);$(FrameworkDIR64)/$(FrameworkVersion64);
134
VC_LIB     := $(VC_LIB);$(FrameworkDIR64)/$(Framework35Version);
135
VC_LIB     := $(VC_LIB);$(VSINSTALLDIR)/VC/LIB/amd64;
136
VC_LIB     := $(VC_LIB);$(VSINSTALLDIR)/VC/ATLMFC/LIB/amd64;
137
VC_LIB     := $(VC_LIB);$(WindowsSdkDir)/References/CommonConfiguration/Neutral;
138
VC_LIB     := $(VC_LIB);$(ExtensionSdkDir)/Microsoft.VCLibs/11.0/References/CommonConfiguration/neutral;
139
 
140
 
141
# rpcgen configuration
142
#
143
RPCGEN_CPP	:= cl
144
RPCGEN_CFLAGS	:= -EP
145
export RPCGEN_CPP RPCGEN_CFLAGS
146
 
147
#