Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 1 | SUMMARY = "A UPnP AV media server and renderer" |
| 2 | DESCRIPTION = "Rygel is a home media solution (UPnP AV MediaServer) that \ |
| 3 | allow you to easily share audio, video and pictures to other devices. \ |
| 4 | Additionally, media player software may use Rygel to become a MediaRenderer \ |
| 5 | that may be controlled remotely by a UPnP or DLNA Controller." |
| 6 | HOMEPAGE = "http://live.gnome.org/Rygel" |
| 7 | |
| 8 | LICENSE = "LGPL-2.1" |
| 9 | LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" |
| 10 | |
| 11 | DEPENDS = "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" |
| 12 | RDEPENDS_${PN} = "gstreamer1.0-plugins-base-playback shared-mime-info" |
| 13 | RRECOMMENDS_${PN} = "rygel-plugin-media-export" |
| 14 | |
Andrew Geissler | 6972109 | 2021-07-23 12:57:00 -0400 | [diff] [blame] | 15 | inherit gnomebase vala gobject-introspection gettext systemd features_check |
| 16 | |
| 17 | # gobject-introspection is mandatory for libmediaart-2.0 and cannot be configured |
| 18 | REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 19 | |
| 20 | SRC_URI[archive.md5sum] = "7f95401903a3f855b464d5152b9d4c07" |
| 21 | SRC_URI[archive.sha256sum] = "08c21a577f7bdad26446a75ffa32778b26842c3b1188165f0b19818559747d00" |
| 22 | |
| 23 | EXTRA_OECONF = "--disable-tracker-plugin --with-media-engine=gstreamer" |
| 24 | |
| 25 | PACKAGECONFIG ?= "external mpris ruih media-export gst-launch" |
| 26 | |
| 27 | PACKAGECONFIG_append = "${@bb.utils.contains("DISTRO_FEATURES", "x11", " gtk+3", "", d)}" |
| 28 | |
| 29 | PACKAGECONFIG[external] = "--enable-external-plugin,--disable-external-plugin" |
| 30 | PACKAGECONFIG[mpris] = "--enable-mpris-plugin,--disable-mpris-plugin" |
| 31 | PACKAGECONFIG[ruih] = "--enable-ruih-plugin,--disable-ruih-plugin" |
| 32 | PACKAGECONFIG[media-export] = "--enable-media-export-plugin,--disable-media-export-plugin" |
| 33 | PACKAGECONFIG[gst-launch] = "--enable-gst-launch-plugin,--disable-gst-launch-plugin" |
| 34 | PACKAGECONFIG[gtk+3] = ",--without-ui,gtk+3" |
| 35 | PACKAGECONFIG[lms] = "--enable-lms-plugin,--disable-lms-plugin" |
| 36 | |
| 37 | LIBV = "2.6" |
| 38 | |
| 39 | do_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 | |
| 52 | FILES_${PN} += "${libdir}/rygel-${LIBV}/engines ${datadir}/dbus-1 ${datadir}/icons" |
| 53 | FILES_${PN}-dbg += "${libdir}/rygel-${LIBV}/engines/.debug ${libdir}/rygel-${LIBV}/plugins/.debug" |
| 54 | |
| 55 | PACKAGES += "${PN}-meta" |
| 56 | ALLOW_EMPTY_${PN}-meta = "1" |
| 57 | |
| 58 | PACKAGES_DYNAMIC = "${PN}-plugin-*" |
| 59 | |
| 60 | SYSTEMD_SERVICE_${PN} = "rygel.service" |
| 61 | |
| 62 | python 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 | } |