mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-08 14:43:27 -04:00
games-emulation/libretro-dolphin: bring back tests
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
This commit is contained in:
@@ -0,0 +1,39 @@
|
|||||||
|
From: Pavel Sobolev <contact@paveloom.dev>
|
||||||
|
Subject: [PATCH] Allow running tests.
|
||||||
|
|
||||||
|
Signed-off-by: Pavel Sobolev <contact@paveloom.dev>
|
||||||
|
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -321,8 +321,10 @@ else()
|
||||||
|
check_and_add_flag(NO_STRICT_ALIASING -fno-strict-aliasing)
|
||||||
|
check_and_add_flag(NO_EXCEPTIONS -fno-exceptions)
|
||||||
|
|
||||||
|
- check_and_add_flag(VISIBILITY_INLINES_HIDDEN -fvisibility-inlines-hidden)
|
||||||
|
- check_and_add_flag(VISIBILITY_HIDDEN -fvisibility=hidden)
|
||||||
|
+ if(NOT ENABLE_TESTS)
|
||||||
|
+ check_and_add_flag(VISIBILITY_INLINES_HIDDEN -fvisibility-inlines-hidden)
|
||||||
|
+ check_and_add_flag(VISIBILITY_HIDDEN -fvisibility=hidden)
|
||||||
|
+ endif()
|
||||||
|
|
||||||
|
check_and_add_flag(FOMIT_FRAME_POINTER -fomit-frame-pointer NO_DEBINFO_ONLY)
|
||||||
|
|
||||||
|
@@ -493,7 +495,6 @@ if(LIBRETRO)
|
||||||
|
set(ENCODE_FRAMEDUMPS OFF CACHE BOOL "" FORCE)
|
||||||
|
set(ENABLE_LLVM OFF CACHE BOOL "" FORCE)
|
||||||
|
set(ENABLE_NOGUI OFF CACHE BOOL "" FORCE)
|
||||||
|
- set(ENABLE_TESTS OFF CACHE BOOL "" FORCE)
|
||||||
|
set(ENABLE_QT OFF CACHE BOOL "" FORCE)
|
||||||
|
set(ENABLE_PULSEAUDIO OFF CACHE BOOL "" FORCE)
|
||||||
|
set(ENABLE_SDL OFF CACHE BOOL "" FORCE)
|
||||||
|
--- a/Source/UnitTests/CMakeLists.txt
|
||||||
|
+++ b/Source/UnitTests/CMakeLists.txt
|
||||||
|
@@ -6,7 +6,7 @@ string(APPEND CMAKE_RUNTIME_OUTPUT_DIRECTORY "/Tests")
|
||||||
|
|
||||||
|
add_executable(tests EXCLUDE_FROM_ALL UnitTestsMain.cpp StubHost.cpp)
|
||||||
|
set_target_properties(tests PROPERTIES FOLDER Tests)
|
||||||
|
-target_link_libraries(tests PRIVATE fmt::fmt gtest::gtest core uicommon)
|
||||||
|
+target_link_libraries(tests PUBLIC PRIVATE fmt::fmt gtest::gtest core dolphin_libretro uicommon)
|
||||||
|
add_test(NAME tests COMMAND tests)
|
||||||
|
add_custom_command(TARGET tests POST_BUILD
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E remove_directory "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Sys"
|
||||||
@@ -32,8 +32,8 @@ S="${WORKDIR}/dolphin-${LIBRETRO_COMMIT_SHA}"
|
|||||||
LICENSE="GPL-2+ BSD BSD-2 LGPL-2.1+ MIT ZLIB"
|
LICENSE="GPL-2+ BSD BSD-2 LGPL-2.1+ MIT ZLIB"
|
||||||
SLOT="0"
|
SLOT="0"
|
||||||
KEYWORDS="~amd64"
|
KEYWORDS="~amd64"
|
||||||
IUSE="bluetooth egl +evdev log"
|
IUSE="bluetooth egl +evdev log test"
|
||||||
RESTRICT="test" # Upstream disables tests for Libretro
|
RESTRICT="!test? ( test )"
|
||||||
|
|
||||||
RDEPEND="
|
RDEPEND="
|
||||||
app-arch/bzip2:=
|
app-arch/bzip2:=
|
||||||
@@ -76,9 +76,11 @@ DEPEND="
|
|||||||
"
|
"
|
||||||
BDEPEND="
|
BDEPEND="
|
||||||
virtual/pkgconfig
|
virtual/pkgconfig
|
||||||
|
test? ( dev-cpp/gtest )
|
||||||
"
|
"
|
||||||
|
|
||||||
PATCHES=(
|
PATCHES=(
|
||||||
|
"${FILESDIR}/${PN}-0.0.1_pre20260409-allow-running-tests.patch"
|
||||||
"${FILESDIR}/${PN}-0.0.1_pre20260409-use-more-system-libraries.patch"
|
"${FILESDIR}/${PN}-0.0.1_pre20260409-use-more-system-libraries.patch"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -135,6 +137,7 @@ src_configure() {
|
|||||||
-DENABLE_EVDEV=$(usex evdev)
|
-DENABLE_EVDEV=$(usex evdev)
|
||||||
-DENABLE_LTO=no # just adds -flto, user can do that via flags
|
-DENABLE_LTO=no # just adds -flto, user can do that via flags
|
||||||
-DENABLE_NOGUI=no
|
-DENABLE_NOGUI=no
|
||||||
|
-DENABLE_TESTS=$(usex test)
|
||||||
-DFASTLOG=$(usex log)
|
-DFASTLOG=$(usex log)
|
||||||
|
|
||||||
# Undo cmake.eclass's defaults.
|
# Undo cmake.eclass's defaults.
|
||||||
@@ -155,6 +158,10 @@ src_compile() {
|
|||||||
cmake_src_compile
|
cmake_src_compile
|
||||||
}
|
}
|
||||||
|
|
||||||
|
src_test() {
|
||||||
|
cmake_build unittests
|
||||||
|
}
|
||||||
|
|
||||||
src_install() {
|
src_install() {
|
||||||
# TODO libretro-core.eclass does not support EAPI-8 #966155
|
# TODO libretro-core.eclass does not support EAPI-8 #966155
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user