From owner-freebsd-x11@FreeBSD.ORG Sun Jul 29 22:18:59 2007 Return-Path: Delivered-To: x11@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 486C216A468 for ; Sun, 29 Jul 2007 22:18:59 +0000 (UTC) (envelope-from thierry@pompo.net) Received: from postfix2-g20.free.fr (postfix2-g20.free.fr [212.27.60.43]) by mx1.freebsd.org (Postfix) with ESMTP id C149E13C46A for ; Sun, 29 Jul 2007 22:18:58 +0000 (UTC) (envelope-from thierry@pompo.net) Received: from smtp7-g19.free.fr (smtp7-g19.free.fr [212.27.42.64]) by postfix2-g20.free.fr (Postfix) with ESMTP id A171D18A0655 for ; Sun, 29 Jul 2007 22:54:18 +0200 (CEST) Received: from smtp7-g19.free.fr (localhost [127.0.0.1]) by smtp7-g19.free.fr (Postfix) with ESMTP id 74E9C1A332 for ; Sun, 29 Jul 2007 23:53:31 +0200 (CEST) Received: from graf.pompo.net (graf.pompo.net [81.56.186.139]) by smtp7-g19.free.fr (Postfix) with ESMTP id 3B653188D9 for ; Sun, 29 Jul 2007 23:53:31 +0200 (CEST) Received: by graf.pompo.net (Postfix, from userid 1001) id 2BFD411469; Sun, 29 Jul 2007 23:53:28 +0200 (CEST) To: FreeBSD-gnats-submit@freebsd.org From: Thierry Thomas X-send-pr-version: 3.113 X-GNATS-Notify: Message-Id: <20070729215328.2BFD411469@graf.pompo.net> Date: Sun, 29 Jul 2007 23:53:28 +0200 (CEST) Cc: x11@FreeBSD.org Subject: New port: graphics/osmesa - Mesa's off-screen rendering interface X-BeenThere: freebsd-x11@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Thierry Thomas List-Id: X11 on FreeBSD -- maintaining and support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 29 Jul 2007 22:18:59 -0000 >Submitter-Id: current-users >Originator: Thierry Thomas >Organization: Kabbale Eros >Confidential: no >Synopsis: New port: graphics/osmesa - Mesa's off-screen rendering interface >Severity: non-critical >Priority: medium >Category: ports >Class: change-request >Release: FreeBSD 6.2-STABLE i386 >Environment: System: FreeBSD graf.pompo.net 6.2-STABLE FreeBSD 6.2-STABLE #0: Sun May 20 15:59:36 CEST 2007 thierry@graf.pompo.net:/usr/obj/usr/src/sys/GRAF070519 i386 >Description: Mesa's off-screen rendering interface is used for rendering into user-allocated blocks of memory. That is, the GL_FRONT colorbuffer is actually a buffer in main memory, rather than a window on your display. There are no window system or operating system dependencies. One potential application is to use Mesa as an off-line, batch-style renderer. Important note: maintainer is set to "x11@FreeBSD.org", because this port is very related to graphics/libGL - if the x11 team accepts it. >How-To-Repeat: I am going to submit a separate PR containing an update of graphics/mesa-demos to test it. >Fix: Please execute the following script: --- osmesa.shar begins here --- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # graphics/osmesa # graphics/osmesa/files # graphics/osmesa/files/patch-mklib # graphics/osmesa/files/patch-Makefile # graphics/osmesa/Makefile # graphics/osmesa/distinfo # graphics/osmesa/pkg-descr # graphics/osmesa/pkg-plist # echo c - graphics/osmesa mkdir -p graphics/osmesa > /dev/null 2>&1 echo c - graphics/osmesa/files mkdir -p graphics/osmesa/files > /dev/null 2>&1 echo x - graphics/osmesa/files/patch-mklib sed 's/^X//' >graphics/osmesa/files/patch-mklib << 'END-of-graphics/osmesa/files/patch-mklib' X--- bin/mklib.orig Wed Jun 20 14:50:40 2007 X+++ bin/mklib Wed Jun 20 14:50:53 2007 X@@ -100,6 +100,9 @@ X -L*) X DEPS="$DEPS $1" X ;; X+ '-pthread') X+ DEPS="$DEPS -pthread" X+ ;; X '-cplusplus') X CPLUSPLUS=1 X ;; END-of-graphics/osmesa/files/patch-mklib echo x - graphics/osmesa/files/patch-Makefile sed 's/^X//' >graphics/osmesa/files/patch-Makefile << 'END-of-graphics/osmesa/files/patch-Makefile' X--- Makefile.orig Fri Jun 22 00:14:38 2007 X+++ Makefile Sun Jul 29 18:31:40 2007 X@@ -23,7 +23,6 @@ X fi \ X done X X- X realclean: X touch $(TOP)/configs/current X $(MAKE) clean X@@ -75,6 +74,9 @@ X freebsd-dri \ X freebsd-dri-amd64 \ X freebsd-dri-x86 \ X+freebsd-osmesa \ X+freebsd-osmesa16 \ X+freebsd-osmesa32 \ X hpux10 \ X hpux10-gcc \ X hpux10-static \ X@@ -158,6 +160,11 @@ X fi X (cd configs && rm -f current && ln -s $@ current) X $(MAKE) default X+ -rm -f $(TOP)/configs/current X+ -rm -f `find $(TOP)/src/mesa/ -name \*.o` X+ -rm -f `find $(TOP)/src/mesa/ -name \*.a` X+ -rm -f `find $(TOP)/src/mesa/ -name \*.so` X+ -rm -f `find $(TOP)/src/mesa/ -name depend` X X X # Rules for making release tarballs END-of-graphics/osmesa/files/patch-Makefile echo x - graphics/osmesa/Makefile sed 's/^X//' >graphics/osmesa/Makefile << 'END-of-graphics/osmesa/Makefile' X# New ports collection makefile for: OSMesa X# Date created: 28 July 2007 X# Whom: thierry@pompo.net X# X# $FreeBSD$ X# X XPORTNAME= OSMesa XPORTVERSION= 7.0 XCATEGORIES= graphics XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE} \ X ftp://ftp.fu-berlin.de/pub/unix/X11/graphics/Mesa/ XMASTER_SITE_SUBDIR= mesa3d XDISTNAME= MesaLib-${PORTVERSION} X XMAINTAINER= x11@FreeBSD.org XCOMMENT= Mesa off-screen rendering interface X XBUILD_DEPENDS= makedepend:${PORTSDIR}/devel/makedepend X XCONFLICTS= XFree86-libraries-* xorg-libraries-6.* X XUSE_GL= yes XUSE_GMAKE= yes XUSE_LDCONFIG= yes XMAKE_ARGS= MAKE=${GMAKE} X XWRKSRC= ${WRKDIR}/Mesa-${PORTVERSION} XUSE_BZIP2= yes XUSE_LDCONFIG= yes X XALL_TARGET= realclean freebsd-osmesa XCOLCHAN= 16 32 X X.for chan in ${COLCHAN} X. if !defined(${WITHOUT_OSMESA${chan}}) XALL_TARGET+= freebsd-osmesa${chan} XPLIST_SUB+= OSM${chan}="" X. else XPLIST_SUB+= OSM${chan}="@comment " X. endif X.endfor X Xpre-everything:: X @${ECHO_MSG} X.for chan in ${COLCHAN} X. if !defined(${WITHOUT_OSMESA${chan}}) X @${ECHO_MSG} "Define WITHOUT_OSMESA${chan} if not interested in ${chan}-bits color channels" X @${ECHO_MSG} X. endif X.endfor X Xpost-extract: X.for chan in "" ${COLCHAN} X ${CP} ${WRKSRC}/configs/linux-osmesa${chan} ${WRKSRC}/configs/freebsd-osmesa${chan} X.endfor X Xpre-configure: X.for chan in "" ${COLCHAN} X ${REINPLACE_CMD} \ X -e 's|Linux|${OPSYS}|' \ X -e 's|linux|${OPSYS:L}|' \ X -e 's|gcc|${CC}|' \ X -e 's|g++|${CXX}|' \ X -e 's|-O3||' \ X -e 's|CFLAGS = |CFLAGS = ${CFLAGS} |' \ X -e 's|CXXFLAGS = |CXXFLAGS = ${CFLAGS} |' \ X -e 's|/usr/X11R6|${X11BASE}|' \ X -e 's|-lpthread|${PTHREAD_LIBS}|' \ X ${WRKSRC}/configs/freebsd-osmesa${chan} X.endfor X ${REINPLACE_CMD} \ X -e 's|^\(MKDEP_OPTIONS.*\)|\1 --|' \ X ${WRKSRC}/configs/default X Xdo-install: X ${MKDIR} ${PREFIX}/include/GL ${PREFIX}/lib X ${INSTALL_DATA} ${WRKSRC}/include/GL/osmesa.h ${PREFIX}/include/GL X.for chan in "" ${COLCHAN} X. if !defined(${WITHOUT_OSMESA${chan}}) X ${INSTALL_PROGRAM} ${WRKSRC}/lib/libOSMesa${chan}.so.7 ${PREFIX}/lib X ${LN} -sf libOSMesa${chan}.so.7 ${PREFIX}/lib/libOSMesa${chan}.so X. endif X.endfor X X.include END-of-graphics/osmesa/Makefile echo x - graphics/osmesa/distinfo sed 's/^X//' >graphics/osmesa/distinfo << 'END-of-graphics/osmesa/distinfo' XMD5 (MesaLib-7.0.tar.bz2) = 50c371455fa7532c04aa0a970f9bc51f XSHA256 (MesaLib-7.0.tar.bz2) = dc4dcd24712c4bdafc430f281e7200b9b7d9a6de1995223275def1d1bf012c08 XSIZE (MesaLib-7.0.tar.bz2) = 3366124 END-of-graphics/osmesa/distinfo echo x - graphics/osmesa/pkg-descr sed 's/^X//' >graphics/osmesa/pkg-descr << 'END-of-graphics/osmesa/pkg-descr' XMesa's off-screen rendering interface is used for rendering into user-allocated Xblocks of memory. That is, the GL_FRONT colorbuffer is actually a buffer in main Xmemory, rather than a window on your display. There are no window system or Xoperating system dependencies. One potential application is to use Mesa as an Xoff-line, batch-style renderer. X XWWW: http://www.mesa3d.org/osmesa.html END-of-graphics/osmesa/pkg-descr echo x - graphics/osmesa/pkg-plist sed 's/^X//' >graphics/osmesa/pkg-plist << 'END-of-graphics/osmesa/pkg-plist' Xinclude/GL/osmesa.h Xlib/libOSMesa.so Xlib/libOSMesa.so.7 X%%OSM16%%lib/libOSMesa16.so X%%OSM16%%lib/libOSMesa16.so.7 X%%OSM32%%lib/libOSMesa32.so X%%OSM32%%lib/libOSMesa32.so.7 X@dirrmtry include/GL END-of-graphics/osmesa/pkg-plist exit --- osmesa.shar ends here ---