diff --git a/Builds/VisualStudio2013/RippleD.vcxproj b/Builds/VisualStudio2013/RippleD.vcxproj
index 8efeea2fb6..116a99d4ad 100644
--- a/Builds/VisualStudio2013/RippleD.vcxproj
+++ b/Builds/VisualStudio2013/RippleD.vcxproj
@@ -50,76 +50,72 @@
- _WIN32_WINNT=0x6000;DEBUG;WIN32_CONSOLE;_CRTDBG_MAP_ALLOC;_CRT_SECURE_NO_WARNINGS;_DEBUG;_SCL_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
- ..\..\build\proto;..\..\src;..\..\src\beast;..\..\src\protobuf\src;..\..\src\protobuf\src;..\..\src\protobuf\vsprojects;%(AdditionalIncludeDirectories)
- 4018;4244;4267;4800
+ _WIN32_WINNT=0x6000;_CRT_SECURE_NO_WARNINGS;_CRTDBG_MAP_ALLOC;_DEBUG;_SCL_SECURE_NO_WARNINGS;DEBUG;WIN32_CONSOLE;%(PreprocessorDefinitions)
+ ..\..\build\proto;..\..\src;..\..\src\beast;..\..\src\protobuf\src;..\..\src\protobuf\vsprojects;%(AdditionalIncludeDirectories)
+ 4800;4244;4267;4018
Async
- True
- True
- Cdecl
- False
- False
- True
MultiThreadedDebug
- Disabled
- EnableFastChecks
- Level3
- False
- True
- ProgramDatabase
- None
Precise
+ False
+ EnableFastChecks
+ None
+ True
+ True
+ True
+ False
True
- True
+ Disabled
False
- /FS /bigobj %(AdditionalOptions)
+ False
+ ProgramDatabase
+ Cdecl
+ True
+ Level3
+ /bigobj /FS %(AdditionalOptions)
- Shlwapi.lib;advapi32.lib;comdlg32.lib;gdi32.lib;kernel32.lib;libeay32MT.lib;odbc32.lib;odbccp32.lib;ole32.lib;oleaut32.lib;shell32.lib;ssleay32MT.lib;user32.lib;uuid.lib;winspool.lib;%(AdditionalDependencies)
- True
- True
+ advapi32.lib;comdlg32.lib;gdi32.lib;kernel32.lib;libeay32MT.lib;odbc32.lib;odbccp32.lib;ole32.lib;oleaut32.lib;shell32.lib;Shlwapi.lib;ssleay32MT.lib;user32.lib;uuid.lib;winspool.lib;%(AdditionalDependencies)
NoErrorReport
- MachineX64
- true
Console
- True
- /MANIFEST /TLBID:1 %(AdditionalOptions)
+ True
+ true
+ True
+ MachineX64
+ /MANIFEST /nologo /TLBID:1 %(AdditionalOptions)
- _WIN32_WINNT=0x6000;NDEBUG;WIN32_CONSOLE;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
- ..\..\build\proto;..\..\src;..\..\src\beast;..\..\src\protobuf\src;..\..\src\protobuf\src;..\..\src\protobuf\vsprojects;%(AdditionalIncludeDirectories)
- 4018;4244;4267;4800
+ _WIN32_WINNT=0x6000;_CRT_SECURE_NO_WARNINGS;_SCL_SECURE_NO_WARNINGS;NDEBUG;WIN32_CONSOLE;%(PreprocessorDefinitions)
+ ..\..\build\proto;..\..\src;..\..\src\beast;..\..\src\protobuf\src;..\..\src\protobuf\vsprojects;%(AdditionalIncludeDirectories)
+ 4800;4244;4267;4018
Async
- True
- Cdecl
+ Precise
False
- False
+ None
+ True
True
MultiThreaded
- Full
- Level3
- False
- True
- ProgramDatabase
- None
- Precise
- True
+ False
True
False
- /FS /bigobj %(AdditionalOptions)
+ False
+ ProgramDatabase
+ Cdecl
+ True
+ Full
+ Level3
+ /bigobj /FS %(AdditionalOptions)
- Shlwapi.lib;advapi32.lib;comdlg32.lib;gdi32.lib;kernel32.lib;libeay32MT.lib;odbc32.lib;odbccp32.lib;ole32.lib;oleaut32.lib;shell32.lib;ssleay32MT.lib;user32.lib;uuid.lib;winspool.lib;%(AdditionalDependencies)
- True
- True
+ advapi32.lib;comdlg32.lib;gdi32.lib;kernel32.lib;libeay32MT.lib;odbc32.lib;odbccp32.lib;ole32.lib;oleaut32.lib;shell32.lib;Shlwapi.lib;ssleay32MT.lib;user32.lib;uuid.lib;winspool.lib;%(AdditionalDependencies)
NoErrorReport
- MachineX64
- true
Console
- True
- /MANIFEST /TLBID:1 %(AdditionalOptions)
+ True
+ true
+ True
+ MachineX64
+ /MANIFEST /nologo /TLBID:1 %(AdditionalOptions)
diff --git a/SConstruct b/SConstruct
index 4e21d93daa..b72d0e16df 100644
--- a/SConstruct
+++ b/SConstruct
@@ -214,10 +214,7 @@ def config_base(env):
except KeyError:
pass
- if Beast.system.linux:
- env.ParseConfig('pkg-config --static --cflags --libs openssl')
- env.ParseConfig('pkg-config --static --cflags --libs protobuf')
- elif Beast.system.windows:
+ if Beast.system.windows:
try:
OPENSSL_ROOT = os.path.normpath(os.environ['OPENSSL_ROOT'])
env.Append(CPPPATH=[
@@ -244,6 +241,11 @@ def config_env(toolchain, variant, env):
env.Append(CPPDEFINES=['NDEBUG'])
if toolchain in Split('clang gcc'):
+
+ if Beast.system.linux:
+ env.ParseConfig('pkg-config --static --cflags --libs openssl')
+ env.ParseConfig('pkg-config --static --cflags --libs protobuf')
+
env.Append(CCFLAGS=[
'-Wall',
'-Wno-sign-compare',
@@ -322,7 +324,7 @@ def config_env(toolchain, variant, env):
if toolchain == 'clang':
if Beast.system.osx:
env.Replace(CC='clang', CXX='clang++', LINK='clang++')
- else:
+ elif 'CLANG_CC' in env and 'CLANG_CXX' in env and 'CLANG_LINK' in env:
env.Replace(CC=env['CLANG_CC'], CXX=env['CLANG_CXX'], LINK=env['CLANG_LINK'])
# C and C++
# Add '-Wshorten-64-to-32'
@@ -332,7 +334,8 @@ def config_env(toolchain, variant, env):
env.Append(CXXFLAGS=['-Wno-mismatched-tags'])
elif toolchain == 'gcc':
- env.Replace(CC=env['GNU_CC'], CXX=env['GNU_CXX'], LINK=env['GNU_LINK'])
+ if 'GNU_CC' in env and 'GNU_CXX' in env and 'GNU_LINK' in env:
+ env.Replace(CC=env['GNU_CC'], CXX=env['GNU_CXX'], LINK=env['GNU_LINK'])
# Why is this only for gcc?!
env.Append(CCFLAGS=['-Wno-unused-local-typedefs'])
@@ -397,7 +400,7 @@ def config_env(toolchain, variant, env):
'/MACHINE:X64',
'/MANIFEST',
#'''/MANIFESTUAC:"level='asInvoker' uiAccess='false'"''',
- #'/NOLOGO',
+ '/nologo',
'/NXCOMPAT',
'/SUBSYSTEM:CONSOLE',
'/TLBID:1',
@@ -447,10 +450,6 @@ base.Append(CPPPATH=[
os.path.join('src', 'beast'),
os.path.join(build_dir, 'proto'),
])
-if Beast.system.windows:
- base.Append(CPPPATH=[
- os.path.join('src', 'protobuf', 'src'),
- ])
# Configure the toolchains, variants, default toolchain, and default target
variants = ['debug', 'release']
@@ -489,7 +488,7 @@ for source in [
# Declare the targets
aliases = collections.defaultdict(list)
msvc_configs = []
-for toolchain in toolchains:
+for toolchain in ['gcc', 'clang', 'msvc']:
for variant in variants:
# Configure this variant's construction environment
env = base.Clone()
@@ -569,7 +568,7 @@ for toolchain in toolchains:
'src/snappy/config',
]))
- if Beast.system.osx:
+ if toolchain == "clang" and Beast.system.osx:
objects.append(addSource('src/ripple/unity/beastobjc.mm', env, variant_dirs))
target = env.Program(
@@ -588,9 +587,10 @@ for toolchain in toolchains:
msvc_configs.append(config)
if toolchain in toolchains:
aliases['all'].extend(target)
- aliases[variant].extend(target)
- aliases[toolchain].extend(target)
- env.Alias(variant_name, target)
+ aliases[variant].extend(target)
+ aliases[toolchain].extend(target)
+ env.Alias(variant_name, target)
+
for key, value in aliases.iteritems():
env.Alias(key, value)