1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
8 SDESC[standard]= Reverse-engineered Diablo 1 engine made portable
9 HOMEPAGE= https://github.com/diasurgical/devilutionX
10 CONTACT= Michael_Reim[kraileth@elderlinux.org]
12 DOWNLOAD_GROUPS= main audiolib libmpq simpleini smack
13 SITES[main]= GITHUB/diasurgical:devilutionX:1.4.1
14 SITES[audiolib]= GITHUB/realnc:SDL_audiolib:1a69135313c79817b38a3a99826d4ac28d627fdf
15 SITES[libmpq]= GITHUB/diasurgical:libmpq:0f10bd1600f406b13932bf5351ba713361262184
16 SITES[simpleini]= GITHUB/brofield:simpleini:9b3ed7ec815997bc8c5b9edf140d6bde653e1458
17 SITES[smack]= GITHUB/diasurgical:libsmackerdec:2997ee0e41e91bb723003bc09234be553b190e38
18 DISTFILE[1]= generated:main
19 DISTFILE[2]= generated:smack
20 DISTFILE[3]= generated:audiolib
21 DISTFILE[4]= generated:simpleini
22 DISTFILE[5]= generated:libmpq
23 DIST_SUBDIR= devilutionX
25 SPKGS[standard]= single
27 OPTIONS_AVAILABLE= none
28 OPTIONS_STANDARD= none
30 BUILD_DEPENDS= asio:single:standard
32 libsodium:dev:standard
33 BUILDRUN_DEPENDS= libsodium:primary:standard
36 USES= cmake pkgconfig gettext:build png dos2unix zlib
39 SDL_COMPONENTS= mixer2 ttf2 sdl2 image2
41 LICENSE= PUBDOM:single
42 LICENSE_FILE= PUBDOM:{{WRKSRC}}/LICENSE
49 FPC_EQUIVALENT= games/devilutionX
51 SUB_FILES= pkg-message-single
53 CMAKE_ARGS= -DBINARY_RELEASE:BOOL=ON
55 -DDISABLE_ZERO_TIER:BOOL=ON
56 -DFETCHCONTENT_FULLY_DISCONNECTED:BOOL=ON
58 VAR_OPSYS[linux]= LDFLAGS=-liconv
61 ${MKDIR} ${BUILD_WRKSRC}/_deps
62 (cd ${BUILD_WRKSRC}/_deps \
63 && ${MV} ${WRKDIR}/libsmackerdec-2997ee0e41e91bb723003bc09234be553b190e38 libsmackerdec-src \
64 && ${MV} ${WRKDIR}/libmpq-0f10bd1600f406b13932bf5351ba713361262184 libmpq-src \
65 && ${MV} ${WRKDIR}/simpleini-9b3ed7ec815997bc8c5b9edf140d6bde653e1458 simpleini-src \
66 && ${MV} ${WRKDIR}/SDL_audiolib-1a69135313c79817b38a3a99826d4ac28d627fdf sdl_audiolib-src)
69 ${INSTALL_PROGRAM} ${WRKDIR}/.build/devilutionx \
70 ${STAGEDIR}${PREFIX}/bin
72 [FILE:592:descriptions/desc.single]
73 Devilution is a project to re-create and document the source code for the
74 game Diablo 1 as closely to the original as possible. It was
75 reverse-engineered and cleaned up (believed to be legal under the Digital
76 Millennium Copyright Act's documentation and interoperability exceptions).
78 DevilutionX is a portable version of the engine that uses SDL to run
79 across modern operating systems. This package contains just the engine, no
80 game data is provided. You will need the original resource container
81 ("diabdat.mpq") to play.
83 The Hellfire expansion is also supported since version 1.2.0.
87 54b9fd496eba5b82d7e64891ab4de808f539c60b3b94bfa49639e0d9580fb7b8 7578111 devilutionX/diasurgical-devilutionX-1.4.1.tar.gz
88 40c0dc21943de22e153d56a7992c621a42a0c56c7cd833f8b84f90e48da753ea 18556 devilutionX/diasurgical-libsmackerdec-2997ee0e41e91bb723003bc09234be553b190e38.tar.gz
89 8e013245bf8e676d4e2c61661d7cee6cb9de74f97a475c9e6b35a25d5e7a7715 304183 devilutionX/realnc-SDL_audiolib-1a69135313c79817b38a3a99826d4ac28d627fdf.tar.gz
90 f7792eca9f3f7b0ee8916ffa4e124cb4b319b11d5849e15c5eef58eb910b0451 62870 devilutionX/brofield-simpleini-9b3ed7ec815997bc8c5b9edf140d6bde653e1458.tar.gz
91 ee173f5edb20f162482658cbc9d4bb84b640f651041d686c0ad7b2af12baf2a1 69570 devilutionX/diasurgical-libmpq-0f10bd1600f406b13932bf5351ba713361262184.tar.gz
94 [FILE:16:manifests/plist.single]
98 [FILE:453:patches/patch-3rdParty_libfmt_CMakeLists.txt]
99 --- 3rdParty/libfmt/CMakeLists.txt.orig 2023-04-05 20:06:24 UTC
100 +++ 3rdParty/libfmt/CMakeLists.txt
102 include(functions/FetchContent_MakeAvailableExcludeFromAll)
104 -if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL FreeBSD)
105 +if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} MATCH "BSD|DragonFly")
106 # Enable POSIX extensions such as `readlink` and `ftruncate`.
107 add_definitions(-D_POSIX_C_SOURCE=200809L)
111 [FILE:277:patches/patch-CMakeLists.txt]
112 --- CMakeLists.txt.orig 2023-01-04 23:06:45 UTC
114 @@ -156,7 +156,6 @@ if(NONET)
115 set(PACKET_ENCRYPTION OFF)
118 -find_program(CCACHE_PROGRAM ccache)
120 set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE "${CCACHE_PROGRAM}")
124 [FILE:381:patches/patch-CMake_Platforms.cmake]
125 --- CMake/Platforms.cmake.orig 2023-04-05 20:01:40 UTC
126 +++ CMake/Platforms.cmake
127 @@ -6,7 +6,7 @@ if(HAIKU)
128 include(platforms/haiku)
131 -if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|OpenBSD|DragonFly|NetBSD")
132 +if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|OpenBSD|DragonFly|NetBSD|MidnightBSD")
133 if(CMAKE_SYSTEM_NAME MATCHES "NetBSD")
134 add_definitions(-D_NETBSD_SOURCE)
138 [FILE:536:patches/patch-CMake_functions_devilutionx__library.cmake]
139 --- CMake/functions/devilutionx_library.cmake.orig 2023-04-05 20:06:24 UTC
140 +++ CMake/functions/devilutionx_library.cmake
141 @@ -48,7 +48,7 @@ function(add_devilutionx_library NAME)
142 target_compile_options(${NAME} PUBLIC -fsigned-char)
145 - if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL FreeBSD)
146 + if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "BSD|DragonFly")
147 # Enable POSIX extensions such as `readlink` and `ftruncate`.
148 add_definitions(-D_POSIX_C_SOURCE=200809L)
152 [FILE:397:files/pkg-message-single.in]
153 To play the game you need the resource container file DIABDAT.MPQ. Copy
154 it off your Diablo CD or extract it (using e.g. innoextract) from the
155 GOG version (see https://www.gog.com/game/diablo). Then put it into the
156 directory ~/.local/share/diasurgical/devilution and make sure it is
157 spelled all lower-case!
159 This version matches Diablo 1.9 but also includes some additional fixes