diff options
Diffstat (limited to 'x11-wm/enlightenment/enlightenment-0.20.2.ebuild')
-rw-r--r-- | x11-wm/enlightenment/enlightenment-0.20.2.ebuild | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/x11-wm/enlightenment/enlightenment-0.20.2.ebuild b/x11-wm/enlightenment/enlightenment-0.20.2.ebuild new file mode 100644 index 000000000000..24f66753d897 --- /dev/null +++ b/x11-wm/enlightenment/enlightenment-0.20.2.ebuild @@ -0,0 +1,128 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +MY_P=${P/_/-} + +if [[ ${PV} == *9999 ]] ; then + EGIT_SUB_PROJECT="core" + EGIT_URI_APPEND="${PN}" +else + SRC_URI="https://download.enlightenment.org/rel/apps/${PN}/${MY_P}.tar.xz" + EKEY_STATE="snap" +fi + +inherit enlightenment + +DESCRIPTION="Enlightenment DR17 window manager" + +LICENSE="BSD-2" +SLOT="0.17/${PV%%_*}" + +__CONF_MODS=( + applications bindings dialogs display + interaction intl menus + paths performance randr shelves theme + window-manipulation window-remembers +) +__NORM_MODS=( + appmenu backlight bluez4 battery + clock conf connman cpufreq everything + fileman fileman-opinfo gadman geolocation + ibar ibox lokker + mixer msgbus music-control notification + pager packagekit pager-plain policy-mobile quickaccess + shot start syscon systray tasks teamwork temperature tiling + winlist wizard wl-desktop-shell wl-drm wl-text-input + wl-weekeyboard wl-wl wl-x11 xkbswitch xwayland +) +IUSE_E_MODULES=( + ${__CONF_MODS[@]/#/enlightenment_modules_conf-} + ${__NORM_MODS[@]/#/enlightenment_modules_} +) + +IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES[@]/#/+}" + +RDEPEND=" + pam? ( sys-libs/pam ) + systemd? ( sys-apps/systemd ) + wayland? ( + dev-libs/efl[wayland] + >=dev-libs/wayland-1.2.0 + >=x11-libs/pixman-0.31.1 + >=x11-libs/libxkbcommon-0.3.1 + ) + >=dev-libs/efl-1.16[X] + >=media-libs/elementary-1.16 + x11-libs/xcb-util-keysyms" +DEPEND="${RDEPEND}" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch "${FILESDIR}"/quickstart.diff + enlightenment_src_prepare +} + +# Sanity check to make sure module lists are kept up-to-date. +check_modules() { + local detected=$( + awk -F'[\\[\\](, ]' '$1 == "AC_E_OPTIONAL_MODULE" { print $3 }' \ + configure.ac | sed 's:_:-:g' | LC_COLLATE=C sort + ) + local sorted=$( + printf '%s\n' ${IUSE_E_MODULES[@]/#enlightenment_modules_} | \ + LC_COLLATE=C sort + ) + if [[ ${detected} != "${sorted}" ]] ; then + local out new old + eerror "The ebuild needs to be kept in sync." + echo "${sorted}" > ebuild-iuse + echo "${detected}" > configure-detected + out=$(diff -U 0 ebuild-iuse configure-detected | sed -e '1,2d' -e '/^@@/d') + new=$(echo "${out}" | sed -n '/^+/{s:^+::;p}') + old=$(echo "${out}" | sed -n '/^-/{s:^-::;p}') + eerror "Add these modules: $(echo ${new})" + eerror "Drop these modules: $(echo ${old})" + die "please update the ebuild" + fi +} + +src_configure() { + check_modules + + E_ECONF=( + --disable-install-sysactions + $(use_enable doc) + $(use_enable nls) + $(use_enable pam) + $(use_enable systemd) + --enable-device-udev + $(use_enable udev mount-eeze) + $(use_enable ukit mount-udisks) + $(use_enable wayland) + ) + local u c + for u in ${IUSE_E_MODULES[@]} ; do + c=${u#enlightenment_modules_} + # Disable modules by hand since we default to enabling them all. + case ${c} in + wl-*|xwayland) + if ! use wayland ; then + E_ECONF+=( --disable-${c} ) + continue + fi + ;; + esac + E_ECONF+=( $(use_enable ${u} ${c}) ) + done + enlightenment_src_configure +} + +src_install() { + enlightenment_src_install + insinto /etc/enlightenment + newins "${FILESDIR}"/gentoo-sysactions.conf sysactions.conf +} |