2011-02-02 14:43:42 +00:00
|
|
|
SUMMARY = "A free implementation of the OpenGL API"
|
|
|
|
DESCRIPTION = "Mesa is an open-source implementation of the OpenGL specification - \
|
|
|
|
a system for rendering interactive 3D graphics. \
|
|
|
|
A variety of device drivers allows Mesa to be used in many different environments \
|
|
|
|
ranging from software emulation to complete hardware acceleration for modern GPUs. \
|
|
|
|
Mesa is used as part of the overall Direct Rendering Infrastructure and X.org \
|
|
|
|
environment."
|
|
|
|
|
2008-09-22 13:33:19 +00:00
|
|
|
HOMEPAGE = "http://mesa3d.org"
|
2010-07-07 09:28:11 +00:00
|
|
|
BUGTRACKER = "https://bugs.freedesktop.org"
|
|
|
|
SECTION = "x11"
|
2008-09-22 13:33:19 +00:00
|
|
|
LICENSE = "MIT"
|
|
|
|
|
2012-12-13 15:30:31 +00:00
|
|
|
INC_PR = "r9"
|
2011-10-13 07:49:47 +00:00
|
|
|
PE = "2"
|
2010-07-07 09:28:11 +00:00
|
|
|
|
2012-12-06 16:34:08 +00:00
|
|
|
DEPENDS = "expat makedepend-native flex-native bison-native"
|
2011-10-13 08:04:56 +00:00
|
|
|
|
2012-07-30 15:54:26 +00:00
|
|
|
PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl"
|
2008-09-22 23:40:14 +00:00
|
|
|
|
2012-07-19 17:46:16 +00:00
|
|
|
inherit autotools pkgconfig pythonnative
|
2008-09-22 13:33:19 +00:00
|
|
|
|
2012-10-26 15:00:09 +00:00
|
|
|
EXTRA_OECONF = "--disable-glu \
|
2008-09-22 13:33:19 +00:00
|
|
|
--disable-glw \
|
|
|
|
--disable-glut \
|
2012-08-02 16:48:58 +00:00
|
|
|
--enable-shared-glapi"
|
2008-09-22 13:33:19 +00:00
|
|
|
|
2012-12-18 13:38:35 +00:00
|
|
|
PACKAGECONFIG ??= "egl gles \
|
|
|
|
${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}\
|
|
|
|
${@base_contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)}\
|
|
|
|
"
|
2012-07-30 16:17:28 +00:00
|
|
|
|
|
|
|
X11_DEPS = "xf86driproto glproto virtual/libx11 libxext libxxf86vm libxdamage libxfixes"
|
|
|
|
PACKAGECONFIG[x11] = "--enable-glx-tls,--disable-glx,${X11_DEPS}"
|
2012-12-18 13:38:35 +00:00
|
|
|
PACKAGECONFIG[wayland] = ",,wayland"
|
|
|
|
|
2012-07-30 14:40:39 +00:00
|
|
|
|
2009-01-27 13:23:10 +00:00
|
|
|
# Multiple virtual/gl providers being built breaks staging
|
|
|
|
EXCLUDE_FROM_WORLD = "1"
|
|
|
|
|
2013-03-19 16:23:56 +00:00
|
|
|
# Remove the mesa dependency on mesa-dev, as mesa is empty
|
2012-12-13 15:30:31 +00:00
|
|
|
RDEPENDS_${PN}-dev = ""
|
|
|
|
|
2012-11-19 16:04:54 +00:00
|
|
|
PACKAGES =+ "libegl-mesa libegl-mesa-dev \
|
2012-08-02 16:48:56 +00:00
|
|
|
libosmesa libosmesa-dev \
|
2012-11-19 16:04:54 +00:00
|
|
|
libgl-mesa libgl-mesa-dev \
|
2012-12-06 12:23:33 +00:00
|
|
|
libdricore libdricore-dev \
|
2012-08-02 16:48:58 +00:00
|
|
|
libglapi libglapi-dev \
|
2012-08-02 16:48:59 +00:00
|
|
|
libgbm libgbm-dev \
|
2012-11-19 16:04:54 +00:00
|
|
|
libgles1-mesa libgles1-mesa-dev \
|
|
|
|
libgles2-mesa libgles2-mesa-dev \
|
2012-12-06 12:23:33 +00:00
|
|
|
libgles3-mesa libgles3-mesa-dev \
|
2012-12-18 13:38:35 +00:00
|
|
|
libwayland-egl libwayland-egl-dev \
|
2012-08-02 16:48:56 +00:00
|
|
|
"
|
|
|
|
|
2012-10-26 15:00:09 +00:00
|
|
|
do_install_append () {
|
|
|
|
# GLU is now in libglu (this shouldn't be required in Mesa 9.x)
|
|
|
|
rm -f ${D}${includedir}/GL/glu*
|
2012-12-06 12:23:33 +00:00
|
|
|
|
|
|
|
# Drivers never need libtool .la files
|
|
|
|
rm -f ${D}${libdir}/dri/*.la
|
2012-10-26 15:00:09 +00:00
|
|
|
}
|
|
|
|
|
2012-11-19 16:04:54 +00:00
|
|
|
# For the packages that make up the OpenGL interfaces, inject variables so that
|
|
|
|
# they don't get Debian-renamed (which would remove the -mesa suffix), and
|
|
|
|
# RPROVIDEs/RCONFLICTs on the generic libgl name.
|
|
|
|
python __anonymous() {
|
|
|
|
for p in (("libegl", "libegl1"), ("libgl", "libgl1"),
|
2012-12-06 12:23:33 +00:00
|
|
|
("libgles1", "libglesv1-cm1"), ("libgles2", "libglesv2-2"),
|
|
|
|
("libgles3",)):
|
2012-11-19 16:04:54 +00:00
|
|
|
fullp = p[0] + "-mesa"
|
|
|
|
pkgs = " ".join(p)
|
|
|
|
d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
|
|
|
|
d.appendVar("RREPLACES_" + fullp, pkgs)
|
|
|
|
d.appendVar("RPROVIDES_" + fullp, pkgs)
|
|
|
|
d.appendVar("RCONFLICTS_" + fullp, pkgs)
|
|
|
|
|
|
|
|
# For -dev, the first element is both the Debian and original name
|
|
|
|
fullp += "-dev"
|
2012-11-20 18:18:11 +00:00
|
|
|
pkgs = p[0] + "-dev"
|
2012-11-19 16:04:54 +00:00
|
|
|
d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1")
|
|
|
|
d.appendVar("RREPLACES_" + fullp, pkgs)
|
|
|
|
d.appendVar("RPROVIDES_" + fullp, pkgs)
|
|
|
|
d.appendVar("RCONFLICTS_" + fullp, pkgs)
|
|
|
|
}
|
|
|
|
|
2012-12-13 15:30:31 +00:00
|
|
|
FILES_libdricore = "${sysconfdir}/drirc ${libdir}/libdricore*.so.*"
|
2012-12-06 12:23:31 +00:00
|
|
|
FILES_libegl-mesa = "${libdir}/libEGL.so.*"
|
2012-08-02 16:48:59 +00:00
|
|
|
FILES_libgbm = "${libdir}/libgbm.so.*"
|
2012-11-19 16:04:54 +00:00
|
|
|
FILES_libgles1-mesa = "${libdir}/libGLESv1*.so.*"
|
|
|
|
FILES_libgles2-mesa = "${libdir}/libGLESv2.so.*"
|
|
|
|
FILES_libgl-mesa = "${libdir}/libGL.so.*"
|
2012-08-02 16:48:58 +00:00
|
|
|
FILES_libglapi = "${libdir}/libglapi.so.*"
|
2011-10-13 08:07:57 +00:00
|
|
|
FILES_libosmesa = "${libdir}/libOSMesa.so.*"
|
2012-12-18 13:38:35 +00:00
|
|
|
FILES_libwayland-egl = "${libdir}/libwayland-egl.so.*"
|
2011-10-13 08:07:57 +00:00
|
|
|
|
2012-12-06 12:23:31 +00:00
|
|
|
FILES_${PN}-dev = "${libdir}/pkgconfig/dri.pc"
|
2012-12-06 12:23:33 +00:00
|
|
|
FILES_libdricore-dev = "${libdir}/libdricore*.*"
|
2012-11-19 16:04:54 +00:00
|
|
|
FILES_libegl-mesa-dev = "${libdir}/libEGL.* ${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
|
2012-12-06 12:23:31 +00:00
|
|
|
FILES_libgbm-dev = "${libdir}/libgbm.* ${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
|
2012-11-19 16:04:54 +00:00
|
|
|
FILES_libgl-mesa-dev = "${libdir}/libGL.* ${includedir}/GL ${libdir}/pkgconfig/gl.pc"
|
2012-08-02 16:48:58 +00:00
|
|
|
FILES_libglapi-dev = "${libdir}/libglapi.*"
|
2012-11-19 16:04:54 +00:00
|
|
|
FILES_libgles1-mesa-dev = "${libdir}/libGLESv1*.* ${includedir}/GLES ${libdir}/pkgconfig/glesv1*.pc"
|
|
|
|
FILES_libgles2-mesa-dev = "${libdir}/libGLESv2.* ${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc"
|
2012-12-06 12:23:33 +00:00
|
|
|
FILES_libgles3-mesa-dev = "${includedir}/GLES3"
|
2012-12-12 10:38:42 +00:00
|
|
|
FILES_libosmesa-dev = "${libdir}/libOSMesa.* ${includedir}/osmesa.h ${libdir}/pkgconfig/osmesa.pc"
|
2012-12-18 13:38:35 +00:00
|
|
|
FILES_libwayland-egl-dev = "${libdir}/pkgconfig/wayland-egl.pc ${libdir}/libwayland-egl.*"
|
2011-10-13 08:07:57 +00:00
|
|
|
|
2012-10-09 16:10:30 +00:00
|
|
|
FILES_${PN}-dbg += "${libdir}/dri/.debug/* ${libdir}/egl/.debug/*"
|