1
0
فهرست منبع

MesaLib: enable for lemote

No render support for siliconmotion, so use swraster driver. Also the
obligatory SAREA fix is needed here.
Phil Sutter 15 سال پیش
والد
کامیت
0549414af0
2فایلهای تغییر یافته به همراه29 افزوده شده و 2 حذف شده
  1. 17 2
      package/MesaLib/Makefile
  2. 12 0
      package/MesaLib/patches/patch-include_GL_internal_sarea_h

+ 17 - 2
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

+ 12 - 0
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