1 // ----------------------------------------------------------------------------
2 //
3 //        DXライブラリ コンパイルコンフィグヘッダファイル
4 //
5 //                Ver 3.22a
6 //
7 // ----------------------------------------------------------------------------
8 
9 /*
10 <<注意>>
11   このヘッダファイルの #define のコメントアウト状態を変更しても、
12   DXライブラリ自体の再コンパイルを行わないと効果はありません。
13 */
14 /**
15  * このモジュールは使用されません。使用されたとしても正しく動作しません。
16  */
17 module dxlib_d.dxcompileconfig;
18 
19 
20 version (none):
21 
22 
23 version (OSX) {
24 	version = __APPLE__;
25 } else version (iOS) {
26 	version = __APPLE__;
27 }
28 
29 version (Android) {
30 	version = __ANDROID__;
31 }
32 
33 version (__APPLE__) {
34 } else {
35 	version (__ANDROID__) {
36 	} else {
37 		version = WINDOWS_DESKTOP_OS;
38 	}
39 }
40 
41 // 多重インクルード防止用マクロ
42 // スタティックライブラリ生成時ライブラリ機能制限用定義 -----------------------
43 
44 // namespace DxLib を使用しない場合は次のコメントを外してください
45 //version = DX_NON_NAMESPACE;
46 
47 // DxLib.h に書かれている using namespace DxLib ; を使用しない場合は次のコメントを外してください
48 //version = DX_NON_USING_NAMESPACE_DXLIB;
49 
50 // インラインアセンブラを使用しないソースコードでコンパイルする場合は以下のコメントアウトを外してください
51 //version = DX_NON_INLINE_ASM;
52 
53 // DXライブラリのプログラムから文字列を一切排除する場合はコメントを外してください
54 // (バイナリエディタで実行ファイルを開いてもDXライブラリを使用していることが分かり難くなります(よく調べれば当然分かりますが)
55 //  因みに、エラー出力が一切されなくなりますので管理人の対応時に支障をきたすかもしれません)
56 //version = DX_NON_LITERAL_STRING;
57 
58 // すべての関数をスレッドセーフにする場合はコメントを外してください
59 //version = DX_THREAD_SAFE;
60 
61 // ネットワーク関連の関数だけスレッドセーフにする場合はコメントを外して下さい
62 version = DX_THREAD_SAFE_NETWORK_ONLY;
63 
64 // DXアーカイブがいらない方は次のコメントを外してください
65 // ( DXアーカイブを無効にすると、DXアーカイブを内部で使っている関係上 DX_NON_MODEL と DX_NON_FILTER と DX_NON_MOVIE と DX_NON_NORMAL_DRAW_SHADER も有効になります )
66 //version = DX_NON_DXA;
67 
68 // ムービー機能がいらない方は次のコメントを外してください
69 //version = DX_NON_MOVIE;
70 
71 // TGA画像の読み込み機能がいらない方は次のコメントを外してください
72 //version = DX_NON_TGA;
73 
74 // JPEG画像の読みこみ機能がいらない方は次のコメントを外してください
75 // ※DxUseCLib.lib も再コンパイルする必要があります
76 //version = DX_NON_JPEGREAD;
77 
78 // PNG画像の読みこみ機能がいらない方は次のコメントを外してください
79 // ※DxUseCLib.lib も再コンパイルする必要があります
80 //version = DX_NON_PNGREAD;
81 
82 // TIFF画像の読みこみ機能がいらない方は次のコメントを外してください
83 // ※DxUseCLib.lib も再コンパイルする必要があります
84 //version = DX_NON_TIFFREAD;
85 
86 // GraphFilter や GraphBlend を使用しない方は次のコメントを外して下さい
87 //version = DX_NON_FILTER;
88 
89 // 通常描画にプログラマブルシェーダーを使用しない方は次のコメントを外してください
90 //version = DX_NON_NORMAL_DRAW_SHADER;
91 
92 // グラフィックス処理がいらない方は次のコメントを外してください
93 //version = DX_NON_GRAPHICS;
94 
95 // ソフトウエア2D描画がいらない方は次のコメントを外してください
96 //version = DX_NON_2DDRAW;
97 
98 // 標準 WAVE ファイル以外の音声ファイルを使用しない方は次のコメントを外してください
99 //version = DX_NON_ACM;
100 
101 // DirectShow を使用した MP3 ファイルのデコードを行わない場合は次のコメントをはずしてください
102 //version = DX_NON_DSHOW_MP3;
103 
104 // DirectShow を使用した動画ファイルのデコードを行わない場合は次のコメントをはずしてください
105 //version = DX_NON_DSHOW_MOVIE;
106 
107 // Media Foundation を使用した動画ファイルのデコードを行わない場合は次のコメントをはずしてください
108 //version = DX_NON_MEDIA_FOUNDATION;
109 
110 // キーボードの基本的な入力機能以外はいらない方は次のコメントを外してください
111 //version = DX_NON_KEYEX;
112 
113 // 文字列入力機能はいらない方は次のコメントを外して下さい
114 //version = DX_NON_INPUTSTRING;
115 
116 // 通信機能がいらない方は次のコメントを外してください
117 //version = DX_NON_NETWORK;
118 
119 // マスク機能がいらない方は次のコメントを外してください
120 //version = DX_NON_MASK;
121 
122 // Ogg Vorbis データを使用しない方は次のコメントをはずしてください
123 // ※DxUseCLib.lib も再コンパイルする必要があります
124 //version = DX_NON_OGGVORBIS;
125 
126 // Ogg Theora データを使用しない方は次のコメントをはずしてください
127 // ※DxUseCLib.lib も再コンパイルする必要があります
128 //version = DX_NON_OGGTHEORA;
129 
130 // Opus データを使用しない方は次のコメントをはずしてください
131 // ※DxUseCLib.lib も再コンパイルする必要があります
132 //version = DX_NON_OPUS;
133 
134 // ASIO を使用しない方は次のコメントをはずしてください
135 //version = DX_NON_ASIO;
136 
137 // 乱数発生器に Mersenne Twister を使用しない場合は以下のコメントを外して下さい
138 // ※DxUseCLib.lib も再コンパイルする必要があります
139 //version = DX_NON_MERSENNE_TWISTER;
140 
141 // DXライブラリ内の確保メモリのダンプ機能を有効にする場合は次のコメントを外してください
142 version = DX_USE_DXLIB_MEM_DUMP;
143 
144 // モデルデータを扱う機能を使用しない方は次のコメントを外してください
145 //version = DX_NON_MODEL;
146 
147 // Bullet Physics をリンクしない場合は次のコメントを外してください
148 // ※DxUseCLib.lib も再コンパイルする必要があります
149 //version = DX_NON_BULLET_PHYSICS;
150 
151 // FBXファイルを読み込む機能を使用する方は次のコメントを外してください( 使用には FBX SDK のセットアップが必要です )
152 //version = DX_LOAD_FBX_MODEL;
153 
154 // ビープ音機能がいらない方は次のコメントを外してください
155 //version = DX_NON_BEEP;
156 
157 // タスクスイッチをOFFにする機能がいらない方は次のコメントを外してください
158 // ( タスクスイッチOFF機能は使用不可です )
159 //version = DX_NON_STOPTASKSWITCH;
160 
161 // ログ出力を行わない場合は次のコメントを外して下さい
162 //version = DX_NON_LOG;
163 
164 // printfDx を無効にする場合は次のコメントを外して下さい
165 //version = DX_NON_PRINTF_DX;
166 
167 // 非同期読み込みを無効にする場合は次のコメントを外して下さい
168 //version = DX_NON_ASYNCLOAD;
169 
170 // ファイル保存機能を無効にする場合は次のコメントを外して下さい
171 //version = DX_NON_SAVEFUNCTION;
172 
173 // ソフトウェアで扱うイメージを無効にする場合は次のコメントを外して下さい
174 //version = DX_NON_SOFTIMAGE;
175 
176 // フォント描画機能を無効にする場合は次のコメントを外して下さい
177 //version = DX_NON_FONT;
178 
179 // サウンド再生機能( ソフトウエアサウンド、MIDI含む )を無効にする場合は次のコメントを外して下さい
180 //version = DX_NON_SOUND;
181 
182 // 入力機能を無効にする場合は次のコメントを外して下さい
183 //version = DX_NON_INPUT;
184 
185 // マルチスレッドを使用しない場合は次のコメントを外してください
186 //version = DX_NON_MULTITHREAD;
187 
188 // 各ハンドルのエラーチェックを無効にする場合は次のコメントを外してください( 若干高速化される代わりに無効なハンドルを関数に渡すと即不正なメモリアクセスエラーが発生するようになります )
189 //version = DX_NON_HANDLE_ERROR_CHECK;
190 
191 // Direct3D11 を使用しない場合は以下のコメントを外してください( 現在開発中なので、必ずコメントを外した状態にしてください )
192 //version = DX_NON_DIRECT3D11;
193 
194 // Direct3D9 を使用しない場合は以下のコメントを外してください
195 //version = DX_NON_DIRECT3D9;
196 
197 // 軽量バージョンのDXライブラリを生成する場合は次のコメントを外してください
198 //version = DX_LIB_LITEVER;
199 
200 // コンパイル済みのシェーダーバイナリを使用せず、シェーダーコードの実行時コンパイルを利用する場合は次のコメントを外してください
201 //version = DX_NON_SHADERCODE_BINARY;
202 
203 version (Android) {
204 	version = DX_NON_LIVE2D_CUBISM4;
205 } else version (__APPLE__) {
206 	version = DX_NON_LIVE2D_CUBISM4;
207 } else {
208 	// Live2D Cubism 4 関連の機能を使用しない場合は次のコメントを外してください
209 	//version = DX_NON_LIVE2D_CUBISM4;
210 }
211 
212 static if ((__traits(compiles, DX_GCC_COMPILE)) || (__traits(compiles, __ANDROID__)) || (__traits(compiles, __APPLE__)) || (__traits(compiles, BC2_COMPILER))) {
213 	version = USE_ULL;
214 }
215 
216 version (WINDOWS_DESKTOP_OS) {
217 } else {
218 	version = DX_NON_BEEP;
219 	version = DX_NON_ACM;
220 	version = DX_NON_DSHOW_MP3;
221 	version = DX_NON_DSHOW_MOVIE;
222 	version = DX_NON_MEDIA_FOUNDATION;
223 }
224 
225 static if ((__traits(compiles, __ANDROID__)) || (__traits(compiles, __APPLE__))) {
226 	//version = DX_NON_2DDRAW;
227 	version = DX_NON_ACM;
228 	version = DX_NON_DSHOW_MP3;
229 	version = DX_NON_DSHOW_MOVIE;
230 	version = DX_NON_MEDIA_FOUNDATION;
231 	version = DX_NON_KEYEX;
232 	version = DX_NON_INPUTSTRING;
233 	version = DX_NON_NETWORK;
234 	version = DX_NON_STOPTASKSWITCH;
235 	version = DX_NON_DIRECT3D11;
236 	version = DX_NON_DIRECT3D9;
237 }
238 
239 version (DX_LIB_LITEVER) {
240 	version = DX_NON_ACM;
241 	version = DX_NON_2DDRAW;
242 	version = DX_NON_MOVIE;
243 	version = DX_NON_KEYEX;
244 	version = DX_NON_NETWORK;
245 	version = DX_NON_MASK;
246 	version = DX_NON_JPEGREAD;
247 	version = DX_NON_PNGREAD;
248 	version = DX_NON_TIFFREAD;
249 	version = DX_NON_BEEP;
250 	version = DX_NON_OGGVORBIS;
251 	version = DX_NON_OGGTHEORA;
252 	version = DX_NON_OPUS;
253 	version = DX_NON_MODEL;
254 	version = DX_NON_SHADERCODE_BINARY;
255 }
256 
257 version (DX_NON_GRAPHICS) {
258 	version = DX_NON_FONT;
259 	version = DX_NON_MOVIE;
260 	version = DX_NON_FILTER;
261 	version = DX_NON_2DDRAW;
262 	version = DX_NON_MASK;
263 	version = DX_NON_MODEL;
264 	version = DX_NON_BULLET_PHYSICS;
265 	version = DX_NON_PRINTF_DX;
266 	version = DX_NON_KEYEX;
267 	version = DX_NON_DIRECT3D11;
268 	version = DX_NON_DIRECT3D9;
269 	version = DX_NOTUSE_DRAWFUNCTION;
270 	version = DX_NON_LIVE2D_CUBISM4;
271 }
272 
273 version (DX_NON_SOUND) {
274 	version = DX_NON_OPUS;
275 	version = DX_NON_OGGVORBIS;
276 	version = DX_NON_OGGTHEORA;
277 	version = DX_NON_ACM;
278 	version = DX_NON_DSHOW_MP3;
279 	version = DX_NON_DSHOW_MOVIE;
280 	version = DX_NON_MEDIA_FOUNDATION;
281 	version = DX_NON_MOVIE;
282 }
283 
284 version (DX_NON_MULTITHREAD) {
285 	version = DX_NON_ASYNCLOAD;
286 
287 	version (DX_THREAD_SAFE) {
288 		static assert(false);
289 	}
290 }
291 
292 version (DX_NON_INPUTSTRING) {
293 	version = DX_NON_KEYEX;
294 }
295 
296 version (DX_NON_DXA) {
297 	version = DX_NON_NORMAL_DRAW_SHADER;
298 	version = DX_NON_MODEL;
299 	version = DX_NON_FILTER;
300 	version = DX_NON_MOVIE;
301 }
302 
303 version (DX_NON_MOVIE) {
304 	version = DX_NON_OGGTHEORA;
305 	version = DX_NON_MEDIA_FOUNDATION;
306 }
307 
308 version (DX_NON_INPUT) {
309 	version = DX_NON_KEYEX;
310 }
311 
312 version (DX_NON_FONT) {
313 	version = DX_NON_PRINTF_DX;
314 	version = DX_NON_KEYEX;
315 }
316 
317 version (DX_NON_OGGVORBIS) {
318 	version = DX_NON_OGGTHEORA;
319 	version = DX_NON_OPUS;
320 }
321 
322 static if ((__traits(compiles, _WIN64)) || (__traits(compiles, __LP64__))) {
323 	version = PLATFORM_64BIT;
324 }
325 
326 static if ((__traits(compiles, _WIN64)) || (__traits(compiles, __ANDROID__)) || (__traits(compiles, __APPLE__))) {
327 	version = DX_NON_INLINE_ASM;
328 }
329 
330 public import dxlib_d.dxdatatype;