linux-pam: add optional libselinux and audit dependencies
[buildroot-gz.git] / package / efl / efl.mk
blob2ea2592115cfd8b3e38e6b5687adfb73c67cb470
1 ################################################################################
3 # efl
5 ################################################################################
7 EFL_VERSION = 1.15.3
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 EFL_AUTORECONF = YES
28 EFL_GETTEXTIZE = YES
30 # Configure options:
31 # --disable-cxx-bindings: disable C++11 bindings.
32 # --disable-sdl: disable sdl2 support.
33 # --disable-systemd: disable systemd support.
34 # --disable-xinput22: disable X11 XInput v2.2+ support.
35 # --enable-lua-old: disable Elua and remove luajit dependency.
36 # --with-opengl=none: disable opengl support.
37 EFL_CONF_OPTS = \
38 --with-edje-cc=$(HOST_DIR)/usr/bin/edje_cc \
39 --with-eolian-gen=$(HOST_DIR)/usr/bin/eolian_gen \
40 --disable-cxx-bindings \
41 --disable-sdl \
42 --disable-systemd \
43 --disable-xinput22 \
44 --enable-lua-old \
45 --with-opengl=none
47 # Disable untested configuration warning.
48 ifeq ($(BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG),)
49 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
50 endif
52 ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBMOUNT),y)
53 EFL_DEPENDENCIES += util-linux
54 EFL_CONF_OPTS += --enable-libmount
55 else
56 EFL_CONF_OPTS += --disable-libmount
57 endif
59 ifeq ($(BR2_PACKAGE_FONTCONFIG),y)
60 EFL_CONF_OPTS += --enable-fontconfig
61 EFL_DEPENDENCIES += fontconfig
62 else
63 EFL_CONF_OPTS += --disable-fontconfig
64 endif
66 ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y)
67 EFL_CONF_OPTS += --enable-fribidi
68 EFL_DEPENDENCIES += libfribidi
69 else
70 EFL_CONF_OPTS += --disable-fribidi
71 endif
73 ifeq ($(BR2_PACKAGE_GSTREAMER1)$(BR2_PACKAGE_GST1_PLUGINS_BASE),yy)
74 EFL_CONF_OPTS += --enable-gstreamer1
75 EFL_DEPENDENCIES += gstreamer1 gst1-plugins-base
76 else
77 EFL_CONF_OPTS += --disable-gstreamer1
78 endif
80 ifeq ($(BR2_PACKAGE_BULLET),y)
81 EFL_CONF_OPTS += --enable-physics
82 EFL_DEPENDENCIES += bullet
83 else
84 EFL_CONF_OPTS += --disable-physics
85 endif
87 ifeq ($(BR2_PACKAGE_LIBSNDFILE),y)
88 EFL_CONF_OPTS += --enable-audio
89 EFL_DEPENDENCIES += libsndfile
90 else
91 EFL_CONF_OPTS += --disable-audio
92 endif
94 ifeq ($(BR2_PACKAGE_PULSEAUDIO),y)
95 EFL_CONF_OPTS += --enable-pulseaudio
96 EFL_DEPENDENCIES += pulseaudio
97 else
98 EFL_CONF_OPTS += --disable-pulseaudio
99 endif
101 ifeq ($(BR2_PACKAGE_HARFBUZZ),y)
102 EFL_DEPENDENCIES += harfbuzz
103 EFL_CONF_OPTS += --enable-harfbuzz
104 else
105 EFL_CONF_OPTS += --disable-harfbuzz
106 endif
108 ifeq ($(BR2_PACKAGE_TSLIB),y)
109 EFL_DEPENDENCIES += tslib
110 EFL_CONF_OPTS += --enable-tslib
111 else
112 EFL_CONF_OPTS += --disable-tslib
113 endif
115 ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
116 EFL_DEPENDENCIES += libglib2
117 EFL_CONF_OPTS += --with-glib=yes
118 else
119 EFL_CONF_OPTS += --with-glib=no
120 endif
122 # Prefer openssl (the default) over gnutls.
123 ifeq ($(BR2_PACKAGE_OPENSSL),y)
124 EFL_DEPENDENCIES += openssl
125 EFL_CONF_OPTS += --with-crypto=openssl
126 else ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy)
127 EFL_DEPENDENCIES += gnutls libgcrypt
128 EFL_CONF_OPTS += --with-crypto=gnutls \
129 --with-libgcrypt-prefix=$(STAGING_DIR)/usr
130 else
131 EFL_CONF_OPTS += --with-crypto=none
132 endif # BR2_PACKAGE_OPENSSL
134 ifeq ($(BR2_PACKAGE_WAYLAND),y)
135 EFL_DEPENDENCIES += wayland libxkbcommon
136 EFL_CONF_OPTS += --enable-wayland
137 else
138 EFL_CONF_OPTS += --disable-wayland
139 endif
141 ifeq ($(BR2_PACKAGE_EFL_FB),y)
142 EFL_CONF_OPTS += --enable-fb
143 else
144 EFL_CONF_OPTS += --disable-fb
145 endif
147 ifeq ($(BR2_PACKAGE_EFL_X_XLIB),y)
148 EFL_CONF_OPTS += \
149 --with-x11=xlib \
150 --with-x=$(STAGING_DIR) \
151 --x-includes=$(STAGING_DIR)/usr/include \
152 --x-libraries=$(STAGING_DIR)/usr/lib
154 EFL_DEPENDENCIES += \
155 xlib_libX11 \
156 xlib_libXcomposite \
157 xlib_libXcursor \
158 xlib_libXdamage \
159 xlib_libXext \
160 xlib_libXinerama \
161 xlib_libXrandr \
162 xlib_libXrender \
163 xlib_libXScrnSaver \
164 xlib_libXtst
165 else
166 EFL_CONF_OPTS += --with-x11=none
167 endif
169 # Loaders that need external dependencies needs to be --enable-XXX=yes
170 # otherwise the default is '=static'.
171 # All other loaders are statically built-in
172 ifeq ($(BR2_PACKAGE_EFL_PNG),y)
173 EFL_CONF_OPTS += --enable-image-loader-png=yes
174 EFL_DEPENDENCIES += libpng
175 else
176 EFL_CONF_OPTS += --disable-image-loader-png
177 endif
179 ifeq ($(BR2_PACKAGE_EFL_JPEG),y)
180 EFL_CONF_OPTS += --enable-image-loader-jpeg=yes
181 # efl already depends on jpeg.
182 else
183 EFL_CONF_OPTS += --disable-image-loader-jpeg
184 endif
186 ifeq ($(BR2_PACKAGE_EFL_GIF),y)
187 EFL_CONF_OPTS += --enable-image-loader-gif=yes
188 EFL_DEPENDENCIES += giflib
189 else
190 EFL_CONF_OPTS += --disable-image-loader-gif
191 endif
193 ifeq ($(BR2_PACKAGE_EFL_TIFF),y)
194 EFL_CONF_OPTS += --enable-image-loader-tiff=yes
195 EFL_DEPENDENCIES += tiff
196 else
197 EFL_CONF_OPTS += --disable-image-loader-tiff
198 endif
200 ifeq ($(BR2_PACKAGE_EFL_JP2K),y)
201 EFL_CONF_OPTS += --enable-image-loader-jp2k=yes
202 EFL_DEPENDENCIES += openjpeg
203 else
204 EFL_CONF_OPTS += --disable-image-loader-jp2k
205 endif
207 ifeq ($(BR2_PACKAGE_EFL_WEBP),y)
208 EFL_CONF_OPTS += --enable-image-loader-webp=yes
209 EFL_DEPENDENCIES += webp
210 else
211 EFL_CONF_OPTS += --disable-image-loader-webp
212 endif
214 $(eval $(autotools-package))
216 ################################################################################
218 # host-efl
220 ################################################################################
222 # We want to build only some host tools used later in the build.
223 # Actually we want: edje_cc, embryo_cc and eet.
225 # Host dependencies:
226 # * host-dbus: for Eldbus
227 # * host-freetype: for libevas
228 # * host-libglib2: for libecore
229 # * host-libjpeg, host-libpng: for libevas image loader
230 # * host-lua: disable luajit dependency
231 HOST_EFL_DEPENDENCIES = \
232 host-pkgconf \
233 host-dbus \
234 host-freetype \
235 host-libglib2 \
236 host-libjpeg \
237 host-libpng \
238 host-lua \
239 host-zlib
241 # Configure options:
242 # --disable-audio, --disable-multisense remove libsndfile dependency.
243 # --disable-cxx-bindings: disable C++11 bindings.
244 # --disable-fontconfig: remove dependency on fontconfig.
245 # --disable-fribidi: remove dependency on libfribidi.
246 # --disable-gstreamer1: remove dependency on gtreamer 1.0.
247 # --disable-libeeze: remove libudev dependency.
248 # --disable-libmount: remove dependency on host-util-linux libmount.
249 # --disable-physics: remove Bullet dependency.
250 # --enable-image-loader-gif=no: disable Gif dependency.
251 # --enable-image-loader-tiff=no: disable Tiff dependency.
252 # --enable-lua-old: disable Elua and remove luajit dependency.
253 # --with-crypto=none: remove dependencies on openssl or gnutls.
254 # --with-x11=none: remove dependency on X.org.
255 # Yes I really know what I am doing.
256 HOST_EFL_CONF_OPTS += \
257 --disable-audio \
258 --disable-cxx-bindings \
259 --disable-fontconfig \
260 --disable-fribidi \
261 --disable-gstreamer1 \
262 --disable-libeeze \
263 --disable-libmount \
264 --disable-multisense \
265 --disable-physics \
266 --enable-image-loader-gif=no \
267 --enable-image-loader-jpeg=yes \
268 --enable-image-loader-png=yes \
269 --enable-image-loader-tiff=no \
270 --enable-lua-old \
271 --with-crypto=none \
272 --with-glib=yes \
273 --with-opengl=none \
274 --with-x11=none \
275 --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
277 $(eval $(host-autotools-package))