hwc: first implementation
[platform/upstream/enlightenment.git] / packaging / enlightenment.spec
1 %bcond_with x
2 %bcond_with wayland
3
4 Name:           enlightenment
5 Version:        0.20.0
6 Release:        0
7 License:        BSD-2-Clause
8 Summary:        The Enlightenment window manager
9 Url:            http://www.enlightenment.org/
10 Group:          Graphics/EFL
11 Source0:        enlightenment-%{version}.tar.bz2
12 Source1001:     enlightenment.manifest
13
14 %if "%{profile}" != "common"
15 %define light_e 1
16 %define _unpackaged_files_terminate_build 0
17 %endif
18
19 BuildRequires:  doxygen
20 BuildRequires:  eet-tools
21 BuildRequires:  fdupes
22 BuildRequires:  gettext
23 BuildRequires:  pam-devel
24 BuildRequires:  pkgconfig(alsa)
25 BuildRequires:  pkgconfig(dbus-1)
26 BuildRequires:  pkgconfig(ecore)
27 BuildRequires:  pkgconfig(ecore-con)
28 BuildRequires:  pkgconfig(ecore-evas)
29 BuildRequires:  pkgconfig(ecore-file)
30 BuildRequires:  pkgconfig(ecore-input)
31 BuildRequires:  pkgconfig(ecore-input-evas)
32 BuildRequires:  pkgconfig(ecore-ipc)
33 BuildRequires:  pkgconfig(edbus)
34 BuildRequires:  pkgconfig(edje)
35 BuildRequires:  pkgconfig(eet)
36 BuildRequires:  pkgconfig(eeze)
37 BuildRequires:  pkgconfig(efreet)
38 BuildRequires:  pkgconfig(eina)
39 BuildRequires:  pkgconfig(eio)
40 BuildRequires:  pkgconfig(evas)
41 BuildRequires:  pkgconfig(elementary)
42 BuildRequires:  pkgconfig(ice)
43 BuildRequires:  pkgconfig(libudev)
44 BuildRequires:  pkgconfig(udev)
45 BuildRequires:  pkgconfig(libtbm)
46 BuildRequires:  pkgconfig(ttrace)
47 %if %{with x}
48 BuildRequires:  pkgconfig(x11)
49 BuildRequires:  pkgconfig(xext)
50 BuildRequires:  pkgconfig(xcb-keysyms)
51 BuildRequires:  pkgconfig(ecore-x)
52 %else
53 BuildRequires:  pkgconfig(wayland-server)
54 BuildRequires:  pkgconfig(xdg-shell-server)
55 BuildRequires:  pkgconfig(scaler-server)
56 BuildRequires:  pkgconfig(transform-server)
57 BuildRequires:  pkgconfig(screenshooter-server)
58 BuildRequires:  pkgconfig(screenshooter-client)
59 BuildRequires:  pkgconfig(tizen-extension-server)
60 BuildRequires:  pkgconfig(wayland-tbm-server)
61 BuildRequires:  pkgconfig(ecore-drm)
62 BuildRequires:  pkgconfig(libtdm)
63 BuildRequires:  pkgconfig(gbm)
64 Requires:       libwayland-extension-server
65 %endif
66
67
68 %description
69 Enlightenment is a window manager.
70
71 %package devel
72 Summary:        Development components for the enlightenment package
73 Group:          Development/Libraries
74 Requires:       %{name} = %{version}
75 Requires:       pkgconfig(tizen-extension-server)
76
77 %description devel
78 Development files for enlightenment
79
80 %prep
81 %setup -q -n %{name}-%{version}
82 cp %{SOURCE1001} .
83
84
85 %build
86 export CFLAGS+=" -fPIE "
87 export LDFLAGS+=" -pie "
88 %autogen \
89 %if %{with wayland}
90       --enable-wayland \
91       --enable-wl-drm \
92       --disable-shot \
93       --disable-xkbswitch \
94       --disable-conf-randr \
95       --disable-conf-bindings \
96       --disable-conf-display \
97       --disable-conf-theme \
98       --disable-everything \
99       --disable-fileman \
100       --disable-pager \
101       --disable-pager-plain \
102       --disable-systray \
103       --disable-tiling \
104       --disable-winlist \
105       --disable-wizard \
106       --disable-wl-x11 \
107       --disable-xwayland \
108       --disable-wl-text-input \
109       --disable-wl-weekeyboard \
110       --enable-quick-init \
111 %endif
112 %if 0%{?light_e}
113       --enable-light-e \
114       --disable-appmenu \
115       --disable-backlight \
116       --disable-battery \
117       --disable-bluez4 \
118       --disable-clock \
119       --disable-conf \
120       --disable-conf_applications \
121       --disable-conf_dialogs \
122       --disable-conf_interaction \
123       --disable-conf_intl \
124       --disable-conf_menus \
125       --disable-conf_paths \
126       --disable-conf_performance \
127       --disable-conf_shelves \
128       --disable-conf_window_manipulation \
129       --disable-conf_window_remembers \
130       --disable-connman \
131       --disable-contact  \
132       --disable-cpufreq \
133       --disable-fileman_opinfo \
134       --disable-gadman \
135       --disable-ibar \
136       --disable-ibox \
137       --disable-lokker \
138       --disable-mixer \
139       --disable-msgbus \
140       --disable-music_control \
141       --disable-notification \
142       --disable-packagekit \
143       --disable-policy_mobile \
144       --disable-quickaccess \
145       --disable-start \
146       --disable-syscon \
147       --disable-tasks \
148       --disable-temperature \
149 %endif
150       --disable-teamwork \
151       --enable-mount-eeze
152
153 make %{?_smp_mflags}
154
155 %install
156 %make_install
157
158 mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
159 rm -f %{buildroot}%{_prefix}/lib/systemd/user/enlightenment.service
160
161 %find_lang enlightenment
162 %fdupes  %{buildroot}/%{_libdir}/enlightenment
163 %fdupes  %{buildroot}/%{_datadir}/enlightenment
164
165 %lang_package
166
167 %files
168 %manifest %{name}.manifest
169 %defattr(-,root,root,-)
170 %license COPYING
171 %config %{_sysconfdir}/enlightenment/sysactions.conf
172 %{_bindir}/enlightenment*
173 %{_libdir}/enlightenment/*
174 %{_datadir}/enlightenment/*
175 %{_datadir}/xsessions/enlightenment.desktop
176 %{_sysconfdir}/xdg/menus/e-applications.menu
177 %{_datadir}/applications/enlightenment_filemanager.desktop
178 %{_sysconfdir}/dbus-1/system.d/org.enlightenment.wm.conf
179 %exclude /usr/share/enlightenment/data/config/profile.cfg
180 %if 0%{?light_e}
181 %exclude %{_bindir}/enlightenment_filemanager
182 %exclude %{_bindir}/enlightenment_imc
183 %exclude %{_bindir}/enlightenment_open
184 %exclude %{_bindir}/enlightenment_remote
185 %exclude %{_bindir}/enlightenment_start
186 %exclude %{_libdir}/enlightenment/utils/*
187 %exclude %{_libdir}/enlightenment/utils/
188 %exclude %{_datadir}/enlightenment/data/*
189 %exclude %{_datadir}/enlightenment/data/
190 %exclude %{_datadir}/enlightenment/doc/*
191 %exclude %{_datadir}/enlightenment/doc
192 %exclude %{_datadir}/xsessions/enlightenment.desktop
193 %exclude %{_sysconfdir}/xdg/menus/e-applications.menu
194 %exclude %{_datadir}/applications/enlightenment_filemanager.desktop
195 %endif
196
197 %files devel
198 %manifest %{name}.manifest
199 %defattr(-,root,root,-)
200 %{_includedir}/enlightenment/*
201 %{_libdir}/pkgconfig/*.pc