DEADSOFTWARE

it is now possible to link windoze LibJIT and ENet as static libs (see commit comments)
[d2df-sdl.git] / README
1 D2DF-SDL
2 ---------
4 Doom 2D Forever ( http://repo.or.cz/d2df-sdl.git ) adapted for use with the FreePascal Compiler
5 and ported to SDL 2.0.
7 Building
8 ---------
10 Requirements:
11 * FPC >= 3.0.2;
12 * FMODEx >= 4.26.xx or SDL_mixer >= 2.0;
13 * libenet >= 1.3.13;
14 * SDL >= 2.0.
16 Create the "tmp" and "bin" directories beforehand if they don't exist already. Then run
18 cd src/game
19 fpc -O3 -Fi../lib/vampimg -Fi../lib/vampimg/JpegLib -Fi../lib/vampimg/ZLib -Fu../lib/vampimg -Fu../lib/vampimg/JpegLib -Fu../lib/vampimg/ZLib -FE../../bin -FU../../tmp Doom2DF.lpr
21 If you want SDL_mixer instead of FMOD, add -dUSE_MIXER.
22 To build a headless (no video/audio, for dedicated servers) executable, add -dHEADLESS.
23 Replace -O3 with -g -gl to enable debugging features. Run the game with --gdb when using a debugger to
24 prevent it from eating exceptions.
26 Windows binaries will require the appropriate DLLs (SDL2.dll, SDL2_mixer.dll or FMODEx.dll, ENet.dll).
29 Static Linking
30 --------------
32 See ( http://repo.or.cz/d2df-binlib.git ) repo for prebuild dynamic and static libraries.
34 It is now possible to link windoze LibJIT and ENet as static libs.
36 First, you need to clone ( http://repo.or.cz/d2df-binlib.git ) (repo with prebuilt windoze libs).
37 Then, you can use:
38 -dLIBJIT_WINDOZE_STATIC -- static LibJIT
39 -dLIBENET_WINDOZE_STATIC -- static ENet
41 Don't forget to specify lib*.a location with -Fi<...>
43 I (ketmar) used mingw-gcc 7.1.0 to build static libs; some other .a libs were taken directly from mingw.
44 building libs is easy: just fire msys, install all dependencies, and do:
46 ./configure --enable-static --disable-shared && make
48 This should produce working .a library suitable for static linking.