~ubuntu-branches/ubuntu/trusty/aegisub/trusty

« back to all changes in this revision

Viewing changes to src/config/config_windows0.h

  • Committer: Package Import Robot
  • Author(s): Sebastian Reichel
  • Date: 2012-03-16 22:58:00 UTC
  • Revision ID: package-import@ubuntu.com-20120316225800-yfb8h9e5n04rk46a
Tags: upstream-2.1.9
ImportĀ upstreamĀ versionĀ 2.1.9

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright (c) 2007, Rodrigo Braz Monteiro
 
2
// All rights reserved.
 
3
//
 
4
// Redistribution and use in source and binary forms, with or without
 
5
// modification, are permitted provided that the following conditions are met:
 
6
//
 
7
//   * Redistributions of source code must retain the above copyright notice,
 
8
//     this list of conditions and the following disclaimer.
 
9
//   * Redistributions in binary form must reproduce the above copyright notice,
 
10
//     this list of conditions and the following disclaimer in the documentation
 
11
//     and/or other materials provided with the distribution.
 
12
//   * Neither the name of the Aegisub Group nor the names of its contributors
 
13
//     may be used to endorse or promote products derived from this software
 
14
//     without specific prior written permission.
 
15
//
 
16
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
 
17
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 
18
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 
19
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
 
20
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 
21
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 
22
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 
23
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 
24
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 
25
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 
26
// POSSIBILITY OF SUCH DAMAGE.
 
27
//
 
28
// -----------------------------------------------------------------------------
 
29
//
 
30
// AEGISUB
 
31
//
 
32
// Website: http://aegisub.cellosoft.com
 
33
// Contact: mailto:zeratul@cellosoft.com
 
34
//
 
35
 
 
36
 
 
37
#pragma once
 
38
 
 
39
 
 
40
// Build credit: Set this to a string with your name as you want it to appear on the program
 
41
#ifndef BUILD_CREDIT
 
42
#define BUILD_CREDIT "Anonymous"
 
43
#endif
 
44
 
 
45
 
 
46
// Endianness: We don't support any Windows version that runs on big endian
 
47
#define HAVE_LITTLE_ENDIAN
 
48
#undef HAVE_BIG_ENDIAN
 
49
 
 
50
 
 
51
////////////// HIGH PRIORITY /////////////
 
52
 
 
53
// You seriously want these.
 
54
// Aegisub might be impossible to build without some of these,
 
55
// or just be nearly useless without them.
 
56
 
 
57
 
 
58
// Enable Automation
 
59
// All this does is allow Automation libraries to be built at all,
 
60
// and makes the GUI for Automation stuff show up.
 
61
// (It should be possible to build WITH_AUTOMATION but without any
 
62
// Automation engines enabled, albeit not interesting.)
 
63
// Requires: Nothing
 
64
#define WITH_AUTOMATION
 
65
 
 
66
 
 
67
// Enable Automation 4 Lua
 
68
// Requires: Lua 5.1 (in repository)
 
69
#define WITH_AUTO4_LUA
 
70
 
 
71
 
 
72
// Enable DirectSound audio player
 
73
// This enables both the new and old DSound player implementations.
 
74
// The new DSound player (DirectSoundPlayer2) is the recommended
 
75
// audio player on Windows.
 
76
// Requires: DirectX SDK (or Windows SDK 7.0)
 
77
#define WITH_DIRECTSOUND
 
78
 
 
79
 
 
80
// Enable Avisynth video and audio providers
 
81
// Requires: nothing (just the Avisynth DLLs at runtime)
 
82
#define WITH_AVISYNTH
 
83
 
 
84
 
 
85
// Enable CSRI (Common Subtitle Renderer Interface)
 
86
// Used to interface with VSFilter and potentially other subtitle renderers
 
87
// supporting the CSRI API, though none other do.
 
88
// You really want
 
89
// Requires: csri helper library (in repository) or another CSRI implementation
 
90
#define WITH_CSRI
 
91
// Easiest is to include the CSRI helper library in your solution and make
 
92
// Aegisub depend on it, so it gets linked in.
 
93
// Alternatively, link VSFilter directly and avoid the CSRI helper library, like so:
 
94
//#pragma comment(lib,"vsfilter-aegisub32.lib")
 
95
 
 
96
 
 
97
// Enable FreeType2 font lister for the fonts collector
 
98
// (You cannot build without having a font lister, and the FT2-based
 
99
// one is the only currently working on Windows.)
 
100
// Make sure to replace the library name by the actual one you use,
 
101
// or otherwise ensure the FT2 library gets linked to Aegisub.
 
102
// Requires: FreeType2
 
103
#define WITH_FREETYPE2
 
104
#ifdef WITH_FREETYPE2
 
105
# ifndef _DEBUG
 
106
#  pragma comment(lib,"freetype235.lib")
 
107
# else
 
108
#  pragma comment(lib,"freetype235_D.lib")
 
109
# endif
 
110
#endif
 
111
 
 
112
 
 
113
 
 
114
///////////// MEDIUM PRIORITY ////////////
 
115
 
 
116
// Nice to have things, easy to get working.
 
117
 
 
118
 
 
119
// Enable Automation 3
 
120
// Requires: auto3 dll (in repository), Lua 5.0 (in repository)
 
121
#define WITH_AUTO3
 
