6831268 Upgrade rss-glx screensaver modules from 0.8.1 to 0.8.3
authorAlan Coopersmith <Alan.Coopersmith@Sun.COM>
Thu, 16 Apr 2009 18:38:26 -0700
changeset 684 1822e0f4b539
parent 683 29bb437edd01
child 685 6e48a0bc006d
6831268 Upgrade rss-glx screensaver modules from 0.8.1 to 0.8.3 6831264 rss-glx modules should be built with Sun compilers instead of gcc/g++
open-src/app/rss-glx/Copyright-notices
open-src/app/rss-glx/Makefile
open-src/app/rss-glx/busyspheres.patch
open-src/app/rss-glx/cflags.patch
open-src/app/rss-glx/install-util.patch
open-src/app/rss-glx/kde-config.patch
open-src/app/rss-glx/lorenz.patch
open-src/app/rss-glx/matrixview.patch
open-src/app/rss-glx/pkg-config.patch
open-src/app/rss-glx/rss-glx-0.8.1-gcc43-buildfix.patch
open-src/app/rss-glx/sincosf.patch
open-src/app/rss-glx/sun-cxx.patch
open-src/common/Makefile.init
open-src/common/delibtoolize.pl
packages/SUNWxscreensaver-hacks-gl/prototype_com
--- a/open-src/app/rss-glx/Copyright-notices	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/app/rss-glx/Copyright-notices	Thu Apr 16 18:38:26 2009 -0700
@@ -1,3 +1,21 @@
+Utility code included in multiple "Really Slick Screensavers" (rss-glx) 
+hack modules is covered by the following notice:
+
+Copyright (C) 1999-2005  Terence M. Welsh
+
+Copyright (C) 2002 Tugrul Galatali <[email protected]>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License version 2 as 
+published by the Free Software Foundation.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+------------------------------------------------------------------------------
+
 The colorfire hack is covered by the following notice:
 
 Copyright (c) 1999 by Andreas Gustafsson and Tugrul Galatali.  
@@ -16,6 +34,7 @@
 The hufo_smoke hack is covered by the following notice:
 
 Copyright (c) 2000 by Jeremie Allard and Tugrul Galatali.  
+Copyright (C) 2002  Jeremie Allard (Hufo / N.A.A.)
 
 hufo_smoke is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License version 2 as
@@ -31,6 +50,8 @@
 The hufo_tunnel hack is covered by the following notice:
 
 Copyright (c) 2000 by Jeremie Allard and Tugrul Galatali.  
+Copyright (C) 2002 Andreas Gustafsson
+Copyright (C) 2002 Jeremie Allard (Hufo / N.A.A.)
 
 hufo_tunnel is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License version 2 as
@@ -223,6 +244,21 @@
 
 ------------------------------------------------------------------------------
 
+The hyperspace hack is covered by the following notice:
+
+Copyright (c) 2005 by Terry Walsh and Tugrul Galatali.  
+
+Hyperspace is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License version 2 as
+published by the Free Software Foundation.
+
+Hyperspace is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+------------------------------------------------------------------------------
+
 The plasma hack is covered by the following notice:
 
 Copyright (c) 2002 by Terry Walsh and Tugrul Galatali.  
@@ -268,6 +304,22 @@
 
 ------------------------------------------------------------------------------
 
+The lorenz hack is covered by the following notice:
+
+Copyright (C) 2002, 2009  S?ren Sonnenburg <[email protected]>
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+------------------------------------------------------------------------------
+
 		    GNU GENERAL PUBLIC LICENSE
 		       Version 2, June 1991
 
--- a/open-src/app/rss-glx/Makefile	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/app/rss-glx/Makefile	Thu Apr 16 18:38:26 2009 -0700
@@ -2,7 +2,7 @@
 #
 # Really Slick Screensavers for GLX Makefile
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use subject to license terms.
 #
 # Permission is hereby granted, free of charge, to any person obtaining a
@@ -30,14 +30,14 @@
 # or other dealings in this Software without prior written authorization
 # of the copyright holder.
 #
-# @(#)Makefile	1.3	08/11/26
+# @(#)Makefile	1.4	09/04/16
 #
 
 # Package name used in tarballs
 MODULE_NAME=rss-glx
 
 # Version number (used in path names)
-MODULE_VERSION=0.8.1
+MODULE_VERSION=0.8.3
 
 # Source tarball/directory name - uses _ instead of default -
 SOURCE_DIRNAME=$(MODULE_NAME)_$(MODULE_VERSION)
@@ -48,9 +48,15 @@
 SOURCE_URL_SET=yes
 
 # Patches to apply to source after unpacking, in order
-SOURCE_PATCHES = busyspheres.patch matrixview.patch \
-	install-util.patch cflags.patch kde-config.patch \
-	rss-glx-0.8.1-gcc43-buildfix.patch,-p1
+SOURCE_PATCHES = \
+	pkg-config.patch \
+	matrixview.patch \
+	install-util.patch \
+	cflags.patch \
+	kde-config.patch \
+	lorenz.patch,-p1 \
+	sincosf.patch \
+	sun-cxx.patch
 
 # Man pages to apply Sun footer to & attributes to list
 SUNTOUCHED_MANPAGES=*src/*.1 reallyslick/*src/*.1
@@ -73,23 +79,20 @@
 MODULE_PREFIX=$(XSS_DIR)
 MODULE_PREFIX_SET=yes
 
-# We don't use normal $(PROG_CFLAGS) since this is built with gcc/g++
-MODULE_COMPILER=gcc
-MODULE_COMPILER_SET=yes
-
 include ../Makefile.inc
 
-# Configure flag to enable building with -O2 instead of -g
-# Disabled by running "make debug" target
-$(BUILD_DEBUG:yes=$(POUND_SIGN)) RSS_GLX_DEBUGFLAGS= --disable-debug 
-
-# Regen configure script
+# Regen configure script after changing configure.in in several patches
 AUTORECONF=yes
 
-MODULE_CONFIG_OPTS= --disable-sound \
+# Need to fix libtool interference with our linker flags
+DELIBTOOLIZE=yes
+
+MODULE_CONFIG_OPTS=  --disable-sound \
 	--bindir='$$(prefix)/hacks' --mandir=$(X11_DIR)/share/man \
-	--with-configdir=$(XSS_DIR)/config/control-center-2.0 \
-	$(RSS_GLX_DEBUGFLAGS)
+	--with-configdir=$(XSS_DIR)/config/control-center-2.0
+
+# Override LDFLAGS to not include CFLAGS that confuse CC
+MODULE_CONFIG_ENV= LDFLAGS="$(DEFAULT_CONFIG_LDFLAGS) $(MODTYPE_LDFLAGS)"
 
 # Clear pictures we don't want in build
 source_gen::
@@ -107,8 +110,8 @@
 	-case '$(MAKEFLAGS)' in *[ik]*) set +e;; esac;
 	(cd $(SOURCE_DIR) ; \
 	 for m in $(SUNTOUCHED_MANPAGES) ; do \
-	    mv $(PROTODIR)$(X11_DIR)/share/man/man1/`basename $$m` \
-	       $(PROTODIR)$(X11_DIR)/share/man/man6/`basename $$m .1`.6 ; \
+	    mv $(PROTODIR)$(X11_DIR)/share/man/man1/$$(basename $$m) \
+	       $(PROTODIR)$(X11_DIR)/share/man/man6/$$(basename $$m .1).6 ; \
 	 done )
 
 
--- a/open-src/app/rss-glx/busyspheres.patch	Mon Apr 06 18:23:02 2009 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
---- other_src/busyspheres.c	Sat Apr  9 15:10:50 2005
-+++ other_src/busyspheres.c	Tue May 16 13:30:02 2006
-@@ -40,7 +40,7 @@
- 
- int OldMode = 0, NewMode;
- float ConvertTime = 0;
--float Points[NRPOINTS][3];
-+float Points[NRPOINTS][4];
- 
- void hack_reshape (xstuff_t * XStuff)
- {
--- a/open-src/app/rss-glx/cflags.patch	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/app/rss-glx/cflags.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -1,27 +1,40 @@
---- configure.in	Sat Feb 25 13:10:54 2006
-+++ configure.in	Tue May 16 15:52:18 2006
-@@ -7,18 +7,18 @@
- AC_PROG_AWK
- 
+Don't try to set gcc/g++ flags for non-GNU compilers.
+
+Submitted upstream at:
+https://sourceforge.net/tracker/?func=detail&atid=517001&aid=2767126&group_id=67131
+
+diff -urp -x '*~' -x '*.orig' configure.in configure.in
+--- configure.in	2009-04-15 16:27:40.888792000 -0700
++++ configure.in	2009-04-15 16:27:43.635906000 -0700
+@@ -9,19 +9,27 @@ AC_PROG_AWK
  AC_PROG_CC
--CFLAGS=-g
-+DEBUG_CFLAGS=-g
+ AC_GNU_SOURCE
+ 
+-CFLAGS=-O2
++if test "x$GCC" = xyes; then
++    CFLAGS="-O2"
++fi
  AC_ARG_ENABLE([debug], [AC_HELP_STRING([--enable-debug],
-     [build with debugging information default=yes])],
--    [test "$enableval" = "no" && CFLAGS="-O2"])
+     [build with debugging information default=no])],
+     [test "$enableval" = "yes" && CFLAGS="-g"])
 -CFLAGS="$CFLAGS -Wall"
-+    [test "$enableval" = "no" && DEBUG_CFLAGS="-O2"])
-+CFLAGS="$DEBUG_CFLAGS -Wall $CFLAGS"
++if test "x$GCC" = xyes; then
++    CFLAGS="$CFLAGS -Wall"
++fi
  
  AC_PROG_CXX
--CXXFLAGS=-g
-+DEBUG_CXXFLAGS=-g
+ 
+-CXXFLAGS=-O2
++if test "x$GXX" = xyes; then
++    CXXFLAGS="-O2"
++fi
  AC_ARG_ENABLE([debug], [AC_HELP_STRING([--enable-debug],
-     [build with debugging information default=yes])],
--    [test "$enableval" = "no" && CXXFLAGS="-O2"])
+     [build with debugging information default=no])],
+     [test "$enableval" = "yes" && CXXFLAGS="-g"])
 -CXXFLAGS="$CXXFLAGS -Wall"
-+    [test "$enableval" = "no" && DEBUG_CXXFLAGS="-O2"])
-+CXXFLAGS="$DEBUG_CXXFLAGS -Wall $CXXFLAGS"
++if test "x$GXX" = xyes; then
++    CXXFLAGS="$CXXFLAGS -Wall"
++fi
  
  AC_PROG_INSTALL
  AM_DISABLE_SHARED
--- a/open-src/app/rss-glx/install-util.patch	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/app/rss-glx/install-util.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -1,5 +1,6 @@
---- utils/rss-glx_install.pl~	Sat Apr  9 19:09:41 2005
-+++ utils/rss-glx_install.pl	Fri May 12 00:31:55 2006
+diff -urp -x '*~' -x '*.orig' utils/rss-glx_install.pl utils/rss-glx_install.pl
+--- utils/rss-glx_install.pl	2009-04-15 17:30:13.075036000 -0700
++++ utils/rss-glx_install.pl	2009-04-15 17:30:15.087953000 -0700
 @@ -1,10 +1,10 @@
  #!/usr/bin/env perl
  use strict;
@@ -15,9 +16,9 @@
  
  my $screensavers = { };
  
-@@ -28,15 +28,15 @@
- $screensavers->{'spirographx'} 	= '  GL:            "SpirographX"  spirographx --root                          \\n\\';
- $screensavers->{'matrixview'} 	= '  GL:             "MatrixView"  matrixview --root                           \\n\\';
+@@ -29,15 +29,15 @@ $screensavers->{'spirographx'} 	= '  GL:
+ $screensavers->{'matrixview'} 	= '  GL:             "MatrixView"  matrixview --root -i /usr/share/pixmaps/faces \\n\\';
+ $screensavers->{'lorenz'}	= '  GL:                 "Lorenz"  lorenz --root                               \\n\\';
  
 -open XSCREENSAVER, "$ENV{'HOME'}/.xscreensaver";
 +open XSCREENSAVER, "$ARGV[0]";
--- a/open-src/app/rss-glx/kde-config.patch	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/app/rss-glx/kde-config.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -1,6 +1,12 @@
---- reallyslick/cpp_src/Makefile.am~	2006-02-25 12:21:23.000000000 -0800
-+++ reallyslick/cpp_src/Makefile.am	2008-03-07 16:20:54.728537000 -0800
-@@ -19,7 +19,7 @@
+Don't install KDE config files if configure didn't find a place for them
+
+Submitted upstream at:
+https://sourceforge.net/tracker/?func=detail&aid=2767142&group_id=67131&atid=517001
+
+diff -urp -x '*~' -x '*.orig' reallyslick/cpp_src/Makefile.am reallyslick/cpp_src/Makefile.am
+--- reallyslick/cpp_src/Makefile.am	2008-08-31 18:22:00.000000000 -0700
++++ reallyslick/cpp_src/Makefile.am	2009-04-15 16:27:45.972615000 -0700
+@@ -20,7 +20,7 @@ if INSTALL_XSCREENSAVER_CONFIG_FILES
  dist_config_DATA = cyclone.xml fieldlines.xml flocks.xml flux.xml helios.xml hyperspace.xml plasma.xml skyrocket.xml solarwinds.xml
  endif
  
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/open-src/app/rss-glx/lorenz.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -0,0 +1,75 @@
+Make lorenz build on Solaris by renaming time variable to avoid conflict
+with time() function defined in system headers.
+
+Fixes compiler errors:
+"lorenz.cpp", line 68: Error: Multiple declaration for time.
+"lorenz.cpp", line 245: Error: Formal argument t of type float in call to coords_
+at_time(float*, float, float*, float*, float*) is being passed extern "C" long(*)
+(long*).
+"lorenz.cpp", line 246: Error: The operation "extern "C" long(*)(long*) + int" is
+ illegal.
+"lorenz.cpp", line 247: Error: The operation "extern "C" long(*)(long*) + int" is
+ illegal.
+"lorenz.cpp", line 304: Error: The operation "extern "C" long(*)(long*) + int" is
+ illegal.
+"lorenz.cpp", line 305: Error: The operation "extern "C" long(*)(long*) + int" is
+ illegal.
+"lorenz.cpp", line 488: Error: The operand "time" cannot be assigned to.
+"lorenz.cpp", line 546: Error: The operand "*time" cannot be assigned to.
+
+Submitted upstream at:
+https://sourceforge.net/tracker/?func=detail&aid=2767289&group_id=67131&atid=517001
+
+--- rss-glx_0.8.3/other_src/lorenz.cpp	2009-04-12 18:15:01.000000000 -0700
++++ rss-glx_0.8.3/other_src/lorenz.cpp	2009-04-15 18:04:25.480328000 -0700
+@@ -65,7 +65,7 @@
+ static float camera_angle_anim[2] = {5, 179};
+ static float camera_angle_anim_speed=0.1;
+ static float mean[3] = { 0, 0, 0 };
+-static float time;
++static float time_n;
+ static float lastn0 = 0;
+ static float flipn0 = 1;
+ static float deltaflipn0 = 0;
+@@ -242,9 +242,9 @@
+ 	glMatrixMode (GL_MODELVIEW);
+ 	glLoadIdentity ();          
+ 
+-	coords_at_time(lorenz_coords, time,   &p1[0], &p1[1], &p1[2]);
+-	coords_at_time(lorenz_coords, time+10,&p2[0], &p2[1], &p2[2]);
+-	coords_at_time(lorenz_coords, time+15,&p3[0], &p3[1], &p3[2]);
++	coords_at_time(lorenz_coords, time_n,   &p1[0], &p1[1], &p1[2]);
++	coords_at_time(lorenz_coords, time_n+10,&p2[0], &p2[1], &p2[2]);
++	coords_at_time(lorenz_coords, time_n+15,&p3[0], &p3[1], &p3[2]);
+ 
+ 	calc_normal(p1[0], p1[1], p1[2],
+ 			p2[0], p2[1], p2[2],
+@@ -301,8 +301,8 @@
+ 			p2[0], p2[1], p2[2],
+ 			n[0],n[1],n[2]);
+ 
+-	coords_at_time(lorenz_coords, time+10,&p2[0], &p2[1], &p2[2]);
+-	coords_at_time(lorenz_coords, time+2, &p3[0], &p3[1], &p3[2]);
++	coords_at_time(lorenz_coords, time_n+10,&p2[0], &p2[1], &p2[2]);
++	coords_at_time(lorenz_coords, time_n+2, &p3[0], &p3[1], &p3[2]);
+ 
+ 	//set light	
+ 	GLfloat light_position0[] = { p2[0]+n[0], p2[1]+n[1], p2[2]+n[2], 1.0 };
+@@ -485,7 +485,7 @@
+ 	set_camera();
+ 	display();
+ 
+-	time+=37*elapsedTime*camera_speed*num_points/num_precomputed_points;
++	time_n+=37*elapsedTime*camera_speed*num_points/num_precomputed_points;
+ 
+ 	camera_angle+=37*elapsedTime*camera_angle_anim_speed;
+ 	if (camera_angle<camera_angle_anim[0] || camera_angle>camera_angle_anim[1])
+@@ -543,7 +543,7 @@
+ #ifdef DEBUG
+ 	printf("hack_init\n");
+ #endif
+-	time=num_points/3;
++	time_n=num_points/3;
+ 	precompute_lorenz_array();
+ 	reduce_points(num_points_max);
+ 	init_satellites();
--- a/open-src/app/rss-glx/matrixview.patch	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/app/rss-glx/matrixview.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -1,7 +1,7 @@
 diff -urp -x '*~' -x '*.orig' configure.in configure.in
---- configure.in	2006-02-25 13:10:54.000000000 -0800
-+++ configure.in	2008-02-29 13:43:21.157737000 -0800
-@@ -44,6 +44,7 @@ LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA
+--- configure.in	2009-04-15 17:30:11.192993000 -0700
++++ configure.in	2009-04-15 17:30:13.073412000 -0700
+@@ -48,6 +48,7 @@ LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA
  AC_C_CONST
  AC_C_INLINE
  AC_HEADER_TIME
@@ -11,7 +11,7 @@
  AC_CHECK_FUNCS(getopt,,AC_MSG_ERROR([getopt is missing but required.]))
 diff -urp -x '*~' -x '*.orig' other_src/matrixview.c other_src/matrixview.c
 --- other_src/matrixview.c	2006-02-25 13:55:26.000000000 -0800
-+++ other_src/matrixview.c	2008-02-29 13:43:21.158495000 -0800
++++ other_src/matrixview.c	2009-04-15 17:30:13.074216000 -0700
 @@ -18,6 +18,8 @@
  
  // MatrixView screen saver
@@ -22,14 +22,14 @@
  #include <stdio.h>
  #include <stdlib.h>
 diff -urp -x '*~' -x '*.orig' utils/rss-glx_install.pl utils/rss-glx_install.pl
---- utils/rss-glx_install.pl	2005-04-09 19:09:41.000000000 -0700
-+++ utils/rss-glx_install.pl	2008-02-29 13:43:21.159217000 -0800
+--- utils/rss-glx_install.pl	2009-04-13 11:31:12.000000000 -0700
++++ utils/rss-glx_install.pl	2009-04-15 17:30:13.075036000 -0700
 @@ -26,7 +26,7 @@ $screensavers->{'sundancer2'} 	= '  GL: 
  $screensavers->{'biof'} 	= '  GL:                   "BioF"  biof --root                                 \\n\\';
  $screensavers->{'busyspheres'} 	= '  GL:            "BusySpheres"  busyspheres --root                          \\n\\';
  $screensavers->{'spirographx'} 	= '  GL:            "SpirographX"  spirographx --root                          \\n\\';
 -$screensavers->{'matrixview'} 	= '  GL:             "MatrixView"  matrixview --root                           \\n\\';
 +$screensavers->{'matrixview'} 	= '  GL:             "MatrixView"  matrixview --root -i /usr/share/pixmaps/faces \\n\\';
+ $screensavers->{'lorenz'}	= '  GL:                 "Lorenz"  lorenz --root                               \\n\\';
  
  open XSCREENSAVER, "$ENV{'HOME'}/.xscreensaver";
- my @xscreensaver_config_file = <XSCREENSAVER>;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/open-src/app/rss-glx/pkg-config.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -0,0 +1,35 @@
+When the configure script is run with --disable-sound, it fails with:
+
+checking for Wand... configure: error: The pkg-config script could not
+be found or is too old. Make sure it is in your PATH or set the
+PKG_CONFIG environment variable to the full path to pkg-config.
+
+This is because the first use of the PKG_CHECK_MODULES macro in
+configure.in is in the
+if test "x$enable_sound" != "xno"
+section, so is skipped if --disable-sound is given, causing the
+pkg-config variables to not be initialized.
+
+The pkg-config documentation warns about this and offers a fix:
+
+Note that if there is a possibility the first call to
+PKG_CHECK_MODULES might not happen, you should be sure to
+include an explicit call to PKG_PROG_PKG_CONFIG in your
+configure.ac
+
+PKG_PROG_PKG_CONFIG([minversion])
+
+Submitted upstream at:
+https://sourceforge.net/tracker/?func=detail&aid=2767166&group_id=67131&atid=517001
+
+diff -urp -x '*~' -x '*.orig' configure.in configure.in
+--- configure.in	2009-04-13 07:12:07.000000000 -0700
++++ configure.in	2009-04-15 17:30:11.192993000 -0700
+@@ -27,6 +27,7 @@ AC_PROG_INSTALL
+ AM_DISABLE_SHARED
+ AC_PROG_LIBTOOL
+ AC_PROG_LN_S
++PKG_PROG_PKG_CONFIG
+ 
+ # Checks for libraries.
+ AC_CHECK_LIB([m], [pow],,AC_MSG_ERROR(-lm was not found but required.))
--- a/open-src/app/rss-glx/rss-glx-0.8.1-gcc43-buildfix.patch	Mon Apr 06 18:23:02 2009 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-Originally from Fedora RPM's, via:
-http://cvs.fedoraproject.org/viewcvs/rpms/rss-glx/devel/rss-glx-0.8.1-gcc43-buildfix.patch
-
-diff -upNr rss-glx_0.8.1.p.orign/reallyslick/cpp_src/skyrocket_sound.cpp rss-glx_0.8.1.p/reallyslick/cpp_src/skyrocket_sound.cpp
---- rss-glx_0.8.1.p.orign/reallyslick/cpp_src/skyrocket_sound.cpp	2005-04-10 01:00:43.000000000 +0200
-+++ rss-glx_0.8.1.p/reallyslick/cpp_src/skyrocket_sound.cpp	2008-01-04 14:36:38.000000000 +0100
-@@ -24,6 +24,7 @@
- #include <AL/al.h>
- #include <AL/alut.h>
- 
-+#include <cstdlib>
- #include <list>
- 
- #include "loadTexture.h"
-diff -upNr rss-glx_0.8.1.p.orign/reallyslick/Implicit/impSurface.cpp rss-glx_0.8.1.p/reallyslick/Implicit/impSurface.cpp
---- rss-glx_0.8.1.p.orign/reallyslick/Implicit/impSurface.cpp	2005-04-09 22:13:51.000000000 +0200
-+++ rss-glx_0.8.1.p/reallyslick/Implicit/impSurface.cpp	2008-01-04 14:37:07.000000000 +0100
-@@ -21,6 +21,7 @@
- #include <Implicit/impSurface.h>
- #include <math.h>
- #include <iostream>
-+#include <cstring>
- 
- 
- 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/open-src/app/rss-glx/sincosf.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -0,0 +1,42 @@
+The sincosf() function used by spirographx if _GNU_SOURCE is defined
+is also available on Solaris & OpenSolaris & several other platforms,
+not just Linux.
+
+The following patch converts to using a generic autoconf test for the
+function to enable its usage.
+
+Submitted upstream at:
+https://sourceforge.net/tracker/?func=detail&aid=2767432&group_id=67131&atid=517001
+
+diff -urp -x '*~' -x '*.orig' configure.in configure.in
+--- configure.in	2009-04-15 20:14:25.995784000 -0700
++++ configure.in	2009-04-15 20:14:28.005153000 -0700
+@@ -7,7 +7,7 @@ AM_CONFIG_HEADER(config.h)
+ AC_PROG_AWK
+ 
+ AC_PROG_CC
+-AC_GNU_SOURCE
++AC_USE_SYSTEM_EXTENSIONS
+ 
+ if test "x$GCC" = xyes; then
+     CFLAGS="-O2"
+@@ -39,6 +39,7 @@ PKG_PROG_PKG_CONFIG
+ 
+ # Checks for libraries.
+ AC_CHECK_LIB([m], [pow],,AC_MSG_ERROR(-lm was not found but required.))
++AC_CHECK_FUNCS([sincosf])
+ AC_ARG_ENABLE(bzip2, [  --disable-bzip2         Don't compress textures/audio with bzip2.])
+ if test "x$enable_bzip2" != "xno" ; then
+ 	AC_CHECK_LIB([bz2], [BZ2_bzBuffToBuffCompress], AC_SUBST(BZIP2, -lbz2) AC_DEFINE([HAVE_LIBBZ2], [], [libbz2 exists.]))
+diff -urp -x '*~' -x '*.orig' other_src/spirographx.c other_src/spirographx.c
+--- other_src/spirographx.c	2008-08-31 18:36:48.000000000 -0700
++++ other_src/spirographx.c	2009-04-15 20:14:28.006027000 -0700
+@@ -94,7 +94,7 @@ void getAll ()
+ 		const float moverd = (float)m / DETAIL;
+ 		for (n = 0; n < SUBLOOPS; n++) {
+ 			const float pointpoweroverdetail = moverd * poweranswer[n];
+-#ifdef _GNU_SOURCE
++#ifdef HAVE_SINCOSF
+ 			float sinppod, cosppod;
+ 			sincosf(pointpoweroverdetail, &sinppod, &cosppod);
+ #else
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/open-src/app/rss-glx/sun-cxx.patch	Thu Apr 16 18:38:26 2009 -0700
@@ -0,0 +1,24 @@
+The Sun C++ compiler reports errors building hufo-smoke:
+
+"FirePart.h", line 125: Error: Overloading ambiguity between "std::pow(double, double)" and "std::pow(float, float)".
+"FirePart.h", line 165: Error: Overloading ambiguity between "std::pow(double, double)" and "std::pow(float, float)".
+
+Defining the FIREDA constant as a float instead of a double resolves this 
+by making both arguments to the function be float, instead of one float
+and one double.
+
+Submitted upstream at:
+https://sourceforge.net/tracker/?func=detail&aid=2767450&group_id=67131&atid=517001
+
+diff -urp -x '*~' -x '*.orig' oglc_src/FirePart.h oglc_src/FirePart.h
+--- oglc_src/FirePart.h	2005-04-09 10:50:18.000000000 -0700
++++ oglc_src/FirePart.h	2009-04-15 16:27:48.137837000 -0700
+@@ -60,7 +60,7 @@ double nrnd (double d)		// normal distri
+ #define FIRESIZE 1.0f
+ #define FIREDS 0.7
+ #define FIREALPHA 0.15f
+-#define FIREDA 0.4
++#define FIREDA 0.4f
+ #define FIRECYLR 0.2f
+ 
+ struct Particle {
--- a/open-src/common/Makefile.init	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/common/Makefile.init	Thu Apr 16 18:38:26 2009 -0700
@@ -29,7 +29,7 @@
 # or other dealings in this Software without prior written authorization
 # of the copyright holder.
 #
-# @(#)Makefile.init	1.8	09/03/11
+# @(#)Makefile.init	1.9	09/04/16
 #
 
 # Use ksh93 for shell commands in Makefiles so that builds are the same
@@ -101,7 +101,8 @@
 
 CFLAGS_suncc 		= $(DEBUG_OR_OPT_FLAGS_suncc) -v -mc -xstrconst \
 			  -features=extensions
-CXXFLAGS_suncc		= $(DEBUG_OR_OPT_FLAGS_suncc) +w -mc -norunpath
+CXXFLAGS_suncc		= $(DEBUG_OR_OPT_FLAGS_suncc) +w -mc -norunpath \
+			  -features=extensions
 
 ARCH32_FLAGS_sparc_suncc 	= -m32 -xarch=sparc
 ARCH64_FLAGS_sparc_suncc	= -m64 -xarch=sparc
--- a/open-src/common/delibtoolize.pl	Mon Apr 06 18:23:02 2009 -0700
+++ b/open-src/common/delibtoolize.pl	Thu Apr 16 18:38:26 2009 -0700
@@ -1,6 +1,6 @@
 #! /usr/perl5/bin/perl
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 #
 # Permission is hereby granted, free of charge, to any person obtaining a
 # copy of this software and associated documentation files (the
@@ -208,7 +208,7 @@
 	    (?:[\\\s]+ --tag=(?:CC|CXX))?
 	    (?:[\\\s]+ \$\(AM_LIBTOOLFLAGS\) [\\\s]+ \$\(LIBTOOLFLAGS\))?
 	    [\\\s]+ --mode=compile
-	    [\\\s]+ (\$\(CC\)|\$\(CCAS\)|\$\(CXX\))
+	    [\\\s]+ (\$\(CC\)|\$\(CCAS\)|\$\(CXX\)|\$\(COMPILE\))
 	  }{$1 $picflags}xs;
 
     # Remove libtool script from link step
@@ -264,8 +264,8 @@
 	my $dirname = $1;
 	my $installrule = <<'END_RULE';
 	list='$(<DIRNAME>_LTLIBRARIES)'; for p in $$list; do \
-	  so=$$(expr $$p : '\(.*\.so\)') ; \
-	  if [ $$p != $$so ] ; then \
+	  so=$${p%+(.+(\d))} ; \
+	  if [[ "$$p" != "$$so" ]] ; then \
 		echo "rm -f $(DESTDIR)$(<DIRNAME>dir)/$$so" ; \
 		rm -f $(DESTDIR)$(<DIRNAME>dir)/$$so ; \
 		echo "ln -s $$p $(DESTDIR)$(<DIRNAME>dir)/$$so" ; \
--- a/packages/SUNWxscreensaver-hacks-gl/prototype_com	Mon Apr 06 18:23:02 2009 -0700
+++ b/packages/SUNWxscreensaver-hacks-gl/prototype_com	Thu Apr 16 18:38:26 2009 -0700
@@ -1,5 +1,5 @@
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 #
 # Permission is hereby granted, free of charge, to any person obtaining a
 # copy of this software and associated documentation files (the
@@ -27,7 +27,7 @@
 # of the copyright holder.
 # 
 #
-# ident	"@(#)prototype_com	1.7	08/03/10 SMI"
+# ident	"@(#)prototype_com	1.8	09/04/16 SMI"
 #
 
 i pkginfo
@@ -132,6 +132,7 @@
 f none X11/lib/xscreensaver/hacks/hufo_tunnel	0555 root bin
 f none X11/lib/xscreensaver/hacks/hyperspace	0555 root bin
 f none X11/lib/xscreensaver/hacks/lattice	0555 root bin
+f none X11/lib/xscreensaver/hacks/lorenz	0555 root bin
 f none X11/lib/xscreensaver/hacks/matrixview	0555 root bin
 f none X11/lib/xscreensaver/hacks/plasma	0555 root bin
 f none X11/lib/xscreensaver/hacks/skyrocket	0555 root bin
@@ -231,6 +232,7 @@
 f none X11/share/man/man6/hufo_smoke.6		0444 root bin
 f none X11/share/man/man6/hufo_tunnel.6		0444 root bin
 f none X11/share/man/man6/lattice.6		0444 root bin
+f none X11/share/man/man6/lorenz.6		0444 root bin
 f none X11/share/man/man6/matrixview.6		0444 root bin
 f none X11/share/man/man6/plasma.6		0444 root bin
 f none X11/share/man/man6/skyrocket.6		0444 root bin
@@ -330,6 +332,7 @@
 f none X11/lib/xscreensaver/config/control-center-2.0/hufo_tunnel.xml	0444 root bin
 f none X11/lib/xscreensaver/config/control-center-2.0/hyperspace.xml	0444 root bin
 f none X11/lib/xscreensaver/config/control-center-2.0/lattice.xml	0444 root bin
+f none X11/lib/xscreensaver/config/control-center-2.0/lorenz.xml	0444 root bin
 f none X11/lib/xscreensaver/config/control-center-2.0/matrixview.xml	0444 root bin
 f none X11/lib/xscreensaver/config/control-center-2.0/plasma.xml	0444 root bin
 f none X11/lib/xscreensaver/config/control-center-2.0/skyrocket.xml	0444 root bin