summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: df21c98)
raw | patch | inline | side by side (parent: df21c98)
author | DeaDDooMER <deaddoomer@deadsoftware.ru> | |
Sun, 13 Oct 2019 17:48:18 +0000 (20:48 +0300) | ||
committer | DeaDDooMER <deaddoomer@deadsoftware.ru> | |
Sun, 13 Oct 2019 17:48:18 +0000 (20:48 +0300) |
README | patch | blob | history | |
android/README | patch | blob | history | |
src/game/Doom2DF.lpr | patch | blob | history | |
src/lib/vampimg/ZLib/dzlib.pas | patch | blob | history |
index c8ab1625a9eb0e2f627d56852e0304a5bf872353..564013568c004169da4fbfecedad1f231b61076d 100644 (file)
--- a/README
+++ b/README
D2DF-SDL
---------
-Doom 2D Forever ( http://repo.or.cz/d2df-sdl.git ) adapted for use with the FreePascal Compiler
-and ported to SDL 2.0.
+Doom 2D Forever ( http://repo.or.cz/d2df-sdl.git ) adapted for use with the
+FreePascal Compiler and ported to SDL 2.0.
Building
---------
Requirements:
-* FPC >= 3.0.2;
-* FMODEx >= 4.26.xx or SDL_mixer >= 2.0;
+* FPC >= 3.0.4;
* libenet >= 1.3.13;
-* SDL >= 2.0.
-Create the "tmp" and "bin" directories beforehand if they don't exist already. Then run
-
-cd src/game
-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
-
-If you want SDL_mixer instead of FMOD, add -dUSE_SDLMIXER.
-If you want the server to be able to forward ports via UPNP, add -dUSE_MINIUPNPC.
-If you want to debug game with Holmes, add -dENABLE_HOLMES (not supported in GLES mode).
-If you want to render graphics using OpenGL ES, add -dUSE_GLES1.
-To build a headless (no video/audio, for dedicated servers) executable, add -dHEADLESS.
-Replace -O3 with -g -gl to enable debugging features. 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 static link them (see below).
+Create the "tmp" and "bin" directories and then run:
+
+ cd src/game
+ fpc -O3 -FE../../bin -FU../../tmp Doom2DF.lpr
+
+Additionally you can add following options:
+ System driver:
+ * -dUSE_SDL Build with SDL 1.2.x
+ * -dUSE_SDL2 Build with SDL 2.0.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 FMODEx 4.26.x
+ * -dUSE_SDLMIXER Build with SDL2_mixer 2.0.x
+ * -dUSE_OPENAL Build with OpenAL 1.1
+ * -dUSE_SOUNDSTUB Disable sound management
+ Sound file drivers (OpenAL only):
+ * -dUSE_SDL Build with SDL 1.2.x for WAV support
+ * -dUSE_SDL2 Build with SDL 2.0.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
+ Other:
+ * -dUSE_MINIUPNPC Build with libminiupnpc for automatic server port
+ forwarding via UPNP
+ * -dENABLE_HOLMES Build with ingame map debugger
+ * -dHEADLESS Build a headless executable for dedicated servers
+
+Replace -O3 with -g -gl to enable debugging features. 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 static link them.
Static Linking
--------------
-See ( http://repo.or.cz/d2df-binlib.git ) repo for prebuild dynamic and static libraries.
+See ( http://repo.or.cz/d2df-binlib.git ) repo for prebuild dynamic and static
+libraries.
It is now possible to link windoze LibJIT and ENet as static libs.
-First, you need to clone ( http://repo.or.cz/d2df-binlib.git ) (repo with prebuilt windoze libs).
+First, you need to clone ( http://repo.or.cz/d2df-binlib.git ).
Then, you can use:
-dLIBJIT_WINDOZE_STATIC -- static LibJIT
-dLIBENET_WINDOZE_STATIC -- static ENet
Don't forget to specify lib*.a location with -Fi<...>
-I (ketmar) used mingw-gcc 7.1.0 to build static libs; some other .a libs were taken directly from mingw.
-building libs is easy: just fire msys, install all dependencies, and do:
+I (ketmar) used mingw-gcc 7.1.0 to build static libs; some other .a libs were
+taken directly from mingw. building libs is easy: just fire msys, install all
+dependencies, and do:
./configure --enable-static --disable-shared && make
diff --git a/android/README b/android/README
index 2d89cb9de9e209e44777dc5a71f4863ccd4d78fa..3b76d7230422b9f0e47026e67492838e37dbaf85 100644 (file)
--- a/android/README
+++ b/android/README
* Android NDK >= r16b;
* Open JDK >= 8;
* FPC >= 3.0.4;
-* SDL >= 2.0.7;
+* SDL == 2.0.7;
* SDL_mixer >= 2.0;
* libenet >= 1.3.13.
-Tandroid \
-Cparmv7a \
-Cfvfpv3 \
- -Fi../lib/vampimg \
- -Fi../lib/vampimg/JpegLib \
- -Fi../lib/vampimg/ZLib \
- -Fu../lib/vampimg \
- -Fu../lib/vampimg/JpegLib \
- -Fu../lib/vampimg/ZLib \
-FU../../android/tmp \
-FE../../android/ass/lib/armeabi-v7a \
-Fl../../android/ass/lib/armeabi-v7a \
diff --git a/src/game/Doom2DF.lpr b/src/game/Doom2DF.lpr
index 446518f02e16db6c01989c97d732d0b464e0f081..eb38f0e4eb351e7a34e35a59da36c88a5d97d6bf 100644 (file)
--- a/src/game/Doom2DF.lpr
+++ b/src/game/Doom2DF.lpr
fui_ctls in '../flexui/fui_ctls.pas',
{$ENDIF}
- ImagingTypes,
- Imaging,
- ImagingUtility;
+ ImagingDds in '../lib/vampimg/ImagingDds.pas',
+ ImagingFormats in '../lib/vampimg/ImagingFormats.pas',
+ ImagingPcx in '../lib/vampimg/ImagingPcx.pas',
+ ImagingColors in '../lib/vampimg/ImagingColors.pas',
+ ImagingNetworkGraphics in '../lib/vampimg/ImagingNetworkGraphics.pas',
+// ImagingComponents in '../lib/vampimg/ImagingComponents.pas',
+ ImagingRadiance in '../lib/vampimg/ImagingRadiance.pas',
+ ImagingPortableMaps in '../lib/vampimg/ImagingPortableMaps.pas',
+ ImagingXpm in '../lib/vampimg/ImagingXpm.pas',
+ ImagingBitmap in '../lib/vampimg/ImagingBitmap.pas',
+ ImagingTypes in '../lib/vampimg/ImagingTypes.pas',
+ Imaging in '../lib/vampimg/Imaging.pas',
+ ImagingExtras in '../lib/vampimg/ImagingExtras.pas',
+ ImagingGif in '../lib/vampimg/ImagingGif.pas',
+ ImagingIO in '../lib/vampimg/ImagingIO.pas',
+ imjdhuff in '../lib/vampimg/JpegLib/imjdhuff.pas',
+ imjdmerge in '../lib/vampimg/JpegLib/imjdmerge.pas',
+ imjdapimin in '../lib/vampimg/JpegLib/imjdapimin.pas',
+ imjidctflt in '../lib/vampimg/JpegLib/imjidctflt.pas',
+ imjdsample in '../lib/vampimg/JpegLib/imjdsample.pas',
+ imjfdctint in '../lib/vampimg/JpegLib/imjfdctint.pas',
+ imjdcoefct in '../lib/vampimg/JpegLib/imjdcoefct.pas',
+ imjdmainct in '../lib/vampimg/JpegLib/imjdmainct.pas',
+ imjcmaster in '../lib/vampimg/JpegLib/imjcmaster.pas',
+ imjdcolor in '../lib/vampimg/JpegLib/imjdcolor.pas',
+ imjcphuff in '../lib/vampimg/JpegLib/imjcphuff.pas',
+ imjidctint in '../lib/vampimg/JpegLib/imjidctint.pas',
+ imjutils in '../lib/vampimg/JpegLib/imjutils.pas',
+ imjdmarker in '../lib/vampimg/JpegLib/imjdmarker.pas',
+ imjdmaster in '../lib/vampimg/JpegLib/imjdmaster.pas',
+ imjmorecfg in '../lib/vampimg/JpegLib/imjmorecfg.pas',
+ imjdct in '../lib/vampimg/JpegLib/imjdct.pas',
+ imjcdctmgr in '../lib/vampimg/JpegLib/imjcdctmgr.pas',
+ imjerror in '../lib/vampimg/JpegLib/imjerror.pas',
+ imjpeglib in '../lib/vampimg/JpegLib/imjpeglib.pas',
+ imjccoefct in '../lib/vampimg/JpegLib/imjccoefct.pas',
+ imjfdctfst in '../lib/vampimg/JpegLib/imjfdctfst.pas',
+ imjchuff in '../lib/vampimg/JpegLib/imjchuff.pas',
+ imjdinput in '../lib/vampimg/JpegLib/imjdinput.pas',
+ imjdapistd in '../lib/vampimg/JpegLib/imjdapistd.pas',
+ imjidctfst in '../lib/vampimg/JpegLib/imjidctfst.pas',
+ imjcsample in '../lib/vampimg/JpegLib/imjcsample.pas',
+ imjmemmgr in '../lib/vampimg/JpegLib/imjmemmgr.pas',
+ imjmemnobs in '../lib/vampimg/JpegLib/imjmemnobs.pas',
+ imjfdctflt in '../lib/vampimg/JpegLib/imjfdctflt.pas',
+ imjcmainct in '../lib/vampimg/JpegLib/imjcmainct.pas',
+ imjcprepct in '../lib/vampimg/JpegLib/imjcprepct.pas',
+ imjidctred in '../lib/vampimg/JpegLib/imjidctred.pas',
+ imjcomapi in '../lib/vampimg/JpegLib/imjcomapi.pas',
+// imjidctasm in '../lib/vampimg/JpegLib/imjidctasm.pas',
+ imjcapimin in '../lib/vampimg/JpegLib/imjcapimin.pas',
+ imjquant1 in '../lib/vampimg/JpegLib/imjquant1.pas',
+ imjquant2 in '../lib/vampimg/JpegLib/imjquant2.pas',
+ imjcinit in '../lib/vampimg/JpegLib/imjcinit.pas',
+ imjdphuff in '../lib/vampimg/JpegLib/imjdphuff.pas',
+ imjcapistd in '../lib/vampimg/JpegLib/imjcapistd.pas',
+ imjinclude in '../lib/vampimg/JpegLib/imjinclude.pas',
+ imjccolor in '../lib/vampimg/JpegLib/imjccolor.pas',
+ imjcmarker in '../lib/vampimg/JpegLib/imjcmarker.pas',
+ imjcparam in '../lib/vampimg/JpegLib/imjcparam.pas',
+ imjddctmgr in '../lib/vampimg/JpegLib/imjddctmgr.pas',
+ imjdpostct in '../lib/vampimg/JpegLib/imjdpostct.pas',
+ imjdeferr in '../lib/vampimg/JpegLib/imjdeferr.pas',
+ ImagingCanvases in '../lib/vampimg/ImagingCanvases.pas',
+ iminffast in '../lib/vampimg/ZLib/iminffast.pas',
+ imzdeflate in '../lib/vampimg/ZLib/imzdeflate.pas',
+ imtrees in '../lib/vampimg/ZLib/imtrees.pas',
+ dzlib in '../lib/vampimg/ZLib/dzlib.pas',
+ impaszlib in '../lib/vampimg/ZLib/impaszlib.pas',
+ iminfcodes in '../lib/vampimg/ZLib/iminfcodes.pas',
+ iminfblock in '../lib/vampimg/ZLib/iminfblock.pas',
+ imzutil in '../lib/vampimg/ZLib/imzutil.pas',
+ imadler in '../lib/vampimg/ZLib/imadler.pas',
+ imzinflate in '../lib/vampimg/ZLib/imzinflate.pas',
+ iminfutil in '../lib/vampimg/ZLib/iminfutil.pas',
+ iminftrees in '../lib/vampimg/ZLib/iminftrees.pas',
+ ImagingJpeg in '../lib/vampimg/ImagingJpeg.pas',
+ ImagingClasses in '../lib/vampimg/ImagingClasses.pas',
+ ImagingPsd in '../lib/vampimg/ImagingPsd.pas',
+ ImagingTarga in '../lib/vampimg/ImagingTarga.pas',
+ ImagingUtility in '../lib/vampimg/ImagingUtility.pas';
{$IFDEF WINDOWS}
{$R *.res}
index 05e278d0fd78f5f5faf1dd64892422946f68deb9..337f310ecbb107946d9c2710c62f465a279b13da 100644 (file)
unit dzlib;
-{$I ImagingOptions.inc}
+{$I ../ImagingOptions.inc}
interface