GithubHelp home page GithubHelp logo

jonof / jfduke3d Goto Github PK

View Code? Open in Web Editor NEW
105.0 8.0 17.0 3.46 MB

Port of the 3D Realms game "Duke Nukem 3D"

Home Page: http://www.jonof.id.au/jfduke3d

C 96.48% Objective-C 0.89% Makefile 0.21% NSIS 0.17% Batchfile 0.01% HTML 2.08% Shell 0.09% PowerShell 0.07%

jfduke3d's Introduction

JonoF's Duke Nukem 3D Port

by Jonathon Fowler, with contributions by Ken Silverman and others

This is the source code for my port of 3D Realms' Duke Nukem 3D using my port of Ken Silverman's Build game engine.

Minimum system requirements

  • 32 or 64-bit CPU. These have been tried first-hand:
    • Intel x86, x86_64
    • PowerPC 32-bit (big-endian)
    • ARM 32-bit hard-float, 64-bit
  • A modern operating system:
    • Linux, BSD, possibly other systems supported by SDL 2.0.
    • macOS 10.15+
    • Windows Vista, 7, 8/10+
  • Optional: 3D acceleration with OpenGL 2.0 or OpenGL ES 2.0 capable hardware.

You will require game data from an original release of Duke Nukem 3D. Refer to the documentation on my website on what releases are suitable and where to locate their game files.

Compilation

Before you begin, clone this repository or unpack the source archive. If you cloned using Git, be sure to initialise the submodules of this repository (i.e. git submodule update --init).

Now, based on your chosen OS and compiler:

Linux and BSD

  1. Install the compiler toolchain and SDL2 development packages, e.g.
    • Debian 9: sudo apt-get install build-essential libsdl2-dev
    • FreeBSD 11: sudo pkg install gmake sdl2 pkgconf
  2. Install optional sound support development packages.
    • Debian 9: sudo apt-get install libvorbis-dev libfluidsynth-dev
    • FreeBSD 11: sudo pkg install libvorbis fluidsynth
  3. Install GTK+ 3 development packages if you want launch windows and editor file choosers, e.g.
    • Debian 9: sudo apt-get install libgtk-3-dev
    • FreeBSD 11: sudo pkg install gtk3
  4. Open a terminal, change into the source code directory, and compile the game with: make or gmake (BSD)
  5. Assuming that was successful, run the game with: ./duke3d

macOS

  1. Install Xcode from the Mac App Store.
  2. Fetch and install the SDL 2.0 development package:
    1. Fetch SDL2-2.0.x.dmg from http://libsdl.org/download-2.0.php.
    2. Copy SDL2.framework found in the DMG file to ~/Library/Frameworks. Create the Frameworks directory if it doesn't exist on your system.
  3. Open duke3d.xcodeproj from within the JFDuke3D source code's xcode folder.
  4. From the Product menu choose Run.

Windows using Microsoft Visual C++ 2015 (or newer) and NMAKE

  1. If needed, install Visual Studio Community 2017 for free from Microsoft. Terms and conditions apply. Install at minimum these components:
    • VC++ 2015.3 v140 toolset for desktop (x86,x64)
    • Windows Universal CRT SDK
    • Windows 8.1 SDK
  2. Open the command-line build prompt. e.g. VS2015 x64 Native Tools Command Prompt or VS2015 x86 Native Tools Command Prompt.
  3. Change into the JFDuke3D source code folder, then compile the game with: nmake /f Makefile.msvc
  4. Assuming success, run the game with: duke3d

Compilation options

Some engine features may be enabled or disabled at compile time. These can be passed to the MAKE tool, or written to a Makefile.user (Makefile.msvcuser for MSVC) file in the source directory.

These options are available:

  • RELEASE=1 – build with optimisations for release.
  • RELEASE=0 – build for debugging.
  • USE_POLYMOST=1 – enable the true 3D renderer.
  • USE_POLYMOST=0 – disable the true 3D renderer.
  • USE_OPENGL=1 – enable use of OpenGL 2.x acceleration.
  • USE_OPENGL=3 – enable use of OpenGL 3.x acceleration.
  • USE_OPENGL=USE_GL2 – enable use of OpenGL 2.x acceleration. (Not a valid setting for MSVC.)
  • USE_OPENGL=USE_GL3 – enable use of OpenGL 3.x acceleration. (Not a valid setting for MSVC.)
  • USE_OPENGL=USE_GLES2 – enable use of OpenGL ES 2.0 acceleration. (Not a valid setting for MSVC.)
  • USE_OPENGL=0 – disable use of OpenGL acceleration.
  • WITHOUT_GTK=1 – disable use of GTK+ to provide launch windows and load/save file choosers.

