summaryrefslogtreecommitdiff
path: root/dev-libs/libdbusmenu/libdbusmenu-16.04.0.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-libs/libdbusmenu/libdbusmenu-16.04.0.ebuild
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-libs/libdbusmenu/libdbusmenu-16.04.0.ebuild')
-rw-r--r--dev-libs/libdbusmenu/libdbusmenu-16.04.0.ebuild151
1 files changed, 151 insertions, 0 deletions
diff --git a/dev-libs/libdbusmenu/libdbusmenu-16.04.0.ebuild b/dev-libs/libdbusmenu/libdbusmenu-16.04.0.ebuild
new file mode 100644
index 000000000000..1abf95c7910c
--- /dev/null
+++ b/dev-libs/libdbusmenu/libdbusmenu-16.04.0.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+VALA_MIN_API_VERSION=0.16
+VALA_USE_DEPEND=vapigen
+PYTHON_COMPAT=( python2_7 )
+VIRTUALX_REQUIRED=manual
+
+inherit autotools flag-o-matic multilib-minimal python-single-r1 vala \
+ virtualx xdg-utils
+
+DESCRIPTION="Library to pass menu structure across DBus"
+HOMEPAGE="https://launchpad.net/dbusmenu"
+SRC_URI="https://launchpad.net/${PN/lib}/${PV%.*}/${PV}/+download/${P}.tar.gz"
+
+LICENSE="LGPL-2.1 LGPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
+IUSE="debug gtk gtk3 +introspection test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ >=dev-libs/dbus-glib-0.100[${MULTILIB_USEDEP}]
+ >=dev-libs/glib-2.35.4[${MULTILIB_USEDEP}]
+ dev-libs/libxml2[${MULTILIB_USEDEP}]
+ ${PYTHON_DEPS}
+ gtk? ( x11-libs/gtk+:2[introspection?,${MULTILIB_USEDEP}] )
+ gtk3? ( >=x11-libs/gtk+-3.2:3[introspection?,${MULTILIB_USEDEP}] )
+ introspection? ( >=dev-libs/gobject-introspection-1 )
+ !<${CATEGORY}/${PN}-0.5.1-r200"
+# tests also have optional dep on valgrind which we do not enforce
+DEPEND="${RDEPEND}
+ app-text/gnome-doc-utils
+ dev-util/intltool
+ sys-devel/gettext
+ virtual/pkgconfig[${MULTILIB_USEDEP}]
+ introspection? ( $(vala_depend) )
+ test? (
+ >=dev-libs/json-glib-0.13.4[${MULTILIB_USEDEP}]
+ >=dev-util/dbus-test-runner-15.04.0_p100
+ gtk? ( ${VIRTUALX_DEPEND} )
+ gtk3? ( ${VIRTUALX_DEPEND} )
+ )"
+
+pkg_setup() {
+ xdg_environment_reset
+ python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ if use introspection; then
+ vala_src_prepare
+ export VALA_API_GEN="${VAPIGEN}"
+ fi
+ python_fix_shebang tools
+
+ eapply "${FILESDIR}/${P}-configure-fix.patch"
+ eapply_user
+ eautoreconf
+}
+
+multilib_src_configure() {
+ append-flags -Wno-error #414323
+
+ local myconf=(
+ --cache-file="${BUILD_DIR}"/config.cache
+ --disable-gtk
+ --disable-static
+ # dumper extra tool is only for GTK+-2.x
+ --disable-dumper
+ $(multilib_native_use_enable introspection)
+ $(multilib_native_use_enable introspection vala)
+ $(use_enable debug massivedebugging)
+ $(use_enable test tests)
+ )
+ local ECONF_SOURCE=${S}
+ econf "${myconf[@]}"
+
+ GTK_VARIANTS=( $(usex gtk 2 '') $(usex gtk3 3 '') )
+ local MULTIBUILD_VARIANTS=( "${GTK_VARIANTS[@]}" )
+ local top_builddir=${BUILD_DIR}
+
+ gtk_configure() {
+ local gtkconf=(
+ "${myconf[@]}"
+ --enable-gtk
+ --with-gtk="${MULTIBUILD_VARIANT}"
+ )
+ mkdir -p "${BUILD_DIR}" || die
+ cd "${BUILD_DIR}" || die
+ econf "${gtkconf[@]}"
+
+ rm -r libdbusmenu-glib || die
+ ln -s "${top_builddir}"/libdbusmenu-glib libdbusmenu-glib || die
+ }
+ [[ ${GTK_VARIANTS[@]} ]] && multibuild_foreach_variant gtk_configure
+}
+
+gtk_emake() {
+ emake -C "${BUILD_DIR}"/libdbusmenu-gtk "${@}"
+ multilib_is_native_abi && \
+ emake -C "${BUILD_DIR}"/docs/libdbusmenu-gtk "${@}"
+}
+
+multilib_src_compile() {
+ emake
+
+ local MULTIBUILD_VARIANTS=( "${GTK_VARIANTS[@]}" )
+ [[ ${GTK_VARIANTS[@]} ]] && multibuild_foreach_variant \
+ gtk_emake
+}
+
+multilib_src_test() {
+ emake check
+
+ gtk_test() {
+ # please keep the list of GTK+ tests up-to-date
+ emake -C "${BUILD_DIR}"/tests check \
+ TESTS="test-gtk-objects-test test-gtk-label
+ test-gtk-shortcut test-gtk-reorder test-gtk-remove"
+ }
+ local MULTIBUILD_VARIANTS=( "${GTK_VARIANTS[@]}" )
+ [[ ${GTK_VARIANTS[@]} ]] && virtx multibuild_foreach_variant \
+ gtk_test
+}
+
+multilib_src_install() {
+ emake -j1 DESTDIR="${D}" install
+
+ local MULTIBUILD_VARIANTS=( "${GTK_VARIANTS[@]}" )
+ [[ ${GTK_VARIANTS[@]} ]] && multibuild_foreach_variant \
+ gtk_emake -j1 install DESTDIR="${D}"
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_preinst() {
+ # kill old symlinks that Portage will preserve and break install
+ if [[ -L ${EROOT}/usr/share/gtk-doc/html/libdbusmenu-glib ]]; then
+ rm -v "${EROOT}/usr/share/gtk-doc/html/libdbusmenu-glib" || die
+ fi
+ if [[ -L ${EROOT}/usr/share/gtk-doc/html/libdbusmenu-gtk ]]; then
+ rm -v "${EROOT}/usr/share/gtk-doc/html/libdbusmenu-gtk" || die
+ fi
+}