On Fri Oct 02, 2026 at 09:41:21AM +0100, Stuart Henderson wrote:
> ganes/stratagus has an ugly workaround for not having toluac++ in
> ports, which seems to have issues around system lua being installed
> and/or junked during build.
> 
> this switches to system lua and adds a new port (attached); toluacpp.tgz
> (lang/toluacpp).
> 
> lua/5.1 is hardcoded for simplicity - this codebase does not support
> newer lua major versions and toluac++ is archived upstream - so no
> need for extra complexity from the module.
> 
> any ok's (at least to import toluacpp)?
> 
> post unlock obviously

A few thoughts whilst reading, see below.

> 
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/games/stratagus/Makefile,v
> diff -u -p -r1.3 Makefile
> --- Makefile  4 Mar 2026 10:21:05 -0000       1.3
> +++ Makefile  2 Oct 2026 08:31:53 -0000
> @@ -3,6 +3,7 @@ COMMENT=              free cross-platform real-time 
>  GH_ACCOUNT=          Wargus
>  GH_PROJECT=          stratagus
>  GH_TAGNAME=          v3.3.2
> +REVISION=            0
>  CATEGORIES=          games
>  
>  HOMEPAGE=            http://stratagus.com/stratagus.html
> @@ -10,8 +11,8 @@ HOMEPAGE=           http://stratagus.com/stratagu
>  # GPLv2+
>  PERMIT_PACKAGE=              Yes
>  
> -WANTLIB +=           ${COMPILER_LIBCXX} SDL2 SDL2_image SDL2_mixer bz2 c m \
> -                     mng ogg png pthread theora vorbis z
> +WANTLIB += ${COMPILER_LIBCXX} SDL2 SDL2_image SDL2_mixer bz2 c
> +WANTLIB += lua5.1 m mng ogg png theora toluapp vorbis z

lua${MODLUA_VERSION}

>  
>  MODULES=             devel/cmake

lang/lua ?

>  
> @@ -25,6 +26,7 @@ LIB_DEPENDS=                archivers/bzip2 \
>                       devel/sdl2-mixer \
>                       devel/sdl2-image \
>                       graphics/libmng \
> +                     lang/toluapp \
>                       multimedia/libtheora
>  
>  CONFIGURE_ARGS=              -DGAMEDIR=${LOCALBASE}/bin/ \
> @@ -32,17 +34,8 @@ CONFIGURE_ARGS=            -DGAMEDIR=${LOCALBASE}/
>                       -DENABLE_DEV=ON
>  
>  MODCMAKE_LDFLAGS+=   -L${LOCALBASE}/lib -L${X11BASE}/lib
> -CXXFLAGS =           -I${X11BASE}/include
> +CXXFLAGS+=           -I${X11BASE}/include
>  
> -# XXX Depends on tolua++, use bundled lua 51
> -CONFIGURE_ARGS+=     -DBUILD_VENDORED_LUA=ON
> -pre-build:
> -     cd ${WRKBUILD} && exec ${SETENV} ${MAKE_ENV} \
> -     cmake --build ${WRKBUILD} ${_MAKE_VERBOSE} -j ${MAKE_JOBS} -t Lua51B
> -
> -pre-configure:
> -     find ${WRKSRC}/ -name "CMakeLists.txt" -type f -exec sed -i \
> -     -E 
> 's/cmake_minimum_required\([[:space:]]*VERSION[[:space:]]+[^)]+\)/cmake_minimum_required(VERSION
>  3.5)/g' \
> -     {} \;
> +MODCMAKE_POLICY_VERSION_OVERRIDE = Yes

Thanks!

>  
>  .include <bsd.port.mk>
> Index: patches/patch-CMakeLists_txt
> ===================================================================
> RCS file: /cvs/ports/games/stratagus/patches/patch-CMakeLists_txt,v
> diff -u -p -r1.1.1.1 patch-CMakeLists_txt
> --- patches/patch-CMakeLists_txt      13 Feb 2025 20:07:57 -0000      1.1.1.1
> +++ patches/patch-CMakeLists_txt      2 Oct 2026 08:31:53 -0000
> @@ -1,15 +1,7 @@
>  Index: CMakeLists.txt
>  --- CMakeLists.txt.orig
>  +++ CMakeLists.txt
> -@@ -71,6 +71,7 @@ endif()
> - # Stratagus sources
> - 
> - include_directories(
> -+    /usr/X11R6/include
> -     src/include
> -     src/guichan/include
> -     src/guichan/include/guichan
> -@@ -656,7 +657,7 @@ if(APPLE)
> +@@ -656,7 +656,7 @@ if(APPLE)
>       list(APPEND CMAKE_PREFIX_PATH /opt/homebrew/)
>   endif()
>   
> Index: patches/patch-third-party_lua-5_1_5_src_CMakeLists_txt
> ===================================================================
> RCS file: patches/patch-third-party_lua-5_1_5_src_CMakeLists_txt
> diff -N patches/patch-third-party_lua-5_1_5_src_CMakeLists_txt
> --- patches/patch-third-party_lua-5_1_5_src_CMakeLists_txt    1 Jul 2025 
> 15:39:03 -0000       1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,9 +0,0 @@
> -Index: third-party/lua-5.1.5/src/CMakeLists.txt
> ---- third-party/lua-5.1.5/src/CMakeLists.txt.orig
> -+++ third-party/lua-5.1.5/src/CMakeLists.txt
> -@@ -72,4 +72,4 @@ set_target_properties(lua51 PROPERTIES
> -         RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}
> -     )
> - 
> --add_custom_command(TARGET lua51_static POST_BUILD COMMAND ${CMAKE_COMMAND} 
> -E copy "${PROJECT_SOURCE_DIR}/src/lua.h" 
> "${PROJECT_SOURCE_DIR}/src/luaconf.h" "${PROJECT_SOURCE_DIR}/src/lualib.h" 
> "${PROJECT_SOURCE_DIR}/src/lauxlib.h" ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})
> -+add_custom_command(TARGET lua51_static PRE_LINK COMMAND ${CMAKE_COMMAND} -E 
> copy "${PROJECT_SOURCE_DIR}/src/lua.h" "${PROJECT_SOURCE_DIR}/src/luaconf.h" 
> "${PROJECT_SOURCE_DIR}/src/lualib.h" "${PROJECT_SOURCE_DIR}/src/lauxlib.h" 
> ${CMAKE_LIBRARY_OUTPUT_DIRECTORY})


Reply via email to