Warnings

  1. You should exercise caution if you choose to use multiplayer features over untrustworthy networks with untrustworthy players.
  2. 3D Realms and Apogee do not support this port. Contact me instead.

Enjoy!

Jonathon Fowler

jfduke3d's People

Contributors

bszili avatar jonof avatar martymac avatar plagman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

jfduke3d's Issues

can't build on debian jessie amd64

hi! i try to build on debian jessie on amd64, i have some warnings but the last error break the whole build.

toledones@gollum:/tmp/jfduke3d$ make
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/game.c -o src/game.o
src/game.c: In function ‘dobonus’:
src/game.c:9120:56: warning: iteration 6u invokes undefined behavior [-Waggressive-loop-optimizations]
for(t=0;t<35;t+=5) if( bossmove[t+2] && (totalclock%390) > bossmove[t] && (totalclock%390) <= bossmove[t+1] )
^
src/game.c:9120:25: note: containing loop
for(t=0;t<35;t+=5) if( bossmove[t+2] && (totalclock%390) > bossmove[t] && (totalclock%390) <= bossmove[t+1] )
^
src/game.c:9662:21: warning: ‘yy’ may be used uninitialized in this function [-Wmaybe-uninitialized]
zz = yy += 5;
^
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/actors.c -o src/actors.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/gamedef.c -o src/gamedef.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/global.c -o src/global.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/menues.c -o src/menues.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/player.c -o src/player.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/premap.c -o src/premap.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/sector.c -o src/sector.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/rts.c -o src/rts.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/config.c -o src/config.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/testcd.c -o src/testcd.o
src/testcd.c: In function ‘testcd’:
src/testcd.c:69:20: warning: unused parameter ‘fn’ [-Wunused-parameter]
char testcd( char fn )
^
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/osdfuncs.c -o src/osdfuncs.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/osdcmds.c -o src/osdcmds.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/grpscan.c -o src/grpscan.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c src/sounds.c -o src/sounds.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/util_lib.c -o jfmact/util_lib.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/file_lib.c -o jfmact/file_lib.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/control.c -o jfmact/control.o
jfmact/control.c: In function ‘CONTROL_CenterJoystick’:
jfmact/control.c:169:12: warning: unused parameter ‘CenterCenter’ [-Wunused-parameter]
void ( *CenterCenter )( void ),
^
jfmact/control.c:170:12: warning: unused parameter ‘UpperLeft’ [-Wunused-parameter]
void ( *UpperLeft )( void ),
^
jfmact/control.c:171:12: warning: unused parameter ‘LowerRight’ [-Wunused-parameter]
void ( *LowerRight )( void ),
^
jfmact/control.c:172:12: warning: unused parameter ‘CenterThrottle’ [-Wunused-parameter]
void ( *CenterThrottle )( void ),
^
jfmact/control.c:173:12: warning: unused parameter ‘CenterRudder’ [-Wunused-parameter]
void ( *CenterRudder )( void )
^
jfmact/control.c: In function ‘CONTROL_StartJoy’:
jfmact/control.c:178:32: warning: unused parameter ‘joy’ [-Wunused-parameter]
boolean CONTROL_StartJoy(int32 joy)
^
jfmact/control.c: In function ‘CONTROL_ShutJoy’:
jfmact/control.c:183:28: warning: unused parameter ‘joy’ [-Wunused-parameter]
void CONTROL_ShutJoy(int32 joy)
^
jfmact/control.c: In function ‘CONTROL_Startup’:
jfmact/control.c:898:37: warning: unused parameter ‘which’ [-Wunused-parameter]
boolean CONTROL_Startup(controltype which, int32 ( *TimeFunction )( void ), int32 ticspersecond)
^
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/keyboard.c -o jfmact/keyboard.o
jfmact/keyboard.c: In function ‘KB_Addch’:
jfmact/keyboard.c:220:21: warning: unused parameter ‘ch’ [-Wunused-parameter]
void KB_Addch( char ch )
^
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/mouse.c -o jfmact/mouse.o
jfmact/mouse.c: In function ‘MOUSE_GetPosition’:
jfmact/mouse.c:78:31: warning: unused parameter ‘x’ [-Wunused-parameter]
void MOUSE_GetPosition( int32_x, int32_y )
^
jfmact/mouse.c:78:40: warning: unused parameter ‘y’ [-Wunused-parameter]
void MOUSE_GetPosition( int32_x, int32_y )
^
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/mathutil.c -o jfmact/mathutil.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/scriplib.c -o jfmact/scriplib.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c jfmact/animlib.c -o jfmact/animlib.o
gcc -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -c rsrc/game_icon.c -o src/game_icon.o
make -C jfbuild
SUPERBUILD=1 POLYMOST=1
USE_OPENGL=1 DYNAMIC_OPENGL=1
NOASM=1 RELEASE=1 enginelib
make[1]: Entering directory '/tmp/jfduke3d/jfbuild'
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/a-c.c -o src/a-c.o
src/a-c.c: In function ‘mhline’:
src/a-c.c:149:61: warning: unused parameter ‘junk’ [-Wunused-parameter]
void mhline(void *bufplc, unsigned int bx, int cntup16, int junk, unsigned int by, void *p)
^
src/a-c.c: In function ‘thline’:
src/a-c.c:167:61: warning: unused parameter ‘junk’ [-Wunused-parameter]
void thline(void *bufplc, unsigned int bx, int cntup16, int junk, unsigned int by, void *p)
^
src/a-c.c: In function ‘stretchhline’:
src/a-c.c:300:26: warning: unused parameter ‘p0’ [-Wunused-parameter]
void stretchhline (void *p0, int u, int cnt, int uinc, void *rptr, void *p)
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/baselayer.c -o src/baselayer.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/cache1d.c -o src/cache1d.o
src/cache1d.c: In function ‘klistpath’:
src/cache1d.c:943:45: warning: array subscript is below array bounds [-Warray-bounds]
if (toupperlookup[(int)(unsigned char)buf[i]] == '/') { ftype = CACHE1D_FIND_DIR; buf[i] = 0; }
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/compat.c -o src/compat.o
src/compat.c: In function ‘Bcanonicalisefilename’:
src/compat.c:577:47: warning: unused parameter ‘removefn’ [-Wunused-parameter]
int Bcanonicalisefilename(char *filename, int removefn)
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/crc32.c -o src/crc32.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/defs.c -o src/defs.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/engine.c -o src/engine.o
src/engine.c: In function ‘loadvoxel’:
src/engine.c:44:20: warning: parameter ‘voxindex’ set but not used [-Wunused-but-set-parameter]
void loadvoxel(int voxindex) { voxindex=0; }
^
src/engine.c: In function ‘animateoffs’:
src/engine.c:1083:38: warning: unused parameter ‘fakevar’ [-Wunused-parameter]
int animateoffs(short tilenum, short fakevar)
^
src/engine.c: In function ‘parascan’:
src/engine.c:2222:26: warning: unused parameter ‘dax1’ [-Wunused-parameter]
static void parascan(int dax1, int dax2, int sectnum, unsigned char dastat, int bunch)
^
src/engine.c:2222:36: warning: unused parameter ‘dax2’ [-Wunused-parameter]
static void parascan(int dax1, int dax2, int sectnum, unsigned char dastat, int bunch)
^
src/engine.c: In function ‘preparemirror’:
src/engine.c:9440:42: warning: unused parameter ‘daz’ [-Wunused-parameter]
void preparemirror(int dax, int day, int daz, short daang, int dahoriz, short dawall, short dasector, int *tposx, int *tposy, short *tang)
^
src/engine.c:9440:64: warning: unused parameter ‘dahoriz’ [-Wunused-parameter]
void preparemirror(int dax, int day, int daz, short daang, int dahoriz, short dawall, short dasector, int *tposx, int *tposy, short *tang)
^
src/engine.c:9440:93: warning: unused parameter ‘dasector’ [-Wunused-parameter]
void preparemirror(int dax, int day, int daz, short daang, int dahoriz, short dawall, short dasector, int *tposx, int *tposy, short *tang)
^
src/engine.c: In function ‘draw2dgrid’:
src/engine.c:10106:45: warning: unused parameter ‘ange’ [-Wunused-parameter]
void draw2dgrid(int posxe, int posye, short ange, int zoome, short gride)
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/polymost.c -o src/polymost.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/polymosttex.c -o src/polymosttex.o
g++ -fno-exceptions -fno-rtti -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/polymosttex-squish.cc -o src/polymosttex-squish.o
cc1plus: warning: command line option ‘-Wimplicit’ is valid for C/ObjC but not for C++
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/polymosttexcache.c -o src/polymosttexcache.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/hightile.c -o src/hightile.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/mdsprite.c -o src/mdsprite.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/glbuild.c -o src/glbuild.o
src/glbuild.c: In function ‘getproc
’:
src/glbuild.c:106:64: warning: unused parameter ‘extension’ [-Wunused-parameter]
static void * getproc_(const char *s, int *err, int fatal, int extension)
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/kplib.c -o src/kplib.o
src/kplib.c: In function ‘testflag’:
src/kplib.c:366:33: warning: unused parameter ‘c’ [-Wunused-parameter]
static inline int testflag (int c) { return(0); }
^
src/kplib.c: In function ‘cpuid’:
src/kplib.c:368:31: warning: unused parameter ‘a’ [-Wunused-parameter]
static inline void cpuid (int a, int *s) {}
^
src/kplib.c:368:39: warning: unused parameter ‘s’ [-Wunused-parameter]
static inline void cpuid (int a, int *s) {}
^
src/kplib.c: In function ‘kpngrend’:
src/kplib.c:969:48: warning: unused parameter ‘kfilength’ [-Wunused-parameter]
static int kpngrend (const char *kfilebuf, int kfilength,
^
src/kplib.c: In function ‘kgifrend’:
src/kplib.c:1906:48: warning: unused parameter ‘kfilelength’ [-Wunused-parameter]
static int kgifrend (const char *kfilebuf, int kfilelength,
^
src/kplib.c: In function ‘kcelrend’:
src/kplib.c:2049:43: warning: unused parameter ‘fleng’ [-Wunused-parameter]
static int kcelrend (const char *buf, int fleng,
^
src/kplib.c:2051:6: warning: unused parameter ‘daglobxoffs’ [-Wunused-parameter]
int daglobxoffs, int daglobyoffs)
^
src/kplib.c: In function ‘kbmprend’:
src/kplib.c:2218:15: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
for(i=0,cptr=&buf[headsiz+14];cptr<&buf[rastoff];i++,cptr+=j)
^
src/kplib.c:2218:37: warning: comparison of distinct pointer types lacks a cast
for(i=0,cptr=&buf[headsiz+14];cptr<&buf[rastoff];i++,cptr+=j)
^
src/kplib.c:2255:43: warning: pointer targets in assignment differ in signedness [-Wpointer-sign]
cptrinc = (((xsiz_cdim+31)>>3)&~3); cptr = &buf[rastoff];
^
src/kplib.c:2183:43: warning: unused parameter ‘fleng’ [-Wunused-parameter]
static int kbmprend (const char buf, int fleng,
^
src/kplib.c: In function ‘kddsrend’:
src/kplib.c:2378:43: warning: unused parameter ‘leng’ [-Wunused-parameter]
static int kddsrend (const char *buf, int leng,
^
src/kplib.c: In function ‘kpgetdim’:
src/kplib.c:2504:40: warning: ‘return’ with no value, in function returning non-void -Wreturn-type = (ysiz) = 0; if (leng < 16) return;
^
src/kplib.c:2508:77: warning: ‘return’ with no value, in function returning non-void [-Wreturn-type]
if ((lptr[0] != LSWAPIB(0x474e5089)) || (lptr[1] != LSWAPIB(0x0a1a0a0d))) return;
^
src/kplib.c:2546:44: warning: ‘return’ with no value, in function returning non-void [-Wreturn-type]
if (
(short *)(&buf[22]) != SSWAPIB(1)) return;
^
src/kplib.c:2552:44: warning: ‘return’ with no value, in function returning non-void [-Wreturn-type]
if (
(short _)(&buf[26]) != SSWAPIB(1)) return;
^
src/kplib.c: In function ‘yrbrend’:
src/kplib.c:1493:63: warning: ‘cb’ may be used uninitialized in this function [-Wmaybe-uninitialized]
colclipup8[(unsigned)(yv+crmul[cr+2049]+cbmul[cb+2048])>>22]+
^
src/kplib.c:1493:48: warning: ‘cr’ may be used uninitialized in this function [-Wmaybe-uninitialized]
colclipup8[(unsigned)(yv+crmul[cr+2049]+cbmul[cb+2048])>>22]+
^
src/kplib.c: In function ‘kpegrend’:
src/kplib.c:1747:54: warning: ‘dcs’ may be used uninitialized in this function [-Wmaybe-uninitialized]
else if (num&(pow2long[--curbits])) dcs[0] |= ((short)Alut[0]);
^
src/kplib.c:1511:53: warning: ‘glvsampmax’ may be used uninitialized in this function [-Wmaybe-uninitialized]
int passcnt = 0, ghsampmax, gvsampmax, glhsampmax, glvsampmax, glhstep, glvstep;
^
src/kplib.c:1511:41: warning: ‘glhsampmax’ may be used uninitialized in this function [-Wmaybe-uninitialized]
int passcnt = 0, ghsampmax, gvsampmax, glhsampmax, glvsampmax, glhstep, glvstep;
^
src/kplib.c:1511:30: warning: ‘gvsampmax’ may be used uninitialized in this function [-Wmaybe-uninitialized]
int passcnt = 0, ghsampmax, gvsampmax, glhsampmax, glvsampmax, glhstep, glvstep;
^
src/kplib.c:1684:13: warning: ‘ghsampmax’ may be used uninitialized in this function [-Wmaybe-uninitialized]
glhstep = (ghsampmax>>glhstep); lcomphsamp[0] = min(lcomphsamp[0],glhstep); glhstep <<= 3;
^
src/kplib.c:1841:38: warning: ‘dc’ may be used uninitialized in this function [-Wmaybe-uninitialized]
for(z=64-1;z>=0;z--) dc[z] *= quanptr[z];
^
src/kplib.c:1689:24: warning: ‘ydim’ may be used uninitialized in this function [-Wmaybe-uninitialized]
clipydim = min(ydim+globyoffs,yres);
^
src/kplib.c:1688:24: warning: ‘xdim’ may be used uninitialized in this function [-Wmaybe-uninitialized]
clipxdim = min(xdim+globxoffs,xres);
^
src/kplib.c: In function ‘kprender’:
src/kplib.c:2141:11: warning: ‘cptr’ may be used uninitialized in this function [-Wmaybe-uninitialized]
nptr = &cptr[i_pixbyte];
^
src/kplib.c:2094:30: note: ‘cptr’ was declared here
const unsigned char _fptr, *cptr, *nptr;
^
src/kplib.c:2019:15: warning: ‘p’ may be used uninitialized in this function [-Wmaybe-uninitialized]
*(int *)(p+(x<<2)) = palcol[(int)tempstack[i]];
^
src/kplib.c:1912:10: note: ‘p’ was declared here
INT_PTR p;
^
src/kplib.c:1914:29: warning: ‘cptr’ may be used uninitialized in this function [-Wmaybe-uninitialized]
const unsigned char *ptr, *cptr;
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/mmulti.c -o src/mmulti.o
src/mmulti.c: In function ‘setpackettimeout’:
src/mmulti.c:185:28: warning: unused parameter ‘datimeoutcount’ [-Wunused-parameter]
void setpackettimeout (int datimeoutcount, int daresendagaincount) {}
^
src/mmulti.c:185:48: warning: unused parameter ‘daresendagaincount’ [-Wunused-parameter]
void setpackettimeout (int datimeoutcount, int daresendagaincount) {}
^
src/mmulti.c: In function ‘genericmultifunction’:
src/mmulti.c:186:32: warning: unused parameter ‘other’ [-Wunused-parameter]
void genericmultifunction (int other, unsigned char *bufptr, int messleng, int command) {}
^
src/mmulti.c:186:54: warning: unused parameter ‘bufptr’ [-Wunused-parameter]
void genericmultifunction (int other, unsigned char *bufptr, int messleng, int command) {}
^
src/mmulti.c:186:66: warning: unused parameter ‘messleng’ [-Wunused-parameter]
void genericmultifunction (int other, unsigned char *bufptr, int messleng, int command) {}
^
src/mmulti.c:186:80: warning: unused parameter ‘command’ [-Wunused-parameter]
void genericmultifunction (int other, unsigned char *bufptr, int messleng, int command) {}
^
src/mmulti.c: In function ‘setsocket’:
src/mmulti.c:188:21: warning: unused parameter ‘newsocket’ [-Wunused-parameter]
void setsocket (int newsocket) { }
^
src/mmulti.c: In function ‘initmultiplayers’:
src/mmulti.c:398:75: warning: unused parameter ‘damultioption’ [-Wunused-parameter]
void initmultiplayers (int argc, char const * const argv[], unsigned char damultioption, unsigned char dacomrateoption, unsigned char dapriority)
^
src/mmulti.c:398:104: warning: unused parameter ‘dacomrateoption’ [-Wunused-parameter]
void initmultiplayers (int argc, char const * const argv[], unsigned char damultioption, unsigned char dacomrateoption, unsigned char dapriority)
^
src/mmulti.c:398:135: warning: unused parameter ‘dapriority’ [-Wunused-parameter]
void initmultiplayers (int argc, char const * const argv[], unsigned char damultioption, unsigned char dacomrateoption, unsigned char dapriority)
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/osd.c -o src/osd.o
src/osd.c: In function ‘_internal_drawosdchar’:
src/osd.c:97:62: warning: unused parameter ‘shade’ [-Wunused-parameter]
static void _internal_drawosdchar(int x, int y, char ch, int shade, int pal)
^
src/osd.c:97:73: warning: unused parameter ‘pal’ [-Wunused-parameter]
static void _internal_drawosdchar(int x, int y, char ch, int shade, int pal)
^
src/osd.c: In function ‘_internal_drawosdstr’:
src/osd.c:117:71: warning: unused parameter ‘shade’ [-Wunused-parameter]
static void _internal_drawosdstr(int x, int y, char *ch, int len, int shade, int pal)
^
src/osd.c:117:82: warning: unused parameter ‘pal’ [-Wunused-parameter]
static void _internal_drawosdstr(int x, int y, char *ch, int len, int shade, int pal)
^
src/osd.c: In function ‘_internal_drawosdcursor’:
src/osd.c:139:65: warning: unused parameter ‘lastkeypress’ [-Wunused-parameter]
static void _internal_drawosdcursor(int x, int y, int type, int lastkeypress)
^
src/osd.c: In function ‘_internal_clearbackground’:
src/osd.c:169:43: warning: unused parameter ‘cols’ [-Wunused-parameter]
static void _internal_clearbackground(int cols, int rows)
^
src/osd.c:169:53: warning: unused parameter ‘rows’ [-Wunused-parameter]
static void _internal_clearbackground(int cols, int rows)
^
src/osd.c: In function ‘_internal_onshowosd’:
src/osd.c:178:37: warning: unused parameter ‘a’ [-Wunused-parameter]
static void _internal_onshowosd(int a)
^
src/osd.c: In function ‘_internal_osdfunc_listsymbols’:
src/osd.c:200:63: warning: unused parameter ‘parm’ [-Wunused-parameter]
static int _internal_osdfunc_listsymbols(const osdfuncparm_t *parm)
^
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/pragmas.c -o src/pragmas.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/scriptfile.c -o src/scriptfile.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/textfont.c -o src/textfont.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/smalltextfont.c -o src/smalltextfont.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/alpha.cpp -o libsquish/alpha.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/clusterfit.cpp -o libsquish/clusterfit.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/colourblock.cpp -o libsquish/colourblock.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/colourfit.cpp -o libsquish/colourfit.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/colourset.cpp -o libsquish/colourset.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/maths.cpp -o libsquish/maths.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/rangefit.cpp -o libsquish/rangefit.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/singlecolourfit.cpp -o libsquish/singlecolourfit.o
g++ -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -O2 -c libsquish/squish.cpp -o libsquish/squish.o
gcc -fomit-frame-pointer -O2 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DKSFORBUILD -Iinclude -Isrc -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -c src/sdlayer.c -o src/sdlayer.o
src/sdlayer.c: In function ‘startwin_idle’:
src/sdlayer.c:32:25: warning: unused parameter ‘s’ [-Wunused-parameter]
int startwin_idle(void *s) { return 0; }
^
src/sdlayer.c: In function ‘wm_msgbox’:
src/sdlayer.c:84:27: warning: unused parameter ‘name’ [-Wunused-parameter]
int wm_msgbox(const char *name, const char *fmt, ...)
^
src/sdlayer.c: In function ‘wm_ynbox’:
src/sdlayer.c:105:26: warning: unused parameter ‘name’ [-Wunused-parameter]
int wm_ynbox(const char *name, const char *fmt, ...)
^
src/sdlayer.c: In function ‘debugprintf’:
src/sdlayer.c:295:30: warning: unused parameter ‘f’ [-Wunused-parameter]
void debugprintf(const char *f, ...)
^
src/sdlayer.c: In function ‘showframe’:
src/sdlayer.c:1049:20: warning: unused parameter ‘w’ [-Wunused-parameter]
void showframe(int w)
^
ar rc src/libengine.a src/a-c.o src/baselayer.o src/cache1d.o src/compat.o src/crc32.o src/defs.o src/engine.o src/polymost.o src/polymosttex.o src/polymosttex-squish.o src/polymosttexcache.o src/hightile.o src/mdsprite.o src/glbuild.o src/kplib.o src/mmulti.o src/osd.o src/pragmas.o src/scriptfile.o src/textfont.o src/smalltextfont.o libsquish/alpha.o libsquish/clusterfit.o libsquish/colourblock.o libsquish/colourfit.o libsquish/colourset.o libsquish/maths.o libsquish/rangefit.o libsquish/singlecolourfit.o libsquish/squish.o src/sdlayer.o
ranlib src/libengine.a
make[1]: Leaving directory '/tmp/jfduke3d/jfbuild'
make -C jfaudiolib RELEASE=1
make[1]: Entering directory '/tmp/jfduke3d/jfaudiolib'
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/drivers.c -o src/drivers.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/fx_man.c -o src/fx_man.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/cd.c -o src/cd.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/multivoc.c -o src/multivoc.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/mix.c -o src/mix.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/mixst.c -o src/mixst.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/pitch.c -o src/pitch.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/vorbis.c -o src/vorbis.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/music.c -o src/music.o
src/music.c: In function ‘MUSIC_PlaySong’:
src/music.c:397:13: warning: pointer targets in passing argument 1 of ‘MIDI_PlaySong’ differ in signedness [-Wpointer-sign]
status = MIDI_PlaySong( song, loopflag );
^
In file included from src/music.c:36:0:
src/midi.h:73:6: note: expected ‘unsigned char *’ but argument is of type ‘char *’
int MIDI_PlaySong( unsigned char *song, int loopflag );
^
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/midi.c -o src/midi.o
src/midi.c: In function ‘MIDI_InitEMIDI’:
src/midi.c:1857:11: warning: variable ‘channel’ set but not used [-Wunused-but-set-variable]
int channel;
^
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/driver_nosound.c -o src/driver_nosound.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/asssys.c -o src/asssys.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/driver_sdl.c -o src/driver_sdl.o
gcc -c -Iinclude -Isrc -DHAVE_SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/SDL -DHAVE_ALSA -I/usr/include/alsa -DHAVE_VORBIS -g -O2 -Wall src/driver_alsa.c -o src/driver_alsa.o
ar cr libjfaudiolib.a src/drivers.o src/fx_man.o src/cd.o src/multivoc.o src/mix.o src/mixst.o src/pitch.o src/vorbis.o src/music.o src/midi.o src/driver_nosound.o src/asssys.o src/driver_sdl.o src/driver_alsa.o
make[1]: Leaving directory '/tmp/jfduke3d/jfaudiolib'
g++ -fno-exceptions -fno-rtti -fomit-frame-pointer -O1 -W -Wall -Wimplicit -Wno-unused -fno-pic -fno-strict-aliasing -DNO_GCC_BUILTINS -DNOCOPYPROTECT -Isrc -Ijfbuild/include -Ijfmact -Ijfaudiolib/include -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Ilibsquish -DRENDERTYPESDL=1 -DSUPERBUILD -DPOLYMOST -DUSE_OPENGL -DDYNAMIC_OPENGL -DNOASM -DPREFIX="/usr/local/share/games/jfduke3d" -o duke3d src/game.o src/actors.o src/gamedef.o src/global.o src/menues.o src/player.o src/premap.o src/sector.o src/rts.o src/config.o src/testcd.o src/osdfuncs.o src/osdcmds.o src/grpscan.o src/sounds.o jfmact/util_lib.o jfmact/file_lib.o jfmact/control.o jfmact/keyboard.o jfmact/mouse.o jfmact/mathutil.o jfmact/scriplib.o jfmact/animlib.o src/game_icon.o jfbuild/src/libengine.a jfaudiolib/libjfaudiolib.a -lm -L/usr/lib/x86_64-linux-gnu -lSDL -lvorbisfile -lvorbis -lm -logg -lSDL -lasound -Wl,-Map=duke3d.map
/usr/bin/ld: jfaudiolib/libjfaudiolib.a(driver_alsa.o): referencia sin definir al símbolo 'pthread_create@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:158: recipe for target 'duke3d' failed
make: *
* [duke3d] Error 1

I can't load my saves game

Hello I am on Linux (Arch Linux) and I can't load my saved games, do you know why?
I have a message for a succes SAVED GAMES on terminal.
I can load saved files if I dont close duke3d, but after closing game, can't load... they aren't in "Load Game"

opengl 1.4 support

hello,i have compiled jfduke3d but when i run it i get an error and i wanted to know if it was because of my graphic card here i leave the error

GRP file: duke3d.grp

(duke3d:21130): GLib-WARNING **: 23:11:35.147: g_set_application_name() called multiple times
Compiling: game.con (151133 bytes)
Including: DEFS.CON (35992 bytes)
Including: USER.CON (45449 bytes)
Looks like Atomic Edition CON files.
  * WARNING!(L476 game.con) Expected a 'action' label but found a 'define' label instead.
Code Size: 64832 bytes (1794 labels).
Game controllers:
No controllers are usable
CONTROL_Startup: Mouse Present
Initialising timer
Loading art header.
initcache(): Initialised with 16777216 bytes
Loading palette/lookups.

Duke Nukem 3D (Atomic Edition)
Copyright (c) 1996 3D Realms Entertainment

RTS Manager Started.
RTS file DUKE.RTS was not found
Setting video mode 640x480 (8-bpp fullscreen)
Error creating OpenGL context: Could not create GL context: GLXBadFBConfig
Failure setting video mode 640x480x8 fullscreen! Attempting safer mode...
Setting video mode 640x480 (8-bpp windowed)
Error creating OpenGL context: Could not create GL context: GLXBadFBConfig
Checking music inits.
Checking sound inits.
SDL_GetCurrentAudioDriver: alsa
Segmentation fault

Music volume doesn't change

Hi, I've a problem with music volume settings.
They don't affect music volume at all neither via in-game settings nor via manual cfg-file manipulation. The music volume is always the same. Speech and effects volume works as it expected.
I use the latest sources from your repo. Compiled with VS2019 on Win10.

Music on GNU/Linux

Hi there,

I have just built jfduke3d on SDL2/KMSDRM, and it works fine, but I am still missing music. Well, it works, but not perfectly.

So far I got the music to play if I load a SoundFont with Fluidsynth like this:

fluidsynth --audio-driver=alsa -s UHD3.sf2

Then the tittle screen music plays, but the game hangs when I start a level and sound effects are missing. My guess is that fluidsynth takes over ALSA PCM channels. But then, what would be the correct way to do it with FluidSynth?

Thanks!

i notice there are some issues within when you click on quit game.

when you decide to quit the game it causes some issues.

also, the list of episodes don't show up. is there a reload button?

the episode selection is messy as well.

so im guessing issues an bugs.

but overall the game works.

music works, game works. but thee menu selection is bad.

Games saved on a jfduke3d run don't appear on the next run

Hi there,

I was about to have a good time playing jfduke3d on Debian 10 aarch64, but I have noticed saved games are missing from the LOAD menu next time I run the engine.

I can save the game and load it fine, and I can do it as many times as I want, but if I exit back to the TTY console, the engine doesn't show the games on the LOAD menu.

I can see the saved game as ~/.jfduke3d/game0.sav, and it is in fact recreated every time I save. It's 152KB in size.

I have tried the original duke3d.grp and also the ATOMIC EDITION duke3d.grp, and this behavior happens in both.

Any clues on what's going on, please?

Re-enable demo playback on menu

May be a small thing, but having demos playback on the main menu (as in DOS) would be nice (or at least an option to enable it). I really dislike the alien green texture that is always greeting me.

Cannot get fullscreen on secondary display on macOS

Fullscreen always goes to primary display, and blanks secondary display. Cannot even switch windows when in fullscreen, cmd+tab does not work 😅

Tried exiting fullscreen in game options, moving window to secondary display, and going back fullscreen. Same.

Startup configuration only displays resolutions for primary display.

Macbook Air 2014, macOS 11.3, jfduke 20210130.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.