blob: 80dea9b831a520031c70d05536b45dd2b94d7a4b [file] [log] [blame]
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=5
inherit eutils multilib
DESCRIPTION="Utility to switch between OpenGL implementations"
HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
# Source:
# http://www.opengl.org/registry/api/glext.h
# http://www.opengl.org/registry/api/glxext.h
GLEXT="85"
GLXEXT="34"
MIRROR="https://dev.gentoo.org/~mattst88/distfiles"
SRC_URI="https://dev.gentoo.org/~mgorny/dist/opengl.eselect-${PV}.xz"
# ${MIRROR}/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="*"
IUSE=""
DEPEND="app-arch/xz-utils"
RDEPEND=">=app-admin/eselect-1.2.4"
S=${WORKDIR}
pkg_preinst() {
# we may be moving the config file, so get it early
OLD_IMPL=$(eselect opengl show)
}
pkg_postinst() {
local shopt_save=$(shopt -p nullglob)
shopt -s nullglob
local opengl_dirs=( "${EROOT}"/usr/lib*/opengl )
${shopt_save}
if [[ -n ${opengl_dirs[@]} ]]; then
# delete broken symlinks
find "${opengl_dirs[@]}" -xtype l -delete
# delete empty leftover directories (they confuse eselect)
find "${opengl_dirs[@]}" -depth -type d -empty -exec rmdir -v {} +
fi
if [[ -n "${OLD_IMPL}" && "${OLD_IMPL}" != '(none)' ]] ; then
eselect opengl set "${OLD_IMPL}"
fi
if [[ -f ${EROOT}/etc/env.d/03opengl ]]; then
# remove the old file, moved now
rm -vf "${EROOT}"/etc/env.d/03opengl
fi
}
src_prepare() {
# don't die on Darwin users
if [[ ${CHOST} == *-darwin* ]] ; then
sed -i -e 's/libGL\.so/libGL.dylib/' opengl.eselect-${PV} || die
fi
}
src_install() {
insinto "/usr/share/eselect/modules"
newins opengl.eselect-${PV} opengl.eselect
# doman opengl.eselect.5
}