Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,17 @@
This is a fork of
[Joe's JoeQuake repository](https://github.com/j0zzz/JoeQuake), the speedrunning
focused Quake engine. It adds files to allow building the SDL version of
JoeQuake on Linux. To build first install dependencies:
JoeQuake on Linux. The BGM system is also changed to use vorbis/mad to play vorbis/mp3
music, instead of FMOD. To build first install dependencies:

```bash
# For Ubuntu users
sudo apt-get update
sudo apt-get install cmake build-essential libz-dev libsdl2-dev libjpeg-dev libgl1-mesa-dev libpng-dev
sudo apt-get install cmake build-essential libz-dev libsdl2-dev libjpeg-dev libgl1-mesa-dev libpng-dev libmad0-dev libvorbis-dev
```
```bash
# For Arch users
sudo pacman -Syu base-devel cmake zlib sdl2 libjpeg-turbo mesa libpng
sudo pacman -Syu base-devel cmake zlib sdl2 libjpeg-turbo mesa libpng libmad libvorbis
```

...and then run the following from the repository root:
Expand Down Expand Up @@ -82,6 +83,7 @@ You may freely redistribute or modify JoeQuake as you wish.
* Jozsef Szalontai - lead programmer
* Sphere - server/client bugfixes, several QoL improvements
* Matthew Earl - entire ghost recording feature, SDL port
* Karol Urbański - vorbis/mp3 support on Linux (from ironwail)

### Authors whose code was re-used in JoeQuake

Expand Down
16 changes: 13 additions & 3 deletions trunk/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ set(CMAKE_C_STANDARD 99)
find_package(SDL2 REQUIRED)

if (SDL2_FOUND)
include_directories(${SDL2_INCLUDE_DIRS})
include_directories(${SDL2_INCLUDE_DIRS})
endif()

add_library(joequake_minizip
Expand All @@ -21,6 +21,8 @@ target_link_libraries(joequake_minizip

add_executable(joequake-gl
anorm_dots.h
bgmusic.c
bgmusic.h
bspfile.h
cdaudio.h
cd_linux.c
Expand Down Expand Up @@ -109,10 +111,18 @@ add_executable(joequake-gl
security.c
security.h
server.h
snd_codec.c
snd_codec.h
snd_codeci.h
snd_dma.c
snd_sdl.c
snd_mem.c
snd_mix.c
snd_mp3.c
snd_mp3.h
snd_mp3tag.c
snd_vorbis.c
snd_vorbis.h
sound.h
spritegn.h
sv_main.c
Expand Down Expand Up @@ -148,8 +158,8 @@ add_executable(joequake-gl
)

target_compile_definitions(joequake-gl
PRIVATE GLQUAKE SDL2
PRIVATE GLQUAKE SDL2 USE_CODEC_VORBIS USE_CODEC_MP3
)
target_link_libraries(joequake-gl
PRIVATE joequake_minizip png jpeg GL m dl ${SDL2_LIBRARIES}
PRIVATE joequake_minizip png jpeg GL m dl vorbisfile vorbis ogg mad ${SDL2_LIBRARIES}
)
Loading