diff options
author | Marek Szuba <marecki@gentoo.org> | 2020-12-01 01:12:15 +0100 |
---|---|---|
committer | Marek Szuba <marecki@gentoo.org> | 2020-12-01 01:17:19 +0100 |
commit | 93e915dd5b6402818089203c77228ad300e3047e (patch) | |
tree | 8ff9d9a495b0b089a4d36336f3abf279a8413595 /games-simulation/corsix-th | |
parent | dev-lua/toluapp: fix CMAKE_REMOVE_MODULES_LIST lines (diff) | |
download | gentoo-93e915dd5b6402818089203c77228ad300e3047e.tar.gz gentoo-93e915dd5b6402818089203c77228ad300e3047e.tar.bz2 gentoo-93e915dd5b6402818089203c77228ad300e3047e.zip |
games-simulation/corsix-th: migrate to lua-single.eclass
LuaJIT is in principle supported upstream but requires one to override
cmake detection of the Lua library, and more importantly
dev-lua/luasocket doesn't support this implementation yet.
PUC Lua 5.4 is known not to be supported yet, see e.g.
http://lua-users.org/lists/lua-l/2020-07/msg00047.html
Closes: https://bugs.gentoo.org/752954
Signed-off-by: Marek Szuba <marecki@gentoo.org>
Diffstat (limited to 'games-simulation/corsix-th')
-rw-r--r-- | games-simulation/corsix-th/corsix-th-0.64-r100.ebuild | 84 | ||||
-rw-r--r-- | games-simulation/corsix-th/files/corsix-th-0.64-cmake_lua_detection.patch | 11 |
2 files changed, 95 insertions, 0 deletions
diff --git a/games-simulation/corsix-th/corsix-th-0.64-r100.ebuild b/games-simulation/corsix-th/corsix-th-0.64-r100.ebuild new file mode 100644 index 000000000000..0b163556250d --- /dev/null +++ b/games-simulation/corsix-th/corsix-th-0.64-r100.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +LUA_COMPAT=( lua5-{1..3} ) + +inherit cmake lua-single xdg + +MY_PN="CorsixTH" +MY_PV="$(ver_rs 2 -)" + +DESCRIPTION="Open source clone of Theme Hospital" +HOMEPAGE="https://corsixth.com" +SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="doc +midi +sound +truetype +videos" + +REQUIRED_USE="${LUA_REQUIRED_USE}" + +RDEPEND="${LUA_DEPS} + $(lua_gen_cond_dep ' + >=dev-lua/luafilesystem-1.5[${LUA_USEDEP}] + >=dev-lua/lpeg-0.9[${LUA_USEDEP}] + >=dev-lua/luasocket-3.0_rc1-r4[${LUA_USEDEP}] + ') + media-libs/libsdl2[opengl,video] + sound? ( media-libs/sdl2-mixer[midi?] ) + truetype? ( >=media-libs/freetype-2.5.3:2 ) + videos? ( >=media-video/ffmpeg-2.2.3:0= ) +" + +DEPEND="${RDEPEND}" + +# Technically, build-time generation of documentation could use any version +# of Lua (or to be precise: if in src_configure cmake has been told to use +# LuaJIT documentation generation looks for LuaJIT, otherwise any +# dev-lang/lua slot will do; see the first few lines of the bundled file +# CMake/GenerateDoc.cmake for details) - but since dev-lang/lua:0 conflicts +# with the other slots of same, try to keep the deptree sane until we get +# rid of unslotted Lua. +BDEPEND=" + virtual/pkgconfig + doc? ( + app-doc/doxygen[dot] + ${LUA_DEPS} + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-0.64-cmake_lua_detection.patch +) + +S="${WORKDIR}/${MY_PN}-${MY_PV}" + +src_prepare() { + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DLUA_VERSION=$(lua_get_version) + -DWITH_AUDIO=$(usex sound) + -DWITH_FREETYPE2=$(usex truetype) + -DWITH_MOVIES=$(usex videos) + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use doc && cmake_src_compile doc +} + +src_install() { + cmake_src_install + dodoc {changelog,CONTRIBUTING}.txt + + docinto html + use doc && dodoc -r "${BUILD_DIR}"/doc/* +} diff --git a/games-simulation/corsix-th/files/corsix-th-0.64-cmake_lua_detection.patch b/games-simulation/corsix-th/files/corsix-th-0.64-cmake_lua_detection.patch new file mode 100644 index 000000000000..d57fa953ad05 --- /dev/null +++ b/games-simulation/corsix-th/files/corsix-th-0.64-cmake_lua_detection.patch @@ -0,0 +1,11 @@ +--- a/CorsixTH/CMakeLists.txt ++++ b/CorsixTH/CMakeLists.txt +@@ -103,7 +103,7 @@ + endif() + + # Find Lua +-find_package(Lua REQUIRED) ++find_package(Lua ${LUA_VERSION} EXACT REQUIRED) + if(Lua_FOUND) + target_link_libraries(CorsixTH ${LUA_LIBRARY}) + include_directories(${LUA_INCLUDE_DIR}) |