spice-gtk-0.32-r2.ebuild 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. # Copyright 1999-2016 Gentoo Foundation
  2. # Distributed under the terms of the GNU General Public License v2
  3. EAPI=5
  4. GCONF_DEBUG="no"
  5. WANT_AUTOMAKE="1.12"
  6. VALA_MIN_API_VERSION="0.14"
  7. VALA_USE_DEPEND="vapigen"
  8. inherit autotools eutils vala readme.gentoo-r1
  9. DESCRIPTION="Set of GObject and Gtk objects for connecting to Spice servers and a client GUI"
  10. HOMEPAGE="http://spice-space.org https://cgit.freedesktop.org/spice/spice-gtk/"
  11. LICENSE="LGPL-2.1"
  12. SLOT="0"
  13. SRC_URI="http://spice-space.org/download/gtk/${P}.tar.bz2"
  14. KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86"
  15. IUSE="dbus gstaudio gstvideo gtk3 +introspection lz4 mjpeg policykit pulseaudio sasl smartcard static-libs usbredir vala webdav libressl"
  16. REQUIRED_USE="?? ( pulseaudio gstaudio )"
  17. # TODO:
  18. # * check if sys-freebsd/freebsd-lib (from virtual/acl) provides acl/libacl.h
  19. # * use external pnp.ids as soon as that means not pulling in gnome-desktop
  20. RDEPEND="
  21. !libressl? ( dev-libs/openssl:0= )
  22. libressl? ( dev-libs/libressl:0= )
  23. pulseaudio? ( media-sound/pulseaudio[glib] )
  24. gstvideo? (
  25. media-libs/gstreamer:1.0
  26. media-libs/gst-plugins-base:1.0
  27. media-libs/gst-plugins-good:1.0
  28. )
  29. gstaudio? (
  30. media-libs/gstreamer:1.0
  31. media-libs/gst-plugins-base:1.0
  32. media-libs/gst-plugins-good:1.0
  33. )
  34. >=x11-libs/pixman-0.17.7
  35. >=media-libs/celt-0.5.1.1:0.5.1
  36. media-libs/opus
  37. gtk3? ( x11-libs/gtk+:3[introspection?] )
  38. >=dev-libs/glib-2.36:2
  39. >=x11-libs/cairo-1.2
  40. virtual/jpeg:0=
  41. sys-libs/zlib
  42. introspection? ( dev-libs/gobject-introspection )
  43. lz4? ( app-arch/lz4 )
  44. sasl? ( dev-libs/cyrus-sasl )
  45. smartcard? ( app-emulation/qemu[smartcard] )
  46. usbredir? (
  47. sys-apps/hwids
  48. >=sys-apps/usbredir-0.4.2
  49. virtual/libusb:1
  50. virtual/libgudev:=
  51. policykit? (
  52. sys-apps/acl
  53. >=sys-auth/polkit-0.110-r1
  54. !~sys-auth/polkit-0.111 )
  55. )
  56. webdav? (
  57. net-libs/phodav:2.0
  58. >=dev-libs/glib-2.43.90:2
  59. >=net-libs/libsoup-2.49.91 )
  60. "
  61. DEPEND="${RDEPEND}
  62. >=app-emulation/spice-protocol-0.12.11
  63. dev-perl/Text-CSV
  64. >=dev-util/gtk-doc-am-1.14
  65. >=dev-util/intltool-0.40.0
  66. >=sys-devel/gettext-0.17
  67. virtual/pkgconfig
  68. vala? ( $(vala_depend) )
  69. "
  70. # Hard-deps while building from git:
  71. # dev-lang/vala:0.14
  72. # dev-lang/perl
  73. src_prepare() {
  74. epatch "${FILESDIR}"/${P}-x11-libs.patch
  75. epatch_user
  76. AT_NO_RECURSIVE="yes" eautoreconf
  77. use vala && vala_src_prepare
  78. }
  79. src_configure() {
  80. # Prevent sandbox violations, bug #581836
  81. # https://bugzilla.gnome.org/show_bug.cgi?id=744134
  82. # https://bugzilla.gnome.org/show_bug.cgi?id=744135
  83. addpredict /dev
  84. local myconf
  85. if use vala ; then
  86. # force vala regen for MinGW, etc
  87. rm -fv gtk/controller/controller.{c,vala.stamp} gtk/controller/menu.c
  88. fi
  89. myconf="
  90. --disable-maintainer-mode \
  91. $(use_enable static-libs static) \
  92. $(use_enable introspection) \
  93. $(use_with sasl) \
  94. $(use_enable smartcard) \
  95. $(use_enable usbredir) \
  96. $(use_with usbredir usb-ids-path /usr/share/misc/usb.ids) \
  97. $(use_with usbredir usb-acl-helper-dir /usr/libexec) \
  98. $(use_with gtk3 gtk 3.0) \
  99. $(use_enable policykit polkit) \
  100. $(use_enable pulseaudio pulse) \
  101. $(use_enable gstaudio) \
  102. $(use_enable gstvideo) \
  103. $(use_enable mjpeg builtin-mjpeg) \
  104. $(use_enable vala) \
  105. $(use_enable webdav) \
  106. $(use_enable dbus) \
  107. --disable-gtk-doc \
  108. --disable-werror \
  109. --enable-pie"
  110. econf ${myconf}
  111. }
  112. src_compile() {
  113. # Prevent sandbox violations, bug #581836
  114. # https://bugzilla.gnome.org/show_bug.cgi?id=744134
  115. # https://bugzilla.gnome.org/show_bug.cgi?id=744135
  116. addpredict /dev
  117. default
  118. }
  119. src_install() {
  120. default
  121. dodoc AUTHORS ChangeLog NEWS README THANKS TODO
  122. # Remove .la files if they're not needed
  123. use static-libs || prune_libtool_files
  124. make_desktop_entry spicy Spicy "utilities-terminal" "Network;RemoteAccess;"
  125. readme.gentoo_create_doc
  126. }