forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
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 <[email protected]>
- Loading branch information
Marek Szuba
committed
Dec 1, 2020
1 parent
5ee15fd
commit 93e915d
Showing
3 changed files
with
96 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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/* | ||
} |
11 changes: 11 additions & 0 deletions
11
games-simulation/corsix-th/files/corsix-th-0.64-cmake_lua_detection.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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}) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters