%define name glui %define major 2 %define minor 2 %define release 4mdk %define libname %mklibname %{name} %major %define libnamedev %mklibname %{name} %major -d Summary: GL User Interface Library Name: %name Version: %major.%minor Release: %release Group: System/Libraries URL: http://www.cs.unc.edu/~rademach/glui Source: glui_v%{major}_%{minor}.tar.bz2 Patch: glui.patch.bz2 License: LGPL BuildRoot: %{_tmppath}/%{name}-root BuildRequires: libMesaGLU-devel libMesaglut-devel %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. %package -n %libnamedev Summary: GLUI User Interface Library Development Files Group: System/Libraries %description -n %libnamedev 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. This package includes the header files and static library. %package -n %name-demos Summary: GLUI Demos Group: Graphics %description -n %name-demos 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. This package includes some binaries statically built with GLUI. Their source code is in /usr/share/libglui-devel-%major_%minor. %prep %setup -n glui_v%{major}_%{minor} %patch -p1 %build mkdir lib mkdir bin make GLUT_LIB_LOCATION=/usr/X11R6/lib GLUT_INC_LOCATION=/usr/X11R6/include/GL CFLAGS="$RPM_OPT_FLAGS" CC=g++ for i in 1 2 3 4 5; do mv bin/example$i bin/GLUI-example$i; done %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/%_bindir mkdir -p $RPM_BUILD_ROOT/usr/X11R6/include/GL mkdir -p $RPM_BUILD_ROOT/usr/X11R6/lib mkdir -p $RPM_BUILD_ROOT/%_datadir/%name-demos cp lib/*.a $RPM_BUILD_ROOT/usr/X11R6/lib/ cp *.h $RPM_BUILD_ROOT/usr/X11R6/include/GL cp bin/* $RPM_BUILD_ROOT/%_bindir cp example*.cpp $RPM_BUILD_ROOT/%_datadir/%name-demos %clean rm -r $RPM_BUILD_ROOT %files -n %libnamedev %defattr(-,root,root) %doc glui_manual.pdf readme.txt /usr/X11R6/include/GL /usr/X11R6/lib/*.a %files -n %name-demos %defattr(-,root,root) %_datadir/%name-demos/example*.cpp %_bindir/GLUI-example* %changelog * Fri Jun 11 2004 Lenny Cartier <lenny@mandrakesoft.com> 2.2-4mdk - rebuild * Thu Mar 6 2003 Austin Acton <aacton@yorku.ca> 2.2-3mdk - fix library location * Thu Jan 23 2003 Lenny Cartier <lenny@mandrakesoft.com> 2.2-2mdk - rebuild * Mon Nov 25 2002 Lenny Cartier <lenny@mandrakesoft.com> 2.2-1mdk - from Austin Acton <aacton@yorku.ca> : - initial package for Mandrake 9.0 - made patch to avoid void main() definitions