diff --git a/gui-libs/mir/Manifest b/gui-libs/mir/Manifest index a5ceabad1b..59b1dc67b3 100644 --- a/gui-libs/mir/Manifest +++ b/gui-libs/mir/Manifest @@ -1,2 +1,3 @@ DIST mir-2.19.2.tar.gz 6811003 BLAKE2B 012ad7852974c88abba53e98f5fed3e8f2873f3ad5c3ba8a89c1b43ac67a9871cb7b1eba0034dacb5bd5a410dc931f03290096c9e31020c312788f55b2e851fd SHA512 99e5b09e3321b51bfd9427d778b5983b5a62628648b927c64bacfccb2a757f4c0db4664aaf3b87614472837c9434351681cdae42221b3760c8f947e2895712c2 DIST mir-2.19.3.tar.gz 6811167 BLAKE2B a22a99a409afbc37e716f0128ef15d42eda172df872727d1baceb16bfc6073a4f82a7f70c4a4eeee34242971af5ac0b7efa007a185cbf6b42a0f5201467534f6 SHA512 c6b8c5c5462be17f3edc54cc93e970d3425ca5b3b44b74ac196175bbb60eb95d610be6addf6eb7a6d72a662573ca1d62aa2f396d14ce69d29ec5670d87db650b +DIST mir-2.20.0.tar.gz 6823240 BLAKE2B 6e707155764a3e37d2d5f431902358f3813b1dcad3c6772d13c867b998ffc0df3396c4ac6dca1c59b7c0edd723fc1ca509993e075837e5c666bcbed2d5484299 SHA512 97d743ab183563fcaad7afea1cdc7709636fde5f1c9fda699144f41f1b363c2238364a795961a931eea81abd02b87dcc96b4b1f7e89095ed128eaaa44fbb3005 diff --git a/gui-libs/mir/files/mir-2.20.0-remove-tests.patch b/gui-libs/mir/files/mir-2.20.0-remove-tests.patch new file mode 100644 index 0000000000..69d8246d23 --- /dev/null +++ b/gui-libs/mir/files/mir-2.20.0-remove-tests.patch @@ -0,0 +1,40 @@ +Prevent test libraries from being installed and remove tests that lack dependencies to build. +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -173,6 +173,7 @@ configure_file( + @ONLY + ) + ++if(0) + install(TARGETS mir-test-assist + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} + ) +@@ -200,6 +201,7 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/mirtest.pc + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/mirtest-internal.pc + DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig + ) ++endif() + + mir_add_memcheck_test() + mir_add_detect_fd_leaks_test() +--- a/tests/mir_test_framework/CMakeLists.txt ++++ b/tests/mir_test_framework/CMakeLists.txt +@@ -55,7 +55,6 @@ add_library(mir-public-test-framework OBJECT + ${PROJECT_SOURCE_DIR}/tests/include/mir_test_framework/open_wrapper.h + test_server.cpp ${PROJECT_SOURCE_DIR}/include/test/miral/test_server.h + test_display_server.cpp ${PROJECT_SOURCE_DIR}/include/test/miral/test_display_server.h +- test_wlcs_display_server.cpp ${PROJECT_SOURCE_DIR}/include/test/miral/test_wlcs_display_server.h + ${PROJECT_SOURCE_DIR}/tests/include/mir_test_framework/mmap_wrapper.h + mmap_wrapper.cpp + window_management_test_harness.cpp ${PROJECT_SOURCE_DIR}/tests/include/mir_test_framework/window_management_test_harness.h +@@ -183,8 +182,10 @@ set_target_properties( + LINK_FLAGS "-Wl,--version-script,${server_symbol_map}" + ) + ++if(0) + install(TARGETS mirplatformgraphicsstub LIBRARY DESTINATION ${MIR_SERVER_PLATFORM_PATH}) + install(TARGETS mirplatforminputstub LIBRARY DESTINATION ${MIR_SERVER_PLATFORM_PATH}) ++endif() + + add_library( + mirplatformgraphicsthrow MODULE diff --git a/gui-libs/mir/mir-2.20.0.ebuild b/gui-libs/mir/mir-2.20.0.ebuild new file mode 100644 index 0000000000..ce12ebfe07 --- /dev/null +++ b/gui-libs/mir/mir-2.20.0.ebuild @@ -0,0 +1,82 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg + +DESCRIPTION="Set of libraries for building Wayland based shells" +HOMEPAGE="https://mir-server.io/" +SRC_URI="https://github.com/canonical/mir/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="|| ( GPL-2 GPL-3 ) || ( LGPL-2.1 LGPL-3 )" +SLOT="0/${PV}" +KEYWORDS="~amd64" +IUSE="test X" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-cpp/glibmm:2 + dev-cpp/libxmlpp:2.6 + dev-cpp/yaml-cpp:= + dev-libs/boost:= + dev-libs/glib:2 + dev-libs/libinput:= + dev-libs/wayland + dev-util/lttng-ust:= + media-libs/freetype + media-libs/libepoxy + media-libs/libglvnd + media-libs/mesa + sys-apps/util-linux + x11-libs/libXcursor + x11-libs/libdrm + x11-libs/libxcb:= + x11-libs/libxkbcommon + virtual/libudev:= + X? ( x11-libs/libX11 ) +" +DEPEND=" + ${RDEPEND} + media-libs/glm +" +BDEPEND=" + dev-util/gdbus-codegen + virtual/pkgconfig + test? ( + dev-cpp/gtest + dev-util/umockdev + x11-base/xwayland + ) +" + +PATCHES=( + # bug 932786 + "${FILESDIR}/${PN}-2.17.0-remove-debug-flags.patch" + "${FILESDIR}/${P}-remove-tests.patch" +) + +src_prepare() { + cmake_src_prepare + cmake_comment_add_subdirectory examples/ +} + +src_configure() { + local platforms="gbm-kms;atomic-kms;wayland" + use X && platforms="${platforms};x11" + + local mycmakeargs=( + # wlcs is not packaged + -DMIR_ENABLE_WLCS_TESTS=OFF + -DMIR_ENABLE_TESTS="$(usex test)" + -DMIR_FATAL_COMPILE_WARNINGS=OFF + -DMIR_PLATFORM="${platforms}" + ) + use test && mycmakeargs+=( + # likely will not work in build environment + -DMIR_BUILD_PERFORMANCE_TESTS=OFF + -DMIR_BUILD_PLATFORM_TEST_HARNESS=OFF + -DMIR_BUILD_UNIT_TESTS=OFF + ) + cmake_src_configure +}