summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlastair Tse <liquidx@gentoo.org>2005-04-20 14:37:24 +0000
committerAlastair Tse <liquidx@gentoo.org>2005-04-20 14:37:24 +0000
commit9ae1f138362981ea592dcf79b9fdc24889fb47ab (patch)
tree9a2f9a205c538e7e94c1b88e5e24553c7dd097a2 /x11-misc/rss-glx
parentversion bump and gcc3.4 patch (diff)
downloadhistorical-9ae1f138362981ea592dcf79b9fdc24889fb47ab.tar.gz
historical-9ae1f138362981ea592dcf79b9fdc24889fb47ab.tar.bz2
historical-9ae1f138362981ea592dcf79b9fdc24889fb47ab.zip
version bump (#88982) and jwz vroot for xinerama support (#79579)
Package-Manager: portage-2.0.51.19
Diffstat (limited to 'x11-misc/rss-glx')
-rw-r--r--x11-misc/rss-glx/ChangeLog9
-rw-r--r--x11-misc/rss-glx/Manifest16
-rw-r--r--x11-misc/rss-glx/files/digest-rss-glx-0.8.01
-rw-r--r--x11-misc/rss-glx/files/jwz-vroot.h156
-rw-r--r--x11-misc/rss-glx/files/rss-glx-0.8.0-kdedesktop.patch11
-rw-r--r--x11-misc/rss-glx/rss-glx-0.8.0.ebuild139
6 files changed, 330 insertions, 2 deletions
diff --git a/x11-misc/rss-glx/ChangeLog b/x11-misc/rss-glx/ChangeLog
index 993b655c0a0f..d43034352ba8 100644
--- a/x11-misc/rss-glx/ChangeLog
+++ b/x11-misc/rss-glx/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for x11-misc/rss-glx
# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-misc/rss-glx/ChangeLog,v 1.27 2005/04/15 04:28:34 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/rss-glx/ChangeLog,v 1.28 2005/04/20 14:37:23 liquidx Exp $
+
+*rss-glx-0.8.0 (20 Apr 2005)
+
+ 20 Apr 2005; Alastair Tse <liquidx@gentoo.org>
+ +files/rss-glx-0.8.0-kdedesktop.patch, +files/jwz-vroot.h,
+ +rss-glx-0.8.0.ebuild:
+ version bump (#88982) and jwz vroot for xinerama support (#79579)
15 Apr 2005; Mike Frysinger <vapier@gentoo.org> rss-glx-0.7.6-r1.ebuild:
Add a check for kde screensaver support #88212 Olaf Freyer.
diff --git a/x11-misc/rss-glx/Manifest b/x11-misc/rss-glx/Manifest
index b591226f9e6c..af70d8ff4980 100644
--- a/x11-misc/rss-glx/Manifest
+++ b/x11-misc/rss-glx/Manifest
@@ -1,7 +1,21 @@
-MD5 22272d87c774eb818b2184eacef0eee7 ChangeLog 4930
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+MD5 da8ac909455240d03bac4c92cadd9bac ChangeLog 5165
MD5 77ca606d4e2b3bbbc172c408468e0156 metadata.xml 280
MD5 3881c6c924d1b00291fb9c15455fe0b9 rss-glx-0.7.6.ebuild 4046
MD5 d455ab02ea8f01213b3bbabc80cec72b rss-glx-0.7.6-r1.ebuild 4490
+MD5 82d04bb614326b016fe635e1a8c335f0 rss-glx-0.8.0.ebuild 4525
MD5 c569bd57d6615d7b3d0d66db78c86bb9 files/digest-rss-glx-0.7.6 67
MD5 2f47a2d4b9947332e2817ec81f2ec0d7 files/rss-glx-0.7.4-kdedesktop.patch 833
MD5 c569bd57d6615d7b3d0d66db78c86bb9 files/digest-rss-glx-0.7.6-r1 67
+MD5 9b4404f02157380acbe80165fb4b7bf2 files/rss-glx-0.8.0-kdedesktop.patch 854
+MD5 6c580284e5773f292a32a5a30fcf539a files/digest-rss-glx-0.8.0 67
+MD5 4dbe321921028a106a05564a14b2f814 files/jwz-vroot.h 6234
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.1 (GNU/Linux)
+
+iD8DBQFCZmljTM53OX+9xmMRAg6MAKC0VIYJpOH46CZ2F+JOGWLVRpdM1QCfSZc0
+w1VtF51q0Of6957fR+sJAXs=
+=aET+
+-----END PGP SIGNATURE-----
diff --git a/x11-misc/rss-glx/files/digest-rss-glx-0.8.0 b/x11-misc/rss-glx/files/digest-rss-glx-0.8.0
new file mode 100644
index 000000000000..8ecb6e1faf3b
--- /dev/null
+++ b/x11-misc/rss-glx/files/digest-rss-glx-0.8.0
@@ -0,0 +1 @@
+MD5 d04e909521626a27f9f6d9b5f8a24d6c rss-glx_0.8.0.tar.bz2 5239207
diff --git a/x11-misc/rss-glx/files/jwz-vroot.h b/x11-misc/rss-glx/files/jwz-vroot.h
new file mode 100644
index 000000000000..65097b839e75
--- /dev/null
+++ b/x11-misc/rss-glx/files/jwz-vroot.h
@@ -0,0 +1,156 @@
+/* -*- Mode: C; tab-width: 2 -*- */
+/*****************************************************************************/
+/** Copyright 1991 by Andreas Stolcke **/
+/** Copyright 1990 by Solbourne Computer Inc. **/
+/** Longmont, Colorado **/
+/** **/
+/** All Rights Reserved **/
+/** **/
+/** Permission to use, copy, modify, and distribute this software and **/
+/** its documentation for any purpose and without fee is hereby **/
+/** granted, provided that the above copyright notice appear in all **/
+/** copies and that both that copyright notice and this permis- **/
+/** sion notice appear in supporting documentation, and that the **/
+/** name of Solbourne not be used in advertising **/
+/** in publicity pertaining to distribution of the software without **/
+/** specific, written prior permission. **/
+/** **/
+/** ANDREAS STOLCKE AND SOLBOURNE COMPUTER INC. DISCLAIMS ALL WARRANTIES **/
+/** WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF **/
+/** MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL ANDREAS STOLCKE **/
+/** OR SOLBOURNE BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL **/
+/** DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA **/
+/** OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER **/
+/** TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE **/
+/** OR PERFORMANCE OF THIS SOFTWARE. **/
+/*****************************************************************************/
+/*
+ * vroot.h -- Virtual Root Window handling header file
+ *
+ * This header file redefines the X11 macros RootWindow and DefaultRootWindow,
+ * making them look for a virtual root window as provided by certain `virtual'
+ * window managers like swm and tvtwm. If none is found, the ordinary root
+ * window is returned, thus retaining backward compatibility with standard
+ * window managers.
+ * The function implementing the virtual root lookup remembers the result of
+ * its last invocation to avoid overhead in the case of repeated calls
+ * on the same display and screen arguments.
+ * The lookup code itself is taken from Tom LaStrange's ssetroot program.
+ *
+ * Most simple root window changing X programs can be converted to using
+ * virtual roots by just including
+ *
+ * #include <X11/vroot.h>
+ *
+ * after all the X11 header files. It has been tested on such popular
+ * X clients as xphoon, xfroot, xloadimage, and xaqua.
+ * It also works with the core clients xprop, xwininfo, xwd, and editres
+ * (and is necessary to get those clients working under tvtwm).
+ * It does NOT work with xsetroot; get the xsetroot replacement included in
+ * the tvtwm distribution instead.
+ *
+ * Andreas Stolcke <stolcke@ICSI.Berkeley.EDU>, 9/7/90
+ * - replaced all NULL's with properly cast 0's, 5/6/91
+ * - free children list (suggested by Mark Martin <mmm@cetia.fr>), 5/16/91
+ * - include X11/Xlib.h and support RootWindowOfScreen, too 9/17/91
+ *
+ * Jamie Zawinski <jwz@jwz.org>, 28-Apr-1997
+ * - use ANSI C
+ *
+ * Jamie Zawinski <jwz@jwz.org>, 3-Sep-2003
+ * - if the environment variable "XSCREENSAVER_WINDOW" is set, use that
+ * as the root window instead of searching for __SWM_VROOT.
+ *
+ * Jamie Zawinski <jwz@jwz.org>, 14-Aug-2004
+ * - changes to get gcc to stop whining about "type punning".
+ *
+ * Jamie Zawinski <jwz@jwz.org>, 16-Dec-2004
+ * - fixed that last fix.
+ */
+
+#ifndef _VROOT_H_
+#define _VROOT_H_
+#define _XSCREENSAVER_VROOT_H_
+
+#if !defined(lint) && !defined(SABER)
+static const char vroot_rcsid[] =
+ "#Id: vroot.h,v 1.8 2004/12/16 05:33:54 jwz Exp #" "\n"
+ "#Id: vroot.h,v 1.4 1991/09/30 19:23:16 stolcke Exp stolcke #";
+#endif
+
+#include <X11/X.h>
+#include <X11/Xatom.h>
+#include <X11/Xlib.h>
+
+static Window
+#ifdef __STDC__ /* ANSIfication added by jwz, to avoid superfluous warnings. */
+VirtualRootWindowOfScreen(Screen *screen)
+#else /* !__STDC__ */
+VirtualRootWindowOfScreen(screen) Screen *screen;
+#endif /* !__STDC__ */
+{
+ static Screen *save_screen = (Screen *)0;
+ static Window root = (Window)0;
+
+ if (screen != save_screen) {
+ Display *dpy = DisplayOfScreen(screen);
+ Atom __SWM_VROOT = None;
+ int i;
+ Window rootReturn, parentReturn, *children;
+ unsigned int numChildren;
+
+ /* first check for a hex or decimal window ID in the environment */
+ const char *xss_id = getenv("XSCREENSAVER_WINDOW");
+ if (xss_id && *xss_id) {
+ unsigned long id = 0;
+ char c;
+ if (1 == sscanf (xss_id, " 0x%lx %c", &id, &c) ||
+ 1 == sscanf (xss_id, " %lu %c", &id, &c)) {
+ root = (Window) id;
+ save_screen = screen;
+ return root;
+ }
+ }
+
+ root = RootWindowOfScreen(screen);
+
+ /* go look for a virtual root */
+ __SWM_VROOT = XInternAtom(dpy, "__SWM_VROOT", False);
+ if (XQueryTree(dpy, root, &rootReturn, &parentReturn,
+ &children, &numChildren)) {
+ for (i = 0; i < numChildren; i++) {
+ Atom actual_type;
+ int actual_format;
+ unsigned long nitems, bytesafter;
+ unsigned char *newRoot = 0;
+
+ if (XGetWindowProperty(dpy, children[i],
+ __SWM_VROOT, 0, 1, False, XA_WINDOW,
+ &actual_type, &actual_format,
+ &nitems, &bytesafter,
+ &newRoot) == Success
+ && newRoot) {
+ root = *((Window *) newRoot);
+ break;
+ }
+ }
+ if (children)
+ XFree((char *)children);
+ }
+
+ save_screen = screen;
+ }
+
+ return root;
+}
+
+#undef RootWindowOfScreen
+#define RootWindowOfScreen(s) VirtualRootWindowOfScreen(s)
+
+#undef RootWindow
+#define RootWindow(dpy,screen) VirtualRootWindowOfScreen(ScreenOfDisplay(dpy,screen))
+
+#undef DefaultRootWindow
+#define DefaultRootWindow(dpy) VirtualRootWindowOfScreen(DefaultScreenOfDisplay(dpy))
+
+#endif /* _VROOT_H_ */
diff --git a/x11-misc/rss-glx/files/rss-glx-0.8.0-kdedesktop.patch b/x11-misc/rss-glx/files/rss-glx-0.8.0-kdedesktop.patch
new file mode 100644
index 000000000000..a63924b34408
--- /dev/null
+++ b/x11-misc/rss-glx/files/rss-glx-0.8.0-kdedesktop.patch
@@ -0,0 +1,11 @@
+--- reallyslick/cpp_src/Makefile.in 2005-04-10 03:46:04.000000000 +0100
++++ reallyslick/cpp_src/Makefile.in.new 2005-04-20 15:29:55.786785182 +0100
+@@ -171,7 +171,7 @@
+
+ @INSTALL_XSCREENSAVER_CONFIG_FILES_TRUE@dist_config_DATA = cyclone.xml fieldlines.xml flocks.xml flux.xml helios.xml hyperspace.xml plasma.xml skyrocket.xml solarwinds.xml
+
+-@INSTALL_XSCREENSAVER_CONFIG_FILES_TRUE@dist_kdessconfig_DATA = cyclone.desktop fieldlines.desktop flocks.desktop flux.desktop helios.desktop hyperspace.xml plasma.desktop skyrocket.desktop solarwinds.desktop
++@INSTALL_KDE_CONFIG_FILES_TRUE@dist_kdessconfig_DATA = cyclone.desktop fieldlines.desktop flocks.desktop flux.desktop helios.desktop hyperspace.xml plasma.desktop skyrocket.desktop solarwinds.desktop
+
+ man_MANS = cyclone.1 fieldlines.1 flocks.1 flux.1 helios.1 plasma.1 skyrocket.1 solarwinds.1
+
diff --git a/x11-misc/rss-glx/rss-glx-0.8.0.ebuild b/x11-misc/rss-glx/rss-glx-0.8.0.ebuild
new file mode 100644
index 000000000000..0d5cd7766940
--- /dev/null
+++ b/x11-misc/rss-glx/rss-glx-0.8.0.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-misc/rss-glx/rss-glx-0.8.0.ebuild,v 1.1 2005/04/20 14:37:23 liquidx Exp $
+
+inherit flag-o-matic eutils
+
+MY_P=${PN}_${PV}
+S=${WORKDIR}/${MY_P}
+DESCRIPTION="Really Slick Screensavers using OpenGL for XScreenSaver"
+HOMEPAGE="http://rss-glx.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE="kde sse 3dnow openal xscreensaver"
+
+DEPEND="virtual/x11
+ virtual/opengl
+ >=media-gfx/imagemagick-5.5.7
+ kde? ( || ( kde-base/kscreensaver kde-base/kdeartwork ) )
+ !kde? ( x11-misc/xscreensaver )
+ openal? ( media-libs/openal )"
+
+pkg_setup() {
+ if use kde && use xscreensaver ; then
+ if ! built_with_use kde-base/kdeartwork-kscreensaver xscreensaver && \
+ ! built_with_use kde-base/kdeartwork xscreensaver ; then
+ eerror "rss-glx wont work nicely with kde unless you"
+ eerror "emerge kscreensaver with USE=xscreensaver"
+ eerror "See http://bugs.gentoo.org/show_bug.cgi?id=88212"
+ die "Please re-emerge your KDE with USE=xscreensaver"
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${FILESDIR}/${PN}-0.8.0-kdedesktop.patch
+ cp ${FILESDIR}/jwz-vroot.h ${S}/includes/vroot.h
+}
+
+src_compile() {
+ filter-flags -fPIC
+
+ local myconf
+
+ myconf="${myconf} --bindir=/usr/lib/xscreensaver" \
+ myconf="${myconf} --with-configdir=/usr/share/control-center/screensavers/" \
+
+ if use kde; then
+ find . -name '*.desktop' -exec \
+ sed -i \
+ -e 's:Exec=kxsrun \(.*\):Exec=kxsrun \1:g' \
+ -e 's:Exec=kxsconfig \(.*\):Exec=kxsconfig \1:g' \
+ '{}' \
+ \; \
+ || die "couldnt sed desktop files"
+ myconf="${myconf} --with-kdessconfigdir=/usr/share/applnk/System/ScreenSavers"
+ fi
+
+ econf \
+ `use_enable sse` \
+ `use_enable 3dnow` \
+ `use_enable openal sound` \
+ ${myconf} || die
+ emake || die
+}
+
+src_install() {
+ make DESTDIR=${D} install || die "install failed"
+ dodoc COPYING INSTALL README README.xscreensaver
+
+ # symlink to satisfy kde's kxs*
+ use kde && dosym /usr/share/control-center/screensavers /usr/lib/xscreensaver/config
+}
+
+pkg_postinst() {
+ local XSCREENSAVER_CONF="${ROOT}/usr/X11R6/lib/X11/app-defaults/XScreenSaver"
+
+ if [ -f ${XSCREENSAVER_CONF} -a -z "`grep 'Euphoria' ${XSCREENSAVER_CONF}`" ]; then
+ einfo "Adding Really Slick Screensavers to XScreenSaver"
+ sed -e '/*programs:/a\
+ GL: \"Cyclone\" cyclone --root \\n\\\
+ GL: \"Euphoria\" euphoria --root \\n\\\
+ GL: \"Fieldlines\" fieldlines --root \\n\\\
+ GL: \"Flocks\" flocks --root \\n\\\
+ GL: \"Flux\" flux --root \\n\\\
+ GL: \"Helios\" helios --root \\n\\\
+ GL: \"Lattice\" lattice --root \\n\\\
+ GL: \"Plasma\" plasma --root \\n\\\
+ GL: \"Skyrocket\" skyrocket --root \\n\\\
+ GL: \"Solarwinds\" solarwinds --root \\n\\\
+ GL: \"Colorfire\" colorfire --root \\n\\\
+ GL: \"Hufos Smoke\" hufo_smoke --root \\n\\\
+ GL: \"Hufos Tunnel\" hufo_tunnel --root \\n\\\
+ GL: \"Sundancer2\" sundancer2 --root \\n\\\
+ GL: \"BioF\" biof --root \\n\\\
+ GL: \"MatrixView\" matrixview --root \\n\\\
+ GL: \"Spirographx\" spirographx --root \\n\\\
+ GL: \"BusySpheres\" busyspheres --root \\n\\' \
+ -i ${XSCREENSAVER_CONF}
+
+ else
+ einfo "Unable to add these to XScreenSaver configuration"
+ einfo "Read /usr/share/doc/${PF}/README.xscreensaver.gz for"
+ einfo "entries to add to your ~/.xscreensaver file to enable these hacks"
+ fi
+}
+
+pkg_postrm() {
+ local XSCREENSAVER_CONF="${ROOT}/usr/X11R6/lib/X11/app-defaults/XScreenSaver"
+
+ has_version rss-glx && return 0
+ if [ -f ${XSCREENSAVER_CONF} ]; then
+ einfo "Removing Really Slick Screensavers from XScreenSaver configuration."
+ sed \
+ -e '/\"Cyclone\" cyclone/d' \
+ -e '/\"Euphoria\" euphoria/d' \
+ -e '/\"Fieldlines\" fieldlines/d' \
+ -e '/\"Flocks\" flocks/d' \
+ -e '/\"Flux\" flux/d' \
+ -e '/\"Helios\" helios/d' \
+ -e '/\"Lattice\" lattice/d' \
+ -e '/\"Plasma\" plasma/d' \
+ -e '/\"Skyrocket\" skyrocket/d' \
+ -e '/\"Solarwinds\" solarwinds/d' \
+ -e '/\"Colorfire\" colorfire/d' \
+ -e '/\"Hufos Smoke\" hufo_smoke/d' \
+ -e '/\"Hufos Tunnel\" hufo_tunnel/d' \
+ -e '/\"Sundancer2\" sundancer2/d' \
+ -e '/\"BioF\" biof/d' \
+ -e '/\"MatrixView\" matrixview/d' \
+ -e '/\"Spirographx\" spirographx/d' \
+ -e '/\"BusySpheres\" busyspheres/d' \
+ -i ${XSCREENSAVER_CONF}
+ fi
+}