Skip to content
This repository has been archived by the owner on Jan 14, 2025. It is now read-only.

A shelter for stale branches from the previous repository of Doom2D Forever.

License

Notifications You must be signed in to change notification settings

Doom2D/repo.or.cz__d2df-sdl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

D2DF-SDL
---------

Doom2D Forever ( http://repo.or.cz/d2df-sdl.git ) adapted for use with the
FreePascal Compiler and ported to SDL (SDL2).

Building
---------

Requirements:
* FPC >= 3.1.1;
* libenet >= 1.3.13;

Create the `tmp` and `bin` directories and then run:

  cd src/game
  fpc -g -gl -O3 -FE../../bin -FU../../tmp Doom2DF.lpr

Additionally you can add the following options:
  System driver:
    * -dUSE_SDL2        Build with SDL 2.0.x
    * -dUSE_SDL         Build with SDL 1.2.x
    * -dUSE_SYSSTUB     Disable I/O management
  Render driver:
    * -dUSE_OPENGL      Build with desktop OpenGL 2.x
    * -dUSE_GLES1       Build with mobile OpenGLES 1.1
    * -dUSE_GLSTUB      Disable rendering
  Sound driver:
    * -dUSE_FMOD        Build with FMOD Ex (4.30.22, other versions may fail)
    * -dUSE_SDLMIXER    Build with SDL_mixer
    * -dUSE_OPENAL      Build with OpenAL 1.1
    * -dUSE_SOUNDSTUB   Disable sound management
  Sound file drivers (OpenAL only):
    * -dUSE_SDL2        Build with SDL 2.0.x for WAV support
    * -dUSE_SDL         Build with SDL 1.2.x for WAV support
    * -dUSE_VORBIS      Build with libvorbis
    * -dUSE_FLUIDSYNTH  Build with libfluidsynth
    * -dUSE_MODPLUG     Build with libmodplug
    * -dUSE_XMP         Build with linxmp
    * -dUSE_MPG123      Build with libmpg123
    * -dUSE_OPUS        Build with libopus
    * -dUSE_GME         Build with libgme
  Other:
    * -dSDL2_NODPI      Build for old libSDL2
    * -dUSE_MINIUPNPC   Build with libminiupnpc for automatic server port
                        forwarding via UPnP
    * -dENABLE_HOLMES   Build with in-game map debugger
    * -dHEADLESS        Build a headless executable for dedicated servers

Run the game with --gdb when using a debugger to prevent it from eating
exceptions.

Windows binaries will require the appropriate DLLs (SDL2.dll, SDL2_mixer.dll or
FMODex.dll, ENet.dll, miniupnpc.dll) unless you choose to link them statically.


Static Linking
--------------

It's now possible to link Windows' LibJIT and ENet as static libs. You can use:
  -dLIBJIT_WINDOZE_STATIC       -- static LibJIT
  -dLIBENET_WINDOZE_STATIC      -- static ENet
  -dLIBMINIUPNPC_WINDOZE_STATIC -- static MiniUPnPC
  -dVORBIS_WINDOZE_STATIC       -- static libogg/libvorbis (only in AL builds)
  -dOPUS_WINDOZE_STATIC         -- static libogg/libopus (only in AL builds)

Don't forget to specify lib*.a location with -Fi<...>

About

A shelter for stale branches from the previous repository of Doom2D Forever.

Resources

License

Stars

Watchers

Forks