aboutsummaryrefslogtreecommitdiff
path: root/games/regoth/files
diff options
context:
space:
mode:
authorSteve Wills <swills@FreeBSD.org>2020-01-06 01:24:33 +0000
committerSteve Wills <swills@FreeBSD.org>2020-01-06 01:24:33 +0000
commitc7310d73abf26c96bc3229ebc9ed8ad7ca89d911 (patch)
treeb98f7954f823b66025a8c3b57a6f151c3cbd6c76 /games/regoth/files
parent6f2b760df1bf32e25bd2143f8908de10dc5fdc64 (diff)
Notes
Diffstat (limited to 'games/regoth/files')
-rw-r--r--games/regoth/files/launcher.sh3
-rw-r--r--games/regoth/files/patch-CMakeLists.txt134
-rw-r--r--games/regoth/files/patch-lib_bgfx-cmake_CMakeLists.txt51
-rw-r--r--games/regoth/files/patch-lib_bgfx-cmake_bx_src_mutex.cpp10
-rw-r--r--games/regoth/files/patch-lib_bgfx-cmake_bx_src_thread.cpp10
-rw-r--r--games/regoth/files/patch-src_audio_AudioEngine.h11
-rw-r--r--games/regoth/files/patch-src_audio_AudioWorld.h11
7 files changed, 230 insertions, 0 deletions
diff --git a/games/regoth/files/launcher.sh b/games/regoth/files/launcher.sh
new file mode 100644
index 000000000000..dd5de9699248
--- /dev/null
+++ b/games/regoth/files/launcher.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# REGoth requires the shaders to be in the current working directory
+cd %%DATADIR%% && exec ./REGoth $*
diff --git a/games/regoth/files/patch-CMakeLists.txt b/games/regoth/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..94326aff666b
--- /dev/null
+++ b/games/regoth/files/patch-CMakeLists.txt
@@ -0,0 +1,134 @@
+--- CMakeLists.txt.orig 2018-04-23 17:26:25 UTC
++++ CMakeLists.txt
+@@ -6,6 +6,7 @@ set(CMAKE_CXX_STANDARD 14)
+
+
+ option (REGOTH_BUILD_WITH_INSTALLER_EXTRACTOR "Compile with library to extract some installers of Gothic" OFF)
++option (REGOTH_BUILD_WITH_SYSTEM_OPENAL "Compile with system OpenAL" OFF)
+
+
+ # Vim - You Complete Me
+@@ -174,6 +175,9 @@ include_directories(lib/bullet3/src)
+ set(BULLET_LIBRARIES BulletSoftBody BulletDynamics BulletCollision LinearMath)
+ set(BULLET_MISC Bullet3Dynamics Bullet2FileLoader Bullet3Collision Bullet3Geometry Bullet3OpenCL_clew BulletFileLoader BulletWorldImporter BulletXmlWorldImporter ConvexDecomposition GIMPACTUtils HACD Test_BulletDynamics Test_BulletInverseDynamics Test_Collision)
+
++# Find OpenGL
++find_package(OpenGL REQUIRED)
++include_directories(${OPENGL_INCLUDE_DIR}) # required by glfw headers
+
+ # ------------------ Engine lib ------------------
+ file(GLOB ENGINE_SRC
+@@ -223,54 +227,64 @@ endif()
+ # ------------------ OpenAL ------------------
+
+ # Set up OpenAL
++if(REGOTH_BUILD_WITH_SYSTEM_OPENAL AND NOT EMSCRIPTEN)
++ find_package(OpenAL REQUIRED)
++ include_directories(${OPENAL_INCLUDE_DIR})
+
+-set(ALSOFT_CONFIG OFF CACHE BOOL "" FORCE)
+-set(ALSOFT_EXAMPLES OFF CACHE BOOL "" FORCE)
+-set(ALSOFT_INSTALL OFF CACHE BOOL "" FORCE)
+-
+-if (UNIX)
+- set(LIBTYPE STATIC CACHE STRING "" FORCE)
+- if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+- set(ALSOFT_REQUIRE_ALSA ON CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
+- elseif(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
+- set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_OSS ON CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SNDIO OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
+- elseif(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
+- set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SNDIO ON CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
++ if (UNIX)
++ target_link_libraries(engine ${OPENAL_LIBRARY})
++ elseif(WIN32)
++ target_link_libraries(engine common ${OPENAL_LIBRARY})
+ endif()
+ else()
+- set(LIBTYPE SHARED CACHE STRING "" FORCE)
+-endif()
++ set(ALSOFT_CONFIG OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_EXAMPLES OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_INSTALL OFF CACHE BOOL "" FORCE)
+
+-if(NOT EMSCRIPTEN)
+- add_subdirectory(${CMAKE_SOURCE_DIR}/lib/openal-soft)
+- include_directories(${CMAKE_SOURCE_DIR}/lib/openal-soft/include)
+-
+ if (UNIX)
++ set(LIBTYPE STATIC CACHE STRING "" FORCE)
+ if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+- set(ALSOFT_REQUIRE_ALSA ON CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_REQUIRE_ALSA ON CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
+ elseif(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
+- set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_OSS ON CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SNDIO OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_OSS ON CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SNDIO OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
+ elseif(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
+- set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SNDIO ON CACHE BOOL "" FORCE)
+- set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SNDIO ON CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
+ endif()
+- target_link_libraries(engine OpenAL)
+- elseif(WIN32)
+- target_link_libraries(engine common OpenAL)
++ else()
++ set(LIBTYPE SHARED CACHE STRING "" FORCE)
+ endif()
++
++ if(NOT EMSCRIPTEN)
++ add_subdirectory(${CMAKE_SOURCE_DIR}/lib/openal-soft)
++ include_directories(${CMAKE_SOURCE_DIR}/lib/openal-soft/include)
++
++ if (UNIX)
++ if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
++ set(ALSOFT_REQUIRE_ALSA ON CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
++ elseif(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
++ set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_OSS ON CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SNDIO OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
++ elseif(${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD")
++ set(ALSOFT_REQUIRE_ALSA OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_OSS OFF CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SNDIO ON CACHE BOOL "" FORCE)
++ set(ALSOFT_BACKEND_SOLARIS OFF CACHE BOOL "" FORCE)
++ endif()
++ target_link_libraries(engine OpenAL)
++ elseif(WIN32)
++ target_link_libraries(engine common OpenAL)
++ endif()
++ endif()
+ endif()
+
+ # ---------------- libdmusic ----------------
+@@ -310,6 +324,10 @@ if(NOT ANDROID)
+ else()
+ add_definitions(-DRE_USE_SOUND)
+ target_link_libraries(engine android_glue)
++endif()
++
++if(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
++ include_directories("lib/bgfx-cmake/bx/include/compat/freebsd")
+ endif()
+
+ add_subdirectory(lib/adpcm)
diff --git a/games/regoth/files/patch-lib_bgfx-cmake_CMakeLists.txt b/games/regoth/files/patch-lib_bgfx-cmake_CMakeLists.txt
new file mode 100644
index 000000000000..a9ae44f3d390
--- /dev/null
+++ b/games/regoth/files/patch-lib_bgfx-cmake_CMakeLists.txt
@@ -0,0 +1,51 @@
+--- lib/bgfx-cmake/CMakeLists.txt.orig 2018-04-24 22:09:30 UTC
++++ lib/bgfx-cmake/CMakeLists.txt
+@@ -7,6 +7,8 @@ endif()
+
+ if(APPLE)
+ include_directories("bx/include/compat/osx")
++elseif(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD")
++ include_directories("bx/include/compat/freebsd")
+ endif()
+
+ # -------------------- 3rd party -----------------------
+@@ -115,18 +117,17 @@ if(APPLE)
+ list(APPEND OPENGL_LIBRARIES "${COCOA_LIBRARY}" "${METAL_LIBRARY}" "${QUARTZ_LIBRARY}")
+ else()
+ if(NOT ANDROID)
+- set(OPENGL_LIBRARIES "GL")
++ find_package(OpenGL REQUIRED)
+ endif()
+ endif()
+
+ if(ANDROID)
+ target_link_libraries(bgfx log dl)
+ elseif(UNIX)
+- set(DL "")
+- if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+- set(DL dl)
+- endif()
+- target_link_libraries(bgfx ${OPENGL_LIBRARIES} pthread ${DL})
++ find_package(X11 REQUIRED)
++
++ target_link_libraries(bgfx ${X11_LIBRARIES} ${OPENGL_LIBRARIES} pthread ${CMAKE_DL_LIBS})
++ target_link_libraries(bx pthread ${CMAKE_DL_LIBS})
+ endif()
+
+ target_include_directories(bx PUBLIC bx/include)
+@@ -139,6 +140,8 @@ if(APPLE)
+ target_include_directories(bgfx PRIVATE ${MALLOC_INCLUDE_DIR})
+ endif()
+
++target_include_directories(bgfx PRIVATE ${OPENGL_INCLUDE_DIR})
++
+ # ------------------ Common library ----------------------
+ file(GLOB COMMON_SRC
+ "./bgfx/examples/common/bounds.cpp"
+@@ -164,4 +167,6 @@ target_include_directories(bgfx_common PUBLIC bgfx/exa
+
+ if(APPLE)
+ target_include_directories(bgfx_common PRIVATE ${MALLOC_INCLUDE_DIR})
++elseif(UNIX)
++ target_include_directories(bgfx_common PRIVATE ${X11_INCLUDE_DIR}) # entry_x11.cpp
+ endif()
diff --git a/games/regoth/files/patch-lib_bgfx-cmake_bx_src_mutex.cpp b/games/regoth/files/patch-lib_bgfx-cmake_bx_src_mutex.cpp
new file mode 100644
index 000000000000..ab2c73e9d078
--- /dev/null
+++ b/games/regoth/files/patch-lib_bgfx-cmake_bx_src_mutex.cpp
@@ -0,0 +1,10 @@
+--- lib/bgfx-cmake/bx/src/mutex.cpp.orig 2018-04-24 22:16:50 UTC
++++ lib/bgfx-cmake/bx/src/mutex.cpp
+@@ -9,6 +9,7 @@
+
+ #if BX_PLATFORM_ANDROID \
+ || BX_PLATFORM_LINUX \
++ || BX_PLATFORM_BSD \
+ || BX_PLATFORM_IOS \
+ || BX_PLATFORM_OSX \
+ || BX_PLATFORM_PS4 \
diff --git a/games/regoth/files/patch-lib_bgfx-cmake_bx_src_thread.cpp b/games/regoth/files/patch-lib_bgfx-cmake_bx_src_thread.cpp
new file mode 100644
index 000000000000..2532c6fc010d
--- /dev/null
+++ b/games/regoth/files/patch-lib_bgfx-cmake_bx_src_thread.cpp
@@ -0,0 +1,10 @@
+--- lib/bgfx-cmake/bx/src/thread.cpp.orig 2018-04-24 22:27:07 UTC
++++ lib/bgfx-cmake/bx/src/thread.cpp
+@@ -7,6 +7,7 @@
+
+ #if BX_PLATFORM_ANDROID \
+ || BX_PLATFORM_LINUX \
++ || BX_PLATFORM_BSD \
+ || BX_PLATFORM_IOS \
+ || BX_PLATFORM_OSX \
+ || BX_PLATFORM_PS4 \
diff --git a/games/regoth/files/patch-src_audio_AudioEngine.h b/games/regoth/files/patch-src_audio_AudioEngine.h
new file mode 100644
index 000000000000..b59fb57fa040
--- /dev/null
+++ b/games/regoth/files/patch-src_audio_AudioEngine.h
@@ -0,0 +1,11 @@
+--- src/audio/AudioEngine.h.orig 2020-01-06 00:37:37 UTC
++++ src/audio/AudioEngine.h
+@@ -5,7 +5,7 @@
+
+ #include <glm/glm.hpp>
+
+-typedef struct ALCdevice_struct ALCdevice;
++typedef struct ALCdevice ALCdevice;
+
+ namespace Audio
+ {
diff --git a/games/regoth/files/patch-src_audio_AudioWorld.h b/games/regoth/files/patch-src_audio_AudioWorld.h
new file mode 100644
index 000000000000..56fbfc80e280
--- /dev/null
+++ b/games/regoth/files/patch-src_audio_AudioWorld.h
@@ -0,0 +1,11 @@
+--- src/audio/AudioWorld.h.orig 2020-01-06 00:33:46 UTC
++++ src/audio/AudioWorld.h
+@@ -13,7 +13,7 @@
+ #include <utils/Utils.h>
+ #include <vdfs/fileIndex.h>
+
+-typedef struct ALCcontext_struct ALCcontext;
++typedef struct ALCcontext ALCcontext;
+
+ #ifdef RE_USE_SOUND
+ #define RE_NUM_MUSIC_BUFFERS 3