diff --git a/build/win32/vs10/README.txt b/build/win32/vs10/README.txt
index 9f0a59873..13303df96 100644
--- a/build/win32/vs10/README.txt
+++ b/build/win32/vs10/README.txt
@@ -38,9 +38,8 @@ to support the build of the SDL2 winsys in place of the original SDL-1.3 winsys
as SDL-2.x has been released for some time. Please note, as builds with the SDL2
winsys includes the SDL2 headers, main() will be defined to SDL2's special main()
implementation on Windows, which will require linking to SDL2.lib and SDL2main.lib
-for all apps that link to Cogl, which means that the SDL2 DLL needs to be shipped with
-your application as well, even though SDL2 functionality is not used directly in the
-application.
+for all apps that link to Cogl, unless SDL_MAIN_HANDLED is defined in your
+"preprocessor definitions" options.
The recommended build sequence of the dependencies are as follows (the non-GNOME
packages that are not downloaded as binaries from ftp://ftp.gnome.org have
diff --git a/build/win32/vs10/cogl-build-defines.props b/build/win32/vs10/cogl-build-defines.props
index 27b2e4c72..eefe1a6b9 100644
--- a/build/win32/vs10/cogl-build-defines.props
+++ b/build/win32/vs10/cogl-build-defines.props
@@ -11,6 +11,7 @@
G_LOG_DOMAIN="Cogl";COGL_HAS_WIN32_SUPPORT;COGL_BUILD_EXP;COGL_GL_LIBNAME="";COGL_LOCALEDIR="/some/random/dir"
G_LOG_DOMAIN="CoglPath"
G_LOG_DOMAIN="Cogl-Pango"
+ SDL_MAIN_HANDLED
<_PropertySheetDisplayName>coglbuilddefinesprops
@@ -51,5 +52,8 @@
$(CoglPangoBuildDefines)
+
+ $(CoglAppAvoidForcedSDLLinkingDefines)
+
diff --git a/build/win32/vs10/cogl-crate.vcxproj b/build/win32/vs10/cogl-crate.vcxproj
index a64e66951..d99a48712 100644
--- a/build/win32/vs10/cogl-crate.vcxproj
+++ b/build/win32/vs10/cogl-crate.vcxproj
@@ -75,7 +75,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -94,7 +94,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -118,7 +118,7 @@
MaxSpeed
true
- COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
true
@@ -137,7 +137,7 @@
- COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;COGL_EXAMPLES_DATA="../share/cogl-$(ApiVersion)/examples-data/";$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
diff --git a/build/win32/vs10/cogl-hello.vcxproj b/build/win32/vs10/cogl-hello.vcxproj
index 4b6c73279..a754c0d7a 100644
--- a/build/win32/vs10/cogl-hello.vcxproj
+++ b/build/win32/vs10/cogl-hello.vcxproj
@@ -75,7 +75,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -93,7 +93,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
EnableFastChecks
MultiThreadedDebugDLL
@@ -110,7 +110,7 @@
MaxSpeed
true
- COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
true
@@ -130,7 +130,7 @@
MaxSpeed
true
- COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
true
diff --git a/build/win32/vs10/cogl-info.vcxproj b/build/win32/vs10/cogl-info.vcxproj
index 17b3ba8a0..45f75ffc2 100644
--- a/build/win32/vs10/cogl-info.vcxproj
+++ b/build/win32/vs10/cogl-info.vcxproj
@@ -75,7 +75,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -93,7 +93,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -116,7 +116,7 @@
MaxSpeed
true
- COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
true
@@ -134,7 +134,7 @@
- COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
diff --git a/build/win32/vs10/cogl-msaa.vcxproj b/build/win32/vs10/cogl-msaa.vcxproj
index 4518872d4..28de26083 100644
--- a/build/win32/vs10/cogl-msaa.vcxproj
+++ b/build/win32/vs10/cogl-msaa.vcxproj
@@ -75,7 +75,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -93,7 +93,7 @@
Disabled
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -116,7 +116,7 @@
MaxSpeed
true
- COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
true
@@ -134,7 +134,7 @@
- COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_2_0_API;$(BaseBuildDefines);$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
diff --git a/build/win32/vs10/test-conformance-cogl.vcxprojin b/build/win32/vs10/test-conformance-cogl.vcxprojin
index 753a18862..a4aded6dd 100644
--- a/build/win32/vs10/test-conformance-cogl.vcxprojin
+++ b/build/win32/vs10/test-conformance-cogl.vcxprojin
@@ -76,7 +76,7 @@
Disabled
..\..\..\test-fixtures;%(AdditionalIncludeDirectories)
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_API;%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_API;$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -96,7 +96,7 @@
Disabled
..\..\..\test-fixtures;%(AdditionalIncludeDirectories)
- _DEBUG;COGL_ENABLE_EXPERIMENTAL_API;%(PreprocessorDefinitions)
+ _DEBUG;COGL_ENABLE_EXPERIMENTAL_API;$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
true
EnableFastChecks
MultiThreadedDebugDLL
@@ -121,7 +121,7 @@
MaxSpeed
..\..\..\test-fixtures;%(AdditionalIncludeDirectories)
true
- COGL_ENABLE_EXPERIMENTAL_API;%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_API;$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
true
@@ -141,7 +141,7 @@
..\..\..\test-fixtures;%(AdditionalIncludeDirectories)
- COGL_ENABLE_EXPERIMENTAL_API;%(PreprocessorDefinitions)
+ COGL_ENABLE_EXPERIMENTAL_API;$(CoglAppAvoidForcedSDLLinkingDefines);%(PreprocessorDefinitions)
MultiThreadedDLL
diff --git a/build/win32/vs9/README.txt b/build/win32/vs9/README.txt
index 3ccf89330..f277f97de 100644
--- a/build/win32/vs9/README.txt
+++ b/build/win32/vs9/README.txt
@@ -39,9 +39,8 @@ to support the build of the SDL2 winsys in place of the original SDL-1.3 winsys
as SDL-2.x has been released for some time. Please note, as builds with the SDL2
winsys includes the SDL2 headers, main() will be defined to SDL2's special main()
implementation on Windows, which will require linking to SDL2.lib and SDL2main.lib
-for all apps that link to Cogl, which means that the SDL2 DLL needs to be shipped with
-your application as well, even though SDL2 functionality is not used directly in the
-application.
+for all apps that link to Cogl, unless SDL_MAIN_HANDLED is defined in your
+"preprocessor definitions" options.
Please see the README file in the root directory of this Cogl source package
for the versions of the dependencies required. See also
diff --git a/build/win32/vs9/cogl-build-defines.vsprops b/build/win32/vs9/cogl-build-defines.vsprops
index fc68d472f..5fc6282c7 100644
--- a/build/win32/vs9/cogl-build-defines.vsprops
+++ b/build/win32/vs9/cogl-build-defines.vsprops
@@ -46,4 +46,8 @@
Name="CoglPangoBuildDefines"
Value="G_LOG_DOMAIN=\"Cogl-Pango\""
/>
+
diff --git a/build/win32/vs9/cogl-crate.vcproj b/build/win32/vs9/cogl-crate.vcproj
index 0fa2382d7..359289cdd 100644
--- a/build/win32/vs9/cogl-crate.vcproj
+++ b/build/win32/vs9/cogl-crate.vcproj
@@ -31,7 +31,7 @@