# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= devilutionX VERSION= 1.5.0 KEYWORDS= games VARIANTS= standard SDESC[standard]= Reverse-engineered Diablo 1 engine made portable HOMEPAGE= https://github.com/diasurgical/devilutionX CONTACT= Michael_Reim[kraileth@elderlinux.org] DOWNLOAD_GROUPS= main audiolib libfmt libmpq simpleini smack SITES[main]= GITHUB/diasurgical:devilutionX:1.5.0 SITES[audiolib]= GITHUB/realnc:SDL_audiolib:cc1bb6af8d4cf5e200259072bde1edd1c8c5137e SITES[libfmt]= GITHUB/fmtlib:fmt:e421e854efcb21ee641349bab604d91b34af26b8 SITES[libmpq]= GITHUB/diasurgical:libmpq:b78d66c6fee6a501cc9b95d8556a129c68841b05 SITES[simpleini]= GITHUB/brofield:simpleini:56499b5af5d2195c6acfc58c4630b70e0c9c4c21 SITES[smack]= GITHUB/diasurgical:libsmackerdec:91e732bb6953489077430572f43fc802bf2c75b2 DISTFILE[1]= generated:main DISTFILE[2]= generated:smack DISTFILE[3]= generated:audiolib DISTFILE[4]= generated:simpleini DISTFILE[5]= generated:libmpq DISTFILE[6]= generated:libfmt DIST_SUBDIR= devilutionX DF_INDEX= 1 2 3 4 5 6 SPKGS[standard]= single OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILD_DEPENDS= asio:single:standard gtest:single:standard libsodium:dev:standard BUILDRUN_DEPENDS= libsodium:primary:standard USES= cmake pkgconfig gettext:build png dos2unix zlib bz2:build C_USES[linux]= iconv SDL_COMPONENTS= mixer2 ttf2 sdl2 image2 LICENSE= PUBDOM:single LICENSE_FILE= PUBDOM:{{WRKSRC}}/LICENSE.md LICENSE_SCHEME= solo DOS2UNIX_GLOB= *.cpp *.h *.cmake CMakeLists.txt FPC_EQUIVALENT= games/devilutionX SUB_FILES= pkg-message-single CMAKE_ARGS= -DBINARY_RELEASE:BOOL=ON -DVERSION_NUM="1.5.0" -DDISABLE_ZERO_TIER:BOOL=ON -DFETCHCONTENT_FULLY_DISCONNECTED:BOOL=ON -Wno-dev VAR_OPSYS[linux]= LDFLAGS=-liconv post-extract: ${MKDIR} ${BUILD_WRKSRC}/_deps (cd ${BUILD_WRKSRC}/_deps \ && ${MV} ${WRKDIR}/libsmackerdec-91e732bb6953489077430572f43fc802bf2c75b2 libsmackerdec-src \ && ${MV} ${WRKDIR}/fmt-e421e854efcb21ee641349bab604d91b34af26b8 libfmt-src \ && ${MV} ${WRKDIR}/libmpq-b78d66c6fee6a501cc9b95d8556a129c68841b05 libmpq-src \ && ${MV} ${WRKDIR}/simpleini-56499b5af5d2195c6acfc58c4630b70e0c9c4c21 simpleini-src \ && ${MV} ${WRKDIR}/SDL_audiolib-cc1bb6af8d4cf5e200259072bde1edd1c8c5137e sdl_audiolib-src) do-install: ${INSTALL_PROGRAM} ${WRKDIR}/.build/devilutionx \ ${STAGEDIR}${PREFIX}/bin [FILE:592:descriptions/desc.single] Devilution is a project to re-create and document the source code for the game Diablo 1 as closely to the original as possible. It was reverse-engineered and cleaned up (believed to be legal under the Digital Millennium Copyright Act's documentation and interoperability exceptions). DevilutionX is a portable version of the engine that uses SDL to run across modern operating systems. This package contains just the engine, no game data is provided. You will need the original resource container ("diabdat.mpq") to play. The Hellfire expansion is also supported since version 1.2.0. [FILE:912:distinfo] 94bd11e05ba53edddfd9df677d30c9f9fdca90f963a3466bf0fb133bd4f8d668 9353135 devilutionX/diasurgical-devilutionX-1.5.0.tar.gz e565e37ef1ae4f8846d9c9c24b861bc56fdce2d7a4ece47de448e00aa9048b87 18576 devilutionX/diasurgical-libsmackerdec-91e732bb6953489077430572f43fc802bf2c75b2.tar.gz 5adc71bee3506b16c505c1662da73fcfdfd878914645784f80fc70db979533a5 1140118 devilutionX/realnc-SDL_audiolib-cc1bb6af8d4cf5e200259072bde1edd1c8c5137e.tar.gz dbdb50a33d3edf791fc2622309d9c3d701a2fb7e7e2b403d3fa504e04f0ade0e 62858 devilutionX/brofield-simpleini-56499b5af5d2195c6acfc58c4630b70e0c9c4c21.tar.gz 348cd9c2be9c067dfcb8a2d6cd6f947ade5088e1543c1e5db1fdc5b12db6aeea 70149 devilutionX/diasurgical-libmpq-b78d66c6fee6a501cc9b95d8556a129c68841b05.tar.gz 5a5fd9127b4dfb9311e7ecd32bb9bf7f6bbf8878463c370e7225feea1803d1cb 852012 devilutionX/fmtlib-fmt-e421e854efcb21ee641349bab604d91b34af26b8.tar.gz [FILE:16:manifests/plist.single] bin/devilutionx [FILE:455:patches/patch-3rdParty_libfmt_CMakeLists.txt] --- 3rdParty/libfmt/CMakeLists.txt.orig 2023-06-18 17:54:38 UTC +++ 3rdParty/libfmt/CMakeLists.txt @@ -1,6 +1,6 @@ include(functions/FetchContent_MakeAvailableExcludeFromAll) -if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL FreeBSD) +if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "BSD|DragonFly") # Enable POSIX extensions such as `readlink` and `ftruncate`. add_definitions(-D_POSIX_C_SOURCE=200809L) endif() [FILE:318:patches/patch-CMakeLists.txt] --- CMakeLists.txt.orig 2023-06-18 17:54:38 UTC +++ CMakeLists.txt @@ -213,7 +213,6 @@ if(PIE) set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) endif() -find_program(CCACHE_PROGRAM ccache) if(CCACHE_PROGRAM) set(CMAKE_C_COMPILER_LAUNCHER "${CCACHE_PROGRAM}") set(CMAKE_CXX_COMPILER_LAUNCHER "${CCACHE_PROGRAM}") [FILE:381:patches/patch-CMake_Platforms.cmake] --- CMake/Platforms.cmake.orig 2023-06-18 17:54:38 UTC +++ CMake/Platforms.cmake @@ -6,7 +6,7 @@ if(HAIKU) include(platforms/haiku) endif() -if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|OpenBSD|DragonFly|NetBSD") +if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|OpenBSD|DragonFly|NetBSD|MidnightBSD") if(CMAKE_SYSTEM_NAME MATCHES "NetBSD") add_definitions(-D_NETBSD_SOURCE) else() [FILE:558:patches/patch-CMake_functions_devilutionx__library.cmake] --- CMake/functions/devilutionx_library.cmake.orig 2023-06-18 17:54:38 UTC +++ CMake/functions/devilutionx_library.cmake @@ -45,7 +45,7 @@ function(add_devilutionx_library NAME) target_compile_options(${NAME} PUBLIC -Wall -Wextra -Wno-unused-parameter) endif() - if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL FreeBSD) + if(NOT WIN32 AND NOT APPLE AND NOT ${CMAKE_SYSTEM_NAME} MATCHES "BSD|DragonFly") # Enable POSIX extensions such as `readlink` and `ftruncate`. add_definitions(-D_POSIX_C_SOURCE=200809L) endif() [FILE:397:files/pkg-message-single.in] To play the game you need the resource container file DIABDAT.MPQ. Copy it off your Diablo CD or extract it (using e.g. innoextract) from the GOG version (see https://www.gog.com/game/diablo). Then put it into the directory ~/.local/share/diasurgical/devilution and make sure it is spelled all lower-case! This version matches Diablo 1.9 but also includes some additional fixes and new features.