diff options
Diffstat (limited to 'graphics/freeglut')
-rw-r--r-- | graphics/freeglut/Makefile | 72 | ||||
-rw-r--r-- | graphics/freeglut/distinfo | 2 | ||||
-rw-r--r-- | graphics/freeglut/files/extra-patch-src__freeglut_joystick.c | 42 | ||||
-rw-r--r-- | graphics/freeglut/files/patch-prog-demos-smooth_opengl3.c | 18 | ||||
-rw-r--r-- | graphics/freeglut/pkg-descr | 13 | ||||
-rw-r--r-- | graphics/freeglut/pkg-message | 9 | ||||
-rw-r--r-- | graphics/freeglut/pkg-plist | 26 |
7 files changed, 182 insertions, 0 deletions
diff --git a/graphics/freeglut/Makefile b/graphics/freeglut/Makefile new file mode 100644 index 0000000..713bed7 --- /dev/null +++ b/graphics/freeglut/Makefile @@ -0,0 +1,72 @@ +# vim:ts=8:sw=8 +# New ports collection makefile for: freeglut +# Date created: Wed Apr 23 2003 +# Whom: thierry@pompo.net +# +# $FreeBSD: ports/graphics/freeglut/Makefile,v 1.26 2011/09/23 22:23:09 amdmi3 Exp $ +# + +PORTNAME= freeglut +PORTVERSION= 2.8.0 +CATEGORIES= graphics +MASTER_SITES= SF/${PORTNAME:L}/${PORTNAME:L}/${PORTVERSION} + +MAINTAINER= x11@FreeBSD.org +COMMENT= An alternative to the OpenGL Utility Toolkit (GLUT) library + +CONFLICTS= libglut-[0-9].* + +USE_GMAKE= yes +USE_AUTOTOOLS= libtool +GNU_CONFIGURE= yes +USE_LDCONFIG= yes +USE_XORG= ice xi xrandr +USE_GL= glu +CONFIGURE_ARGS= --disable-warnings +LDFLAGS+= -lusbhid -L${LOCALBASE}/lib +USE_LDCONFIG= yes + +DOCS= download.html freeglut.html freeglut_logo.png \ + freeglut_user_interface.html index.html ogl_sm.png \ + progress.html structure.html +BINS= CallbackMaker Fractals Fractals_random Lorenz One shapes + +.include <bsd.port.pre.mk> + +.if ${OSVERSION} >= 800000 +EXTRA_PATCHES= ${FILESDIR}/extra-patch-src__freeglut_joystick.c +.endif + +pre-configure: +.for fract in Fractals/fractals.c Fractals_random/fractals_random.c + @${REINPLACE_CMD} -e "s|/usr/local|${PREFIX}|g" \ + ${WRKSRC}/progs/demos/${fract} +.endfor + +post-build: + @${MV} ${WRKSRC}/progs/demos/CallbackMaker/.libs/CallbackMaker \ + ${WRKSRC}/progs/demos/CallbackMaker/.libs/callbackmaker + +post-install: +.if !defined(NOPORTDOCS) + @${MKDIR} ${DOCSDIR} +.for FILE in ${DOCS} + @${INSTALL_DATA} ${WRKSRC}/doc/${FILE} ${DOCSDIR} +.endfor + @${ECHO_MSG} "===> Documentation installed in ${DOCSDIR}." +.endif +.if !defined(NOPORTEXAMPLES) + @${MKDIR} ${EXAMPLESDIR} + @${INSTALL_DATA} ${WRKSRC}/progs/demos/Fractals/fractals.dat ${EXAMPLESDIR} +.for prog in ${BINS} + @${INSTALL_PROGRAM} ${WRKSRC}/progs/demos/${prog}/.libs/${prog:L} ${EXAMPLESDIR} +.endfor + @${ECHO_MSG} "===> Examples installed in ${EXAMPLESDIR}." +.endif +.if ${OSVERSION} >= 800000 + @${ECHO_MSG} + @${CAT} ${PKGMESSAGE} + @${ECHO_MSG} +.endif + +.include <bsd.port.post.mk> diff --git a/graphics/freeglut/distinfo b/graphics/freeglut/distinfo new file mode 100644 index 0000000..81ae29d --- /dev/null +++ b/graphics/freeglut/distinfo @@ -0,0 +1,2 @@ +SHA256 (freeglut-2.8.0.tar.gz) = 197293ff886abe613bc9eb4a762d9161b0c9e64b3e8e613ed7c5e353974fba05 +SIZE (freeglut-2.8.0.tar.gz) = 979459 diff --git a/graphics/freeglut/files/extra-patch-src__freeglut_joystick.c b/graphics/freeglut/files/extra-patch-src__freeglut_joystick.c new file mode 100644 index 0000000..e6021d8 --- /dev/null +++ b/graphics/freeglut/files/extra-patch-src__freeglut_joystick.c @@ -0,0 +1,42 @@ +--- src/freeglut_joystick.c.orig 2011-09-28 03:37:26.000000000 +0200 ++++ src/freeglut_joystick.c 2012-01-30 20:25:02.000000000 +0100 +@@ -80,11 +80,13 @@ + # include <string.h> + # endif + # if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) ++# include <osreldate.h> + /* XXX The below hack is done until freeglut's autoconf is updated. */ + # define HAVE_USB_JS 1 + + # if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + # include <sys/joystick.h> ++# include <dev/usb/usb_ioctl.h> + # else + /* + * XXX NetBSD/amd64 systems may find that they have to steal the +@@ -152,7 +154,7 @@ + # include <libusbhid.h> + # endif + # endif +-# include <legacy/dev/usb/usb.h> ++# include <dev/usb/usb.h> + # include <dev/usb/usbhid.h> + + /* Compatibility with older usb.h revisions */ +@@ -199,7 +201,7 @@ + */ + static char *fghJoystickWalkUSBdev(int f, char *dev, char *out, int outlen) + { +- struct usb_device_info di; ++/* struct usb_device_info di; + int i, a; + char *cp; + +@@ -220,6 +222,7 @@ + return out; + } + } ++ */ + return NULL; + } + diff --git a/graphics/freeglut/files/patch-prog-demos-smooth_opengl3.c b/graphics/freeglut/files/patch-prog-demos-smooth_opengl3.c new file mode 100644 index 0000000..53866ea --- /dev/null +++ b/graphics/freeglut/files/patch-prog-demos-smooth_opengl3.c @@ -0,0 +1,18 @@ +--- progs/demos/smooth_opengl3/smooth_opengl3.c.orig 2011-12-14 04:35:07.000000000 +0100 ++++ progs/demos/smooth_opengl3/smooth_opengl3.c 2012-01-31 19:11:53.000000000 +0100 +@@ -94,6 +94,7 @@ + typedef ptrdiff_t ourGLsizeiptr; + typedef char ourGLchar; + ++#if defined(WIN32) + #ifndef APIENTRY + #define APIENTRY + #endif +@@ -117,6 +118,7 @@ + typedef void (APIENTRY *PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index); + typedef GLint (APIENTRY *PFNGLGETUNIFORMLOCATIONPROC) (GLuint program, const ourGLchar *name); + typedef void (APIENTRY *PFNGLUNIFORMMATRIX4FVPROC) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); ++#endif /* WIN32 */ + + PFNGLGENBUFFERSPROC gl_GenBuffers; + PFNGLBINDBUFFERPROC gl_BindBuffer; diff --git a/graphics/freeglut/pkg-descr b/graphics/freeglut/pkg-descr new file mode 100644 index 0000000..12d1586 --- /dev/null +++ b/graphics/freeglut/pkg-descr @@ -0,0 +1,13 @@ +freeglut is a completely OpenSourced alternative to the OpenGL Utility +Toolkit (GLUT) library. GLUT was originally written by Mark Kilgard to +support the sample programs in the second edition OpenGL 'RedBook'. +Since then, GLUT has been used in a wide variety of practical applications +because it is simple, universally available and highly portable. + +GLUT (and hence freeglut) allows the user to create and manage windows +containing OpenGL contexts on a wide range of platforms and also read the +mouse, keyboard and joystick functions. + +freeglut is released under the X-Consortium license. + +WWW: http://freeglut.sourceforge.net/ diff --git a/graphics/freeglut/pkg-message b/graphics/freeglut/pkg-message new file mode 100644 index 0000000..8bf6ef5 --- /dev/null +++ b/graphics/freeglut/pkg-message @@ -0,0 +1,9 @@ +Since FreeBSD has new USB stack, freeglut normally doesn't build on FreeBSD 8 +(yet). To workaround this I created small, ugly patch. this patch adds one +include file and comments out content of one function (only leaves return NULL). + +I have no idea what kind of side effects this can cause. Joystick wont work. +There might be ports that won't compile, or apps that may crash because of +this. I don't know. + +If you face any problems delete this port and install graphics/libglut. diff --git a/graphics/freeglut/pkg-plist b/graphics/freeglut/pkg-plist new file mode 100644 index 0000000..8ddb105 --- /dev/null +++ b/graphics/freeglut/pkg-plist @@ -0,0 +1,26 @@ +include/GL/freeglut.h +include/GL/freeglut_ext.h +include/GL/freeglut_std.h +include/GL/glut.h +lib/libglut.a +lib/libglut.la +lib/libglut.so +lib/libglut.so.12 +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/callbackmaker +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/fractals +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/fractals_random +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/fractals.dat +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lorenz +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/one +%%PORTEXAMPLES%%%%EXAMPLESDIR%%/shapes +%%PORTDOCS%%%%DOCSDIR%%/download.html +%%PORTDOCS%%%%DOCSDIR%%/freeglut.html +%%PORTDOCS%%%%DOCSDIR%%/freeglut_logo.png +%%PORTDOCS%%%%DOCSDIR%%/freeglut_user_interface.html +%%PORTDOCS%%%%DOCSDIR%%/index.html +%%PORTDOCS%%%%DOCSDIR%%/ogl_sm.png +%%PORTDOCS%%%%DOCSDIR%%/progress.html +%%PORTDOCS%%%%DOCSDIR%%/structure.html +%%PORTDOCS%%@dirrm %%DOCSDIR%% +%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%% +@dirrmtry include/GL |