commit:     9e84772f1984bd5c52aae9e7c06fc2fea3aca82c
Author:     Brahmajit Das <brahmajit.xyz <AT> gmail <DOT> com>
AuthorDate: Mon Jul 31 17:23:26 2023 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Sat Aug 19 12:57:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e84772f

media-libs/libsfml: add 2.6.0

Signed-off-by: Brahmajit Das <brahmajit.xyz <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32122
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 media-libs/libsfml/Manifest                        |  1 +
 .../files/libsfml-2.6.0-supress-werror.patch       | 30 ++++++++++
 media-libs/libsfml/libsfml-2.6.0.ebuild            | 70 ++++++++++++++++++++++
 3 files changed, 101 insertions(+)

diff --git a/media-libs/libsfml/Manifest b/media-libs/libsfml/Manifest
index cbcca3da50d8..4d099784e2e0 100644
--- a/media-libs/libsfml/Manifest
+++ b/media-libs/libsfml/Manifest
@@ -1 +1,2 @@
 DIST libsfml-2.5.1.tar.gz 22868556 BLAKE2B 
b6c70b75a778ffeb141438153fb1e5693c3e92e277919b8f8befe98f55dfd519a67c86504bb5656961b947fcf60758b16a18d5a4ae7585c7c5256f327529ae31
 SHA512 
7aed2fc29d1da98e6c4d598d5c86cf536cb4eb5c2079cdc23bb8e502288833c052579dadbe0ce13ad6461792d959bf6d9660229f54c54cf90a541c88c6b03d59
+DIST libsfml-2.6.0.tar.gz 25493305 BLAKE2B 
205db3aa9fa197dbc29c8b3a74c09651fb9ca8e60bf18e385b8ecfa350d85b31ab33b6d2e61b6cdcfdc3caf77a8af37cbe97445e871b6e688359b320a12a3cea
 SHA512 
aac734e8b0e16936c0238ec792c922923545ec6cf06576bc70004fa1920cd05b4c5e56fbc8a77b650bbe6e202adc39df1d30509dbce95778d04338917a38a87a

diff --git a/media-libs/libsfml/files/libsfml-2.6.0-supress-werror.patch 
b/media-libs/libsfml/files/libsfml-2.6.0-supress-werror.patch
new file mode 100644
index 000000000000..1110b4b89492
--- /dev/null
+++ b/media-libs/libsfml/files/libsfml-2.6.0-supress-werror.patch
@@ -0,0 +1,30 @@
+This primarily to suppress error such as:
+/var/tmp/portage/media-libs/libsfml-2.6.0/work/SFML-2.6.0/src/SFML/Window/Unix/JoystickImpl.cpp:405:36:
 error: implicit conversion changes signedness: 'unsigned long' to 'int' 
[-Werror,-Wsign-conversion]
+            int result = ioctl(fd, JSIOCGNAME(sizeof(name)), name);
+                         ~~~~~     ^~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/linux/joystick.h:59:26: note: expanded from macro 'JSIOCGNAME'
+#define JSIOCGNAME(len)         _IOC(_IOC_READ, 'j', 0x13, len)                
 /* get identifier string */
+                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Even seems like upstream is has removed it with commit
+https://github.com/SFML/SFML/commit/aa82ea132b9296a31922772027ad5d14c1fa381b
+--- a/cmake/CompilerWarnings.cmake
++++ b/cmake/CompilerWarnings.cmake
+@@ -68,16 +68,11 @@ function(set_file_warnings)
+         # -Wimplicit-fallthrough # warn when a missing break causes control 
flow to continue at the next case in a switch statement (disabled until better 
compiler support for explicit fallthrough is available)
+         ${NON_ANDROID_CLANG_AND_GCC_WARNINGS}
+     )
+-    
++
+     # Disable warnings as errors when using Clang on Windows to work around 
deprecation warnings in Windows APIs
+     if(SFML_OS_WINDOWS AND (SFML_COMPILER_CLANG OR SFML_COMPILER_CLANG_CL))
+         set(WARNINGS_AS_ERRORS FALSE)
+     endif()
+-    
+-    if(WARNINGS_AS_ERRORS)
+-        set(CLANG_AND_GCC_WARNINGS ${CLANG_AND_GCC_WARNINGS} -Werror)
+-        set(MSVC_WARNINGS ${MSVC_WARNINGS} /WX)
+-    endif()
+ 
+     set(CLANG_WARNINGS
+         ${CLANG_AND_GCC_WARNINGS}

diff --git a/media-libs/libsfml/libsfml-2.6.0.ebuild 
b/media-libs/libsfml/libsfml-2.6.0.ebuild
new file mode 100644
index 000000000000..5f453650bf72
--- /dev/null
+++ b/media-libs/libsfml/libsfml-2.6.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+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"
+
+LICENSE="ZLIB"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="debug doc examples"
+
+RDEPEND="
+       media-libs/flac:=
+       media-libs/freetype:2
+       media-libs/libjpeg-turbo:=
+       media-libs/libpng:=
+       media-libs/libogg
+       media-libs/libvorbis
+       media-libs/openal
+       sys-libs/zlib
+       virtual/opengl
+       x11-libs/libX11
+       x11-libs/libXrandr
+       x11-libs/libxcb
+       x11-libs/xcb-util-image
+       kernel_linux? ( virtual/libudev:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       doc? ( app-doc/doxygen )
+"
+
+DOCS=( changelog.md readme.md )
+
+S="${WORKDIR}/SFML-${PV}"
+
+src_prepare() {
+       sed -i "s:DESTINATION .*:DESTINATION /usr/share/doc/${PF}:" \
+               doc/CMakeLists.txt || die
+
+       find examples -name CMakeLists.txt -delete || die
+       cmake_src_prepare
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DSFML_BUILD_DOC=$(usex doc)
+               -DSFML_INSTALL_PKGCONFIG_FILES=TRUE
+       )
+
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+
+       insinto /usr/share/cmake/Modules
+       doins cmake/SFMLConfig.cmake.in
+       doins cmake/SFMLConfigDependencies.cmake.in
+
+       if use examples ; then
+               docompress -x /usr/share/doc/${PF}/examples
+               dodoc -r examples
+       fi
+}

Reply via email to