ports/61406: New port: graphics/glui A GLUT-based C++ user interface library

Igor Pokrovsky tiamat at comset.net
Fri Jan 16 04:30:26 UTC 2004


>Number:         61406
>Category:       ports
>Synopsis:       New port: graphics/glui A GLUT-based C++ user interface library
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jan 15 20:30:17 PST 2004
>Closed-Date:
>Last-Modified:
>Originator:     Igor Pokrovsky
>Release:        FreeBSD 4.9-STABLE i386
>Organization:
>Environment:
System: FreeBSD doom.homeunix.org 4.9-STABLE FreeBSD 4.9-STABLE #1: Sun Dec 14 13:12:44 MSK 2003 root at doom.homeunix.org:/usr/obj/usr/src/sys/KERNEL i386


	
>Description:
GLUI is a GLUT-based C++ user interface library which provides                 
controls such as buttons, checkboxes, radio buttons, and spinners              
to OpenGL applications. It is window-system independent, relying               
on GLUT to handle all system-dependent issues, such as window and              
mouse management.
	
>How-To-Repeat:
	
>Fix:

	

--- glui.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:
#
#	glui
#	glui/pkg-plist
#	glui/pkg-descr
#	glui/distinfo
#	glui/Makefile
#	glui/files
#	glui/files/patch-makefile
#	glui/files/makefile.ex
#
echo c - glui
mkdir -p glui > /dev/null 2>&1
echo x - glui/pkg-plist
sed 's/^X//' >glui/pkg-plist << 'END-of-glui/pkg-plist'
Xinclude/glui.h
Xlib/libglui.a
Xlib/libglui.so
Xlib/libglui.so.2
X%%EXAMPLESDIR%%/example1.cpp
X%%EXAMPLESDIR%%/example2.cpp
X%%EXAMPLESDIR%%/example3.cpp
X%%EXAMPLESDIR%%/example4.cpp
X%%EXAMPLESDIR%%/example5.cpp
X%%EXAMPLESDIR%%/makefile
X at dirrm %%EXAMPLESDIR%%
X%%PORTDOCS%%%%DOCSDIR%%/glui_manual.pdf
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
END-of-glui/pkg-plist
echo x - glui/pkg-descr
sed 's/^X//' >glui/pkg-descr << 'END-of-glui/pkg-descr'
XGLUI is a GLUT-based C++ user interface library which provides
Xcontrols such as buttons, checkboxes, radio buttons, and spinners
Xto OpenGL applications. It is window-system independent, relying
Xon GLUT to handle all system-dependent issues, such as window and
Xmouse management.
X
XWWW:	http://www.cs.unc.edu/~rademach/glui/
X
X- Igor Pokrovsky
Xtiamat at comset.net
END-of-glui/pkg-descr
echo x - glui/distinfo
sed 's/^X//' >glui/distinfo << 'END-of-glui/distinfo'
XMD5 (glui_v2_1_beta.tar.gz) = e8ab926ac22f3fbfe3c82f541b924496
END-of-glui/distinfo
echo x - glui/Makefile
sed 's/^X//' >glui/Makefile << 'END-of-glui/Makefile'
X# New ports collection makefile for:	glui
X# Date created:		15 Jan 2004
X# Whom:			Igor Pokrovsky <tiamat at comset.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	glui
XPORTVERSION=	2.1
XCATEGORIES=	graphics
XMASTER_SITES=	http://www.cs.unc.edu/~rademach/glui/src/release/
XDISTNAME=	${PORTNAME}_v${PORTVERSION:S/./_/}_beta
X
XMAINTAINER=	tiamat at comset.net
XCOMMENT=	A GLUT-based C++ user interface library
X
XLIB_DEPENDS=	glut.3:${PORTSDIR}/graphics/libglut
X
XUSE_GMAKE=	yes
XUSE_X_PREFIX=	yes
XUSE_GL=		yes
XINSTALLS_SHLIB=	yes
XMAKEFILE=	makefile
XMAKE_ARGS=	MKDIR="${MKDIR}"
XALL_TARGET=     All
X
Xpre-build:
X	@${PERL} -pi -e 's/\r//g' `${FIND} -E ${WRKSRC} \
X		-iregex "(.*\.c|.*\.cpp|.*\.h|.*makefile)" -type f -maxdepth 1`
X
Xdo-install:
X	${INSTALL_PROGRAM} ${WRKSRC}/lib/libglui.so.2 ${PREFIX}/lib
X	${LN} -fs ${PREFIX}/lib/libglui.so.2 ${PREFIX}/lib/libglui.so
X	${INSTALL_DATA} ${WRKSRC}/lib/libglui.a ${PREFIX}/lib
X	${INSTALL_DATA} ${WRKSRC}/glui.h ${PREFIX}/include
X
X	@${MKDIR} ${EXAMPLESDIR}
X	${INSTALL_DATA} ${WRKSRC}/example* ${EXAMPLESDIR}
X	${PERL} -pi -e 's|%%CXX%%|${CXX}|g; \
X			s|%%RM%%|${RM}|g; \
X			s|%%CXXFLAGS%%|${CXXFLAGS}|g; \
X			s|%%PREFIX%%|${PREFIX}|g' \
X	<${FILESDIR}/makefile.ex >${EXAMPLESDIR}/makefile
X
X.ifndef (NOPORTDOCS)
X	@${MKDIR} ${DOCSDIR}
X	${INSTALL_DATA} ${WRKSRC}/glui_manual.pdf ${DOCSDIR}
X.endif
X
X.include <bsd.port.mk>
END-of-glui/Makefile
echo c - glui/files
mkdir -p glui/files > /dev/null 2>&1
echo x - glui/files/patch-makefile
sed 's/^X//' >glui/files/patch-makefile << 'END-of-glui/files/patch-makefile'
X--- makefile.orig	Sat Jul 10 00:38:44 1999
X+++ makefile	Thu Jan 15 16:16:26 2004
X@@ -5,17 +5,18 @@
X #Change the following two lines to reflect the locations
X # of the GLUT library (.a) and includes on your system
X 
X-GLUT_LIB_LOCATION=/unc/walk/lib/sgi_irix
X-GLUT_INC_LOCATION=/unc/walk/include
X+GLUT_LIB_LOCATION=${X11BASE}/lib
X+GLUT_INC_LOCATION=${X11BASE}/include
X 
X-CFLAGS = 
X+#CFLAGS = 
X 
X 
X #for sgi   -- comment out the lines below to use on HP
X-CC=CC -g0 -o32
X-#CC=gcc
X-#CC=g++ -O3
X-CPPFLAGS=-I${GLUT_INC_LOCATION} #-w 
X+#CC=CC -g0 -o32
X+CC?=gcc
X+CXX?=g++
X+LD?=ld
X+CXXFLAGS+=-I${GLUT_INC_LOCATION} #-w 
X GLLIBS=-L${GLUT_LIB_LOCATION} -lglut -lGL -lGLU
X LPATH=${GLUTPATH} 
X INCS= 
X@@ -25,7 +26,7 @@
X 
X LIBGLUI= -Llib -lglui
X 
X-All: lib/libglui.a bin/example1 bin/example2 bin/example3 bin/example4 bin/example5
X+All: lib/libglui.so.2 lib/libglui.a
X 
X GLUI_OBJS = glui_add_controls.o glui.o glui_bitmap_img_data.o glui_bitmaps.o glui_button.o glui_edittext.o glui_checkbox.o glui_node.o glui_radio.o glui_statictext.o glui_panel.o glui_separator.o glui_spinner.o glui_control.o glui_column.o glui_translation.o glui_rotation.o glui_mouse_iaction.o glui_listbox.o glui_rollout.o arcball.o algebra3.o quaternion.o
X 
X@@ -49,15 +50,22 @@
X 	@echo "Linking example5"
X 	$(CC)  $(CFLAG) $(CPPFLAGS) $(LPATH) example5.o $(LIBGLUI) $(libs) -o bin/example5
X 
X-lib/libglui.a: $(GLUI_OBJS)
X-	@echo "Creating library"
X-	ar -r lib/libglui.a $(GLUI_OBJS)
X+lib:
X+	${MKDIR} $@
X+
X+lib/libglui.a: lib $(GLUI_OBJS)
X+	@echo "Creating static library"
X+	ar -r $@ $(GLUI_OBJS)
X+
X+lib/libglui.so.2: lib $(GLUI_OBJS)
X+	@echo "Creating shared library"
X+	${LD} -E -shared -o $@ $(GLUI_OBJS)
X 
X .cpp.o:
X-	$(CC) -c $(CFLAGS) $(CPPFLAGS) $(INCS) $*.cpp
X+	$(CXX) -c $(CXXFLAGS) $(INCS) $*.cpp
X 
X .c.o:
X-	$(CC) -c $(CFLAGS) $(CPPFLAGS) $(INCS) $*.c
X+	$(CC) -c $(CFLAGS) $(INCS) $*.c
X clean:
X 	/bin/rm *.o
X 
X@@ -98,4 +106,4 @@
X glui_rotation.o: glui.h stdinc.h  
X glui_mouse_iaction.o: glui.h stdinc.h  
X glui_listbox.o: glui.h stdinc.h  
X-glui_rollout.o: glui.h stdinc.h 
X\ No newline at end of file
X+glui_rollout.o: glui.h stdinc.h 
END-of-glui/files/patch-makefile
echo x - glui/files/makefile.ex
sed 's/^X//' >glui/files/makefile.ex << 'END-of-glui/files/makefile.ex'
XCXX=%%CXX%%
XRM=%%RM%%
XCXXFLAGS=%%CXXFLAGS%% -I%%PREFIX%%/include
XLDFLAGS=-L%%PREFIX%%/lib -lglui -lglut -lGL -l GLU -lXmu -lXext -lX11 -lXi -lm
X
Xall: example1 example2 example3 example4 example5
X
Xexample1: example1.o
X	${CXX} ${LDFLAGS} -o $@ $>
X
Xexample2: example2.o
X	${CXX} ${LDFLAGS} -o $@ $>
X
Xexample3: example3.o
X	${CXX} ${LDFLAGS} -o $@ $>
X
Xexample4: example4.o
X	${CXX} ${LDFLAGS} -o $@ $>
X
Xexample5: example5.o
X	${CXX} ${LDFLAGS} -o $@ $>
X
X.cpp.o:
X	${CXX} -c ${CXXFLAGS} $*.cpp
X
Xclean:
X	${RM} -f example? *.o
END-of-glui/files/makefile.ex
exit
--- glui.shar ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list