summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomas Chvatal <scarabeus@gentoo.org>2009-09-19 15:13:58 +0000
committerTomas Chvatal <scarabeus@gentoo.org>2009-09-19 15:13:58 +0000
commit5660e4cbc6af53a8e42ef73cbd7d1dde6e363b98 (patch)
tree0fd5cb3c01bf7e820675658396187ffe6f10c90b /media-libs/mesa
parentCleanup. Removal of old xorg versions. (diff)
downloadhistorical-5660e4cbc6af53a8e42ef73cbd7d1dde6e363b98.tar.gz
historical-5660e4cbc6af53a8e42ef73cbd7d1dde6e363b98.tar.bz2
historical-5660e4cbc6af53a8e42ef73cbd7d1dde6e363b98.zip
Cleanup. Removal of old xorg versions.
Package-Manager: portage-2.2_rc38/cvs/Linux i686
Diffstat (limited to 'media-libs/mesa')
-rw-r--r--media-libs/mesa/ChangeLog6
-rw-r--r--media-libs/mesa/Manifest16
-rw-r--r--media-libs/mesa/mesa-6.5.2-r1.ebuild333
-rw-r--r--media-libs/mesa/mesa-7.0.3.ebuild347
4 files changed, 16 insertions, 686 deletions
diff --git a/media-libs/mesa/ChangeLog b/media-libs/mesa/ChangeLog
index 6d9c96bab8b6..d8fde9a90428 100644
--- a/media-libs/mesa/ChangeLog
+++ b/media-libs/mesa/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for media-libs/mesa
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v 1.230 2009/09/04 15:26:34 remi Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v 1.231 2009/09/19 15:13:58 scarabeus Exp $
+
+ 19 Sep 2009; Tomáš Chvátal <scarabeus@gentoo.org>
+ -mesa-6.5.2-r1.ebuild, -mesa-7.0.3.ebuild:
+ Cleanup. Removal of old xorg versions.
*mesa-7.5.1 (04 Sep 2009)
diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest
index 754ef2e2f48d..b5f60e623b93 100644
--- a/media-libs/mesa/Manifest
+++ b/media-libs/mesa/Manifest
@@ -1,8 +1,9 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
AUX 6.5.2-i965-wine-fix.patch 2888 RMD160 e899ac128933eb1a65e5c79de97408679beb2a50 SHA1 741221fba69b3891665e16da5baf6e66be62449d SHA256 bc19f4b5ce44a90c6b2aeab2c1148200539791ff9d0c60c5ffc2d4d8fe5fee78
AUX lib/libGL.la 729 RMD160 b89950051dfa9d02824eb0b15858855016f92dcc SHA1 32c0aabf00f1590aa7aeca75955b80a04c6c7f15 SHA256 f5e62da033bfb72a56d6290d6030df4d5f687acea456a8f31a765c0c4f532606
AUX lib/libGLU.la 743 RMD160 34e3adc8e0422a5477a9eaa0fee141e577afeee4 SHA1 c131df3a61b7f193e8a8cea3feeb1f9ff0f1ea7d SHA256 0a8efb7cd557598607ede88af6442574a6999689ddbb7f0f3cbaf53734bfa284
-DIST MesaLib-6.5.2.tar.bz2 3295166 RMD160 9a92d69110c066ae6734bcaafb78f222ac2df6d3 SHA1 ba860bb6ee57c02202342dfd5927464a068ea18f SHA256 137f50a30461d51eb9af5aac737bc788d536354cf47b26129b97bde6e41fb85f
-DIST MesaLib-7.0.3.tar.bz2 3389327 RMD160 1672be9d235f19c779c42ea4f443995b1844c836 SHA1 49b92094a25f189b411f393174ee666e73dddf36 SHA256 ebdf3448eac8abb56bbfc0b7c015efce8e5d88f10ee3123dcc62c1ff47b62d22
DIST MesaLib-7.1.tar.bz2 3338885 RMD160 e03960762a35eeb56755105fda5ba1b580c7dacc SHA1 0b946a8a4334ca22baf3e0fe583f88187e9d74fa SHA256 d63a29bf206a5304b3c319a47fa16892db3d2e14737f2c534acf1eb220e9c550
DIST MesaLib-7.2.tar.bz2 3341919 RMD160 1e7c2cc6aa27ebaf7e726ac2086c10a5155d0832 SHA1 a6dce814cc56a562890ab79cf4e205f62459a29c SHA256 a9cc62ab760afeebcb1319a193508734a2d470cab8effab2776a2d3c65bd9cd2
DIST MesaLib-7.3.tar.bz2 3368281 RMD160 ee0b06d375d1ea91dc26ae96c807918e1d3cb7c8 SHA1 24e6278a95f5913c6a6230ab50c32c5cb13b84dc SHA256 64e6e2ea556c44af7eaeea083a514a23e4f896b7856da4f006125ffc30c4379b
@@ -12,8 +13,6 @@ DIST MesaLib-7.5.tar.bz2 4402222 RMD160 63f18e4c801d9a87961ef478cb056980c38c2720
DIST mesa-7.3-gentoo-patches-01.tar.bz2 34342 RMD160 547e3d1e8a72cd7df13bf699c181a5f8d36bff33 SHA1 51310d802ad1ee8b660fc7cf77c37b5478f3794a SHA256 e3d27046f73b6fc3d89e06fdfce9d065fa79705f59950b65350fa55bd539e56a
DIST mesa-7.5-gentoo-patches-01.tar.bz2 2257 RMD160 1a3325e1548e290dd06a6663b9f59405be8f4529 SHA1 5c4f83622593d1d8c5d275e31d74a7896805d918 SHA256 9e21a1a225292a21436569f010600e87e39561ae945072905dacf5add158d2cc
DIST mesa-7.5-gentoo-patches-02.tar.bz2 32508 RMD160 114a243b3f3b2b76e9924ffde36af93890c68a3a SHA1 498890941840017e3c7a4f93341b85b373da5e53 SHA256 847a8e388741e9d30c181113be55e2ae845251aff735b6c3ec8be2aa8322e3d4
-EBUILD mesa-6.5.2-r1.ebuild 9095 RMD160 1fa3608b454b5d54d33d538329ed7d23670a1773 SHA1 3718811497844756f136f1f4b8e8ae1da0727212 SHA256 affc70f27691d575aef42c7f9f0a89d8abd75497bcaf324cb53ad56cfd5fcdb7
-EBUILD mesa-7.0.3.ebuild 10140 RMD160 14b25168416b1f61b1e67d70d1e55ef8f34ede10 SHA1 217cd7beca39d30c9701db48629703307417d9de SHA256 7f52a916190562886251df4bfa7b0c98c8e93b431ff5b9ace3cf2beff9df10de
EBUILD mesa-7.1.ebuild 7237 RMD160 9cf2b1f7023071ef801019c3a08334b01668bf8d SHA1 676cf950fdf14f456a97ec31d9786b4d5be8dba0 SHA256 4ec3a9067bf52019442d6bd42649fb3f7be0ab1a93cabee9515e2a076cd1b370
EBUILD mesa-7.2.ebuild 7176 RMD160 b386204b4fccc206356c1b926e000f8f5c42925d SHA1 5734c06cd36e31611876349c06f0227e43cdc5a9 SHA256 4e40d7ded71ace962a90fc886b1ecb8d85f39fe21c036dbb69564aba1f5d4b81
EBUILD mesa-7.3-r1.ebuild 7231 RMD160 b3f7cf0d219fb18a73a6f9f0aec6fbed90709f57 SHA1 43fab17445240eb6c70cf942d0588a9cd1f7a684 SHA256 908443dbf80a9c958cfc9025872cd37748f1df5c228705530ed9931e5784360d
@@ -21,5 +20,12 @@ EBUILD mesa-7.4.4.ebuild 7722 RMD160 019abf0239996dfb0e8777f1fa43046b08d63397 SH
EBUILD mesa-7.5-r2.ebuild 7715 RMD160 d5d5858886421c05e372bb9337db87e44f0f0d85 SHA1 2e979f1530912a98896af6a355bfb0d792f1de35 SHA256 8f0dd57a94fe02916a00ac5afc83a9121f7611ccb631534f459788ba6b61ae02
EBUILD mesa-7.5-r3.ebuild 7715 RMD160 e2b692754cace78d7986f9fff6d769f5122c585d SHA1 3cb2a40ff74434c53774ed540c58598430410128 SHA256 9eefd05d8b71fca6f209b6d9beaf2508fbc27f1bfb2f0bd7a6640e48846a8206
EBUILD mesa-7.5.1.ebuild 7736 RMD160 4816140ab2bef75626ce31789a9fd354d6697e98 SHA1 432796920ec2e5b45897b30d619556fbe8334bce SHA256 9f02461e9896802dc08736ff20fbf61673b7a8a18d66b1299fad859be128294b
-MISC ChangeLog 41821 RMD160 c0b030b5646ca51c64dad73d9ac67f42f847148e SHA1 3b964b1d1864522d9e1c6a9d027fbc1811b9acfa SHA256 7c7b90ab4c7b59298e9a8c90023a57192cf70a839c6ab60e60074a98c851786b
+MISC ChangeLog 41968 RMD160 f8c3d79d69e164fc067f5e9ebc91ddcba33817a1 SHA1 6b25c50bd8e44a6899724d4631e0d44e4a08d18e SHA256 2439ba3679eb74e35951752cc1a033f0a922cb7b7dc36f5e6bd2a8717f812e4b
MISC metadata.xml 251 RMD160 e6e718c1f8c8ab33331fcdc2ed16dc7da35d04aa SHA1 a753e5190a6008a77db021b70d5962cbc2e9e488 SHA256 689bc8ac5839e4eb6173899024bf1f6169a5d3f3a1e82e4cdd80011e3e43a8de
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.11 (GNU/Linux)
+
+iEYEARECAAYFAkq09WkACgkQHB6c3gNBRYcIaACfdZ/MKiCOV7f5yw5OfGiUbczc
+2jcAoK3Vh/vDBGmgydroaQs/uo1tEzQr
+=3Yus
+-----END PGP SIGNATURE-----
diff --git a/media-libs/mesa/mesa-6.5.2-r1.ebuild b/media-libs/mesa/mesa-6.5.2-r1.ebuild
deleted file mode 100644
index 06a086275dd7..000000000000
--- a/media-libs/mesa/mesa-6.5.2-r1.ebuild
+++ /dev/null
@@ -1,333 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-6.5.2-r1.ebuild,v 1.21 2008/10/22 15:43:18 remi Exp $
-
-inherit eutils toolchain-funcs multilib flag-o-matic portability
-
-OPENGL_DIR="xorg-x11"
-
-MY_PN="${PN/m/M}"
-MY_P="${MY_PN}-${PV}"
-MY_SRC_P="${MY_PN}Lib-${PV}"
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-SRC_URI="mirror://sourceforge/mesa3d/${MY_SRC_P}.tar.bz2"
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd"
-IUSE_VIDEO_CARDS="
- video_cards_intel
- video_cards_mach64
- video_cards_mga
- video_cards_none
- video_cards_r128
- video_cards_radeon
- video_cards_s3virge
- video_cards_savage
- video_cards_sis
- video_cards_sunffb
- video_cards_tdfx
- video_cards_trident
- video_cards_via"
-IUSE="${IUSE_VIDEO_CARDS}
- debug
- doc
- pic
- motif
- nptl
- xcb
- kernel_FreeBSD"
-
-RDEPEND="app-admin/eselect-opengl
- dev-libs/expat
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXxf86vm
- x11-libs/libXi
- x11-libs/libXmu
- >=x11-libs/libdrm-2.2
- x11-libs/libICE
- motif? ( x11-libs/openmotif )
- doc? ( app-doc/opengl-manpages )
- !<=x11-base/xorg-x11-6.9
- xcb? ( x11-libs/libxcb )"
-DEPEND="${RDEPEND}
- dev-util/pkgconfig
- x11-misc/makedepend
- x11-proto/inputproto
- x11-proto/xextproto
- !hppa? ( x11-proto/xf86driproto )
- x11-proto/xf86vidmodeproto
- >=x11-proto/glproto-1.4.8
- motif? ( x11-proto/printproto )"
-
-S="${WORKDIR}/${MY_P}"
-
-# Think about: ggi, svga, fbcon, no-X configs
-
-pkg_setup() {
- if use xcb; then
- if ! built_with_use x11-libs/libX11 xcb; then
- msg="You must build libX11 with xcb enabled."
- eerror ${msg}
- die ${msg}
- fi
- fi
-
- if use debug; then
- strip-flags
- append-flags -g
- fi
-
- append-flags -fno-strict-aliasing
-
- # gcc 4.2 has buggy ivopts
- if [[ $(gcc-version) = "4.2" ]]; then
- append-flags -fno-ivopts
- fi
-
- if use x86-fbsd; then
- CONFIG="freebsd-dri-x86"
- elif use amd64-fbsd; then
- CONFIG="freebsd-dri-amd64"
- elif use kernel_FreeBSD; then
- CONFIG="freebsd-dri"
- elif use x86; then
- CONFIG="linux-dri-x86"
- elif use amd64; then
- [[ ${ABI} == "amd64" ]] && CONFIG="linux-dri-x86-64"
- [[ ${ABI} == "x86" ]] && CONFIG="linux-dri-x86"
- elif use ppc; then
- CONFIG="linux-dri-ppc"
- else
- CONFIG="linux-dri"
- fi
-}
-
-src_unpack() {
- HOSTCONF="${S}/configs/${CONFIG}"
-
- unpack ${A}
- cd "${S}"
-
- epatch "${FILESDIR}/${PV}-i965-wine-fix.patch"
-
- # FreeBSD 6.* doesn't have posix_memalign().
- [[ ${CHOST} == *-freebsd6.* ]] && sed -i -e "s/-DHAVE_POSIX_MEMALIGN//" configs/freebsd{,-dri}
-
- # Don't compile debug code with USE=-debug - bug #125004
- if ! use debug; then
- einfo "Removing DO_DEBUG defs in dri drivers..."
- find src/mesa/drivers/dri -name *.[hc] -exec egrep -l "\#define\W+DO_DEBUG\W+1" {} \; | xargs sed -i -re "s/\#define\W+DO_DEBUG\W+1/\#define DO_DEBUG 0/" ;
- fi
-
- # Set up libdir
- echo "LIB_DIR = $(get_libdir)" >> "${HOSTCONF}"
-
- # Set default dri drivers directory
- echo 'DRI_DRIVER_SEARCH_DIR = /usr/$(LIB_DIR)/dri' >> "${HOSTCONF}"
-
- # Do we want thread-local storage (TLS)?
- if use nptl; then
- echo "ARCH_FLAGS += -DGLX_USE_TLS" >> "${HOSTCONF}"
- fi
-
- echo "X11_INCLUDES = `pkg-config --cflags-only-I x11`" >> "${HOSTCONF}"
- if use xcb; then
- echo "DEFINES += -DUSE_XCB" >> "${HOSTCONF}"
- echo "X11_INCLUDES += `pkg-config --cflags-only-I xcb` `pkg-config --cflags-only-I x11-xcb` `pkg-config --cflags-only-I xcb-glx`" >> "${HOSTCONF}"
- echo "GL_LIB_DEPS += `pkg-config --libs xcb` `pkg-config --libs x11-xcb` `pkg-config --libs xcb-glx`" >> "${HOSTCONF}"
- fi
-
- # Configurable DRI drivers
- if use video_cards_intel; then
- add_drivers i810 i915 i915tex i965
- fi
- if use video_cards_mach64; then
- add_drivers mach64
- fi
- if use video_cards_mga; then
- add_drivers mga
- fi
- if use video_cards_r128; then
- add_drivers r128
- fi
- if use video_cards_radeon; then
- add_drivers radeon r200 r300
- fi
- if use video_cards_s3virge; then
- add_drivers s3v
- fi
- if use video_cards_savage; then
- add_drivers savage
- fi
- if use video_cards_sis; then
- add_drivers sis
- fi
- if use video_cards_sunffb; then
- add_drivers ffb
- fi
- if use video_cards_tdfx; then
- add_drivers tdfx
- fi
- if use video_cards_trident; then
- add_drivers trident
- fi
- if use video_cards_via; then
- add_drivers unichrome
- fi
-
- # Set drivers to everything on which we ran add_drivers()
- echo "DRI_DIRS = ${DRI_DRIVERS}" >> "${HOSTCONF}"
-
- if use pic; then
- einfo "Deactivating assembly code for pic build"
- echo "ASM_FLAGS =" >> "${HOSTCONF}"
- echo "ASM_SOURCES =" >> "${HOSTCONF}"
- echo "ASM_API =" >> "${HOSTCONF}"
- fi
-
- if use sparc; then
- einfo "Sparc assembly code is not working; deactivating"
- echo "ASM_FLAGS =" >> "${HOSTCONF}"
- echo "ASM_SOURCES =" >> "${HOSTCONF}"
- fi
-
- # Replace hardcoded /usr/X11R6 with this
- echo "EXTRA_LIB_PATH = `pkg-config --libs-only-L x11`" >> "${HOSTCONF}"
-
- echo 'CFLAGS = $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)' >> "${HOSTCONF}"
- echo "OPT_FLAGS = ${CFLAGS}" >> "${HOSTCONF}"
- echo "CC = $(tc-getCC)" >> "${HOSTCONF}"
- echo "CXX = $(tc-getCXX)" >> "${HOSTCONF}"
- # bug #110840 - Build with PIC, since it hasn't been shown to slow it down
- echo "PIC_FLAGS = -fPIC" >> "${HOSTCONF}"
-
- # Removed glut, since we have separate freeglut/glut ebuilds
- # Remove EGL, since Brian Paul says it's not ready for a release
- echo "SRC_DIRS = glx/x11 mesa glu glw" >> "${HOSTCONF}"
-
- # Get rid of glut includes
- rm -f "${S}"/include/GL/glut*h
-
- # r200 breaks without this, since it's the only EGL-enabled driver so far
- echo "USING_EGL = 0" >> "${HOSTCONF}"
-
- # Don't build EGL demos. EGL isn't ready for release, plus they produce a
- # circular dependency with glut.
- echo "PROGRAM_DIRS =" >> "${HOSTCONF}"
-
- # Documented in configs/default
- if use motif; then
- # Add -lXm
- echo "GLW_LIB_DEPS += -lXm" >> "${HOSTCONF}"
- # Add GLwMDrawA.c
- echo "GLW_SOURCES += GLwMDrawA.c" >> "${HOSTCONF}"
- fi
-}
-
-src_compile() {
- emake -j1 ${CONFIG} || die "Build failed"
-}
-
-src_install() {
- dodir /usr
- make \
- INSTALL_DIR="${D}/usr" \
- DRI_DRIVER_INSTALL_DIR="${D}/usr/\$(LIB_DIR)/dri" \
- INCLUDE_DIR="${D}/usr/include" \
- install || die "Installation failed"
-
- if ! use motif; then
- rm "${D}"/usr/include/GL/GLwMDrawA.h
- fi
-
- # Don't install private headers
- rm "${D}"/usr/include/GL/GLw*P.h
-
- fix_opengl_symlinks
- dynamic_libgl_install
-
- # Install libtool archives
- insinto /usr/$(get_libdir)
- # (#67729) Needs to be lib, not $(get_libdir)
- doins "${FILESDIR}"/lib/libGLU.la
- sed -e "s:\${libdir}:$(get_libdir):g" "${FILESDIR}"/lib/libGL.la \
- > "${D}"/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la
-
- # On *BSD libcs dlopen() and similar functions are present directly in
- # libc.so and does not require linking to libdl. portability eclass takes
- # care of finding the needed library (if needed) witht the dlopen_lib
- # function.
- sed -i -e 's:-ldl:'$(dlopen_lib)':g' \
- "${D}"/usr/$(get_libdir)/libGLU.la \
- "${D}"/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la
-
- # Create the two-number versioned libs (.so.#.#), since only .so.# and
- # .so.#.#.# were made
- dosym libGLU.so.1.3.060502 /usr/$(get_libdir)/libGLU.so.1.3
- dosym libGLw.so.1.0.0 /usr/$(get_libdir)/libGLw.so.1.0
-
- # libGLU doesn't get the plain .so symlink either
- dosym libGLU.so.1 /usr/$(get_libdir)/libGLU.so
-
- # Figure out why libGL.so.1.5 is built (directfb), and why it's linked to
- # as the default libGL.so.1
-}
-
-pkg_postinst() {
- switch_opengl_implem
-}
-
-fix_opengl_symlinks() {
- # Remove invalid symlinks
- local LINK
- for LINK in $(find "${D}"/usr/$(get_libdir) \
- -name libGL\.* -type l); do
- rm -f ${LINK}
- done
- # Create required symlinks
- if [[ ${CHOST} == *-freebsd* ]]; then
- # FreeBSD doesn't use major.minor versioning, so the library is only
- # libGL.so.1 and no libGL.so.1.2 is ever used there, thus only create
- # libGL.so symlink and leave libGL.so.1 being the real thing
- dosym libGL.so.1 /usr/$(get_libdir)/libGL.so
- else
- dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so
- dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so.1
- fi
-}
-
-dynamic_libgl_install() {
- # next section is to setup the dynamic libGL stuff
- ebegin "Moving libGL and friends for dynamic switching"
- dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include}
- local x=""
- for x in "${D}"/usr/$(get_libdir)/libGL.so* \
- "${D}"/usr/$(get_libdir)/libGL.la \
- "${D}"/usr/$(get_libdir)/libGL.a; do
- if [[ -f ${x} || -L ${x} ]]; then
- # libGL.a cause problems with tuxracer, etc
- mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib
- fi
- done
- # glext.h added for #54984
- for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
- if [[ -f ${x} || -L ${x} ]]; then
- mv -f "${x}" "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include
- fi
- done
- eend 0
-}
-
-switch_opengl_implem() {
- # Switch to the xorg implementation.
- # Use new opengl-update that will not reset user selected
- # OpenGL interface ...
- echo
- eselect opengl set --use-old ${OPENGL_DIR}
-}
-
-add_drivers() {
- DRI_DRIVERS="${DRI_DRIVERS} $@"
-}
diff --git a/media-libs/mesa/mesa-7.0.3.ebuild b/media-libs/mesa/mesa-7.0.3.ebuild
deleted file mode 100644
index ffab1ac7bc15..000000000000
--- a/media-libs/mesa/mesa-7.0.3.ebuild
+++ /dev/null
@@ -1,347 +0,0 @@
-# Copyright 1999-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.0.3.ebuild,v 1.6 2008/10/22 15:43:18 remi Exp $
-
-MY_PN="${PN/m/M}"
-MY_P="${MY_PN}-${PV/_/-}"
-MY_SRC_P="${MY_PN}Lib-${PV/_/-}"
-
-GIT=
-if [[ $PV = *_rc* ]]; then
- SRC_URI="http://www.mesa3d.org/beta/${MY_SRC_P}.tar.gz"
-elif [[ $PV = 9999 ]]; then
- SRC_URI=""
- GIT="git"
- EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
-else
- SRC_URI="mirror://sourceforge/mesa3d/${MY_SRC_P}.tar.bz2"
-fi
-
-inherit eutils toolchain-funcs multilib flag-o-matic ${GIT} portability versionator
-
-OPENGL_DIR="xorg-x11"
-
-DESCRIPTION="OpenGL-like graphic library for Linux"
-HOMEPAGE="http://mesa3d.sourceforge.net/"
-LICENSE="LGPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
-IUSE_VIDEO_CARDS="
- video_cards_intel
- video_cards_mach64
- video_cards_mga
- video_cards_none
- video_cards_r128
- video_cards_radeon
- video_cards_s3virge
- video_cards_savage
- video_cards_sis
- video_cards_sunffb
- video_cards_tdfx
- video_cards_trident
- video_cards_via"
-IUSE="${IUSE_VIDEO_CARDS}
- debug
- doc
- pic
- motif
- nptl
- xcb
- kernel_FreeBSD"
-
-RDEPEND="app-admin/eselect-opengl
- dev-libs/expat
- x11-libs/libX11
- x11-libs/libXext
- x11-libs/libXxf86vm
- x11-libs/libXi
- x11-libs/libXmu
- x11-libs/libXdamage
- =x11-libs/libdrm-2.3*
- x11-libs/libICE
- motif? ( x11-libs/openmotif )
- doc? ( app-doc/opengl-manpages )
- !<=x11-base/xorg-x11-6.9
- xcb? ( x11-libs/libxcb )"
-DEPEND="${RDEPEND}
- !<=x11-proto/xf86driproto-2.0.3
- dev-util/pkgconfig
- x11-misc/makedepend
- x11-proto/inputproto
- x11-proto/xextproto
- !hppa? ( x11-proto/xf86driproto )
- x11-proto/xf86vidmodeproto
- >=x11-proto/glproto-1.4.8
- motif? ( x11-proto/printproto )"
-
-S="${WORKDIR}/${MY_P}"
-
-# Think about: ggi, svga, fbcon, no-X configs
-
-pkg_setup() {
- if use xcb; then
- if ! built_with_use x11-libs/libX11 xcb; then
- msg="You must build libX11 with xcb enabled."
- eerror ${msg}
- die ${msg}
- fi
- fi
-
- if use debug; then
- strip-flags
- append-flags -g
- fi
-
- append-flags -fno-strict-aliasing
-
- # Recommended by upstream. Since people shouldn't be setting this on
- # a system level, we set this in this package to be sure it gets it.
- append-flags -ffast-math
-
- # gcc 4.2 has buggy ivopts
- if [[ $(gcc-version) = "4.2" ]]; then
- append-flags -fno-ivopts
- fi
-
- if use x86-fbsd; then
- CONFIG="freebsd-dri-x86"
- elif use amd64-fbsd; then
- CONFIG="freebsd-dri-amd64"
- elif use kernel_FreeBSD; then
- CONFIG="freebsd-dri"
- elif use x86; then
- CONFIG="linux-dri-x86"
- elif use amd64; then
- [[ ${ABI} == "amd64" ]] && CONFIG="linux-dri-x86-64"
- [[ ${ABI} == "x86" ]] && CONFIG="linux-dri-x86"
- elif use ppc; then
- CONFIG="linux-dri-ppc"
- else
- CONFIG="linux-dri"
- fi
-}
-
-src_unpack() {
- HOSTCONF="${S}/configs/${CONFIG}"
-
- if [[ $PV = 9999 ]]; then
- git_src_unpack
- else
- unpack ${A}
- fi
- cd "${S}"
-
- # FreeBSD 6.* doesn't have posix_memalign().
- [[ ${CHOST} == *-freebsd6.* ]] && sed -i -e "s/-DHAVE_POSIX_MEMALIGN//" configs/freebsd{,-dri}
-
- # Don't compile debug code with USE=-debug - bug #125004
- if ! use debug; then
- einfo "Removing DO_DEBUG defs in dri drivers..."
- find src/mesa/drivers/dri -name *.[hc] -exec egrep -l "\#define\W+DO_DEBUG\W+1" {} \; | xargs sed -i -re "s/\#define\W+DO_DEBUG\W+1/\#define DO_DEBUG 0/" ;
- fi
-
- # Set up libdir
- echo "LIB_DIR = $(get_libdir)" >> "${HOSTCONF}"
-
- # Set default dri drivers directory
- echo 'DRI_DRIVER_SEARCH_DIR = /usr/$(LIB_DIR)/dri' >> "${HOSTCONF}"
-
- # Do we want thread-local storage (TLS)?
- if use nptl; then
- echo "ARCH_FLAGS += -DGLX_USE_TLS" >> "${HOSTCONF}"
- fi
-
- echo "X11_INCLUDES = `pkg-config --cflags-only-I x11`" >> "${HOSTCONF}"
- if use xcb; then
- echo "DEFINES += -DUSE_XCB" >> "${HOSTCONF}"
- echo "X11_INCLUDES += `pkg-config --cflags-only-I xcb` `pkg-config --cflags-only-I x11-xcb` `pkg-config --cflags-only-I xcb-glx`" >> "${HOSTCONF}"
- echo "GL_LIB_DEPS += `pkg-config --libs xcb` `pkg-config --libs x11-xcb` `pkg-config --libs xcb-glx`" >> "${HOSTCONF}"
- fi
-
- # Configurable DRI drivers
- driver_enable video_cards_intel i810 i915 i915tex i965
- driver_enable video_cards_mach64 mach64
- driver_enable video_cards_mga mga
- driver_enable video_cards_r128 r128
- driver_enable video_cards_radeon radeon r200 r300
- driver_enable video_cards_s3virge s3v
- driver_enable video_cards_savage savage
- driver_enable video_cards_sis sis
- driver_enable video_cards_sunffb ffb
- driver_enable video_cards_tdfx tdfx
- driver_enable video_cards_trident trident
- driver_enable video_cards_via unichrome
-
- # Set drivers to everything on which we ran driver_enable()
- echo "DRI_DIRS = ${DRI_DRIVERS}" >> "${HOSTCONF}"
-
- if use pic; then
- einfo "Deactivating assembly code for pic build"
- echo "ASM_FLAGS =" >> "${HOSTCONF}"
- echo "ASM_SOURCES =" >> "${HOSTCONF}"
- echo "ASM_API =" >> "${HOSTCONF}"
- fi
-
- if use sparc; then
- einfo "Sparc assembly code is not working; deactivating"
- echo "ASM_FLAGS =" >> "${HOSTCONF}"
- echo "ASM_SOURCES =" >> "${HOSTCONF}"
- fi
-
- # Replace hardcoded /usr/X11R6 with this
- echo "EXTRA_LIB_PATH = `pkg-config --libs-only-L x11`" >> "${HOSTCONF}"
-
- echo 'CFLAGS = $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)' >> "${HOSTCONF}"
- echo "OPT_FLAGS = ${CFLAGS}" >> "${HOSTCONF}"
- echo "CC = $(tc-getCC)" >> "${HOSTCONF}"
- echo "CXX = $(tc-getCXX)" >> "${HOSTCONF}"
- # bug #110840 - Build with PIC, since it hasn't been shown to slow it down
- echo "PIC_FLAGS = -fPIC" >> "${HOSTCONF}"
-
- # Removed glut, since we have separate freeglut/glut ebuilds
- # Remove EGL, since Brian Paul says it's not ready for a release
- echo "SRC_DIRS = glx/x11 mesa glu glw" >> "${HOSTCONF}"
-
- # Get rid of glut includes
- rm -f "${S}"/include/GL/glut*h
-
- # Documented in configs/default
- if use motif; then
- # Add -lXm
- echo "GLW_LIB_DEPS += -lXm" >> "${HOSTCONF}"
- # Add GLwMDrawA.c
- echo "GLW_SOURCES += GLwMDrawA.c" >> "${HOSTCONF}"
- fi
-
- # Shut up pointless warnings
-# echo "MKDEP = gcc -M" >> "${HOSTCONF}"
-# echo "MKDEP_OPTIONS = -MF depend" >> "${HOSTCONF}"
- echo "MKDEP_OPTIONS = -fdepend -I$(gcc-config -L)/include" >> "${HOSTCONF}"
- echo "INSTALL_DIR = /usr" >> "${HOSTCONF}"
- echo 'DRI_DRIVER_INSTALL_DIR = /usr/$(LIB_DIR)/dri' >> "${HOSTCONF}"
-}
-
-src_compile() {
- emake -j1 ${CONFIG} || die "Build failed"
-}
-
-src_install() {
- dodir /usr
- emake -j1 \
- DESTDIR="${D}" \
- install || die "Installation failed"
-
- if ! use motif; then
- rm "${D}"/usr/include/GL/GLwMDrawA.h
- fi
-
- # Don't install private headers
- rm -f "${D}"/usr/include/GL/GLw*P.h
-
- fix_opengl_symlinks
- dynamic_libgl_install
-
- # Install libtool archives
- insinto /usr/$(get_libdir)
- # (#67729) Needs to be lib, not $(get_libdir)
- doins "${FILESDIR}"/lib/libGLU.la
- sed -e "s:\${libdir}:$(get_libdir):g" "${FILESDIR}"/lib/libGL.la \
- > "${D}"/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la
-
- # On *BSD libcs dlopen() and similar functions are present directly in
- # libc.so and does not require linking to libdl. portability eclass takes
- # care of finding the needed library (if needed) witht the dlopen_lib
- # function.
- sed -i -e 's:-ldl:'$(dlopen_lib)':g' \
- "${D}"/usr/$(get_libdir)/libGLU.la \
- "${D}"/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la
-
- # Create the two-number versioned libs (.so.#.#), since only .so.# and
- # .so.#.#.# were made
- local MAJOR_2="$(printf "%.2i" $(get_version_component_range 1 ${PV}))"
- local MINOR_2="$(printf "%.2i" $(get_version_component_range 2 ${PV}))"
- local MICRO_2="$(printf "%.2i" $(get_version_component_range 3 ${PV}))"
- dosym \
- libGLU.so.1.3.${MAJOR_2}${MINOR_2}${MICRO_2} \
- /usr/$(get_libdir)/libGLU.so.1.3
- dosym libGLw.so.1.0.0 /usr/$(get_libdir)/libGLw.so.1.0
-
- # libGLU doesn't get the plain .so symlink either
- dosym libGLU.so.1 /usr/$(get_libdir)/libGLU.so
-
- # Figure out why libGL.so.1.5 is built (directfb), and why it's linked to
- # as the default libGL.so.1
-}
-
-pkg_postinst() {
- switch_opengl_implem
-
- # We need the outer check, because xorg-server may not be installed
- # first, and built_with_use() dies if the package isn't installed.
- if has_version x11-base/xorg-server; then
- if built_with_use x11-base/xorg-server nptl; then
- ewarn "Rebuild x11-base/xorg-server without USE=nptl"
- ewarn "or AIGLX (compiz, etc.) will not work."
- ewarn "This is because of a bug in the Mesa NPTL assembly code"
- ewarn "in all Mesa 7.0.x versions (Mesa 6.x is OK)."
- fi
- fi
-}
-
-fix_opengl_symlinks() {
- # Remove invalid symlinks
- local LINK
- for LINK in $(find "${D}"/usr/$(get_libdir) \
- -name libGL\.* -type l); do
- rm -f ${LINK}
- done
- # Create required symlinks
- if [[ ${CHOST} == *-freebsd* ]]; then
- # FreeBSD doesn't use major.minor versioning, so the library is only
- # libGL.so.1 and no libGL.so.1.2 is ever used there, thus only create
- # libGL.so symlink and leave libGL.so.1 being the real thing
- dosym libGL.so.1 /usr/$(get_libdir)/libGL.so
- else
- dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so
- dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so.1
- fi
-}
-
-dynamic_libgl_install() {
- # next section is to setup the dynamic libGL stuff
- ebegin "Moving libGL and friends for dynamic switching"
- dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include}
- local x=""
- for x in "${D}"/usr/$(get_libdir)/libGL.so* \
- "${D}"/usr/$(get_libdir)/libGL.la \
- "${D}"/usr/$(get_libdir)/libGL.a; do
- if [ -f ${x} -o -L ${x} ]; then
- # libGL.a cause problems with tuxracer, etc
- mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib
- fi
- done
- # glext.h added for #54984
- for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
- if [ -f ${x} -o -L ${x} ]; then
- mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include
- fi
- done
- eend 0
-}
-
-switch_opengl_implem() {
- # Switch to the xorg implementation.
- # Use new opengl-update that will not reset user selected
- # OpenGL interface ...
- echo
- eselect opengl set --use-old ${OPENGL_DIR}
-}
-
-# $1 - VIDEO_CARDS flag
-# other args - names of DRI drivers to enable
-driver_enable() {
- if use $1; then
- shift
- DRI_DRIVERS="${DRI_DRIVERS} $@"
- fi
-}