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:
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 & EGL+GLES instead of libX11 & GL/GLX</flag>
+ <flag name="wayland-only">Build wayland version instead of X11 version</flag>
</use>
</pkgmetadata>