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 | |
Andrew Geissler | 9aee500 | 2022-03-30 16:27:02 +0000 | [diff] [blame] | 8 | LICENSE = "LGPL-2.1-only" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 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" |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 12 | RDEPENDS:${PN} = "gstreamer1.0-plugins-base-playback shared-mime-info" |
| 13 | RRECOMMENDS:${PN} = "rygel-plugin-media-export" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 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 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 27 | PACKAGECONFIG:append = "${@bb.utils.contains("DISTRO_FEATURES", "x11", " gtk+3", "", d)}" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 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 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 39 | do_install:append() { |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 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 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 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" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 54 | |
| 55 | PACKAGES += "${PN}-meta" |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 56 | ALLOW_EMPTY:${PN}-meta = "1" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 57 | |
| 58 | PACKAGES_DYNAMIC = "${PN}-plugin-*" |
| 59 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 60 | SYSTEMD_SERVICE:${PN} = "rygel.service" |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 61 | |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 62 | python populate_packages:prepend () { |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 63 | rygel_libdir = d.expand('${libdir}/rygel-${LIBV}') |
| 64 | postinst = d.getVar('plugin_postinst') |
| 65 | pkgs = [] |
| 66 | |
Andrew Geissler | 7e0e3c0 | 2022-02-25 20:34:39 +0000 | [diff] [blame] | 67 | pkgs += do_split_packages(d, oe.path.join(rygel_libdir, "plugins"), r'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"), r'(.*)\.plugin$', d.expand('${PN}-plugin-%s'), 'Rygel plugin for %s', postinst=postinst, extra_depends=d.expand('${PN}')) |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 69 | |
| 70 | metapkg = d.getVar('PN') + '-meta' |
Patrick Williams | 213cb26 | 2021-08-07 19:21:33 -0500 | [diff] [blame] | 71 | d.setVar('RDEPENDS:' + metapkg, ' '.join(pkgs)) |
Andrew Geissler | 82c905d | 2020-04-13 13:39:40 -0500 | [diff] [blame] | 72 | } |