1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# 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"
TARGET_CC_ARCH += "${LDFLAGS}"
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-text ${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)
}
|