summaryrefslogtreecommitdiff
path: root/package/MesaLib
diff options
context:
space:
mode:
Diffstat (limited to 'package/MesaLib')
-rw-r--r--package/MesaLib/Makefile19
-rw-r--r--package/MesaLib/patches/patch-include_GL_internal_sarea_h12
2 files changed, 29 insertions, 2 deletions
diff --git a/package/MesaLib/Makefile b/package/MesaLib/Makefile
index 0a4ff3b9a..a5f624374 100644
--- a/package/MesaLib/Makefile
+++ b/package/MesaLib/Makefile
@@ -23,11 +23,22 @@ include $(TOPDIR)/mk/package.mk
$(eval $(call PKG_template,MESALIB,mesalib,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+ifeq (${ADK_LINUX_X86_IBMX40},y)
+DRI_DRIVERS:=i810
+endif
+
+# Lemote's SMI712 is not directly supported by Mesa,
+# and at least some SIS driver fails to build when
+# keeping the driver auto-selection intact.
+ifeq (${ADK_LINUX_MIPS64_LEMOTE},y)
+DRI_DRIVERS:=swrast
+endif
+
CONFIGURE_ARGS+= --disable-static \
--disable-gallium \
--disable-glw \
--with-driver=dri \
- --with-dri-drivers=i810 \
+ --with-dri-drivers=${DRI_DRIVERS} \
--without-demos
XAKE_FLAGS+= APP_CC=${HOSTCC} HOST_CC=${HOSTCC}
@@ -48,8 +59,12 @@ pre-configure:
${MAKE} -C ${WRKBUILD}/src/glsl clean
post-install:
- $(INSTALL_DIR) $(IDIR_MESALIB)/usr/lib
+ $(INSTALL_DIR) $(IDIR_MESALIB)/usr/lib/dri
$(CP) $(WRKINST)/usr/lib/libGL*.so* \
$(IDIR_MESALIB)/usr/lib
+ifeq (${ADK_LINUX_MIPS64_LEMOTE},y)
+ $(INSTALL_BIN) $(WRKINST)/usr/lib/dri/swrast_dri.so \
+ ${IDIR_MESALIB}/usr/lib/dri/
+endif
include ${TOPDIR}/mk/pkg-bottom.mk
diff --git a/package/MesaLib/patches/patch-include_GL_internal_sarea_h b/package/MesaLib/patches/patch-include_GL_internal_sarea_h
new file mode 100644
index 000000000..7de643397
--- /dev/null
+++ b/package/MesaLib/patches/patch-include_GL_internal_sarea_h
@@ -0,0 +1,12 @@
+ fix for loongson
+--- Mesa-7.8.1.orig/include/GL/internal/sarea.h 2010-02-05 01:10:39.000000000 +0100
++++ Mesa-7.8.1/include/GL/internal/sarea.h 2010-06-12 19:13:41.417809541 +0200
+@@ -42,6 +42,8 @@
+ /* SAREA area needs to be at least a page */
+ #if defined(__alpha__)
+ #define SAREA_MAX 0x2000
++#elif defined(__mips__)
++#define SAREA_MAX 0x4000
+ #elif defined(__ia64__)
+ #define SAREA_MAX 0x10000 /* 64kB */
+ #else