summaryrefslogtreecommitdiffstats
path: root/meta-efl/recipes-efl/efl/evas.inc
diff options
context:
space:
mode:
Diffstat (limited to 'meta-efl/recipes-efl/efl/evas.inc')
-rw-r--r--meta-efl/recipes-efl/efl/evas.inc180
1 files changed, 180 insertions, 0 deletions
diff --git a/meta-efl/recipes-efl/efl/evas.inc b/meta-efl/recipes-efl/efl/evas.inc
new file mode 100644
index 000000000..bcb19849b
--- /dev/null
+++ b/meta-efl/recipes-efl/efl/evas.inc
@@ -0,0 +1,180 @@
1DESCRIPTION = "Evas is the Enlightenment canvas API"
2LICENSE = "MIT BSD"
3# can also depend on valgrind, libsdl-x11, directfb
4DEPENDS = "librsvg eina eet freetype jpeg libpng virtual/libx11 libxext libxrender fontconfig libfribidi giflib"
5DEPENDS_virtclass-native = "freetype-native libxext-native libpng-native jpeg-native eet-native eina-native libfribidi-native"
6
7inherit efl
8
9BBCLASSEXTEND = "native"
10INC_PR = "r1"
11FILESPATHPKG =. "${BPN}-${PV}:${BPN}:"
12
13python populate_packages_prepend () {
14 for plugin_type in "engines loaders savers".split():
15 bb.note( "splitting packages for evas %s..." % plugin_type )
16 basedir = bb.data.expand( '${libdir}/evas/modules/%s' % plugin_type, d )
17
18 do_split_packages(d, basedir, '^(.*)',
19 output_pattern = 'evas-' + plugin_type[:-1] + "-%s",
20 description = 'Evas module %s',
21 allow_dirs=True, recursive=False, extra_depends="" )
22}
23
24do_install_append() {
25 find "${D}" -name .debug -type d -exec rm -rf {} \;
26}
27
28FILES_${PN}-dev += "${libdir}/evas/modules/*/*/*/*.a ${libdir}/evas/modules/*/*/*/*.la"
29FILES_${PN}-dbg += "${libdir}/evas/modules/*/*/*/.debug/"
30
31PACKAGES_DYNAMIC_virtclass-native = ""
32PACKAGES_DYNAMIC = "evas-engine-* evas-loader-* evas-saver-*"
33
34RRECOMMENDS_${PN} = " \
35 evas-engine-buffer \
36 evas-engine-fb \
37 evas-engine-software-generic \
38 evas-engine-software-x11 \
39 evas-engine-software-16 \
40 evas-engine-software-16-x11 \
41 evas-engine-xrender-x11 \
42 \
43 evas-loader-png \
44 evas-loader-jpeg \
45 evas-loader-eet \
46 evas-loader-gif \
47"
48
49# Some upgrade path tweaking
50AUTO_LIBNAME_PKGS = ""
51
52RREPLACES_${PN} = "libevas-ver-pre-svn-00-0 libevas-ver-pre-svn-01-0"
53
54RREPLACES_${PN}-tests = "libevas-ver-pre-svn-00-tests libevas-ver-pre-svn-01-tests"
55
56RREPLACES_evas-loader-pmaps = "liblibevas-ver-pre-svn-00-loader-pmaps libevas-ver-pre-svn-00-loader-pmaps "
57RREPLACES_evas-loader-eet = "liblibevas-ver-pre-svn-00-loader-eet libevas-ver-pre-svn-00-loader-eet "
58RREPLACES_evas-loader-jpeg = "liblibevas-ver-pre-svn-00-loader-jpeg libevas-ver-pre-svn-00-loader-jpeg "
59RREPLACES_evas-loader-tiff = "liblibevas-ver-pre-svn-00-loader-tiff libevas-ver-pre-svn-00-loader-tiff "
60RREPLACES_evas-loader-png = "liblibevas-ver-pre-svn-00-loader-png libevas-ver-pre-svn-00-loader-png "
61RREPLACES_evas-loader-xpm = "liblibevas-ver-pre-svn-00-loader-xpm libevas-ver-pre-svn-00-loader-xpm "
62
63RREPLACES_evas-saver-pmaps = "liblibevas-ver-pre-svn-00-saver-pmaps libevas-ver-pre-svn-00-saver-pmaps "
64RREPLACES_evas-saver-eet = "liblibevas-ver-pre-svn-00-saver-eet libevas-ver-pre-svn-00-saver-eet "
65RREPLACES_evas-saver-jpeg = "liblibevas-ver-pre-svn-00-saver-jpeg libevas-ver-pre-svn-00-saver-jpeg "
66RREPLACES_evas-saver-tiff = "liblibevas-ver-pre-svn-00-saver-tiff libevas-ver-pre-svn-00-saver-tiff "
67RREPLACES_evas-saver-png = "liblibevas-ver-pre-svn-00-saver-png libevas-ver-pre-svn-00-saver-png "
68RREPLACES_evas-saver-xpm = "liblibevas-ver-pre-svn-00-saver-xpm libevas-ver-pre-svn-00-saver-xpm "
69
70RREPLACES_evas-engine-fb = "liblibevas-ver-pre-svn-00-engine-fb libevas-ver-pre-svn-00-engine-fb "
71RREPLACES_evas-engine-software-generic = "liblibevas-ver-pre-svn-00-engine-software-generic libevas-ver-pre-svn-00-engine-software-generic "
72RREPLACES_evas-engine-software-16 = "liblibevas-ver-pre-svn-00-engine-software-16 libevas-ver-pre-svn-00-engine-software-16 "
73RREPLACES_evas-engine-buffer = "liblibevas-ver-pre-svn-00-engine-buffer libevas-ver-pre-svn-00-engine-buffer "
74RREPLACES_evas-engine-xrender-x11 = "liblibevas-ver-pre-svn-00-engine-xrender-x11 libevas-ver-pre-svn-00-engine-xrender-x11 "
75RREPLACES_evas-engine-software-x11 = "liblibevas-ver-pre-svn-00-engine-software-x11 libevas-ver-pre-svn-00-engine-software-x11 "
76
77# disabling this, since (due to OE bugs) it drags in whole Gtk+
78#RRECOMMENDS_${PN} += " \
79# libevas-loader-svg \
80#"
81
82EVAS_CPU_TWEAKS = ""
83# Disabled for now, see http://thread.gmane.org/gmane.comp.window-managers.enlightenment.devel/25194
84EVAS_CPU_TWEAKS_armv7a = "--disable-cpu-neon"
85
86# common options
87EVAS_OECONF = " \
88 --x-includes=${STAGING_INCDIR}/X11 \
89 --x-libraries=${STAGING_LIBDIR} \
90 --enable-evas-magic-debug \
91 --enable-fb \
92 --disable-directfb \
93 --disable-sdl \
94 --enable-buffer \
95 --disable-software-ddraw \
96 --disable-software-qtopia \
97 --disable-software-xcb \
98 --disable-xrender-xcb \
99 --disable-glitz-x11 \
100 --enable-image-loader-eet \
101 --disable-image-loader-edb \
102 --enable-image-loader-png \
103 --enable-image-loader-jpeg \
104 --enable-image-loader-tiff \
105 --enable-image-loader-xpm \
106 --enable-cpu-c \
107 --enable-fontconfig \
108 --enable-font-loader-eet \
109 --enable-scale-sample \
110 --enable-scale-smooth \
111 --enable-convert-yuv \
112 --enable-small-dither-mask \
113 --disable-no-dither-mask \
114 --disable-convert-8-rgb-332 \
115 --disable-convert-8-rgb-666 \
116 --disable-convert-8-rgb-232 \
117 --disable-convert-8-rgb-222 \
118 --disable-convert-8-rgb-221 \
119 --disable-convert-8-rgb-121 \
120 --disable-convert-8-rgb-111 \
121 --enable-convert-16-rgb-565 \
122 --disable-convert-16-rgb-555 \
123 --disable-convert-16-rgb-444 \
124 --disable-convert-16-rgb-ipq \
125 --enable-convert-16-rgb-rot-0 \
126 --enable-convert-16-rgb-rot-90 \
127 --disable-convert-16-rgb-rot-180 \
128 --enable-convert-16-rgb-rot-270 \
129 ${EVAS_CPU_TWEAKS} \
130"
131
132# either sgx or 6410 atm
133GLES ?= "sgx"
134
135# This is a hack to get openGL|ES 2.x support enabled for people that have the SDK headers in staging.
136# We put this in the main recipe, since it will just not build the gl stuff when the headers are missing
137
138# If the above sentence confuse you: everything is built and configured as before if you don't have the SDK
139
140EXTRA_OECONF = "${EVAS_OECONF} \
141 --enable-pthreads \
142 --enable-async-events \
143 --enable-async-preload \
144 --enable-simple-x11 \
145 --enable-software-x11 \
146 --enable-xrender-x11 \
147 --enable-software-16-x11 \
148 --enable-image-loader-gif \
149 --enable-image-loader-svg \
150 --enable-convert-24-rgb-888 \
151 --enable-convert-24-bgr-888 \
152 --enable-convert-32-rgb-8888 \
153 --enable-convert-32-rgbx-8888 \
154 --enable-convert-32-bgr-8888 \
155 --enable-convert-32-bgrx-8888 \
156 --enable-convert-32-rgb-rot-0 \
157 --enable-convert-32-rgb-rot-90 \
158 --disable-convert-32-rgb-rot-180 \
159 --enable-convert-32-rgb-rot-270 \
160 --enable-gl-x11 \
161 --enable-gl-flavor-gles \
162 --enable-gles-variety-${GLES} \
163"
164EXTRA_OECONF_virtclass-native = "${EVAS_OECONF} \
165 --disable-software-x11 \
166 --disable-software-16-x11 \
167 --disable-gl-x11 \
168 --disable-xrender-x11 \
169 --disable-image-loader-gif \
170 --disable-image-loader-svg \
171 --disable-convert-24-rgb-888 \
172 --disable-convert-24-bgr-888 \
173 --disable-convert-32-rgb-8888 \
174 --disable-convert-32-rgbx-8888 \
175 --disable-convert-32-bgr-8888 \
176 --disable-convert-32-bgrx-8888 \
177 --disable-convert-32-rgb-rot-0 \
178 --disable-convert-32-rgb-rot-90 \
179 --disable-convert-32-rgb-rot-270 \
180"