-
Notifications
You must be signed in to change notification settings - Fork 43
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add GZDoom package which brings high-res 3D accelerated implementation of the Doom engine with many extra features. Signed-off-by: Daniel Golle <[email protected]>
- Loading branch information
Showing
7 changed files
with
228 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
include $(TOPDIR)/rules.mk | ||
|
||
PKG_NAME:=gzdoom | ||
PKG_VERSION:=4.13.1 | ||
PKG_RELEASE:=1 | ||
|
||
PKG_SOURCE:=g$(PKG_VERSION).zip | ||
PKG_SOURCE_URL:=https://github.com/ZDoom/gzdoom/archive/refs/tags/ | ||
PKG_HASH:=e584c6436f7ea2c9186324dc75a3f1eebf4302fbdd2f98db13550cff2dd393a3 | ||
|
||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-g$(PKG_VERSION) | ||
HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)-g$(PKG_VERSION) | ||
|
||
PKG_MAINTAINER:=Daniel Golle <[email protected]> | ||
PKG_LICENSE:=BSD-3c | ||
PKG_LICENSE_FILES:=COPYING LICENSE | ||
|
||
CMAKE_INSTALL:=1 | ||
PKG_BUILD_DEPENDS:=gzdoom/host miniz | ||
HOST_BUILD_DEPENDS:=miniz/host | ||
|
||
include $(INCLUDE_DIR)/package.mk | ||
include $(INCLUDE_DIR)/host-build.mk | ||
include $(INCLUDE_DIR)/cmake.mk | ||
|
||
CMAKE_OPTIONS += \ | ||
-DHAVE_VULKAN=OFF \ | ||
-DHAVE_GLES2=ON \ | ||
-DNO_OPENAL=ON \ | ||
-DFORCE_INTERNAL_BZIP2=ON \ | ||
-DSDL2_INCLUDE_DIR="$(STAGING_DIR)/usr/include/SDL2" \ | ||
-DIMPORT_EXECUTABLES="$(STAGING_DIR_HOSTPKG)/share/gzdoom/ImportExecutables.cmake" | ||
|
||
define Package/gzdoom | ||
SECTION:=games | ||
CATEGORY:=Games | ||
TITLE:=GZDoom | ||
URL:=https://zdoom.org/ | ||
DEPENDS:=+alsa-lib +glib2 +libbz2 +libstdcpp +libzmusic +libvpx +libsdl2 +USE_MUSL:musl-fts | ||
endef | ||
|
||
define Package/gzdoom/description | ||
ZDoom is a family of enhanced ports of the Doom engine for running on modern | ||
operating systems. Use this port of DOOM on systems with some sort of hardware | ||
3D acceleration support. | ||
endef | ||
|
||
define Host/Install | ||
$(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/share/gzdoom | ||
$(INSTALL_DATA) $(HOST_BUILD_DIR)/ImportExecutables.cmake $(STAGING_DIR_HOSTPKG)/share/gzdoom | ||
endef | ||
|
||
define Host/Uninstall | ||
$(RM) $(STAGING_DIR_HOSTPKG)/share/gzdoom/ImportExecutables.cmake | ||
endef | ||
|
||
define Package/gzdoom/install | ||
$(INSTALL_DIR) $(1)/usr/share/games | ||
$(CP) $(PKG_INSTALL_DIR)/usr/share/games/* $(1)/usr/share/games | ||
$(INSTALL_DIR) $(1)/usr/bin | ||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/gzdoom $(1)/usr/bin | ||
endef | ||
|
||
$(eval $(call BuildPackage,gzdoom)) | ||
$(eval $(call HostBuild)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -291,6 +291,7 @@ else() | ||
if ( NOT HAVE_FTS ) | ||
include ( FindPkgConfig ) | ||
pkg_check_modules( MUSL_FTS musl-fts ) | ||
+ string(REPLACE ";" " " MUSL_FTS_LDFLAGS "${MUSL_FTS_LDFLAGS}") | ||
if ( MUSL_FTS_FOUND ) | ||
set ( ALL_C_FLAGS "${ALL_C_FLAGS} ${MUSL_FTS_LDFLAGS}" ) | ||
else ( MUSL_FTS_FOUND ) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
From https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/35711#note_243863 | ||
_GNU_SOURCE is needed for cpu_set_t, and affinity disable is needed to work around lack of pthread_attr_setaffinity_np | ||
--- a/libraries/lzma/CMakeLists.txt | ||
+++ b/libraries/lzma/CMakeLists.txt | ||
@@ -1,6 +1,6 @@ | ||
make_release_only() | ||
|
||
-set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DZ7_PPMD_SUPPORT" ) | ||
+set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_GNU_SOURCE -DZ7_PPMD_SUPPORT -DZ7_AFFINITY_DISABLE" ) | ||
|
||
find_package(Threads) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -337,6 +337,7 @@ option(FORCE_INTERNAL_BZIP2 "Use interna | ||
option(FORCE_INTERNAL_ASMJIT "Use internal asmjit" ON) | ||
mark_as_advanced( FORCE_INTERNAL_ASMJIT ) | ||
|
||
+if( CMAKE_CROSSCOMPILING ) | ||
if (HAVE_VULKAN) | ||
add_subdirectory( libraries/ZVulkan ) | ||
endif() | ||
@@ -375,6 +376,7 @@ if( ${HAVE_VM_JIT} ) | ||
set( ASMJIT_LIBRARY asmjit ) | ||
endif() | ||
endif() | ||
+endif() | ||
|
||
if( BZIP2_FOUND AND NOT FORCE_INTERNAL_BZIP2 ) | ||
message( STATUS "Using system bzip2 library, includes found at ${BZIP2_INCLUDE_DIR}" ) | ||
@@ -409,12 +411,14 @@ option( DYN_OPENAL "Dynamically load Ope | ||
add_subdirectory( libraries/lzma ) | ||
add_subdirectory( libraries/miniz ) | ||
add_subdirectory( tools ) | ||
+if( CMAKE_CROSSCOMPILING ) | ||
add_subdirectory( wadsrc ) | ||
add_subdirectory( wadsrc_bm ) | ||
add_subdirectory( wadsrc_lights ) | ||
add_subdirectory( wadsrc_extra ) | ||
add_subdirectory( wadsrc_widepix ) | ||
add_subdirectory( src ) | ||
+endif() | ||
|
||
if( NOT CMAKE_CROSSCOMPILING ) | ||
export(TARGETS ${CROSS_EXPORTS} FILE "${CMAKE_BINARY_DIR}/ImportExecutables.cmake" ) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
--- a/libraries/lzma/CMakeLists.txt | ||
+++ b/libraries/lzma/CMakeLists.txt | ||
@@ -2,8 +2,6 @@ make_release_only() | ||
|
||
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_GNU_SOURCE -DZ7_PPMD_SUPPORT -D_7ZIP_AFFINITY_DISABLE" ) | ||
|
||
-find_package(Threads) | ||
- | ||
add_library( lzma STATIC | ||
C/7zAlloc.c | ||
C/7zArcIn.c | ||
@@ -48,4 +46,5 @@ add_library( lzma STATIC | ||
C/XzEnc.c | ||
C/XzIn.c | ||
) | ||
-target_link_libraries( lzma Threads::Threads ) | ||
+ | ||
+target_link_libraries( lzma PUBLIC pthread ) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
--- a/CMakeLists.txt | ||
+++ b/CMakeLists.txt | ||
@@ -358,7 +358,7 @@ if( HAVE_VM_JIT AND UNIX ) | ||
if( HAVE_LIBEXECINFO ) | ||
set( ALL_C_FLAGS "${ALL_C_FLAGS} -lexecinfo" ) | ||
else( HAVE_LIBEXECINFO ) | ||
- set( HAVE_VM_JIT NO ) | ||
+ # set( HAVE_VM_JIT NO ) | ||
endif( HAVE_LIBEXECINFO ) | ||
set( CMAKE_REQUIRED_FLAGS ) | ||
endif( NOT HAVE_BACKTRACE ) | ||
--- a/src/common/scripting/jit/jit_runtime.cpp | ||
+++ b/src/common/scripting/jit/jit_runtime.cpp | ||
@@ -7,7 +7,6 @@ | ||
#include <DbgHelp.h> | ||
#include <psapi.h> | ||
#else | ||
-#include <execinfo.h> | ||
#include <cxxabi.h> | ||
#include <cstring> | ||
#include <cstdlib> | ||
@@ -806,7 +805,7 @@ static int CaptureStackTrace(int max_fra | ||
// JIT isn't supported here, so just do nothing. | ||
return 0;//return RtlCaptureStackBackTrace(0, min(max_frames, 32), out_frames, nullptr); | ||
#else | ||
- return backtrace(out_frames, max_frames); | ||
+ return 0; | ||
#endif | ||
} | ||
|
||
@@ -868,7 +867,9 @@ class NativeSymbolResolver | ||
public: | ||
FString GetName(void *frame) | ||
{ | ||
- FString s; | ||
+ FString s = "no backtrace"; | ||
+ return s; | ||
+ #if 0 | ||
char **strings; | ||
void *frames[1] = { frame }; | ||
strings = backtrace_symbols(frames, 1); | ||
@@ -925,6 +926,7 @@ public: | ||
|
||
free(strings); | ||
return s; | ||
+ #endif | ||
} | ||
}; | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
include $(TOPDIR)/rules.mk | ||
|
||
PKG_NAME:=zmusic | ||
PKG_VERSION:=1.1.14 | ||
PKG_RELEASE:=1 | ||
|
||
PKG_SOURCE_PROTO:=git | ||
PKG_SOURCE_URL:=https://github.com/ZDoom/ZMusic | ||
PKG_SOURCE_VERSION:=89f3d65734470fb7ec0c1e69f73a0cfcc88ed557 | ||
PKG_MIRROR_HASH:=104af83c55909a3cc2151bf9a32b153355fab76ee503bf199f49fb401f595a2b | ||
|
||
PKG_MAINTAINER:=Daniel Golle <[email protected]> | ||
PKG_LICENSE:=GPL-3.0 | ||
PKG_LICENSE_FILES:=licenses/bsd.txt licenses/dumb.txt licenses/gplv3.txt \ | ||
licenses/legal.txt licenses/lgplv21.txt licenses/lgplv3.txt \ | ||
licenses/zmusic.txt | ||
|
||
CMAKE_INSTALL:=1 | ||
PKG_BUILD_FLAGS:=gc-sections lto | ||
|
||
include $(INCLUDE_DIR)/package.mk | ||
include $(INCLUDE_DIR)/cmake.mk | ||
|
||
define Package/libzmusic | ||
SECTION:=libs | ||
CATEGORY:=Libraries | ||
TITLE:=ZMusic | ||
URL:=https://zdoom.org/ | ||
DEPENDS:=+libstdcpp +libsndfile +alsa-lib +glib2 | ||
endef | ||
|
||
define Package/libzmusic/description | ||
GZDoom's music system as a standalone library | ||
endef | ||
|
||
define Package/libzmusic/install | ||
$(INSTALL_DIR) $(1)/usr/lib | ||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libzmusic.so* $(1)/usr/lib/ | ||
endef | ||
|
||
$(eval $(call BuildPackage,libzmusic)) |