Subject: pkg/19302: Mesa, MesaLib, glu and glut update to version 5.0 needs work
To: None <gnats-bugs@gnats.netbsd.org>
From: Jan Schaumann <jschauma@netmeister.org>
List: netbsd-bugs
Date: 12/06/2002 12:26:13
>Number: 19302
>Category: pkg
>Synopsis: Mesa and friends should be updated to 5.0, but need to pay attention to XF4.x
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Dec 06 09:27:00 PST 2002
>Closed-Date:
>Last-Modified:
>Originator: Jan Schaumann
>Release: NetBSD 1.6
>Organization:
>Environment:
System: NetBSD becasse.cs.stevens-tech.edu 1.6 NetBSD 1.6 (BOCK) #15: Tue Nov 12 15:35:50 EST 2002 jschauma@amstel.cs.stevens-tech.edu:/usr/src/sys/arch/i386/compile/BOCK i386
Architecture: i386
Machine: i386
>Description:
As discussed, the update of Mesa and friends to 5.0 is at least sub-optimal:
Through the use of:
MESA_REQD= ${MESA_VERSION}
in pkgsrc/graphics/Mesa, even on xpkgwedge's systems MesaLib and glu are
pulled in, since XF4.x can only fake 3.4.2 libraries. When these are installed,
applications that require libGLU* will create a depenency on glu, but actually
link against ${X11BASE}/lib/libGLU*. This can cause various problems, since the
libraries linked with are of a different version than the one the application may
expect.
>How-To-Repeat:
Apply patches below to update to 5.0 on an xpkgwedge'd system with XF4.x, then
built, for example, net/xtraceroute. Then 'ldd xtraceroute' and observe that it
was linked against ${X11BASE}/lib/libGLU*.
>Fix:
Possibility:
Adjust the logic in the affected buildinks to first check for xpkgwedge, and only after
that for XF4.x's GL existence. Build and link accordingly.
Workaround:
Remove support for xpkwedge from buildlink, and conditionally set MESA_REQ (based on
the existence of xpkwedge) so that XF3.x users can use Mesa-5.0, while XF4.x users continue
to use 3.4.2.
patches below:
Index: Mesa/Makefile.common
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/Mesa/Makefile.common,v
retrieving revision 1.5
diff -b -u -r1.5 Makefile.common
--- Mesa/Makefile.common 2002/12/06 17:03:23 1.5
+++ Mesa/Makefile.common 2002/12/06 17:05:33
@@ -1,6 +1,6 @@
# $NetBSD: Makefile.common,v 1.5 2002/12/06 17:03:23 jschauma Exp $
-MESA_VERSION= 3.4.2
+MESA_VERSION= 5.0
DISTNAME?= MesaLib-${MESA_VERSION}
CATEGORIES?= graphics
MASTER_SITES?= ${MASTER_SITE_SOURCEFORGE:=mesa3d/}
Index: MesaLib/PLIST
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/MesaLib/PLIST,v
retrieving revision 1.5
diff -b -u -r1.5 PLIST
--- MesaLib/PLIST 2002/12/06 17:03:24 1.5
+++ MesaLib/PLIST 2002/12/06 17:05:33
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.5 2002/12/06 17:03:24 jschauma Exp $
+@comment $NetBSD: PLIST,v 1.4 2002/12/05 15:11:49 jschauma Exp $
etc/mesa.conf
include/GL/gl.h
include/GL/gl_mangle.h
@@ -9,9 +9,14 @@
include/GL/xmesa.h
include/GL/xmesa_x.h
include/GL/xmesa_xf86.h
-lib/libGL.so
-lib/libGL.so.3
-lib/libGL.so.3.4
lib/libGL.a
lib/libGL.la
+lib/libGL.so
+lib/libGL.so.5
+lib/libGL.so.5.500
+lib/libOSMesa.a
+lib/libOSMesa.la
+lib/libOSMesa.so
+lib/libOSMesa.so.4
+lib/libOSMesa.so.4.500
@unexec ${RMDIR} %D/include/GL >/dev/null 2>&1 || ${TRUE}
Index: MesaLib/distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/MesaLib/distinfo,v
retrieving revision 1.6
diff -b -u -r1.6 distinfo
--- MesaLib/distinfo 2002/12/06 17:03:24 1.6
+++ MesaLib/distinfo 2002/12/06 17:05:33
@@ -1,6 +1,6 @@
$NetBSD: distinfo,v 1.6 2002/12/06 17:03:24 jschauma Exp $
-SHA1 (MesaLib-3.4.2.tar.bz2) = 1a41b61a29538127dbb0ab2882ac69554a0e9e37
-Size (MesaLib-3.4.2.tar.bz2) = 1380805 bytes
-SHA1 (patch-aa) = f8e311944bbd80bf3939196dbbe993f78b2f8c50
-SHA1 (patch-ab) = 8cf672d645f9681b0987e94d3692903a5314173e
+SHA1 (MesaLib-5.0.tar.bz2) = 098260c89c4109a8823c76a2c4d75cef8484819d
+Size (MesaLib-5.0.tar.bz2) = 1645037 bytes
+SHA1 (patch-aa) = 7fa63dca0edfc41812b5432cbabd861ec52cec33
+SHA1 (patch-ab) = 17d8f0508710fc03a75e736a3298ede72b953af7
Index: MesaLib/patches/patch-aa
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/MesaLib/patches/patch-aa,v
retrieving revision 1.4
diff -b -u -r1.4 patch-aa
--- MesaLib/patches/patch-aa 2002/12/06 17:03:24 1.4
+++ MesaLib/patches/patch-aa 2002/12/06 17:05:33
@@ -1,14 +1,14 @@
-$NetBSD: patch-aa,v 1.4 2002/12/06 17:03:24 jschauma Exp $
+$NetBSD: patch-aa,v 1.3 2002/12/05 15:11:50 jschauma Exp $
---- src/X86/assyntax.h.orig Mon Sep 25 17:12:01 2000
-+++ src/X86/assyntax.h Sun Dec 10 23:45:34 2000
-@@ -954,7 +954,8 @@
+--- src/X86/assyntax.h.orig Tue Nov 19 15:17:48 2002
++++ src/X86/assyntax.h Tue Nov 19 15:18:34 2002
+@@ -965,7 +965,8 @@
#if defined(Lynx) || (defined(SYSV) || defined(SVR4)) \
- || (defined(linux) || defined(__OS2ELF__)) && defined(__ELF__) \
+ || (defined(__linux__) || defined(__OS2ELF__)) && defined(__ELF__) \
- || defined(__FreeBSD__) && __FreeBSD__ >= 3
+ || defined(__FreeBSD__) && __FreeBSD__ >= 3 \
+ || defined(__NetBSD__) && defined(__ELF__)
#define GLNAME(a) a
#else
- #define GLNAME(a) _ ## a
+ #define GLNAME(a) CONCAT(_, a)
Index: MesaLib/patches/patch-ab
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/MesaLib/patches/patch-ab,v
retrieving revision 1.6
diff -b -u -r1.6 patch-ab
--- MesaLib/patches/patch-ab 2002/12/06 17:03:24 1.6
+++ MesaLib/patches/patch-ab 2002/12/06 17:05:33
@@ -1,33 +1,13 @@
-$NetBSD: patch-ab,v 1.6 2002/12/06 17:03:24 jschauma Exp $
+$NetBSD: patch-ab,v 1.5 2002/12/05 15:11:50 jschauma Exp $
---- configure.orig Thu May 17 00:28:58 2001
-+++ configure Fri May 18 14:16:44 2001
-@@ -823,8 +823,8 @@
- MESA_MAJOR=3
- MESA_MINOR=4
- MESA_TINY=2
--LIBGL_VERSION=1:2:0${MESA_MAJOR}0${MESA_MINOR}0${MESA_TINY}
--LIBGLU_VERSION=1:1:0${MESA_MAJOR}0${MESA_MINOR}0${MESA_TINY}
-+LIBGL_VERSION=${MESA_MAJOR}:${MESA_MINOR}:${MESA_TINY}
-+LIBGLU_VERSION=${MESA_MAJOR}:${MESA_MINOR}:${MESA_TINY}
- LIBGLUT_VERSION=3:7:0
-
-
-@@ -4635,7 +4635,7 @@
- if test -d $srcdir/src-glut; then
- have_glut_source=yes
- else
-- { echo "configure: error: GLUT sources missing; that is not supported at this point." 1>&2; exit 1; }
-+ { echo "configure: error: GLUT sources missing; that is not supported at this point." 1>&2; }
- fi
- echo "$ac_t""$have_glut_source" 1>&6
- need_glut=no
-@@ -4673,7 +4673,7 @@
- done
- echo "$ac_t""$have_demo_source" 1>&6
- if test "x$have_demo_source" != xyes; then
-- { echo "configure: error: Demo sources missing; that is not supported at this point." 1>&2; exit 1; }
-+ { echo "configure: error: Demo sources missing; that is not supported at this point." 1>&2; }
+--- configure.orig Wed Nov 13 22:18:19 2002
++++ configure Tue Nov 19 15:52:05 2002
+@@ -1532,7 +1532,7 @@
fi
+ MAINT=$MAINTAINER_MODE_TRUE
+-ac_config_files="$ac_config_files Makefile include/Makefile include/GL/Makefile src/Makefile src/array_cache/Makefile src/math/Makefile src/swrast/Makefile src/swrast_setup/Makefile src/tnl/Makefile src/Trace/Makefile src/FX/Makefile src/FX/X86/Makefile src/GGI/Makefile src/GGI/include/Makefile src/GGI/include/ggi/Makefile src/GGI/include/ggi/mesa/Makefile src/GGI/ggimesa.conf src/GGI/default/Makefile src/GGI/default/genkgi.conf src/GGI/display/Makefile src/GGI/display/fbdev.conf src/OSmesa/Makefile src/SVGA/Makefile src/X/Makefile src/X86/Makefile src/SPARC/Makefile util/Makefile ggi/demos/Makefile ggi/ggiglut/Makefile src-glu/Makefile si-glu/Makefile si-glu/include/Makefile si-glu/libnurbs/Makefile si-glu/libnurbs/interface/Makefile si-glu/libnurbs/internals/Makefile si-glu/libnurbs/nurbtess/Makefile si-glu/libtess/Makefile si-glu/libutil/Makefile"
++ac_config_files="$ac_config_files Makefile include/Makefile include/GL/Makefile src/Makefile src/array_cache/Makefile src/math/Makefile src/swrast/Makefile src/swrast_setup/Makefile src/tnl/Makefile src/Trace/Makefile src/FX/Makefile src/FX/X86/Makefile src/GGI/Makefile src/GGI/include/Makefile src/GGI/include/ggi/Makefile src/GGI/include/ggi/mesa/Makefile src/GGI/ggimesa.conf src/GGI/default/Makefile src/GGI/default/genkgi.conf src/GGI/display/Makefile src/GGI/display/fbdev.conf src/OSmesa/Makefile src/SVGA/Makefile src/X/Makefile src/X86/Makefile src/SPARC/Makefile util/Makefile src-glu/Makefile si-glu/Makefile si-glu/include/Makefile si-glu/libnurbs/Makefile si-glu/libnurbs/interface/Makefile si-glu/libnurbs/internals/Makefile si-glu/libnurbs/nurbtess/Makefile si-glu/libtess/Makefile si-glu/libutil/Makefile"
+ ac_ext=c
+ ac_cpp='$CPP $CPPFLAGS'
Index: glu/PLIST
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/glu/PLIST,v
retrieving revision 1.5
diff -b -u -r1.5 PLIST
--- glu/PLIST 2002/12/06 17:03:24 1.5
+++ glu/PLIST 2002/12/06 17:05:34
@@ -2,8 +2,8 @@
include/GL/glu.h
include/GL/glu_mangle.h
lib/libGLU.so
-lib/libGLU.so.3
-lib/libGLU.so.3.4
+lib/libGLU.so.2
+lib/libGLU.so.2.500
lib/libGLU.a
lib/libGLU.la
@unexec ${RMDIR} %D/include/GL >/dev/null 2>&1 || ${TRUE}
Index: glu/distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/glu/distinfo,v
retrieving revision 1.6
diff -b -u -r1.6 distinfo
--- glu/distinfo 2002/12/06 17:03:24 1.6
+++ glu/distinfo 2002/12/06 17:05:34
@@ -1,5 +1,5 @@
$NetBSD: distinfo,v 1.6 2002/12/06 17:03:24 jschauma Exp $
-SHA1 (MesaLib-3.4.2.tar.bz2) = 1a41b61a29538127dbb0ab2882ac69554a0e9e37
-Size (MesaLib-3.4.2.tar.bz2) = 1380805 bytes
-SHA1 (patch-aa) = 8cf672d645f9681b0987e94d3692903a5314173e
+SHA1 (MesaLib-5.0.tar.bz2) = 098260c89c4109a8823c76a2c4d75cef8484819d
+Size (MesaLib-5.0.tar.bz2) = 1645037 bytes
+SHA1 (patch-aa) = 3006b3f1fece24ded6edc046d7bff439f181cd47
Index: glu/patches/patch-aa
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/glu/patches/patch-aa,v
retrieving revision 1.6
diff -b -u -r1.6 patch-aa
--- glu/patches/patch-aa 2002/12/06 17:03:24 1.6
+++ glu/patches/patch-aa 2002/12/06 17:05:34
@@ -1,33 +1,11 @@
-$NetBSD: patch-aa,v 1.6 2002/12/06 17:03:24 jschauma Exp $
-
---- configure.orig Thu May 17 00:28:58 2001
-+++ configure Fri May 18 14:16:44 2001
-@@ -823,8 +823,8 @@
- MESA_MAJOR=3
- MESA_MINOR=4
- MESA_TINY=2
--LIBGL_VERSION=1:2:0${MESA_MAJOR}0${MESA_MINOR}0${MESA_TINY}
--LIBGLU_VERSION=1:1:0${MESA_MAJOR}0${MESA_MINOR}0${MESA_TINY}
-+LIBGL_VERSION=${MESA_MAJOR}:${MESA_MINOR}:${MESA_TINY}
-+LIBGLU_VERSION=${MESA_MAJOR}:${MESA_MINOR}:${MESA_TINY}
- LIBGLUT_VERSION=3:7:0
-
-
-@@ -4635,7 +4635,7 @@
- if test -d $srcdir/src-glut; then
- have_glut_source=yes
- else
-- { echo "configure: error: GLUT sources missing; that is not supported at this point." 1>&2; exit 1; }
-+ { echo "configure: error: GLUT sources missing; that is not supported at this point." 1>&2; }
- fi
- echo "$ac_t""$have_glut_source" 1>&6
- need_glut=no
-@@ -4673,7 +4673,7 @@
- done
- echo "$ac_t""$have_demo_source" 1>&6
- if test "x$have_demo_source" != xyes; then
-- { echo "configure: error: Demo sources missing; that is not supported at this point." 1>&2; exit 1; }
-+ { echo "configure: error: Demo sources missing; that is not supported at this point." 1>&2; }
+--- configure.orig Wed Nov 20 17:45:32 2002
++++ configure Wed Nov 20 17:45:43 2002
+@@ -1532,7 +1532,7 @@
fi
+ MAINT=$MAINTAINER_MODE_TRUE
+-ac_config_files="$ac_config_files Makefile include/Makefile include/GL/Makefile src/Makefile src/array_cache/Makefile src/math/Makefile src/swrast/Makefile src/swrast_setup/Makefile src/tnl/Makefile src/Trace/Makefile src/FX/Makefile src/FX/X86/Makefile src/GGI/Makefile src/GGI/include/Makefile src/GGI/include/ggi/Makefile src/GGI/include/ggi/mesa/Makefile src/GGI/ggimesa.conf src/GGI/default/Makefile src/GGI/default/genkgi.conf src/GGI/display/Makefile src/GGI/display/fbdev.conf src/OSmesa/Makefile src/SVGA/Makefile src/X/Makefile src/X86/Makefile src/SPARC/Makefile util/Makefile ggi/demos/Makefile ggi/ggiglut/Makefile src-glu/Makefile si-glu/Makefile si-glu/include/Makefile si-glu/libnurbs/Makefile si-glu/libnurbs/interface/Makefile si-glu/libnurbs/internals/Makefile si-glu/libnurbs/nurbtess/Makefile si-glu/libtess/Makefile si-glu/libutil/Makefile"
++ac_config_files="$ac_config_files Makefile include/Makefile include/GL/Makefile src/Makefile src/array_cache/Makefile src/math/Makefile src/swrast/Makefile src/swrast_setup/Makefile src/tnl/Makefile src/Trace/Makefile src/FX/Makefile src/FX/X86/Makefile src/GGI/Makefile src/GGI/include/Makefile src/GGI/include/ggi/Makefile src/GGI/include/ggi/mesa/Makefile src/GGI/ggimesa.conf src/GGI/default/Makefile src/GGI/default/genkgi.conf src/GGI/display/Makefile src/GGI/display/fbdev.conf src/OSmesa/Makefile src/SVGA/Makefile src/X/Makefile src/X86/Makefile src/SPARC/Makefile util/Makefile src-glu/Makefile si-glu/Makefile si-glu/include/Makefile si-glu/libnurbs/Makefile si-glu/libnurbs/interface/Makefile si-glu/libnurbs/internals/Makefile si-glu/libnurbs/nurbtess/Makefile si-glu/libtess/Makefile si-glu/libutil/Makefile"
+ ac_ext=c
+ ac_cpp='$CPP $CPPFLAGS'
Index: glut/PLIST
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/glut/PLIST,v
retrieving revision 1.5
diff -b -u -r1.5 PLIST
--- glut/PLIST 2002/12/06 17:03:25 1.5
+++ glut/PLIST 2002/12/06 17:05:34
@@ -2,8 +2,8 @@
include/GL/glut.h
include/GL/glutf90.h
lib/libglut.so
-lib/libglut.so.3
-lib/libglut.so.3.7
+lib/libglut.so.10
+lib/libglut.so.10.1
lib/libglut.a
lib/libglut.la
@unexec ${RMDIR} %D/include/GL >/dev/null 2>&1 || ${TRUE}
Index: glut/distinfo
===================================================================
RCS file: /cvsroot/pkgsrc/graphics/glut/distinfo,v
retrieving revision 1.6
diff -b -u -r1.6 distinfo
--- glut/distinfo 2002/12/06 17:03:25 1.6
+++ glut/distinfo 2002/12/06 17:05:34
@@ -1,6 +1,6 @@
$NetBSD: distinfo,v 1.6 2002/12/06 17:03:25 jschauma Exp $
-SHA1 (MesaLib-3.4.2.tar.bz2) = 1a41b61a29538127dbb0ab2882ac69554a0e9e37
-Size (MesaLib-3.4.2.tar.bz2) = 1380805 bytes
-SHA1 (MesaDemos-3.4.2.tar.bz2) = b291eb70c07ad2e12122e53039bf6d36c061a914
-Size (MesaDemos-3.4.2.tar.bz2) = 854130 bytes
+SHA1 (MesaLib-5.0.tar.bz2) = 098260c89c4109a8823c76a2c4d75cef8484819d
+Size (MesaLib-5.0.tar.bz2) = 1645037 bytes
+SHA1 (MesaDemos-5.0.tar.bz2) = b487c94daa2d19060c40b0ae46869c28c883b6e8
+Size (MesaDemos-5.0.tar.bz2) = 894069 bytes
>Release-Note:
>Audit-Trail:
>Unformatted: