summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>2002-11-18 07:49:24 +0000
committerjlam <jlam@pkgsrc.org>2002-11-18 07:49:24 +0000
commitdb3a779c2dd868f2ee22183d0931287cb71a9f51 (patch)
tree6aece24589ba3e309c575e03c5f19cb4d45fd2d2
parent39b20fc8a42330a52c95a2cf15c226ba31a8ec52 (diff)
downloadpkgsrc-db3a779c2dd868f2ee22183d0931287cb71a9f51.tar.gz
Alter Mesa/GL packages so that they may always be installed if
X11PREFIX != X11BASE (xpkgwedge is installed). Introduce a new variable MESA_REQD that defaults to "3.4.2" and represents the version of Mesa/GL needed by a package. MESA_REQD is intended to be used by package Makefiles or by buildlink2.mk files. It should now be possible to update this package to the latest release (5.0), and have it work on: * XF86-3.x with or without xpkgwedge * XF86-4.x with xpkgwedge
-rw-r--r--graphics/Mesa/Makefile6
-rw-r--r--graphics/Mesa/buildlink2.mk3
-rw-r--r--graphics/MesaLib/Makefile16
-rw-r--r--graphics/MesaLib/buildlink2.mk47
-rw-r--r--graphics/glu/Makefile17
-rw-r--r--graphics/glu/buildlink2.mk51
-rw-r--r--graphics/glut/buildlink2.mk5
7 files changed, 99 insertions, 46 deletions
diff --git a/graphics/Mesa/Makefile b/graphics/Mesa/Makefile
index 328fc6a12b2..06341c1ebb5 100644
--- a/graphics/Mesa/Makefile
+++ b/graphics/Mesa/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.44 2002/08/25 18:38:54 jlam Exp $
+# $NetBSD: Makefile,v 1.45 2002/11/18 07:49:24 jlam Exp $
#
PKGNAME= Mesa-${MESA_VERSION}
@@ -13,9 +13,7 @@ CONFLICTS= Mesa-glx-[0-9]*
.include "Makefile.common"
-BUILDLINK_DEPENDS.MesaLib= MesaLib-${MESA_VERSION}
-BUILDLINK_DEPENDS.glu= glu-${MESA_VERSION}
-BUILDLINK_DEPENDS.glut= glut-${MESA_VERSION}
+MESA_REQD= ${MESA_VERSION}
USE_BUILDLINK2= yes
diff --git a/graphics/Mesa/buildlink2.mk b/graphics/Mesa/buildlink2.mk
index 516b28066b4..9bf970381ab 100644
--- a/graphics/Mesa/buildlink2.mk
+++ b/graphics/Mesa/buildlink2.mk
@@ -1,8 +1,9 @@
-# $NetBSD: buildlink2.mk,v 1.2 2002/08/25 18:38:55 jlam Exp $
+# $NetBSD: buildlink2.mk,v 1.3 2002/11/18 07:49:24 jlam Exp $
.if !defined(MESA_BUILDLINK2_MK)
MESA_BUILDLINK2_MK= # defined
+MESA_REQD?= 3.4.2
BUILDLINK_PREFIX.Mesa= ${BUILDLINK_PREFIX.MesaLib}
.include "../../graphics/MesaLib/buildlink2.mk"
diff --git a/graphics/MesaLib/Makefile b/graphics/MesaLib/Makefile
index fe2c3a2f7f9..e621e57612d 100644
--- a/graphics/MesaLib/Makefile
+++ b/graphics/MesaLib/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.12 2002/10/27 13:50:09 bouyer Exp $
+# $NetBSD: Makefile,v 1.13 2002/11/18 07:49:25 jlam Exp $
PKGNAME= MesaLib-${MESA_VERSION}
WRKSRC= ${WRKDIR}/${DISTNAME:S/Lib//}
@@ -10,28 +10,22 @@ COMMENT= Graphics library similar to SGI's OpenGL
USE_BUILDLINK2= yes
USE_X11BASE= yes
CONFIGURE_ARGS+= --without-glut
+BUILD_DIRS= ${WRKSRC}/src
.include "../../mk/bsd.prefs.mk"
# Check if we got Mesa distributed with XFree86 4.x.
-.if exists(${X11BASE}/include/GL/glx.h)
+.if exists(${X11BASE}/include/GL/glx.h) && \
+ exists(${X11BASE}/lib/X11/config/X11.tmpl)
_IS_BUILTIN_MESA!= ${EGREP} -c BuildGLXLibrary ${X11BASE}/lib/X11/config/X11.tmpl || ${TRUE}
.else
_IS_BUILTIN_MESA= 0
.endif
-.if ${_IS_BUILTIN_MESA} != "0"
+.if (${X11PREFIX} == ${X11BASE}) && (${_IS_BUILTIN_MESA} != "0")
IGNORE= "MesaLib/GLX has already been installed as part of XFree-4.x"
.endif
-do-build:
- cd ${WRKSRC}/src && ${SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} -f ${MAKEFILE} ${ALL_TARGET}
-
-do-install:
- cd ${WRKSRC}/src && ${SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} -f ${MAKEFILE} ${INSTALL_TARGET}
-
post-install:
${INSTALL_DATA_DIR} ${PREFIX}/include/GL
cd ${WRKSRC}/include/GL; for hdr in \
diff --git a/graphics/MesaLib/buildlink2.mk b/graphics/MesaLib/buildlink2.mk
index 3023491900a..713f26e0e26 100644
--- a/graphics/MesaLib/buildlink2.mk
+++ b/graphics/MesaLib/buildlink2.mk
@@ -1,31 +1,60 @@
-# $NetBSD: buildlink2.mk,v 1.4 2002/10/27 13:50:09 bouyer Exp $
+# $NetBSD: buildlink2.mk,v 1.5 2002/11/18 07:49:25 jlam Exp $
.if !defined(MESALIB_BUILDLINK2_MK)
MESALIB_BUILDLINK2_MK= # defined
.include "../../mk/bsd.prefs.mk"
-BUILDLINK_DEPENDS.MesaLib?= MesaLib>=3.4.2
+MESA_REQD?= 3.4.2
+BUILDLINK_DEPENDS.MesaLib?= MesaLib>=${MESA_REQD}
BUILDLINK_PKGSRCDIR.MesaLib?= ../../graphics/MesaLib
# Check if we got Mesa distributed with XFree86 4.x or if we need to
# depend on the Mesa package.
#
_REQUIRE_BUILTIN_MESALIB?= NO
-.if exists(${X11BASE}/include/GL/glx.h)
-_IS_BUILTIN_MESALIB!= ${EGREP} -c BuildGLXLibrary ${X11BASE}/lib/X11/config/X11.tmpl || ${TRUE}
+
+_GL_GLX_H= ${X11BASE}/include/GL/glx.h
+_X11_TMPL= ${X11BASE}/lib/X11/config/X11.tmpl
+.if exists(${_GL_GLX_H}) && exists(${_X11_TMPL})
+_IS_BUILTIN_MESALIB!= ${EGREP} -c BuildGLXLibrary ${_X11_TMPL} || ${TRUE}
.else
_IS_BUILTIN_MESALIB= 0
.endif
-.if (${_IS_BUILTIN_MESALIB} == "0") && (${_REQUIRE_BUILTIN_MESALIB} == "NO")
-_NEED_MESALIB= YES
-.else
+
+.if !empty(_REQUIRE_BUILTIN_MESALIB:M[yY][eE][sS])
_NEED_MESALIB= NO
+.else
+. if ${_IS_BUILTIN_MESALIB} == "0"
+_NEED_MESALIB= YES
+. else
+#
+# Create an appropriate package name for the built-in MesaLib distributed
+# with XFree86 4.x. This package name can be used to check against
+# BUILDLINK_DEPENDS.MesaLib to see if we need to install the pkgsrc
+# Mesa or if the built-in one is sufficient.
+#
+. if exists(${X11BASE}/bin/glxinfo)
+_MESALIB_VERSION!= \
+ ${X11BASE}/bin/glxinfo | \
+ ${SED} -n "/OpenGL version string/s/.*Mesa *//p"
+. else
+_MESALIB_VERSION?= 3.4
+. endif
+_MESALIB_PKG= MesaLib-${_MESALIB_VERSION}
+_MESALIB_DEPENDS= ${BUILDLINK_DEPENDS.MesaLib}
+_NEED_MESALIB!= \
+ if ${PKG_ADMIN} pmatch '${_MESALIB_DEPENDS}' ${_MESALIB_PKG}; then \
+ ${ECHO} "NO"; \
+ else \
+ ${ECHO} "YES"; \
+ fi
+. endif
.endif
.if ${_NEED_MESALIB} == "YES"
BUILDLINK_PACKAGES+= MesaLib
-EVAL_PREFIX+= BUILDLINK_PREFIX.MesaLib=MesaLib
+EVAL_PREFIX+= BUILDLINK_PREFIX.MesaLib=MesaLib
BUILDLINK_PREFIX.MesaLib_DEFAULT= ${X11PREFIX}
.else
BUILDLINK_PREFIX.MesaLib= ${X11BASE}
@@ -42,6 +71,8 @@ BUILDLINK_FILES.MesaLib+= include/GL/xmesa_x.h
BUILDLINK_FILES.MesaLib+= include/GL/xmesa_xf86.h
BUILDLINK_FILES.MesaLib+= lib/libGL.*
+USE_X11= # defined
+
BUILDLINK_TARGETS+= MesaLib-buildlink
MesaLib-buildlink: _BUILDLINK_USE
diff --git a/graphics/glu/Makefile b/graphics/glu/Makefile
index b5744f710e3..771f5d926c4 100644
--- a/graphics/glu/Makefile
+++ b/graphics/glu/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.13 2002/10/27 17:58:12 bouyer Exp $
+# $NetBSD: Makefile,v 1.14 2002/11/18 07:49:25 jlam Exp $
PKGNAME= ${DISTNAME:C/MesaLib/glu/}
WRKSRC= ${WRKDIR}/${DISTNAME:C/Lib//}
@@ -12,28 +12,22 @@ CONFLICTS+= Mesa<3.2.1
USE_BUILDLINK2= yes
USE_X11BASE= yes
+BUILD_DIRS= ${WRKSRC}/src-glu
.include "../../mk/bsd.prefs.mk"
# Check if we got libGLU distributed with XFree86 4.x.
-.if exists(${X11BASE}/include/GL/glu.h)
+.if exists(${X11BASE}/include/GL/glu.h) && \
+ exists(${X11BASE}/lib/X11/config/X11.tmpl)
_IS_BUILTIN_GLU!= ${EGREP} -c BuildGLULibrary ${X11BASE}/lib/X11/config/X11.tmpl || ${TRUE}
.else
_IS_BUILTIN_GLU= 0
.endif
-.if ${_IS_BUILTIN_GLU} != "0"
+.if (${X11PREFIX} == ${X11BASE}) && (${_IS_BUILTIN_GLU} != "0")
IGNORE= "GLU has already been installed as part of XFree86-4.x"
.endif
-do-build:
- cd ${WRKSRC}/src-glu && ${SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} -f ${MAKEFILE} ${ALL_TARGET}
-
-do-install:
- cd ${WRKSRC}/src-glu && ${SETENV} ${MAKE_ENV} \
- ${MAKE_PROGRAM} ${MAKE_FLAGS} -f ${MAKEFILE} ${INSTALL_TARGET}
-
post-install:
${INSTALL_DATA_DIR} ${PREFIX}/include/GL
cd ${WRKSRC}/include/GL; for hdr in \
@@ -42,4 +36,5 @@ post-install:
${INSTALL_DATA} $${hdr} ${PREFIX}/include/GL; \
done
+.include "../../graphics/MesaLib/buildlink2.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/graphics/glu/buildlink2.mk b/graphics/glu/buildlink2.mk
index beb1464eca6..3fb817cb42a 100644
--- a/graphics/glu/buildlink2.mk
+++ b/graphics/glu/buildlink2.mk
@@ -1,40 +1,73 @@
-# $NetBSD: buildlink2.mk,v 1.4 2002/10/27 17:58:12 bouyer Exp $
+# $NetBSD: buildlink2.mk,v 1.5 2002/11/18 07:49:25 jlam Exp $
.if !defined(GLU_BUILDLINK2_MK)
GLU_BUILDLINK2_MK= # defined
.include "../../mk/bsd.prefs.mk"
-BUILDLINK_DEPENDS.glu?= glu>=3.4.2
+MESA_REQD?= 3.4.2
+BUILDLINK_DEPENDS.glu?= glu>=${MESA_REQD}
BUILDLINK_PKGSRCDIR.glu?= ../../graphics/glu
# Check if we got libGLU distributed with XFree86 4.x or if we need to
# depend on the glu package.
#
_REQUIRE_BUILTIN_GLU?= NO
-.if exists(${X11BASE}/include/GL/glu.h)
-_IS_BUILTIN_GLU!= ${EGREP} -c BuildGLULibrary ${X11BASE}/lib/X11/config/X11.tmpl || ${TRUE}
+
+_GL_GLU_H= ${X11BASE}/include/GL/glu.h
+_X11_TMPL= ${X11BASE}/lib/X11/config/X11.tmpl
+.if exists(${_GL_GLU_H}) && exists(${_X11_TMPL})
+_IS_BUILTIN_GLU!= ${EGREP} -c BuildGLULibrary ${_X11_TMPL} || ${TRUE}
.else
_IS_BUILTIN_GLU= 0
.endif
-.if (${_IS_BUILTIN_GLU} == "0") && (${_REQUIRE_BUILTIN_GLU} == "NO")
-_NEED_GLU= YES
-.else
+
+.if !empty(_REQUIRE_BUILTIN_GLU:M[yY][eE][sS])
_NEED_GLU= NO
+.else
+. if ${_IS_BUILTIN_GLU} == "0"
+_NEED_GLU= YES
+. else
+#
+# Create an appropriate package name for the built-in Mesa/GLU distributed
+# with XFree86 4.x. This package name can be used to check against
+# BUILDLINK_DEPENDS.glu to see if we need to install the pkgsrc Mesa/GLU
+# or if the built-in one is sufficient.
+#
+. if exists(${X11BASE}/bin/glxinfo)
+_GLU_VERSION!= \
+ ${X11BASE}/bin/glxinfo | \
+ ${SED} -n "/OpenGL version string/s/.*Mesa *//p"
+. else
+_GLU_VERSION?= 3.4
+. endif
+_GLU_PKG= glu-${_GLU_VERSION}
+_GLU_DEPENDS= ${BUILDLINK_DEPENDS.glu}
+_NEED_GLU!= \
+ if ${PKG_ADMIN} pmatch '${_GLU_DEPENDS}' ${_GLU_PKG}; then \
+ ${ECHO} "NO"; \
+ else \
+ ${ECHO} "YES"; \
+ fi
+. endif
.endif
.if ${_NEED_GLU} == "YES"
BUILDLINK_PACKAGES+= glu
-EVAL_PREFIX+= BUILDLINK_PREFIX.glu=glu
+EVAL_PREFIX+= BUILDLINK_PREFIX.glu=glu
BUILDLINK_PREFIX.glu_DEFAULT= ${X11PREFIX}
.else
-BUILDLINK_PREFIX.glu= ${X11BASE}
+BUILDLINK_PREFIX.glu= ${X11BASE}
.endif
BUILDLINK_FILES.glu= include/GL/glu.h
BUILDLINK_FILES.glu+= include/GL/glu_mangle.h
BUILDLINK_FILES.glu+= lib/libGLU.*
+USE_X11= # defined
+
+.include "../../graphics/MesaLib/buildlink2.mk"
+
BUILDLINK_TARGETS+= glu-buildlink
glu-buildlink: _BUILDLINK_USE
diff --git a/graphics/glut/buildlink2.mk b/graphics/glut/buildlink2.mk
index 493e2b76ad8..dae5d429522 100644
--- a/graphics/glut/buildlink2.mk
+++ b/graphics/glut/buildlink2.mk
@@ -1,10 +1,11 @@
-# $NetBSD: buildlink2.mk,v 1.3 2002/11/17 08:37:20 jlam Exp $
+# $NetBSD: buildlink2.mk,v 1.4 2002/11/18 07:49:26 jlam Exp $
.if !defined(GLUT_BUILDLINK2_MK)
GLUT_BUILDLINK2_MK= # defined
+MESA_REQD?= 3.4.2
BUILDLINK_PACKAGES+= glut
-BUILDLINK_DEPENDS.glut?= glut>=3.4.2
+BUILDLINK_DEPENDS.glut?= glut>=${MESA_REQD}
BUILDLINK_PKGSRCDIR.glut?= ../../graphics/glut
EVAL_PREFIX+= BUILDLINK_PREFIX.glut=glut