logo

overlay

My own overlay for experimentations, use with caution, no support is provided git clone https://hacktivis.me/git/overlay.git
commit: 56f2c3d23d4d02da4a14c38e28f3cebb564ceafa
parent ea2e95c27191cb2784f658e949decb64eefd20e4
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date:   Wed, 10 Mar 2021 07:49:10 +0100

media-libs/freeglut: Fix OpenGL+Wayland

Diffstat:

Amedia-libs/freeglut/files/freeglut-3.2.1-opengl-cmake.patch15+++++++++++++++
Amedia-libs/freeglut/freeglut-3.2.1-r1.ebuild57+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dmedia-libs/freeglut/freeglut-3.2.1.ebuild51---------------------------------------------------
Mmedia-libs/freeglut/metadata.xml2+-
4 files changed, 73 insertions(+), 52 deletions(-)

diff --git a/media-libs/freeglut/files/freeglut-3.2.1-opengl-cmake.patch b/media-libs/freeglut/files/freeglut-3.2.1-opengl-cmake.patch @@ -0,0 +1,15 @@ +diff --git a/CMakeLists.txt.old b/CMakeLists.txt +index 771a52b..50c5cb9 100644 +--- a/CMakeLists.txt.old ++++ b/CMakeLists.txt +@@ -259,8 +259,8 @@ IF(FREEGLUT_GLES) + LIST(APPEND PUBLIC_DEFINITIONS -DFREEGLUT_GLES) + LIST(APPEND LIBS GLESv2 GLESv1_CM EGL) + ELSE() +- FIND_PACKAGE(OpenGL REQUIRED) +- LIST(APPEND LIBS ${OPENGL_gl_LIBRARY}) ++ FIND_PACKAGE(OpenGL COMPONENTS OpenGL REQUIRED) ++ LIST(APPEND LIBS ${OPENGL_opengl_LIBRARY}) + INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR}) + ENDIF() + diff --git a/media-libs/freeglut/freeglut-3.2.1-r1.ebuild b/media-libs/freeglut/freeglut-3.2.1-r1.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit cmake-multilib + +DESCRIPTION="A free OpenGL utility toolkit, the open-sourced alternative to the GLUT library" +HOMEPAGE="http://freeglut.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86" +IUSE="debug static-libs wayland-only gles2-only" + +RDEPEND=" + !wayland-only? ( + >=virtual/glu-9.0-r1[${MULTILIB_USEDEP}] + >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] + >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] + >=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}] + >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}] + >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] + ) + wayland-only? ( + media-libs/mesa[egl,${MULTILIB_USEDEP}] + dev-libs/wayland[${MULTILIB_USEDEP}] + x11-libs/libxkbcommon[${MULTILIB_USEDEP}] + ) + !gles2-only? ( >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] ) + gles2-only? ( media-libs/mesa[gles1,gles2,${MULTILIB_USEDEP}] ) +" +DEPEND="${RDEPEND} + !wayland-only? ( x11-base/xorg-proto )" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${PN}-3.2.1-gcc10-fno-common.patch + "${FILESDIR}"/${PN}-3.2.1-opengl-cmake.patch +) +HTML_DOCS=( doc/. ) + +src_configure() { + local mycmakeargs=( + "-DFREEGLUT_BUILD_DEMOS=OFF" + "-DFREEGLUT_BUILD_STATIC_LIBS=$(usex static-libs ON OFF)" + "-DFREEGLUT_WAYLAND=$(usex wayland-only ON OFF)" + "-DFREEGLUT_GLES=$(usex gles2-only ON OFF)" + ) + cmake-multilib_src_configure +} + +multilib_src_install() { + cmake-utils_src_install + cp "${D}"/usr/$(get_libdir)/pkgconfig/{,free}glut.pc +} diff --git a/media-libs/freeglut/freeglut-3.2.1.ebuild b/media-libs/freeglut/freeglut-3.2.1.ebuild @@ -1,51 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit cmake-multilib - -DESCRIPTION="A free OpenGL utility toolkit, the open-sourced alternative to the GLUT library" -HOMEPAGE="http://freeglut.sourceforge.net/" -SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos" -IUSE="debug static-libs wayland-only" - -RDEPEND="!wayland-only? ( - >=virtual/glu-9.0-r1[${MULTILIB_USEDEP}] - >=virtual/opengl-7.0-r1[${MULTILIB_USEDEP}] - >=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}] - >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}] - >=x11-libs/libXi-1.7.2[${MULTILIB_USEDEP}] - >=x11-libs/libXrandr-1.4.2[${MULTILIB_USEDEP}] - >=x11-libs/libXxf86vm-1.1.3[${MULTILIB_USEDEP}] - ) - wayland-only? ( - media-libs/mesa[egl,gles1,gles2,${MULTILIB_USEDEP}] - dev-libs/wayland[${MULTILIB_USEDEP}] - x11-libs/libxkbcommon[${MULTILIB_USEDEP}] - )" -DEPEND="${RDEPEND} - !wayland-only? ( x11-base/xorg-proto )" -BDEPEND="virtual/pkgconfig" - -PATCHES=( "${FILESDIR}"/${PN}-3.2.1-gcc10-fno-common.patch ) -HTML_DOCS=( doc/. ) - -src_configure() { - local mycmakeargs=( - "-DFREEGLUT_BUILD_DEMOS=OFF" - "-DFREEGLUT_BUILD_STATIC_LIBS=$(usex static-libs ON OFF)" - "-DFREEGLUT_WAYLAND=$(usex wayland-only )" - "-DFREEGLUT_GLES=$(usex wayland-only )" - ) - cmake-multilib_src_configure -} - -multilib_src_install() { - cmake-utils_src_install - cp "${D}"/usr/$(get_libdir)/pkgconfig/{,free}glut.pc -} diff --git a/media-libs/freeglut/metadata.xml b/media-libs/freeglut/metadata.xml @@ -13,6 +13,6 @@ <remote-id type="sourceforge">freeglut</remote-id> </upstream> <use> - <flag name="wayland-only">Link to wayland &amp; EGL+GLES instead of libX11 &amp; GL/GLX</flag> + <flag name="wayland-only">Build wayland version instead of X11 version</flag> </use> </pkgmetadata>