diff --git a/aegisub/src/config/config_windows.h b/aegisub/src/config/config_windows.h index ab53f7861a242b4c6e386253322a27d232c4f217..acf79f13693e2f530e9d93772a54a3ebcc6bced3 100644 --- a/aegisub/src/config/config_windows.h +++ b/aegisub/src/config/config_windows.h @@ -1,20 +1,33 @@ -// Build configuration for Aegisub 2.1.8 release for Windows +/* +This is the configuration used to build the official Windows release binaries +of Aegisub 2.1.9, provided for completeness. Also see config_windows0.h for +more detailed documentation. -// If making a custom 2.1.8 build please ensure you change the BUILD_CREDIT -// define and check that the FT2_LIB_* defines are correct. +Only Microsoft Visual C++ 2008 SP1 is supported for building, any other version +is at your own risk. +Non-Microsoft toolchains will likely not work and should not be attempted. +Remember to provide appropriate link libraries for all external dependencies. + +Ensure the #error directive is removed before attempting to use these settings. +*/ #pragma once +#error Please make sure to edit configure_windows.h to your needs before attempting to build Aegisub. + +// BUILD_CREDIT should be set to the name you want to identify your builds by #ifndef BUILD_CREDIT -#define BUILD_CREDIT "nielsm" +//#define BUILD_CREDIT "anonymous" #endif +// Only little endian is supported on Windows #define HAVE_LITTLE_ENDIAN #undef HAVE_BIG_ENDIAN +// Perl and Ruby automation engines are deprecated #define WITH_AUTOMATION #define WITH_AUTO4_LUA #define WITH_AUTO3 @@ -23,6 +36,7 @@ //#define WITH_RUBY +// While PortAudio and OpenAL do work on Windows, they are not recommended. #define WITH_DIRECTSOUND //#define WITH_PORTAUDIO //#define WITH_ALSA @@ -30,31 +44,58 @@ //#define WITH_PULSEAUDIO +// Avisynth is not officially supported for 64 bit builds, though it may work #if !defined(_M_X64) && !defined(_M_IA64) # define WITH_AVISYNTH -# define WITH_FFMPEGSOURCE #endif +// FFmpegSource is strongly recommended +#define WITH_FFMPEGSOURCE +// DirectShow video provider is deprecated and probably doesn't compile //#define WITH_DIRECTSHOW -//#define WITH_FFMPEG -//#define WITH_STATIC_FFMPEG +// Freetype2 is required, FontConfig is not supported on Windows. #define WITH_FREETYPE2 -#define FT2_LIB_RELEASE "freetype237.lib" -#define FT2_LIB_DEBUG "freetype237_D.lib" //#define WITH_FONTCONFIG +// Just use it. #define WITH_UNIVCHARDET +// Remember to link in a CSRI library, either the included dynamic discovery +// helper, or straight to a CSRI VSFilter build. #define WITH_CSRI //#define WITH_LIBASS +// Recommended. #define WITH_HUNSPELL +// WITH_STARTUPLOG causes lots of annoying messages to be shown during startup //#define WITH_STARTUPLOG + +// This is what causes the program to identify itself as 2.1.9 and not as some +// development build #define FINAL_RELEASE -// Define this if building an EXE for portable versions only. It makes the application -// manifest link the latest runtimes instead of the RTM version, but it might not work -// with plain vcredist_x86.exe installations. -//#define _BIND_TO_CURRENT_VCLIBS_VERSION 1 +// These tags define what kinds of updates will be offered +#if defined(_M_IX86) +# define UPDATE_CHECKER_ACCEPT_TAGS "windows" +#elif defined(_M_X64) +# define UPDATE_CHECKER_ACCEPT_TAGS "win64" +#endif + +// This block is required if you want to link to VSFilter directly +/* +#if defined(_M_IX86) +# if defined(_DEBUG) +# pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.DebugMFC' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"") +# else +# pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.MFC' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"") +# endif +#elif defined(_M_X64) +# if defined(_DEBUG) +# pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.DebugMFC' version='9.0.21022.8' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"") +# else +# pragma comment(linker, "\"/manifestdependency:type='win32' name='Microsoft.VC90.MFC' version='9.0.21022.8' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b' language='*'\"") +# endif +#endif +*/ diff --git a/aegisub/src/config/config_windows0.h b/aegisub/src/config/config_windows0.h index 7e22aacc84daf95b1259b391053763b0df0635a4..7dd170785f2bed8972ac9034df71b2b1736f8770 100644 --- a/aegisub/src/config/config_windows0.h +++ b/aegisub/src/config/config_windows0.h @@ -206,22 +206,6 @@ //#define WITH_LIBASS -// Enable FFmpeg video and audio decoders -// Deprecated by the FFmpegSource library, might not compile -// Requires: libavcodec, libavformat, libswscale, libavutil -// If you compiled static libraries (yes, by default), uncomment the second line as well, -// and remember to add the correct .a files to the linker's additional dependencies. -//#define WITH_FFMPEG -//#define WITH_STATIC_FFMPEG -#ifdef WITH_FFMPEG -# ifndef WITH_STATIC_FFMPEG -# pragma comment(lib, "avcodec-51.lib") -# pragma comment(lib, "avformat-51.lib") -# pragma comment(lib, "avutil-49.lib") -# endif -#endif - - // Enable Ruby support for Automation, unmaintained // Requires: Ruby 1.9 //#define WITH_RUBY