1 |
commit: d3f9fea057b6344b3de1b209a64c705b5839a4d5 |
2 |
Author: Mike Frysinger <vapier <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Dec 30 19:13:03 2015 +0000 |
4 |
Commit: Mike Frysinger <vapier <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Dec 30 20:40:36 2015 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d3f9fea0 |
7 |
|
8 |
x11-wm/enlightenment: update configure flags and module lists |
9 |
|
10 |
.../enlightenment/enlightenment-0.17.9999.ebuild | 85 ++++++++++++++++------ |
11 |
x11-wm/enlightenment/metadata.xml | 13 ++++ |
12 |
2 files changed, 74 insertions(+), 24 deletions(-) |
13 |
|
14 |
diff --git a/x11-wm/enlightenment/enlightenment-0.17.9999.ebuild b/x11-wm/enlightenment/enlightenment-0.17.9999.ebuild |
15 |
index 7d245d5..3b6c43a 100644 |
16 |
--- a/x11-wm/enlightenment/enlightenment-0.17.9999.ebuild |
17 |
+++ b/x11-wm/enlightenment/enlightenment-0.17.9999.ebuild |
18 |
@@ -21,25 +21,29 @@ DESCRIPTION="Enlightenment DR17 window manager" |
19 |
LICENSE="BSD-2" |
20 |
SLOT="0.17/${PV%%_*}" |
21 |
|
22 |
-# The @ is just an anchor to expand from |
23 |
-__EVRY_MODS="" |
24 |
-__CONF_MODS=" |
25 |
- +@applications +@comp +@dialogs +@display |
26 |
- +@interaction +@intl +@menus |
27 |
- +@paths +@performance +@randr +@shelves +@theme +@wallpaper2 |
28 |
- +@window-manipulation +@window-remembers" |
29 |
-__NORM_MODS=" |
30 |
- @access +@appmenu +@backlight +@bluez4 +@battery +@clock |
31 |
- +@connman +@contact +@cpufreq +@everything +@fileman |
32 |
- +@fileman-opinfo +@gadman +@ibar +@ibox +@illume2 +@mixer +@msgbus |
33 |
- +@music-control +@notification +@pager +@quickaccess +@shot |
34 |
- +@start +@syscon +@systray +@tasks +@teamwork +@temperature +@tiling |
35 |
- +@winlist +@wizard @wl-desktop-shell @wl-screenshot +@xkbswitch" |
36 |
-IUSE_E_MODULES=" |
37 |
- ${__CONF_MODS//@/enlightenment_modules_conf-} |
38 |
- ${__NORM_MODS//@/enlightenment_modules_}" |
39 |
+__CONF_MODS=( |
40 |
+ applications bindings dialogs display |
41 |
+ interaction intl menus |
42 |
+ paths performance randr shelves theme |
43 |
+ window-manipulation window-remembers |
44 |
+) |
45 |
+__NORM_MODS=( |
46 |
+ appmenu backlight bluez4 battery |
47 |
+ clock conf connman cpufreq everything |
48 |
+ fileman fileman-opinfo gadman geolocation |
49 |
+ ibar ibox lokker |
50 |
+ mixer msgbus music-control notification |
51 |
+ pager packagekit pager-plain policy-mobile quickaccess |
52 |
+ shot start syscon systray tasks teamwork temperature tiling |
53 |
+ winlist wizard wl-desktop-shell wl-drm wl-text-input |
54 |
+ wl-weekeyboard wl-wl wl-x11 xkbswitch xwayland |
55 |
+) |
56 |
+IUSE_E_MODULES=( |
57 |
+ ${__CONF_MODS[@]/#/enlightenment_modules_conf-} |
58 |
+ ${__NORM_MODS[@]/#/enlightenment_modules_} |
59 |
+) |
60 |
|
61 |
-IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES}" |
62 |
+IUSE="pam spell static-libs systemd +udev ukit wayland ${IUSE_E_MODULES[@]/#/+}" |
63 |
|
64 |
RDEPEND=" |
65 |
pam? ( sys-libs/pam ) |
66 |
@@ -50,8 +54,8 @@ RDEPEND=" |
67 |
>=x11-libs/pixman-0.31.1 |
68 |
>=x11-libs/libxkbcommon-0.3.1 |
69 |
) |
70 |
- >=dev-libs/efl-${PV}[X] |
71 |
- >=media-libs/elementary-${PV} |
72 |
+ >=dev-libs/efl-1.16[X] |
73 |
+ >=media-libs/elementary-1.16 |
74 |
x11-libs/xcb-util-keysyms" |
75 |
DEPEND="${RDEPEND}" |
76 |
|
77 |
@@ -62,23 +66,56 @@ src_prepare() { |
78 |
enlightenment_src_prepare |
79 |
} |
80 |
|
81 |
+# Sanity check to make sure module lists are kept up-to-date. |
82 |
+check_modules() { |
83 |
+ local detected=$( |
84 |
+ awk -F'[\\[\\](, ]' '$1 == "AC_E_OPTIONAL_MODULE" { print $3 }' \ |
85 |
+ configure.ac | sed 's:_:-:g' | LC_COLLATE=C sort |
86 |
+ ) |
87 |
+ local sorted=$( |
88 |
+ printf '%s\n' ${IUSE_E_MODULES[@]/#enlightenment_modules_} | \ |
89 |
+ LC_COLLATE=C sort |
90 |
+ ) |
91 |
+ if [[ ${detected} != "${sorted}" ]] ; then |
92 |
+ local out new old |
93 |
+ eerror "The ebuild needs to be kept in sync." |
94 |
+ echo "${sorted}" > ebuild-iuse |
95 |
+ echo "${detected}" > configure-detected |
96 |
+ out=$(diff -U 0 ebuild-iuse configure-detected | sed -e '1,2d' -e '/^@@/d') |
97 |
+ new=$(echo "${out}" | sed -n '/^+/{s:^+::;p}') |
98 |
+ old=$(echo "${out}" | sed -n '/^-/{s:^-::;p}') |
99 |
+ eerror "Add these modules: $(echo ${new})" |
100 |
+ eerror "Drop these modules: $(echo ${old})" |
101 |
+ die "please update the ebuild" |
102 |
+ fi |
103 |
+} |
104 |
+ |
105 |
src_configure() { |
106 |
+ check_modules |
107 |
+ |
108 |
E_ECONF=( |
109 |
--disable-install-sysactions |
110 |
$(use_enable doc) |
111 |
- --disable-device-hal |
112 |
$(use_enable nls) |
113 |
$(use_enable pam) |
114 |
$(use_enable systemd) |
115 |
--enable-device-udev |
116 |
$(use_enable udev mount-eeze) |
117 |
$(use_enable ukit mount-udisks) |
118 |
- $(use_enable wayland wayland-clients) |
119 |
+ $(use_enable wayland) |
120 |
) |
121 |
local u c |
122 |
- for u in ${IUSE_E_MODULES} ; do |
123 |
- u=${u#+} |
124 |
+ for u in ${IUSE_E_MODULES[@]} ; do |
125 |
c=${u#enlightenment_modules_} |
126 |
+ # Disable modules by hand since we default to enabling them all. |
127 |
+ case ${c} in |
128 |
+ wl-*|xwayland) |
129 |
+ if ! use wayland ; then |
130 |
+ E_ECONF+=( --disable-${c} ) |
131 |
+ continue |
132 |
+ fi |
133 |
+ ;; |
134 |
+ esac |
135 |
E_ECONF+=( $(use_enable ${u} ${c}) ) |
136 |
done |
137 |
enlightenment_src_configure |
138 |
|
139 |
diff --git a/x11-wm/enlightenment/metadata.xml b/x11-wm/enlightenment/metadata.xml |
140 |
index 41964c0..2ebc721 100644 |
141 |
--- a/x11-wm/enlightenment/metadata.xml |
142 |
+++ b/x11-wm/enlightenment/metadata.xml |
143 |
@@ -68,14 +68,19 @@ Enlightenment Features: |
144 |
<flag name="enlightenment_modules_fileman">Enlightenment's integrated file manager</flag> |
145 |
<flag name="enlightenment_modules_fileman-opinfo">Can be placed on the desktop or in a shelf</flag> |
146 |
<flag name="enlightenment_modules_gadman">Module to manage gadgets on the desktop</flag> |
147 |
+ <flag name="enlightenment_modules_geolocation">Geolocation</flag> |
148 |
<flag name="enlightenment_modules_ibar">Iconic application launcher</flag> |
149 |
<flag name="enlightenment_modules_ibox">A home for your iconified applications</flag> |
150 |
<flag name="enlightenment_modules_illume2">Illume2 - next generation of illume - special WM mode for embedded devices and set of plugins with same purpose</flag> |
151 |
+ <flag name="enlightenment_modules_lokker">Screen locker</flag> |
152 |
<flag name="enlightenment_modules_mixer">A module to provide a mixer for changing volume</flag> |
153 |
<flag name="enlightenment_modules_msgbus">DBus Extension</flag> |
154 |
<flag name="enlightenment_modules_music-control">Control your music in your shelf</flag> |
155 |
<flag name="enlightenment_modules_notification">notification-daemon alternative. Popup if an event occur</flag> |
156 |
+ <flag name="enlightenment_modules_packagekit">Package manager integration</flag> |
157 |
<flag name="enlightenment_modules_pager">Gadget to allow you to visualize your virtual desktops and the windows they contain</flag> |
158 |
+ <flag name="enlightenment_modules_pager-plain">A simpler desktop pager</flag> |
159 |
+ <flag name="enlightenment_modules_policy-mobile"></flag> |
160 |
<flag name="enlightenment_modules_quickaccess">Enlightenment Quickaccess Launcher</flag> |
161 |
<flag name="enlightenment_modules_shot">Simple screenshot+save/upload module</flag> |
162 |
<flag name="enlightenment_modules_start">Enlightenment's "Start" button equivalent</flag> |
163 |
@@ -88,9 +93,17 @@ Enlightenment Features: |
164 |
<flag name="enlightenment_modules_winlist">A module to show the list of client applications presently running</flag> |
165 |
<flag name="enlightenment_modules_wizard">First Run Wizard</flag> |
166 |
<flag name="enlightenment_modules_wl-desktop-shell">Enlightenment Wayland Desktop Shell</flag> |
167 |
+ <flag name="enlightenment_modules_wl-drm">Wayland DRM (Direct Rendering Manager) compositing module</flag> |
168 |
<flag name="enlightenment_modules_wl-screenshot">Enlightenment Wayland Screenshot module</flag> |
169 |
+ <flag name="enlightenment_modules_wl-text-input">Wayland text input support</flag> |
170 |
+ <flag name="enlightenment_modules_wl-weekeyboard">Wayland virtual keyboard</flag> |
171 |
+ <flag name="enlightenment_modules_wl-wl">Wayland-in-Wayland module</flag> |
172 |
+ <flag name="enlightenment_modules_wl-x11">Wayland-in-X11 module</flag> |
173 |
<flag name="enlightenment_modules_xkbswitch">Keyboard layout configuration and switcher</flag> |
174 |
+ <flag name="enlightenment_modules_xwayland">X/Wayland integration</flag> |
175 |
+ <flag name="enlightenment_modules_conf">Settings Panel</flag> |
176 |
<flag name="enlightenment_modules_conf-applications">Allows configuration of Ibar, Restart, and Startup applications</flag> |
177 |
+ <flag name="enlightenment_modules_conf-bindings">Input Control Settings</flag> |
178 |
<flag name="enlightenment_modules_conf-comp">Configure default dialog properties</flag> |
179 |
<flag name="enlightenment_modules_conf-dialogs">Configure default dialog properties</flag> |
180 |
<flag name="enlightenment_modules_conf-display">Used to configure your screen</flag> |