blob: 01705a8f71e59c8aa9670d014e07b26d57d0060b [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001SUMMARY = "A UPnP AV media server and renderer"
2DESCRIPTION = "Rygel is a home media solution (UPnP AV MediaServer) that \
3allow you to easily share audio, video and pictures to other devices. \
4Additionally, media player software may use Rygel to become a MediaRenderer \
5that may be controlled remotely by a UPnP or DLNA Controller."
6HOMEPAGE = "http://live.gnome.org/Rygel"
7
8LICENSE = "LGPL-2.1"
9LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
10
11DEPENDS = "libxml2 glib-2.0 gssdp gupnp gupnp-av gupnp-dlna gstreamer1.0 gstreamer1.0-plugins-base libgee libsoup-2.4 libmediaart-2.0 libunistring sqlite3 intltool-native"
12RDEPENDS_${PN} = "gstreamer1.0-plugins-base-playback shared-mime-info"
13RRECOMMENDS_${PN} = "rygel-plugin-media-export"
14
Andrew Geissler69721092021-07-23 12:57:00 -040015inherit gnomebase vala gobject-introspection gettext systemd features_check
16
17# gobject-introspection is mandatory for libmediaart-2.0 and cannot be configured
18REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
Andrew Geissler82c905d2020-04-13 13:39:40 -050019
20SRC_URI[archive.md5sum] = "7f95401903a3f855b464d5152b9d4c07"
21SRC_URI[archive.sha256sum] = "08c21a577f7bdad26446a75ffa32778b26842c3b1188165f0b19818559747d00"
22
23EXTRA_OECONF = "--disable-tracker-plugin --with-media-engine=gstreamer"
24
25PACKAGECONFIG ?= "external mpris ruih media-export gst-launch"
26
27PACKAGECONFIG_append = "${@bb.utils.contains("DISTRO_FEATURES", "x11", " gtk+3", "", d)}"
28
29PACKAGECONFIG[external] = "--enable-external-plugin,--disable-external-plugin"
30PACKAGECONFIG[mpris] = "--enable-mpris-plugin,--disable-mpris-plugin"
31PACKAGECONFIG[ruih] = "--enable-ruih-plugin,--disable-ruih-plugin"
32PACKAGECONFIG[media-export] = "--enable-media-export-plugin,--disable-media-export-plugin"
33PACKAGECONFIG[gst-launch] = "--enable-gst-launch-plugin,--disable-gst-launch-plugin"
34PACKAGECONFIG[gtk+3] = ",--without-ui,gtk+3"
35PACKAGECONFIG[lms] = "--enable-lms-plugin,--disable-lms-plugin"
36
37LIBV = "2.6"
38
39do_install_append() {
40 # Remove .la files for loadable modules
41 rm -f ${D}/${libdir}/rygel-${LIBV}/engines/*.la
42 rm -f ${D}/${libdir}/rygel-${LIBV}/plugins/*.la
43 if [ -e ${D}${nonarch_libdir}/systemd/user/rygel.service ]; then
44 mkdir -p ${D}${systemd_unitdir}/system
45 mv ${D}${nonarch_libdir}/systemd/user/rygel.service ${D}${systemd_unitdir}/system
46 rmdir --ignore-fail-on-non-empty ${D}${nonarch_libdir}/systemd/user \
47 ${D}${nonarch_libdir}/systemd \
48 ${D}${nonarch_libdir}
49 fi
50}
51
52FILES_${PN} += "${libdir}/rygel-${LIBV}/engines ${datadir}/dbus-1 ${datadir}/icons"
53FILES_${PN}-dbg += "${libdir}/rygel-${LIBV}/engines/.debug ${libdir}/rygel-${LIBV}/plugins/.debug"
54
55PACKAGES += "${PN}-meta"
56ALLOW_EMPTY_${PN}-meta = "1"
57
58PACKAGES_DYNAMIC = "${PN}-plugin-*"
59
60SYSTEMD_SERVICE_${PN} = "rygel.service"
61
62python populate_packages_prepend () {
63 rygel_libdir = d.expand('${libdir}/rygel-${LIBV}')
64 postinst = d.getVar('plugin_postinst')
65 pkgs = []
66
67 pkgs += do_split_packages(d, oe.path.join(rygel_libdir, "plugins"), 'librygel-(.*)\.so$', d.expand('${PN}-plugin-%s'), 'Rygel plugin for %s', postinst=postinst, extra_depends=d.expand('${PN}'))
68 pkgs += do_split_packages(d, oe.path.join(rygel_libdir, "plugins"), '(.*)\.plugin$', d.expand('${PN}-plugin-%s'), 'Rygel plugin for %s', postinst=postinst, extra_depends=d.expand('${PN}'))
69
70 metapkg = d.getVar('PN') + '-meta'
71 d.setVar('RDEPENDS_' + metapkg, ' '.join(pkgs))
72}