# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit cmake virtualx DESCRIPTION="Simple and Fast Multimedia Library (SFML)" HOMEPAGE="https://www.sfml-dev.org/ https://github.com/SFML/SFML" SRC_URI="https://github.com/SFML/SFML/archive/${PV}.tar.gz -> ${P}.tar.gz" S="${WORKDIR}/SFML-${PV}" LICENSE="ZLIB" # Vendored header dependencies: # glad LICENSE+=" Apache-2.0 || ( WTFPL-2 CC0-1.0 )" # miniaudio LICENSE+=" || ( MIT-0 public-domain )" # minimp3 LICENSE+=" CC0-1.0" # stb_image LICENSE+=" || ( MIT public-domain )" # vulkan LICENSE+=" Apache-2.0" SLOT="0/$(ver_cut 1-2)" KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" IUSE="doc examples test" RESTRICT="!test? ( test )" RDEPEND=" media-libs/flac:= media-libs/freetype:2 media-libs/libogg media-libs/libvorbis virtual/opengl x11-libs/libX11 x11-libs/libXcursor x11-libs/libXi x11-libs/libXrandr x11-libs/libxcb x11-libs/xcb-util-image kernel_linux? ( virtual/libudev:= ) " DEPEND=" ${RDEPEND} x11-base/xorg-proto " BDEPEND=" doc? ( app-text/doxygen ) test? ( >=dev-cpp/catch-3.7.0 ) " DOCS=( changelog.md readme.md ) PATCHES=( "${FILESDIR}"/libsfml-3.0.0-catch-depend.patch ) src_configure() { local mycmakeargs=( -DSFML_BUILD_DOC=$(usex doc) -DSFML_USE_SYSTEM_DEPS=ON -DSFML_INSTALL_PKGCONFIG_FILES=ON -DSFML_PKGCONFIG_INSTALL_DIR="${EPREFIX}/usr/$(get_libdir)/pkgconfig/" -DSFML_BUILD_TEST_SUITE=$(usex test) ) cmake_src_configure } src_compile() { cmake_src_compile use doc && cmake_build doc } src_test() { local CMAKE_SKIP_TESTS=( # Requires a more capable graphical enviroment (opengl?) "sf::Window" # Requires a running pulseaudio daemon to query "sf::Sound" "sf::SoundStream" # Network sandbox "sf::IpAddress" ) virtx cmake_src_test } src_install() { cmake_src_install if use examples ; then docompress -x /usr/share/doc/${PF}/examples dodoc -r examples fi }