Code: Select all
1. mkdir zdoom-0.96src
2. cd zdoom-0.96src
3. unrar x ~/96src.rar
4. mkdir config
5. # Find config.sub and config.guess somewhere on your system.
cp /usr/share/automake-1.8/config.sub config/
cp /usr/share/automake-1.8/config.guess config/
6. sh bootstrap
7. # You should have a working configure
./configure
8. # You can try to make it now... you'll get errors...
#### Patches....
a. src/c_console.cpp
--- src/c_console.cpp.orig 2004-12-25 20:57:58.206853688 -0500
+++ src/c_console.cpp 2004-12-25 20:58:06.102653344 -0500
@@ -634,8 +634,8 @@
//#endif
}
- I_PrintStr (outline, false);
-
+ /* 1st arg doesn't do anything in .96 */
+ I_PrintStr (0, outline, strlen(outline), false);
AddToConsole (printlevel, outline);
if (vidactive && screen && screen->Font)
{
b. Add the strlwr function
--- src/thingdef.cpp.orig 2004-12-25 21:06:26.369601208 -0500
+++ src/thingdef.cpp 2004-12-25 21:14:29.018227464 -0500
@@ -447,6 +447,17 @@
static const ActorProps *is_weaponprop (const char *str);
static const ActorProps *is_weapondefprop (const char *str);
+char *strlwr(char *string)
+{
+ char *p = string;
+ while (*p)
+ {
+ *p = tolower(*p);
+ p++;
+ }
+ return string;
+}
+
//==========================================================================
//
// Customizable attack functions which use actor parameters.
c. Remove included file
--- src/sound/i_sound.cpp.orig 2004-12-25 21:21:19.390841344 -0500
+++ src/sound/i_sound.cpp 2004-12-25 21:21:29.868248536 -0500
@@ -53,7 +53,7 @@
#include <math.h>
#include "fmodsound.h"
-#include "altsound.h"
+//#include "altsound.h"
#include "m_swap.h"
#include "stats.h"
d. remove virtual
--- src/sdl/hardware.h.orig 2004-12-25 21:22:39.249700952 -0500
+++ src/sdl/hardware.h 2004-12-25 21:22:51.937772072 -0500
@@ -48,7 +48,7 @@
virtual DFrameBuffer *CreateFrameBuffer (int width, int height, bool fs, DFrameBuffer *old) = 0;
virtual bool FullscreenChanged (bool fs) = 0;
- virtual int GetModeCount () = 0;
+ int GetModeCount ();
virtual void StartModeIterator (int bits) = 0;
virtual bool NextMode (int *width, int *height) = 0;
};
e. add bool Windowed
--- src/sdl/sdlvideo.cpp.orig 2004-12-25 21:24:11.975604472 -0500
+++ src/sdl/sdlvideo.cpp 2004-12-25 21:24:29.769899328 -0500
@@ -396,6 +396,7 @@
if (NeedGammaUpdate)
{
NeedGammaUpdate = false;
+ bool Windowed = !IsFullscreen ();
CalcGamma (Windowed || rgamma == 0.f ? Gamma : Gamma * rgamma, GammaTable[0]);
CalcGamma (Windowed || ggamma == 0.f ? Gamma : Gamma * ggamma, GammaTable[1]);
CalcGamma (Windowed || bgamma == 0.f ? Gamma : Gamma * bgamma, GammaTable[2]);
f. Add empty file
% touch src/sdl/i_altsound.cpp
And after all that....
Code: Select all
/usr/src/zdoom-0.96src/src/tempfiles.cpp:46: warning: the use of `tempnam' is dangerous, better use `mkstemp'
m_options.o(.text+0x1a9): In function `M_OptInit()':
/usr/src/zdoom-0.96src/src/m_options.cpp:935: undefined reference to `I_NextMode(int*, int*, bool*)'
m_options.o(.text+0x2655): In function `BuildModesList':
/usr/src/zdoom-0.96src/src/m_options.cpp:2270: undefined reference to `I_NextMode(int*, int*, bool*)'
m_options.o(.data+0x1bbc): In function `M_OptResponder(event_t*)':
/usr/src/zdoom-0.96src/src/m_options.cpp:1542: undefined reference to `snd_waterreverb'
m_options.o(.data+0x1c9c):/usr/src/zdoom-0.96src/src/m_options.cpp:1924: undefined reference to `snd_3d'
a_spectral.o(.data+0x5ac): In function `__static_initialization_and_destruction_0':
/usr/src/zdoom-0.96src/src/dobject.h:111: undefined reference to `A_Tracer2(AActor*)'
a_spectral.o(.data+0x5c0): In function `__static_initialization_and_destruction_0':
g_strife/a_spectral.cpp:181: undefined reference to `A_Tracer2(AActor*)'
a_spectral.o(.data+0x5d4): In function `__static_initialization_and_destruction_0':
/usr/src/zdoom-0.96src/src/dobject.h:111: undefined reference to `A_Tracer2(AActor*)'
a_spectral.o(.data+0x5e8):/usr/src/zdoom-0.96src/src/dobject.h:111: undefined reference to `A_Tracer2(AActor*)'
a_spectral.o(.data+0x5fc): In function `__static_initialization_and_destruction_0':
g_strife/a_spectral.cpp:181: undefined reference to `A_Tracer2(AActor*)'
i_music.o(.text+0x661): In function `I_RegisterSong(char const*, int, int)':
sound/i_music.cpp:295: undefined reference to `SPCSong::SPCSong(_IO_FILE*, int)'
collect2: ld returned 1 exit status
make[2]: *** [zdoom] Error 1
make[2]: Leaving directory `/mnt/disc1_part2/usr/src/zdoom-0.96src/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/disc1_part2/usr/src/zdoom-0.96src'
make: *** [all] Error 2
gcc version 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)