package/dhcp/S80dhcp-server: allow empty INTERFACES
[buildroot-gz.git] / package / efl / efl.mk
blob014e010f1880b25a6a3deb2461af0896069e2651
1 ################################################################################
3 # efl
5 ################################################################################
7 EFL_VERSION = 1.15.2
8 EFL_SOURCE = efl-$(EFL_VERSION).tar.xz
9 EFL_SITE = http://download.enlightenment.org/rel/libs/efl
10 EFL_LICENSE = BSD-2c, LGPLv2.1+, GPLv2+
11 EFL_LICENSE_FILES = \
12 COMPLIANCE \
13 COPYING \
14 licenses/COPYING.BSD \
15 licenses/COPYING.FTL \
16 licenses/COPYING.GPL \
17 licenses/COPYING.LGPL \
18 licenses/COPYING.SMALL
20 EFL_INSTALL_STAGING = YES
22 EFL_DEPENDENCIES = host-pkgconf host-efl dbus freetype jpeg lua udev \
23 util-linux zlib
25 # Regenerate the autotools:
26 # - to fix an issue in eldbus-codegen: https://phab.enlightenment.org/T2718
27 # - to remove dependency on libXp: https://phab.enlightenment.org/D3150
28 EFL_AUTORECONF = YES
29 EFL_GETTEXTIZE = YES
31 # Configure options:
32 # --disable-cxx-bindings: disable C++11 bindings.
33 # --disable-sdl: disable sdl2 support.
34 # --disable-systemd: disable systemd support.
35 # --disable-xinput22: disable X11 XInput v2.2+ support.
36 # --enable-lua-old: disable Elua and remove luajit dependency.
37 # --with-opengl=none: disable opengl support.
38 EFL_CONF_OPTS = \
39 --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \
40 --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \
41 --disable-cxx-bindings \
42 --disable-sdl \
43 --disable-systemd \
44 --disable-xinput22 \
45 --enable-lua-old \
46 --with-opengl=none
48 # Disable untested configuration warning.
49 ifeq ($(BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG),)
50 EFL_CONF_OPTS += --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aba
51 endif
53 ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),y)
54 EFL_DEPENDENCIES += util-linux
55 EFL_CONF_OPTS += --enable-libmount
56 else
57 EFL_CONF_OPTS += --disable-libmount
58 endif
60 ifeq ($(BR2_PACKAGE_FONTCONFIG),y)
61 EFL_CONF_OPTS += --enable-fontconfig
62 EFL_DEPENDENCIES += fontconfig
63 else
64 EFL_CONF_OPTS += --disable-fontconfig
65 endif
67 ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y)
68 EFL_CONF_OPTS += --enable-fribidi
69 EFL_DEPENDENCIES += libfribidi
70 else
71 EFL_CONF_OPTS += --disable-fribidi
72 endif
74 ifeq ($(BR2_PACKAGE_GSTREAMER1)$(BR2_PACKAGE_GST1_PLUGINS_BASE),yy)
75 EFL_CONF_OPTS += --enable-gstreamer1
76 EFL_DEPENDENCIES += gstreamer1 gst1-plugins-base
77 else
78 EFL_CONF_OPTS += --disable-gstreamer1
79 endif
81 ifeq ($(BR2_PACKAGE_BULLET),y)
82 EFL_CONF_OPTS += --enable-physics
83 EFL_DEPENDENCIES += bullet
84 else
85 EFL_CONF_OPTS += --disable-physics
86 endif
88 ifeq ($(BR2_PACKAGE_LIBSNDFILE),y)
89 EFL_CONF_OPTS += --enable-audio
90 EFL_DEPENDENCIES += libsndfile
91 else
92 EFL_CONF_OPTS += --disable-audio
93 endif
95 ifeq ($(BR2_PACKAGE_PULSEAUDIO),y)
96 EFL_CONF_OPTS += --enable-pulseaudio
97 EFL_DEPENDENCIES += pulseaudio
98 else
99 EFL_CONF_OPTS += --disable-pulseaudio
100 endif
102 ifeq ($(BR2_PACKAGE_HARFBUZZ),y)
103 EFL_DEPENDENCIES += harfbuzz
104 EFL_CONF_OPTS += --enable-harfbuzz
105 else
106 EFL_CONF_OPTS += --disable-harfbuzz
107 endif
109 ifeq ($(BR2_PACKAGE_TSLIB),y)
110 EFL_DEPENDENCIES += tslib
111 EFL_CONF_OPTS += --enable-tslib
112 else
113 EFL_CONF_OPTS += --disable-tslib
114 endif
116 ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
117 EFL_DEPENDENCIES += libglib2
118 EFL_CONF_OPTS += --with-glib=yes
119 else
120 EFL_CONF_OPTS += --with-glib=no
121 endif
123 # Prefer openssl (the default) over gnutls.
124 ifeq ($(BR2_PACKAGE_OPENSSL),y)
125 EFL_DEPENDENCIES += openssl
126 EFL_CONF_OPTS += --with-crypto=openssl
127 else ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy)
128 EFL_DEPENDENCIES += gnutls libgcrypt
129 EFL_CONF_OPTS += --with-crypto=gnutls \
130 --with-libgcrypt-prefix=$(STAGING_DIR)/usr
131 else
132 EFL_CONF_OPTS += --with-crypto=none
133 endif # BR2_PACKAGE_OPENSSL
135 ifeq ($(BR2_PACKAGE_WAYLAND),y)
136 EFL_DEPENDENCIES += wayland libxkbcommon
137 EFL_CONF_OPTS += --enable-wayland
138 else
139 EFL_CONF_OPTS += --disable-wayland
140 endif
142 ifeq ($(BR2_PACKAGE_EFL_FB),y)
143 EFL_CONF_OPTS += --enable-fb
144 else
145 EFL_CONF_OPTS += --disable-fb
146 endif
148 ifeq ($(BR2_PACKAGE_EFL_X_XLIB),y)
149 EFL_CONF_OPTS += \
150 --with-x11=xlib \
151 --with-x=$(STAGING_DIR) \
152 --x-includes=$(STAGING_DIR)/usr/include \
153 --x-libraries=$(STAGING_DIR)/usr/lib
155 EFL_DEPENDENCIES += \
156 xlib_libX11 \
157 xlib_libXcomposite \
158 xlib_libXcursor \
159 xlib_libXdamage \
160 xlib_libXext \
161 xlib_libXinerama \
162 xlib_libXrandr \
163 xlib_libXrender \
164 xlib_libXScrnSaver \
165 xlib_libXtst
166 else
167 EFL_CONF_OPTS += --with-x11=none
168 endif
170 # Loaders that need external dependencies needs to be --enable-XXX=yes
171 # otherwise the default is '=static'.
172 # All other loaders are statically built-in
173 ifeq ($(BR2_PACKAGE_EFL_PNG),y)
174 EFL_CONF_OPTS += --enable-image-loader-png=yes
175 EFL_DEPENDENCIES += libpng
176 else
177 EFL_CONF_OPTS += --disable-image-loader-png
178 endif
180 ifeq ($(BR2_PACKAGE_EFL_JPEG),y)
181 EFL_CONF_OPTS += --enable-image-loader-jpeg=yes
182 # efl already depends on jpeg.
183 else
184 EFL_CONF_OPTS += --disable-image-loader-jpeg
185 endif
187 ifeq ($(BR2_PACKAGE_EFL_GIF),y)
188 EFL_CONF_OPTS += --enable-image-loader-gif=yes
189 EFL_DEPENDENCIES += giflib
190 else
191 EFL_CONF_OPTS += --disable-image-loader-gif
192 endif
194 ifeq ($(BR2_PACKAGE_EFL_TIFF),y)
195 EFL_CONF_OPTS += --enable-image-loader-tiff=yes
196 EFL_DEPENDENCIES += tiff
197 else
198 EFL_CONF_OPTS += --disable-image-loader-tiff
199 endif
201 ifeq ($(BR2_PACKAGE_EFL_JP2K),y)
202 EFL_CONF_OPTS += --enable-image-loader-jp2k=yes
203 EFL_DEPENDENCIES += openjpeg
204 else
205 EFL_CONF_OPTS += --disable-image-loader-jp2k
206 endif
208 ifeq ($(BR2_PACKAGE_EFL_WEBP),y)
209 EFL_CONF_OPTS += --enable-image-loader-webp=yes
210 EFL_DEPENDENCIES += webp
211 else
212 EFL_CONF_OPTS += --disable-image-loader-webp
213 endif
215 $(eval $(autotools-package))
217 ################################################################################
219 # host-efl
221 ################################################################################
223 # We want to build only some host tools used later in the build.
224 # Actually we want: edje_cc, embryo_cc and eet.
226 # Host dependencies:
227 # * host-dbus: for Eldbus
228 # * host-freetype: for libevas
229 # * host-libglib2: for libecore
230 # * host-libjpeg, host-libpng: for libevas image loader
231 # * host-lua: disable luajit dependency
232 HOST_EFL_DEPENDENCIES = \
233 host-pkgconf \
234 host-dbus \
235 host-freetype \
236 host-libglib2 \
237 host-libjpeg \
238 host-libpng \
239 host-lua \
240 host-zlib
242 # Configure options:
243 # --disable-audio, --disable-multisense remove libsndfile dependency.
244 # --disable-cxx-bindings: disable C++11 bindings.
245 # --disable-fontconfig: remove dependency on fontconfig.
246 # --disable-fribidi: remove dependency on libfribidi.
247 # --disable-gstreamer1: remove dependency on gtreamer 1.0.
248 # --disable-libeeze: remove libudev dependency.
249 # --disable-libmount: remove dependency on host-util-linux libmount.
250 # --disable-physics: remove Bullet dependency.
251 # --enable-image-loader-gif=no: disable Gif dependency.
252 # --enable-image-loader-tiff=no: disable Tiff dependency.
253 # --enable-lua-old: disable Elua and remove luajit dependency.
254 # --with-crypto=none: remove dependencies on openssl or gnutls.
255 # --with-x11=none: remove dependency on X.org.
256 # Yes I really know what I am doing.
257 HOST_EFL_CONF_OPTS += \
258 --disable-audio \
259 --disable-cxx-bindings \
260 --disable-fontconfig \
261 --disable-fribidi \
262 --disable-gstreamer1 \
263 --disable-libeeze \
264 --disable-libmount \
265 --disable-multisense \
266 --disable-physics \
267 --enable-image-loader-gif=no \
268 --enable-image-loader-jpeg=yes \
269 --enable-image-loader-png=yes \
270 --enable-image-loader-tiff=no \
271 --enable-lua-old \
272 --with-crypto=none \
273 --with-glib=yes \
274 --with-opengl=none \
275 --with-x11=none \
276 --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aba
278 $(eval $(host-autotools-package))