122
 
 
123
 
 
124
// Enable ffmpegsource video and audio providers
 
125
// Requires: ffmpegsource version 2 .lib file
 
126
//#define WITH_FFMPEGSOURCE
 
127
#ifdef WITH_FFMPEGSOURCE
 
128
# pragma comment(lib, "ffms2.lib")
 
129
#endif
 
130
 
 
131
 
 
132
// Enable universal charset detector, so Aegisub can automatically detect the encoding of non-unicode subtitles
 
133
// Requires: universalcharset (in repository)
 
134
#define WITH_UNIVCHARDET
 
135
 
 
136
 
 
137
// Enable Hunspell-based spellchecker
 
138
// Requires: hunspell (in repository for Win32)
 
139
// If you have an old version of Hunspell (that uses Hunspell::put_word() instead of Hunspell::add()),
 
140
// uncomment the second line as well.
 
141
#define WITH_HUNSPELL
 
142
//#define WITH_OLD_HUNSPELL
 
143
 
 
144
 
 
145
// Enable "final release" mode
 
146
// Displays different version numbers in About box and title bar, and omits detailed version information from
 
147
// the title bar. Only core developers should enable this, and only when making builds for mass consumption.
 
148
//#define FINAL_RELEASE
 
149
 
 
150
 
 
151
// Specify tags the update checker accepts
 
152
// See <http://devel.aegisub.org/wiki/Technical/UpdateChecker> for details on tags.
 
153
// Depending on who will be using your build, you may or may not want to have the
 
154
// "source" tag in here. If the string is empty, the update checker will reject any
 
155
// update offered.
 
156
#if defined(_M_IX86)
 
157
# define UPDATE_CHECKER_ACCEPT_TAGS "windows source"
 
158
#elif defined(_M_X64)
 
159
# define UPDATE_CHECKER_ACCEPT_TAGS "win64 source"
 
160
#endif
 
161
 
 
162
 
 
163
 
 
164
///////////// NOT RECOMMENDED /////////////
 
165
 
 
166
// The options in this section are generally deprecated or just not
 
167
// suited for Windows builds. They might not be compileable at all.
 
168
 
 
169
 
 
170
// Enable DirectShow video provider, unmaintained
 
171
// Requires: DirectShow "baseclasses", DirectX SDK, luck
 
172
//#define WITH_DIRECTSHOW
 
173
#ifdef WITH_DIRECTSHOW
 
174
# pragma comment(lib, "strmiids.lib")
 
175
# ifdef _DEBUG
 
176
#  pragma comment(lib, "strmbasdu.lib")
 
177
# else
 
178
#  pragma comment(lib, "strmbaseu.lib")
 
179
# endif
 
180
#endif
 
181
 
 
182
 
 
183
// Enable Perl scripting, unmaintainted
 
184
// Requires: perl library (ActivePerl comes with one for Visual C++ under lib\core\), luck
 
185
//#define WITH_PERL
 
186
#ifdef WITH_PERL
 
187
# pragma comment(lib,"perl510.lib")
 
188
#endif
 
189
 
 
190
// Enable PerlConsole (a debug tool for the perl engine)
 
191
// You don't want it
 
192
//#define WITH_PERLCONSOLE
 
193
 
 
194
 
 
195
// Enable FontConfig
 
196
// Alternate font lister for fonts collector, probably doesn't work on Windows.
 
197
// Requires: fontconfig
 
198
//#define WITH_FONTCONFIG
 
199
#ifdef WITH_FONTCONFIG
 
200
# pragma comment(lib,"libfontconfig.lib")
 
201
#endif
 
202
 
 
203
 
 
204
// Enable libass
 
205
// Requires: libass
 
206
//#define WITH_LIBASS
 
207
 
 
208
 
 
209
// Enable Ruby support for Automation, unmaintained
 
210
// Requires: Ruby 1.9
 
211
//#define WITH_RUBY
 
212
#ifdef WITH_RUBY
 
213
# pragma comment(lib,"ws2_32.lib")
 
214
# pragma comment(lib,"msvcrt-ruby18-static.lib")
 
215
#endif
 
216
 
 
217
 
 
218
// Enable PortAudio audio player
 
219
// Requires PortAudio release 18
 
220
//#define WITH_PORTAUDIO
 
221
#ifdef WITH_PORTAUDIO
 
222
# pragma comment(lib,"portaudio_x86.lib")
 
223
#endif
 
224
 
 
225
 
 
226
// Enable PortAudio audio player version 2
 
227
// Requires PortAudio release 19
 
228
//#define WITH_PORTAUDIO2
 
229
 
 
230
 
 
231
// Enable ALSA audio player
 
232
// Requires Linux and libasound
 
233
//#define WITH_ALSA
 
234
 
 
235
 
 
236
// Enable OpenAL audio player
 
237
// Works on Windows, but no real advantage of using it over DSound.
 
238
// Requires OpenAL development libraries and headers
 
239
//#define WITH_OPENAL
 
240
 
 
241
 
 
242
// Enable Pulse Audio audio player
 
243
// Requires libpulse (and a *NIX compatible system and a running sound server to actually use)
 
244
//#define WITH_PULSEAUDIO
 
245
 
 
246
 
 
247
// Display trace-level diagnostic messages during startup
 
248
// Only enable for making special builds for end users having trouble with starting Aegisub
 
249
//#define WITH_STARTUPLOG