summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-admin/eselect-opengl/eselect-opengl-1.0.3.ebuild')
-rw-r--r--app-admin/eselect-opengl/eselect-opengl-1.0.3.ebuild95
1 files changed, 95 insertions, 0 deletions
diff --git a/app-admin/eselect-opengl/eselect-opengl-1.0.3.ebuild b/app-admin/eselect-opengl/eselect-opengl-1.0.3.ebuild
new file mode 100644
index 000000000000..dcf4519a89a5
--- /dev/null
+++ b/app-admin/eselect-opengl/eselect-opengl-1.0.3.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-admin/eselect-opengl/eselect-opengl-1.0.3.ebuild,v 1.1 2005/10/19 20:22:34 eradicator Exp $
+
+inherit multilib
+
+DESCRIPTION="Utility to change the OpenGL interface being used"
+HOMEPAGE="http://www.gentoo.org/"
+
+# Source:
+# http://oss.sgi.com/projects/ogl-sample/ABI/glext.h
+# http://oss.sgi.com/projects/ogl-sample/ABI/glxext.h
+
+GLEXT="29"
+GLXEXT="11"
+
+SRC_URI="http://dev.gentoo.org/~eradicator/opengl/glext.h-${GLEXT}.bz2
+ http://dev.gentoo.org/~eradicator/opengl/glxext.h-${GLXEXT}.bz2
+ http://dev.gentoo.org/~eradicator/opengl/opengl.eselect-${PV}.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~s390 ~sh ~sparc ~x86"
+IUSE=""
+RESTRICT="multilib-pkg-force"
+
+DEPEND="app-arch/bzip2"
+RDEPEND=">=app-admin/eselect-1.0_rc1"
+
+S=${WORKDIR}
+
+src_unpack() {
+ unpack ${A}
+
+ mv opengl.eselect-${PV} opengl.eselect
+ mv glext.h-${GLEXT} glext.h
+ mv glxext.h-${GLXEXT} glxext.h
+
+ # Small bugfix
+ sed -i 's/ACTION/action/' opengl.eselect
+}
+
+pkg_preinst() {
+ # It needs to be before 04multilib
+ [ -f "${ROOT}/etc/env.d/09opengl" ] && mv ${ROOT}/etc/env.d/09opengl ${ROOT}/etc/env.d/03opengl
+
+ OABI="${ABI}"
+ for ABI in $(get_install_abis); do
+ if [ -e "${ROOT}/usr/$(get_libdir)/opengl/xorg-x11/lib/libMesaGL.so" ]; then
+ einfo "Removing libMesaGL.so from xorg-x11 profile. See bug #47598."
+ rm -f ${ROOT}/usr/$(get_libdir)/opengl/xorg-x11/lib/libMesaGL.so
+ fi
+ if [ -e "${ROOT}/usr/$(get_libdir)/libMesaGL.so" ]; then
+ einfo "Removing libMesaGL.so from /usr/$(get_libdir). See bug #47598."
+ rm -f ${ROOT}/usr/$(get_libdir)/libMesaGL.so
+ fi
+
+ for f in ${ROOT}/usr/$(get_libdir)/libGL.so.* ${ROOT}/usr/$(get_libdir)/libGLcore.so.* ${ROOT}/usr/$(get_libdir)/libnvidia-tls* ${ROOT}/usr/$(get_libdir)/tls/libnvidia-tls* ; do
+ [[ -e ${f} ]] && rm -f ${f}
+ done
+ done
+ ABI="${OABI}"
+ unset OABI
+}
+
+pkg_postinst() {
+ local impl="$(eselect opengl show)"
+ if [[ -n "${impl}" ]] ; then
+ eselect opengl set "${impl}"
+ fi
+}
+
+src_install() {
+ insinto /usr/share/eselect/modules
+ doins opengl.eselect
+
+ # MULTILIB-CLEANUP: Fix this when FEATURES=multilib-pkg is in portage
+ local MLTEST=$(type dyn_unpack)
+ if has_multilib_profile && [ "${MLTEST/set_abi}" = "${MLTEST}" ]; then
+ OABI="${ABI}"
+ for ABI in $(get_install_abis); do
+ # Install default glext.h
+ insinto /usr/$(get_libdir)/opengl/global/include
+ doins ${WORKDIR}/glext.h || die
+ doins ${WORKDIR}/glxext.h || die
+ done
+ ABI="${OABI}"
+ unset OABI
+ else
+ # Install default glext.h
+ insinto /usr/$(get_libdir)/opengl/global/include
+ doins ${WORKDIR}/glext.h || die
+ doins ${WORKDIR}/glxext.h || die
+ fi
+}