diff --git a/games/pioneer/Makefile b/games/pioneer/Makefile index dadf5b9ba77b..89ae148c0db1 100644 --- a/games/pioneer/Makefile +++ b/games/pioneer/Makefile @@ -1,72 +1,63 @@ PORTNAME= pioneer -DISTVERSION= 20230203 +DISTVERSION= 20240314 CATEGORIES= games MAINTAINER= amdmi3@FreeBSD.org COMMENT= Space adventure game set in the Milky Way galaxy WWW= https://pioneerspacesim.net/ LICENSE= APACHE20 BSD2CLAUSE CC-BY-SA-3.0 DejaVu GPLv3 IUP \ MIT SIL ZLIB LICENSE_COMB= multi LICENSE_NAME_DejaVu= Bitstream Vera and Arev fonts license LICENSE_NAME_IUP= Galaxy colour image use policy LICENSE_NAME_SIL= SIL open font license version 1.1 LICENSE_FILE_APACHE20= ${WRKSRC}/licenses/Apache-2.0.txt LICENSE_FILE_BSD2CLAUSE= ${WRKSRC}/licenses/LZ4.txt LICENSE_FILE_CC-BY-SA-3.0= ${WRKSRC}/licenses/CC-BY-SA-3.0.txt LICENSE_FILE_DejaVu= ${WRKSRC}/licenses/DejaVu-license.txt LICENSE_FILE_GPLv3= ${WRKSRC}/licenses/GPL-3.txt LICENSE_FILE_IUP= ${WRKSRC}/licenses/Image\ Use\ Policy\ -\ NASA\ Spitzer\ Space\ Telescope.html LICENSE_FILE_SIL= ${WRKSRC}/licenses/SIL-1.1.txt LICENSE_PERMS_DejaVu= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept LICENSE_PERMS_IUP= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept LICENSE_PERMS_SIL= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept +BROKEN_FreeBSD_13= fails to build # XXX: if you have similar error, try adding failing arch to USE_CHRONO condition in contrib/profiler/Profiler.h BROKEN_xxx= fails to build: contrib/profiler/Profiler.h:158:51: inconsistent operand constraints in an 'asm' LIB_DEPENDS= libassimp.so:multimedia/assimp \ libfreetype.so:print/freetype2 \ libsigc-2.0.so:devel/libsigc++20 \ libvorbisfile.so:audio/libvorbis USES= cmake compiler:c++17-lang gl gnome lua:52 pkgconfig sdl USE_GITHUB= yes USE_GL= gl glu glew USE_SDL= image2 sdl2 GH_ACCOUNT= pioneerspacesim ALL_TARGET= all build-data CMAKE_ARGS= -DPIONEER_DATA_DIR:PATH="${DATADIR}/data" CMAKE_ON= USE_SYSTEM_LIBGLEW USE_SYSTEM_LIBLUA +CMAKE_OFF= FMT_INSTALL -PORTDATA= data -PORTDOCS= AUTHORS.txt Changelog.txt Modelviewer.txt Quickstart.txt \ - README.md +PORTDATA= * +PORTDOCS= AUTHORS.txt Changelog.txt Quickstart.txt \ + README.md editor.txt SUB_FILES= pkg-message OPTIONS_DEFINE= DOCS PROFILER NOGPUJOBS_DESC= Disable EnableGPUJobs for config.ini by default PROFILER_DESC= Build with internal profiler DOCS_SUB_LIST= QUICKSTART_PATH="${DOCSDIR}" DOCS_SUB_LIST_OFF= QUICKSTART_PATH="https://raw.githubusercontent.com/${GH_ACCOUNT}/${GH_PROJECT}/${GH_TAGNAME}" PROFILER_CMAKE_BOOL= PROFILER_ENABLED -post-patch: - @${REINPLACE_CMD} -e '/^include(FindGit/d ; \ - /TIMESTAMP PROJECT_VERSION/s|.*|set(PROJECT_VERSION "${GH_TAGNAME}")|' \ - ${WRKSRC}/CMakeLists.txt - -post-install: -.for f in modelcompiler savegamedump - ${MV} ${STAGEDIR}${PREFIX}/bin/${f} \ - ${STAGEDIR}${PREFIX}/bin/${PORTNAME}-${f} -.endfor - post-install-DOCS-on: @(cd ${WRKSRC} && ${COPYTREE_SHARE} "${PORTDOCS}" ${STAGEDIR}${DOCSDIR}) .include diff --git a/games/pioneer/distinfo b/games/pioneer/distinfo index 74a0bd8859d3..493d70b7d8e9 100644 --- a/games/pioneer/distinfo +++ b/games/pioneer/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1675424098 -SHA256 (pioneerspacesim-pioneer-20230203_GH0.tar.gz) = 80eea94e0f7e4d8e6a0c4629bdfb89201f82aae2f59ee7a1f7a487eeeccf27c7 -SIZE (pioneerspacesim-pioneer-20230203_GH0.tar.gz) = 541032264 +TIMESTAMP = 1711646408 +SHA256 (pioneerspacesim-pioneer-20240314_GH0.tar.gz) = 9cd31abd3e4d90cb589ecd628118dfb76ad5e98638361da666d76539b3269c3f +SIZE (pioneerspacesim-pioneer-20240314_GH0.tar.gz) = 574924215 diff --git a/games/pioneer/files/patch-CMakeLists.txt b/games/pioneer/files/patch-CMakeLists.txt index cb5c75eabff1..c2d4a3f73c25 100644 --- a/games/pioneer/files/patch-CMakeLists.txt +++ b/games/pioneer/files/patch-CMakeLists.txt @@ -1,12 +1,18 @@ ---- CMakeLists.txt.orig 2023-02-03 14:29:13 UTC +--- CMakeLists.txt.orig 2024-03-14 20:05:43 UTC +++ CMakeLists.txt -@@ -71,6 +71,9 @@ if (HAS_FECLEAREXCEPT AND HAS_FEENABLEEXCEPT AND HAS_F - set(HAS_FPE_OPS ON) - endif() +@@ -336,6 +336,7 @@ add_executable(modelcompiler src/modelcompiler.cpp) + add_executable(${PROJECT_NAME} WIN32 src/main.cpp ${RESOURCES}) + add_executable(unittest ${UNITTEST_CXX_FILES}) + add_executable(modelcompiler src/modelcompiler.cpp) ++set_target_properties(modelcompiler PROPERTIES OUTPUT_NAME pioneer-modelcompiler) + add_executable(savegamedump + src/savegamedump.cpp + src/JsonUtils.cpp +@@ -345,6 +346,7 @@ add_executable(savegamedump + src/Lang.cpp + ${FILESYSTEM_CXX_FILES} + ) ++set_target_properties(savegamedump PROPERTIES OUTPUT_NAME pioneer-savegamedump) -+include(CheckCXXSourceCompiles) -+check_cxx_source_compiles("#include \nvoid foo(size_t){}; void foo(unsigned int){};int main(){}" SIZE_T_AND_UNSIGNED_INT_ARE_DIFFERENT_TYPES) -+ - if (NOT CMAKE_BUILD_TYPE) - set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING - "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel." + find_program(NATURALDOCS NAMES naturaldocs) + if (NATURALDOCS) diff --git a/games/pioneer/files/patch-buildopts.h.cmakein b/games/pioneer/files/patch-buildopts.h.cmakein deleted file mode 100644 index 5f8eae1bd327..000000000000 --- a/games/pioneer/files/patch-buildopts.h.cmakein +++ /dev/null @@ -1,10 +0,0 @@ ---- buildopts.h.cmakein.orig 2023-02-03 08:11:26 UTC -+++ buildopts.h.cmakein -@@ -9,6 +9,7 @@ - #cmakedefine01 WITH_OBJECTVIEWER - #cmakedefine01 WITH_DEVKEYS - #cmakedefine01 HAS_FPE_OPS -+#cmakedefine01 SIZE_T_AND_UNSIGNED_INT_ARE_DIFFERENT_TYPES - #cmakedefine REMOTE_LUA_REPL - - #endif /* BUILDOPTS_H */ diff --git a/games/pioneer/files/patch-src_core_macros.h b/games/pioneer/files/patch-src_core_macros.h new file mode 100644 index 000000000000..1dcabf3b32a2 --- /dev/null +++ b/games/pioneer/files/patch-src_core_macros.h @@ -0,0 +1,13 @@ +--- src/core/macros.h.orig 2024-03-14 20:05:43 UTC ++++ src/core/macros.h +@@ -45,6 +45,10 @@ char (&COUNTOF_Helper(T (&array)[N]))[N]; + #include + #define stackalloc(T, n) reinterpret_cast(_alloca(sizeof(T) * n)) + #else ++#ifdef __FreeBSD__ ++#include ++#else + #include ++#endif + #define stackalloc(T, n) reinterpret_cast(alloca(sizeof(T) * n)) + #endif diff --git a/games/pioneer/files/patch-src_editor_CMakeLists.txt b/games/pioneer/files/patch-src_editor_CMakeLists.txt new file mode 100644 index 000000000000..59c63edaaf2d --- /dev/null +++ b/games/pioneer/files/patch-src_editor_CMakeLists.txt @@ -0,0 +1,7 @@ +--- src/editor/CMakeLists.txt.orig 2024-03-14 20:05:43 UTC ++++ src/editor/CMakeLists.txt +@@ -29,3 +29,4 @@ set_target_properties(editor PROPERTIES RUNTIME_OUTPUT + set_cxx_properties(editor) + target_link_libraries(editor LINK_PRIVATE ${EDITOR_LIBRARIES} ${pioneerLibs} ${winLibs}) + set_target_properties(editor PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) ++set_target_properties(editor PROPERTIES OUTPUT_NAME pioneer-editor) diff --git a/games/pioneer/files/patch-src_lua_LuaPushPull.h b/games/pioneer/files/patch-src_lua_LuaPushPull.h deleted file mode 100644 index 6c0c26b13cda..000000000000 --- a/games/pioneer/files/patch-src_lua_LuaPushPull.h +++ /dev/null @@ -1,30 +0,0 @@ ---- src/lua/LuaPushPull.h.orig 2023-02-03 08:11:26 UTC -+++ src/lua/LuaPushPull.h -@@ -5,6 +5,7 @@ - #define _LUAPUSHPULL_H - - #include "Lua.h" -+#include "buildopts.h" - #include - - #include -@@ -15,7 +16,9 @@ inline void pi_lua_generic_push(lua_State *l, bool val - inline void pi_lua_generic_push(lua_State *l, int value) { lua_pushinteger(l, value); } - inline void pi_lua_generic_push(lua_State *l, int64_t value) { lua_pushinteger(l, value); } - inline void pi_lua_generic_push(lua_State *l, unsigned int value) { lua_pushinteger(l, value); } -+#if SIZE_T_AND_UNSIGNED_INT_ARE_DIFFERENT_TYPES - inline void pi_lua_generic_push(lua_State *l, size_t value) { lua_pushinteger(l, value); } -+#endif - inline void pi_lua_generic_push(lua_State *l, double value) { lua_pushnumber(l, value); } - inline void pi_lua_generic_push(lua_State *l, const char *value) { lua_pushstring(l, value); } - inline void pi_lua_generic_push(lua_State *l, const std::string &value) -@@ -32,7 +35,9 @@ inline void pi_lua_generic_pull(lua_State *l, int inde - inline void pi_lua_generic_pull(lua_State *l, int index, int &out) { out = luaL_checkinteger(l, index); } - inline void pi_lua_generic_pull(lua_State *l, int index, int64_t &out) { out = luaL_checkinteger(l, index); } - inline void pi_lua_generic_pull(lua_State *l, int index, unsigned int &out) { out = luaL_checkunsigned(l, index); } -+#if SIZE_T_AND_UNSIGNED_INT_ARE_DIFFERENT_TYPES - inline void pi_lua_generic_pull(lua_State *l, int index, size_t &out) { out = luaL_checkunsigned(l, index); } -+#endif - inline void pi_lua_generic_pull(lua_State *l, int index, float &out) { out = luaL_checknumber(l, index); } - inline void pi_lua_generic_pull(lua_State *l, int index, double &out) { out = luaL_checknumber(l, index); } - inline void pi_lua_generic_pull(lua_State *l, int index, const char *&out) { out = luaL_checkstring(l, index); } diff --git a/games/pioneer/files/patch-src_lua_LuaShip.cpp b/games/pioneer/files/patch-src_lua_LuaShip.cpp deleted file mode 100644 index 2bde51af87ba..000000000000 --- a/games/pioneer/files/patch-src_lua_LuaShip.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/lua/LuaShip.cpp.orig 2023-02-03 08:11:26 UTC -+++ src/lua/LuaShip.cpp -@@ -19,7 +19,7 @@ - #include "SpaceStation.h" - #include "ship/PlayerShipController.h" - #include "ship/PrecalcPath.h" --#include "src/lua.h" -+#include "lua.h" - - /* - * Class: Ship diff --git a/games/pioneer/files/patch-src_vector3.h b/games/pioneer/files/patch-src_vector3.h new file mode 100644 index 000000000000..d489753e560e --- /dev/null +++ b/games/pioneer/files/patch-src_vector3.h @@ -0,0 +1,10 @@ +--- src/vector3.h.orig 2024-03-14 20:05:43 UTC ++++ src/vector3.h +@@ -8,6 +8,7 @@ + #include "vector2.h" + #include + #include ++#include + + // Need this pragma due to operator[] implementation. + #pragma pack(4) diff --git a/games/pioneer/pkg-plist b/games/pioneer/pkg-plist index 7001b6072aba..e985acc86e1a 100644 --- a/games/pioneer/pkg-plist +++ b/games/pioneer/pkg-plist @@ -1,17 +1,18 @@ bin/pioneer +bin/pioneer-editor bin/pioneer-modelcompiler bin/pioneer-savegamedump -share/appdata/net.pioneerspacesim.Pioneer.appdata.xml share/applications/net.pioneerspacesim.Pioneer.desktop share/icons/hicolor/128x128/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/16x16/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/22x22/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/24x24/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/256x256/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/32x32/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/40x40/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/48x48/apps/net.pioneerspacesim.Pioneer.png share/icons/hicolor/64x64/apps/net.pioneerspacesim.Pioneer.png +share/metainfo/net.pioneerspacesim.Pioneer.metainfo.xml @dir %%DATADIR%%/data/music/core/undocked @dir %%DATADIR%%/data/music/core/near-planet @dir %%DATADIR%%/data/music/core/docked