From 0333be5eb2207c6c7cf8d29929351d84809df14d Mon Sep 17 00:00:00 2001 From: Wanne Date: Mon, 2 Apr 2012 08:51:48 +0000 Subject: [PATCH] - Updated VS 2010 project files to allow different ways for building the executable (by tazpn) o Take a look in the comment header for the "Language Defines.h" file for further informations o Enable PDF for Release builds, so crash dump is more effective (of course if we release a version we also have to release the PDB file) git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@5136 3b4a5df2-a311-0410-b5c6-a8a6f20db521 --- Console/Console_VS2010.vcxproj | 31 +++-------- Editor/Editor_VS2010.vcxproj | 25 ++------- Language Defines.h | 59 +++++++++++++++++++++ Laptop/Laptop_VS2010.vcxproj | 25 ++------- Standard Gaming Platform/SGP_VS2010.vcxproj | 25 ++------- Strategic/Strategic_VS2010.vcxproj | 25 ++------- Tactical/Tactical_VS2010.vcxproj | 25 ++------- TacticalAI/TacticalAI_VS2010.vcxproj | 25 ++------- TileEngine/TileEngine_VS2010.vcxproj | 25 ++------- Utils/Utils_VS2010.vcxproj | 25 ++------- ext/export/ja2export_VS2010.vcxproj | 42 +++++++++++++++ ja2.props | 42 +++++++++++++-- ja2_LinkerVS2010.props | 2 +- ja2_VS2010.vcxproj | 41 ++++++-------- lua/lua_VS2010.vcxproj | 25 ++------- 15 files changed, 209 insertions(+), 233 deletions(-) diff --git a/Console/Console_VS2010.vcxproj b/Console/Console_VS2010.vcxproj index 98557bce..02e1cc8d 100644 --- a/Console/Console_VS2010.vcxproj +++ b/Console/Console_VS2010.vcxproj @@ -99,30 +99,13 @@ - - ..\lib\VS2010\$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - + + + + + + + NotUsing diff --git a/Editor/Editor_VS2010.vcxproj b/Editor/Editor_VS2010.vcxproj index 19d9aa89..c7727cc9 100644 --- a/Editor/Editor_VS2010.vcxproj +++ b/Editor/Editor_VS2010.vcxproj @@ -142,26 +142,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - + + + + + NotUsing diff --git a/Language Defines.h b/Language Defines.h index f25d3170..c4b62d2e 100644 --- a/Language Defines.h +++ b/Language Defines.h @@ -19,6 +19,65 @@ */ +/* The recommend approach for VS2010 multi-language builds is to use the command line or the ja2.props file. + + By default the language is ENGLISH and the Language Prefix is EN. + + There are 3 ways you can build the JA2 1.13 executable file: + + // ------------------------------------------------------- + // 1. Using the command line + // ------------------------------------------------------- + + For example, where msbuild is located in %SystemRoot%\Microsoft.NET\Framework\v4.0.30319\ if not on your path + msbuild.exe /p:Configuration=Release ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=PL /p:JA2Language=POLISH ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=DE /p:JA2Language=GERMAN ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=RU /p:JA2Language=RUSSIAN ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=NL /p:JA2Language=DUTCH ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=FR /p:JA2Language=FRENCH ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=IT /p:JA2Language=ITALIAN ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=CN /p:JA2Language=CHINESE ja2_VS2010.sln + + Note: If you want to build "Unfinished Business" version, just append the /p:JA2Config=JA2UB in the command line + msbuild.exe /p:Configuration=Release /p:JA2Config=JA2UB ja2_VS2010.sln + msbuild.exe /p:Configuration=Release /p:JA2LangPrefix=DE /p:JA2Language=GERMAN /p:JA2Config=JA2UB ja2_VS2010.sln + + // -------------------------------------------------------- + // 2. Editing the ja2.props file and then build in VS 2010 + // ------------------------------------------------------- + + 1. Open the "ja2.props" file in a text editor and set the tags to your likeing. + + For example: If you want to build Russian Version (normal JA2, not UB) then set the following: + + + + + + RU + + + RUSSIAN + + + 2. Save the file + 3. Build the project in Visual Studio 2010 + + // -------------------------------------------------------- + // 3. The "old" way for building the executable + // ------------------------------------------------------- + + 1. Enable the "#undef ENGLISH" define below, so English will not be used anymore + 2. Set the desired language below + 3. If you want to build "Unfinished Business" version, enable "#define JA2UB" and "#define JA2UBMAPS" in builddefines.h" + 4. Build the executable in VS 2010 + 5. The output will be placed in the "Build\bin\VS2010" folder +*/ + +// Only enable this "undef", if you use the 3. way of building the executable! +#undef ENGLISH + #if !defined(ENGLISH) && !defined(GERMAN) && !defined(RUSSIAN) && !defined(DUTCH) && !defined(POLISH) && !defined(FRENCH) && !defined(ITALIAN) && !defined(TAIWANESE) && !defined(CHINESE) /* please set one manually here (by uncommenting) if not willingly to set Workspace wide */ diff --git a/Laptop/Laptop_VS2010.vcxproj b/Laptop/Laptop_VS2010.vcxproj index c83fae4f..35e3e05b 100644 --- a/Laptop/Laptop_VS2010.vcxproj +++ b/Laptop/Laptop_VS2010.vcxproj @@ -239,26 +239,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing diff --git a/Standard Gaming Platform/SGP_VS2010.vcxproj b/Standard Gaming Platform/SGP_VS2010.vcxproj index 13489454..357f3ac2 100644 --- a/Standard Gaming Platform/SGP_VS2010.vcxproj +++ b/Standard Gaming Platform/SGP_VS2010.vcxproj @@ -202,26 +202,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing diff --git a/Strategic/Strategic_VS2010.vcxproj b/Strategic/Strategic_VS2010.vcxproj index 9a237a7d..62d4ffb8 100644 --- a/Strategic/Strategic_VS2010.vcxproj +++ b/Strategic/Strategic_VS2010.vcxproj @@ -197,26 +197,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing diff --git a/Tactical/Tactical_VS2010.vcxproj b/Tactical/Tactical_VS2010.vcxproj index 1e4ebfbd..2843941f 100644 --- a/Tactical/Tactical_VS2010.vcxproj +++ b/Tactical/Tactical_VS2010.vcxproj @@ -289,26 +289,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing diff --git a/TacticalAI/TacticalAI_VS2010.vcxproj b/TacticalAI/TacticalAI_VS2010.vcxproj index 157d03bd..3c145d7a 100644 --- a/TacticalAI/TacticalAI_VS2010.vcxproj +++ b/TacticalAI/TacticalAI_VS2010.vcxproj @@ -109,26 +109,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing diff --git a/TileEngine/TileEngine_VS2010.vcxproj b/TileEngine/TileEngine_VS2010.vcxproj index a83d0848..90df87c7 100644 --- a/TileEngine/TileEngine_VS2010.vcxproj +++ b/TileEngine/TileEngine_VS2010.vcxproj @@ -168,26 +168,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing diff --git a/Utils/Utils_VS2010.vcxproj b/Utils/Utils_VS2010.vcxproj index 5fc17627..93bbabeb 100644 --- a/Utils/Utils_VS2010.vcxproj +++ b/Utils/Utils_VS2010.vcxproj @@ -198,26 +198,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing diff --git a/ext/export/ja2export_VS2010.vcxproj b/ext/export/ja2export_VS2010.vcxproj index 4ccac5c8..53b2042b 100644 --- a/ext/export/ja2export_VS2010.vcxproj +++ b/ext/export/ja2export_VS2010.vcxproj @@ -9,6 +9,10 @@ Release Win32 + + Relese_WithDebugInfo + Win32 + {802552D2-B514-42E5-A169-F1E108527678} @@ -28,6 +32,12 @@ true NotSet + + Application + false + true + NotSet + @@ -37,6 +47,9 @@ + + + true @@ -48,6 +61,11 @@ ..\..\bin\VS2010\$(Configuration)\ ..\..\build\VS2010\$(ProjectName)_$(Configuration)\ + + false + ..\..\bin\VS2010\$(Configuration)\ + ..\..\build\VS2010\$(ProjectName)_$(Configuration)\ + NotUsing @@ -93,6 +111,30 @@ VFS.lib;libpng.lib;zlib.lib;7z.lib;%(AdditionalDependencies) + + + Level3 + NotUsing + MaxSpeed + true + true + WIN32;NDEBUG;_CONSOLE;VFS_STATIC;VFS_WITH_SLF;VFS_WITH_7ZIP;%(PreprocessorDefinitions) + ../VFS/include;../libpng;../zlib; src; src/ja2 + MultiThreaded + + + + + + + Console + true + true + true + ..\..\lib\VS2010\$(Configuration) + VFS.lib;libpng.lib;zlib.lib;7z.lib;%(AdditionalDependencies) + + diff --git a/ja2.props b/ja2.props index aad6ffbe..8e19258b 100644 --- a/ja2.props +++ b/ja2.props @@ -1,15 +1,51 @@  - + + JA2 + EN + ENGLISH + <_PropertySheetDisplayName>ja2 + $(SolutionDir)\build\VS2010\$(JA2Config)_$(JA2LangPrefix)\$(ProjectName)_$(Configuration)\ + $(SolutionDir)\lib\VS2010\$(JA2Config)_$(JA2LangPrefix)\$(Configuration)\ + + + $(JA2Config) + + + $(JA2LangPrefix) + + + $(JA2Language) + + ..\.;.\.;.\ext\VFS\include;..\ext\VFS\include;..\Utils;.\Utils;..\TileEngine;.\TileEngine;..\TacticalAI;.\TacticalAI;..\Tactical;.\Tactical;..\Strategic;.\Strategic;..\Standard Gaming Platform;.\Standard Gaming Platform;..\Res;.\Res;..\lua;.\lua;..\Laptop;.\Laptop;..\Multiplayer;.\Multiplayer;..\Multiplayer\raknet;.\Multiplayer\raknet;..\Editor;.\Editor;..\Console;.\Console;.\ext\libpng;..\ext\libpng;.\ext\zlib;..\ext\zlib;;$(NOINHERIT) - JA2;CINTERFACE;XML_STATIC;VFS_STATIC;VFS_WITH_SLF;VFS_WITH_7ZIP;USE_VFS;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) + JA2;CINTERFACE;XML_STATIC;VFS_STATIC;VFS_WITH_SLF;VFS_WITH_7ZIP;USE_VFS;_CRT_SECURE_NO_DEPRECATE;$(JA2Language);%(PreprocessorDefinitions) + + + + + JA2MAPS;%(PreprocessorDefinitions) + + + + + JA2UB;%(PreprocessorDefinitions) + + + + + JA2UBMAPS;%(PreprocessorDefinitions) + + + + + JA2EDITOR;JA2BETAVERSION;%(PreprocessorDefinitions) - \ No newline at end of file diff --git a/ja2_LinkerVS2010.props b/ja2_LinkerVS2010.props index 5b424718..e8d46e9b 100644 --- a/ja2_LinkerVS2010.props +++ b/ja2_LinkerVS2010.props @@ -7,7 +7,7 @@ - lib\VS2010\$(Configuration);%(AdditionalLibraryDirectories) + $(SolutionDir)\lib\VS2010\$(JA2Config)_$(JA2LangPrefix)\$(Configuration);$(SolutionDir)\lib\VS2010\$(Configuration);%(AdditionalLibraryDirectories) Console.lib;Editor.lib;Laptop.lib;lua.lib;SGP.lib;Strategic.lib;Tactical.lib;TacticalAI.lib;TileEngine.lib;Utils.lib;VFS.lib;7z.lib;libpng.lib;zlib.lib;%(AdditionalDependencies) diff --git a/ja2_VS2010.vcxproj b/ja2_VS2010.vcxproj index 2223a6c6..5224d711 100644 --- a/ja2_VS2010.vcxproj +++ b/ja2_VS2010.vcxproj @@ -97,39 +97,33 @@ true - bin\VS2010\$(Configuration)\ - build\VS2010\$(ProjectName)_$(Configuration)\ - JA2_EN_Debug.exe - + $(SolutionDir)\bin\VS2010\ + $(JA2Config)_$(JA2LangPrefix)_$(Configuration) + .exe true - bin\VS2010\$(Configuration)\ - build\VS2010\$(ProjectName)_$(Configuration)\ - - - MapEditor_EN_Debug.exe + $(SolutionDir)\bin\VS2010\ + .exe + MapEditor_$(JA2LangPrefix)_Debug false - bin\VS2010\$(Configuration)\ - build\VS2010\$(ProjectName)_$(Configuration)\ - JA2_PO_Release.exe - + $(SolutionDir)\bin\VS2010\ + $(JA2Config)_$(JA2LangPrefix)_$(Configuration) + .exe false - bin\VS2010\$(Configuration)\ - build\VS2010\$(ProjectName)_$(Configuration)\ - MapEditor_EN_Release.exe - + $(SolutionDir)\bin\VS2010\ + MapEditor_$(JA2LangPrefix)_Release + .exe false - bin\VS2010\$(Configuration)\ - build\VS2010\$(ProjectName)_$(Configuration)\ - JA2_EN_ReleaseDebugInfo.exe - + $(SolutionDir)\bin\VS2010\ + $(JA2Config)_$(JA2LangPrefix)_$(Configuration) + .exe @@ -145,7 +139,6 @@ true Multiplayer\raknet;%(AdditionalLibraryDirectories) Winmm.lib;RakNetLibStatic.lib;ws2_32.lib;DbgHelp.lib;%(AdditionalDependencies) - $(OutDir)\JA2_EN_Debug.exe @@ -178,12 +171,11 @@ Windows - false true true Multiplayer\raknet;%(AdditionalLibraryDirectories) Winmm.lib;RakNetLibStatic.lib;ws2_32.lib;DbgHelp.lib;%(AdditionalDependencies) - $(OutDir)\JA2_EN_Release.exe + true @@ -226,7 +218,6 @@ true Multiplayer\raknet;%(AdditionalLibraryDirectories) Winmm.lib;RakNetLibStatic.lib;ws2_32.lib;DbgHelp.lib;%(AdditionalDependencies) - $(OutDir)\JA2_EN_ReleaseDebugInfo.exe diff --git a/lua/lua_VS2010.vcxproj b/lua/lua_VS2010.vcxproj index 47fd14e8..e75d1dc9 100644 --- a/lua/lua_VS2010.vcxproj +++ b/lua/lua_VS2010.vcxproj @@ -109,26 +109,11 @@ - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\lib\VS2010\$(Configuration)\ - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - - - ..\build\VS2010\$(ProjectName)_$(Configuration)\ - ..\lib\VS2010\$(Configuration)\ - + + + + + NotUsing