[oe-commits] Koen Kooi : xscreensaver: enable more screensavers, add 'xscreensaver-hacks ' meta package

GIT User account git at amethyst.openembedded.net
Sun Dec 7 14:02:19 UTC 2008


Module: openembedded.git
Branch: org.openembedded.dev
Commit: 07f1dd23da686ded444c658c3cde7916534fb7b0
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=07f1dd23da686ded444c658c3cde7916534fb7b0

Author: Koen Kooi <koen at openembedded.org>
Date:   Sun Dec  7 14:59:27 2008 +0100

xscreensaver: enable more screensavers, add 'xscreensaver-hacks' meta package

---

 .../xscreensaver/xscreensaver-5.07/glfix.patch     |   20 +++++
 packages/xscreensaver/xscreensaver.inc             |   87 ++++++++++++++++++++
 packages/xscreensaver/xscreensaver_5.07.bb         |   62 +-------------
 3 files changed, 111 insertions(+), 58 deletions(-)

diff --git a/packages/xscreensaver/xscreensaver-5.07/glfix.patch b/packages/xscreensaver/xscreensaver-5.07/glfix.patch
new file mode 100644
index 0000000..a91aa48
--- /dev/null
+++ b/packages/xscreensaver/xscreensaver-5.07/glfix.patch
@@ -0,0 +1,20 @@
+--- /tmp/Makefile.in	2008-12-07 14:52:59.000000000 +0100
++++ xscreensaver-5.07/hacks/glx/Makefile.in	2008-12-07 14:53:25.000000000 +0100
+@@ -409,7 +409,7 @@
+ 
+ $(UTIL_OBJS):
+ 	cd $(UTILS_BIN) ; \
+-	$(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
++	$(MAKE) $(@F) CC="$(CXX)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
+ 
+ $(HACK_BIN)/xlockmore.o: $(HACK_SRC)/xlockmore.c
+ 	cd $(HACK_BIN)  ; $(MAKE) $(@F) CC="$(CC)" CFLAGS="$(CFLAGS)"
+@@ -426,7 +426,7 @@
+ HELPER_OBJS = xscreensaver-gl-helper.o $(UTILS_BIN)/visual-gl.o \
+ 	      $(UTILS_BIN)/visual.o $(UTILS_BIN)/resources.o
+ xscreensaver-gl-helper: $(HELPER_OBJS)
+-	$(CC) $(LDFLAGS) -o $@ $(HELPER_OBJS) $(LIBS) $(X_LIBS) $(HACK_POST2)
++	$(CXX) $(LDFLAGS) -o $@ $(HELPER_OBJS) $(LIBS) $(X_LIBS) $(HACK_POST2)
+ 
+ 
+ # These hacks use a slightly-differently-compiled variant of xlockmore.c.
diff --git a/packages/xscreensaver/xscreensaver.inc b/packages/xscreensaver/xscreensaver.inc
new file mode 100644
index 0000000..a4925ac
--- /dev/null
+++ b/packages/xscreensaver/xscreensaver.inc
@@ -0,0 +1,87 @@
+# xscreensaver OE build file
+# Copyright (C) 2004, Advanced Micro Devices, Inc.  All Rights Reserved
+# Released under the MIT license (see packages/COPYING)
+
+DESCRIPTION = "*The* screensaver package for X11"
+HOMEPAGE = "http://www.jwz.org/xscreensaver/"
+SECTION = "x11-misc"
+LICENSE = "BSD"
+DEPENDS = "intltool mesa freeglut virtual/libx11 gtk+ libxml2 libglade"
+
+# xscreensaver-demo is a glade app
+LDFLAGS_append = " -Wl,--export-dynamic"
+
+inherit autotools
+
+export INTLTOOL_PERL="/usr/bin/env perl"
+
+EXTRA_OECONF=" --with-xml \
+               --with-gtk \
+               --disable-locking \
+               --without-pixbuf \
+               --with-jpeg \
+               --with-xpm \
+               --with-randr-ext \
+               --with-gl \
+               --without-gle \
+               --with-xshm-ext \
+               --with-setuid-hacks \
+"
+
+PACKAGES =+  " xscreensaver-demo xscreensaver-extra"
+
+FILES_${PN}= "${bindir}/xscreensaver ${bindir}/xscreensaver-command ${datadir}/applications \
+	${libdir}/X11/"
+
+FILES_${PN}-dbg += "${libexecdir}/xscreensaver/.debug"
+
+FILES_xscreensaver-demo="${bindir}/xscreensaver-demo ${datadir}/xscreensaver \
+	${datadir}/pixmaps/"
+
+FILES_xscreensaver-extra="${bindir}/xscreensaver-getimage*"
+
+do_configure_prepend() {
+	sed -i 's:GTK_DATADIR="$GTK_DATADIR/share":GTK_DATADIR="${datadir}":' ${S}/configure.in
+	
+	export includedir="/lib"
+	sed -i -e s:AC_PROG_CC:AC_PROG_CXX:g configure.in
+	echo AC_PROG_CXX >> configure.in
+	export CC="${CXX}"
+}
+
+do_compile() {
+	oe_runmake CC="${CC}" LD="${CXX}" CC_HACK="${CXX}" GNOME_DATADIR=${datadir} all
+}
+
+fakeroot do_install() {
+	unset KDEDIR
+	oe_runmake -C ${S}/driver GNOME_DATADIR=${datadir} \
+	install_prefix=${D} install
+
+	oe_runmake -C ${S}/hacks install_prefix=${D} install-program
+
+	# Install the defaults file
+	install -d ${D}/${libdir}/X11/app-defaults
+	install -m 0644 ${WORKDIR}/XScreenSaver ${D}/${libdir}/X11/app-defaults
+}
+
+PACKAGES_DYNAMIC = "xscreensaver-hack-*"
+
+python populate_packages_prepend () {
+	hackdir = bb.data.expand('${libexecdir}/xscreensaver', d)
+	do_split_packages(d, hackdir, '^(.*)', 'xscreensaver-hack-%s', 'XScreensaver hack %s')
+	metapkg = "xscreensaver-hacks"
+	bb.data.setVar('ALLOW_EMPTY_' + metapkg, "1", d)
+	bb.data.setVar('FILES_' + metapkg, "", d)
+	blacklist = [ 'xscreensaver-locale', 'xscreensaver-dev', 'xscreensaver-dbg', 'xscreensaver-doc', 'xscreensaver-extra' ]
+	metapkg_rdepends = []
+	packages = bb.data.getVar('PACKAGES', d, 1).split()
+	for pkg in packages[1:]:
+		if not pkg in blacklist and not pkg in metapkg_rdepends:
+			metapkg_rdepends.append(pkg)
+	bb.data.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends), d)
+	bb.data.setVar('DESCRIPTION_' + metapkg, 'Xscreensaver hacks meta package', d)
+	packages.append(metapkg)
+	bb.data.setVar('PACKAGES', ' '.join(packages), d)
+}
+
diff --git a/packages/xscreensaver/xscreensaver_5.07.bb b/packages/xscreensaver/xscreensaver_5.07.bb
index 8e288b8..8932b6f 100644
--- a/packages/xscreensaver/xscreensaver_5.07.bb
+++ b/packages/xscreensaver/xscreensaver_5.07.bb
@@ -1,63 +1,9 @@
-# xscreensaver OE build file
-# Copyright (C) 2004, Advanced Micro Devices, Inc.  All Rights Reserved
-# Released under the MIT license (see packages/COPYING)
-
-DESCRIPTION = "*The* screensaver package for X11"
-HOMEPAGE = "http://www.jwz.org/xscreensaver/"
-SECTION = "x11-misc"
-LICENSE = "BSD"
-DEPENDS = "intltool virtual/libx11 gtk+ libxml2 libglade"
-
+require xscreensaver.inc
+PR = "r2"
 
 SRC_URI = "http://www.jwz.org/xscreensaver/xscreensaver-${PV}.tar.gz \
            file://configure.in.patch;patch=1 \
-	   file://XScreenSaver"
-
-# xscreensaver-demo is a glade app
-LDFLAGS_append = " -Wl,--export-dynamic"
-
-inherit autotools
-
-export INTLTOOL_PERL="/usr/bin/env perl"
-
-EXTRA_OECONF="--with-xml --with-gtk --disable-locking --without-pixbuf \
-	--with-jpeg --with-xpm"
-
-PACKAGES =+  " xscreensaver-demo xscreensaver-extra"
-
-FILES_${PN}= "${bindir}/xscreensaver ${bindir}/xscreensaver-command \
-	/usr/X11R6/lib/X11/app-defaults"
-
-FILES_xscreensaver-demo="${bindir}/xscreensaver-demo ${datadir}/xscreensaver \
-	${datadir}/pixmaps/"
-
-FILES_xscreensaver-extra="${bindir}/xscreensaver-getimage*"
-
-do_configure_prepend() {
-	sed -i 's:GTK_DATADIR="$GTK_DATADIR/share":GTK_DATADIR="${datadir}":' ${S}/configure.in
-	
-	export includedir="/lib"
-}
-
-do_compile() {
-	oe_runmake GNOME_DATADIR=${datadir} all
-}
-
-do_install() {
-	unset KDEDIR
-	oe_runmake -C ${S}/driver GNOME_DATADIR=${datadir} \
-	install_prefix=${D} install
-
-	oe_runmake -C ${S}/hacks install_prefix=${D} install-program
-
-	# Install the defaults file
-	install -d ${D}/usr/X11R6/lib/X11/app-defaults
-	install -m 0644 ${WORKDIR}/XScreenSaver ${D}/usr/X11R6/lib/X11/app-defaults
-}
+           file://glfix.patch;patch=1 \
+           file://XScreenSaver"
 
-PACKAGES_DYNAMIC = "xscreensaver-hack-*"
 
-python populate_packages_prepend () {
-	hackdir = bb.data.expand('${libexecdir}/xscreensaver', d)
-	do_split_packages(d, hackdir, '^(.*)', 'xscreensaver-hack-%s', 'XScreensaver hack %s')
-}





More information about the Openembedded-commits mailing list