diff --git a/games/openenroth/Makefile b/games/openenroth/Makefile index c41a882d0716..11148681da9e 100644 --- a/games/openenroth/Makefile +++ b/games/openenroth/Makefile @@ -1,69 +1,72 @@ PORTNAME= ${GH_PROJECT:[1]:tl} PORTVERSION= g20250907 CATEGORIES= games PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ PATCHFILES= 82acace66caae3a0c5824b449f79f8bf6b4197b8.patch:-p1 \ 4061bb17317fbc1d2ef515addb18746d42bbc278.patch:-p1 MAINTAINER= danfe@FreeBSD.org COMMENT= Open reimplementation of Might and Magic VI-VIII game engine WWW= https://github.com/OpenEnroth/OpenEnroth LICENSE= LGPL3 +BUILD_DEPENDS= ${LOCALBASE}/include/fast_float/fast_float.h:math/fast_float LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ libfmt.so:devel/libfmt \ libpng.so:graphics/png \ libspdlog.so:devel/spdlog -USES= cmake gl openal sdl +USES= cmake compiler:c++23-lang gl openal pkgconfig sdl USE_GL= gl USE_SDL= sdl2 SUB_FILES= pkg-message CMAKE_OFF= OE_BUILD_TESTS OE_USE_PREBUILT_DEPENDENCIES LDFLAGS_i386= -Wl,-znotext USE_GITHUB= yes -GH_ACCOUNT= OpenEnroth CLIUtils:cli11 vector-of-bool:cmrc fastfloat:ff \ - TartanLlama:gen g-truc:glm ocornut:img Rookfighter:ifcpp \ - boostorg:l2 zhaozg:ljcm LuaJIT:lj Neargye:me mandreyel:mio \ - nlohmann:nj gharveymn:sv ThePhD:sol2 -GH_PROJECT= OpenEnroth backward-cpp:bwcpp cmrc:cmrc CLI11:cli11 \ - fast_float:ff generator:gen glm:glm imgui:img \ - inifile-cpp:ifcpp lambda2:l2 luajit-cmake:ljcm LuaJIT:lj \ - magic_enum:me mio:mio json:nj small_vector:sv sol2:sol2 -GH_TAGNAME= 9ba8864 51f0700:bwcpp 9532482:cli11 952ffdd:cmrc 1ea4f27:ff \ - 2a91250:gen 0af55cc:glm 1f7f1f5:img 7bb1ec3:ifcpp dddfec6:l2 \ - 6446221:ljcm 97813fb:lj d01a4f9:me 8b6b7d8:mio 55f9368:nj \ - e8e63fe:sv 336f76c:sol2 -GH_SUBDIR= thirdparty/backward_cpp:bwcpp thirdparty/cli11:cli11 \ - thirdparty/cmrc:cmrc thirdparty/fast_float:ff \ - thirdparty/generator:gen thirdparty/glm:glm \ - thirdparty/imgui/imgui:img thirdparty/inifile_cpp:ifcpp \ - thirdparty/lambda2:l2 thirdparty/luajit-cmake:ljcm \ - thirdparty/luajit:lj thirdparty/magic_enum:me \ - thirdparty/mio:mio thirdparty/nlohmann_json:nj \ - thirdparty/small_vector:sv thirdparty/sol2:sol2 +GH_ACCOUNT= OpenEnroth +GH_PROJECT= OpenEnroth +GH_TAGNAME= 9ba8864 +GH_TUPLE= CLIUtils:CLI11:9532482:C_C/thirdparty/cli11 \ + LuaJIT:LuaJIT:97813fb:L_L/thirdparty/luajit \ + Neargye:magic_enum:d01a4f9:N_m/thirdparty/magic_enum \ + OpenEnroth:backward-cpp:51f0700:O_b/thirdparty/backward_cpp \ + Rookfighter:inifile-cpp:7bb1ec3:R_i/thirdparty/inifile_cpp \ + TartanLlama:generator:2a91250:T_g/thirdparty/generator \ + ThePhD:sol2:336f76c:T_s/thirdparty/sol2 \ + boostorg:lambda2:dddfec6:b_l/thirdparty/lambda2 \ + g-truc:glm:0af55cc:g_g/thirdparty/glm \ + gharveymn:small_vector:e8e63fe:g_s/thirdparty/small_vector \ + mandreyel:mio:8b6b7d8:m_m/thirdparty/mio \ + nlohmann:json:55f9368:n_j/thirdparty/nlohmann_json \ + ocornut:imgui:1f7f1f5:o_i/thirdparty/imgui/imgui \ + vector-of-bool:cmrc:952ffdd:v_c/thirdparty/cmrc \ + zhaozg:luajit-cmake:6446221:zh_l/thirdparty/luajit-cmake PORTSCOUT= skipv:nightly post-patch: @${REINPLACE_CMD} -e \ '/PROJECT_VERSION/s,unknown,git-${GH_TAGNAME:[1]},' \ ${WRKSRC}/CMakeModules/Git.cmake + @${REINPLACE_CMD} -e '/assert/s,context,&.operator bool(),' \ + ${WRKSRC}/src/Library/Platform/Application/PlatformApplication.cpp @${REINPLACE_CMD} -e '/extern "C"/ { x; \ s/^/#define AV_INPUT_BUFFER_MIN_SIZE 16384/; G; }' \ ${WRKSRC}/src/Media/FFmpegBlobInputStream.cpp @${REINPLACE_CMD} -e '/target_include_directories(imgui_backends/ \ s,), ${LOCALBASE}/include&,' \ ${WRKSRC}/thirdparty/imgui/CMakeLists.txt + @${REINPLACE_CMD} -e 's, empty_string,& = 0,' \ + ${WRKSRC_o_i}/imgui_widgets.cpp do-install: .for prog in CodeGen LodTool OpenEnroth ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/src/Bin/${prog}/${prog} \ ${STAGEDIR}${PREFIX}/bin .endfor .include diff --git a/games/openenroth/distinfo b/games/openenroth/distinfo index 75d415864200..6bc25c2ed697 100644 --- a/games/openenroth/distinfo +++ b/games/openenroth/distinfo @@ -1,39 +1,37 @@ TIMESTAMP = 1757283000 SHA256 (OpenEnroth-OpenEnroth-g20250907-9ba8864_GH0.tar.gz) = ddb54e20772d7a13d2fbbc62a7b7e43088e09150979197a3b638b90803895933 SIZE (OpenEnroth-OpenEnroth-g20250907-9ba8864_GH0.tar.gz) = 2794066 SHA256 (CLIUtils-CLI11-9532482_GH0.tar.gz) = f9e6682bd7a6729f865837aaf129b6327a25eae4fed10ee7453f1b1dcf8dfcff SIZE (CLIUtils-CLI11-9532482_GH0.tar.gz) = 323142 -SHA256 (vector-of-bool-cmrc-952ffdd_GH0.tar.gz) = 523f26a4285b59f08b497a014c120717d219d161e1f96be9e126908e04cb9ddf -SIZE (vector-of-bool-cmrc-952ffdd_GH0.tar.gz) = 2597804 -SHA256 (fastfloat-fast_float-1ea4f27_GH0.tar.gz) = 0152d47ba6c6fd679bab36ef49d3968939ba3489885c824a867cee7b99d452bc -SIZE (fastfloat-fast_float-1ea4f27_GH0.tar.gz) = 79251 -SHA256 (TartanLlama-generator-2a91250_GH0.tar.gz) = 9c3b1a152108ded2a977ad68dee87976b9061c79bd27db899f5d3f02862c0315 -SIZE (TartanLlama-generator-2a91250_GH0.tar.gz) = 11775 -SHA256 (g-truc-glm-0af55cc_GH0.tar.gz) = 5addedd8ac476cfb3eee9a545525b696e926646d89c679f13f045846c208c7c3 -SIZE (g-truc-glm-0af55cc_GH0.tar.gz) = 4567398 -SHA256 (ocornut-imgui-1f7f1f5_GH0.tar.gz) = d973654695d1ca8560e745929a414edb2988dd95ced1724480019d5208cafa0a -SIZE (ocornut-imgui-1f7f1f5_GH0.tar.gz) = 2095356 +SHA256 (LuaJIT-LuaJIT-97813fb_GH0.tar.gz) = c96d2b0697c42e7d5da24e273e1d829c77971866be1b49abfa10dacedb661e47 +SIZE (LuaJIT-LuaJIT-97813fb_GH0.tar.gz) = 1081689 +SHA256 (Neargye-magic_enum-d01a4f9_GH0.tar.gz) = 7334e1dcb3af741ff6e4d5ab13771d1b39d291bb35b740a4ca795419c93ad2fa +SIZE (Neargye-magic_enum-d01a4f9_GH0.tar.gz) = 171928 +SHA256 (OpenEnroth-backward-cpp-51f0700_GH0.tar.gz) = 34347a0e2bd0329f16a8814235e6153312f834874946f5705403c2af313cae4d +SIZE (OpenEnroth-backward-cpp-51f0700_GH0.tar.gz) = 199840 SHA256 (Rookfighter-inifile-cpp-7bb1ec3_GH0.tar.gz) = 35773a655e3ceb0f3bf0fd1de1c57b15fa68bf085d9599b5aa86c3da765ada79 SIZE (Rookfighter-inifile-cpp-7bb1ec3_GH0.tar.gz) = 14667 +SHA256 (TartanLlama-generator-2a91250_GH0.tar.gz) = 9c3b1a152108ded2a977ad68dee87976b9061c79bd27db899f5d3f02862c0315 +SIZE (TartanLlama-generator-2a91250_GH0.tar.gz) = 11775 +SHA256 (ThePhD-sol2-336f76c_GH0.tar.gz) = 12b45b7ba86197ab78178ebb8e9a626d97b49b4d2720d468852a789709e3f65f +SIZE (ThePhD-sol2-336f76c_GH0.tar.gz) = 8461271 SHA256 (boostorg-lambda2-dddfec6_GH0.tar.gz) = 39fd78175f29c6e5f545d985e0819e23e8f560766d5e7e4b94a6e85de8c6788d SIZE (boostorg-lambda2-dddfec6_GH0.tar.gz) = 13041 -SHA256 (LuaJIT-LuaJIT-97813fb_GH0.tar.gz) = c96d2b0697c42e7d5da24e273e1d829c77971866be1b49abfa10dacedb661e47 -SIZE (LuaJIT-LuaJIT-97813fb_GH0.tar.gz) = 1081689 -SHA256 (zhaozg-luajit-cmake-6446221_GH0.tar.gz) = 041168b28be16cf0e1672a5345372938b7e20bea0baa2a71db701141c7927f3a -SIZE (zhaozg-luajit-cmake-6446221_GH0.tar.gz) = 25964 +SHA256 (g-truc-glm-0af55cc_GH0.tar.gz) = 5addedd8ac476cfb3eee9a545525b696e926646d89c679f13f045846c208c7c3 +SIZE (g-truc-glm-0af55cc_GH0.tar.gz) = 4567398 +SHA256 (gharveymn-small_vector-e8e63fe_GH0.tar.gz) = b50750a82bcc8e3b81ed2f3a39d2b7197a81f21c82dac8de0b8fff0097aef934 +SIZE (gharveymn-small_vector-e8e63fe_GH0.tar.gz) = 92341 SHA256 (mandreyel-mio-8b6b7d8_GH0.tar.gz) = 5afbe7658a374ba2463df811aae2e68d8be6867c7ad65d5077d96a5ffe0580d3 SIZE (mandreyel-mio-8b6b7d8_GH0.tar.gz) = 33276 -SHA256 (Neargye-magic_enum-d01a4f9_GH0.tar.gz) = 7334e1dcb3af741ff6e4d5ab13771d1b39d291bb35b740a4ca795419c93ad2fa -SIZE (Neargye-magic_enum-d01a4f9_GH0.tar.gz) = 171928 SHA256 (nlohmann-json-55f9368_GH0.tar.gz) = cb103964c3cfb351c39c7e7b2944a0f43eccd51d9a46bb0c12ab64af1720da52 SIZE (nlohmann-json-55f9368_GH0.tar.gz) = 9678663 -SHA256 (gharveymn-small_vector-e8e63fe_GH0.tar.gz) = b50750a82bcc8e3b81ed2f3a39d2b7197a81f21c82dac8de0b8fff0097aef934 -SIZE (gharveymn-small_vector-e8e63fe_GH0.tar.gz) = 92341 -SHA256 (ThePhD-sol2-336f76c_GH0.tar.gz) = 12b45b7ba86197ab78178ebb8e9a626d97b49b4d2720d468852a789709e3f65f -SIZE (ThePhD-sol2-336f76c_GH0.tar.gz) = 8461271 -SHA256 (OpenEnroth-backward-cpp-51f0700_GH0.tar.gz) = 34347a0e2bd0329f16a8814235e6153312f834874946f5705403c2af313cae4d -SIZE (OpenEnroth-backward-cpp-51f0700_GH0.tar.gz) = 199840 +SHA256 (ocornut-imgui-1f7f1f5_GH0.tar.gz) = d973654695d1ca8560e745929a414edb2988dd95ced1724480019d5208cafa0a +SIZE (ocornut-imgui-1f7f1f5_GH0.tar.gz) = 2095356 +SHA256 (vector-of-bool-cmrc-952ffdd_GH0.tar.gz) = 523f26a4285b59f08b497a014c120717d219d161e1f96be9e126908e04cb9ddf +SIZE (vector-of-bool-cmrc-952ffdd_GH0.tar.gz) = 2597804 +SHA256 (zhaozg-luajit-cmake-6446221_GH0.tar.gz) = 041168b28be16cf0e1672a5345372938b7e20bea0baa2a71db701141c7927f3a +SIZE (zhaozg-luajit-cmake-6446221_GH0.tar.gz) = 25964 SHA256 (82acace66caae3a0c5824b449f79f8bf6b4197b8.patch) = 0c8de3cd21a0eefe137a6e50897cc068a8fa6f05e66cd88d9213545d2bc4842f SIZE (82acace66caae3a0c5824b449f79f8bf6b4197b8.patch) = 4335 SHA256 (4061bb17317fbc1d2ef515addb18746d42bbc278.patch) = aabc0a2b05bc40172bbeaafbe30c56e2a9e0ab2b05b6a6aa8e0fc271c96d31ed SIZE (4061bb17317fbc1d2ef515addb18746d42bbc278.patch) = 913 diff --git a/games/openenroth/files/patch-src_Library_Serialization_CMakeLists.txt b/games/openenroth/files/patch-src_Library_Serialization_CMakeLists.txt new file mode 100644 index 000000000000..54c2ddd21fc3 --- /dev/null +++ b/games/openenroth/files/patch-src_Library_Serialization_CMakeLists.txt @@ -0,0 +1,10 @@ +--- src/Library/Serialization/CMakeLists.txt.orig 2025-09-07 22:10:00 UTC ++++ src/Library/Serialization/CMakeLists.txt +@@ -15,6 +15,7 @@ set(LIBRARY_SERIALIZATION_HEADERS + + add_library(library_serialization STATIC ${LIBRARY_SERIALIZATION_SOURCES} ${LIBRARY_SERIALIZATION_HEADERS}) + target_check_style(library_serialization) ++find_package(FastFloat REQUIRED) + target_link_libraries(library_serialization + PUBLIC + utility diff --git a/games/openenroth/files/patch-thirdparty_CMakeLists.txt b/games/openenroth/files/patch-thirdparty_CMakeLists.txt index fb3aeca33d3b..c4469620d83f 100644 --- a/games/openenroth/files/patch-thirdparty_CMakeLists.txt +++ b/games/openenroth/files/patch-thirdparty_CMakeLists.txt @@ -1,19 +1,27 @@ --- thirdparty/CMakeLists.txt.orig 2025-09-07 22:10:00 UTC +++ thirdparty/CMakeLists.txt -@@ -21,8 +21,6 @@ add_subdirectory(sol2 EXCLUDE_FROM_ALL) +@@ -8,7 +8,6 @@ set(CMAKE_POLICY_DEFAULT_CMP0077 NEW) + + # Using EXCLUDE_FROM_ALL when adding subdirectories so that we dont add the libs to install target. + add_subdirectory(cmrc EXCLUDE_FROM_ALL) +-add_subdirectory(fast_float EXCLUDE_FROM_ALL) + add_subdirectory(glm EXCLUDE_FROM_ALL) + add_subdirectory(magic_enum EXCLUDE_FROM_ALL) + add_subdirectory(cli11 EXCLUDE_FROM_ALL) +@@ -21,8 +20,6 @@ add_subdirectory(sol2 EXCLUDE_FROM_ALL) target_compile_definitions(sol2 INTERFACE SOL_EXCEPTIONS_ALWAYS_UNSAFE=1) # Make sure sol2 doesn't propagate C++ exceptions to luajit. # fmt -add_subdirectory(fmt EXCLUDE_FROM_ALL) -target_compile_definitions(fmt INTERFACE FMT_USE_NONTYPE_TEMPLATE_ARGS) # Enable _cf literals. if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") target_compile_definitions(fmt INTERFACE FMT_CONSTEVAL=) # MSVC chokes on fmt consteval formatting, so we define FMT_CONSTEVAL=. endif() -@@ -51,7 +49,6 @@ set(SPDLOG_DISABLE_DEFAULT_LOGGER ON) +@@ -51,7 +48,6 @@ set(SPDLOG_DISABLE_DEFAULT_LOGGER ON) if(OE_BUILD_PLATFORM STREQUAL "windows") set(SPDLOG_WCHAR_SUPPORT ON) # Use unicode APIs on Windows. endif() -add_subdirectory(spdlog EXCLUDE_FROM_ALL) # googletest if(OE_BUILD_TESTS)