diff options
Diffstat (limited to 'libraries/evas')
185 files changed, 15672 insertions, 3417 deletions
diff --git a/libraries/evas/AUTHORS b/libraries/evas/AUTHORS index 52f8f93..470dd6a 100644 --- a/libraries/evas/AUTHORS +++ b/libraries/evas/AUTHORS | |||
@@ -31,3 +31,4 @@ Seungsoo Woo <om101.woo@samsung.com> | |||
31 | Youness Alaoui <kakaroto@kakaroto.homelinux.net> | 31 | Youness Alaoui <kakaroto@kakaroto.homelinux.net> |
32 | Jim Kukunas <james.t.kukunas@linux.intel.com> | 32 | Jim Kukunas <james.t.kukunas@linux.intel.com> |
33 | Nicolas Aguirre <aguirre.nicolas@gmail.com> | 33 | Nicolas Aguirre <aguirre.nicolas@gmail.com> |
34 | Rafal Krypa <r.krypa@samsung.com> | ||
diff --git a/libraries/evas/ChangeLog b/libraries/evas/ChangeLog index ac0f3d2..fa77400 100644 --- a/libraries/evas/ChangeLog +++ b/libraries/evas/ChangeLog | |||
@@ -503,7 +503,7 @@ | |||
503 | 503 | ||
504 | * JPEG encode and decode in eet now uses ISLOW (not IFAST) due to | 504 | * JPEG encode and decode in eet now uses ISLOW (not IFAST) due to |
505 | noticable quality losses in the chase for speed. It will use | 505 | noticable quality losses in the chase for speed. It will use |
506 | IFAST for quality less than 60 when encoding | 506 | IFAST for quality less than 60 when encoding |
507 | 507 | ||
508 | 2011-11-20 Carsten Haitzler (The Rasterman) | 508 | 2011-11-20 Carsten Haitzler (The Rasterman) |
509 | 509 | ||
@@ -515,3 +515,132 @@ | |||
515 | 515 | ||
516 | * Fix repeat event inheritance from parent smart just like | 516 | * Fix repeat event inheritance from parent smart just like |
517 | pass events are inherited. This was inconsistent. | 517 | pass events are inherited. This was inconsistent. |
518 | |||
519 | 2011-12-02 Carsten Haitzler (The Rasterman) | ||
520 | |||
521 | 1.1.0 release | ||
522 | |||
523 | 2011-12-07 Carsten Haitzler (The Rasterman) | ||
524 | |||
525 | * Fix build if gcc too old - if immintrin.h doesn't exist, | ||
526 | don't enable SSE3. | ||
527 | |||
528 | 2011-12-08 Tom Hacohen (TAsn) | ||
529 | |||
530 | * Textblock markup: Support self closing format tags, i.e <br/>. | ||
531 | You should use <br/> and not <br>. The latter still works but it's use | ||
532 | is discouraged. | ||
533 | * Textblock: Added evas_textblock_text_markup_to_utf8. | ||
534 | This lets you convert textblock markup to plain text. | ||
535 | This converts formats and everything correctly. | ||
536 | |||
537 | 2011-12-12 Carsten Haitzler (The Rasterman) | ||
538 | |||
539 | * Fix rounding error in map clip bounds calculation | ||
540 | |||
541 | 2011-12-12 Tom Hacohen (TAsn) | ||
542 | |||
543 | * Textblock: Added evas_textblock_cursor_word_start/end. | ||
544 | Those functions let you jump to the start/end of the word under the | ||
545 | cursor. | ||
546 | |||
547 | 2011-12-13 Carsten Haitzler (The Rasterman) | ||
548 | |||
549 | * Fix grab count negative values if you do weird combinations of | ||
550 | press and release with multiple fingers or multiple mouse | ||
551 | buttons. | ||
552 | |||
553 | 2011-12-14 Cedric BAIL | ||
554 | |||
555 | * Use Eina_File when loading bmp, ico, pmaps and wbmp files. | ||
556 | * Fix potential race condition in wbmp loader code. | ||
557 | |||
558 | 2011-12-14 Tom Hacohen (TAsn) | ||
559 | |||
560 | * Textblock: Made "br" and "tab" default tags for newline and tab. | ||
561 | * Textblock: Added "b" and "i" as default tags that can be overridden | ||
562 | by style, and added the infra to support this. | ||
563 | * Textblock: Added evas_textblock_text_utf8_to_markup | ||
564 | |||
565 | 2011-12-16 Carsten Haitzler (The Rasterman) | ||
566 | |||
567 | * Fix clip bug that shows up in buffer engine | ||
568 | * Fix SSE3 routines with buggy output - disable | ||
569 | * Add new api to set and get default event flags. | ||
570 | |||
571 | 2011-12-19 Carsten Haitzler (The Rasterman) | ||
572 | |||
573 | * Add new canvas events called just before and after evas rendering | ||
574 | starts and stops. | ||
575 | |||
576 | 2011-12-21 ChunEon Park (Hermet) | ||
577 | |||
578 | * Events: repeat events should not be affected by children. | ||
579 | Fixed to object passes events to the next object in the same layer | ||
580 | if the repeat_events is enabled. | ||
581 | |||
582 | 2011-12-23 Sanghee Park | ||
583 | |||
584 | * Extend pixman support to allow other operations to use | ||
585 | pixman when doing software rendering. On x86 this isn't useful | ||
586 | but on ARMv7 with NEON pixman happens to do better with image | ||
587 | blending and nearest scale blending. | ||
588 | * Add tiled rotator for 32bit display as an option. | ||
589 | |||
590 | 2011-12-26 Christopher Michael (devilhorns) | ||
591 | |||
592 | * Add functions to get/set if an object is a 'frame_object' | ||
593 | |||
594 | 2011-12-27 Carsten Haitzler (The Rasterman) | ||
595 | |||
596 | * Add feature to get number of pressed devices (help fix | ||
597 | ecore-evas bug). | ||
598 | |||
599 | 2011-12-28 Carsten Haitzler (The Rasterman) | ||
600 | |||
601 | * Add recursive name find function - evas_object_name_child_find() | ||
602 | |||
603 | 2012-01-01 Carsten Haitzler (The Rasterman) | ||
604 | |||
605 | * Improve CPU use on nvidia drivers when vsyncing. It was | ||
606 | actually glXWaitGL() spinning, not glXSwapBuffers(), so this | ||
607 | points to a bug in the nvidia drivers where the sleep logic | ||
608 | in glXSwapBuffers() hasn't been transferred to glXWaitGL(). | ||
609 | Avoid use of glXWaitGL() to avoid the nvidia bug. | ||
610 | |||
611 | 2012-01-02 Cedric Bail | ||
612 | |||
613 | * Fix unitialized value when running generic loader without any | ||
614 | application found to open the file. | ||
615 | * Use Eina_File when openning XPM file. | ||
616 | |||
617 | 2012-01-03 Cedric Bail | ||
618 | |||
619 | * Use Eina_File for PSD file to. | ||
620 | |||
621 | 2012-01-06 Sung W. Park (sung_) | ||
622 | |||
623 | * Add EvasGL support to software backend using OSMesa. Requires OSMesa | ||
624 | library. Due to caveats in OSMesa, surface config stays with a | ||
625 | context rather than with a surface. So for now, the config of a | ||
626 | surface remains with the first context that it binds to. May need | ||
627 | to come up with a different solution in the near future. | ||
628 | |||
629 | 2012-01-12 Sung W. Park (sung_) | ||
630 | |||
631 | * Add new api evas_gl_config_new/free() to ensure backward compatibility. | ||
632 | Previously, the user simply declared a Evas_GL_Config object but this | ||
633 | can cause issues if new configs are added. Now we have evas allocate it | ||
634 | for you. | ||
635 | |||
636 | 2012-01-16 Raphael Kubo da Costa (rakuco) | ||
637 | |||
638 | * Add evas_object_smart_callback_del_full() to allow users to | ||
639 | unregister a specific smart event callback instead of all | ||
640 | callbacks matching a given type and function pointer. | ||
641 | |||
642 | 2012-01-17 Carsten Haitzler (The Rasterman) | ||
643 | |||
644 | * Add EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN pointer mode | ||
645 | for some very specific behavior needed for accessibility. | ||
646 | |||
diff --git a/libraries/evas/Makefile.am b/libraries/evas/Makefile.am index 665f988..b42e7f9 100644 --- a/libraries/evas/Makefile.am +++ b/libraries/evas/Makefile.am | |||
@@ -45,6 +45,8 @@ evas-direct3d.pc.in \ | |||
45 | evas-software-16-wince.pc.in \ | 45 | evas-software-16-wince.pc.in \ |
46 | evas-software-sdl.pc.in \ | 46 | evas-software-sdl.pc.in \ |
47 | evas-psl1ght.pc.in \ | 47 | evas-psl1ght.pc.in \ |
48 | evas-wayland-shm.pc.in \ | ||
49 | evas-wayland-egl.pc.in \ | ||
48 | evas.spec.in \ | 50 | evas.spec.in \ |
49 | evas.spec \ | 51 | evas.spec \ |
50 | m4/efl_attribute.m4 \ | 52 | m4/efl_attribute.m4 \ |
@@ -127,6 +129,14 @@ if BUILD_ENGINE_PSL1GHT | |||
127 | pkgconfig_DATA += evas-psl1ght.pc | 129 | pkgconfig_DATA += evas-psl1ght.pc |
128 | endif | 130 | endif |
129 | 131 | ||
132 | if BUILD_ENGINE_WAYLAND_SHM | ||
133 | pkgconfig_DATA += evas-wayland-shm.pc | ||
134 | endif | ||
135 | |||
136 | if BUILD_ENGINE_WAYLAND_EGL | ||
137 | pkgconfig_DATA += evas-wayland-egl.pc | ||
138 | endif | ||
139 | |||
130 | .PHONY: doc coverage | 140 | .PHONY: doc coverage |
131 | 141 | ||
132 | doc: | 142 | doc: |
diff --git a/libraries/evas/Makefile.in b/libraries/evas/Makefile.in index 6fb0d12..8fe20cb 100644 --- a/libraries/evas/Makefile.in +++ b/libraries/evas/Makefile.in | |||
@@ -51,6 +51,8 @@ host_triplet = @host@ | |||
51 | @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@am__append_14 = evas-software-16-wince.pc | 51 | @BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE@am__append_14 = evas-software-16-wince.pc |
52 | @BUILD_ENGINE_SOFTWARE_SDL_TRUE@am__append_15 = evas-software-sdl.pc | 52 | @BUILD_ENGINE_SOFTWARE_SDL_TRUE@am__append_15 = evas-software-sdl.pc |
53 | @BUILD_ENGINE_PSL1GHT_TRUE@am__append_16 = evas-psl1ght.pc | 53 | @BUILD_ENGINE_PSL1GHT_TRUE@am__append_16 = evas-psl1ght.pc |
54 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@am__append_17 = evas-wayland-shm.pc | ||
55 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@am__append_18 = evas-wayland-egl.pc | ||
54 | subdir = . | 56 | subdir = . |
55 | DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ | 57 | DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ |
56 | $(srcdir)/Makefile.in $(srcdir)/config.h.in \ | 58 | $(srcdir)/Makefile.in $(srcdir)/config.h.in \ |
@@ -66,10 +68,12 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \ | |||
66 | $(srcdir)/evas-software-ddraw.pc.in \ | 68 | $(srcdir)/evas-software-ddraw.pc.in \ |
67 | $(srcdir)/evas-software-gdi.pc.in \ | 69 | $(srcdir)/evas-software-gdi.pc.in \ |
68 | $(srcdir)/evas-software-sdl.pc.in \ | 70 | $(srcdir)/evas-software-sdl.pc.in \ |
69 | $(srcdir)/evas-software-x11.pc.in $(srcdir)/evas.pc.in \ | 71 | $(srcdir)/evas-software-x11.pc.in \ |
72 | $(srcdir)/evas-wayland-egl.pc.in \ | ||
73 | $(srcdir)/evas-wayland-shm.pc.in $(srcdir)/evas.pc.in \ | ||
70 | $(srcdir)/evas.spec.in $(top_srcdir)/configure ABOUT-NLS \ | 74 | $(srcdir)/evas.spec.in $(top_srcdir)/configure ABOUT-NLS \ |
71 | AUTHORS COPYING ChangeLog INSTALL NEWS compile config.guess \ | 75 | AUTHORS COPYING ChangeLog INSTALL NEWS config.guess config.sub \ |
72 | config.sub depcomp install-sh ltmain.sh missing | 76 | depcomp install-sh ltmain.sh missing |
73 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | 77 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
74 | am__aclocal_m4_deps = $(top_srcdir)/m4/efl_attribute.m4 \ | 78 | am__aclocal_m4_deps = $(top_srcdir)/m4/efl_attribute.m4 \ |
75 | $(top_srcdir)/m4/efl_coverage.m4 \ | 79 | $(top_srcdir)/m4/efl_coverage.m4 \ |
@@ -97,7 +101,7 @@ CONFIG_CLEAN_FILES = evas-directfb.pc evas-fb.pc evas-opengl-x11.pc \ | |||
97 | evas-software-gdi.pc evas-software-ddraw.pc \ | 101 | evas-software-gdi.pc evas-software-ddraw.pc \ |
98 | evas-software-16-ddraw.pc evas-direct3d.pc \ | 102 | evas-software-16-ddraw.pc evas-direct3d.pc \ |
99 | evas-software-16-wince.pc evas-software-sdl.pc evas-psl1ght.pc \ | 103 | evas-software-16-wince.pc evas-software-sdl.pc evas-psl1ght.pc \ |
100 | evas.pc evas.spec | 104 | evas-wayland-shm.pc evas-wayland-egl.pc evas.pc evas.spec |
101 | CONFIG_CLEAN_VPATH_FILES = | 105 | CONFIG_CLEAN_VPATH_FILES = |
102 | am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; | 106 | am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; |
103 | am__vpath_adj = case $$p in \ | 107 | am__vpath_adj = case $$p in \ |
@@ -284,8 +288,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
284 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 288 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
285 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 289 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
286 | PKG_CONFIG = @PKG_CONFIG@ | 290 | PKG_CONFIG = @PKG_CONFIG@ |
287 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
288 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
289 | PNG_CFLAGS = @PNG_CFLAGS@ | 291 | PNG_CFLAGS = @PNG_CFLAGS@ |
290 | PNG_LIBS = @PNG_LIBS@ | 292 | PNG_LIBS = @PNG_LIBS@ |
291 | RANLIB = @RANLIB@ | 293 | RANLIB = @RANLIB@ |
@@ -302,6 +304,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
302 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 304 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
303 | VERSION = @VERSION@ | 305 | VERSION = @VERSION@ |
304 | VMAJ = @VMAJ@ | 306 | VMAJ = @VMAJ@ |
307 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
308 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
305 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 309 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
306 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 310 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
307 | XCB_CFLAGS = @XCB_CFLAGS@ | 311 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -383,6 +387,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
383 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 387 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
384 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 388 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
385 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 389 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
390 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
391 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
392 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
393 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
386 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 394 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
387 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 395 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
388 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 396 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
@@ -501,6 +509,8 @@ evas-direct3d.pc.in \ | |||
501 | evas-software-16-wince.pc.in \ | 509 | evas-software-16-wince.pc.in \ |
502 | evas-software-sdl.pc.in \ | 510 | evas-software-sdl.pc.in \ |
503 | evas-psl1ght.pc.in \ | 511 | evas-psl1ght.pc.in \ |
512 | evas-wayland-shm.pc.in \ | ||
513 | evas-wayland-egl.pc.in \ | ||
504 | evas.spec.in \ | 514 | evas.spec.in \ |
505 | evas.spec \ | 515 | evas.spec \ |
506 | m4/efl_attribute.m4 \ | 516 | m4/efl_attribute.m4 \ |
@@ -522,7 +532,8 @@ pkgconfig_DATA = evas.pc $(am__append_1) $(am__append_2) \ | |||
522 | $(am__append_6) $(am__append_7) $(am__append_8) \ | 532 | $(am__append_6) $(am__append_7) $(am__append_8) \ |
523 | $(am__append_9) $(am__append_10) $(am__append_11) \ | 533 | $(am__append_9) $(am__append_10) $(am__append_11) \ |
524 | $(am__append_12) $(am__append_13) $(am__append_14) \ | 534 | $(am__append_12) $(am__append_13) $(am__append_14) \ |
525 | $(am__append_15) $(am__append_16) | 535 | $(am__append_15) $(am__append_16) $(am__append_17) \ |
536 | $(am__append_18) | ||
526 | all: config.h | 537 | all: config.h |
527 | $(MAKE) $(AM_MAKEFLAGS) all-recursive | 538 | $(MAKE) $(AM_MAKEFLAGS) all-recursive |
528 | 539 | ||
@@ -610,6 +621,10 @@ evas-software-sdl.pc: $(top_builddir)/config.status $(srcdir)/evas-software-sdl. | |||
610 | cd $(top_builddir) && $(SHELL) ./config.status $@ | 621 | cd $(top_builddir) && $(SHELL) ./config.status $@ |
611 | evas-psl1ght.pc: $(top_builddir)/config.status $(srcdir)/evas-psl1ght.pc.in | 622 | evas-psl1ght.pc: $(top_builddir)/config.status $(srcdir)/evas-psl1ght.pc.in |
612 | cd $(top_builddir) && $(SHELL) ./config.status $@ | 623 | cd $(top_builddir) && $(SHELL) ./config.status $@ |
624 | evas-wayland-shm.pc: $(top_builddir)/config.status $(srcdir)/evas-wayland-shm.pc.in | ||
625 | cd $(top_builddir) && $(SHELL) ./config.status $@ | ||
626 | evas-wayland-egl.pc: $(top_builddir)/config.status $(srcdir)/evas-wayland-egl.pc.in | ||
627 | cd $(top_builddir) && $(SHELL) ./config.status $@ | ||
613 | evas.pc: $(top_builddir)/config.status $(srcdir)/evas.pc.in | 628 | evas.pc: $(top_builddir)/config.status $(srcdir)/evas.pc.in |
614 | cd $(top_builddir) && $(SHELL) ./config.status $@ | 629 | cd $(top_builddir) && $(SHELL) ./config.status $@ |
615 | evas.spec: $(top_builddir)/config.status $(srcdir)/evas.spec.in | 630 | evas.spec: $(top_builddir)/config.status $(srcdir)/evas.spec.in |
diff --git a/libraries/evas/NEWS b/libraries/evas/NEWS index afddb46..945fd96 100644 --- a/libraries/evas/NEWS +++ b/libraries/evas/NEWS | |||
@@ -1,3 +1,18 @@ | |||
1 | Evas 1.2.0 | ||
2 | |||
3 | Changes since Evas 1.1.0: | ||
4 | ------------------------- | ||
5 | |||
6 | Additions: | ||
7 | |||
8 | * Textblock now supports self-closing tags, i.e <br/>. Those should be used instead of the old <br> way. | ||
9 | * Shm engine for drawing in Wayland. | ||
10 | * evas_object_smart_callback_del_full API. | ||
11 | |||
12 | Improvements: | ||
13 | |||
14 | * Use Eina_File mmap infrastructure for bmp, ico, pmaps, psd, wbmp and xpm file access. | ||
15 | |||
1 | Evas 1.1.0 | 16 | Evas 1.1.0 |
2 | 17 | ||
3 | Changes since Evas 1.0.0: | 18 | Changes since Evas 1.0.0: |
diff --git a/libraries/evas/aclocal.m4 b/libraries/evas/aclocal.m4 index f74cf11..a816a9b 100644 --- a/libraries/evas/aclocal.m4 +++ b/libraries/evas/aclocal.m4 | |||
@@ -13,14 +13,13 @@ | |||
13 | 13 | ||
14 | m4_ifndef([AC_AUTOCONF_VERSION], | 14 | m4_ifndef([AC_AUTOCONF_VERSION], |
15 | [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl | 15 | [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl |
16 | m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],, | 16 | m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.65],, |
17 | [m4_warning([this file was generated for autoconf 2.67. | 17 | [m4_warning([this file was generated for autoconf 2.65. |
18 | You have another version of autoconf. It may work, but is not guaranteed to. | 18 | You have another version of autoconf. It may work, but is not guaranteed to. |
19 | If you have problems, you may need to regenerate the build system entirely. | 19 | If you have problems, you may need to regenerate the build system entirely. |
20 | To do so, use the procedure documented by the package, typically `autoreconf'.])]) | 20 | To do so, use the procedure documented by the package, typically `autoreconf'.])]) |
21 | 21 | ||
22 | # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- | 22 | # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- |
23 | # serial 1 (pkg-config-0.24) | ||
24 | # | 23 | # |
25 | # Copyright © 2004 Scott James Remnant <scott@netsplit.com>. | 24 | # Copyright © 2004 Scott James Remnant <scott@netsplit.com>. |
26 | # | 25 | # |
@@ -48,10 +47,7 @@ To do so, use the procedure documented by the package, typically `autoreconf'.]) | |||
48 | AC_DEFUN([PKG_PROG_PKG_CONFIG], | 47 | AC_DEFUN([PKG_PROG_PKG_CONFIG], |
49 | [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) | 48 | [m4_pattern_forbid([^_?PKG_[A-Z_]+$]) |
50 | m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) | 49 | m4_pattern_allow([^PKG_CONFIG(_PATH)?$]) |
51 | AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) | 50 | AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl |
52 | AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) | ||
53 | AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) | ||
54 | |||
55 | if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then | 51 | if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then |
56 | AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) | 52 | AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) |
57 | fi | 53 | fi |
@@ -64,6 +60,7 @@ if test -n "$PKG_CONFIG"; then | |||
64 | AC_MSG_RESULT([no]) | 60 | AC_MSG_RESULT([no]) |
65 | PKG_CONFIG="" | 61 | PKG_CONFIG="" |
66 | fi | 62 | fi |
63 | |||
67 | fi[]dnl | 64 | fi[]dnl |
68 | ])# PKG_PROG_PKG_CONFIG | 65 | ])# PKG_PROG_PKG_CONFIG |
69 | 66 | ||
@@ -72,31 +69,34 @@ fi[]dnl | |||
72 | # Check to see whether a particular set of modules exists. Similar | 69 | # Check to see whether a particular set of modules exists. Similar |
73 | # to PKG_CHECK_MODULES(), but does not set variables or print errors. | 70 | # to PKG_CHECK_MODULES(), but does not set variables or print errors. |
74 | # | 71 | # |
75 | # Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) | 72 | # |
76 | # only at the first occurence in configure.ac, so if the first place | 73 | # Similar to PKG_CHECK_MODULES, make sure that the first instance of |
77 | # it's called might be skipped (such as if it is within an "if", you | 74 | # this or PKG_CHECK_MODULES is called, or make sure to call |
78 | # have to call PKG_CHECK_EXISTS manually | 75 | # PKG_CHECK_EXISTS manually |
79 | # -------------------------------------------------------------- | 76 | # -------------------------------------------------------------- |
80 | AC_DEFUN([PKG_CHECK_EXISTS], | 77 | AC_DEFUN([PKG_CHECK_EXISTS], |
81 | [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl | 78 | [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl |
82 | if test -n "$PKG_CONFIG" && \ | 79 | if test -n "$PKG_CONFIG" && \ |
83 | AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then | 80 | AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then |
84 | m4_default([$2], [:]) | 81 | m4_ifval([$2], [$2], [:]) |
85 | m4_ifvaln([$3], [else | 82 | m4_ifvaln([$3], [else |
86 | $3])dnl | 83 | $3])dnl |
87 | fi]) | 84 | fi]) |
88 | 85 | ||
86 | |||
89 | # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) | 87 | # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) |
90 | # --------------------------------------------- | 88 | # --------------------------------------------- |
91 | m4_define([_PKG_CONFIG], | 89 | m4_define([_PKG_CONFIG], |
92 | [if test -n "$$1"; then | 90 | [if test -n "$PKG_CONFIG"; then |
93 | pkg_cv_[]$1="$$1" | 91 | if test -n "$$1"; then |
94 | elif test -n "$PKG_CONFIG"; then | 92 | pkg_cv_[]$1="$$1" |
95 | PKG_CHECK_EXISTS([$3], | 93 | else |
96 | [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], | 94 | PKG_CHECK_EXISTS([$3], |
97 | [pkg_failed=yes]) | 95 | [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`], |
98 | else | 96 | [pkg_failed=yes]) |
99 | pkg_failed=untried | 97 | fi |
98 | else | ||
99 | pkg_failed=untried | ||
100 | fi[]dnl | 100 | fi[]dnl |
101 | ])# _PKG_CONFIG | 101 | ])# _PKG_CONFIG |
102 | 102 | ||
@@ -138,17 +138,16 @@ and $1[]_LIBS to avoid the need to call pkg-config. | |||
138 | See the pkg-config man page for more details.]) | 138 | See the pkg-config man page for more details.]) |
139 | 139 | ||
140 | if test $pkg_failed = yes; then | 140 | if test $pkg_failed = yes; then |
141 | AC_MSG_RESULT([no]) | ||
142 | _PKG_SHORT_ERRORS_SUPPORTED | 141 | _PKG_SHORT_ERRORS_SUPPORTED |
143 | if test $_pkg_short_errors_supported = yes; then | 142 | if test $_pkg_short_errors_supported = yes; then |
144 | $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1` | 143 | $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"` |
145 | else | 144 | else |
146 | $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1` | 145 | $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"` |
147 | fi | 146 | fi |
148 | # Put the nasty error message in config.log where it belongs | 147 | # Put the nasty error message in config.log where it belongs |
149 | echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD | 148 | echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD |
150 | 149 | ||
151 | m4_default([$4], [AC_MSG_ERROR( | 150 | ifelse([$4], , [AC_MSG_ERROR(dnl |
152 | [Package requirements ($2) were not met: | 151 | [Package requirements ($2) were not met: |
153 | 152 | ||
154 | $$1_PKG_ERRORS | 153 | $$1_PKG_ERRORS |
@@ -156,24 +155,25 @@ $$1_PKG_ERRORS | |||
156 | Consider adjusting the PKG_CONFIG_PATH environment variable if you | 155 | Consider adjusting the PKG_CONFIG_PATH environment variable if you |
157 | installed software in a non-standard prefix. | 156 | installed software in a non-standard prefix. |
158 | 157 | ||
159 | _PKG_TEXT])[]dnl | 158 | _PKG_TEXT |
160 | ]) | 159 | ])], |
160 | [AC_MSG_RESULT([no]) | ||
161 | $4]) | ||
161 | elif test $pkg_failed = untried; then | 162 | elif test $pkg_failed = untried; then |
162 | AC_MSG_RESULT([no]) | 163 | ifelse([$4], , [AC_MSG_FAILURE(dnl |
163 | m4_default([$4], [AC_MSG_FAILURE( | ||
164 | [The pkg-config script could not be found or is too old. Make sure it | 164 | [The pkg-config script could not be found or is too old. Make sure it |
165 | is in your PATH or set the PKG_CONFIG environment variable to the full | 165 | is in your PATH or set the PKG_CONFIG environment variable to the full |
166 | path to pkg-config. | 166 | path to pkg-config. |
167 | 167 | ||
168 | _PKG_TEXT | 168 | _PKG_TEXT |
169 | 169 | ||
170 | To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl | 170 | To get pkg-config, see <http://pkg-config.freedesktop.org/>.])], |
171 | ]) | 171 | [$4]) |
172 | else | 172 | else |
173 | $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS | 173 | $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS |
174 | $1[]_LIBS=$pkg_cv_[]$1[]_LIBS | 174 | $1[]_LIBS=$pkg_cv_[]$1[]_LIBS |
175 | AC_MSG_RESULT([yes]) | 175 | AC_MSG_RESULT([yes]) |
176 | $3 | 176 | ifelse([$3], , :, [$3]) |
177 | fi[]dnl | 177 | fi[]dnl |
178 | ])# PKG_CHECK_MODULES | 178 | ])# PKG_CHECK_MODULES |
179 | 179 | ||
diff --git a/libraries/evas/compile b/libraries/evas/compile deleted file mode 100755 index 1b1d232..0000000 --- a/libraries/evas/compile +++ /dev/null | |||
@@ -1,142 +0,0 @@ | |||
1 | #! /bin/sh | ||
2 | # Wrapper for compilers which do not understand `-c -o'. | ||
3 | |||
4 | scriptversion=2005-05-14.22 | ||
5 | |||
6 | # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. | ||
7 | # Written by Tom Tromey <tromey@cygnus.com>. | ||
8 | # | ||
9 | # This program is free software; you can redistribute it and/or modify | ||
10 | # it under the terms of the GNU General Public License as published by | ||
11 | # the Free Software Foundation; either version 2, or (at your option) | ||
12 | # any later version. | ||
13 | # | ||
14 | # This program is distributed in the hope that it will be useful, | ||
15 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | # GNU General Public License for more details. | ||
18 | # | ||
19 | # You should have received a copy of the GNU General Public License | ||
20 | # along with this program; if not, write to the Free Software | ||
21 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | ||
22 | |||
23 | # As a special exception to the GNU General Public License, if you | ||
24 | # distribute this file as part of a program that contains a | ||
25 | # configuration script generated by Autoconf, you may include it under | ||
26 | # the same distribution terms that you use for the rest of that program. | ||
27 | |||
28 | # This file is maintained in Automake, please report | ||
29 | # bugs to <bug-automake@gnu.org> or send patches to | ||
30 | # <automake-patches@gnu.org>. | ||
31 | |||
32 | case $1 in | ||
33 | '') | ||
34 | echo "$0: No command. Try \`$0 --help' for more information." 1>&2 | ||
35 | exit 1; | ||
36 | ;; | ||
37 | -h | --h*) | ||
38 | cat <<\EOF | ||
39 | Usage: compile [--help] [--version] PROGRAM [ARGS] | ||
40 | |||
41 | Wrapper for compilers which do not understand `-c -o'. | ||
42 | Remove `-o dest.o' from ARGS, run PROGRAM with the remaining | ||
43 | arguments, and rename the output as expected. | ||
44 | |||
45 | If you are trying to build a whole package this is not the | ||
46 | right script to run: please start by reading the file `INSTALL'. | ||
47 | |||
48 | Report bugs to <bug-automake@gnu.org>. | ||
49 | EOF | ||
50 | exit $? | ||
51 | ;; | ||
52 | -v | --v*) | ||
53 | echo "compile $scriptversion" | ||
54 | exit $? | ||
55 | ;; | ||
56 | esac | ||
57 | |||
58 | ofile= | ||
59 | cfile= | ||
60 | eat= | ||
61 | |||
62 | for arg | ||
63 | do | ||
64 | if test -n "$eat"; then | ||
65 | eat= | ||
66 | else | ||
67 | case $1 in | ||
68 | -o) | ||
69 | # configure might choose to run compile as `compile cc -o foo foo.c'. | ||
70 | # So we strip `-o arg' only if arg is an object. | ||
71 | eat=1 | ||
72 | case $2 in | ||
73 | *.o | *.obj) | ||
74 | ofile=$2 | ||
75 | ;; | ||
76 | *) | ||
77 | set x "$@" -o "$2" | ||
78 | shift | ||
79 | ;; | ||
80 | esac | ||
81 | ;; | ||
82 | *.c) | ||
83 | cfile=$1 | ||
84 | set x "$@" "$1" | ||
85 | shift | ||
86 | ;; | ||
87 | *) | ||
88 | set x "$@" "$1" | ||
89 | shift | ||
90 | ;; | ||
91 | esac | ||
92 | fi | ||
93 | shift | ||
94 | done | ||
95 | |||
96 | if test -z "$ofile" || test -z "$cfile"; then | ||
97 | # If no `-o' option was seen then we might have been invoked from a | ||
98 | # pattern rule where we don't need one. That is ok -- this is a | ||
99 | # normal compilation that the losing compiler can handle. If no | ||
100 | # `.c' file was seen then we are probably linking. That is also | ||
101 | # ok. | ||
102 | exec "$@" | ||
103 | fi | ||
104 | |||
105 | # Name of file we expect compiler to create. | ||
106 | cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'` | ||
107 | |||
108 | # Create the lock directory. | ||
109 | # Note: use `[/.-]' here to ensure that we don't use the same name | ||
110 | # that we are using for the .o file. Also, base the name on the expected | ||
111 | # object file name, since that is what matters with a parallel build. | ||
112 | lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d | ||
113 | while true; do | ||
114 | if mkdir "$lockdir" >/dev/null 2>&1; then | ||
115 | break | ||
116 | fi | ||
117 | sleep 1 | ||
118 | done | ||
119 | # FIXME: race condition here if user kills between mkdir and trap. | ||
120 | trap "rmdir '$lockdir'; exit 1" 1 2 15 | ||
121 | |||
122 | # Run the compile. | ||
123 | "$@" | ||
124 | ret=$? | ||
125 | |||
126 | if test -f "$cofile"; then | ||
127 | mv "$cofile" "$ofile" | ||
128 | elif test -f "${cofile}bj"; then | ||
129 | mv "${cofile}bj" "$ofile" | ||
130 | fi | ||
131 | |||
132 | rmdir "$lockdir" | ||
133 | exit $ret | ||
134 | |||
135 | # Local Variables: | ||
136 | # mode: shell-script | ||
137 | # sh-indentation: 2 | ||
138 | # eval: (add-hook 'write-file-hooks 'time-stamp) | ||
139 | # time-stamp-start: "scriptversion=" | ||
140 | # time-stamp-format: "%:y-%02m-%02d.%02H" | ||
141 | # time-stamp-end: "$" | ||
142 | # End: | ||
diff --git a/libraries/evas/config.h.in b/libraries/evas/config.h.in index 95bb668..84f6c88 100644 --- a/libraries/evas/config.h.in +++ b/libraries/evas/config.h.in | |||
@@ -182,6 +182,12 @@ | |||
182 | /* Build software Xlib backend */ | 182 | /* Build software Xlib backend */ |
183 | #undef BUILD_ENGINE_SOFTWARE_XLIB | 183 | #undef BUILD_ENGINE_SOFTWARE_XLIB |
184 | 184 | ||
185 | /* Wayland Egl rendering backend */ | ||
186 | #undef BUILD_ENGINE_WAYLAND_EGL | ||
187 | |||
188 | /* Wayland Shm rendering backend */ | ||
189 | #undef BUILD_ENGINE_WAYLAND_SHM | ||
190 | |||
185 | /* EET Font Loader Support */ | 191 | /* EET Font Loader Support */ |
186 | #undef BUILD_FONT_LOADER_EET | 192 | #undef BUILD_FONT_LOADER_EET |
187 | 193 | ||
@@ -410,6 +416,12 @@ | |||
410 | /* Build Tiff image loader inside libevas */ | 416 | /* Build Tiff image loader inside libevas */ |
411 | #undef EVAS_STATIC_BUILD_TIFF | 417 | #undef EVAS_STATIC_BUILD_TIFF |
412 | 418 | ||
419 | /* Build wayland-egl engine inside libevas */ | ||
420 | #undef EVAS_STATIC_BUILD_WAYLAND_EGL | ||
421 | |||
422 | /* Build wayland-shm engine inside libevas */ | ||
423 | #undef EVAS_STATIC_BUILD_WAYLAND_SHM | ||
424 | |||
413 | /* Build WBMP image loader inside libevas */ | 425 | /* Build WBMP image loader inside libevas */ |
414 | #undef EVAS_STATIC_BUILD_WBMP | 426 | #undef EVAS_STATIC_BUILD_WBMP |
415 | 427 | ||
@@ -510,6 +522,9 @@ | |||
510 | /* Define to 1 if the system has the type `struct sigaction'. */ | 522 | /* Define to 1 if the system has the type `struct sigaction'. */ |
511 | #undef HAVE_STRUCT_SIGACTION | 523 | #undef HAVE_STRUCT_SIGACTION |
512 | 524 | ||
525 | /* Define to 1 if you have the <sys/mman.h> header file. */ | ||
526 | #undef HAVE_SYS_MMAN_H | ||
527 | |||
513 | /* Define to 1 if you have the <sys/param.h> header file. */ | 528 | /* Define to 1 if you have the <sys/param.h> header file. */ |
514 | #undef HAVE_SYS_PARAM_H | 529 | #undef HAVE_SYS_PARAM_H |
515 | 530 | ||
@@ -565,6 +580,24 @@ | |||
565 | /* default value since PATH_MAX is not defined */ | 580 | /* default value since PATH_MAX is not defined */ |
566 | #undef PATH_MAX | 581 | #undef PATH_MAX |
567 | 582 | ||
583 | /* Allow pixman to render fonts */ | ||
584 | #undef PIXMAN_FONT | ||
585 | |||
586 | /* Allow pixman to render images */ | ||
587 | #undef PIXMAN_IMAGE | ||
588 | |||
589 | /* Allow pixman to render image sampled scaling */ | ||
590 | #undef PIXMAN_IMAGE_SCALE_SAMPLE | ||
591 | |||
592 | /* Allow pixman to render lines */ | ||
593 | #undef PIXMAN_LINE | ||
594 | |||
595 | /* Allow pixman to render polys */ | ||
596 | #undef PIXMAN_POLY | ||
597 | |||
598 | /* Allow pixman to render rects */ | ||
599 | #undef PIXMAN_RECT | ||
600 | |||
568 | /* The size of `Eina_Unicode', as computed by sizeof. */ | 601 | /* The size of `Eina_Unicode', as computed by sizeof. */ |
569 | #undef SIZEOF_EINA_UNICODE | 602 | #undef SIZEOF_EINA_UNICODE |
570 | 603 | ||
@@ -582,6 +615,9 @@ | |||
582 | /* Define to 1 if you have the ANSI C header files. */ | 615 | /* Define to 1 if you have the ANSI C header files. */ |
583 | #undef STDC_HEADERS | 616 | #undef STDC_HEADERS |
584 | 617 | ||
618 | /* Enable tiled rotate algorithm */ | ||
619 | #undef TILE_ROTATE | ||
620 | |||
585 | /* Enable extensions on AIX 3, Interix. */ | 621 | /* Enable extensions on AIX 3, Interix. */ |
586 | #ifndef _ALL_SOURCE | 622 | #ifndef _ALL_SOURCE |
587 | # undef _ALL_SOURCE | 623 | # undef _ALL_SOURCE |
diff --git a/libraries/evas/configure b/libraries/evas/configure index df1fca7..8ab6964 100755 --- a/libraries/evas/configure +++ b/libraries/evas/configure | |||
@@ -1,13 +1,13 @@ | |||
1 | #! /bin/sh | 1 | #! /bin/sh |
2 | # Guess values for system-dependent variables and create Makefiles. | 2 | # Guess values for system-dependent variables and create Makefiles. |
3 | # Generated by GNU Autoconf 2.67 for evas 1.1.0. | 3 | # Generated by GNU Autoconf 2.65 for evas 1.1.99.67344. |
4 | # | 4 | # |
5 | # Report bugs to <enlightenment-devel@lists.sourceforge.net>. | 5 | # Report bugs to <enlightenment-devel@lists.sourceforge.net>. |
6 | # | 6 | # |
7 | # | 7 | # |
8 | # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, | 8 | # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, |
9 | # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software | 9 | # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, |
10 | # Foundation, Inc. | 10 | # Inc. |
11 | # | 11 | # |
12 | # | 12 | # |
13 | # This configure script is free software; the Free Software Foundation | 13 | # This configure script is free software; the Free Software Foundation |
@@ -319,7 +319,7 @@ $as_echo X"$as_dir" | | |||
319 | test -d "$as_dir" && break | 319 | test -d "$as_dir" && break |
320 | done | 320 | done |
321 | test -z "$as_dirs" || eval "mkdir $as_dirs" | 321 | test -z "$as_dirs" || eval "mkdir $as_dirs" |
322 | } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" | 322 | } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" |
323 | 323 | ||
324 | 324 | ||
325 | } # as_fn_mkdir_p | 325 | } # as_fn_mkdir_p |
@@ -359,19 +359,19 @@ else | |||
359 | fi # as_fn_arith | 359 | fi # as_fn_arith |
360 | 360 | ||
361 | 361 | ||
362 | # as_fn_error STATUS ERROR [LINENO LOG_FD] | 362 | # as_fn_error ERROR [LINENO LOG_FD] |
363 | # ---------------------------------------- | 363 | # --------------------------------- |
364 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are | 364 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are |
365 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the | 365 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the |
366 | # script with STATUS, using 1 if that was 0. | 366 | # script with status $?, using 1 if that was 0. |
367 | as_fn_error () | 367 | as_fn_error () |
368 | { | 368 | { |
369 | as_status=$1; test $as_status -eq 0 && as_status=1 | 369 | as_status=$?; test $as_status -eq 0 && as_status=1 |
370 | if test "$4"; then | 370 | if test "$3"; then |
371 | as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | 371 | as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack |
372 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | 372 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 |
373 | fi | 373 | fi |
374 | $as_echo "$as_me: error: $2" >&2 | 374 | $as_echo "$as_me: error: $1" >&2 |
375 | as_fn_exit $as_status | 375 | as_fn_exit $as_status |
376 | } # as_fn_error | 376 | } # as_fn_error |
377 | 377 | ||
@@ -682,7 +682,7 @@ test -n "$DJDIR" || exec 7<&0 </dev/null | |||
682 | exec 6>&1 | 682 | exec 6>&1 |
683 | 683 | ||
684 | # Name of the host. | 684 | # Name of the host. |
685 | # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, | 685 | # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, |
686 | # so uname gets run too. | 686 | # so uname gets run too. |
687 | ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` | 687 | ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` |
688 | 688 | ||
@@ -701,8 +701,8 @@ MAKEFLAGS= | |||
701 | # Identity of this package. | 701 | # Identity of this package. |
702 | PACKAGE_NAME='evas' | 702 | PACKAGE_NAME='evas' |
703 | PACKAGE_TARNAME='evas' | 703 | PACKAGE_TARNAME='evas' |
704 | PACKAGE_VERSION='1.1.0' | 704 | PACKAGE_VERSION='1.1.99.67344' |
705 | PACKAGE_STRING='evas 1.1.0' | 705 | PACKAGE_STRING='evas 1.1.99.67344' |
706 | PACKAGE_BUGREPORT='enlightenment-devel@lists.sourceforge.net' | 706 | PACKAGE_BUGREPORT='enlightenment-devel@lists.sourceforge.net' |
707 | PACKAGE_URL='' | 707 | PACKAGE_URL='' |
708 | 708 | ||
@@ -937,6 +937,20 @@ evas_engine_software_xcb_libs | |||
937 | evas_engine_software_xcb_cflags | 937 | evas_engine_software_xcb_cflags |
938 | EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE | 938 | EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE |
939 | EVAS_STATIC_BUILD_SOFTWARE_GENERIC_TRUE | 939 | EVAS_STATIC_BUILD_SOFTWARE_GENERIC_TRUE |
940 | EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE | ||
941 | EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE | ||
942 | BUILD_ENGINE_WAYLAND_EGL_FALSE | ||
943 | BUILD_ENGINE_WAYLAND_EGL_TRUE | ||
944 | evas_engine_wayland_egl_libs | ||
945 | evas_engine_wayland_egl_cflags | ||
946 | WAYLAND_EGL_LIBS | ||
947 | WAYLAND_EGL_CFLAGS | ||
948 | EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE | ||
949 | EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE | ||
950 | BUILD_ENGINE_WAYLAND_SHM_FALSE | ||
951 | BUILD_ENGINE_WAYLAND_SHM_TRUE | ||
952 | evas_engine_wayland_shm_libs | ||
953 | evas_engine_wayland_shm_cflags | ||
940 | EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE | 954 | EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE |
941 | EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE | 955 | EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE |
942 | BUILD_ENGINE_SOFTWARE_16_SDL_FALSE | 956 | BUILD_ENGINE_SOFTWARE_16_SDL_FALSE |
@@ -1072,8 +1086,6 @@ EFL_BUILD_DOC_TRUE | |||
1072 | efl_doxygen | 1086 | efl_doxygen |
1073 | efl_have_doxygen | 1087 | efl_have_doxygen |
1074 | pkgconfig_requires_private | 1088 | pkgconfig_requires_private |
1075 | PKG_CONFIG_LIBDIR | ||
1076 | PKG_CONFIG_PATH | ||
1077 | PKG_CONFIG | 1089 | PKG_CONFIG |
1078 | CXXCPP | 1090 | CXXCPP |
1079 | am__fastdepCXX_FALSE | 1091 | am__fastdepCXX_FALSE |
@@ -1221,6 +1233,13 @@ enable_liblinebreak | |||
1221 | enable_fribidi | 1233 | enable_fribidi |
1222 | enable_harfbuzz | 1234 | enable_harfbuzz |
1223 | enable_pixman | 1235 | enable_pixman |
1236 | enable_pixman_font | ||
1237 | enable_pixman_rect | ||
1238 | enable_pixman_line | ||
1239 | enable_pixman_poly | ||
1240 | enable_pixman_image | ||
1241 | enable_pixman_image_scale_sample | ||
1242 | enable_tile_rotate | ||
1224 | enable_evas_cserve | 1243 | enable_evas_cserve |
1225 | enable_gl_flavor_gles | 1244 | enable_gl_flavor_gles |
1226 | enable_gles_variety_sgx | 1245 | enable_gles_variety_sgx |
@@ -1241,6 +1260,8 @@ with_x | |||
1241 | enable_software_16_ddraw | 1260 | enable_software_16_ddraw |
1242 | enable_software_16_wince | 1261 | enable_software_16_wince |
1243 | enable_software_16_sdl | 1262 | enable_software_16_sdl |
1263 | enable_wayland_shm | ||
1264 | enable_wayland_egl | ||
1244 | enable_sdl_primitive | 1265 | enable_sdl_primitive |
1245 | enable_static_software_generic | 1266 | enable_static_software_generic |
1246 | enable_software_xcb | 1267 | enable_software_xcb |
@@ -1338,8 +1359,6 @@ CXXFLAGS | |||
1338 | CCC | 1359 | CCC |
1339 | CXXCPP | 1360 | CXXCPP |
1340 | PKG_CONFIG | 1361 | PKG_CONFIG |
1341 | PKG_CONFIG_PATH | ||
1342 | PKG_CONFIG_LIBDIR | ||
1343 | EVIL_CFLAGS | 1362 | EVIL_CFLAGS |
1344 | EVIL_LIBS | 1363 | EVIL_LIBS |
1345 | EINA_CFLAGS | 1364 | EINA_CFLAGS |
@@ -1363,6 +1382,8 @@ DIRECTFB_LIBS | |||
1363 | XCB_CFLAGS | 1382 | XCB_CFLAGS |
1364 | XCB_LIBS | 1383 | XCB_LIBS |
1365 | XMKMF | 1384 | XMKMF |
1385 | WAYLAND_EGL_CFLAGS | ||
1386 | WAYLAND_EGL_LIBS | ||
1366 | XCB_GL_CFLAGS | 1387 | XCB_GL_CFLAGS |
1367 | XCB_GL_LIBS | 1388 | XCB_GL_LIBS |
1368 | EDB_CFLAGS | 1389 | EDB_CFLAGS |
@@ -1445,9 +1466,8 @@ do | |||
1445 | fi | 1466 | fi |
1446 | 1467 | ||
1447 | case $ac_option in | 1468 | case $ac_option in |
1448 | *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; | 1469 | *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; |
1449 | *=) ac_optarg= ;; | 1470 | *) ac_optarg=yes ;; |
1450 | *) ac_optarg=yes ;; | ||
1451 | esac | 1471 | esac |
1452 | 1472 | ||
1453 | # Accept the important Cygnus configure options, so we can diagnose typos. | 1473 | # Accept the important Cygnus configure options, so we can diagnose typos. |
@@ -1492,7 +1512,7 @@ do | |||
1492 | ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` | 1512 | ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` |
1493 | # Reject names that are not valid shell variable names. | 1513 | # Reject names that are not valid shell variable names. |
1494 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | 1514 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && |
1495 | as_fn_error $? "invalid feature name: $ac_useropt" | 1515 | as_fn_error "invalid feature name: $ac_useropt" |
1496 | ac_useropt_orig=$ac_useropt | 1516 | ac_useropt_orig=$ac_useropt |
1497 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | 1517 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` |
1498 | case $ac_user_opts in | 1518 | case $ac_user_opts in |
@@ -1518,7 +1538,7 @@ do | |||
1518 | ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` | 1538 | ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` |
1519 | # Reject names that are not valid shell variable names. | 1539 | # Reject names that are not valid shell variable names. |
1520 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | 1540 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && |
1521 | as_fn_error $? "invalid feature name: $ac_useropt" | 1541 | as_fn_error "invalid feature name: $ac_useropt" |
1522 | ac_useropt_orig=$ac_useropt | 1542 | ac_useropt_orig=$ac_useropt |
1523 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | 1543 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` |
1524 | case $ac_user_opts in | 1544 | case $ac_user_opts in |
@@ -1722,7 +1742,7 @@ do | |||
1722 | ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` | 1742 | ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` |
1723 | # Reject names that are not valid shell variable names. | 1743 | # Reject names that are not valid shell variable names. |
1724 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | 1744 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && |
1725 | as_fn_error $? "invalid package name: $ac_useropt" | 1745 | as_fn_error "invalid package name: $ac_useropt" |
1726 | ac_useropt_orig=$ac_useropt | 1746 | ac_useropt_orig=$ac_useropt |
1727 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | 1747 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` |
1728 | case $ac_user_opts in | 1748 | case $ac_user_opts in |
@@ -1738,7 +1758,7 @@ do | |||
1738 | ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` | 1758 | ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` |
1739 | # Reject names that are not valid shell variable names. | 1759 | # Reject names that are not valid shell variable names. |
1740 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && | 1760 | expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && |
1741 | as_fn_error $? "invalid package name: $ac_useropt" | 1761 | as_fn_error "invalid package name: $ac_useropt" |
1742 | ac_useropt_orig=$ac_useropt | 1762 | ac_useropt_orig=$ac_useropt |
1743 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` | 1763 | ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` |
1744 | case $ac_user_opts in | 1764 | case $ac_user_opts in |
@@ -1768,8 +1788,8 @@ do | |||
1768 | | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) | 1788 | | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) |
1769 | x_libraries=$ac_optarg ;; | 1789 | x_libraries=$ac_optarg ;; |
1770 | 1790 | ||
1771 | -*) as_fn_error $? "unrecognized option: \`$ac_option' | 1791 | -*) as_fn_error "unrecognized option: \`$ac_option' |
1772 | Try \`$0 --help' for more information" | 1792 | Try \`$0 --help' for more information." |
1773 | ;; | 1793 | ;; |
1774 | 1794 | ||
1775 | *=*) | 1795 | *=*) |
@@ -1777,7 +1797,7 @@ Try \`$0 --help' for more information" | |||
1777 | # Reject names that are not valid shell variable names. | 1797 | # Reject names that are not valid shell variable names. |
1778 | case $ac_envvar in #( | 1798 | case $ac_envvar in #( |
1779 | '' | [0-9]* | *[!_$as_cr_alnum]* ) | 1799 | '' | [0-9]* | *[!_$as_cr_alnum]* ) |
1780 | as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; | 1800 | as_fn_error "invalid variable name: \`$ac_envvar'" ;; |
1781 | esac | 1801 | esac |
1782 | eval $ac_envvar=\$ac_optarg | 1802 | eval $ac_envvar=\$ac_optarg |
1783 | export $ac_envvar ;; | 1803 | export $ac_envvar ;; |
@@ -1795,13 +1815,13 @@ done | |||
1795 | 1815 | ||
1796 | if test -n "$ac_prev"; then | 1816 | if test -n "$ac_prev"; then |
1797 | ac_option=--`echo $ac_prev | sed 's/_/-/g'` | 1817 | ac_option=--`echo $ac_prev | sed 's/_/-/g'` |
1798 | as_fn_error $? "missing argument to $ac_option" | 1818 | as_fn_error "missing argument to $ac_option" |
1799 | fi | 1819 | fi |
1800 | 1820 | ||
1801 | if test -n "$ac_unrecognized_opts"; then | 1821 | if test -n "$ac_unrecognized_opts"; then |
1802 | case $enable_option_checking in | 1822 | case $enable_option_checking in |
1803 | no) ;; | 1823 | no) ;; |
1804 | fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; | 1824 | fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;; |
1805 | *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; | 1825 | *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; |
1806 | esac | 1826 | esac |
1807 | fi | 1827 | fi |
@@ -1824,7 +1844,7 @@ do | |||
1824 | [\\/$]* | ?:[\\/]* ) continue;; | 1844 | [\\/$]* | ?:[\\/]* ) continue;; |
1825 | NONE | '' ) case $ac_var in *prefix ) continue;; esac;; | 1845 | NONE | '' ) case $ac_var in *prefix ) continue;; esac;; |
1826 | esac | 1846 | esac |
1827 | as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" | 1847 | as_fn_error "expected an absolute directory name for --$ac_var: $ac_val" |
1828 | done | 1848 | done |
1829 | 1849 | ||
1830 | # There might be people who depend on the old broken behavior: `$host' | 1850 | # There might be people who depend on the old broken behavior: `$host' |
@@ -1838,8 +1858,8 @@ target=$target_alias | |||
1838 | if test "x$host_alias" != x; then | 1858 | if test "x$host_alias" != x; then |
1839 | if test "x$build_alias" = x; then | 1859 | if test "x$build_alias" = x; then |
1840 | cross_compiling=maybe | 1860 | cross_compiling=maybe |
1841 | $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host. | 1861 | $as_echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. |
1842 | If a cross compiler is detected then cross compile mode will be used" >&2 | 1862 | If a cross compiler is detected then cross compile mode will be used." >&2 |
1843 | elif test "x$build_alias" != "x$host_alias"; then | 1863 | elif test "x$build_alias" != "x$host_alias"; then |
1844 | cross_compiling=yes | 1864 | cross_compiling=yes |
1845 | fi | 1865 | fi |
@@ -1854,9 +1874,9 @@ test "$silent" = yes && exec 6>/dev/null | |||
1854 | ac_pwd=`pwd` && test -n "$ac_pwd" && | 1874 | ac_pwd=`pwd` && test -n "$ac_pwd" && |
1855 | ac_ls_di=`ls -di .` && | 1875 | ac_ls_di=`ls -di .` && |
1856 | ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || | 1876 | ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || |
1857 | as_fn_error $? "working directory cannot be determined" | 1877 | as_fn_error "working directory cannot be determined" |
1858 | test "X$ac_ls_di" = "X$ac_pwd_ls_di" || | 1878 | test "X$ac_ls_di" = "X$ac_pwd_ls_di" || |
1859 | as_fn_error $? "pwd does not report name of working directory" | 1879 | as_fn_error "pwd does not report name of working directory" |
1860 | 1880 | ||
1861 | 1881 | ||
1862 | # Find the source files, if location was not specified. | 1882 | # Find the source files, if location was not specified. |
@@ -1895,11 +1915,11 @@ else | |||
1895 | fi | 1915 | fi |
1896 | if test ! -r "$srcdir/$ac_unique_file"; then | 1916 | if test ! -r "$srcdir/$ac_unique_file"; then |
1897 | test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." | 1917 | test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." |
1898 | as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" | 1918 | as_fn_error "cannot find sources ($ac_unique_file) in $srcdir" |
1899 | fi | 1919 | fi |
1900 | ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" | 1920 | ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" |
1901 | ac_abs_confdir=`( | 1921 | ac_abs_confdir=`( |
1902 | cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" | 1922 | cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg" |
1903 | pwd)` | 1923 | pwd)` |
1904 | # When building in place, set srcdir=. | 1924 | # When building in place, set srcdir=. |
1905 | if test "$ac_abs_confdir" = "$ac_pwd"; then | 1925 | if test "$ac_abs_confdir" = "$ac_pwd"; then |
@@ -1925,7 +1945,7 @@ if test "$ac_init_help" = "long"; then | |||
1925 | # Omit some internal or obsolete options to make the list less imposing. | 1945 | # Omit some internal or obsolete options to make the list less imposing. |
1926 | # This message is too long to be a string in the A/UX 3.1 sh. | 1946 | # This message is too long to be a string in the A/UX 3.1 sh. |
1927 | cat <<_ACEOF | 1947 | cat <<_ACEOF |
1928 | \`configure' configures evas 1.1.0 to adapt to many kinds of systems. | 1948 | \`configure' configures evas 1.1.99.67344 to adapt to many kinds of systems. |
1929 | 1949 | ||
1930 | Usage: $0 [OPTION]... [VAR=VALUE]... | 1950 | Usage: $0 [OPTION]... [VAR=VALUE]... |
1931 | 1951 | ||
@@ -1939,7 +1959,7 @@ Configuration: | |||
1939 | --help=short display options specific to this package | 1959 | --help=short display options specific to this package |
1940 | --help=recursive display the short help of all the included packages | 1960 | --help=recursive display the short help of all the included packages |
1941 | -V, --version display version information and exit | 1961 | -V, --version display version information and exit |
1942 | -q, --quiet, --silent do not print \`checking ...' messages | 1962 | -q, --quiet, --silent do not print \`checking...' messages |
1943 | --cache-file=FILE cache test results in FILE [disabled] | 1963 | --cache-file=FILE cache test results in FILE [disabled] |
1944 | -C, --config-cache alias for \`--cache-file=config.cache' | 1964 | -C, --config-cache alias for \`--cache-file=config.cache' |
1945 | -n, --no-create do not create output files | 1965 | -n, --no-create do not create output files |
@@ -1999,7 +2019,7 @@ fi | |||
1999 | 2019 | ||
2000 | if test -n "$ac_init_help"; then | 2020 | if test -n "$ac_init_help"; then |
2001 | case $ac_init_help in | 2021 | case $ac_init_help in |
2002 | short | recursive ) echo "Configuration of evas 1.1.0:";; | 2022 | short | recursive ) echo "Configuration of evas 1.1.99.67344:";; |
2003 | esac | 2023 | esac |
2004 | cat <<\_ACEOF | 2024 | cat <<\_ACEOF |
2005 | 2025 | ||
@@ -2027,8 +2047,16 @@ Optional Features: | |||
2027 | [default=enabled] | 2047 | [default=enabled] |
2028 | --disable-harfbuzz disable complex text shaping and layouting support. | 2048 | --disable-harfbuzz disable complex text shaping and layouting support. |
2029 | [default=enabled] | 2049 | [default=enabled] |
2030 | --disable-pixman disable pixman for software rendering. | 2050 | --enable-pixman enable pixman for software rendering. |
2031 | [default=enabled] | 2051 | [default=enabled] |
2052 | --enable-pixman-font Allow pixman to render fonts | ||
2053 | --enable-pixman-rect Allow pixman to render rects | ||
2054 | --enable-pixman-line Allow pixman to render lines | ||
2055 | --enable-pixman-poly Allow pixman to render polys | ||
2056 | --enable-pixman-image Allow pixman to render images | ||
2057 | --enable-pixman-image-scale-sample | ||
2058 | Allow pixman to render sampled scaled images | ||
2059 | --enable-tile-rotate Enable tiled rotate algorithm | ||
2032 | --disable-evas-cserve disable shared cache server support. | 2060 | --disable-evas-cserve disable shared cache server support. |
2033 | [default=enabled] | 2061 | [default=enabled] |
2034 | --enable-gl-flavor-gles enable gles falvor of gl instead of standard | 2062 | --enable-gl-flavor-gles enable gles falvor of gl instead of standard |
@@ -2056,6 +2084,8 @@ Optional Features: | |||
2056 | enable Software Windows CE 16 bits rendering backend | 2084 | enable Software Windows CE 16 bits rendering backend |
2057 | --enable-software-16-sdl | 2085 | --enable-software-16-sdl |
2058 | enable Software SDL 16 bits rendering backend | 2086 | enable Software SDL 16 bits rendering backend |
2087 | --enable-wayland-shm enable Wayland Shm rendering backend | ||
2088 | --enable-wayland-egl enable Wayland Egl rendering backend | ||
2059 | --enable-sdl-primitive | 2089 | --enable-sdl-primitive |
2060 | --enable-static-software-generic | 2090 | --enable-static-software-generic |
2061 | Build software generic engine as part of libevas | 2091 | Build software generic engine as part of libevas |
@@ -2229,10 +2259,6 @@ Some influential environment variables: | |||
2229 | CXXFLAGS C++ compiler flags | 2259 | CXXFLAGS C++ compiler flags |
2230 | CXXCPP C++ preprocessor | 2260 | CXXCPP C++ preprocessor |
2231 | PKG_CONFIG path to pkg-config utility | 2261 | PKG_CONFIG path to pkg-config utility |
2232 | PKG_CONFIG_PATH | ||
2233 | directories to add to pkg-config's search path | ||
2234 | PKG_CONFIG_LIBDIR | ||
2235 | path overriding pkg-config's built-in search path | ||
2236 | EVIL_CFLAGS C compiler flags for EVIL, overriding pkg-config | 2262 | EVIL_CFLAGS C compiler flags for EVIL, overriding pkg-config |
2237 | EVIL_LIBS linker flags for EVIL, overriding pkg-config | 2263 | EVIL_LIBS linker flags for EVIL, overriding pkg-config |
2238 | EINA_CFLAGS C compiler flags for EINA, overriding pkg-config | 2264 | EINA_CFLAGS C compiler flags for EINA, overriding pkg-config |
@@ -2268,6 +2294,10 @@ Some influential environment variables: | |||
2268 | XCB_CFLAGS C compiler flags for XCB, overriding pkg-config | 2294 | XCB_CFLAGS C compiler flags for XCB, overriding pkg-config |
2269 | XCB_LIBS linker flags for XCB, overriding pkg-config | 2295 | XCB_LIBS linker flags for XCB, overriding pkg-config |
2270 | XMKMF Path to xmkmf, Makefile generator for X Window System | 2296 | XMKMF Path to xmkmf, Makefile generator for X Window System |
2297 | WAYLAND_EGL_CFLAGS | ||
2298 | C compiler flags for WAYLAND_EGL, overriding pkg-config | ||
2299 | WAYLAND_EGL_LIBS | ||
2300 | linker flags for WAYLAND_EGL, overriding pkg-config | ||
2271 | XCB_GL_CFLAGS | 2301 | XCB_GL_CFLAGS |
2272 | C compiler flags for XCB_GL, overriding pkg-config | 2302 | C compiler flags for XCB_GL, overriding pkg-config |
2273 | XCB_GL_LIBS linker flags for XCB_GL, overriding pkg-config | 2303 | XCB_GL_LIBS linker flags for XCB_GL, overriding pkg-config |
@@ -2361,10 +2391,10 @@ fi | |||
2361 | test -n "$ac_init_help" && exit $ac_status | 2391 | test -n "$ac_init_help" && exit $ac_status |
2362 | if $ac_init_version; then | 2392 | if $ac_init_version; then |
2363 | cat <<\_ACEOF | 2393 | cat <<\_ACEOF |
2364 | evas configure 1.1.0 | 2394 | evas configure 1.1.99.67344 |
2365 | generated by GNU Autoconf 2.67 | 2395 | generated by GNU Autoconf 2.65 |
2366 | 2396 | ||
2367 | Copyright (C) 2010 Free Software Foundation, Inc. | 2397 | Copyright (C) 2009 Free Software Foundation, Inc. |
2368 | This configure script is free software; the Free Software Foundation | 2398 | This configure script is free software; the Free Software Foundation |
2369 | gives unlimited permission to copy, distribute and modify it. | 2399 | gives unlimited permission to copy, distribute and modify it. |
2370 | _ACEOF | 2400 | _ACEOF |
@@ -2434,7 +2464,7 @@ $as_echo "$ac_try_echo"; } >&5 | |||
2434 | mv -f conftest.er1 conftest.err | 2464 | mv -f conftest.er1 conftest.err |
2435 | fi | 2465 | fi |
2436 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | 2466 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
2437 | test $ac_status = 0; } > conftest.i && { | 2467 | test $ac_status = 0; } >/dev/null && { |
2438 | test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || | 2468 | test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || |
2439 | test ! -s conftest.err | 2469 | test ! -s conftest.err |
2440 | }; then : | 2470 | }; then : |
@@ -2458,10 +2488,10 @@ fi | |||
2458 | ac_fn_c_check_header_mongrel () | 2488 | ac_fn_c_check_header_mongrel () |
2459 | { | 2489 | { |
2460 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | 2490 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack |
2461 | if eval "test \"\${$3+set}\"" = set; then : | 2491 | if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : |
2462 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | 2492 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 |
2463 | $as_echo_n "checking for $2... " >&6; } | 2493 | $as_echo_n "checking for $2... " >&6; } |
2464 | if eval "test \"\${$3+set}\"" = set; then : | 2494 | if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : |
2465 | $as_echo_n "(cached) " >&6 | 2495 | $as_echo_n "(cached) " >&6 |
2466 | fi | 2496 | fi |
2467 | eval ac_res=\$$3 | 2497 | eval ac_res=\$$3 |
@@ -2497,7 +2527,7 @@ if ac_fn_c_try_cpp "$LINENO"; then : | |||
2497 | else | 2527 | else |
2498 | ac_header_preproc=no | 2528 | ac_header_preproc=no |
2499 | fi | 2529 | fi |
2500 | rm -f conftest.err conftest.i conftest.$ac_ext | 2530 | rm -f conftest.err conftest.$ac_ext |
2501 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 | 2531 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 |
2502 | $as_echo "$ac_header_preproc" >&6; } | 2532 | $as_echo "$ac_header_preproc" >&6; } |
2503 | 2533 | ||
@@ -2520,15 +2550,17 @@ $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} | |||
2520 | $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} | 2550 | $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} |
2521 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 | 2551 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 |
2522 | $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} | 2552 | $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} |
2523 | ( $as_echo "## -------------------------------------------------------- ## | 2553 | ( cat <<\_ASBOX |
2554 | ## -------------------------------------------------------- ## | ||
2524 | ## Report this to enlightenment-devel@lists.sourceforge.net ## | 2555 | ## Report this to enlightenment-devel@lists.sourceforge.net ## |
2525 | ## -------------------------------------------------------- ##" | 2556 | ## -------------------------------------------------------- ## |
2557 | _ASBOX | ||
2526 | ) | sed "s/^/$as_me: WARNING: /" >&2 | 2558 | ) | sed "s/^/$as_me: WARNING: /" >&2 |
2527 | ;; | 2559 | ;; |
2528 | esac | 2560 | esac |
2529 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | 2561 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 |
2530 | $as_echo_n "checking for $2... " >&6; } | 2562 | $as_echo_n "checking for $2... " >&6; } |
2531 | if eval "test \"\${$3+set}\"" = set; then : | 2563 | if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : |
2532 | $as_echo_n "(cached) " >&6 | 2564 | $as_echo_n "(cached) " >&6 |
2533 | else | 2565 | else |
2534 | eval "$3=\$ac_header_compiler" | 2566 | eval "$3=\$ac_header_compiler" |
@@ -2592,7 +2624,7 @@ ac_fn_c_check_header_compile () | |||
2592 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | 2624 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack |
2593 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | 2625 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 |
2594 | $as_echo_n "checking for $2... " >&6; } | 2626 | $as_echo_n "checking for $2... " >&6; } |
2595 | if eval "test \"\${$3+set}\"" = set; then : | 2627 | if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : |
2596 | $as_echo_n "(cached) " >&6 | 2628 | $as_echo_n "(cached) " >&6 |
2597 | else | 2629 | else |
2598 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | 2630 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
@@ -2668,7 +2700,7 @@ ac_fn_c_check_func () | |||
2668 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | 2700 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack |
2669 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | 2701 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 |
2670 | $as_echo_n "checking for $2... " >&6; } | 2702 | $as_echo_n "checking for $2... " >&6; } |
2671 | if eval "test \"\${$3+set}\"" = set; then : | 2703 | if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : |
2672 | $as_echo_n "(cached) " >&6 | 2704 | $as_echo_n "(cached) " >&6 |
2673 | else | 2705 | else |
2674 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | 2706 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
@@ -2870,7 +2902,7 @@ $as_echo "$ac_try_echo"; } >&5 | |||
2870 | mv -f conftest.er1 conftest.err | 2902 | mv -f conftest.er1 conftest.err |
2871 | fi | 2903 | fi |
2872 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | 2904 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 |
2873 | test $ac_status = 0; } > conftest.i && { | 2905 | test $ac_status = 0; } >/dev/null && { |
2874 | test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || | 2906 | test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || |
2875 | test ! -s conftest.err | 2907 | test ! -s conftest.err |
2876 | }; then : | 2908 | }; then : |
@@ -3119,7 +3151,7 @@ ac_fn_c_check_type () | |||
3119 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | 3151 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack |
3120 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 | 3152 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 |
3121 | $as_echo_n "checking for $2... " >&6; } | 3153 | $as_echo_n "checking for $2... " >&6; } |
3122 | if eval "test \"\${$3+set}\"" = set; then : | 3154 | if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : |
3123 | $as_echo_n "(cached) " >&6 | 3155 | $as_echo_n "(cached) " >&6 |
3124 | else | 3156 | else |
3125 | eval "$3=no" | 3157 | eval "$3=no" |
@@ -3164,18 +3196,15 @@ $as_echo "$ac_res" >&6; } | |||
3164 | 3196 | ||
3165 | } # ac_fn_c_check_type | 3197 | } # ac_fn_c_check_type |
3166 | 3198 | ||
3167 | # ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES | 3199 | # ac_fn_c_check_decl LINENO SYMBOL VAR |
3168 | # --------------------------------------------- | 3200 | # ------------------------------------ |
3169 | # Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR | 3201 | # Tests whether SYMBOL is declared, setting cache variable VAR accordingly. |
3170 | # accordingly. | ||
3171 | ac_fn_c_check_decl () | 3202 | ac_fn_c_check_decl () |
3172 | { | 3203 | { |
3173 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | 3204 | as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack |
3174 | as_decl_name=`echo $2|sed 's/ *(.*//'` | 3205 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $2 is declared" >&5 |
3175 | as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` | 3206 | $as_echo_n "checking whether $2 is declared... " >&6; } |
3176 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 | 3207 | if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : |
3177 | $as_echo_n "checking whether $as_decl_name is declared... " >&6; } | ||
3178 | if eval "test \"\${$3+set}\"" = set; then : | ||
3179 | $as_echo_n "(cached) " >&6 | 3208 | $as_echo_n "(cached) " >&6 |
3180 | else | 3209 | else |
3181 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext | 3210 | cat confdefs.h - <<_ACEOF >conftest.$ac_ext |
@@ -3184,12 +3213,8 @@ $4 | |||
3184 | int | 3213 | int |
3185 | main () | 3214 | main () |
3186 | { | 3215 | { |
3187 | #ifndef $as_decl_name | 3216 | #ifndef $2 |
3188 | #ifdef __cplusplus | 3217 | (void) $2; |
3189 | (void) $as_decl_use; | ||
3190 | #else | ||
3191 | (void) $as_decl_name; | ||
3192 | #endif | ||
3193 | #endif | 3218 | #endif |
3194 | 3219 | ||
3195 | ; | 3220 | ; |
@@ -3213,8 +3238,8 @@ cat >config.log <<_ACEOF | |||
3213 | This file contains any messages produced by compilers while | 3238 | This file contains any messages produced by compilers while |
3214 | running configure, to aid debugging if configure makes a mistake. | 3239 | running configure, to aid debugging if configure makes a mistake. |
3215 | 3240 | ||
3216 | It was created by evas $as_me 1.1.0, which was | 3241 | It was created by evas $as_me 1.1.99.67344, which was |
3217 | generated by GNU Autoconf 2.67. Invocation command line was | 3242 | generated by GNU Autoconf 2.65. Invocation command line was |
3218 | 3243 | ||
3219 | $ $0 $@ | 3244 | $ $0 $@ |
3220 | 3245 | ||
@@ -3324,9 +3349,11 @@ trap 'exit_status=$? | |||
3324 | { | 3349 | { |
3325 | echo | 3350 | echo |
3326 | 3351 | ||
3327 | $as_echo "## ---------------- ## | 3352 | cat <<\_ASBOX |
3353 | ## ---------------- ## | ||
3328 | ## Cache variables. ## | 3354 | ## Cache variables. ## |
3329 | ## ---------------- ##" | 3355 | ## ---------------- ## |
3356 | _ASBOX | ||
3330 | echo | 3357 | echo |
3331 | # The following way of writing the cache mishandles newlines in values, | 3358 | # The following way of writing the cache mishandles newlines in values, |
3332 | ( | 3359 | ( |
@@ -3360,9 +3387,11 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; | |||
3360 | ) | 3387 | ) |
3361 | echo | 3388 | echo |
3362 | 3389 | ||
3363 | $as_echo "## ----------------- ## | 3390 | cat <<\_ASBOX |
3391 | ## ----------------- ## | ||
3364 | ## Output variables. ## | 3392 | ## Output variables. ## |
3365 | ## ----------------- ##" | 3393 | ## ----------------- ## |
3394 | _ASBOX | ||
3366 | echo | 3395 | echo |
3367 | for ac_var in $ac_subst_vars | 3396 | for ac_var in $ac_subst_vars |
3368 | do | 3397 | do |
@@ -3375,9 +3404,11 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; | |||
3375 | echo | 3404 | echo |
3376 | 3405 | ||
3377 | if test -n "$ac_subst_files"; then | 3406 | if test -n "$ac_subst_files"; then |
3378 | $as_echo "## ------------------- ## | 3407 | cat <<\_ASBOX |
3408 | ## ------------------- ## | ||
3379 | ## File substitutions. ## | 3409 | ## File substitutions. ## |
3380 | ## ------------------- ##" | 3410 | ## ------------------- ## |
3411 | _ASBOX | ||
3381 | echo | 3412 | echo |
3382 | for ac_var in $ac_subst_files | 3413 | for ac_var in $ac_subst_files |
3383 | do | 3414 | do |
@@ -3391,9 +3422,11 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; | |||
3391 | fi | 3422 | fi |
3392 | 3423 | ||
3393 | if test -s confdefs.h; then | 3424 | if test -s confdefs.h; then |
3394 | $as_echo "## ----------- ## | 3425 | cat <<\_ASBOX |
3426 | ## ----------- ## | ||
3395 | ## confdefs.h. ## | 3427 | ## confdefs.h. ## |
3396 | ## ----------- ##" | 3428 | ## ----------- ## |
3429 | _ASBOX | ||
3397 | echo | 3430 | echo |
3398 | cat confdefs.h | 3431 | cat confdefs.h |
3399 | echo | 3432 | echo |
@@ -3448,12 +3481,7 @@ _ACEOF | |||
3448 | ac_site_file1=NONE | 3481 | ac_site_file1=NONE |
3449 | ac_site_file2=NONE | 3482 | ac_site_file2=NONE |
3450 | if test -n "$CONFIG_SITE"; then | 3483 | if test -n "$CONFIG_SITE"; then |
3451 | # We do not want a PATH search for config.site. | 3484 | ac_site_file1=$CONFIG_SITE |
3452 | case $CONFIG_SITE in #(( | ||
3453 | -*) ac_site_file1=./$CONFIG_SITE;; | ||
3454 | */*) ac_site_file1=$CONFIG_SITE;; | ||
3455 | *) ac_site_file1=./$CONFIG_SITE;; | ||
3456 | esac | ||
3457 | elif test "x$prefix" != xNONE; then | 3485 | elif test "x$prefix" != xNONE; then |
3458 | ac_site_file1=$prefix/share/config.site | 3486 | ac_site_file1=$prefix/share/config.site |
3459 | ac_site_file2=$prefix/etc/config.site | 3487 | ac_site_file2=$prefix/etc/config.site |
@@ -3468,11 +3496,7 @@ do | |||
3468 | { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 | 3496 | { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 |
3469 | $as_echo "$as_me: loading site script $ac_site_file" >&6;} | 3497 | $as_echo "$as_me: loading site script $ac_site_file" >&6;} |
3470 | sed 's/^/| /' "$ac_site_file" >&5 | 3498 | sed 's/^/| /' "$ac_site_file" >&5 |
3471 | . "$ac_site_file" \ | 3499 | . "$ac_site_file" |
3472 | || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | ||
3473 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | ||
3474 | as_fn_error $? "failed to load site script $ac_site_file | ||
3475 | See \`config.log' for more details" "$LINENO" 5 ; } | ||
3476 | fi | 3500 | fi |
3477 | done | 3501 | done |
3478 | 3502 | ||
@@ -3548,7 +3572,7 @@ if $ac_cache_corrupted; then | |||
3548 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 3572 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
3549 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 | 3573 | { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 |
3550 | $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} | 3574 | $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} |
3551 | as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 | 3575 | as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 |
3552 | fi | 3576 | fi |
3553 | ## -------------------- ## | 3577 | ## -------------------- ## |
3554 | ## Main body of script. ## | 3578 | ## Main body of script. ## |
@@ -3574,22 +3598,16 @@ am__api_version='1.11' | |||
3574 | 3598 | ||
3575 | ac_aux_dir= | 3599 | ac_aux_dir= |
3576 | for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do | 3600 | for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do |
3577 | if test -f "$ac_dir/install-sh"; then | 3601 | for ac_t in install-sh install.sh shtool; do |
3578 | ac_aux_dir=$ac_dir | 3602 | if test -f "$ac_dir/$ac_t"; then |
3579 | ac_install_sh="$ac_aux_dir/install-sh -c" | 3603 | ac_aux_dir=$ac_dir |
3580 | break | 3604 | ac_install_sh="$ac_aux_dir/$ac_t -c" |
3581 | elif test -f "$ac_dir/install.sh"; then | 3605 | break 2 |
3582 | ac_aux_dir=$ac_dir | 3606 | fi |
3583 | ac_install_sh="$ac_aux_dir/install.sh -c" | 3607 | done |
3584 | break | ||
3585 | elif test -f "$ac_dir/shtool"; then | ||
3586 | ac_aux_dir=$ac_dir | ||
3587 | ac_install_sh="$ac_aux_dir/shtool install -c" | ||
3588 | break | ||
3589 | fi | ||
3590 | done | 3608 | done |
3591 | if test -z "$ac_aux_dir"; then | 3609 | if test -z "$ac_aux_dir"; then |
3592 | as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 | 3610 | as_fn_error "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 |
3593 | fi | 3611 | fi |
3594 | 3612 | ||
3595 | # These three variables are undocumented and unsupported, | 3613 | # These three variables are undocumented and unsupported, |
@@ -3705,11 +3723,11 @@ am_lf=' | |||
3705 | ' | 3723 | ' |
3706 | case `pwd` in | 3724 | case `pwd` in |
3707 | *[\\\"\#\$\&\'\`$am_lf]*) | 3725 | *[\\\"\#\$\&\'\`$am_lf]*) |
3708 | as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;; | 3726 | as_fn_error "unsafe absolute working directory name" "$LINENO" 5;; |
3709 | esac | 3727 | esac |
3710 | case $srcdir in | 3728 | case $srcdir in |
3711 | *[\\\"\#\$\&\'\`$am_lf\ \ ]*) | 3729 | *[\\\"\#\$\&\'\`$am_lf\ \ ]*) |
3712 | as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;; | 3730 | as_fn_error "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; |
3713 | esac | 3731 | esac |
3714 | 3732 | ||
3715 | # Do `set' in a subshell so we don't clobber the current shell's | 3733 | # Do `set' in a subshell so we don't clobber the current shell's |
@@ -3731,7 +3749,7 @@ if ( | |||
3731 | # if, for instance, CONFIG_SHELL is bash and it inherits a | 3749 | # if, for instance, CONFIG_SHELL is bash and it inherits a |
3732 | # broken ls alias from the environment. This has actually | 3750 | # broken ls alias from the environment. This has actually |
3733 | # happened. Such a system could not be considered "sane". | 3751 | # happened. Such a system could not be considered "sane". |
3734 | as_fn_error $? "ls -t appears to fail. Make sure there is not a broken | 3752 | as_fn_error "ls -t appears to fail. Make sure there is not a broken |
3735 | alias in your environment" "$LINENO" 5 | 3753 | alias in your environment" "$LINENO" 5 |
3736 | fi | 3754 | fi |
3737 | 3755 | ||
@@ -3741,7 +3759,7 @@ then | |||
3741 | # Ok. | 3759 | # Ok. |
3742 | : | 3760 | : |
3743 | else | 3761 | else |
3744 | as_fn_error $? "newly created file is older than distributed files! | 3762 | as_fn_error "newly created file is older than distributed files! |
3745 | Check your system clock" "$LINENO" 5 | 3763 | Check your system clock" "$LINENO" 5 |
3746 | fi | 3764 | fi |
3747 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | 3765 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
@@ -3979,7 +3997,7 @@ done | |||
3979 | $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } | 3997 | $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } |
3980 | set x ${MAKE-make} | 3998 | set x ${MAKE-make} |
3981 | ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` | 3999 | ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` |
3982 | if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then : | 4000 | if { as_var=ac_cv_prog_make_${ac_make}_set; eval "test \"\${$as_var+set}\" = set"; }; then : |
3983 | $as_echo_n "(cached) " >&6 | 4001 | $as_echo_n "(cached) " >&6 |
3984 | else | 4002 | else |
3985 | cat >conftest.make <<\_ACEOF | 4003 | cat >conftest.make <<\_ACEOF |
@@ -3987,7 +4005,7 @@ SHELL = /bin/sh | |||
3987 | all: | 4005 | all: |
3988 | @echo '@@@%%%=$(MAKE)=@@@%%%' | 4006 | @echo '@@@%%%=$(MAKE)=@@@%%%' |
3989 | _ACEOF | 4007 | _ACEOF |
3990 | # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. | 4008 | # GNU make sometimes prints "make[1]: Entering...", which would confuse us. |
3991 | case `${MAKE-make} -f conftest.make 2>/dev/null` in | 4009 | case `${MAKE-make} -f conftest.make 2>/dev/null` in |
3992 | *@@@%%%=?*=@@@%%%*) | 4010 | *@@@%%%=?*=@@@%%%*) |
3993 | eval ac_cv_prog_make_${ac_make}_set=yes;; | 4011 | eval ac_cv_prog_make_${ac_make}_set=yes;; |
@@ -4021,7 +4039,7 @@ if test "`cd $srcdir && pwd`" != "`pwd`"; then | |||
4021 | am__isrc=' -I$(srcdir)' | 4039 | am__isrc=' -I$(srcdir)' |
4022 | # test to see if srcdir already configured | 4040 | # test to see if srcdir already configured |
4023 | if test -f $srcdir/config.status; then | 4041 | if test -f $srcdir/config.status; then |
4024 | as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 | 4042 | as_fn_error "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 |
4025 | fi | 4043 | fi |
4026 | fi | 4044 | fi |
4027 | 4045 | ||
@@ -4037,7 +4055,7 @@ fi | |||
4037 | 4055 | ||
4038 | # Define the identity of the package. | 4056 | # Define the identity of the package. |
4039 | PACKAGE='evas' | 4057 | PACKAGE='evas' |
4040 | VERSION='1.1.0' | 4058 | VERSION='1.1.99.67344' |
4041 | 4059 | ||
4042 | 4060 | ||
4043 | cat >>confdefs.h <<_ACEOF | 4061 | cat >>confdefs.h <<_ACEOF |
@@ -4452,8 +4470,8 @@ fi | |||
4452 | 4470 | ||
4453 | test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 4471 | test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
4454 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 4472 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
4455 | as_fn_error $? "no acceptable C compiler found in \$PATH | 4473 | as_fn_error "no acceptable C compiler found in \$PATH |
4456 | See \`config.log' for more details" "$LINENO" 5 ; } | 4474 | See \`config.log' for more details." "$LINENO" 5; } |
4457 | 4475 | ||
4458 | # Provide some information about the compiler. | 4476 | # Provide some information about the compiler. |
4459 | $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 | 4477 | $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 |
@@ -4567,8 +4585,9 @@ sed 's/^/| /' conftest.$ac_ext >&5 | |||
4567 | 4585 | ||
4568 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 4586 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
4569 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 4587 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
4570 | as_fn_error 77 "C compiler cannot create executables | 4588 | { as_fn_set_status 77 |
4571 | See \`config.log' for more details" "$LINENO" 5 ; } | 4589 | as_fn_error "C compiler cannot create executables |
4590 | See \`config.log' for more details." "$LINENO" 5; }; } | ||
4572 | else | 4591 | else |
4573 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | 4592 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
4574 | $as_echo "yes" >&6; } | 4593 | $as_echo "yes" >&6; } |
@@ -4610,8 +4629,8 @@ done | |||
4610 | else | 4629 | else |
4611 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 4630 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
4612 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 4631 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
4613 | as_fn_error $? "cannot compute suffix of executables: cannot compile and link | 4632 | as_fn_error "cannot compute suffix of executables: cannot compile and link |
4614 | See \`config.log' for more details" "$LINENO" 5 ; } | 4633 | See \`config.log' for more details." "$LINENO" 5; } |
4615 | fi | 4634 | fi |
4616 | rm -f conftest conftest$ac_cv_exeext | 4635 | rm -f conftest conftest$ac_cv_exeext |
4617 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 | 4636 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 |
@@ -4668,9 +4687,9 @@ $as_echo "$ac_try_echo"; } >&5 | |||
4668 | else | 4687 | else |
4669 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 4688 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
4670 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 4689 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
4671 | as_fn_error $? "cannot run C compiled programs. | 4690 | as_fn_error "cannot run C compiled programs. |
4672 | If you meant to cross compile, use \`--host'. | 4691 | If you meant to cross compile, use \`--host'. |
4673 | See \`config.log' for more details" "$LINENO" 5 ; } | 4692 | See \`config.log' for more details." "$LINENO" 5; } |
4674 | fi | 4693 | fi |
4675 | fi | 4694 | fi |
4676 | fi | 4695 | fi |
@@ -4721,8 +4740,8 @@ sed 's/^/| /' conftest.$ac_ext >&5 | |||
4721 | 4740 | ||
4722 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 4741 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
4723 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 4742 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
4724 | as_fn_error $? "cannot compute suffix of object files: cannot compile | 4743 | as_fn_error "cannot compute suffix of object files: cannot compile |
4725 | See \`config.log' for more details" "$LINENO" 5 ; } | 4744 | See \`config.log' for more details." "$LINENO" 5; } |
4726 | fi | 4745 | fi |
4727 | rm -f conftest.$ac_cv_objext conftest.$ac_ext | 4746 | rm -f conftest.$ac_cv_objext conftest.$ac_ext |
4728 | fi | 4747 | fi |
@@ -5112,7 +5131,7 @@ else | |||
5112 | # Broken: fails on valid input. | 5131 | # Broken: fails on valid input. |
5113 | continue | 5132 | continue |
5114 | fi | 5133 | fi |
5115 | rm -f conftest.err conftest.i conftest.$ac_ext | 5134 | rm -f conftest.err conftest.$ac_ext |
5116 | 5135 | ||
5117 | # OK, works on sane cases. Now check whether nonexistent headers | 5136 | # OK, works on sane cases. Now check whether nonexistent headers |
5118 | # can be detected and how. | 5137 | # can be detected and how. |
@@ -5128,11 +5147,11 @@ else | |||
5128 | ac_preproc_ok=: | 5147 | ac_preproc_ok=: |
5129 | break | 5148 | break |
5130 | fi | 5149 | fi |
5131 | rm -f conftest.err conftest.i conftest.$ac_ext | 5150 | rm -f conftest.err conftest.$ac_ext |
5132 | 5151 | ||
5133 | done | 5152 | done |
5134 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | 5153 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. |
5135 | rm -f conftest.i conftest.err conftest.$ac_ext | 5154 | rm -f conftest.err conftest.$ac_ext |
5136 | if $ac_preproc_ok; then : | 5155 | if $ac_preproc_ok; then : |
5137 | break | 5156 | break |
5138 | fi | 5157 | fi |
@@ -5171,7 +5190,7 @@ else | |||
5171 | # Broken: fails on valid input. | 5190 | # Broken: fails on valid input. |
5172 | continue | 5191 | continue |
5173 | fi | 5192 | fi |
5174 | rm -f conftest.err conftest.i conftest.$ac_ext | 5193 | rm -f conftest.err conftest.$ac_ext |
5175 | 5194 | ||
5176 | # OK, works on sane cases. Now check whether nonexistent headers | 5195 | # OK, works on sane cases. Now check whether nonexistent headers |
5177 | # can be detected and how. | 5196 | # can be detected and how. |
@@ -5187,18 +5206,18 @@ else | |||
5187 | ac_preproc_ok=: | 5206 | ac_preproc_ok=: |
5188 | break | 5207 | break |
5189 | fi | 5208 | fi |
5190 | rm -f conftest.err conftest.i conftest.$ac_ext | 5209 | rm -f conftest.err conftest.$ac_ext |
5191 | 5210 | ||
5192 | done | 5211 | done |
5193 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | 5212 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. |
5194 | rm -f conftest.i conftest.err conftest.$ac_ext | 5213 | rm -f conftest.err conftest.$ac_ext |
5195 | if $ac_preproc_ok; then : | 5214 | if $ac_preproc_ok; then : |
5196 | 5215 | ||
5197 | else | 5216 | else |
5198 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 5217 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
5199 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 5218 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
5200 | as_fn_error $? "C preprocessor \"$CPP\" fails sanity check | 5219 | as_fn_error "C preprocessor \"$CPP\" fails sanity check |
5201 | See \`config.log' for more details" "$LINENO" 5 ; } | 5220 | See \`config.log' for more details." "$LINENO" 5; } |
5202 | fi | 5221 | fi |
5203 | 5222 | ||
5204 | ac_ext=c | 5223 | ac_ext=c |
@@ -5259,7 +5278,7 @@ esac | |||
5259 | done | 5278 | done |
5260 | IFS=$as_save_IFS | 5279 | IFS=$as_save_IFS |
5261 | if test -z "$ac_cv_path_GREP"; then | 5280 | if test -z "$ac_cv_path_GREP"; then |
5262 | as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | 5281 | as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 |
5263 | fi | 5282 | fi |
5264 | else | 5283 | else |
5265 | ac_cv_path_GREP=$GREP | 5284 | ac_cv_path_GREP=$GREP |
@@ -5325,7 +5344,7 @@ esac | |||
5325 | done | 5344 | done |
5326 | IFS=$as_save_IFS | 5345 | IFS=$as_save_IFS |
5327 | if test -z "$ac_cv_path_EGREP"; then | 5346 | if test -z "$ac_cv_path_EGREP"; then |
5328 | as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | 5347 | as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 |
5329 | fi | 5348 | fi |
5330 | else | 5349 | else |
5331 | ac_cv_path_EGREP=$EGREP | 5350 | ac_cv_path_EGREP=$EGREP |
@@ -5457,7 +5476,8 @@ do : | |||
5457 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | 5476 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` |
5458 | ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default | 5477 | ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default |
5459 | " | 5478 | " |
5460 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | 5479 | eval as_val=\$$as_ac_Header |
5480 | if test "x$as_val" = x""yes; then : | ||
5461 | cat >>confdefs.h <<_ACEOF | 5481 | cat >>confdefs.h <<_ACEOF |
5462 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | 5482 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 |
5463 | _ACEOF | 5483 | _ACEOF |
@@ -5532,7 +5552,7 @@ $as_echo "$ac_cv_safe_to_define___extensions__" >&6; } | |||
5532 | 5552 | ||
5533 | # Make sure we can run config.sub. | 5553 | # Make sure we can run config.sub. |
5534 | $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || | 5554 | $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || |
5535 | as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 | 5555 | as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 |
5536 | 5556 | ||
5537 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 | 5557 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 |
5538 | $as_echo_n "checking build system type... " >&6; } | 5558 | $as_echo_n "checking build system type... " >&6; } |
@@ -5543,16 +5563,16 @@ else | |||
5543 | test "x$ac_build_alias" = x && | 5563 | test "x$ac_build_alias" = x && |
5544 | ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` | 5564 | ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` |
5545 | test "x$ac_build_alias" = x && | 5565 | test "x$ac_build_alias" = x && |
5546 | as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 | 5566 | as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5 |
5547 | ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || | 5567 | ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || |
5548 | as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 | 5568 | as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 |
5549 | 5569 | ||
5550 | fi | 5570 | fi |
5551 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 | 5571 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 |
5552 | $as_echo "$ac_cv_build" >&6; } | 5572 | $as_echo "$ac_cv_build" >&6; } |
5553 | case $ac_cv_build in | 5573 | case $ac_cv_build in |
5554 | *-*-*) ;; | 5574 | *-*-*) ;; |
5555 | *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;; | 5575 | *) as_fn_error "invalid value of canonical build" "$LINENO" 5;; |
5556 | esac | 5576 | esac |
5557 | build=$ac_cv_build | 5577 | build=$ac_cv_build |
5558 | ac_save_IFS=$IFS; IFS='-' | 5578 | ac_save_IFS=$IFS; IFS='-' |
@@ -5577,7 +5597,7 @@ else | |||
5577 | ac_cv_host=$ac_cv_build | 5597 | ac_cv_host=$ac_cv_build |
5578 | else | 5598 | else |
5579 | ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || | 5599 | ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || |
5580 | as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 | 5600 | as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 |
5581 | fi | 5601 | fi |
5582 | 5602 | ||
5583 | fi | 5603 | fi |
@@ -5585,7 +5605,7 @@ fi | |||
5585 | $as_echo "$ac_cv_host" >&6; } | 5605 | $as_echo "$ac_cv_host" >&6; } |
5586 | case $ac_cv_host in | 5606 | case $ac_cv_host in |
5587 | *-*-*) ;; | 5607 | *-*-*) ;; |
5588 | *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;; | 5608 | *) as_fn_error "invalid value of canonical host" "$LINENO" 5;; |
5589 | esac | 5609 | esac |
5590 | host=$ac_cv_host | 5610 | host=$ac_cv_host |
5591 | ac_save_IFS=$IFS; IFS='-' | 5611 | ac_save_IFS=$IFS; IFS='-' |
@@ -5986,7 +6006,7 @@ esac | |||
5986 | done | 6006 | done |
5987 | IFS=$as_save_IFS | 6007 | IFS=$as_save_IFS |
5988 | if test -z "$ac_cv_path_SED"; then | 6008 | if test -z "$ac_cv_path_SED"; then |
5989 | as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 | 6009 | as_fn_error "no acceptable sed could be found in \$PATH" "$LINENO" 5 |
5990 | fi | 6010 | fi |
5991 | else | 6011 | else |
5992 | ac_cv_path_SED=$SED | 6012 | ac_cv_path_SED=$SED |
@@ -6065,7 +6085,7 @@ esac | |||
6065 | done | 6085 | done |
6066 | IFS=$as_save_IFS | 6086 | IFS=$as_save_IFS |
6067 | if test -z "$ac_cv_path_FGREP"; then | 6087 | if test -z "$ac_cv_path_FGREP"; then |
6068 | as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 | 6088 | as_fn_error "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 |
6069 | fi | 6089 | fi |
6070 | else | 6090 | else |
6071 | ac_cv_path_FGREP=$FGREP | 6091 | ac_cv_path_FGREP=$FGREP |
@@ -6181,7 +6201,7 @@ else | |||
6181 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | 6201 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
6182 | $as_echo "no" >&6; } | 6202 | $as_echo "no" >&6; } |
6183 | fi | 6203 | fi |
6184 | test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 | 6204 | test -z "$LD" && as_fn_error "no acceptable ld found in \$PATH" "$LINENO" 5 |
6185 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 | 6205 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 |
6186 | $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } | 6206 | $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } |
6187 | if test "${lt_cv_prog_gnu_ld+set}" = set; then : | 6207 | if test "${lt_cv_prog_gnu_ld+set}" = set; then : |
@@ -6383,13 +6403,13 @@ if test "${lt_cv_nm_interface+set}" = set; then : | |||
6383 | else | 6403 | else |
6384 | lt_cv_nm_interface="BSD nm" | 6404 | lt_cv_nm_interface="BSD nm" |
6385 | echo "int some_variable = 0;" > conftest.$ac_ext | 6405 | echo "int some_variable = 0;" > conftest.$ac_ext |
6386 | (eval echo "\"\$as_me:6386: $ac_compile\"" >&5) | 6406 | (eval echo "\"\$as_me:6406: $ac_compile\"" >&5) |
6387 | (eval "$ac_compile" 2>conftest.err) | 6407 | (eval "$ac_compile" 2>conftest.err) |
6388 | cat conftest.err >&5 | 6408 | cat conftest.err >&5 |
6389 | (eval echo "\"\$as_me:6389: $NM \\\"conftest.$ac_objext\\\"\"" >&5) | 6409 | (eval echo "\"\$as_me:6409: $NM \\\"conftest.$ac_objext\\\"\"" >&5) |
6390 | (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) | 6410 | (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) |
6391 | cat conftest.err >&5 | 6411 | cat conftest.err >&5 |
6392 | (eval echo "\"\$as_me:6392: output\"" >&5) | 6412 | (eval echo "\"\$as_me:6412: output\"" >&5) |
6393 | cat conftest.out >&5 | 6413 | cat conftest.out >&5 |
6394 | if $GREP 'External.*some_variable' conftest.out > /dev/null; then | 6414 | if $GREP 'External.*some_variable' conftest.out > /dev/null; then |
6395 | lt_cv_nm_interface="MS dumpbin" | 6415 | lt_cv_nm_interface="MS dumpbin" |
@@ -7591,7 +7611,7 @@ ia64-*-hpux*) | |||
7591 | ;; | 7611 | ;; |
7592 | *-*-irix6*) | 7612 | *-*-irix6*) |
7593 | # Find out which ABI we are using. | 7613 | # Find out which ABI we are using. |
7594 | echo '#line 7594 "configure"' > conftest.$ac_ext | 7614 | echo '#line 7614 "configure"' > conftest.$ac_ext |
7595 | if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 | 7615 | if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 |
7596 | (eval $ac_compile) 2>&5 | 7616 | (eval $ac_compile) 2>&5 |
7597 | ac_status=$? | 7617 | ac_status=$? |
@@ -8851,11 +8871,11 @@ else | |||
8851 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ | 8871 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
8852 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ | 8872 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
8853 | -e 's:$: $lt_compiler_flag:'` | 8873 | -e 's:$: $lt_compiler_flag:'` |
8854 | (eval echo "\"\$as_me:8854: $lt_compile\"" >&5) | 8874 | (eval echo "\"\$as_me:8874: $lt_compile\"" >&5) |
8855 | (eval "$lt_compile" 2>conftest.err) | 8875 | (eval "$lt_compile" 2>conftest.err) |
8856 | ac_status=$? | 8876 | ac_status=$? |
8857 | cat conftest.err >&5 | 8877 | cat conftest.err >&5 |
8858 | echo "$as_me:8858: \$? = $ac_status" >&5 | 8878 | echo "$as_me:8878: \$? = $ac_status" >&5 |
8859 | if (exit $ac_status) && test -s "$ac_outfile"; then | 8879 | if (exit $ac_status) && test -s "$ac_outfile"; then |
8860 | # The compiler can only warn and ignore the option if not recognized | 8880 | # The compiler can only warn and ignore the option if not recognized |
8861 | # So say no if there are warnings other than the usual output. | 8881 | # So say no if there are warnings other than the usual output. |
@@ -9190,11 +9210,11 @@ else | |||
9190 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ | 9210 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
9191 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ | 9211 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
9192 | -e 's:$: $lt_compiler_flag:'` | 9212 | -e 's:$: $lt_compiler_flag:'` |
9193 | (eval echo "\"\$as_me:9193: $lt_compile\"" >&5) | 9213 | (eval echo "\"\$as_me:9213: $lt_compile\"" >&5) |
9194 | (eval "$lt_compile" 2>conftest.err) | 9214 | (eval "$lt_compile" 2>conftest.err) |
9195 | ac_status=$? | 9215 | ac_status=$? |
9196 | cat conftest.err >&5 | 9216 | cat conftest.err >&5 |
9197 | echo "$as_me:9197: \$? = $ac_status" >&5 | 9217 | echo "$as_me:9217: \$? = $ac_status" >&5 |
9198 | if (exit $ac_status) && test -s "$ac_outfile"; then | 9218 | if (exit $ac_status) && test -s "$ac_outfile"; then |
9199 | # The compiler can only warn and ignore the option if not recognized | 9219 | # The compiler can only warn and ignore the option if not recognized |
9200 | # So say no if there are warnings other than the usual output. | 9220 | # So say no if there are warnings other than the usual output. |
@@ -9295,11 +9315,11 @@ else | |||
9295 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ | 9315 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
9296 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ | 9316 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
9297 | -e 's:$: $lt_compiler_flag:'` | 9317 | -e 's:$: $lt_compiler_flag:'` |
9298 | (eval echo "\"\$as_me:9298: $lt_compile\"" >&5) | 9318 | (eval echo "\"\$as_me:9318: $lt_compile\"" >&5) |
9299 | (eval "$lt_compile" 2>out/conftest.err) | 9319 | (eval "$lt_compile" 2>out/conftest.err) |
9300 | ac_status=$? | 9320 | ac_status=$? |
9301 | cat out/conftest.err >&5 | 9321 | cat out/conftest.err >&5 |
9302 | echo "$as_me:9302: \$? = $ac_status" >&5 | 9322 | echo "$as_me:9322: \$? = $ac_status" >&5 |
9303 | if (exit $ac_status) && test -s out/conftest2.$ac_objext | 9323 | if (exit $ac_status) && test -s out/conftest2.$ac_objext |
9304 | then | 9324 | then |
9305 | # The compiler can only warn and ignore the option if not recognized | 9325 | # The compiler can only warn and ignore the option if not recognized |
@@ -9350,11 +9370,11 @@ else | |||
9350 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ | 9370 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
9351 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ | 9371 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
9352 | -e 's:$: $lt_compiler_flag:'` | 9372 | -e 's:$: $lt_compiler_flag:'` |
9353 | (eval echo "\"\$as_me:9353: $lt_compile\"" >&5) | 9373 | (eval echo "\"\$as_me:9373: $lt_compile\"" >&5) |
9354 | (eval "$lt_compile" 2>out/conftest.err) | 9374 | (eval "$lt_compile" 2>out/conftest.err) |
9355 | ac_status=$? | 9375 | ac_status=$? |
9356 | cat out/conftest.err >&5 | 9376 | cat out/conftest.err >&5 |
9357 | echo "$as_me:9357: \$? = $ac_status" >&5 | 9377 | echo "$as_me:9377: \$? = $ac_status" >&5 |
9358 | if (exit $ac_status) && test -s out/conftest2.$ac_objext | 9378 | if (exit $ac_status) && test -s out/conftest2.$ac_objext |
9359 | then | 9379 | then |
9360 | # The compiler can only warn and ignore the option if not recognized | 9380 | # The compiler can only warn and ignore the option if not recognized |
@@ -11734,7 +11754,7 @@ else | |||
11734 | lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 | 11754 | lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
11735 | lt_status=$lt_dlunknown | 11755 | lt_status=$lt_dlunknown |
11736 | cat > conftest.$ac_ext <<_LT_EOF | 11756 | cat > conftest.$ac_ext <<_LT_EOF |
11737 | #line 11737 "configure" | 11757 | #line 11757 "configure" |
11738 | #include "confdefs.h" | 11758 | #include "confdefs.h" |
11739 | 11759 | ||
11740 | #if HAVE_DLFCN_H | 11760 | #if HAVE_DLFCN_H |
@@ -11830,7 +11850,7 @@ else | |||
11830 | lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 | 11850 | lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 |
11831 | lt_status=$lt_dlunknown | 11851 | lt_status=$lt_dlunknown |
11832 | cat > conftest.$ac_ext <<_LT_EOF | 11852 | cat > conftest.$ac_ext <<_LT_EOF |
11833 | #line 11833 "configure" | 11853 | #line 11853 "configure" |
11834 | #include "confdefs.h" | 11854 | #include "confdefs.h" |
11835 | 11855 | ||
11836 | #if HAVE_DLFCN_H | 11856 | #if HAVE_DLFCN_H |
@@ -12074,15 +12094,15 @@ _ACEOF | |||
12074 | 12094 | ||
12075 | 12095 | ||
12076 | cat >>confdefs.h <<_ACEOF | 12096 | cat >>confdefs.h <<_ACEOF |
12077 | #define VMIC 0 | 12097 | #define VMIC 99 |
12078 | _ACEOF | 12098 | _ACEOF |
12079 | 12099 | ||
12080 | 12100 | ||
12081 | cat >>confdefs.h <<_ACEOF | 12101 | cat >>confdefs.h <<_ACEOF |
12082 | #define VREV 0 | 12102 | #define VREV 67344 |
12083 | _ACEOF | 12103 | _ACEOF |
12084 | 12104 | ||
12085 | version_info="2:0:1" | 12105 | version_info="2:99:1" |
12086 | release_info="" | 12106 | release_info="" |
12087 | 12107 | ||
12088 | 12108 | ||
@@ -12101,7 +12121,7 @@ case "$host_os" in | |||
12101 | MODULE_ARCH="$host_os-$host_cpu" | 12121 | MODULE_ARCH="$host_os-$host_cpu" |
12102 | ;; | 12122 | ;; |
12103 | *) | 12123 | *) |
12104 | MODULE_ARCH="$host_os-$host_cpu-1.1.0" | 12124 | MODULE_ARCH="$host_os-$host_cpu-1.1.99" |
12105 | ;; | 12125 | ;; |
12106 | esac | 12126 | esac |
12107 | 12127 | ||
@@ -12136,6 +12156,8 @@ want_evas_engine_direct3d="no" | |||
12136 | want_evas_engine_fb="no" | 12156 | want_evas_engine_fb="no" |
12137 | want_evas_engine_directfb="no" | 12157 | want_evas_engine_directfb="no" |
12138 | want_evas_engine_psl1ght="no" | 12158 | want_evas_engine_psl1ght="no" |
12159 | want_evas_engine_wayland_shm="no" | ||
12160 | want_evas_engine_wayland_egl="no" | ||
12139 | 12161 | ||
12140 | want_evas_image_loader_edb="yes" | 12162 | want_evas_image_loader_edb="yes" |
12141 | want_evas_image_loader_eet="yes" | 12163 | want_evas_image_loader_eet="yes" |
@@ -12182,6 +12204,8 @@ case "$host_os" in | |||
12182 | want_evas_engine_software_xcb="no" | 12204 | want_evas_engine_software_xcb="no" |
12183 | want_evas_engine_gl_xcb="no" | 12205 | want_evas_engine_gl_xcb="no" |
12184 | want_evas_engine_fb="auto" | 12206 | want_evas_engine_fb="auto" |
12207 | want_evas_engine_wayland_shm="auto" | ||
12208 | want_evas_engine_wayland_egl="auto" | ||
12185 | ### no - not ready/usable/complete | 12209 | ### no - not ready/usable/complete |
12186 | # want_evas_engine_software_8_x11="auto" | 12210 | # want_evas_engine_software_8_x11="auto" |
12187 | # want_evas_engine_software_16_x11="auto" | 12211 | # want_evas_engine_software_16_x11="auto" |
@@ -13582,7 +13606,7 @@ else | |||
13582 | # Broken: fails on valid input. | 13606 | # Broken: fails on valid input. |
13583 | continue | 13607 | continue |
13584 | fi | 13608 | fi |
13585 | rm -f conftest.err conftest.i conftest.$ac_ext | 13609 | rm -f conftest.err conftest.$ac_ext |
13586 | 13610 | ||
13587 | # OK, works on sane cases. Now check whether nonexistent headers | 13611 | # OK, works on sane cases. Now check whether nonexistent headers |
13588 | # can be detected and how. | 13612 | # can be detected and how. |
@@ -13598,11 +13622,11 @@ else | |||
13598 | ac_preproc_ok=: | 13622 | ac_preproc_ok=: |
13599 | break | 13623 | break |
13600 | fi | 13624 | fi |
13601 | rm -f conftest.err conftest.i conftest.$ac_ext | 13625 | rm -f conftest.err conftest.$ac_ext |
13602 | 13626 | ||
13603 | done | 13627 | done |
13604 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | 13628 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. |
13605 | rm -f conftest.i conftest.err conftest.$ac_ext | 13629 | rm -f conftest.err conftest.$ac_ext |
13606 | if $ac_preproc_ok; then : | 13630 | if $ac_preproc_ok; then : |
13607 | break | 13631 | break |
13608 | fi | 13632 | fi |
@@ -13641,7 +13665,7 @@ else | |||
13641 | # Broken: fails on valid input. | 13665 | # Broken: fails on valid input. |
13642 | continue | 13666 | continue |
13643 | fi | 13667 | fi |
13644 | rm -f conftest.err conftest.i conftest.$ac_ext | 13668 | rm -f conftest.err conftest.$ac_ext |
13645 | 13669 | ||
13646 | # OK, works on sane cases. Now check whether nonexistent headers | 13670 | # OK, works on sane cases. Now check whether nonexistent headers |
13647 | # can be detected and how. | 13671 | # can be detected and how. |
@@ -13657,11 +13681,11 @@ else | |||
13657 | ac_preproc_ok=: | 13681 | ac_preproc_ok=: |
13658 | break | 13682 | break |
13659 | fi | 13683 | fi |
13660 | rm -f conftest.err conftest.i conftest.$ac_ext | 13684 | rm -f conftest.err conftest.$ac_ext |
13661 | 13685 | ||
13662 | done | 13686 | done |
13663 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. | 13687 | # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. |
13664 | rm -f conftest.i conftest.err conftest.$ac_ext | 13688 | rm -f conftest.err conftest.$ac_ext |
13665 | if $ac_preproc_ok; then : | 13689 | if $ac_preproc_ok; then : |
13666 | 13690 | ||
13667 | else | 13691 | else |
@@ -13890,7 +13914,7 @@ else | |||
13890 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | 13914 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
13891 | $as_echo "no" >&6; } | 13915 | $as_echo "no" >&6; } |
13892 | fi | 13916 | fi |
13893 | test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 | 13917 | test -z "$LD" && as_fn_error "no acceptable ld found in \$PATH" "$LINENO" 5 |
13894 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 | 13918 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 |
13895 | $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } | 13919 | $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } |
13896 | if test "${lt_cv_prog_gnu_ld+set}" = set; then : | 13920 | if test "${lt_cv_prog_gnu_ld+set}" = set; then : |
@@ -15431,11 +15455,11 @@ else | |||
15431 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ | 15455 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
15432 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ | 15456 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
15433 | -e 's:$: $lt_compiler_flag:'` | 15457 | -e 's:$: $lt_compiler_flag:'` |
15434 | (eval echo "\"\$as_me:15434: $lt_compile\"" >&5) | 15458 | (eval echo "\"\$as_me:15458: $lt_compile\"" >&5) |
15435 | (eval "$lt_compile" 2>conftest.err) | 15459 | (eval "$lt_compile" 2>conftest.err) |
15436 | ac_status=$? | 15460 | ac_status=$? |
15437 | cat conftest.err >&5 | 15461 | cat conftest.err >&5 |
15438 | echo "$as_me:15438: \$? = $ac_status" >&5 | 15462 | echo "$as_me:15462: \$? = $ac_status" >&5 |
15439 | if (exit $ac_status) && test -s "$ac_outfile"; then | 15463 | if (exit $ac_status) && test -s "$ac_outfile"; then |
15440 | # The compiler can only warn and ignore the option if not recognized | 15464 | # The compiler can only warn and ignore the option if not recognized |
15441 | # So say no if there are warnings other than the usual output. | 15465 | # So say no if there are warnings other than the usual output. |
@@ -15530,11 +15554,11 @@ else | |||
15530 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ | 15554 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
15531 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ | 15555 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
15532 | -e 's:$: $lt_compiler_flag:'` | 15556 | -e 's:$: $lt_compiler_flag:'` |
15533 | (eval echo "\"\$as_me:15533: $lt_compile\"" >&5) | 15557 | (eval echo "\"\$as_me:15557: $lt_compile\"" >&5) |
15534 | (eval "$lt_compile" 2>out/conftest.err) | 15558 | (eval "$lt_compile" 2>out/conftest.err) |
15535 | ac_status=$? | 15559 | ac_status=$? |
15536 | cat out/conftest.err >&5 | 15560 | cat out/conftest.err >&5 |
15537 | echo "$as_me:15537: \$? = $ac_status" >&5 | 15561 | echo "$as_me:15561: \$? = $ac_status" >&5 |
15538 | if (exit $ac_status) && test -s out/conftest2.$ac_objext | 15562 | if (exit $ac_status) && test -s out/conftest2.$ac_objext |
15539 | then | 15563 | then |
15540 | # The compiler can only warn and ignore the option if not recognized | 15564 | # The compiler can only warn and ignore the option if not recognized |
@@ -15582,11 +15606,11 @@ else | |||
15582 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ | 15606 | -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ |
15583 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ | 15607 | -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ |
15584 | -e 's:$: $lt_compiler_flag:'` | 15608 | -e 's:$: $lt_compiler_flag:'` |
15585 | (eval echo "\"\$as_me:15585: $lt_compile\"" >&5) | 15609 | (eval echo "\"\$as_me:15609: $lt_compile\"" >&5) |
15586 | (eval "$lt_compile" 2>out/conftest.err) | 15610 | (eval "$lt_compile" 2>out/conftest.err) |
15587 | ac_status=$? | 15611 | ac_status=$? |
15588 | cat out/conftest.err >&5 | 15612 | cat out/conftest.err >&5 |
15589 | echo "$as_me:15589: \$? = $ac_status" >&5 | 15613 | echo "$as_me:15613: \$? = $ac_status" >&5 |
15590 | if (exit $ac_status) && test -s out/conftest2.$ac_objext | 15614 | if (exit $ac_status) && test -s out/conftest2.$ac_objext |
15591 | then | 15615 | then |
15592 | # The compiler can only warn and ignore the option if not recognized | 15616 | # The compiler can only warn and ignore the option if not recognized |
@@ -16830,8 +16854,8 @@ fi | |||
16830 | 16854 | ||
16831 | test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 16855 | test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
16832 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 16856 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
16833 | as_fn_error $? "no acceptable C compiler found in \$PATH | 16857 | as_fn_error "no acceptable C compiler found in \$PATH |
16834 | See \`config.log' for more details" "$LINENO" 5 ; } | 16858 | See \`config.log' for more details." "$LINENO" 5; } |
16835 | 16859 | ||
16836 | # Provide some information about the compiler. | 16860 | # Provide some information about the compiler. |
16837 | $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 | 16861 | $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 |
@@ -17201,10 +17225,6 @@ fi | |||
17201 | # pkg-config | 17225 | # pkg-config |
17202 | 17226 | ||
17203 | 17227 | ||
17204 | |||
17205 | |||
17206 | |||
17207 | |||
17208 | if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then | 17228 | if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then |
17209 | if test -n "$ac_tool_prefix"; then | 17229 | if test -n "$ac_tool_prefix"; then |
17210 | # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. | 17230 | # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. |
@@ -17317,6 +17337,7 @@ $as_echo "yes" >&6; } | |||
17317 | $as_echo "no" >&6; } | 17337 | $as_echo "no" >&6; } |
17318 | PKG_CONFIG="" | 17338 | PKG_CONFIG="" |
17319 | fi | 17339 | fi |
17340 | |||
17320 | fi | 17341 | fi |
17321 | 17342 | ||
17322 | # Check whether pkg-config supports Requires.private | 17343 | # Check whether pkg-config supports Requires.private |
@@ -17498,10 +17519,11 @@ pkg_failed=no | |||
17498 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVIL" >&5 | 17519 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVIL" >&5 |
17499 | $as_echo_n "checking for EVIL... " >&6; } | 17520 | $as_echo_n "checking for EVIL... " >&6; } |
17500 | 17521 | ||
17501 | if test -n "$EVIL_CFLAGS"; then | 17522 | if test -n "$PKG_CONFIG"; then |
17502 | pkg_cv_EVIL_CFLAGS="$EVIL_CFLAGS" | 17523 | if test -n "$EVIL_CFLAGS"; then |
17503 | elif test -n "$PKG_CONFIG"; then | 17524 | pkg_cv_EVIL_CFLAGS="$EVIL_CFLAGS" |
17504 | if test -n "$PKG_CONFIG" && \ | 17525 | else |
17526 | if test -n "$PKG_CONFIG" && \ | ||
17505 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"evil >= 1.0.0\""; } >&5 | 17527 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"evil >= 1.0.0\""; } >&5 |
17506 | ($PKG_CONFIG --exists --print-errors "evil >= 1.0.0") 2>&5 | 17528 | ($PKG_CONFIG --exists --print-errors "evil >= 1.0.0") 2>&5 |
17507 | ac_status=$? | 17529 | ac_status=$? |
@@ -17511,13 +17533,15 @@ if test -n "$EVIL_CFLAGS"; then | |||
17511 | else | 17533 | else |
17512 | pkg_failed=yes | 17534 | pkg_failed=yes |
17513 | fi | 17535 | fi |
17514 | else | 17536 | fi |
17515 | pkg_failed=untried | 17537 | else |
17538 | pkg_failed=untried | ||
17516 | fi | 17539 | fi |
17517 | if test -n "$EVIL_LIBS"; then | 17540 | if test -n "$PKG_CONFIG"; then |
17518 | pkg_cv_EVIL_LIBS="$EVIL_LIBS" | 17541 | if test -n "$EVIL_LIBS"; then |
17519 | elif test -n "$PKG_CONFIG"; then | 17542 | pkg_cv_EVIL_LIBS="$EVIL_LIBS" |
17520 | if test -n "$PKG_CONFIG" && \ | 17543 | else |
17544 | if test -n "$PKG_CONFIG" && \ | ||
17521 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"evil >= 1.0.0\""; } >&5 | 17545 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"evil >= 1.0.0\""; } >&5 |
17522 | ($PKG_CONFIG --exists --print-errors "evil >= 1.0.0") 2>&5 | 17546 | ($PKG_CONFIG --exists --print-errors "evil >= 1.0.0") 2>&5 |
17523 | ac_status=$? | 17547 | ac_status=$? |
@@ -17527,15 +17551,14 @@ if test -n "$EVIL_LIBS"; then | |||
17527 | else | 17551 | else |
17528 | pkg_failed=yes | 17552 | pkg_failed=yes |
17529 | fi | 17553 | fi |
17530 | else | 17554 | fi |
17531 | pkg_failed=untried | 17555 | else |
17556 | pkg_failed=untried | ||
17532 | fi | 17557 | fi |
17533 | 17558 | ||
17534 | 17559 | ||
17535 | 17560 | ||
17536 | if test $pkg_failed = yes; then | 17561 | if test $pkg_failed = yes; then |
17537 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17538 | $as_echo "no" >&6; } | ||
17539 | 17562 | ||
17540 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 17563 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
17541 | _pkg_short_errors_supported=yes | 17564 | _pkg_short_errors_supported=yes |
@@ -17543,14 +17566,14 @@ else | |||
17543 | _pkg_short_errors_supported=no | 17566 | _pkg_short_errors_supported=no |
17544 | fi | 17567 | fi |
17545 | if test $_pkg_short_errors_supported = yes; then | 17568 | if test $_pkg_short_errors_supported = yes; then |
17546 | EVIL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "evil >= 1.0.0" 2>&1` | 17569 | EVIL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "evil >= 1.0.0"` |
17547 | else | 17570 | else |
17548 | EVIL_PKG_ERRORS=`$PKG_CONFIG --print-errors "evil >= 1.0.0" 2>&1` | 17571 | EVIL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "evil >= 1.0.0"` |
17549 | fi | 17572 | fi |
17550 | # Put the nasty error message in config.log where it belongs | 17573 | # Put the nasty error message in config.log where it belongs |
17551 | echo "$EVIL_PKG_ERRORS" >&5 | 17574 | echo "$EVIL_PKG_ERRORS" >&5 |
17552 | 17575 | ||
17553 | as_fn_error $? "Package requirements (evil >= 1.0.0) were not met: | 17576 | as_fn_error "Package requirements (evil >= 1.0.0) were not met: |
17554 | 17577 | ||
17555 | $EVIL_PKG_ERRORS | 17578 | $EVIL_PKG_ERRORS |
17556 | 17579 | ||
@@ -17559,13 +17582,12 @@ installed software in a non-standard prefix. | |||
17559 | 17582 | ||
17560 | Alternatively, you may set the environment variables EVIL_CFLAGS | 17583 | Alternatively, you may set the environment variables EVIL_CFLAGS |
17561 | and EVIL_LIBS to avoid the need to call pkg-config. | 17584 | and EVIL_LIBS to avoid the need to call pkg-config. |
17562 | See the pkg-config man page for more details." "$LINENO" 5 | 17585 | See the pkg-config man page for more details. |
17586 | " "$LINENO" 5 | ||
17563 | elif test $pkg_failed = untried; then | 17587 | elif test $pkg_failed = untried; then |
17564 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17565 | $as_echo "no" >&6; } | ||
17566 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 17588 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
17567 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 17589 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
17568 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | 17590 | as_fn_error "The pkg-config script could not be found or is too old. Make sure it |
17569 | is in your PATH or set the PKG_CONFIG environment variable to the full | 17591 | is in your PATH or set the PKG_CONFIG environment variable to the full |
17570 | path to pkg-config. | 17592 | path to pkg-config. |
17571 | 17593 | ||
@@ -17574,13 +17596,13 @@ and EVIL_LIBS to avoid the need to call pkg-config. | |||
17574 | See the pkg-config man page for more details. | 17596 | See the pkg-config man page for more details. |
17575 | 17597 | ||
17576 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | 17598 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. |
17577 | See \`config.log' for more details" "$LINENO" 5 ; } | 17599 | See \`config.log' for more details." "$LINENO" 5; } |
17578 | else | 17600 | else |
17579 | EVIL_CFLAGS=$pkg_cv_EVIL_CFLAGS | 17601 | EVIL_CFLAGS=$pkg_cv_EVIL_CFLAGS |
17580 | EVIL_LIBS=$pkg_cv_EVIL_LIBS | 17602 | EVIL_LIBS=$pkg_cv_EVIL_LIBS |
17581 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | 17603 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
17582 | $as_echo "yes" >&6; } | 17604 | $as_echo "yes" >&6; } |
17583 | 17605 | : | |
17584 | fi | 17606 | fi |
17585 | 17607 | ||
17586 | $as_echo "#define HAVE_EVIL 1" >>confdefs.h | 17608 | $as_echo "#define HAVE_EVIL 1" >>confdefs.h |
@@ -17597,10 +17619,11 @@ pkg_failed=no | |||
17597 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EINA" >&5 | 17619 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EINA" >&5 |
17598 | $as_echo_n "checking for EINA... " >&6; } | 17620 | $as_echo_n "checking for EINA... " >&6; } |
17599 | 17621 | ||
17600 | if test -n "$EINA_CFLAGS"; then | 17622 | if test -n "$PKG_CONFIG"; then |
17601 | pkg_cv_EINA_CFLAGS="$EINA_CFLAGS" | 17623 | if test -n "$EINA_CFLAGS"; then |
17602 | elif test -n "$PKG_CONFIG"; then | 17624 | pkg_cv_EINA_CFLAGS="$EINA_CFLAGS" |
17603 | if test -n "$PKG_CONFIG" && \ | 17625 | else |
17626 | if test -n "$PKG_CONFIG" && \ | ||
17604 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eina >= 1.1.0\""; } >&5 | 17627 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eina >= 1.1.0\""; } >&5 |
17605 | ($PKG_CONFIG --exists --print-errors "eina >= 1.1.0") 2>&5 | 17628 | ($PKG_CONFIG --exists --print-errors "eina >= 1.1.0") 2>&5 |
17606 | ac_status=$? | 17629 | ac_status=$? |
@@ -17610,13 +17633,15 @@ if test -n "$EINA_CFLAGS"; then | |||
17610 | else | 17633 | else |
17611 | pkg_failed=yes | 17634 | pkg_failed=yes |
17612 | fi | 17635 | fi |
17613 | else | 17636 | fi |
17614 | pkg_failed=untried | 17637 | else |
17638 | pkg_failed=untried | ||
17615 | fi | 17639 | fi |
17616 | if test -n "$EINA_LIBS"; then | 17640 | if test -n "$PKG_CONFIG"; then |
17617 | pkg_cv_EINA_LIBS="$EINA_LIBS" | 17641 | if test -n "$EINA_LIBS"; then |
17618 | elif test -n "$PKG_CONFIG"; then | 17642 | pkg_cv_EINA_LIBS="$EINA_LIBS" |
17619 | if test -n "$PKG_CONFIG" && \ | 17643 | else |
17644 | if test -n "$PKG_CONFIG" && \ | ||
17620 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eina >= 1.1.0\""; } >&5 | 17645 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eina >= 1.1.0\""; } >&5 |
17621 | ($PKG_CONFIG --exists --print-errors "eina >= 1.1.0") 2>&5 | 17646 | ($PKG_CONFIG --exists --print-errors "eina >= 1.1.0") 2>&5 |
17622 | ac_status=$? | 17647 | ac_status=$? |
@@ -17626,15 +17651,14 @@ if test -n "$EINA_LIBS"; then | |||
17626 | else | 17651 | else |
17627 | pkg_failed=yes | 17652 | pkg_failed=yes |
17628 | fi | 17653 | fi |
17629 | else | 17654 | fi |
17630 | pkg_failed=untried | 17655 | else |
17656 | pkg_failed=untried | ||
17631 | fi | 17657 | fi |
17632 | 17658 | ||
17633 | 17659 | ||
17634 | 17660 | ||
17635 | if test $pkg_failed = yes; then | 17661 | if test $pkg_failed = yes; then |
17636 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17637 | $as_echo "no" >&6; } | ||
17638 | 17662 | ||
17639 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 17663 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
17640 | _pkg_short_errors_supported=yes | 17664 | _pkg_short_errors_supported=yes |
@@ -17642,14 +17666,14 @@ else | |||
17642 | _pkg_short_errors_supported=no | 17666 | _pkg_short_errors_supported=no |
17643 | fi | 17667 | fi |
17644 | if test $_pkg_short_errors_supported = yes; then | 17668 | if test $_pkg_short_errors_supported = yes; then |
17645 | EINA_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eina >= 1.1.0" 2>&1` | 17669 | EINA_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eina >= 1.1.0"` |
17646 | else | 17670 | else |
17647 | EINA_PKG_ERRORS=`$PKG_CONFIG --print-errors "eina >= 1.1.0" 2>&1` | 17671 | EINA_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eina >= 1.1.0"` |
17648 | fi | 17672 | fi |
17649 | # Put the nasty error message in config.log where it belongs | 17673 | # Put the nasty error message in config.log where it belongs |
17650 | echo "$EINA_PKG_ERRORS" >&5 | 17674 | echo "$EINA_PKG_ERRORS" >&5 |
17651 | 17675 | ||
17652 | as_fn_error $? "Package requirements (eina >= 1.1.0) were not met: | 17676 | as_fn_error "Package requirements (eina >= 1.1.0) were not met: |
17653 | 17677 | ||
17654 | $EINA_PKG_ERRORS | 17678 | $EINA_PKG_ERRORS |
17655 | 17679 | ||
@@ -17658,13 +17682,12 @@ installed software in a non-standard prefix. | |||
17658 | 17682 | ||
17659 | Alternatively, you may set the environment variables EINA_CFLAGS | 17683 | Alternatively, you may set the environment variables EINA_CFLAGS |
17660 | and EINA_LIBS to avoid the need to call pkg-config. | 17684 | and EINA_LIBS to avoid the need to call pkg-config. |
17661 | See the pkg-config man page for more details." "$LINENO" 5 | 17685 | See the pkg-config man page for more details. |
17686 | " "$LINENO" 5 | ||
17662 | elif test $pkg_failed = untried; then | 17687 | elif test $pkg_failed = untried; then |
17663 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17664 | $as_echo "no" >&6; } | ||
17665 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 17688 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
17666 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 17689 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
17667 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | 17690 | as_fn_error "The pkg-config script could not be found or is too old. Make sure it |
17668 | is in your PATH or set the PKG_CONFIG environment variable to the full | 17691 | is in your PATH or set the PKG_CONFIG environment variable to the full |
17669 | path to pkg-config. | 17692 | path to pkg-config. |
17670 | 17693 | ||
@@ -17673,13 +17696,13 @@ and EINA_LIBS to avoid the need to call pkg-config. | |||
17673 | See the pkg-config man page for more details. | 17696 | See the pkg-config man page for more details. |
17674 | 17697 | ||
17675 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | 17698 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. |
17676 | See \`config.log' for more details" "$LINENO" 5 ; } | 17699 | See \`config.log' for more details." "$LINENO" 5; } |
17677 | else | 17700 | else |
17678 | EINA_CFLAGS=$pkg_cv_EINA_CFLAGS | 17701 | EINA_CFLAGS=$pkg_cv_EINA_CFLAGS |
17679 | EINA_LIBS=$pkg_cv_EINA_LIBS | 17702 | EINA_LIBS=$pkg_cv_EINA_LIBS |
17680 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | 17703 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
17681 | $as_echo "yes" >&6; } | 17704 | $as_echo "yes" >&6; } |
17682 | 17705 | : | |
17683 | fi | 17706 | fi |
17684 | CPPFLAGS_SAVE="$CPPFLAGS" | 17707 | CPPFLAGS_SAVE="$CPPFLAGS" |
17685 | CPPFLAGS="$CPPFLAGS $EINA_CFLAGS" | 17708 | CPPFLAGS="$CPPFLAGS $EINA_CFLAGS" |
@@ -17699,8 +17722,9 @@ else | |||
17699 | if test "$ac_cv_type_Eina_Unicode" = yes; then | 17722 | if test "$ac_cv_type_Eina_Unicode" = yes; then |
17700 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 17723 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
17701 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 17724 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
17702 | as_fn_error 77 "cannot compute sizeof (Eina_Unicode) | 17725 | { as_fn_set_status 77 |
17703 | See \`config.log' for more details" "$LINENO" 5 ; } | 17726 | as_fn_error "cannot compute sizeof (Eina_Unicode) |
17727 | See \`config.log' for more details." "$LINENO" 5; }; } | ||
17704 | else | 17728 | else |
17705 | ac_cv_sizeof_Eina_Unicode=0 | 17729 | ac_cv_sizeof_Eina_Unicode=0 |
17706 | fi | 17730 | fi |
@@ -17725,10 +17749,11 @@ pkg_failed=no | |||
17725 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FREETYPE" >&5 | 17749 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FREETYPE" >&5 |
17726 | $as_echo_n "checking for FREETYPE... " >&6; } | 17750 | $as_echo_n "checking for FREETYPE... " >&6; } |
17727 | 17751 | ||
17728 | if test -n "$FREETYPE_CFLAGS"; then | 17752 | if test -n "$PKG_CONFIG"; then |
17729 | pkg_cv_FREETYPE_CFLAGS="$FREETYPE_CFLAGS" | 17753 | if test -n "$FREETYPE_CFLAGS"; then |
17730 | elif test -n "$PKG_CONFIG"; then | 17754 | pkg_cv_FREETYPE_CFLAGS="$FREETYPE_CFLAGS" |
17731 | if test -n "$PKG_CONFIG" && \ | 17755 | else |
17756 | if test -n "$PKG_CONFIG" && \ | ||
17732 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 9.3.0\""; } >&5 | 17757 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 9.3.0\""; } >&5 |
17733 | ($PKG_CONFIG --exists --print-errors "freetype2 >= 9.3.0") 2>&5 | 17758 | ($PKG_CONFIG --exists --print-errors "freetype2 >= 9.3.0") 2>&5 |
17734 | ac_status=$? | 17759 | ac_status=$? |
@@ -17738,13 +17763,15 @@ if test -n "$FREETYPE_CFLAGS"; then | |||
17738 | else | 17763 | else |
17739 | pkg_failed=yes | 17764 | pkg_failed=yes |
17740 | fi | 17765 | fi |
17741 | else | 17766 | fi |
17742 | pkg_failed=untried | 17767 | else |
17768 | pkg_failed=untried | ||
17743 | fi | 17769 | fi |
17744 | if test -n "$FREETYPE_LIBS"; then | 17770 | if test -n "$PKG_CONFIG"; then |
17745 | pkg_cv_FREETYPE_LIBS="$FREETYPE_LIBS" | 17771 | if test -n "$FREETYPE_LIBS"; then |
17746 | elif test -n "$PKG_CONFIG"; then | 17772 | pkg_cv_FREETYPE_LIBS="$FREETYPE_LIBS" |
17747 | if test -n "$PKG_CONFIG" && \ | 17773 | else |
17774 | if test -n "$PKG_CONFIG" && \ | ||
17748 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 9.3.0\""; } >&5 | 17775 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"freetype2 >= 9.3.0\""; } >&5 |
17749 | ($PKG_CONFIG --exists --print-errors "freetype2 >= 9.3.0") 2>&5 | 17776 | ($PKG_CONFIG --exists --print-errors "freetype2 >= 9.3.0") 2>&5 |
17750 | ac_status=$? | 17777 | ac_status=$? |
@@ -17754,15 +17781,14 @@ if test -n "$FREETYPE_LIBS"; then | |||
17754 | else | 17781 | else |
17755 | pkg_failed=yes | 17782 | pkg_failed=yes |
17756 | fi | 17783 | fi |
17757 | else | 17784 | fi |
17758 | pkg_failed=untried | 17785 | else |
17786 | pkg_failed=untried | ||
17759 | fi | 17787 | fi |
17760 | 17788 | ||
17761 | 17789 | ||
17762 | 17790 | ||
17763 | if test $pkg_failed = yes; then | 17791 | if test $pkg_failed = yes; then |
17764 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17765 | $as_echo "no" >&6; } | ||
17766 | 17792 | ||
17767 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 17793 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
17768 | _pkg_short_errors_supported=yes | 17794 | _pkg_short_errors_supported=yes |
@@ -17770,14 +17796,14 @@ else | |||
17770 | _pkg_short_errors_supported=no | 17796 | _pkg_short_errors_supported=no |
17771 | fi | 17797 | fi |
17772 | if test $_pkg_short_errors_supported = yes; then | 17798 | if test $_pkg_short_errors_supported = yes; then |
17773 | FREETYPE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "freetype2 >= 9.3.0" 2>&1` | 17799 | FREETYPE_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "freetype2 >= 9.3.0"` |
17774 | else | 17800 | else |
17775 | FREETYPE_PKG_ERRORS=`$PKG_CONFIG --print-errors "freetype2 >= 9.3.0" 2>&1` | 17801 | FREETYPE_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "freetype2 >= 9.3.0"` |
17776 | fi | 17802 | fi |
17777 | # Put the nasty error message in config.log where it belongs | 17803 | # Put the nasty error message in config.log where it belongs |
17778 | echo "$FREETYPE_PKG_ERRORS" >&5 | 17804 | echo "$FREETYPE_PKG_ERRORS" >&5 |
17779 | 17805 | ||
17780 | as_fn_error $? "Package requirements (freetype2 >= 9.3.0) were not met: | 17806 | as_fn_error "Package requirements (freetype2 >= 9.3.0) were not met: |
17781 | 17807 | ||
17782 | $FREETYPE_PKG_ERRORS | 17808 | $FREETYPE_PKG_ERRORS |
17783 | 17809 | ||
@@ -17786,13 +17812,12 @@ installed software in a non-standard prefix. | |||
17786 | 17812 | ||
17787 | Alternatively, you may set the environment variables FREETYPE_CFLAGS | 17813 | Alternatively, you may set the environment variables FREETYPE_CFLAGS |
17788 | and FREETYPE_LIBS to avoid the need to call pkg-config. | 17814 | and FREETYPE_LIBS to avoid the need to call pkg-config. |
17789 | See the pkg-config man page for more details." "$LINENO" 5 | 17815 | See the pkg-config man page for more details. |
17816 | " "$LINENO" 5 | ||
17790 | elif test $pkg_failed = untried; then | 17817 | elif test $pkg_failed = untried; then |
17791 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17792 | $as_echo "no" >&6; } | ||
17793 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 17818 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
17794 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 17819 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
17795 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | 17820 | as_fn_error "The pkg-config script could not be found or is too old. Make sure it |
17796 | is in your PATH or set the PKG_CONFIG environment variable to the full | 17821 | is in your PATH or set the PKG_CONFIG environment variable to the full |
17797 | path to pkg-config. | 17822 | path to pkg-config. |
17798 | 17823 | ||
@@ -17801,13 +17826,13 @@ and FREETYPE_LIBS to avoid the need to call pkg-config. | |||
17801 | See the pkg-config man page for more details. | 17826 | See the pkg-config man page for more details. |
17802 | 17827 | ||
17803 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | 17828 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. |
17804 | See \`config.log' for more details" "$LINENO" 5 ; } | 17829 | See \`config.log' for more details." "$LINENO" 5; } |
17805 | else | 17830 | else |
17806 | FREETYPE_CFLAGS=$pkg_cv_FREETYPE_CFLAGS | 17831 | FREETYPE_CFLAGS=$pkg_cv_FREETYPE_CFLAGS |
17807 | FREETYPE_LIBS=$pkg_cv_FREETYPE_LIBS | 17832 | FREETYPE_LIBS=$pkg_cv_FREETYPE_LIBS |
17808 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | 17833 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
17809 | $as_echo "yes" >&6; } | 17834 | $as_echo "yes" >&6; } |
17810 | 17835 | : | |
17811 | fi | 17836 | fi |
17812 | 17837 | ||
17813 | requirement_evas="freetype2 eina >= 1.1.0 ${requirement_evas}" | 17838 | requirement_evas="freetype2 eina >= 1.1.0 ${requirement_evas}" |
@@ -17835,10 +17860,11 @@ pkg_failed=no | |||
17835 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FONTCONFIG" >&5 | 17860 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FONTCONFIG" >&5 |
17836 | $as_echo_n "checking for FONTCONFIG... " >&6; } | 17861 | $as_echo_n "checking for FONTCONFIG... " >&6; } |
17837 | 17862 | ||
17838 | if test -n "$FONTCONFIG_CFLAGS"; then | 17863 | if test -n "$PKG_CONFIG"; then |
17839 | pkg_cv_FONTCONFIG_CFLAGS="$FONTCONFIG_CFLAGS" | 17864 | if test -n "$FONTCONFIG_CFLAGS"; then |
17840 | elif test -n "$PKG_CONFIG"; then | 17865 | pkg_cv_FONTCONFIG_CFLAGS="$FONTCONFIG_CFLAGS" |
17841 | if test -n "$PKG_CONFIG" && \ | 17866 | else |
17867 | if test -n "$PKG_CONFIG" && \ | ||
17842 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig >= 2.5.0\""; } >&5 | 17868 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig >= 2.5.0\""; } >&5 |
17843 | ($PKG_CONFIG --exists --print-errors "fontconfig >= 2.5.0") 2>&5 | 17869 | ($PKG_CONFIG --exists --print-errors "fontconfig >= 2.5.0") 2>&5 |
17844 | ac_status=$? | 17870 | ac_status=$? |
@@ -17848,13 +17874,15 @@ if test -n "$FONTCONFIG_CFLAGS"; then | |||
17848 | else | 17874 | else |
17849 | pkg_failed=yes | 17875 | pkg_failed=yes |
17850 | fi | 17876 | fi |
17851 | else | 17877 | fi |
17852 | pkg_failed=untried | 17878 | else |
17879 | pkg_failed=untried | ||
17853 | fi | 17880 | fi |
17854 | if test -n "$FONTCONFIG_LIBS"; then | 17881 | if test -n "$PKG_CONFIG"; then |
17855 | pkg_cv_FONTCONFIG_LIBS="$FONTCONFIG_LIBS" | 17882 | if test -n "$FONTCONFIG_LIBS"; then |
17856 | elif test -n "$PKG_CONFIG"; then | 17883 | pkg_cv_FONTCONFIG_LIBS="$FONTCONFIG_LIBS" |
17857 | if test -n "$PKG_CONFIG" && \ | 17884 | else |
17885 | if test -n "$PKG_CONFIG" && \ | ||
17858 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig >= 2.5.0\""; } >&5 | 17886 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fontconfig >= 2.5.0\""; } >&5 |
17859 | ($PKG_CONFIG --exists --print-errors "fontconfig >= 2.5.0") 2>&5 | 17887 | ($PKG_CONFIG --exists --print-errors "fontconfig >= 2.5.0") 2>&5 |
17860 | ac_status=$? | 17888 | ac_status=$? |
@@ -17864,15 +17892,14 @@ if test -n "$FONTCONFIG_LIBS"; then | |||
17864 | else | 17892 | else |
17865 | pkg_failed=yes | 17893 | pkg_failed=yes |
17866 | fi | 17894 | fi |
17867 | else | 17895 | fi |
17868 | pkg_failed=untried | 17896 | else |
17897 | pkg_failed=untried | ||
17869 | fi | 17898 | fi |
17870 | 17899 | ||
17871 | 17900 | ||
17872 | 17901 | ||
17873 | if test $pkg_failed = yes; then | 17902 | if test $pkg_failed = yes; then |
17874 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17875 | $as_echo "no" >&6; } | ||
17876 | 17903 | ||
17877 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 17904 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
17878 | _pkg_short_errors_supported=yes | 17905 | _pkg_short_errors_supported=yes |
@@ -17880,24 +17907,24 @@ else | |||
17880 | _pkg_short_errors_supported=no | 17907 | _pkg_short_errors_supported=no |
17881 | fi | 17908 | fi |
17882 | if test $_pkg_short_errors_supported = yes; then | 17909 | if test $_pkg_short_errors_supported = yes; then |
17883 | FONTCONFIG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "fontconfig >= 2.5.0" 2>&1` | 17910 | FONTCONFIG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "fontconfig >= 2.5.0"` |
17884 | else | 17911 | else |
17885 | FONTCONFIG_PKG_ERRORS=`$PKG_CONFIG --print-errors "fontconfig >= 2.5.0" 2>&1` | 17912 | FONTCONFIG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "fontconfig >= 2.5.0"` |
17886 | fi | 17913 | fi |
17887 | # Put the nasty error message in config.log where it belongs | 17914 | # Put the nasty error message in config.log where it belongs |
17888 | echo "$FONTCONFIG_PKG_ERRORS" >&5 | 17915 | echo "$FONTCONFIG_PKG_ERRORS" >&5 |
17889 | 17916 | ||
17917 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17918 | $as_echo "no" >&6; } | ||
17890 | 17919 | ||
17891 | if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 17920 | if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
17892 | as_fn_error $? "Fontconfig not found (strict dependencies checking)" "$LINENO" 5 | 17921 | as_fn_error "Fontconfig not found (strict dependencies checking)" "$LINENO" 5 |
17893 | fi | 17922 | fi |
17894 | 17923 | ||
17895 | elif test $pkg_failed = untried; then | 17924 | elif test $pkg_failed = untried; then |
17896 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
17897 | $as_echo "no" >&6; } | ||
17898 | 17925 | ||
17899 | if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 17926 | if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
17900 | as_fn_error $? "Fontconfig not found (strict dependencies checking)" "$LINENO" 5 | 17927 | as_fn_error "Fontconfig not found (strict dependencies checking)" "$LINENO" 5 |
17901 | fi | 17928 | fi |
17902 | 17929 | ||
17903 | else | 17930 | else |
@@ -17972,10 +17999,11 @@ pkg_failed=no | |||
17972 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FRIBIDI" >&5 | 17999 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for FRIBIDI" >&5 |
17973 | $as_echo_n "checking for FRIBIDI... " >&6; } | 18000 | $as_echo_n "checking for FRIBIDI... " >&6; } |
17974 | 18001 | ||
17975 | if test -n "$FRIBIDI_CFLAGS"; then | 18002 | if test -n "$PKG_CONFIG"; then |
17976 | pkg_cv_FRIBIDI_CFLAGS="$FRIBIDI_CFLAGS" | 18003 | if test -n "$FRIBIDI_CFLAGS"; then |
17977 | elif test -n "$PKG_CONFIG"; then | 18004 | pkg_cv_FRIBIDI_CFLAGS="$FRIBIDI_CFLAGS" |
17978 | if test -n "$PKG_CONFIG" && \ | 18005 | else |
18006 | if test -n "$PKG_CONFIG" && \ | ||
17979 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fribidi >= 0.19.2\""; } >&5 | 18007 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fribidi >= 0.19.2\""; } >&5 |
17980 | ($PKG_CONFIG --exists --print-errors "fribidi >= 0.19.2") 2>&5 | 18008 | ($PKG_CONFIG --exists --print-errors "fribidi >= 0.19.2") 2>&5 |
17981 | ac_status=$? | 18009 | ac_status=$? |
@@ -17985,13 +18013,15 @@ if test -n "$FRIBIDI_CFLAGS"; then | |||
17985 | else | 18013 | else |
17986 | pkg_failed=yes | 18014 | pkg_failed=yes |
17987 | fi | 18015 | fi |
17988 | else | 18016 | fi |
17989 | pkg_failed=untried | 18017 | else |
18018 | pkg_failed=untried | ||
17990 | fi | 18019 | fi |
17991 | if test -n "$FRIBIDI_LIBS"; then | 18020 | if test -n "$PKG_CONFIG"; then |
17992 | pkg_cv_FRIBIDI_LIBS="$FRIBIDI_LIBS" | 18021 | if test -n "$FRIBIDI_LIBS"; then |
17993 | elif test -n "$PKG_CONFIG"; then | 18022 | pkg_cv_FRIBIDI_LIBS="$FRIBIDI_LIBS" |
17994 | if test -n "$PKG_CONFIG" && \ | 18023 | else |
18024 | if test -n "$PKG_CONFIG" && \ | ||
17995 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fribidi >= 0.19.2\""; } >&5 | 18025 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fribidi >= 0.19.2\""; } >&5 |
17996 | ($PKG_CONFIG --exists --print-errors "fribidi >= 0.19.2") 2>&5 | 18026 | ($PKG_CONFIG --exists --print-errors "fribidi >= 0.19.2") 2>&5 |
17997 | ac_status=$? | 18027 | ac_status=$? |
@@ -18001,15 +18031,14 @@ if test -n "$FRIBIDI_LIBS"; then | |||
18001 | else | 18031 | else |
18002 | pkg_failed=yes | 18032 | pkg_failed=yes |
18003 | fi | 18033 | fi |
18004 | else | 18034 | fi |
18005 | pkg_failed=untried | 18035 | else |
18036 | pkg_failed=untried | ||
18006 | fi | 18037 | fi |
18007 | 18038 | ||
18008 | 18039 | ||
18009 | 18040 | ||
18010 | if test $pkg_failed = yes; then | 18041 | if test $pkg_failed = yes; then |
18011 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18012 | $as_echo "no" >&6; } | ||
18013 | 18042 | ||
18014 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 18043 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
18015 | _pkg_short_errors_supported=yes | 18044 | _pkg_short_errors_supported=yes |
@@ -18017,24 +18046,24 @@ else | |||
18017 | _pkg_short_errors_supported=no | 18046 | _pkg_short_errors_supported=no |
18018 | fi | 18047 | fi |
18019 | if test $_pkg_short_errors_supported = yes; then | 18048 | if test $_pkg_short_errors_supported = yes; then |
18020 | FRIBIDI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "fribidi >= 0.19.2" 2>&1` | 18049 | FRIBIDI_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "fribidi >= 0.19.2"` |
18021 | else | 18050 | else |
18022 | FRIBIDI_PKG_ERRORS=`$PKG_CONFIG --print-errors "fribidi >= 0.19.2" 2>&1` | 18051 | FRIBIDI_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "fribidi >= 0.19.2"` |
18023 | fi | 18052 | fi |
18024 | # Put the nasty error message in config.log where it belongs | 18053 | # Put the nasty error message in config.log where it belongs |
18025 | echo "$FRIBIDI_PKG_ERRORS" >&5 | 18054 | echo "$FRIBIDI_PKG_ERRORS" >&5 |
18026 | 18055 | ||
18056 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18057 | $as_echo "no" >&6; } | ||
18027 | 18058 | ||
18028 | if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then | 18059 | if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then |
18029 | as_fn_error $? "Fribidi not found (strict dependencies checking)" "$LINENO" 5 | 18060 | as_fn_error "Fribidi not found (strict dependencies checking)" "$LINENO" 5 |
18030 | fi | 18061 | fi |
18031 | 18062 | ||
18032 | elif test $pkg_failed = untried; then | 18063 | elif test $pkg_failed = untried; then |
18033 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18034 | $as_echo "no" >&6; } | ||
18035 | 18064 | ||
18036 | if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then | 18065 | if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then |
18037 | as_fn_error $? "Fribidi not found (strict dependencies checking)" "$LINENO" 5 | 18066 | as_fn_error "Fribidi not found (strict dependencies checking)" "$LINENO" 5 |
18038 | fi | 18067 | fi |
18039 | 18068 | ||
18040 | else | 18069 | else |
@@ -18066,8 +18095,9 @@ else | |||
18066 | if test "$ac_cv_type_FriBidiChar" = yes; then | 18095 | if test "$ac_cv_type_FriBidiChar" = yes; then |
18067 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 18096 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
18068 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 18097 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
18069 | as_fn_error 77 "cannot compute sizeof (FriBidiChar) | 18098 | { as_fn_set_status 77 |
18070 | See \`config.log' for more details" "$LINENO" 5 ; } | 18099 | as_fn_error "cannot compute sizeof (FriBidiChar) |
18100 | See \`config.log' for more details." "$LINENO" 5; }; } | ||
18071 | else | 18101 | else |
18072 | ac_cv_sizeof_FriBidiChar=0 | 18102 | ac_cv_sizeof_FriBidiChar=0 |
18073 | fi | 18103 | fi |
@@ -18114,10 +18144,11 @@ pkg_failed=no | |||
18114 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for HARFBUZZ" >&5 | 18144 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for HARFBUZZ" >&5 |
18115 | $as_echo_n "checking for HARFBUZZ... " >&6; } | 18145 | $as_echo_n "checking for HARFBUZZ... " >&6; } |
18116 | 18146 | ||
18117 | if test -n "$HARFBUZZ_CFLAGS"; then | 18147 | if test -n "$PKG_CONFIG"; then |
18118 | pkg_cv_HARFBUZZ_CFLAGS="$HARFBUZZ_CFLAGS" | 18148 | if test -n "$HARFBUZZ_CFLAGS"; then |
18119 | elif test -n "$PKG_CONFIG"; then | 18149 | pkg_cv_HARFBUZZ_CFLAGS="$HARFBUZZ_CFLAGS" |
18120 | if test -n "$PKG_CONFIG" && \ | 18150 | else |
18151 | if test -n "$PKG_CONFIG" && \ | ||
18121 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"harfbuzz >= 0.6.0\""; } >&5 | 18152 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"harfbuzz >= 0.6.0\""; } >&5 |
18122 | ($PKG_CONFIG --exists --print-errors "harfbuzz >= 0.6.0") 2>&5 | 18153 | ($PKG_CONFIG --exists --print-errors "harfbuzz >= 0.6.0") 2>&5 |
18123 | ac_status=$? | 18154 | ac_status=$? |
@@ -18127,13 +18158,15 @@ if test -n "$HARFBUZZ_CFLAGS"; then | |||
18127 | else | 18158 | else |
18128 | pkg_failed=yes | 18159 | pkg_failed=yes |
18129 | fi | 18160 | fi |
18130 | else | 18161 | fi |
18131 | pkg_failed=untried | 18162 | else |
18163 | pkg_failed=untried | ||
18132 | fi | 18164 | fi |
18133 | if test -n "$HARFBUZZ_LIBS"; then | 18165 | if test -n "$PKG_CONFIG"; then |
18134 | pkg_cv_HARFBUZZ_LIBS="$HARFBUZZ_LIBS" | 18166 | if test -n "$HARFBUZZ_LIBS"; then |
18135 | elif test -n "$PKG_CONFIG"; then | 18167 | pkg_cv_HARFBUZZ_LIBS="$HARFBUZZ_LIBS" |
18136 | if test -n "$PKG_CONFIG" && \ | 18168 | else |
18169 | if test -n "$PKG_CONFIG" && \ | ||
18137 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"harfbuzz >= 0.6.0\""; } >&5 | 18170 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"harfbuzz >= 0.6.0\""; } >&5 |
18138 | ($PKG_CONFIG --exists --print-errors "harfbuzz >= 0.6.0") 2>&5 | 18171 | ($PKG_CONFIG --exists --print-errors "harfbuzz >= 0.6.0") 2>&5 |
18139 | ac_status=$? | 18172 | ac_status=$? |
@@ -18143,15 +18176,14 @@ if test -n "$HARFBUZZ_LIBS"; then | |||
18143 | else | 18176 | else |
18144 | pkg_failed=yes | 18177 | pkg_failed=yes |
18145 | fi | 18178 | fi |
18146 | else | 18179 | fi |
18147 | pkg_failed=untried | 18180 | else |
18181 | pkg_failed=untried | ||
18148 | fi | 18182 | fi |
18149 | 18183 | ||
18150 | 18184 | ||
18151 | 18185 | ||
18152 | if test $pkg_failed = yes; then | 18186 | if test $pkg_failed = yes; then |
18153 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18154 | $as_echo "no" >&6; } | ||
18155 | 18187 | ||
18156 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 18188 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
18157 | _pkg_short_errors_supported=yes | 18189 | _pkg_short_errors_supported=yes |
@@ -18159,24 +18191,24 @@ else | |||
18159 | _pkg_short_errors_supported=no | 18191 | _pkg_short_errors_supported=no |
18160 | fi | 18192 | fi |
18161 | if test $_pkg_short_errors_supported = yes; then | 18193 | if test $_pkg_short_errors_supported = yes; then |
18162 | HARFBUZZ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "harfbuzz >= 0.6.0" 2>&1` | 18194 | HARFBUZZ_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "harfbuzz >= 0.6.0"` |
18163 | else | 18195 | else |
18164 | HARFBUZZ_PKG_ERRORS=`$PKG_CONFIG --print-errors "harfbuzz >= 0.6.0" 2>&1` | 18196 | HARFBUZZ_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "harfbuzz >= 0.6.0"` |
18165 | fi | 18197 | fi |
18166 | # Put the nasty error message in config.log where it belongs | 18198 | # Put the nasty error message in config.log where it belongs |
18167 | echo "$HARFBUZZ_PKG_ERRORS" >&5 | 18199 | echo "$HARFBUZZ_PKG_ERRORS" >&5 |
18168 | 18200 | ||
18201 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18202 | $as_echo "no" >&6; } | ||
18169 | 18203 | ||
18170 | if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then | 18204 | if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then |
18171 | as_fn_error $? "Harfbuzz not found (strict dependencies checking)" "$LINENO" 5 | 18205 | as_fn_error "Harfbuzz not found (strict dependencies checking)" "$LINENO" 5 |
18172 | fi | 18206 | fi |
18173 | 18207 | ||
18174 | elif test $pkg_failed = untried; then | 18208 | elif test $pkg_failed = untried; then |
18175 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18176 | $as_echo "no" >&6; } | ||
18177 | 18209 | ||
18178 | if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then | 18210 | if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then |
18179 | as_fn_error $? "Harfbuzz not found (strict dependencies checking)" "$LINENO" 5 | 18211 | as_fn_error "Harfbuzz not found (strict dependencies checking)" "$LINENO" 5 |
18180 | fi | 18212 | fi |
18181 | 18213 | ||
18182 | else | 18214 | else |
@@ -18207,7 +18239,7 @@ $as_echo "#define HAVE_HARFBUZZ 1" >>confdefs.h | |||
18207 | else | 18239 | else |
18208 | 18240 | ||
18209 | if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then | 18241 | if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then |
18210 | as_fn_error $? "Harfbuzz-ft not found (strict dependencies checking)" "$LINENO" 5 | 18242 | as_fn_error "Harfbuzz-ft not found (strict dependencies checking)" "$LINENO" 5 |
18211 | fi | 18243 | fi |
18212 | have_harfbuzz="no" | 18244 | have_harfbuzz="no" |
18213 | 18245 | ||
@@ -18243,10 +18275,11 @@ pkg_failed=no | |||
18243 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PIXMAN" >&5 | 18275 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PIXMAN" >&5 |
18244 | $as_echo_n "checking for PIXMAN... " >&6; } | 18276 | $as_echo_n "checking for PIXMAN... " >&6; } |
18245 | 18277 | ||
18246 | if test -n "$PIXMAN_CFLAGS"; then | 18278 | if test -n "$PKG_CONFIG"; then |
18247 | pkg_cv_PIXMAN_CFLAGS="$PIXMAN_CFLAGS" | 18279 | if test -n "$PIXMAN_CFLAGS"; then |
18248 | elif test -n "$PKG_CONFIG"; then | 18280 | pkg_cv_PIXMAN_CFLAGS="$PIXMAN_CFLAGS" |
18249 | if test -n "$PKG_CONFIG" && \ | 18281 | else |
18282 | if test -n "$PKG_CONFIG" && \ | ||
18250 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1\""; } >&5 | 18283 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1\""; } >&5 |
18251 | ($PKG_CONFIG --exists --print-errors "pixman-1") 2>&5 | 18284 | ($PKG_CONFIG --exists --print-errors "pixman-1") 2>&5 |
18252 | ac_status=$? | 18285 | ac_status=$? |
@@ -18256,13 +18289,15 @@ if test -n "$PIXMAN_CFLAGS"; then | |||
18256 | else | 18289 | else |
18257 | pkg_failed=yes | 18290 | pkg_failed=yes |
18258 | fi | 18291 | fi |
18259 | else | 18292 | fi |
18260 | pkg_failed=untried | 18293 | else |
18294 | pkg_failed=untried | ||
18261 | fi | 18295 | fi |
18262 | if test -n "$PIXMAN_LIBS"; then | 18296 | if test -n "$PKG_CONFIG"; then |
18263 | pkg_cv_PIXMAN_LIBS="$PIXMAN_LIBS" | 18297 | if test -n "$PIXMAN_LIBS"; then |
18264 | elif test -n "$PKG_CONFIG"; then | 18298 | pkg_cv_PIXMAN_LIBS="$PIXMAN_LIBS" |
18265 | if test -n "$PKG_CONFIG" && \ | 18299 | else |
18300 | if test -n "$PKG_CONFIG" && \ | ||
18266 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1\""; } >&5 | 18301 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"pixman-1\""; } >&5 |
18267 | ($PKG_CONFIG --exists --print-errors "pixman-1") 2>&5 | 18302 | ($PKG_CONFIG --exists --print-errors "pixman-1") 2>&5 |
18268 | ac_status=$? | 18303 | ac_status=$? |
@@ -18272,15 +18307,14 @@ if test -n "$PIXMAN_LIBS"; then | |||
18272 | else | 18307 | else |
18273 | pkg_failed=yes | 18308 | pkg_failed=yes |
18274 | fi | 18309 | fi |
18275 | else | 18310 | fi |
18276 | pkg_failed=untried | 18311 | else |
18312 | pkg_failed=untried | ||
18277 | fi | 18313 | fi |
18278 | 18314 | ||
18279 | 18315 | ||
18280 | 18316 | ||
18281 | if test $pkg_failed = yes; then | 18317 | if test $pkg_failed = yes; then |
18282 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18283 | $as_echo "no" >&6; } | ||
18284 | 18318 | ||
18285 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 18319 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
18286 | _pkg_short_errors_supported=yes | 18320 | _pkg_short_errors_supported=yes |
@@ -18288,24 +18322,24 @@ else | |||
18288 | _pkg_short_errors_supported=no | 18322 | _pkg_short_errors_supported=no |
18289 | fi | 18323 | fi |
18290 | if test $_pkg_short_errors_supported = yes; then | 18324 | if test $_pkg_short_errors_supported = yes; then |
18291 | PIXMAN_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "pixman-1" 2>&1` | 18325 | PIXMAN_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "pixman-1"` |
18292 | else | 18326 | else |
18293 | PIXMAN_PKG_ERRORS=`$PKG_CONFIG --print-errors "pixman-1" 2>&1` | 18327 | PIXMAN_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "pixman-1"` |
18294 | fi | 18328 | fi |
18295 | # Put the nasty error message in config.log where it belongs | 18329 | # Put the nasty error message in config.log where it belongs |
18296 | echo "$PIXMAN_PKG_ERRORS" >&5 | 18330 | echo "$PIXMAN_PKG_ERRORS" >&5 |
18297 | 18331 | ||
18332 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18333 | $as_echo "no" >&6; } | ||
18298 | 18334 | ||
18299 | if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 18335 | if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
18300 | as_fn_error $? "Pixman not found (strict dependencies checking)" "$LINENO" 5 | 18336 | as_fn_error "Pixman not found (strict dependencies checking)" "$LINENO" 5 |
18301 | fi | 18337 | fi |
18302 | 18338 | ||
18303 | elif test $pkg_failed = untried; then | 18339 | elif test $pkg_failed = untried; then |
18304 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
18305 | $as_echo "no" >&6; } | ||
18306 | 18340 | ||
18307 | if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 18341 | if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
18308 | as_fn_error $? "Pixman not found (strict dependencies checking)" "$LINENO" 5 | 18342 | as_fn_error "Pixman not found (strict dependencies checking)" "$LINENO" 5 |
18309 | fi | 18343 | fi |
18310 | 18344 | ||
18311 | else | 18345 | else |
@@ -18323,6 +18357,97 @@ $as_echo "#define HAVE_PIXMAN 1" >>confdefs.h | |||
18323 | fi | 18357 | fi |
18324 | fi | 18358 | fi |
18325 | 18359 | ||
18360 | have_pixman_font="no" | ||
18361 | # Check whether --enable-pixman-font was given. | ||
18362 | if test "${enable_pixman_font+set}" = set; then : | ||
18363 | enableval=$enable_pixman_font; | ||
18364 | have_pixman_font="yes" | ||
18365 | |||
18366 | $as_echo "#define PIXMAN_FONT 1" >>confdefs.h | ||
18367 | |||
18368 | |||
18369 | |||
18370 | fi | ||
18371 | |||
18372 | |||
18373 | have_pixman_rect="no" | ||
18374 | # Check whether --enable-pixman-rect was given. | ||
18375 | if test "${enable_pixman_rect+set}" = set; then : | ||
18376 | enableval=$enable_pixman_rect; | ||
18377 | have_pixman_rect="yes" | ||
18378 | |||
18379 | $as_echo "#define PIXMAN_RECT 1" >>confdefs.h | ||
18380 | |||
18381 | |||
18382 | |||
18383 | fi | ||
18384 | |||
18385 | |||
18386 | have_pixman_line="no" | ||
18387 | # Check whether --enable-pixman-line was given. | ||
18388 | if test "${enable_pixman_line+set}" = set; then : | ||
18389 | enableval=$enable_pixman_line; | ||
18390 | have_pixman_line="yes" | ||
18391 | |||
18392 | $as_echo "#define PIXMAN_LINE 1" >>confdefs.h | ||
18393 | |||
18394 | |||
18395 | |||
18396 | fi | ||
18397 | |||
18398 | |||
18399 | have_pixman_poly="no" | ||
18400 | # Check whether --enable-pixman-poly was given. | ||
18401 | if test "${enable_pixman_poly+set}" = set; then : | ||
18402 | enableval=$enable_pixman_poly; | ||
18403 | have_pixman_poly="yes" | ||
18404 | |||
18405 | $as_echo "#define PIXMAN_POLY 1" >>confdefs.h | ||
18406 | |||
18407 | |||
18408 | |||
18409 | fi | ||
18410 | |||
18411 | |||
18412 | have_pixman_image="no" | ||
18413 | # Check whether --enable-pixman-image was given. | ||
18414 | if test "${enable_pixman_image+set}" = set; then : | ||
18415 | enableval=$enable_pixman_image; | ||
18416 | have_pixman_image="yes" | ||
18417 | |||
18418 | $as_echo "#define PIXMAN_IMAGE 1" >>confdefs.h | ||
18419 | |||
18420 | |||
18421 | |||
18422 | fi | ||
18423 | |||
18424 | |||
18425 | have_pixman_image_scale_sample="no" | ||
18426 | # Check whether --enable-pixman-image-scale-sample was given. | ||
18427 | if test "${enable_pixman_image_scale_sample+set}" = set; then : | ||
18428 | enableval=$enable_pixman_image_scale_sample; | ||
18429 | have_pixman_image_scale_sample="yes" | ||
18430 | |||
18431 | $as_echo "#define PIXMAN_IMAGE_SCALE_SAMPLE 1" >>confdefs.h | ||
18432 | |||
18433 | |||
18434 | |||
18435 | fi | ||
18436 | |||
18437 | |||
18438 | have_tile_rotate="no" | ||
18439 | # Check whether --enable-tile-rotate was given. | ||
18440 | if test "${enable_tile_rotate+set}" = set; then : | ||
18441 | enableval=$enable_tile_rotate; | ||
18442 | have_tile_rotate="yes" | ||
18443 | |||
18444 | $as_echo "#define TILE_ROTATE 1" >>confdefs.h | ||
18445 | |||
18446 | |||
18447 | |||
18448 | fi | ||
18449 | |||
18450 | |||
18326 | ### Checks for header files | 18451 | ### Checks for header files |
18327 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 | 18452 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 |
18328 | $as_echo_n "checking for ANSI C header files... " >&6; } | 18453 | $as_echo_n "checking for ANSI C header files... " >&6; } |
@@ -18436,11 +18561,12 @@ $as_echo "#define STDC_HEADERS 1" >>confdefs.h | |||
18436 | 18561 | ||
18437 | fi | 18562 | fi |
18438 | 18563 | ||
18439 | for ac_header in unistd.h stdint.h sys/param.h netinet/in.h | 18564 | for ac_header in unistd.h stdint.h sys/param.h netinet/in.h sys/mman.h |
18440 | do : | 18565 | do : |
18441 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | 18566 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` |
18442 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | 18567 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" |
18443 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | 18568 | eval as_val=\$$as_ac_Header |
18569 | if test "x$as_val" = x""yes; then : | ||
18444 | cat >>confdefs.h <<_ACEOF | 18570 | cat >>confdefs.h <<_ACEOF |
18445 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | 18571 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 |
18446 | _ACEOF | 18572 | _ACEOF |
@@ -18501,7 +18627,6 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu | |||
18501 | 18627 | ||
18502 | 18628 | ||
18503 | 18629 | ||
18504 | |||
18505 | ### Checks for types | 18630 | ### Checks for types |
18506 | ac_fn_c_check_type "$LINENO" "struct sigaction" "ac_cv_type_struct_sigaction" "#include <signal.h> | 18631 | ac_fn_c_check_type "$LINENO" "struct sigaction" "ac_cv_type_struct_sigaction" "#include <signal.h> |
18507 | " | 18632 | " |
@@ -18820,8 +18945,8 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h | |||
18820 | 18945 | ||
18821 | ;; #( | 18946 | ;; #( |
18822 | *) | 18947 | *) |
18823 | as_fn_error $? "unknown endianness | 18948 | as_fn_error "unknown endianness |
18824 | presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; | 18949 | presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; |
18825 | esac | 18950 | esac |
18826 | 18951 | ||
18827 | case $ac_cv_prog_cc_stdc in #( | 18952 | case $ac_cv_prog_cc_stdc in #( |
@@ -19494,7 +19619,8 @@ if test $ac_cv_os_cray = yes; then | |||
19494 | for ac_func in _getb67 GETB67 getb67; do | 19619 | for ac_func in _getb67 GETB67 getb67; do |
19495 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` | 19620 | as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` |
19496 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" | 19621 | ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" |
19497 | if eval test \"x\$"$as_ac_var"\" = x"yes"; then : | 19622 | eval as_val=\$$as_ac_var |
19623 | if test "x$as_val" = x""yes; then : | ||
19498 | 19624 | ||
19499 | cat >>confdefs.h <<_ACEOF | 19625 | cat >>confdefs.h <<_ACEOF |
19500 | #define CRAY_STACKSEG_END $ac_func | 19626 | #define CRAY_STACKSEG_END $ac_func |
@@ -19641,7 +19767,7 @@ fi | |||
19641 | if test "x$_efl_have_fnmatch" = "xyes"; then : | 19767 | if test "x$_efl_have_fnmatch" = "xyes"; then : |
19642 | 19768 | ||
19643 | else | 19769 | else |
19644 | as_fn_error $? "Cannot find fnmatch()" "$LINENO" 5 | 19770 | as_fn_error "Cannot find fnmatch()" "$LINENO" 5 |
19645 | fi | 19771 | fi |
19646 | 19772 | ||
19647 | 19773 | ||
@@ -19988,7 +20114,7 @@ if test "x$gl_flavor_gles" = "xyes"; then | |||
19988 | if test "x$eng" = "xx"; then | 20114 | if test "x$eng" = "xx"; then |
19989 | eng="" | 20115 | eng="" |
19990 | else | 20116 | else |
19991 | as_fn_error $? "Please enable just 1 OpenGL-ES flavor. Choices are: | 20117 | as_fn_error "Please enable just 1 OpenGL-ES flavor. Choices are: |
19992 | --enable-gles-variety-sgx (Most GL-ES2 GPUs with shader compiler) | 20118 | --enable-gles-variety-sgx (Most GL-ES2 GPUs with shader compiler) |
19993 | --enable-gles-variety-s3c6410 (s3c6410 with offline shader compiler) | 20119 | --enable-gles-variety-s3c6410 (s3c6410 with offline shader compiler) |
19994 | You will also need to enable the OpenGL engine for X11 with: | 20120 | You will also need to enable the OpenGL engine for X11 with: |
@@ -20049,7 +20175,7 @@ fi | |||
20049 | fi | 20175 | fi |
20050 | 20176 | ||
20051 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 20177 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
20052 | as_fn_error $? "Buffer dependencies not found (strict dependencies checking)" "$LINENO" 5 | 20178 | as_fn_error "Buffer dependencies not found (strict dependencies checking)" "$LINENO" 5 |
20053 | fi | 20179 | fi |
20054 | 20180 | ||
20055 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Buffer rendering backend will be built" >&5 | 20181 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Buffer rendering backend will be built" >&5 |
@@ -20162,7 +20288,7 @@ fi | |||
20162 | fi | 20288 | fi |
20163 | 20289 | ||
20164 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 20290 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
20165 | as_fn_error $? "Software GDI dependencies not found (strict dependencies checking)" "$LINENO" 5 | 20291 | as_fn_error "Software GDI dependencies not found (strict dependencies checking)" "$LINENO" 5 |
20166 | fi | 20292 | fi |
20167 | 20293 | ||
20168 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software GDI rendering backend will be built" >&5 | 20294 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software GDI rendering backend will be built" >&5 |
@@ -20275,7 +20401,7 @@ fi | |||
20275 | fi | 20401 | fi |
20276 | 20402 | ||
20277 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 20403 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
20278 | as_fn_error $? "Software DirectDraw dependencies not found (strict dependencies checking)" "$LINENO" 5 | 20404 | as_fn_error "Software DirectDraw dependencies not found (strict dependencies checking)" "$LINENO" 5 |
20279 | fi | 20405 | fi |
20280 | 20406 | ||
20281 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software DirectDraw rendering backend will be built" >&5 | 20407 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software DirectDraw rendering backend will be built" >&5 |
@@ -20367,7 +20493,8 @@ for ac_header in d3d9.h d3dx9.h | |||
20367 | do : | 20493 | do : |
20368 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | 20494 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` |
20369 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | 20495 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" |
20370 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | 20496 | eval as_val=\$$as_ac_Header |
20497 | if test "x$as_val" = x""yes; then : | ||
20371 | cat >>confdefs.h <<_ACEOF | 20498 | cat >>confdefs.h <<_ACEOF |
20372 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | 20499 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 |
20373 | _ACEOF | 20500 | _ACEOF |
@@ -20396,7 +20523,7 @@ fi | |||
20396 | fi | 20523 | fi |
20397 | 20524 | ||
20398 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 20525 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
20399 | as_fn_error $? "Direct3D dependencies not found (strict dependencies checking)" "$LINENO" 5 | 20526 | as_fn_error "Direct3D dependencies not found (strict dependencies checking)" "$LINENO" 5 |
20400 | fi | 20527 | fi |
20401 | 20528 | ||
20402 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Direct3D rendering backend will be built" >&5 | 20529 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Direct3D rendering backend will be built" >&5 |
@@ -20491,10 +20618,11 @@ pkg_failed=no | |||
20491 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL" >&5 | 20618 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL" >&5 |
20492 | $as_echo_n "checking for SDL... " >&6; } | 20619 | $as_echo_n "checking for SDL... " >&6; } |
20493 | 20620 | ||
20494 | if test -n "$SDL_CFLAGS"; then | 20621 | if test -n "$PKG_CONFIG"; then |
20495 | pkg_cv_SDL_CFLAGS="$SDL_CFLAGS" | 20622 | if test -n "$SDL_CFLAGS"; then |
20496 | elif test -n "$PKG_CONFIG"; then | 20623 | pkg_cv_SDL_CFLAGS="$SDL_CFLAGS" |
20497 | if test -n "$PKG_CONFIG" && \ | 20624 | else |
20625 | if test -n "$PKG_CONFIG" && \ | ||
20498 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 | 20626 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 |
20499 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 | 20627 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 |
20500 | ac_status=$? | 20628 | ac_status=$? |
@@ -20504,13 +20632,15 @@ if test -n "$SDL_CFLAGS"; then | |||
20504 | else | 20632 | else |
20505 | pkg_failed=yes | 20633 | pkg_failed=yes |
20506 | fi | 20634 | fi |
20507 | else | 20635 | fi |
20508 | pkg_failed=untried | 20636 | else |
20637 | pkg_failed=untried | ||
20509 | fi | 20638 | fi |
20510 | if test -n "$SDL_LIBS"; then | 20639 | if test -n "$PKG_CONFIG"; then |
20511 | pkg_cv_SDL_LIBS="$SDL_LIBS" | 20640 | if test -n "$SDL_LIBS"; then |
20512 | elif test -n "$PKG_CONFIG"; then | 20641 | pkg_cv_SDL_LIBS="$SDL_LIBS" |
20513 | if test -n "$PKG_CONFIG" && \ | 20642 | else |
20643 | if test -n "$PKG_CONFIG" && \ | ||
20514 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 | 20644 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 |
20515 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 | 20645 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 |
20516 | ac_status=$? | 20646 | ac_status=$? |
@@ -20520,15 +20650,14 @@ if test -n "$SDL_LIBS"; then | |||
20520 | else | 20650 | else |
20521 | pkg_failed=yes | 20651 | pkg_failed=yes |
20522 | fi | 20652 | fi |
20523 | else | 20653 | fi |
20524 | pkg_failed=untried | 20654 | else |
20655 | pkg_failed=untried | ||
20525 | fi | 20656 | fi |
20526 | 20657 | ||
20527 | 20658 | ||
20528 | 20659 | ||
20529 | if test $pkg_failed = yes; then | 20660 | if test $pkg_failed = yes; then |
20530 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20531 | $as_echo "no" >&6; } | ||
20532 | 20661 | ||
20533 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 20662 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
20534 | _pkg_short_errors_supported=yes | 20663 | _pkg_short_errors_supported=yes |
@@ -20536,14 +20665,14 @@ else | |||
20536 | _pkg_short_errors_supported=no | 20665 | _pkg_short_errors_supported=no |
20537 | fi | 20666 | fi |
20538 | if test $_pkg_short_errors_supported = yes; then | 20667 | if test $_pkg_short_errors_supported = yes; then |
20539 | SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "sdl >= 1.2.0" 2>&1` | 20668 | SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "sdl >= 1.2.0"` |
20540 | else | 20669 | else |
20541 | SDL_PKG_ERRORS=`$PKG_CONFIG --print-errors "sdl >= 1.2.0" 2>&1` | 20670 | SDL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "sdl >= 1.2.0"` |
20542 | fi | 20671 | fi |
20543 | # Put the nasty error message in config.log where it belongs | 20672 | # Put the nasty error message in config.log where it belongs |
20544 | echo "$SDL_PKG_ERRORS" >&5 | 20673 | echo "$SDL_PKG_ERRORS" >&5 |
20545 | 20674 | ||
20546 | as_fn_error $? "Package requirements (sdl >= 1.2.0) were not met: | 20675 | as_fn_error "Package requirements (sdl >= 1.2.0) were not met: |
20547 | 20676 | ||
20548 | $SDL_PKG_ERRORS | 20677 | $SDL_PKG_ERRORS |
20549 | 20678 | ||
@@ -20552,13 +20681,12 @@ installed software in a non-standard prefix. | |||
20552 | 20681 | ||
20553 | Alternatively, you may set the environment variables SDL_CFLAGS | 20682 | Alternatively, you may set the environment variables SDL_CFLAGS |
20554 | and SDL_LIBS to avoid the need to call pkg-config. | 20683 | and SDL_LIBS to avoid the need to call pkg-config. |
20555 | See the pkg-config man page for more details." "$LINENO" 5 | 20684 | See the pkg-config man page for more details. |
20685 | " "$LINENO" 5 | ||
20556 | elif test $pkg_failed = untried; then | 20686 | elif test $pkg_failed = untried; then |
20557 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20558 | $as_echo "no" >&6; } | ||
20559 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 20687 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
20560 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 20688 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
20561 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | 20689 | as_fn_error "The pkg-config script could not be found or is too old. Make sure it |
20562 | is in your PATH or set the PKG_CONFIG environment variable to the full | 20690 | is in your PATH or set the PKG_CONFIG environment variable to the full |
20563 | path to pkg-config. | 20691 | path to pkg-config. |
20564 | 20692 | ||
@@ -20567,7 +20695,7 @@ and SDL_LIBS to avoid the need to call pkg-config. | |||
20567 | See the pkg-config man page for more details. | 20695 | See the pkg-config man page for more details. |
20568 | 20696 | ||
20569 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | 20697 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. |
20570 | See \`config.log' for more details" "$LINENO" 5 ; } | 20698 | See \`config.log' for more details." "$LINENO" 5; } |
20571 | else | 20699 | else |
20572 | SDL_CFLAGS=$pkg_cv_SDL_CFLAGS | 20700 | SDL_CFLAGS=$pkg_cv_SDL_CFLAGS |
20573 | SDL_LIBS=$pkg_cv_SDL_LIBS | 20701 | SDL_LIBS=$pkg_cv_SDL_LIBS |
@@ -20599,7 +20727,7 @@ fi | |||
20599 | fi | 20727 | fi |
20600 | 20728 | ||
20601 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 20729 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
20602 | as_fn_error $? "Software SDL dependencies not found (strict dependencies checking)" "$LINENO" 5 | 20730 | as_fn_error "Software SDL dependencies not found (strict dependencies checking)" "$LINENO" 5 |
20603 | fi | 20731 | fi |
20604 | 20732 | ||
20605 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software SDL rendering backend will be built" >&5 | 20733 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software SDL rendering backend will be built" >&5 |
@@ -20708,7 +20836,7 @@ fi | |||
20708 | fi | 20836 | fi |
20709 | 20837 | ||
20710 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 20838 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
20711 | as_fn_error $? "PSL1GHT dependencies not found (strict dependencies checking)" "$LINENO" 5 | 20839 | as_fn_error "PSL1GHT dependencies not found (strict dependencies checking)" "$LINENO" 5 |
20712 | fi | 20840 | fi |
20713 | 20841 | ||
20714 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PSL1GHT rendering backend will be built" >&5 | 20842 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PSL1GHT rendering backend will be built" >&5 |
@@ -20803,10 +20931,11 @@ pkg_failed=no | |||
20803 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL" >&5 | 20931 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL" >&5 |
20804 | $as_echo_n "checking for SDL... " >&6; } | 20932 | $as_echo_n "checking for SDL... " >&6; } |
20805 | 20933 | ||
20806 | if test -n "$SDL_CFLAGS"; then | 20934 | if test -n "$PKG_CONFIG"; then |
20807 | pkg_cv_SDL_CFLAGS="$SDL_CFLAGS" | 20935 | if test -n "$SDL_CFLAGS"; then |
20808 | elif test -n "$PKG_CONFIG"; then | 20936 | pkg_cv_SDL_CFLAGS="$SDL_CFLAGS" |
20809 | if test -n "$PKG_CONFIG" && \ | 20937 | else |
20938 | if test -n "$PKG_CONFIG" && \ | ||
20810 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 | 20939 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 |
20811 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 | 20940 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 |
20812 | ac_status=$? | 20941 | ac_status=$? |
@@ -20816,13 +20945,15 @@ if test -n "$SDL_CFLAGS"; then | |||
20816 | else | 20945 | else |
20817 | pkg_failed=yes | 20946 | pkg_failed=yes |
20818 | fi | 20947 | fi |
20819 | else | 20948 | fi |
20820 | pkg_failed=untried | 20949 | else |
20950 | pkg_failed=untried | ||
20821 | fi | 20951 | fi |
20822 | if test -n "$SDL_LIBS"; then | 20952 | if test -n "$PKG_CONFIG"; then |
20823 | pkg_cv_SDL_LIBS="$SDL_LIBS" | 20953 | if test -n "$SDL_LIBS"; then |
20824 | elif test -n "$PKG_CONFIG"; then | 20954 | pkg_cv_SDL_LIBS="$SDL_LIBS" |
20825 | if test -n "$PKG_CONFIG" && \ | 20955 | else |
20956 | if test -n "$PKG_CONFIG" && \ | ||
20826 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 | 20957 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 |
20827 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 | 20958 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 |
20828 | ac_status=$? | 20959 | ac_status=$? |
@@ -20832,15 +20963,14 @@ if test -n "$SDL_LIBS"; then | |||
20832 | else | 20963 | else |
20833 | pkg_failed=yes | 20964 | pkg_failed=yes |
20834 | fi | 20965 | fi |
20835 | else | 20966 | fi |
20836 | pkg_failed=untried | 20967 | else |
20968 | pkg_failed=untried | ||
20837 | fi | 20969 | fi |
20838 | 20970 | ||
20839 | 20971 | ||
20840 | 20972 | ||
20841 | if test $pkg_failed = yes; then | 20973 | if test $pkg_failed = yes; then |
20842 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20843 | $as_echo "no" >&6; } | ||
20844 | 20974 | ||
20845 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 20975 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
20846 | _pkg_short_errors_supported=yes | 20976 | _pkg_short_errors_supported=yes |
@@ -20848,14 +20978,14 @@ else | |||
20848 | _pkg_short_errors_supported=no | 20978 | _pkg_short_errors_supported=no |
20849 | fi | 20979 | fi |
20850 | if test $_pkg_short_errors_supported = yes; then | 20980 | if test $_pkg_short_errors_supported = yes; then |
20851 | SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "sdl >= 1.2.0" 2>&1` | 20981 | SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "sdl >= 1.2.0"` |
20852 | else | 20982 | else |
20853 | SDL_PKG_ERRORS=`$PKG_CONFIG --print-errors "sdl >= 1.2.0" 2>&1` | 20983 | SDL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "sdl >= 1.2.0"` |
20854 | fi | 20984 | fi |
20855 | # Put the nasty error message in config.log where it belongs | 20985 | # Put the nasty error message in config.log where it belongs |
20856 | echo "$SDL_PKG_ERRORS" >&5 | 20986 | echo "$SDL_PKG_ERRORS" >&5 |
20857 | 20987 | ||
20858 | as_fn_error $? "Package requirements (sdl >= 1.2.0) were not met: | 20988 | as_fn_error "Package requirements (sdl >= 1.2.0) were not met: |
20859 | 20989 | ||
20860 | $SDL_PKG_ERRORS | 20990 | $SDL_PKG_ERRORS |
20861 | 20991 | ||
@@ -20864,13 +20994,12 @@ installed software in a non-standard prefix. | |||
20864 | 20994 | ||
20865 | Alternatively, you may set the environment variables SDL_CFLAGS | 20995 | Alternatively, you may set the environment variables SDL_CFLAGS |
20866 | and SDL_LIBS to avoid the need to call pkg-config. | 20996 | and SDL_LIBS to avoid the need to call pkg-config. |
20867 | See the pkg-config man page for more details." "$LINENO" 5 | 20997 | See the pkg-config man page for more details. |
20998 | " "$LINENO" 5 | ||
20868 | elif test $pkg_failed = untried; then | 20999 | elif test $pkg_failed = untried; then |
20869 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
20870 | $as_echo "no" >&6; } | ||
20871 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 21000 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
20872 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 21001 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
20873 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | 21002 | as_fn_error "The pkg-config script could not be found or is too old. Make sure it |
20874 | is in your PATH or set the PKG_CONFIG environment variable to the full | 21003 | is in your PATH or set the PKG_CONFIG environment variable to the full |
20875 | path to pkg-config. | 21004 | path to pkg-config. |
20876 | 21005 | ||
@@ -20879,7 +21008,7 @@ and SDL_LIBS to avoid the need to call pkg-config. | |||
20879 | See the pkg-config man page for more details. | 21008 | See the pkg-config man page for more details. |
20880 | 21009 | ||
20881 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | 21010 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. |
20882 | See \`config.log' for more details" "$LINENO" 5 ; } | 21011 | See \`config.log' for more details." "$LINENO" 5; } |
20883 | else | 21012 | else |
20884 | SDL_CFLAGS=$pkg_cv_SDL_CFLAGS | 21013 | SDL_CFLAGS=$pkg_cv_SDL_CFLAGS |
20885 | SDL_LIBS=$pkg_cv_SDL_LIBS | 21014 | SDL_LIBS=$pkg_cv_SDL_LIBS |
@@ -21040,7 +21169,7 @@ fi | |||
21040 | fi | 21169 | fi |
21041 | 21170 | ||
21042 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 21171 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
21043 | as_fn_error $? "OpenGL SDL dependencies not found (strict dependencies checking)" "$LINENO" 5 | 21172 | as_fn_error "OpenGL SDL dependencies not found (strict dependencies checking)" "$LINENO" 5 |
21044 | fi | 21173 | fi |
21045 | 21174 | ||
21046 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL SDL rendering backend will be built" >&5 | 21175 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL SDL rendering backend will be built" >&5 |
@@ -21184,10 +21313,11 @@ pkg_failed=no | |||
21184 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 | 21313 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 |
21185 | $as_echo_n "checking for GL_EET... " >&6; } | 21314 | $as_echo_n "checking for GL_EET... " >&6; } |
21186 | 21315 | ||
21187 | if test -n "$GL_EET_CFLAGS"; then | 21316 | if test -n "$PKG_CONFIG"; then |
21188 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" | 21317 | if test -n "$GL_EET_CFLAGS"; then |
21189 | elif test -n "$PKG_CONFIG"; then | 21318 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" |
21190 | if test -n "$PKG_CONFIG" && \ | 21319 | else |
21320 | if test -n "$PKG_CONFIG" && \ | ||
21191 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 21321 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
21192 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 21322 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
21193 | ac_status=$? | 21323 | ac_status=$? |
@@ -21197,13 +21327,15 @@ if test -n "$GL_EET_CFLAGS"; then | |||
21197 | else | 21327 | else |
21198 | pkg_failed=yes | 21328 | pkg_failed=yes |
21199 | fi | 21329 | fi |
21200 | else | 21330 | fi |
21201 | pkg_failed=untried | 21331 | else |
21332 | pkg_failed=untried | ||
21202 | fi | 21333 | fi |
21203 | if test -n "$GL_EET_LIBS"; then | 21334 | if test -n "$PKG_CONFIG"; then |
21204 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" | 21335 | if test -n "$GL_EET_LIBS"; then |
21205 | elif test -n "$PKG_CONFIG"; then | 21336 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" |
21206 | if test -n "$PKG_CONFIG" && \ | 21337 | else |
21338 | if test -n "$PKG_CONFIG" && \ | ||
21207 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 21339 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
21208 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 21340 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
21209 | ac_status=$? | 21341 | ac_status=$? |
@@ -21213,15 +21345,14 @@ if test -n "$GL_EET_LIBS"; then | |||
21213 | else | 21345 | else |
21214 | pkg_failed=yes | 21346 | pkg_failed=yes |
21215 | fi | 21347 | fi |
21216 | else | 21348 | fi |
21217 | pkg_failed=untried | 21349 | else |
21350 | pkg_failed=untried | ||
21218 | fi | 21351 | fi |
21219 | 21352 | ||
21220 | 21353 | ||
21221 | 21354 | ||
21222 | if test $pkg_failed = yes; then | 21355 | if test $pkg_failed = yes; then |
21223 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
21224 | $as_echo "no" >&6; } | ||
21225 | 21356 | ||
21226 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 21357 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
21227 | _pkg_short_errors_supported=yes | 21358 | _pkg_short_errors_supported=yes |
@@ -21229,17 +21360,17 @@ else | |||
21229 | _pkg_short_errors_supported=no | 21360 | _pkg_short_errors_supported=no |
21230 | fi | 21361 | fi |
21231 | if test $_pkg_short_errors_supported = yes; then | 21362 | if test $_pkg_short_errors_supported = yes; then |
21232 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eet >= 1.5.0" 2>&1` | 21363 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` |
21233 | else | 21364 | else |
21234 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --print-errors "eet >= 1.5.0" 2>&1` | 21365 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` |
21235 | fi | 21366 | fi |
21236 | # Put the nasty error message in config.log where it belongs | 21367 | # Put the nasty error message in config.log where it belongs |
21237 | echo "$GL_EET_PKG_ERRORS" >&5 | 21368 | echo "$GL_EET_PKG_ERRORS" >&5 |
21238 | 21369 | ||
21239 | have_dep="no" | 21370 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
21240 | elif test $pkg_failed = untried; then | ||
21241 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
21242 | $as_echo "no" >&6; } | 21371 | $as_echo "no" >&6; } |
21372 | have_dep="no" | ||
21373 | elif test $pkg_failed = untried; then | ||
21243 | have_dep="no" | 21374 | have_dep="no" |
21244 | else | 21375 | else |
21245 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS | 21376 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS |
@@ -21263,7 +21394,7 @@ fi | |||
21263 | fi | 21394 | fi |
21264 | 21395 | ||
21265 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 21396 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
21266 | as_fn_error $? "OpenGL Cocoa dependencies not found (strict dependencies checking)" "$LINENO" 5 | 21397 | as_fn_error "OpenGL Cocoa dependencies not found (strict dependencies checking)" "$LINENO" 5 |
21267 | fi | 21398 | fi |
21268 | 21399 | ||
21269 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL Cocoa rendering backend will be built" >&5 | 21400 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL Cocoa rendering backend will be built" >&5 |
@@ -21372,7 +21503,7 @@ fi | |||
21372 | fi | 21503 | fi |
21373 | 21504 | ||
21374 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 21505 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
21375 | as_fn_error $? "Framebuffer dependencies not found (strict dependencies checking)" "$LINENO" 5 | 21506 | as_fn_error "Framebuffer dependencies not found (strict dependencies checking)" "$LINENO" 5 |
21376 | fi | 21507 | fi |
21377 | 21508 | ||
21378 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Framebuffer rendering backend will be built" >&5 | 21509 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Framebuffer rendering backend will be built" >&5 |
@@ -21467,10 +21598,11 @@ pkg_failed=no | |||
21467 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DIRECTFB" >&5 | 21598 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for DIRECTFB" >&5 |
21468 | $as_echo_n "checking for DIRECTFB... " >&6; } | 21599 | $as_echo_n "checking for DIRECTFB... " >&6; } |
21469 | 21600 | ||
21470 | if test -n "$DIRECTFB_CFLAGS"; then | 21601 | if test -n "$PKG_CONFIG"; then |
21471 | pkg_cv_DIRECTFB_CFLAGS="$DIRECTFB_CFLAGS" | 21602 | if test -n "$DIRECTFB_CFLAGS"; then |
21472 | elif test -n "$PKG_CONFIG"; then | 21603 | pkg_cv_DIRECTFB_CFLAGS="$DIRECTFB_CFLAGS" |
21473 | if test -n "$PKG_CONFIG" && \ | 21604 | else |
21605 | if test -n "$PKG_CONFIG" && \ | ||
21474 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"directfb >= 0.9.16\""; } >&5 | 21606 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"directfb >= 0.9.16\""; } >&5 |
21475 | ($PKG_CONFIG --exists --print-errors "directfb >= 0.9.16") 2>&5 | 21607 | ($PKG_CONFIG --exists --print-errors "directfb >= 0.9.16") 2>&5 |
21476 | ac_status=$? | 21608 | ac_status=$? |
@@ -21480,13 +21612,15 @@ if test -n "$DIRECTFB_CFLAGS"; then | |||
21480 | else | 21612 | else |
21481 | pkg_failed=yes | 21613 | pkg_failed=yes |
21482 | fi | 21614 | fi |
21483 | else | 21615 | fi |
21484 | pkg_failed=untried | 21616 | else |
21617 | pkg_failed=untried | ||
21485 | fi | 21618 | fi |
21486 | if test -n "$DIRECTFB_LIBS"; then | 21619 | if test -n "$PKG_CONFIG"; then |
21487 | pkg_cv_DIRECTFB_LIBS="$DIRECTFB_LIBS" | 21620 | if test -n "$DIRECTFB_LIBS"; then |
21488 | elif test -n "$PKG_CONFIG"; then | 21621 | pkg_cv_DIRECTFB_LIBS="$DIRECTFB_LIBS" |
21489 | if test -n "$PKG_CONFIG" && \ | 21622 | else |
21623 | if test -n "$PKG_CONFIG" && \ | ||
21490 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"directfb >= 0.9.16\""; } >&5 | 21624 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"directfb >= 0.9.16\""; } >&5 |
21491 | ($PKG_CONFIG --exists --print-errors "directfb >= 0.9.16") 2>&5 | 21625 | ($PKG_CONFIG --exists --print-errors "directfb >= 0.9.16") 2>&5 |
21492 | ac_status=$? | 21626 | ac_status=$? |
@@ -21496,15 +21630,14 @@ if test -n "$DIRECTFB_LIBS"; then | |||
21496 | else | 21630 | else |
21497 | pkg_failed=yes | 21631 | pkg_failed=yes |
21498 | fi | 21632 | fi |
21499 | else | 21633 | fi |
21500 | pkg_failed=untried | 21634 | else |
21635 | pkg_failed=untried | ||
21501 | fi | 21636 | fi |
21502 | 21637 | ||
21503 | 21638 | ||
21504 | 21639 | ||
21505 | if test $pkg_failed = yes; then | 21640 | if test $pkg_failed = yes; then |
21506 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
21507 | $as_echo "no" >&6; } | ||
21508 | 21641 | ||
21509 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 21642 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
21510 | _pkg_short_errors_supported=yes | 21643 | _pkg_short_errors_supported=yes |
@@ -21512,14 +21645,14 @@ else | |||
21512 | _pkg_short_errors_supported=no | 21645 | _pkg_short_errors_supported=no |
21513 | fi | 21646 | fi |
21514 | if test $_pkg_short_errors_supported = yes; then | 21647 | if test $_pkg_short_errors_supported = yes; then |
21515 | DIRECTFB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "directfb >= 0.9.16" 2>&1` | 21648 | DIRECTFB_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "directfb >= 0.9.16"` |
21516 | else | 21649 | else |
21517 | DIRECTFB_PKG_ERRORS=`$PKG_CONFIG --print-errors "directfb >= 0.9.16" 2>&1` | 21650 | DIRECTFB_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "directfb >= 0.9.16"` |
21518 | fi | 21651 | fi |
21519 | # Put the nasty error message in config.log where it belongs | 21652 | # Put the nasty error message in config.log where it belongs |
21520 | echo "$DIRECTFB_PKG_ERRORS" >&5 | 21653 | echo "$DIRECTFB_PKG_ERRORS" >&5 |
21521 | 21654 | ||
21522 | as_fn_error $? "Package requirements (directfb >= 0.9.16) were not met: | 21655 | as_fn_error "Package requirements (directfb >= 0.9.16) were not met: |
21523 | 21656 | ||
21524 | $DIRECTFB_PKG_ERRORS | 21657 | $DIRECTFB_PKG_ERRORS |
21525 | 21658 | ||
@@ -21528,13 +21661,12 @@ installed software in a non-standard prefix. | |||
21528 | 21661 | ||
21529 | Alternatively, you may set the environment variables DIRECTFB_CFLAGS | 21662 | Alternatively, you may set the environment variables DIRECTFB_CFLAGS |
21530 | and DIRECTFB_LIBS to avoid the need to call pkg-config. | 21663 | and DIRECTFB_LIBS to avoid the need to call pkg-config. |
21531 | See the pkg-config man page for more details." "$LINENO" 5 | 21664 | See the pkg-config man page for more details. |
21665 | " "$LINENO" 5 | ||
21532 | elif test $pkg_failed = untried; then | 21666 | elif test $pkg_failed = untried; then |
21533 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
21534 | $as_echo "no" >&6; } | ||
21535 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 21667 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
21536 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 21668 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
21537 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | 21669 | as_fn_error "The pkg-config script could not be found or is too old. Make sure it |
21538 | is in your PATH or set the PKG_CONFIG environment variable to the full | 21670 | is in your PATH or set the PKG_CONFIG environment variable to the full |
21539 | path to pkg-config. | 21671 | path to pkg-config. |
21540 | 21672 | ||
@@ -21543,7 +21675,7 @@ and DIRECTFB_LIBS to avoid the need to call pkg-config. | |||
21543 | See the pkg-config man page for more details. | 21675 | See the pkg-config man page for more details. |
21544 | 21676 | ||
21545 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | 21677 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. |
21546 | See \`config.log' for more details" "$LINENO" 5 ; } | 21678 | See \`config.log' for more details." "$LINENO" 5; } |
21547 | else | 21679 | else |
21548 | DIRECTFB_CFLAGS=$pkg_cv_DIRECTFB_CFLAGS | 21680 | DIRECTFB_CFLAGS=$pkg_cv_DIRECTFB_CFLAGS |
21549 | DIRECTFB_LIBS=$pkg_cv_DIRECTFB_LIBS | 21681 | DIRECTFB_LIBS=$pkg_cv_DIRECTFB_LIBS |
@@ -21575,7 +21707,7 @@ fi | |||
21575 | fi | 21707 | fi |
21576 | 21708 | ||
21577 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 21709 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
21578 | as_fn_error $? "DirectFB dependencies not found (strict dependencies checking)" "$LINENO" 5 | 21710 | as_fn_error "DirectFB dependencies not found (strict dependencies checking)" "$LINENO" 5 |
21579 | fi | 21711 | fi |
21580 | 21712 | ||
21581 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether DirectFB rendering backend will be built" >&5 | 21713 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether DirectFB rendering backend will be built" >&5 |
@@ -21669,10 +21801,11 @@ pkg_failed=no | |||
21669 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XCB" >&5 | 21801 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XCB" >&5 |
21670 | $as_echo_n "checking for XCB... " >&6; } | 21802 | $as_echo_n "checking for XCB... " >&6; } |
21671 | 21803 | ||
21672 | if test -n "$XCB_CFLAGS"; then | 21804 | if test -n "$PKG_CONFIG"; then |
21673 | pkg_cv_XCB_CFLAGS="$XCB_CFLAGS" | 21805 | if test -n "$XCB_CFLAGS"; then |
21674 | elif test -n "$PKG_CONFIG"; then | 21806 | pkg_cv_XCB_CFLAGS="$XCB_CFLAGS" |
21675 | if test -n "$PKG_CONFIG" && \ | 21807 | else |
21808 | if test -n "$PKG_CONFIG" && \ | ||
21676 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 | 21809 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 |
21677 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 | 21810 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 |
21678 | ac_status=$? | 21811 | ac_status=$? |
@@ -21682,13 +21815,15 @@ if test -n "$XCB_CFLAGS"; then | |||
21682 | else | 21815 | else |
21683 | pkg_failed=yes | 21816 | pkg_failed=yes |
21684 | fi | 21817 | fi |
21685 | else | 21818 | fi |
21686 | pkg_failed=untried | 21819 | else |
21820 | pkg_failed=untried | ||
21687 | fi | 21821 | fi |
21688 | if test -n "$XCB_LIBS"; then | 21822 | if test -n "$PKG_CONFIG"; then |
21689 | pkg_cv_XCB_LIBS="$XCB_LIBS" | 21823 | if test -n "$XCB_LIBS"; then |
21690 | elif test -n "$PKG_CONFIG"; then | 21824 | pkg_cv_XCB_LIBS="$XCB_LIBS" |
21691 | if test -n "$PKG_CONFIG" && \ | 21825 | else |
21826 | if test -n "$PKG_CONFIG" && \ | ||
21692 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 | 21827 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 |
21693 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 | 21828 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 |
21694 | ac_status=$? | 21829 | ac_status=$? |
@@ -21698,15 +21833,14 @@ if test -n "$XCB_LIBS"; then | |||
21698 | else | 21833 | else |
21699 | pkg_failed=yes | 21834 | pkg_failed=yes |
21700 | fi | 21835 | fi |
21701 | else | 21836 | fi |
21702 | pkg_failed=untried | 21837 | else |
21838 | pkg_failed=untried | ||
21703 | fi | 21839 | fi |
21704 | 21840 | ||
21705 | 21841 | ||
21706 | 21842 | ||
21707 | if test $pkg_failed = yes; then | 21843 | if test $pkg_failed = yes; then |
21708 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
21709 | $as_echo "no" >&6; } | ||
21710 | 21844 | ||
21711 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 21845 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
21712 | _pkg_short_errors_supported=yes | 21846 | _pkg_short_errors_supported=yes |
@@ -21714,20 +21848,20 @@ else | |||
21714 | _pkg_short_errors_supported=no | 21848 | _pkg_short_errors_supported=no |
21715 | fi | 21849 | fi |
21716 | if test $_pkg_short_errors_supported = yes; then | 21850 | if test $_pkg_short_errors_supported = yes; then |
21717 | XCB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1" 2>&1` | 21851 | XCB_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1"` |
21718 | else | 21852 | else |
21719 | XCB_PKG_ERRORS=`$PKG_CONFIG --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1" 2>&1` | 21853 | XCB_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1"` |
21720 | fi | 21854 | fi |
21721 | # Put the nasty error message in config.log where it belongs | 21855 | # Put the nasty error message in config.log where it belongs |
21722 | echo "$XCB_PKG_ERRORS" >&5 | 21856 | echo "$XCB_PKG_ERRORS" >&5 |
21723 | 21857 | ||
21858 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
21859 | $as_echo "no" >&6; } | ||
21724 | 21860 | ||
21725 | have_dep="no" | 21861 | have_dep="no" |
21726 | 21862 | ||
21727 | 21863 | ||
21728 | elif test $pkg_failed = untried; then | 21864 | elif test $pkg_failed = untried; then |
21729 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
21730 | $as_echo "no" >&6; } | ||
21731 | 21865 | ||
21732 | have_dep="no" | 21866 | have_dep="no" |
21733 | 21867 | ||
@@ -21762,7 +21896,7 @@ fi | |||
21762 | fi | 21896 | fi |
21763 | 21897 | ||
21764 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 21898 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
21765 | as_fn_error $? "Software X11 8 bits grayscale dependencies not found (strict dependencies checking)" "$LINENO" 5 | 21899 | as_fn_error "Software X11 8 bits grayscale dependencies not found (strict dependencies checking)" "$LINENO" 5 |
21766 | fi | 21900 | fi |
21767 | 21901 | ||
21768 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software X11 8 bits grayscale rendering backend will be built" >&5 | 21902 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software X11 8 bits grayscale rendering backend will be built" >&5 |
@@ -21866,7 +22000,7 @@ if test "x$with_x" = xno; then | |||
21866 | have_x=disabled | 22000 | have_x=disabled |
21867 | else | 22001 | else |
21868 | case $x_includes,$x_libraries in #( | 22002 | case $x_includes,$x_libraries in #( |
21869 | *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5 ;; #( | 22003 | *\'*) as_fn_error "cannot use X directory names containing '" "$LINENO" 5;; #( |
21870 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : | 22004 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : |
21871 | $as_echo_n "(cached) " >&6 | 22005 | $as_echo_n "(cached) " >&6 |
21872 | else | 22006 | else |
@@ -21884,7 +22018,7 @@ libdir: | |||
21884 | @echo libdir='${LIBDIR}' | 22018 | @echo libdir='${LIBDIR}' |
21885 | _ACEOF | 22019 | _ACEOF |
21886 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then | 22020 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then |
21887 | # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. | 22021 | # GNU make sometimes prints "make[1]: Entering...", which would confuse us. |
21888 | for ac_var in incroot usrlibdir libdir; do | 22022 | for ac_var in incroot usrlibdir libdir; do |
21889 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" | 22023 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" |
21890 | done | 22024 | done |
@@ -21970,7 +22104,7 @@ else | |||
21970 | fi | 22104 | fi |
21971 | done | 22105 | done |
21972 | fi | 22106 | fi |
21973 | rm -f conftest.err conftest.i conftest.$ac_ext | 22107 | rm -f conftest.err conftest.$ac_ext |
21974 | fi # $ac_x_includes = no | 22108 | fi # $ac_x_includes = no |
21975 | 22109 | ||
21976 | if test "$ac_x_libraries" = no; then | 22110 | if test "$ac_x_libraries" = no; then |
@@ -22657,7 +22791,7 @@ fi | |||
22657 | fi | 22791 | fi |
22658 | 22792 | ||
22659 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 22793 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
22660 | as_fn_error $? "Software X11 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 | 22794 | as_fn_error "Software X11 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 |
22661 | fi | 22795 | fi |
22662 | 22796 | ||
22663 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software X11 16 bits rendering backend will be built" >&5 | 22797 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software X11 16 bits rendering backend will be built" >&5 |
@@ -22770,7 +22904,7 @@ fi | |||
22770 | fi | 22904 | fi |
22771 | 22905 | ||
22772 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 22906 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
22773 | as_fn_error $? "Software DirectDraw 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 | 22907 | as_fn_error "Software DirectDraw 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 |
22774 | fi | 22908 | fi |
22775 | 22909 | ||
22776 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software DirectDraw 16 bits rendering backend will be built" >&5 | 22910 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software DirectDraw 16 bits rendering backend will be built" >&5 |
@@ -22872,7 +23006,7 @@ fi | |||
22872 | fi | 23006 | fi |
22873 | 23007 | ||
22874 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 23008 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
22875 | as_fn_error $? "Software Windows CE 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 | 23009 | as_fn_error "Software Windows CE 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 |
22876 | fi | 23010 | fi |
22877 | 23011 | ||
22878 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software Windows CE 16 bits rendering backend will be built" >&5 | 23012 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software Windows CE 16 bits rendering backend will be built" >&5 |
@@ -22967,10 +23101,11 @@ pkg_failed=no | |||
22967 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL" >&5 | 23101 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SDL" >&5 |
22968 | $as_echo_n "checking for SDL... " >&6; } | 23102 | $as_echo_n "checking for SDL... " >&6; } |
22969 | 23103 | ||
22970 | if test -n "$SDL_CFLAGS"; then | 23104 | if test -n "$PKG_CONFIG"; then |
22971 | pkg_cv_SDL_CFLAGS="$SDL_CFLAGS" | 23105 | if test -n "$SDL_CFLAGS"; then |
22972 | elif test -n "$PKG_CONFIG"; then | 23106 | pkg_cv_SDL_CFLAGS="$SDL_CFLAGS" |
22973 | if test -n "$PKG_CONFIG" && \ | 23107 | else |
23108 | if test -n "$PKG_CONFIG" && \ | ||
22974 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 | 23109 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 |
22975 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 | 23110 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 |
22976 | ac_status=$? | 23111 | ac_status=$? |
@@ -22980,13 +23115,15 @@ if test -n "$SDL_CFLAGS"; then | |||
22980 | else | 23115 | else |
22981 | pkg_failed=yes | 23116 | pkg_failed=yes |
22982 | fi | 23117 | fi |
22983 | else | 23118 | fi |
22984 | pkg_failed=untried | 23119 | else |
23120 | pkg_failed=untried | ||
22985 | fi | 23121 | fi |
22986 | if test -n "$SDL_LIBS"; then | 23122 | if test -n "$PKG_CONFIG"; then |
22987 | pkg_cv_SDL_LIBS="$SDL_LIBS" | 23123 | if test -n "$SDL_LIBS"; then |
22988 | elif test -n "$PKG_CONFIG"; then | 23124 | pkg_cv_SDL_LIBS="$SDL_LIBS" |
22989 | if test -n "$PKG_CONFIG" && \ | 23125 | else |
23126 | if test -n "$PKG_CONFIG" && \ | ||
22990 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 | 23127 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"sdl >= 1.2.0\""; } >&5 |
22991 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 | 23128 | ($PKG_CONFIG --exists --print-errors "sdl >= 1.2.0") 2>&5 |
22992 | ac_status=$? | 23129 | ac_status=$? |
@@ -22996,15 +23133,14 @@ if test -n "$SDL_LIBS"; then | |||
22996 | else | 23133 | else |
22997 | pkg_failed=yes | 23134 | pkg_failed=yes |
22998 | fi | 23135 | fi |
22999 | else | 23136 | fi |
23000 | pkg_failed=untried | 23137 | else |
23138 | pkg_failed=untried | ||
23001 | fi | 23139 | fi |
23002 | 23140 | ||
23003 | 23141 | ||
23004 | 23142 | ||
23005 | if test $pkg_failed = yes; then | 23143 | if test $pkg_failed = yes; then |
23006 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
23007 | $as_echo "no" >&6; } | ||
23008 | 23144 | ||
23009 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 23145 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
23010 | _pkg_short_errors_supported=yes | 23146 | _pkg_short_errors_supported=yes |
@@ -23012,14 +23148,14 @@ else | |||
23012 | _pkg_short_errors_supported=no | 23148 | _pkg_short_errors_supported=no |
23013 | fi | 23149 | fi |
23014 | if test $_pkg_short_errors_supported = yes; then | 23150 | if test $_pkg_short_errors_supported = yes; then |
23015 | SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "sdl >= 1.2.0" 2>&1` | 23151 | SDL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "sdl >= 1.2.0"` |
23016 | else | 23152 | else |
23017 | SDL_PKG_ERRORS=`$PKG_CONFIG --print-errors "sdl >= 1.2.0" 2>&1` | 23153 | SDL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "sdl >= 1.2.0"` |
23018 | fi | 23154 | fi |
23019 | # Put the nasty error message in config.log where it belongs | 23155 | # Put the nasty error message in config.log where it belongs |
23020 | echo "$SDL_PKG_ERRORS" >&5 | 23156 | echo "$SDL_PKG_ERRORS" >&5 |
23021 | 23157 | ||
23022 | as_fn_error $? "Package requirements (sdl >= 1.2.0) were not met: | 23158 | as_fn_error "Package requirements (sdl >= 1.2.0) were not met: |
23023 | 23159 | ||
23024 | $SDL_PKG_ERRORS | 23160 | $SDL_PKG_ERRORS |
23025 | 23161 | ||
@@ -23028,13 +23164,12 @@ installed software in a non-standard prefix. | |||
23028 | 23164 | ||
23029 | Alternatively, you may set the environment variables SDL_CFLAGS | 23165 | Alternatively, you may set the environment variables SDL_CFLAGS |
23030 | and SDL_LIBS to avoid the need to call pkg-config. | 23166 | and SDL_LIBS to avoid the need to call pkg-config. |
23031 | See the pkg-config man page for more details." "$LINENO" 5 | 23167 | See the pkg-config man page for more details. |
23168 | " "$LINENO" 5 | ||
23032 | elif test $pkg_failed = untried; then | 23169 | elif test $pkg_failed = untried; then |
23033 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
23034 | $as_echo "no" >&6; } | ||
23035 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 | 23170 | { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 |
23036 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} | 23171 | $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} |
23037 | as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it | 23172 | as_fn_error "The pkg-config script could not be found or is too old. Make sure it |
23038 | is in your PATH or set the PKG_CONFIG environment variable to the full | 23173 | is in your PATH or set the PKG_CONFIG environment variable to the full |
23039 | path to pkg-config. | 23174 | path to pkg-config. |
23040 | 23175 | ||
@@ -23043,7 +23178,7 @@ and SDL_LIBS to avoid the need to call pkg-config. | |||
23043 | See the pkg-config man page for more details. | 23178 | See the pkg-config man page for more details. |
23044 | 23179 | ||
23045 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. | 23180 | To get pkg-config, see <http://pkg-config.freedesktop.org/>. |
23046 | See \`config.log' for more details" "$LINENO" 5 ; } | 23181 | See \`config.log' for more details." "$LINENO" 5; } |
23047 | else | 23182 | else |
23048 | SDL_CFLAGS=$pkg_cv_SDL_CFLAGS | 23183 | SDL_CFLAGS=$pkg_cv_SDL_CFLAGS |
23049 | SDL_LIBS=$pkg_cv_SDL_LIBS | 23184 | SDL_LIBS=$pkg_cv_SDL_LIBS |
@@ -23075,7 +23210,7 @@ fi | |||
23075 | fi | 23210 | fi |
23076 | 23211 | ||
23077 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 23212 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
23078 | as_fn_error $? "Software SDL 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 | 23213 | as_fn_error "Software SDL 16 bits dependencies not found (strict dependencies checking)" "$LINENO" 5 |
23079 | fi | 23214 | fi |
23080 | 23215 | ||
23081 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software SDL 16 bits rendering backend will be built" >&5 | 23216 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software SDL 16 bits rendering backend will be built" >&5 |
@@ -23128,6 +23263,386 @@ fi | |||
23128 | 23263 | ||
23129 | 23264 | ||
23130 | 23265 | ||
23266 | |||
23267 | |||
23268 | |||
23269 | want_engine="${want_evas_engine_wayland_shm}" | ||
23270 | want_static_engine="no" | ||
23271 | have_engine="no" | ||
23272 | have_evas_engine_wayland_shm="no" | ||
23273 | |||
23274 | # Check whether --enable-wayland-shm was given. | ||
23275 | if test "${enable_wayland_shm+set}" = set; then : | ||
23276 | enableval=$enable_wayland_shm; | ||
23277 | if test "x${enableval}" = "xyes" ; then | ||
23278 | want_engine="yes" | ||
23279 | else | ||
23280 | if test "x${enableval}" = "xstatic" ; then | ||
23281 | want_engine="static" | ||
23282 | else | ||
23283 | want_engine="no" | ||
23284 | fi | ||
23285 | fi | ||
23286 | |||
23287 | fi | ||
23288 | |||
23289 | |||
23290 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Wayland Shm rendering backend" >&5 | ||
23291 | $as_echo_n "checking whether to enable Wayland Shm rendering backend... " >&6; } | ||
23292 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${want_engine}" >&5 | ||
23293 | $as_echo "${want_engine}" >&6; } | ||
23294 | |||
23295 | if test "x${want_engine}" = "xyes" -o "x${want_engine}" = "xstatic" -o "x${want_engine}" = "xauto" ; then | ||
23296 | |||
23297 | |||
23298 | have_dep="yes" | ||
23299 | evas_engine_wayland_shm_cflags="" | ||
23300 | evas_engine_wayland_shm_libs="" | ||
23301 | |||
23302 | |||
23303 | |||
23304 | |||
23305 | if test "x${have_dep}" = "xyes" ; then | ||
23306 | have_engine="yes" | ||
23307 | else | ||
23308 | have_engine="no" | ||
23309 | fi | ||
23310 | |||
23311 | |||
23312 | fi | ||
23313 | |||
23314 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | ||
23315 | as_fn_error "Wayland Shm dependencies not found (strict dependencies checking)" "$LINENO" 5 | ||
23316 | fi | ||
23317 | |||
23318 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Wayland Shm rendering backend will be built" >&5 | ||
23319 | $as_echo_n "checking whether Wayland Shm rendering backend will be built... " >&6; } | ||
23320 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${have_engine}" >&5 | ||
23321 | $as_echo "${have_engine}" >&6; } | ||
23322 | |||
23323 | if test "x${have_engine}" = "xyes" ; then | ||
23324 | if test "x${want_engine}" = "xstatic" ; then | ||
23325 | have_evas_engine_wayland_shm="static" | ||
23326 | want_static_engine="yes" | ||
23327 | else | ||
23328 | have_evas_engine_wayland_shm="yes" | ||
23329 | fi | ||
23330 | fi | ||
23331 | |||
23332 | if test "x${have_engine}" = "xyes" ; then | ||
23333 | |||
23334 | $as_echo "#define BUILD_ENGINE_WAYLAND_SHM 1" >>confdefs.h | ||
23335 | |||
23336 | fi | ||
23337 | |||
23338 | if test "x${have_engine}" = "xyes"; then | ||
23339 | BUILD_ENGINE_WAYLAND_SHM_TRUE= | ||
23340 | BUILD_ENGINE_WAYLAND_SHM_FALSE='#' | ||
23341 | else | ||
23342 | BUILD_ENGINE_WAYLAND_SHM_TRUE='#' | ||
23343 | BUILD_ENGINE_WAYLAND_SHM_FALSE= | ||
23344 | fi | ||
23345 | |||
23346 | |||
23347 | if test "x${want_static_engine}" = "xyes" ; then | ||
23348 | |||
23349 | $as_echo "#define EVAS_STATIC_BUILD_WAYLAND_SHM 1" >>confdefs.h | ||
23350 | |||
23351 | have_static_module="yes" | ||
23352 | fi | ||
23353 | |||
23354 | if test "x${want_static_engine}" = "xyes"; then | ||
23355 | EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE= | ||
23356 | EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE='#' | ||
23357 | else | ||
23358 | EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE='#' | ||
23359 | EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE= | ||
23360 | fi | ||
23361 | |||
23362 | |||
23363 | |||
23364 | |||
23365 | |||
23366 | |||
23367 | |||
23368 | |||
23369 | |||
23370 | |||
23371 | want_engine="${want_evas_engine_wayland_egl}" | ||
23372 | want_static_engine="no" | ||
23373 | have_engine="no" | ||
23374 | have_evas_engine_wayland_egl="no" | ||
23375 | |||
23376 | # Check whether --enable-wayland-egl was given. | ||
23377 | if test "${enable_wayland_egl+set}" = set; then : | ||
23378 | enableval=$enable_wayland_egl; | ||
23379 | if test "x${enableval}" = "xyes" ; then | ||
23380 | want_engine="yes" | ||
23381 | else | ||
23382 | if test "x${enableval}" = "xstatic" ; then | ||
23383 | want_engine="static" | ||
23384 | else | ||
23385 | want_engine="no" | ||
23386 | fi | ||
23387 | fi | ||
23388 | |||
23389 | fi | ||
23390 | |||
23391 | |||
23392 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Wayland Egl rendering backend" >&5 | ||
23393 | $as_echo_n "checking whether to enable Wayland Egl rendering backend... " >&6; } | ||
23394 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${want_engine}" >&5 | ||
23395 | $as_echo "${want_engine}" >&6; } | ||
23396 | |||
23397 | if test "x${want_engine}" = "xyes" -o "x${want_engine}" = "xstatic" -o "x${want_engine}" = "xauto" ; then | ||
23398 | |||
23399 | |||
23400 | requirement="" | ||
23401 | have_dep="no" | ||
23402 | evas_engine_wayland_egl_cflags="" | ||
23403 | evas_engine_wayland_egl_libs="" | ||
23404 | |||
23405 | |||
23406 | pkg_failed=no | ||
23407 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for WAYLAND_EGL" >&5 | ||
23408 | $as_echo_n "checking for WAYLAND_EGL... " >&6; } | ||
23409 | |||
23410 | if test -n "$PKG_CONFIG"; then | ||
23411 | if test -n "$WAYLAND_EGL_CFLAGS"; then | ||
23412 | pkg_cv_WAYLAND_EGL_CFLAGS="$WAYLAND_EGL_CFLAGS" | ||
23413 | else | ||
23414 | if test -n "$PKG_CONFIG" && \ | ||
23415 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"egl >= 7.10 glesv2 gl wayland-client wayland-egl\""; } >&5 | ||
23416 | ($PKG_CONFIG --exists --print-errors "egl >= 7.10 glesv2 gl wayland-client wayland-egl") 2>&5 | ||
23417 | ac_status=$? | ||
23418 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
23419 | test $ac_status = 0; }; then | ||
23420 | pkg_cv_WAYLAND_EGL_CFLAGS=`$PKG_CONFIG --cflags "egl >= 7.10 glesv2 gl wayland-client wayland-egl" 2>/dev/null` | ||
23421 | else | ||
23422 | pkg_failed=yes | ||
23423 | fi | ||
23424 | fi | ||
23425 | else | ||
23426 | pkg_failed=untried | ||
23427 | fi | ||
23428 | if test -n "$PKG_CONFIG"; then | ||
23429 | if test -n "$WAYLAND_EGL_LIBS"; then | ||
23430 | pkg_cv_WAYLAND_EGL_LIBS="$WAYLAND_EGL_LIBS" | ||
23431 | else | ||
23432 | if test -n "$PKG_CONFIG" && \ | ||
23433 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"egl >= 7.10 glesv2 gl wayland-client wayland-egl\""; } >&5 | ||
23434 | ($PKG_CONFIG --exists --print-errors "egl >= 7.10 glesv2 gl wayland-client wayland-egl") 2>&5 | ||
23435 | ac_status=$? | ||
23436 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
23437 | test $ac_status = 0; }; then | ||
23438 | pkg_cv_WAYLAND_EGL_LIBS=`$PKG_CONFIG --libs "egl >= 7.10 glesv2 gl wayland-client wayland-egl" 2>/dev/null` | ||
23439 | else | ||
23440 | pkg_failed=yes | ||
23441 | fi | ||
23442 | fi | ||
23443 | else | ||
23444 | pkg_failed=untried | ||
23445 | fi | ||
23446 | |||
23447 | |||
23448 | |||
23449 | if test $pkg_failed = yes; then | ||
23450 | |||
23451 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | ||
23452 | _pkg_short_errors_supported=yes | ||
23453 | else | ||
23454 | _pkg_short_errors_supported=no | ||
23455 | fi | ||
23456 | if test $_pkg_short_errors_supported = yes; then | ||
23457 | WAYLAND_EGL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "egl >= 7.10 glesv2 gl wayland-client wayland-egl"` | ||
23458 | else | ||
23459 | WAYLAND_EGL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "egl >= 7.10 glesv2 gl wayland-client wayland-egl"` | ||
23460 | fi | ||
23461 | # Put the nasty error message in config.log where it belongs | ||
23462 | echo "$WAYLAND_EGL_PKG_ERRORS" >&5 | ||
23463 | |||
23464 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
23465 | $as_echo "no" >&6; } | ||
23466 | |||
23467 | have_dep="no" | ||
23468 | |||
23469 | |||
23470 | elif test $pkg_failed = untried; then | ||
23471 | |||
23472 | have_dep="no" | ||
23473 | |||
23474 | |||
23475 | else | ||
23476 | WAYLAND_EGL_CFLAGS=$pkg_cv_WAYLAND_EGL_CFLAGS | ||
23477 | WAYLAND_EGL_LIBS=$pkg_cv_WAYLAND_EGL_LIBS | ||
23478 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
23479 | $as_echo "yes" >&6; } | ||
23480 | |||
23481 | have_dep="yes" | ||
23482 | requirement="egl >= 7.10 glesv2 gl wayland-client wayland-egl" | ||
23483 | evas_engine_wayland_egl_cflags="${WAYLAND_EGL_CFLAGS}" | ||
23484 | evas_engine_wayland_egl_libs="${WAYLAND_EGL_LIBS}" | ||
23485 | |||
23486 | fi | ||
23487 | |||
23488 | if test "x${have_dep}" = "xyes" ; then | ||
23489 | |||
23490 | pkg_failed=no | ||
23491 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 | ||
23492 | $as_echo_n "checking for GL_EET... " >&6; } | ||
23493 | |||
23494 | if test -n "$PKG_CONFIG"; then | ||
23495 | if test -n "$GL_EET_CFLAGS"; then | ||
23496 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" | ||
23497 | else | ||
23498 | if test -n "$PKG_CONFIG" && \ | ||
23499 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | ||
23500 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | ||
23501 | ac_status=$? | ||
23502 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
23503 | test $ac_status = 0; }; then | ||
23504 | pkg_cv_GL_EET_CFLAGS=`$PKG_CONFIG --cflags "eet >= 1.5.0" 2>/dev/null` | ||
23505 | else | ||
23506 | pkg_failed=yes | ||
23507 | fi | ||
23508 | fi | ||
23509 | else | ||
23510 | pkg_failed=untried | ||
23511 | fi | ||
23512 | if test -n "$PKG_CONFIG"; then | ||
23513 | if test -n "$GL_EET_LIBS"; then | ||
23514 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" | ||
23515 | else | ||
23516 | if test -n "$PKG_CONFIG" && \ | ||
23517 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | ||
23518 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | ||
23519 | ac_status=$? | ||
23520 | $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 | ||
23521 | test $ac_status = 0; }; then | ||
23522 | pkg_cv_GL_EET_LIBS=`$PKG_CONFIG --libs "eet >= 1.5.0" 2>/dev/null` | ||
23523 | else | ||
23524 | pkg_failed=yes | ||
23525 | fi | ||
23526 | fi | ||
23527 | else | ||
23528 | pkg_failed=untried | ||
23529 | fi | ||
23530 | |||
23531 | |||
23532 | |||
23533 | if test $pkg_failed = yes; then | ||
23534 | |||
23535 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | ||
23536 | _pkg_short_errors_supported=yes | ||
23537 | else | ||
23538 | _pkg_short_errors_supported=no | ||
23539 | fi | ||
23540 | if test $_pkg_short_errors_supported = yes; then | ||
23541 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` | ||
23542 | else | ||
23543 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` | ||
23544 | fi | ||
23545 | # Put the nasty error message in config.log where it belongs | ||
23546 | echo "$GL_EET_PKG_ERRORS" >&5 | ||
23547 | |||
23548 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
23549 | $as_echo "no" >&6; } | ||
23550 | have_dep="no" | ||
23551 | elif test $pkg_failed = untried; then | ||
23552 | have_dep="no" | ||
23553 | else | ||
23554 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS | ||
23555 | GL_EET_LIBS=$pkg_cv_GL_EET_LIBS | ||
23556 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
23557 | $as_echo "yes" >&6; } | ||
23558 | have_dep="yes" | ||
23559 | fi | ||
23560 | ac_fn_c_check_header_compile "$LINENO" "GLES2/gl2.h" "ac_cv_header_GLES2_gl2_h" " | ||
23561 | |||
23562 | " | ||
23563 | if test "x$ac_cv_header_GLES2_gl2_h" = x""yes; then : | ||
23564 | have_egl="yes" | ||
23565 | else | ||
23566 | have_egl="no" | ||
23567 | fi | ||
23568 | |||
23569 | |||
23570 | if test "x${have_egl}" = "xyes" ; then | ||
23571 | evas_engine_wayland_egl_cflags="${WAYLAND_EGL_CFLAGS}" | ||
23572 | evas_engine_wayland_egl_libs="${WAYLAND_EGL_LIBS} -lGL -lGLESv2 -lEGL" | ||
23573 | fi | ||
23574 | fi | ||
23575 | |||
23576 | |||
23577 | |||
23578 | |||
23579 | if test "x${want_engine}" = "xstatic" ; then | ||
23580 | requirement_evas="${requirement} ${requirement_evas}" | ||
23581 | fi | ||
23582 | |||
23583 | if test "x${have_dep}" = "xyes" ; then | ||
23584 | have_engine="yes" | ||
23585 | else | ||
23586 | have_engine="no" | ||
23587 | fi | ||
23588 | |||
23589 | |||
23590 | fi | ||
23591 | |||
23592 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | ||
23593 | as_fn_error "Wayland Egl dependencies not found (strict dependencies checking)" "$LINENO" 5 | ||
23594 | fi | ||
23595 | |||
23596 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Wayland Egl rendering backend will be built" >&5 | ||
23597 | $as_echo_n "checking whether Wayland Egl rendering backend will be built... " >&6; } | ||
23598 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${have_engine}" >&5 | ||
23599 | $as_echo "${have_engine}" >&6; } | ||
23600 | |||
23601 | if test "x${have_engine}" = "xyes" ; then | ||
23602 | if test "x${want_engine}" = "xstatic" ; then | ||
23603 | have_evas_engine_wayland_egl="static" | ||
23604 | want_static_engine="yes" | ||
23605 | else | ||
23606 | have_evas_engine_wayland_egl="yes" | ||
23607 | fi | ||
23608 | fi | ||
23609 | |||
23610 | if test "x${have_engine}" = "xyes" ; then | ||
23611 | |||
23612 | $as_echo "#define BUILD_ENGINE_WAYLAND_EGL 1" >>confdefs.h | ||
23613 | |||
23614 | fi | ||
23615 | |||
23616 | if test "x${have_engine}" = "xyes"; then | ||
23617 | BUILD_ENGINE_WAYLAND_EGL_TRUE= | ||
23618 | BUILD_ENGINE_WAYLAND_EGL_FALSE='#' | ||
23619 | else | ||
23620 | BUILD_ENGINE_WAYLAND_EGL_TRUE='#' | ||
23621 | BUILD_ENGINE_WAYLAND_EGL_FALSE= | ||
23622 | fi | ||
23623 | |||
23624 | |||
23625 | if test "x${want_static_engine}" = "xyes" ; then | ||
23626 | |||
23627 | $as_echo "#define EVAS_STATIC_BUILD_WAYLAND_EGL 1" >>confdefs.h | ||
23628 | |||
23629 | have_static_module="yes" | ||
23630 | fi | ||
23631 | |||
23632 | if test "x${want_static_engine}" = "xyes"; then | ||
23633 | EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE= | ||
23634 | EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE='#' | ||
23635 | else | ||
23636 | EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE='#' | ||
23637 | EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE= | ||
23638 | fi | ||
23639 | |||
23640 | |||
23641 | |||
23642 | |||
23643 | |||
23644 | |||
23645 | |||
23131 | # SDL primitive | 23646 | # SDL primitive |
23132 | sdl_primitive="no" | 23647 | sdl_primitive="no" |
23133 | 23648 | ||
@@ -23241,10 +23756,11 @@ pkg_failed=no | |||
23241 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XCB" >&5 | 23756 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XCB" >&5 |
23242 | $as_echo_n "checking for XCB... " >&6; } | 23757 | $as_echo_n "checking for XCB... " >&6; } |
23243 | 23758 | ||
23244 | if test -n "$XCB_CFLAGS"; then | 23759 | if test -n "$PKG_CONFIG"; then |
23245 | pkg_cv_XCB_CFLAGS="$XCB_CFLAGS" | 23760 | if test -n "$XCB_CFLAGS"; then |
23246 | elif test -n "$PKG_CONFIG"; then | 23761 | pkg_cv_XCB_CFLAGS="$XCB_CFLAGS" |
23247 | if test -n "$PKG_CONFIG" && \ | 23762 | else |
23763 | if test -n "$PKG_CONFIG" && \ | ||
23248 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 | 23764 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 |
23249 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 | 23765 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 |
23250 | ac_status=$? | 23766 | ac_status=$? |
@@ -23254,13 +23770,15 @@ if test -n "$XCB_CFLAGS"; then | |||
23254 | else | 23770 | else |
23255 | pkg_failed=yes | 23771 | pkg_failed=yes |
23256 | fi | 23772 | fi |
23257 | else | 23773 | fi |
23258 | pkg_failed=untried | 23774 | else |
23775 | pkg_failed=untried | ||
23259 | fi | 23776 | fi |
23260 | if test -n "$XCB_LIBS"; then | 23777 | if test -n "$PKG_CONFIG"; then |
23261 | pkg_cv_XCB_LIBS="$XCB_LIBS" | 23778 | if test -n "$XCB_LIBS"; then |
23262 | elif test -n "$PKG_CONFIG"; then | 23779 | pkg_cv_XCB_LIBS="$XCB_LIBS" |
23263 | if test -n "$PKG_CONFIG" && \ | 23780 | else |
23781 | if test -n "$PKG_CONFIG" && \ | ||
23264 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 | 23782 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xcb xcb-shm xcb-image >= 0.2.1 pixman-1\""; } >&5 |
23265 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 | 23783 | ($PKG_CONFIG --exists --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1") 2>&5 |
23266 | ac_status=$? | 23784 | ac_status=$? |
@@ -23270,15 +23788,14 @@ if test -n "$XCB_LIBS"; then | |||
23270 | else | 23788 | else |
23271 | pkg_failed=yes | 23789 | pkg_failed=yes |
23272 | fi | 23790 | fi |
23273 | else | 23791 | fi |
23274 | pkg_failed=untried | 23792 | else |
23793 | pkg_failed=untried | ||
23275 | fi | 23794 | fi |
23276 | 23795 | ||
23277 | 23796 | ||
23278 | 23797 | ||
23279 | if test $pkg_failed = yes; then | 23798 | if test $pkg_failed = yes; then |
23280 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
23281 | $as_echo "no" >&6; } | ||
23282 | 23799 | ||
23283 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 23800 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
23284 | _pkg_short_errors_supported=yes | 23801 | _pkg_short_errors_supported=yes |
@@ -23286,20 +23803,20 @@ else | |||
23286 | _pkg_short_errors_supported=no | 23803 | _pkg_short_errors_supported=no |
23287 | fi | 23804 | fi |
23288 | if test $_pkg_short_errors_supported = yes; then | 23805 | if test $_pkg_short_errors_supported = yes; then |
23289 | XCB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1" 2>&1` | 23806 | XCB_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1"` |
23290 | else | 23807 | else |
23291 | XCB_PKG_ERRORS=`$PKG_CONFIG --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1" 2>&1` | 23808 | XCB_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xcb xcb-shm xcb-image >= 0.2.1 pixman-1"` |
23292 | fi | 23809 | fi |
23293 | # Put the nasty error message in config.log where it belongs | 23810 | # Put the nasty error message in config.log where it belongs |
23294 | echo "$XCB_PKG_ERRORS" >&5 | 23811 | echo "$XCB_PKG_ERRORS" >&5 |
23295 | 23812 | ||
23813 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
23814 | $as_echo "no" >&6; } | ||
23296 | 23815 | ||
23297 | have_dep="no" | 23816 | have_dep="no" |
23298 | 23817 | ||
23299 | 23818 | ||
23300 | elif test $pkg_failed = untried; then | 23819 | elif test $pkg_failed = untried; then |
23301 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
23302 | $as_echo "no" >&6; } | ||
23303 | 23820 | ||
23304 | have_dep="no" | 23821 | have_dep="no" |
23305 | 23822 | ||
@@ -23334,7 +23851,7 @@ fi | |||
23334 | fi | 23851 | fi |
23335 | 23852 | ||
23336 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 23853 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
23337 | as_fn_error $? "Software XCB dependencies not found (strict dependencies checking)" "$LINENO" 5 | 23854 | as_fn_error "Software XCB dependencies not found (strict dependencies checking)" "$LINENO" 5 |
23338 | fi | 23855 | fi |
23339 | 23856 | ||
23340 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software XCB rendering backend will be built" >&5 | 23857 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software XCB rendering backend will be built" >&5 |
@@ -23460,7 +23977,7 @@ if test "x$with_x" = xno; then | |||
23460 | have_x=disabled | 23977 | have_x=disabled |
23461 | else | 23978 | else |
23462 | case $x_includes,$x_libraries in #( | 23979 | case $x_includes,$x_libraries in #( |
23463 | *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5 ;; #( | 23980 | *\'*) as_fn_error "cannot use X directory names containing '" "$LINENO" 5;; #( |
23464 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : | 23981 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : |
23465 | $as_echo_n "(cached) " >&6 | 23982 | $as_echo_n "(cached) " >&6 |
23466 | else | 23983 | else |
@@ -23478,7 +23995,7 @@ libdir: | |||
23478 | @echo libdir='${LIBDIR}' | 23995 | @echo libdir='${LIBDIR}' |
23479 | _ACEOF | 23996 | _ACEOF |
23480 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then | 23997 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then |
23481 | # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. | 23998 | # GNU make sometimes prints "make[1]: Entering...", which would confuse us. |
23482 | for ac_var in incroot usrlibdir libdir; do | 23999 | for ac_var in incroot usrlibdir libdir; do |
23483 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" | 24000 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" |
23484 | done | 24001 | done |
@@ -23564,7 +24081,7 @@ else | |||
23564 | fi | 24081 | fi |
23565 | done | 24082 | done |
23566 | fi | 24083 | fi |
23567 | rm -f conftest.err conftest.i conftest.$ac_ext | 24084 | rm -f conftest.err conftest.$ac_ext |
23568 | fi # $ac_x_includes = no | 24085 | fi # $ac_x_includes = no |
23569 | 24086 | ||
23570 | if test "$ac_x_libraries" = no; then | 24087 | if test "$ac_x_libraries" = no; then |
@@ -24251,7 +24768,7 @@ fi | |||
24251 | fi | 24768 | fi |
24252 | 24769 | ||
24253 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 24770 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
24254 | as_fn_error $? "Software Xlib dependencies not found (strict dependencies checking)" "$LINENO" 5 | 24771 | as_fn_error "Software Xlib dependencies not found (strict dependencies checking)" "$LINENO" 5 |
24255 | fi | 24772 | fi |
24256 | 24773 | ||
24257 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software Xlib rendering backend will be built" >&5 | 24774 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Software Xlib rendering backend will be built" >&5 |
@@ -24451,7 +24968,7 @@ if test "x$with_x" = xno; then | |||
24451 | have_x=disabled | 24968 | have_x=disabled |
24452 | else | 24969 | else |
24453 | case $x_includes,$x_libraries in #( | 24970 | case $x_includes,$x_libraries in #( |
24454 | *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5 ;; #( | 24971 | *\'*) as_fn_error "cannot use X directory names containing '" "$LINENO" 5;; #( |
24455 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : | 24972 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : |
24456 | $as_echo_n "(cached) " >&6 | 24973 | $as_echo_n "(cached) " >&6 |
24457 | else | 24974 | else |
@@ -24469,7 +24986,7 @@ libdir: | |||
24469 | @echo libdir='${LIBDIR}' | 24986 | @echo libdir='${LIBDIR}' |
24470 | _ACEOF | 24987 | _ACEOF |
24471 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then | 24988 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then |
24472 | # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. | 24989 | # GNU make sometimes prints "make[1]: Entering...", which would confuse us. |
24473 | for ac_var in incroot usrlibdir libdir; do | 24990 | for ac_var in incroot usrlibdir libdir; do |
24474 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" | 24991 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" |
24475 | done | 24992 | done |
@@ -24555,7 +25072,7 @@ else | |||
24555 | fi | 25072 | fi |
24556 | done | 25073 | done |
24557 | fi | 25074 | fi |
24558 | rm -f conftest.err conftest.i conftest.$ac_ext | 25075 | rm -f conftest.err conftest.$ac_ext |
24559 | fi # $ac_x_includes = no | 25076 | fi # $ac_x_includes = no |
24560 | 25077 | ||
24561 | if test "$ac_x_libraries" = no; then | 25078 | if test "$ac_x_libraries" = no; then |
@@ -25314,10 +25831,11 @@ pkg_failed=no | |||
25314 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XCB_GL" >&5 | 25831 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XCB_GL" >&5 |
25315 | $as_echo_n "checking for XCB_GL... " >&6; } | 25832 | $as_echo_n "checking for XCB_GL... " >&6; } |
25316 | 25833 | ||
25317 | if test -n "$XCB_GL_CFLAGS"; then | 25834 | if test -n "$PKG_CONFIG"; then |
25318 | pkg_cv_XCB_GL_CFLAGS="$XCB_GL_CFLAGS" | 25835 | if test -n "$XCB_GL_CFLAGS"; then |
25319 | elif test -n "$PKG_CONFIG"; then | 25836 | pkg_cv_XCB_GL_CFLAGS="$XCB_GL_CFLAGS" |
25320 | if test -n "$PKG_CONFIG" && \ | 25837 | else |
25838 | if test -n "$PKG_CONFIG" && \ | ||
25321 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11-xcb xcb xcb-glx xcb-render xcb-renderutil\""; } >&5 | 25839 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11-xcb xcb xcb-glx xcb-render xcb-renderutil\""; } >&5 |
25322 | ($PKG_CONFIG --exists --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil") 2>&5 | 25840 | ($PKG_CONFIG --exists --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil") 2>&5 |
25323 | ac_status=$? | 25841 | ac_status=$? |
@@ -25327,13 +25845,15 @@ if test -n "$XCB_GL_CFLAGS"; then | |||
25327 | else | 25845 | else |
25328 | pkg_failed=yes | 25846 | pkg_failed=yes |
25329 | fi | 25847 | fi |
25330 | else | 25848 | fi |
25331 | pkg_failed=untried | 25849 | else |
25850 | pkg_failed=untried | ||
25332 | fi | 25851 | fi |
25333 | if test -n "$XCB_GL_LIBS"; then | 25852 | if test -n "$PKG_CONFIG"; then |
25334 | pkg_cv_XCB_GL_LIBS="$XCB_GL_LIBS" | 25853 | if test -n "$XCB_GL_LIBS"; then |
25335 | elif test -n "$PKG_CONFIG"; then | 25854 | pkg_cv_XCB_GL_LIBS="$XCB_GL_LIBS" |
25336 | if test -n "$PKG_CONFIG" && \ | 25855 | else |
25856 | if test -n "$PKG_CONFIG" && \ | ||
25337 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11-xcb xcb xcb-glx xcb-render xcb-renderutil\""; } >&5 | 25857 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"x11-xcb xcb xcb-glx xcb-render xcb-renderutil\""; } >&5 |
25338 | ($PKG_CONFIG --exists --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil") 2>&5 | 25858 | ($PKG_CONFIG --exists --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil") 2>&5 |
25339 | ac_status=$? | 25859 | ac_status=$? |
@@ -25343,15 +25863,14 @@ if test -n "$XCB_GL_LIBS"; then | |||
25343 | else | 25863 | else |
25344 | pkg_failed=yes | 25864 | pkg_failed=yes |
25345 | fi | 25865 | fi |
25346 | else | 25866 | fi |
25347 | pkg_failed=untried | 25867 | else |
25868 | pkg_failed=untried | ||
25348 | fi | 25869 | fi |
25349 | 25870 | ||
25350 | 25871 | ||
25351 | 25872 | ||
25352 | if test $pkg_failed = yes; then | 25873 | if test $pkg_failed = yes; then |
25353 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
25354 | $as_echo "no" >&6; } | ||
25355 | 25874 | ||
25356 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 25875 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
25357 | _pkg_short_errors_supported=yes | 25876 | _pkg_short_errors_supported=yes |
@@ -25359,20 +25878,20 @@ else | |||
25359 | _pkg_short_errors_supported=no | 25878 | _pkg_short_errors_supported=no |
25360 | fi | 25879 | fi |
25361 | if test $_pkg_short_errors_supported = yes; then | 25880 | if test $_pkg_short_errors_supported = yes; then |
25362 | XCB_GL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil" 2>&1` | 25881 | XCB_GL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil"` |
25363 | else | 25882 | else |
25364 | XCB_GL_PKG_ERRORS=`$PKG_CONFIG --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil" 2>&1` | 25883 | XCB_GL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "x11-xcb xcb xcb-glx xcb-render xcb-renderutil"` |
25365 | fi | 25884 | fi |
25366 | # Put the nasty error message in config.log where it belongs | 25885 | # Put the nasty error message in config.log where it belongs |
25367 | echo "$XCB_GL_PKG_ERRORS" >&5 | 25886 | echo "$XCB_GL_PKG_ERRORS" >&5 |
25368 | 25887 | ||
25888 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
25889 | $as_echo "no" >&6; } | ||
25369 | 25890 | ||
25370 | have_dep="no" | 25891 | have_dep="no" |
25371 | 25892 | ||
25372 | 25893 | ||
25373 | elif test $pkg_failed = untried; then | 25894 | elif test $pkg_failed = untried; then |
25374 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
25375 | $as_echo "no" >&6; } | ||
25376 | 25895 | ||
25377 | have_dep="no" | 25896 | have_dep="no" |
25378 | 25897 | ||
@@ -25400,10 +25919,11 @@ pkg_failed=no | |||
25400 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 | 25919 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 |
25401 | $as_echo_n "checking for GL_EET... " >&6; } | 25920 | $as_echo_n "checking for GL_EET... " >&6; } |
25402 | 25921 | ||
25403 | if test -n "$GL_EET_CFLAGS"; then | 25922 | if test -n "$PKG_CONFIG"; then |
25404 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" | 25923 | if test -n "$GL_EET_CFLAGS"; then |
25405 | elif test -n "$PKG_CONFIG"; then | 25924 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" |
25406 | if test -n "$PKG_CONFIG" && \ | 25925 | else |
25926 | if test -n "$PKG_CONFIG" && \ | ||
25407 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 25927 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
25408 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 25928 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
25409 | ac_status=$? | 25929 | ac_status=$? |
@@ -25413,13 +25933,15 @@ if test -n "$GL_EET_CFLAGS"; then | |||
25413 | else | 25933 | else |
25414 | pkg_failed=yes | 25934 | pkg_failed=yes |
25415 | fi | 25935 | fi |
25416 | else | 25936 | fi |
25417 | pkg_failed=untried | 25937 | else |
25938 | pkg_failed=untried | ||
25418 | fi | 25939 | fi |
25419 | if test -n "$GL_EET_LIBS"; then | 25940 | if test -n "$PKG_CONFIG"; then |
25420 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" | 25941 | if test -n "$GL_EET_LIBS"; then |
25421 | elif test -n "$PKG_CONFIG"; then | 25942 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" |
25422 | if test -n "$PKG_CONFIG" && \ | 25943 | else |
25944 | if test -n "$PKG_CONFIG" && \ | ||
25423 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 25945 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
25424 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 25946 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
25425 | ac_status=$? | 25947 | ac_status=$? |
@@ -25429,15 +25951,14 @@ if test -n "$GL_EET_LIBS"; then | |||
25429 | else | 25951 | else |
25430 | pkg_failed=yes | 25952 | pkg_failed=yes |
25431 | fi | 25953 | fi |
25432 | else | 25954 | fi |
25433 | pkg_failed=untried | 25955 | else |
25956 | pkg_failed=untried | ||
25434 | fi | 25957 | fi |
25435 | 25958 | ||
25436 | 25959 | ||
25437 | 25960 | ||
25438 | if test $pkg_failed = yes; then | 25961 | if test $pkg_failed = yes; then |
25439 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
25440 | $as_echo "no" >&6; } | ||
25441 | 25962 | ||
25442 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 25963 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
25443 | _pkg_short_errors_supported=yes | 25964 | _pkg_short_errors_supported=yes |
@@ -25445,17 +25966,17 @@ else | |||
25445 | _pkg_short_errors_supported=no | 25966 | _pkg_short_errors_supported=no |
25446 | fi | 25967 | fi |
25447 | if test $_pkg_short_errors_supported = yes; then | 25968 | if test $_pkg_short_errors_supported = yes; then |
25448 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eet >= 1.5.0" 2>&1` | 25969 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` |
25449 | else | 25970 | else |
25450 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --print-errors "eet >= 1.5.0" 2>&1` | 25971 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` |
25451 | fi | 25972 | fi |
25452 | # Put the nasty error message in config.log where it belongs | 25973 | # Put the nasty error message in config.log where it belongs |
25453 | echo "$GL_EET_PKG_ERRORS" >&5 | 25974 | echo "$GL_EET_PKG_ERRORS" >&5 |
25454 | 25975 | ||
25455 | have_dep="no" | 25976 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
25456 | elif test $pkg_failed = untried; then | ||
25457 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
25458 | $as_echo "no" >&6; } | 25977 | $as_echo "no" >&6; } |
25978 | have_dep="no" | ||
25979 | elif test $pkg_failed = untried; then | ||
25459 | have_dep="no" | 25980 | have_dep="no" |
25460 | else | 25981 | else |
25461 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS | 25982 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS |
@@ -25544,10 +26065,11 @@ pkg_failed=no | |||
25544 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 | 26065 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 |
25545 | $as_echo_n "checking for GL_EET... " >&6; } | 26066 | $as_echo_n "checking for GL_EET... " >&6; } |
25546 | 26067 | ||
25547 | if test -n "$GL_EET_CFLAGS"; then | 26068 | if test -n "$PKG_CONFIG"; then |
25548 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" | 26069 | if test -n "$GL_EET_CFLAGS"; then |
25549 | elif test -n "$PKG_CONFIG"; then | 26070 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" |
25550 | if test -n "$PKG_CONFIG" && \ | 26071 | else |
26072 | if test -n "$PKG_CONFIG" && \ | ||
25551 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 26073 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
25552 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 26074 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
25553 | ac_status=$? | 26075 | ac_status=$? |
@@ -25557,13 +26079,15 @@ if test -n "$GL_EET_CFLAGS"; then | |||
25557 | else | 26079 | else |
25558 | pkg_failed=yes | 26080 | pkg_failed=yes |
25559 | fi | 26081 | fi |
25560 | else | 26082 | fi |
25561 | pkg_failed=untried | 26083 | else |
26084 | pkg_failed=untried | ||
25562 | fi | 26085 | fi |
25563 | if test -n "$GL_EET_LIBS"; then | 26086 | if test -n "$PKG_CONFIG"; then |
25564 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" | 26087 | if test -n "$GL_EET_LIBS"; then |
25565 | elif test -n "$PKG_CONFIG"; then | 26088 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" |
25566 | if test -n "$PKG_CONFIG" && \ | 26089 | else |
26090 | if test -n "$PKG_CONFIG" && \ | ||
25567 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 26091 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
25568 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 26092 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
25569 | ac_status=$? | 26093 | ac_status=$? |
@@ -25573,15 +26097,14 @@ if test -n "$GL_EET_LIBS"; then | |||
25573 | else | 26097 | else |
25574 | pkg_failed=yes | 26098 | pkg_failed=yes |
25575 | fi | 26099 | fi |
25576 | else | 26100 | fi |
25577 | pkg_failed=untried | 26101 | else |
26102 | pkg_failed=untried | ||
25578 | fi | 26103 | fi |
25579 | 26104 | ||
25580 | 26105 | ||
25581 | 26106 | ||
25582 | if test $pkg_failed = yes; then | 26107 | if test $pkg_failed = yes; then |
25583 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
25584 | $as_echo "no" >&6; } | ||
25585 | 26108 | ||
25586 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 26109 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
25587 | _pkg_short_errors_supported=yes | 26110 | _pkg_short_errors_supported=yes |
@@ -25589,17 +26112,17 @@ else | |||
25589 | _pkg_short_errors_supported=no | 26112 | _pkg_short_errors_supported=no |
25590 | fi | 26113 | fi |
25591 | if test $_pkg_short_errors_supported = yes; then | 26114 | if test $_pkg_short_errors_supported = yes; then |
25592 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eet >= 1.5.0" 2>&1` | 26115 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` |
25593 | else | 26116 | else |
25594 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --print-errors "eet >= 1.5.0" 2>&1` | 26117 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` |
25595 | fi | 26118 | fi |
25596 | # Put the nasty error message in config.log where it belongs | 26119 | # Put the nasty error message in config.log where it belongs |
25597 | echo "$GL_EET_PKG_ERRORS" >&5 | 26120 | echo "$GL_EET_PKG_ERRORS" >&5 |
25598 | 26121 | ||
25599 | have_dep="no" | 26122 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
25600 | elif test $pkg_failed = untried; then | ||
25601 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
25602 | $as_echo "no" >&6; } | 26123 | $as_echo "no" >&6; } |
26124 | have_dep="no" | ||
26125 | elif test $pkg_failed = untried; then | ||
25603 | have_dep="no" | 26126 | have_dep="no" |
25604 | else | 26127 | else |
25605 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS | 26128 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS |
@@ -25636,7 +26159,7 @@ fi | |||
25636 | fi | 26159 | fi |
25637 | 26160 | ||
25638 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 26161 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
25639 | as_fn_error $? "OpenGL XCB dependencies not found (strict dependencies checking)" "$LINENO" 5 | 26162 | as_fn_error "OpenGL XCB dependencies not found (strict dependencies checking)" "$LINENO" 5 |
25640 | fi | 26163 | fi |
25641 | 26164 | ||
25642 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL XCB rendering backend will be built" >&5 | 26165 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL XCB rendering backend will be built" >&5 |
@@ -25763,7 +26286,7 @@ if test "x$with_x" = xno; then | |||
25763 | have_x=disabled | 26286 | have_x=disabled |
25764 | else | 26287 | else |
25765 | case $x_includes,$x_libraries in #( | 26288 | case $x_includes,$x_libraries in #( |
25766 | *\'*) as_fn_error $? "cannot use X directory names containing '" "$LINENO" 5 ;; #( | 26289 | *\'*) as_fn_error "cannot use X directory names containing '" "$LINENO" 5;; #( |
25767 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : | 26290 | *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then : |
25768 | $as_echo_n "(cached) " >&6 | 26291 | $as_echo_n "(cached) " >&6 |
25769 | else | 26292 | else |
@@ -25781,7 +26304,7 @@ libdir: | |||
25781 | @echo libdir='${LIBDIR}' | 26304 | @echo libdir='${LIBDIR}' |
25782 | _ACEOF | 26305 | _ACEOF |
25783 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then | 26306 | if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then |
25784 | # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. | 26307 | # GNU make sometimes prints "make[1]: Entering...", which would confuse us. |
25785 | for ac_var in incroot usrlibdir libdir; do | 26308 | for ac_var in incroot usrlibdir libdir; do |
25786 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" | 26309 | eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" |
25787 | done | 26310 | done |
@@ -25867,7 +26390,7 @@ else | |||
25867 | fi | 26390 | fi |
25868 | done | 26391 | done |
25869 | fi | 26392 | fi |
25870 | rm -f conftest.err conftest.i conftest.$ac_ext | 26393 | rm -f conftest.err conftest.$ac_ext |
25871 | fi # $ac_x_includes = no | 26394 | fi # $ac_x_includes = no |
25872 | 26395 | ||
25873 | if test "$ac_x_libraries" = no; then | 26396 | if test "$ac_x_libraries" = no; then |
@@ -26636,10 +27159,11 @@ pkg_failed=no | |||
26636 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 | 27159 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 |
26637 | $as_echo_n "checking for GL_EET... " >&6; } | 27160 | $as_echo_n "checking for GL_EET... " >&6; } |
26638 | 27161 | ||
26639 | if test -n "$GL_EET_CFLAGS"; then | 27162 | if test -n "$PKG_CONFIG"; then |
26640 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" | 27163 | if test -n "$GL_EET_CFLAGS"; then |
26641 | elif test -n "$PKG_CONFIG"; then | 27164 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" |
26642 | if test -n "$PKG_CONFIG" && \ | 27165 | else |
27166 | if test -n "$PKG_CONFIG" && \ | ||
26643 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 27167 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
26644 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 27168 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
26645 | ac_status=$? | 27169 | ac_status=$? |
@@ -26649,13 +27173,15 @@ if test -n "$GL_EET_CFLAGS"; then | |||
26649 | else | 27173 | else |
26650 | pkg_failed=yes | 27174 | pkg_failed=yes |
26651 | fi | 27175 | fi |
26652 | else | 27176 | fi |
26653 | pkg_failed=untried | 27177 | else |
27178 | pkg_failed=untried | ||
26654 | fi | 27179 | fi |
26655 | if test -n "$GL_EET_LIBS"; then | 27180 | if test -n "$PKG_CONFIG"; then |
26656 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" | 27181 | if test -n "$GL_EET_LIBS"; then |
26657 | elif test -n "$PKG_CONFIG"; then | 27182 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" |
26658 | if test -n "$PKG_CONFIG" && \ | 27183 | else |
27184 | if test -n "$PKG_CONFIG" && \ | ||
26659 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 27185 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
26660 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 27186 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
26661 | ac_status=$? | 27187 | ac_status=$? |
@@ -26665,15 +27191,14 @@ if test -n "$GL_EET_LIBS"; then | |||
26665 | else | 27191 | else |
26666 | pkg_failed=yes | 27192 | pkg_failed=yes |
26667 | fi | 27193 | fi |
26668 | else | 27194 | fi |
26669 | pkg_failed=untried | 27195 | else |
27196 | pkg_failed=untried | ||
26670 | fi | 27197 | fi |
26671 | 27198 | ||
26672 | 27199 | ||
26673 | 27200 | ||
26674 | if test $pkg_failed = yes; then | 27201 | if test $pkg_failed = yes; then |
26675 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
26676 | $as_echo "no" >&6; } | ||
26677 | 27202 | ||
26678 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 27203 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
26679 | _pkg_short_errors_supported=yes | 27204 | _pkg_short_errors_supported=yes |
@@ -26681,17 +27206,17 @@ else | |||
26681 | _pkg_short_errors_supported=no | 27206 | _pkg_short_errors_supported=no |
26682 | fi | 27207 | fi |
26683 | if test $_pkg_short_errors_supported = yes; then | 27208 | if test $_pkg_short_errors_supported = yes; then |
26684 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eet >= 1.5.0" 2>&1` | 27209 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` |
26685 | else | 27210 | else |
26686 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --print-errors "eet >= 1.5.0" 2>&1` | 27211 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` |
26687 | fi | 27212 | fi |
26688 | # Put the nasty error message in config.log where it belongs | 27213 | # Put the nasty error message in config.log where it belongs |
26689 | echo "$GL_EET_PKG_ERRORS" >&5 | 27214 | echo "$GL_EET_PKG_ERRORS" >&5 |
26690 | 27215 | ||
26691 | have_dep="no" | 27216 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
26692 | elif test $pkg_failed = untried; then | ||
26693 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
26694 | $as_echo "no" >&6; } | 27217 | $as_echo "no" >&6; } |
27218 | have_dep="no" | ||
27219 | elif test $pkg_failed = untried; then | ||
26695 | have_dep="no" | 27220 | have_dep="no" |
26696 | else | 27221 | else |
26697 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS | 27222 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS |
@@ -26785,10 +27310,11 @@ pkg_failed=no | |||
26785 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 | 27310 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GL_EET" >&5 |
26786 | $as_echo_n "checking for GL_EET... " >&6; } | 27311 | $as_echo_n "checking for GL_EET... " >&6; } |
26787 | 27312 | ||
26788 | if test -n "$GL_EET_CFLAGS"; then | 27313 | if test -n "$PKG_CONFIG"; then |
26789 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" | 27314 | if test -n "$GL_EET_CFLAGS"; then |
26790 | elif test -n "$PKG_CONFIG"; then | 27315 | pkg_cv_GL_EET_CFLAGS="$GL_EET_CFLAGS" |
26791 | if test -n "$PKG_CONFIG" && \ | 27316 | else |
27317 | if test -n "$PKG_CONFIG" && \ | ||
26792 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 27318 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
26793 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 27319 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
26794 | ac_status=$? | 27320 | ac_status=$? |
@@ -26798,13 +27324,15 @@ if test -n "$GL_EET_CFLAGS"; then | |||
26798 | else | 27324 | else |
26799 | pkg_failed=yes | 27325 | pkg_failed=yes |
26800 | fi | 27326 | fi |
26801 | else | 27327 | fi |
26802 | pkg_failed=untried | 27328 | else |
27329 | pkg_failed=untried | ||
26803 | fi | 27330 | fi |
26804 | if test -n "$GL_EET_LIBS"; then | 27331 | if test -n "$PKG_CONFIG"; then |
26805 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" | 27332 | if test -n "$GL_EET_LIBS"; then |
26806 | elif test -n "$PKG_CONFIG"; then | 27333 | pkg_cv_GL_EET_LIBS="$GL_EET_LIBS" |
26807 | if test -n "$PKG_CONFIG" && \ | 27334 | else |
27335 | if test -n "$PKG_CONFIG" && \ | ||
26808 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 27336 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
26809 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 27337 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
26810 | ac_status=$? | 27338 | ac_status=$? |
@@ -26814,15 +27342,14 @@ if test -n "$GL_EET_LIBS"; then | |||
26814 | else | 27342 | else |
26815 | pkg_failed=yes | 27343 | pkg_failed=yes |
26816 | fi | 27344 | fi |
26817 | else | 27345 | fi |
26818 | pkg_failed=untried | 27346 | else |
27347 | pkg_failed=untried | ||
26819 | fi | 27348 | fi |
26820 | 27349 | ||
26821 | 27350 | ||
26822 | 27351 | ||
26823 | if test $pkg_failed = yes; then | 27352 | if test $pkg_failed = yes; then |
26824 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
26825 | $as_echo "no" >&6; } | ||
26826 | 27353 | ||
26827 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 27354 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
26828 | _pkg_short_errors_supported=yes | 27355 | _pkg_short_errors_supported=yes |
@@ -26830,17 +27357,17 @@ else | |||
26830 | _pkg_short_errors_supported=no | 27357 | _pkg_short_errors_supported=no |
26831 | fi | 27358 | fi |
26832 | if test $_pkg_short_errors_supported = yes; then | 27359 | if test $_pkg_short_errors_supported = yes; then |
26833 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eet >= 1.5.0" 2>&1` | 27360 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` |
26834 | else | 27361 | else |
26835 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --print-errors "eet >= 1.5.0" 2>&1` | 27362 | GL_EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` |
26836 | fi | 27363 | fi |
26837 | # Put the nasty error message in config.log where it belongs | 27364 | # Put the nasty error message in config.log where it belongs |
26838 | echo "$GL_EET_PKG_ERRORS" >&5 | 27365 | echo "$GL_EET_PKG_ERRORS" >&5 |
26839 | 27366 | ||
26840 | have_dep="no" | 27367 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
26841 | elif test $pkg_failed = untried; then | ||
26842 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
26843 | $as_echo "no" >&6; } | 27368 | $as_echo "no" >&6; } |
27369 | have_dep="no" | ||
27370 | elif test $pkg_failed = untried; then | ||
26844 | have_dep="no" | 27371 | have_dep="no" |
26845 | else | 27372 | else |
26846 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS | 27373 | GL_EET_CFLAGS=$pkg_cv_GL_EET_CFLAGS |
@@ -26878,7 +27405,7 @@ fi | |||
26878 | fi | 27405 | fi |
26879 | 27406 | ||
26880 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 27407 | if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
26881 | as_fn_error $? "OpenGL XLib dependencies not found (strict dependencies checking)" "$LINENO" 5 | 27408 | as_fn_error "OpenGL XLib dependencies not found (strict dependencies checking)" "$LINENO" 5 |
26882 | fi | 27409 | fi |
26883 | 27410 | ||
26884 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL XLib rendering backend will be built" >&5 | 27411 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether OpenGL XLib rendering backend will be built" >&5 |
@@ -27013,13 +27540,15 @@ have_static_evas_engine_gl_common="no" | |||
27013 | if test "x$have_evas_engine_gl_xlib" = "xyes" \ | 27540 | if test "x$have_evas_engine_gl_xlib" = "xyes" \ |
27014 | || test "x$have_evas_engine_gl_xcb" = "xyes" \ | 27541 | || test "x$have_evas_engine_gl_xcb" = "xyes" \ |
27015 | || test "x$have_evas_engine_gl_sdl" = "xyes" \ | 27542 | || test "x$have_evas_engine_gl_sdl" = "xyes" \ |
27016 | || test "x$have_evas_engine_gl_cocoa" = "xyes"; then | 27543 | || test "x$have_evas_engine_gl_cocoa" = "xyes" \ |
27544 | || test "x$have_evas_engine_wayland_egl" = "xyes"; then | ||
27017 | have_evas_engine_gl_common="yes" | 27545 | have_evas_engine_gl_common="yes" |
27018 | fi | 27546 | fi |
27019 | if test "x$have_evas_engine_gl_xlib" = "xstatic" \ | 27547 | if test "x$have_evas_engine_gl_xlib" = "xstatic" \ |
27020 | || test "x$have_evas_engine_gl_xcb" = "xstatic" \ | 27548 | || test "x$have_evas_engine_gl_xcb" = "xstatic" \ |
27021 | || test "x$have_evas_engine_gl_sdl" = "xstatic" \ | 27549 | || test "x$have_evas_engine_gl_sdl" = "xstatic" \ |
27022 | || test "x$have_evas_engine_gl_cocoa" = "xstatic"; then | 27550 | || test "x$have_evas_engine_gl_cocoa" = "xstatic" \ |
27551 | || test "x$have_evas_engine_wayland_egl" = "xstatic"; then | ||
27023 | have_evas_engine_gl_common="yes" | 27552 | have_evas_engine_gl_common="yes" |
27024 | have_static_evas_engine_gl_common="yes" | 27553 | have_static_evas_engine_gl_common="yes" |
27025 | fi | 27554 | fi |
@@ -27220,10 +27749,11 @@ pkg_failed=no | |||
27220 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EDB" >&5 | 27749 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EDB" >&5 |
27221 | $as_echo_n "checking for EDB... " >&6; } | 27750 | $as_echo_n "checking for EDB... " >&6; } |
27222 | 27751 | ||
27223 | if test -n "$EDB_CFLAGS"; then | 27752 | if test -n "$PKG_CONFIG"; then |
27224 | pkg_cv_EDB_CFLAGS="$EDB_CFLAGS" | 27753 | if test -n "$EDB_CFLAGS"; then |
27225 | elif test -n "$PKG_CONFIG"; then | 27754 | pkg_cv_EDB_CFLAGS="$EDB_CFLAGS" |
27226 | if test -n "$PKG_CONFIG" && \ | 27755 | else |
27756 | if test -n "$PKG_CONFIG" && \ | ||
27227 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edb\""; } >&5 | 27757 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edb\""; } >&5 |
27228 | ($PKG_CONFIG --exists --print-errors "edb") 2>&5 | 27758 | ($PKG_CONFIG --exists --print-errors "edb") 2>&5 |
27229 | ac_status=$? | 27759 | ac_status=$? |
@@ -27233,13 +27763,15 @@ if test -n "$EDB_CFLAGS"; then | |||
27233 | else | 27763 | else |
27234 | pkg_failed=yes | 27764 | pkg_failed=yes |
27235 | fi | 27765 | fi |
27236 | else | 27766 | fi |
27237 | pkg_failed=untried | 27767 | else |
27768 | pkg_failed=untried | ||
27238 | fi | 27769 | fi |
27239 | if test -n "$EDB_LIBS"; then | 27770 | if test -n "$PKG_CONFIG"; then |
27240 | pkg_cv_EDB_LIBS="$EDB_LIBS" | 27771 | if test -n "$EDB_LIBS"; then |
27241 | elif test -n "$PKG_CONFIG"; then | 27772 | pkg_cv_EDB_LIBS="$EDB_LIBS" |
27242 | if test -n "$PKG_CONFIG" && \ | 27773 | else |
27774 | if test -n "$PKG_CONFIG" && \ | ||
27243 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edb\""; } >&5 | 27775 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edb\""; } >&5 |
27244 | ($PKG_CONFIG --exists --print-errors "edb") 2>&5 | 27776 | ($PKG_CONFIG --exists --print-errors "edb") 2>&5 |
27245 | ac_status=$? | 27777 | ac_status=$? |
@@ -27249,15 +27781,14 @@ if test -n "$EDB_LIBS"; then | |||
27249 | else | 27781 | else |
27250 | pkg_failed=yes | 27782 | pkg_failed=yes |
27251 | fi | 27783 | fi |
27252 | else | 27784 | fi |
27253 | pkg_failed=untried | 27785 | else |
27786 | pkg_failed=untried | ||
27254 | fi | 27787 | fi |
27255 | 27788 | ||
27256 | 27789 | ||
27257 | 27790 | ||
27258 | if test $pkg_failed = yes; then | 27791 | if test $pkg_failed = yes; then |
27259 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
27260 | $as_echo "no" >&6; } | ||
27261 | 27792 | ||
27262 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 27793 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
27263 | _pkg_short_errors_supported=yes | 27794 | _pkg_short_errors_supported=yes |
@@ -27265,17 +27796,17 @@ else | |||
27265 | _pkg_short_errors_supported=no | 27796 | _pkg_short_errors_supported=no |
27266 | fi | 27797 | fi |
27267 | if test $_pkg_short_errors_supported = yes; then | 27798 | if test $_pkg_short_errors_supported = yes; then |
27268 | EDB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "edb" 2>&1` | 27799 | EDB_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "edb"` |
27269 | else | 27800 | else |
27270 | EDB_PKG_ERRORS=`$PKG_CONFIG --print-errors "edb" 2>&1` | 27801 | EDB_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "edb"` |
27271 | fi | 27802 | fi |
27272 | # Put the nasty error message in config.log where it belongs | 27803 | # Put the nasty error message in config.log where it belongs |
27273 | echo "$EDB_PKG_ERRORS" >&5 | 27804 | echo "$EDB_PKG_ERRORS" >&5 |
27274 | 27805 | ||
27275 | have_dep="no" | 27806 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
27276 | elif test $pkg_failed = untried; then | ||
27277 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
27278 | $as_echo "no" >&6; } | 27807 | $as_echo "no" >&6; } |
27808 | have_dep="no" | ||
27809 | elif test $pkg_failed = untried; then | ||
27279 | have_dep="no" | 27810 | have_dep="no" |
27280 | else | 27811 | else |
27281 | EDB_CFLAGS=$pkg_cv_EDB_CFLAGS | 27812 | EDB_CFLAGS=$pkg_cv_EDB_CFLAGS |
@@ -27304,7 +27835,7 @@ fi | |||
27304 | fi | 27835 | fi |
27305 | 27836 | ||
27306 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 27837 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
27307 | as_fn_error $? "Edb dependencies not found (strict dependencies checking)" "$LINENO" 5 | 27838 | as_fn_error "Edb dependencies not found (strict dependencies checking)" "$LINENO" 5 |
27308 | fi | 27839 | fi |
27309 | 27840 | ||
27310 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Edb image loader will be built" >&5 | 27841 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Edb image loader will be built" >&5 |
@@ -27402,10 +27933,11 @@ pkg_failed=no | |||
27402 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EET" >&5 | 27933 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EET" >&5 |
27403 | $as_echo_n "checking for EET... " >&6; } | 27934 | $as_echo_n "checking for EET... " >&6; } |
27404 | 27935 | ||
27405 | if test -n "$EET_CFLAGS"; then | 27936 | if test -n "$PKG_CONFIG"; then |
27406 | pkg_cv_EET_CFLAGS="$EET_CFLAGS" | 27937 | if test -n "$EET_CFLAGS"; then |
27407 | elif test -n "$PKG_CONFIG"; then | 27938 | pkg_cv_EET_CFLAGS="$EET_CFLAGS" |
27408 | if test -n "$PKG_CONFIG" && \ | 27939 | else |
27940 | if test -n "$PKG_CONFIG" && \ | ||
27409 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 27941 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
27410 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 27942 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
27411 | ac_status=$? | 27943 | ac_status=$? |
@@ -27415,13 +27947,15 @@ if test -n "$EET_CFLAGS"; then | |||
27415 | else | 27947 | else |
27416 | pkg_failed=yes | 27948 | pkg_failed=yes |
27417 | fi | 27949 | fi |
27418 | else | 27950 | fi |
27419 | pkg_failed=untried | 27951 | else |
27952 | pkg_failed=untried | ||
27420 | fi | 27953 | fi |
27421 | if test -n "$EET_LIBS"; then | 27954 | if test -n "$PKG_CONFIG"; then |
27422 | pkg_cv_EET_LIBS="$EET_LIBS" | 27955 | if test -n "$EET_LIBS"; then |
27423 | elif test -n "$PKG_CONFIG"; then | 27956 | pkg_cv_EET_LIBS="$EET_LIBS" |
27424 | if test -n "$PKG_CONFIG" && \ | 27957 | else |
27958 | if test -n "$PKG_CONFIG" && \ | ||
27425 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 27959 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
27426 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 27960 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
27427 | ac_status=$? | 27961 | ac_status=$? |
@@ -27431,15 +27965,14 @@ if test -n "$EET_LIBS"; then | |||
27431 | else | 27965 | else |
27432 | pkg_failed=yes | 27966 | pkg_failed=yes |
27433 | fi | 27967 | fi |
27434 | else | 27968 | fi |
27435 | pkg_failed=untried | 27969 | else |
27970 | pkg_failed=untried | ||
27436 | fi | 27971 | fi |
27437 | 27972 | ||
27438 | 27973 | ||
27439 | 27974 | ||
27440 | if test $pkg_failed = yes; then | 27975 | if test $pkg_failed = yes; then |
27441 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
27442 | $as_echo "no" >&6; } | ||
27443 | 27976 | ||
27444 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 27977 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
27445 | _pkg_short_errors_supported=yes | 27978 | _pkg_short_errors_supported=yes |
@@ -27447,17 +27980,17 @@ else | |||
27447 | _pkg_short_errors_supported=no | 27980 | _pkg_short_errors_supported=no |
27448 | fi | 27981 | fi |
27449 | if test $_pkg_short_errors_supported = yes; then | 27982 | if test $_pkg_short_errors_supported = yes; then |
27450 | EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eet >= 1.5.0" 2>&1` | 27983 | EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` |
27451 | else | 27984 | else |
27452 | EET_PKG_ERRORS=`$PKG_CONFIG --print-errors "eet >= 1.5.0" 2>&1` | 27985 | EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` |
27453 | fi | 27986 | fi |
27454 | # Put the nasty error message in config.log where it belongs | 27987 | # Put the nasty error message in config.log where it belongs |
27455 | echo "$EET_PKG_ERRORS" >&5 | 27988 | echo "$EET_PKG_ERRORS" >&5 |
27456 | 27989 | ||
27457 | have_dep="no" | 27990 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
27458 | elif test $pkg_failed = untried; then | ||
27459 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
27460 | $as_echo "no" >&6; } | 27991 | $as_echo "no" >&6; } |
27992 | have_dep="no" | ||
27993 | elif test $pkg_failed = untried; then | ||
27461 | have_dep="no" | 27994 | have_dep="no" |
27462 | else | 27995 | else |
27463 | EET_CFLAGS=$pkg_cv_EET_CFLAGS | 27996 | EET_CFLAGS=$pkg_cv_EET_CFLAGS |
@@ -27486,7 +28019,7 @@ fi | |||
27486 | fi | 28019 | fi |
27487 | 28020 | ||
27488 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 28021 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
27489 | as_fn_error $? "Eet dependencies not found (strict dependencies checking)" "$LINENO" 5 | 28022 | as_fn_error "Eet dependencies not found (strict dependencies checking)" "$LINENO" 5 |
27490 | fi | 28023 | fi |
27491 | 28024 | ||
27492 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Eet image loader will be built" >&5 | 28025 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Eet image loader will be built" >&5 |
@@ -27562,10 +28095,11 @@ pkg_failed=no | |||
27562 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EET" >&5 | 28095 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EET" >&5 |
27563 | $as_echo_n "checking for EET... " >&6; } | 28096 | $as_echo_n "checking for EET... " >&6; } |
27564 | 28097 | ||
27565 | if test -n "$EET_CFLAGS"; then | 28098 | if test -n "$PKG_CONFIG"; then |
27566 | pkg_cv_EET_CFLAGS="$EET_CFLAGS" | 28099 | if test -n "$EET_CFLAGS"; then |
27567 | elif test -n "$PKG_CONFIG"; then | 28100 | pkg_cv_EET_CFLAGS="$EET_CFLAGS" |
27568 | if test -n "$PKG_CONFIG" && \ | 28101 | else |
28102 | if test -n "$PKG_CONFIG" && \ | ||
27569 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 28103 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
27570 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 28104 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
27571 | ac_status=$? | 28105 | ac_status=$? |
@@ -27575,13 +28109,15 @@ if test -n "$EET_CFLAGS"; then | |||
27575 | else | 28109 | else |
27576 | pkg_failed=yes | 28110 | pkg_failed=yes |
27577 | fi | 28111 | fi |
27578 | else | 28112 | fi |
27579 | pkg_failed=untried | 28113 | else |
28114 | pkg_failed=untried | ||
27580 | fi | 28115 | fi |
27581 | if test -n "$EET_LIBS"; then | 28116 | if test -n "$PKG_CONFIG"; then |
27582 | pkg_cv_EET_LIBS="$EET_LIBS" | 28117 | if test -n "$EET_LIBS"; then |
27583 | elif test -n "$PKG_CONFIG"; then | 28118 | pkg_cv_EET_LIBS="$EET_LIBS" |
27584 | if test -n "$PKG_CONFIG" && \ | 28119 | else |
28120 | if test -n "$PKG_CONFIG" && \ | ||
27585 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 | 28121 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"eet >= 1.5.0\""; } >&5 |
27586 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 | 28122 | ($PKG_CONFIG --exists --print-errors "eet >= 1.5.0") 2>&5 |
27587 | ac_status=$? | 28123 | ac_status=$? |
@@ -27591,15 +28127,14 @@ if test -n "$EET_LIBS"; then | |||
27591 | else | 28127 | else |
27592 | pkg_failed=yes | 28128 | pkg_failed=yes |
27593 | fi | 28129 | fi |
27594 | else | 28130 | fi |
27595 | pkg_failed=untried | 28131 | else |
28132 | pkg_failed=untried | ||
27596 | fi | 28133 | fi |
27597 | 28134 | ||
27598 | 28135 | ||
27599 | 28136 | ||
27600 | if test $pkg_failed = yes; then | 28137 | if test $pkg_failed = yes; then |
27601 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
27602 | $as_echo "no" >&6; } | ||
27603 | 28138 | ||
27604 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 28139 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
27605 | _pkg_short_errors_supported=yes | 28140 | _pkg_short_errors_supported=yes |
@@ -27607,17 +28142,17 @@ else | |||
27607 | _pkg_short_errors_supported=no | 28142 | _pkg_short_errors_supported=no |
27608 | fi | 28143 | fi |
27609 | if test $_pkg_short_errors_supported = yes; then | 28144 | if test $_pkg_short_errors_supported = yes; then |
27610 | EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "eet >= 1.5.0" 2>&1` | 28145 | EET_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "eet >= 1.5.0"` |
27611 | else | 28146 | else |
27612 | EET_PKG_ERRORS=`$PKG_CONFIG --print-errors "eet >= 1.5.0" 2>&1` | 28147 | EET_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "eet >= 1.5.0"` |
27613 | fi | 28148 | fi |
27614 | # Put the nasty error message in config.log where it belongs | 28149 | # Put the nasty error message in config.log where it belongs |
27615 | echo "$EET_PKG_ERRORS" >&5 | 28150 | echo "$EET_PKG_ERRORS" >&5 |
27616 | 28151 | ||
27617 | have_evas_font_loader_eet="no" | 28152 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
27618 | elif test $pkg_failed = untried; then | ||
27619 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
27620 | $as_echo "no" >&6; } | 28153 | $as_echo "no" >&6; } |
28154 | have_evas_font_loader_eet="no" | ||
28155 | elif test $pkg_failed = untried; then | ||
27621 | have_evas_font_loader_eet="no" | 28156 | have_evas_font_loader_eet="no" |
27622 | else | 28157 | else |
27623 | EET_CFLAGS=$pkg_cv_EET_CFLAGS | 28158 | EET_CFLAGS=$pkg_cv_EET_CFLAGS |
@@ -27629,7 +28164,7 @@ fi | |||
27629 | fi | 28164 | fi |
27630 | 28165 | ||
27631 | if test "x${have_evas_font_loader_eet}" = "xno" -a "x$want_loader" = "xyes" -a "x$use_strict" = "xyes" ; then | 28166 | if test "x${have_evas_font_loader_eet}" = "xno" -a "x$want_loader" = "xyes" -a "x$use_strict" = "xyes" ; then |
27632 | as_fn_error $? "Eet dependencies not found (strict dependencies checking)" "$LINENO" 5 | 28167 | as_fn_error "Eet dependencies not found (strict dependencies checking)" "$LINENO" 5 |
27633 | fi | 28168 | fi |
27634 | 28169 | ||
27635 | if test "x$have_evas_font_loader_eet" = "xyes" ; then | 28170 | if test "x$have_evas_font_loader_eet" = "xyes" ; then |
@@ -27798,7 +28333,7 @@ fi | |||
27798 | fi | 28333 | fi |
27799 | 28334 | ||
27800 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 28335 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
27801 | as_fn_error $? "Gif dependencies not found (strict dependencies checking)" "$LINENO" 5 | 28336 | as_fn_error "Gif dependencies not found (strict dependencies checking)" "$LINENO" 5 |
27802 | fi | 28337 | fi |
27803 | 28338 | ||
27804 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Gif image loader will be built" >&5 | 28339 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Gif image loader will be built" >&5 |
@@ -27988,7 +28523,7 @@ fi | |||
27988 | fi | 28523 | fi |
27989 | 28524 | ||
27990 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 28525 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
27991 | as_fn_error $? "Jpeg dependencies not found (strict dependencies checking)" "$LINENO" 5 | 28526 | as_fn_error "Jpeg dependencies not found (strict dependencies checking)" "$LINENO" 5 |
27992 | fi | 28527 | fi |
27993 | 28528 | ||
27994 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Jpeg image loader will be built" >&5 | 28529 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Jpeg image loader will be built" >&5 |
@@ -28114,7 +28649,7 @@ fi | |||
28114 | fi | 28649 | fi |
28115 | 28650 | ||
28116 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 28651 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
28117 | as_fn_error $? "PMAPS dependencies not found (strict dependencies checking)" "$LINENO" 5 | 28652 | as_fn_error "PMAPS dependencies not found (strict dependencies checking)" "$LINENO" 5 |
28118 | fi | 28653 | fi |
28119 | 28654 | ||
28120 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PMAPS image loader will be built" >&5 | 28655 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PMAPS image loader will be built" >&5 |
@@ -28212,10 +28747,11 @@ pkg_failed=no | |||
28212 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 | 28747 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 |
28213 | $as_echo_n "checking for PNG... " >&6; } | 28748 | $as_echo_n "checking for PNG... " >&6; } |
28214 | 28749 | ||
28215 | if test -n "$PNG_CFLAGS"; then | 28750 | if test -n "$PKG_CONFIG"; then |
28216 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" | 28751 | if test -n "$PNG_CFLAGS"; then |
28217 | elif test -n "$PKG_CONFIG"; then | 28752 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" |
28218 | if test -n "$PKG_CONFIG" && \ | 28753 | else |
28754 | if test -n "$PKG_CONFIG" && \ | ||
28219 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng >= 1.2.10\""; } >&5 | 28755 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng >= 1.2.10\""; } >&5 |
28220 | ($PKG_CONFIG --exists --print-errors "libpng >= 1.2.10") 2>&5 | 28756 | ($PKG_CONFIG --exists --print-errors "libpng >= 1.2.10") 2>&5 |
28221 | ac_status=$? | 28757 | ac_status=$? |
@@ -28225,13 +28761,15 @@ if test -n "$PNG_CFLAGS"; then | |||
28225 | else | 28761 | else |
28226 | pkg_failed=yes | 28762 | pkg_failed=yes |
28227 | fi | 28763 | fi |
28228 | else | 28764 | fi |
28229 | pkg_failed=untried | 28765 | else |
28766 | pkg_failed=untried | ||
28230 | fi | 28767 | fi |
28231 | if test -n "$PNG_LIBS"; then | 28768 | if test -n "$PKG_CONFIG"; then |
28232 | pkg_cv_PNG_LIBS="$PNG_LIBS" | 28769 | if test -n "$PNG_LIBS"; then |
28233 | elif test -n "$PKG_CONFIG"; then | 28770 | pkg_cv_PNG_LIBS="$PNG_LIBS" |
28234 | if test -n "$PKG_CONFIG" && \ | 28771 | else |
28772 | if test -n "$PKG_CONFIG" && \ | ||
28235 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng >= 1.2.10\""; } >&5 | 28773 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng >= 1.2.10\""; } >&5 |
28236 | ($PKG_CONFIG --exists --print-errors "libpng >= 1.2.10") 2>&5 | 28774 | ($PKG_CONFIG --exists --print-errors "libpng >= 1.2.10") 2>&5 |
28237 | ac_status=$? | 28775 | ac_status=$? |
@@ -28241,15 +28779,14 @@ if test -n "$PNG_LIBS"; then | |||
28241 | else | 28779 | else |
28242 | pkg_failed=yes | 28780 | pkg_failed=yes |
28243 | fi | 28781 | fi |
28244 | else | 28782 | fi |
28245 | pkg_failed=untried | 28783 | else |
28784 | pkg_failed=untried | ||
28246 | fi | 28785 | fi |
28247 | 28786 | ||
28248 | 28787 | ||
28249 | 28788 | ||
28250 | if test $pkg_failed = yes; then | 28789 | if test $pkg_failed = yes; then |
28251 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28252 | $as_echo "no" >&6; } | ||
28253 | 28790 | ||
28254 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 28791 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
28255 | _pkg_short_errors_supported=yes | 28792 | _pkg_short_errors_supported=yes |
@@ -28257,17 +28794,17 @@ else | |||
28257 | _pkg_short_errors_supported=no | 28794 | _pkg_short_errors_supported=no |
28258 | fi | 28795 | fi |
28259 | if test $_pkg_short_errors_supported = yes; then | 28796 | if test $_pkg_short_errors_supported = yes; then |
28260 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libpng >= 1.2.10" 2>&1` | 28797 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libpng >= 1.2.10"` |
28261 | else | 28798 | else |
28262 | PNG_PKG_ERRORS=`$PKG_CONFIG --print-errors "libpng >= 1.2.10" 2>&1` | 28799 | PNG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libpng >= 1.2.10"` |
28263 | fi | 28800 | fi |
28264 | # Put the nasty error message in config.log where it belongs | 28801 | # Put the nasty error message in config.log where it belongs |
28265 | echo "$PNG_PKG_ERRORS" >&5 | 28802 | echo "$PNG_PKG_ERRORS" >&5 |
28266 | 28803 | ||
28267 | have_dep="no" | 28804 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
28268 | elif test $pkg_failed = untried; then | ||
28269 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28270 | $as_echo "no" >&6; } | 28805 | $as_echo "no" >&6; } |
28806 | have_dep="no" | ||
28807 | elif test $pkg_failed = untried; then | ||
28271 | have_dep="no" | 28808 | have_dep="no" |
28272 | else | 28809 | else |
28273 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS | 28810 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS |
@@ -28283,10 +28820,11 @@ pkg_failed=no | |||
28283 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 | 28820 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 |
28284 | $as_echo_n "checking for PNG... " >&6; } | 28821 | $as_echo_n "checking for PNG... " >&6; } |
28285 | 28822 | ||
28286 | if test -n "$PNG_CFLAGS"; then | 28823 | if test -n "$PKG_CONFIG"; then |
28287 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" | 28824 | if test -n "$PNG_CFLAGS"; then |
28288 | elif test -n "$PKG_CONFIG"; then | 28825 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" |
28289 | if test -n "$PKG_CONFIG" && \ | 28826 | else |
28827 | if test -n "$PKG_CONFIG" && \ | ||
28290 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng15\""; } >&5 | 28828 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng15\""; } >&5 |
28291 | ($PKG_CONFIG --exists --print-errors "libpng15") 2>&5 | 28829 | ($PKG_CONFIG --exists --print-errors "libpng15") 2>&5 |
28292 | ac_status=$? | 28830 | ac_status=$? |
@@ -28296,13 +28834,15 @@ if test -n "$PNG_CFLAGS"; then | |||
28296 | else | 28834 | else |
28297 | pkg_failed=yes | 28835 | pkg_failed=yes |
28298 | fi | 28836 | fi |
28299 | else | 28837 | fi |
28300 | pkg_failed=untried | 28838 | else |
28839 | pkg_failed=untried | ||
28301 | fi | 28840 | fi |
28302 | if test -n "$PNG_LIBS"; then | 28841 | if test -n "$PKG_CONFIG"; then |
28303 | pkg_cv_PNG_LIBS="$PNG_LIBS" | 28842 | if test -n "$PNG_LIBS"; then |
28304 | elif test -n "$PKG_CONFIG"; then | 28843 | pkg_cv_PNG_LIBS="$PNG_LIBS" |
28305 | if test -n "$PKG_CONFIG" && \ | 28844 | else |
28845 | if test -n "$PKG_CONFIG" && \ | ||
28306 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng15\""; } >&5 | 28846 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng15\""; } >&5 |
28307 | ($PKG_CONFIG --exists --print-errors "libpng15") 2>&5 | 28847 | ($PKG_CONFIG --exists --print-errors "libpng15") 2>&5 |
28308 | ac_status=$? | 28848 | ac_status=$? |
@@ -28312,15 +28852,14 @@ if test -n "$PNG_LIBS"; then | |||
28312 | else | 28852 | else |
28313 | pkg_failed=yes | 28853 | pkg_failed=yes |
28314 | fi | 28854 | fi |
28315 | else | 28855 | fi |
28316 | pkg_failed=untried | 28856 | else |
28857 | pkg_failed=untried | ||
28317 | fi | 28858 | fi |
28318 | 28859 | ||
28319 | 28860 | ||
28320 | 28861 | ||
28321 | if test $pkg_failed = yes; then | 28862 | if test $pkg_failed = yes; then |
28322 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28323 | $as_echo "no" >&6; } | ||
28324 | 28863 | ||
28325 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 28864 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
28326 | _pkg_short_errors_supported=yes | 28865 | _pkg_short_errors_supported=yes |
@@ -28328,17 +28867,17 @@ else | |||
28328 | _pkg_short_errors_supported=no | 28867 | _pkg_short_errors_supported=no |
28329 | fi | 28868 | fi |
28330 | if test $_pkg_short_errors_supported = yes; then | 28869 | if test $_pkg_short_errors_supported = yes; then |
28331 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libpng15" 2>&1` | 28870 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libpng15"` |
28332 | else | 28871 | else |
28333 | PNG_PKG_ERRORS=`$PKG_CONFIG --print-errors "libpng15" 2>&1` | 28872 | PNG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libpng15"` |
28334 | fi | 28873 | fi |
28335 | # Put the nasty error message in config.log where it belongs | 28874 | # Put the nasty error message in config.log where it belongs |
28336 | echo "$PNG_PKG_ERRORS" >&5 | 28875 | echo "$PNG_PKG_ERRORS" >&5 |
28337 | 28876 | ||
28338 | have_dep="no" | 28877 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
28339 | elif test $pkg_failed = untried; then | ||
28340 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28341 | $as_echo "no" >&6; } | 28878 | $as_echo "no" >&6; } |
28879 | have_dep="no" | ||
28880 | elif test $pkg_failed = untried; then | ||
28342 | have_dep="no" | 28881 | have_dep="no" |
28343 | else | 28882 | else |
28344 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS | 28883 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS |
@@ -28355,10 +28894,11 @@ pkg_failed=no | |||
28355 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 | 28894 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 |
28356 | $as_echo_n "checking for PNG... " >&6; } | 28895 | $as_echo_n "checking for PNG... " >&6; } |
28357 | 28896 | ||
28358 | if test -n "$PNG_CFLAGS"; then | 28897 | if test -n "$PKG_CONFIG"; then |
28359 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" | 28898 | if test -n "$PNG_CFLAGS"; then |
28360 | elif test -n "$PKG_CONFIG"; then | 28899 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" |
28361 | if test -n "$PKG_CONFIG" && \ | 28900 | else |
28901 | if test -n "$PKG_CONFIG" && \ | ||
28362 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng14\""; } >&5 | 28902 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng14\""; } >&5 |
28363 | ($PKG_CONFIG --exists --print-errors "libpng14") 2>&5 | 28903 | ($PKG_CONFIG --exists --print-errors "libpng14") 2>&5 |
28364 | ac_status=$? | 28904 | ac_status=$? |
@@ -28368,13 +28908,15 @@ if test -n "$PNG_CFLAGS"; then | |||
28368 | else | 28908 | else |
28369 | pkg_failed=yes | 28909 | pkg_failed=yes |
28370 | fi | 28910 | fi |
28371 | else | 28911 | fi |
28372 | pkg_failed=untried | 28912 | else |
28913 | pkg_failed=untried | ||
28373 | fi | 28914 | fi |
28374 | if test -n "$PNG_LIBS"; then | 28915 | if test -n "$PKG_CONFIG"; then |
28375 | pkg_cv_PNG_LIBS="$PNG_LIBS" | 28916 | if test -n "$PNG_LIBS"; then |
28376 | elif test -n "$PKG_CONFIG"; then | 28917 | pkg_cv_PNG_LIBS="$PNG_LIBS" |
28377 | if test -n "$PKG_CONFIG" && \ | 28918 | else |
28919 | if test -n "$PKG_CONFIG" && \ | ||
28378 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng14\""; } >&5 | 28920 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng14\""; } >&5 |
28379 | ($PKG_CONFIG --exists --print-errors "libpng14") 2>&5 | 28921 | ($PKG_CONFIG --exists --print-errors "libpng14") 2>&5 |
28380 | ac_status=$? | 28922 | ac_status=$? |
@@ -28384,15 +28926,14 @@ if test -n "$PNG_LIBS"; then | |||
28384 | else | 28926 | else |
28385 | pkg_failed=yes | 28927 | pkg_failed=yes |
28386 | fi | 28928 | fi |
28387 | else | 28929 | fi |
28388 | pkg_failed=untried | 28930 | else |
28931 | pkg_failed=untried | ||
28389 | fi | 28932 | fi |
28390 | 28933 | ||
28391 | 28934 | ||
28392 | 28935 | ||
28393 | if test $pkg_failed = yes; then | 28936 | if test $pkg_failed = yes; then |
28394 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28395 | $as_echo "no" >&6; } | ||
28396 | 28937 | ||
28397 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 28938 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
28398 | _pkg_short_errors_supported=yes | 28939 | _pkg_short_errors_supported=yes |
@@ -28400,17 +28941,17 @@ else | |||
28400 | _pkg_short_errors_supported=no | 28941 | _pkg_short_errors_supported=no |
28401 | fi | 28942 | fi |
28402 | if test $_pkg_short_errors_supported = yes; then | 28943 | if test $_pkg_short_errors_supported = yes; then |
28403 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libpng14" 2>&1` | 28944 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libpng14"` |
28404 | else | 28945 | else |
28405 | PNG_PKG_ERRORS=`$PKG_CONFIG --print-errors "libpng14" 2>&1` | 28946 | PNG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libpng14"` |
28406 | fi | 28947 | fi |
28407 | # Put the nasty error message in config.log where it belongs | 28948 | # Put the nasty error message in config.log where it belongs |
28408 | echo "$PNG_PKG_ERRORS" >&5 | 28949 | echo "$PNG_PKG_ERRORS" >&5 |
28409 | 28950 | ||
28410 | have_dep="no" | 28951 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
28411 | elif test $pkg_failed = untried; then | ||
28412 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28413 | $as_echo "no" >&6; } | 28952 | $as_echo "no" >&6; } |
28953 | have_dep="no" | ||
28954 | elif test $pkg_failed = untried; then | ||
28414 | have_dep="no" | 28955 | have_dep="no" |
28415 | else | 28956 | else |
28416 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS | 28957 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS |
@@ -28427,10 +28968,11 @@ pkg_failed=no | |||
28427 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 | 28968 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PNG" >&5 |
28428 | $as_echo_n "checking for PNG... " >&6; } | 28969 | $as_echo_n "checking for PNG... " >&6; } |
28429 | 28970 | ||
28430 | if test -n "$PNG_CFLAGS"; then | 28971 | if test -n "$PKG_CONFIG"; then |
28431 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" | 28972 | if test -n "$PNG_CFLAGS"; then |
28432 | elif test -n "$PKG_CONFIG"; then | 28973 | pkg_cv_PNG_CFLAGS="$PNG_CFLAGS" |
28433 | if test -n "$PKG_CONFIG" && \ | 28974 | else |
28975 | if test -n "$PKG_CONFIG" && \ | ||
28434 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng12 >= 1.2.10\""; } >&5 | 28976 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng12 >= 1.2.10\""; } >&5 |
28435 | ($PKG_CONFIG --exists --print-errors "libpng12 >= 1.2.10") 2>&5 | 28977 | ($PKG_CONFIG --exists --print-errors "libpng12 >= 1.2.10") 2>&5 |
28436 | ac_status=$? | 28978 | ac_status=$? |
@@ -28440,13 +28982,15 @@ if test -n "$PNG_CFLAGS"; then | |||
28440 | else | 28982 | else |
28441 | pkg_failed=yes | 28983 | pkg_failed=yes |
28442 | fi | 28984 | fi |
28443 | else | 28985 | fi |
28444 | pkg_failed=untried | 28986 | else |
28987 | pkg_failed=untried | ||
28445 | fi | 28988 | fi |
28446 | if test -n "$PNG_LIBS"; then | 28989 | if test -n "$PKG_CONFIG"; then |
28447 | pkg_cv_PNG_LIBS="$PNG_LIBS" | 28990 | if test -n "$PNG_LIBS"; then |
28448 | elif test -n "$PKG_CONFIG"; then | 28991 | pkg_cv_PNG_LIBS="$PNG_LIBS" |
28449 | if test -n "$PKG_CONFIG" && \ | 28992 | else |
28993 | if test -n "$PKG_CONFIG" && \ | ||
28450 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng12 >= 1.2.10\""; } >&5 | 28994 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libpng12 >= 1.2.10\""; } >&5 |
28451 | ($PKG_CONFIG --exists --print-errors "libpng12 >= 1.2.10") 2>&5 | 28995 | ($PKG_CONFIG --exists --print-errors "libpng12 >= 1.2.10") 2>&5 |
28452 | ac_status=$? | 28996 | ac_status=$? |
@@ -28456,15 +29000,14 @@ if test -n "$PNG_LIBS"; then | |||
28456 | else | 29000 | else |
28457 | pkg_failed=yes | 29001 | pkg_failed=yes |
28458 | fi | 29002 | fi |
28459 | else | 29003 | fi |
28460 | pkg_failed=untried | 29004 | else |
29005 | pkg_failed=untried | ||
28461 | fi | 29006 | fi |
28462 | 29007 | ||
28463 | 29008 | ||
28464 | 29009 | ||
28465 | if test $pkg_failed = yes; then | 29010 | if test $pkg_failed = yes; then |
28466 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28467 | $as_echo "no" >&6; } | ||
28468 | 29011 | ||
28469 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 29012 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
28470 | _pkg_short_errors_supported=yes | 29013 | _pkg_short_errors_supported=yes |
@@ -28472,17 +29015,17 @@ else | |||
28472 | _pkg_short_errors_supported=no | 29015 | _pkg_short_errors_supported=no |
28473 | fi | 29016 | fi |
28474 | if test $_pkg_short_errors_supported = yes; then | 29017 | if test $_pkg_short_errors_supported = yes; then |
28475 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libpng12 >= 1.2.10" 2>&1` | 29018 | PNG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "libpng12 >= 1.2.10"` |
28476 | else | 29019 | else |
28477 | PNG_PKG_ERRORS=`$PKG_CONFIG --print-errors "libpng12 >= 1.2.10" 2>&1` | 29020 | PNG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libpng12 >= 1.2.10"` |
28478 | fi | 29021 | fi |
28479 | # Put the nasty error message in config.log where it belongs | 29022 | # Put the nasty error message in config.log where it belongs |
28480 | echo "$PNG_PKG_ERRORS" >&5 | 29023 | echo "$PNG_PKG_ERRORS" >&5 |
28481 | 29024 | ||
28482 | have_dep="no" | 29025 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
28483 | elif test $pkg_failed = untried; then | ||
28484 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28485 | $as_echo "no" >&6; } | 29026 | $as_echo "no" >&6; } |
29027 | have_dep="no" | ||
29028 | elif test $pkg_failed = untried; then | ||
28486 | have_dep="no" | 29029 | have_dep="no" |
28487 | else | 29030 | else |
28488 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS | 29031 | PNG_CFLAGS=$pkg_cv_PNG_CFLAGS |
@@ -28513,7 +29056,7 @@ fi | |||
28513 | fi | 29056 | fi |
28514 | 29057 | ||
28515 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 29058 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
28516 | as_fn_error $? "PNG dependencies not found (strict dependencies checking)" "$LINENO" 5 | 29059 | as_fn_error "PNG dependencies not found (strict dependencies checking)" "$LINENO" 5 |
28517 | fi | 29060 | fi |
28518 | 29061 | ||
28519 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PNG image loader will be built" >&5 | 29062 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PNG image loader will be built" >&5 |
@@ -28611,10 +29154,11 @@ pkg_failed=no | |||
28611 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SVG" >&5 | 29154 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SVG" >&5 |
28612 | $as_echo_n "checking for SVG... " >&6; } | 29155 | $as_echo_n "checking for SVG... " >&6; } |
28613 | 29156 | ||
28614 | if test -n "$SVG_CFLAGS"; then | 29157 | if test -n "$PKG_CONFIG"; then |
28615 | pkg_cv_SVG_CFLAGS="$SVG_CFLAGS" | 29158 | if test -n "$SVG_CFLAGS"; then |
28616 | elif test -n "$PKG_CONFIG"; then | 29159 | pkg_cv_SVG_CFLAGS="$SVG_CFLAGS" |
28617 | if test -n "$PKG_CONFIG" && \ | 29160 | else |
29161 | if test -n "$PKG_CONFIG" && \ | ||
28618 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librsvg-2.0 >= 2.14.0 | 29162 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librsvg-2.0 >= 2.14.0 |
28619 | cairo >= 1.0.0\""; } >&5 | 29163 | cairo >= 1.0.0\""; } >&5 |
28620 | ($PKG_CONFIG --exists --print-errors "librsvg-2.0 >= 2.14.0 | 29164 | ($PKG_CONFIG --exists --print-errors "librsvg-2.0 >= 2.14.0 |
@@ -28627,13 +29171,15 @@ if test -n "$SVG_CFLAGS"; then | |||
28627 | else | 29171 | else |
28628 | pkg_failed=yes | 29172 | pkg_failed=yes |
28629 | fi | 29173 | fi |
28630 | else | 29174 | fi |
28631 | pkg_failed=untried | 29175 | else |
29176 | pkg_failed=untried | ||
28632 | fi | 29177 | fi |
28633 | if test -n "$SVG_LIBS"; then | 29178 | if test -n "$PKG_CONFIG"; then |
28634 | pkg_cv_SVG_LIBS="$SVG_LIBS" | 29179 | if test -n "$SVG_LIBS"; then |
28635 | elif test -n "$PKG_CONFIG"; then | 29180 | pkg_cv_SVG_LIBS="$SVG_LIBS" |
28636 | if test -n "$PKG_CONFIG" && \ | 29181 | else |
29182 | if test -n "$PKG_CONFIG" && \ | ||
28637 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librsvg-2.0 >= 2.14.0 | 29183 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"librsvg-2.0 >= 2.14.0 |
28638 | cairo >= 1.0.0\""; } >&5 | 29184 | cairo >= 1.0.0\""; } >&5 |
28639 | ($PKG_CONFIG --exists --print-errors "librsvg-2.0 >= 2.14.0 | 29185 | ($PKG_CONFIG --exists --print-errors "librsvg-2.0 >= 2.14.0 |
@@ -28646,15 +29192,14 @@ if test -n "$SVG_LIBS"; then | |||
28646 | else | 29192 | else |
28647 | pkg_failed=yes | 29193 | pkg_failed=yes |
28648 | fi | 29194 | fi |
28649 | else | 29195 | fi |
28650 | pkg_failed=untried | 29196 | else |
29197 | pkg_failed=untried | ||
28651 | fi | 29198 | fi |
28652 | 29199 | ||
28653 | 29200 | ||
28654 | 29201 | ||
28655 | if test $pkg_failed = yes; then | 29202 | if test $pkg_failed = yes; then |
28656 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28657 | $as_echo "no" >&6; } | ||
28658 | 29203 | ||
28659 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 29204 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
28660 | _pkg_short_errors_supported=yes | 29205 | _pkg_short_errors_supported=yes |
@@ -28662,20 +29207,20 @@ else | |||
28662 | _pkg_short_errors_supported=no | 29207 | _pkg_short_errors_supported=no |
28663 | fi | 29208 | fi |
28664 | if test $_pkg_short_errors_supported = yes; then | 29209 | if test $_pkg_short_errors_supported = yes; then |
28665 | SVG_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "librsvg-2.0 >= 2.14.0 | 29210 | SVG_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "librsvg-2.0 >= 2.14.0 |
28666 | cairo >= 1.0.0" 2>&1` | 29211 | cairo >= 1.0.0"` |
28667 | else | 29212 | else |
28668 | SVG_PKG_ERRORS=`$PKG_CONFIG --print-errors "librsvg-2.0 >= 2.14.0 | 29213 | SVG_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "librsvg-2.0 >= 2.14.0 |
28669 | cairo >= 1.0.0" 2>&1` | 29214 | cairo >= 1.0.0"` |
28670 | fi | 29215 | fi |
28671 | # Put the nasty error message in config.log where it belongs | 29216 | # Put the nasty error message in config.log where it belongs |
28672 | echo "$SVG_PKG_ERRORS" >&5 | 29217 | echo "$SVG_PKG_ERRORS" >&5 |
28673 | 29218 | ||
28674 | have_svg="no" | 29219 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
29220 | $as_echo "no" >&6; } | ||
29221 | have_svg="no" | ||
28675 | 29222 | ||
28676 | elif test $pkg_failed = untried; then | 29223 | elif test $pkg_failed = untried; then |
28677 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
28678 | $as_echo "no" >&6; } | ||
28679 | have_svg="no" | 29224 | have_svg="no" |
28680 | 29225 | ||
28681 | else | 29226 | else |
@@ -28708,7 +29253,7 @@ fi | |||
28708 | fi | 29253 | fi |
28709 | 29254 | ||
28710 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 29255 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
28711 | as_fn_error $? "SVG dependencies not found (strict dependencies checking)" "$LINENO" 5 | 29256 | as_fn_error "SVG dependencies not found (strict dependencies checking)" "$LINENO" 5 |
28712 | fi | 29257 | fi |
28713 | 29258 | ||
28714 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether SVG image loader will be built" >&5 | 29259 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether SVG image loader will be built" >&5 |
@@ -28962,7 +29507,7 @@ fi | |||
28962 | fi | 29507 | fi |
28963 | 29508 | ||
28964 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 29509 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
28965 | as_fn_error $? "Tiff dependencies not found (strict dependencies checking)" "$LINENO" 5 | 29510 | as_fn_error "Tiff dependencies not found (strict dependencies checking)" "$LINENO" 5 |
28966 | fi | 29511 | fi |
28967 | 29512 | ||
28968 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Tiff image loader will be built" >&5 | 29513 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether Tiff image loader will be built" >&5 |
@@ -29067,7 +29612,7 @@ fi | |||
29067 | fi | 29612 | fi |
29068 | 29613 | ||
29069 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 29614 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
29070 | as_fn_error $? "XPM dependencies not found (strict dependencies checking)" "$LINENO" 5 | 29615 | as_fn_error "XPM dependencies not found (strict dependencies checking)" "$LINENO" 5 |
29071 | fi | 29616 | fi |
29072 | 29617 | ||
29073 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether XPM image loader will be built" >&5 | 29618 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether XPM image loader will be built" >&5 |
@@ -29172,7 +29717,7 @@ fi | |||
29172 | fi | 29717 | fi |
29173 | 29718 | ||
29174 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 29719 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
29175 | as_fn_error $? "BMP dependencies not found (strict dependencies checking)" "$LINENO" 5 | 29720 | as_fn_error "BMP dependencies not found (strict dependencies checking)" "$LINENO" 5 |
29176 | fi | 29721 | fi |
29177 | 29722 | ||
29178 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether BMP image loader will be built" >&5 | 29723 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether BMP image loader will be built" >&5 |
@@ -29277,7 +29822,7 @@ fi | |||
29277 | fi | 29822 | fi |
29278 | 29823 | ||
29279 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 29824 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
29280 | as_fn_error $? "TGA dependencies not found (strict dependencies checking)" "$LINENO" 5 | 29825 | as_fn_error "TGA dependencies not found (strict dependencies checking)" "$LINENO" 5 |
29281 | fi | 29826 | fi |
29282 | 29827 | ||
29283 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether TGA image loader will be built" >&5 | 29828 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether TGA image loader will be built" >&5 |
@@ -29382,7 +29927,7 @@ fi | |||
29382 | fi | 29927 | fi |
29383 | 29928 | ||
29384 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 29929 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
29385 | as_fn_error $? "WBMP dependencies not found (strict dependencies checking)" "$LINENO" 5 | 29930 | as_fn_error "WBMP dependencies not found (strict dependencies checking)" "$LINENO" 5 |
29386 | fi | 29931 | fi |
29387 | 29932 | ||
29388 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether WBMP image loader will be built" >&5 | 29933 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether WBMP image loader will be built" >&5 |
@@ -29487,7 +30032,7 @@ fi | |||
29487 | fi | 30032 | fi |
29488 | 30033 | ||
29489 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 30034 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
29490 | as_fn_error $? "ICO dependencies not found (strict dependencies checking)" "$LINENO" 5 | 30035 | as_fn_error "ICO dependencies not found (strict dependencies checking)" "$LINENO" 5 |
29491 | fi | 30036 | fi |
29492 | 30037 | ||
29493 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ICO image loader will be built" >&5 | 30038 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ICO image loader will be built" >&5 |
@@ -29592,7 +30137,7 @@ fi | |||
29592 | fi | 30137 | fi |
29593 | 30138 | ||
29594 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 30139 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
29595 | as_fn_error $? "PSD dependencies not found (strict dependencies checking)" "$LINENO" 5 | 30140 | as_fn_error "PSD dependencies not found (strict dependencies checking)" "$LINENO" 5 |
29596 | fi | 30141 | fi |
29597 | 30142 | ||
29598 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PSD image loader will be built" >&5 | 30143 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether PSD image loader will be built" >&5 |
@@ -29697,7 +30242,7 @@ fi | |||
29697 | fi | 30242 | fi |
29698 | 30243 | ||
29699 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then | 30244 | if test "x${have_loader}" = "xno" -a "x${want_loader}" = "xyes" -a "x${use_strict}" = "xyes" ; then |
29700 | as_fn_error $? "GENERIC dependencies not found (strict dependencies checking)" "$LINENO" 5 | 30245 | as_fn_error "GENERIC dependencies not found (strict dependencies checking)" "$LINENO" 5 |
29701 | fi | 30246 | fi |
29702 | 30247 | ||
29703 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether GENERIC image loader will be built" >&5 | 30248 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether GENERIC image loader will be built" >&5 |
@@ -29780,7 +30325,8 @@ for ac_header in pthread.h sched.h | |||
29780 | do : | 30325 | do : |
29781 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` | 30326 | as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` |
29782 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" | 30327 | ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" |
29783 | if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : | 30328 | eval as_val=\$$as_ac_Header |
30329 | if test "x$as_val" = x""yes; then : | ||
29784 | cat >>confdefs.h <<_ACEOF | 30330 | cat >>confdefs.h <<_ACEOF |
29785 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 | 30331 | #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 |
29786 | _ACEOF | 30332 | _ACEOF |
@@ -29846,7 +30392,7 @@ $as_echo "#define BUILD_PTHREAD 1" >>confdefs.h | |||
29846 | need_pthreads="yes" | 30392 | need_pthreads="yes" |
29847 | else | 30393 | else |
29848 | if "x$use_strict" = "xyes"; then | 30394 | if "x$use_strict" = "xyes"; then |
29849 | as_fn_error $? "pthreads headers or functions not found (strict dependencies checking)" "$LINENO" 5 | 30395 | as_fn_error "pthreads headers or functions not found (strict dependencies checking)" "$LINENO" 5 |
29850 | else | 30396 | else |
29851 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no: pthread headers or functions not found" >&5 | 30397 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no: pthread headers or functions not found" >&5 |
29852 | $as_echo "no: pthread headers or functions not found" >&6; } | 30398 | $as_echo "no: pthread headers or functions not found" >&6; } |
@@ -29939,10 +30485,11 @@ pkg_failed=no | |||
29939 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XEXT" >&5 | 30485 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XEXT" >&5 |
29940 | $as_echo_n "checking for XEXT... " >&6; } | 30486 | $as_echo_n "checking for XEXT... " >&6; } |
29941 | 30487 | ||
29942 | if test -n "$XEXT_CFLAGS"; then | 30488 | if test -n "$PKG_CONFIG"; then |
29943 | pkg_cv_XEXT_CFLAGS="$XEXT_CFLAGS" | 30489 | if test -n "$XEXT_CFLAGS"; then |
29944 | elif test -n "$PKG_CONFIG"; then | 30490 | pkg_cv_XEXT_CFLAGS="$XEXT_CFLAGS" |
29945 | if test -n "$PKG_CONFIG" && \ | 30491 | else |
30492 | if test -n "$PKG_CONFIG" && \ | ||
29946 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xext < 1.1.1\""; } >&5 | 30493 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xext < 1.1.1\""; } >&5 |
29947 | ($PKG_CONFIG --exists --print-errors "xext < 1.1.1") 2>&5 | 30494 | ($PKG_CONFIG --exists --print-errors "xext < 1.1.1") 2>&5 |
29948 | ac_status=$? | 30495 | ac_status=$? |
@@ -29952,13 +30499,15 @@ if test -n "$XEXT_CFLAGS"; then | |||
29952 | else | 30499 | else |
29953 | pkg_failed=yes | 30500 | pkg_failed=yes |
29954 | fi | 30501 | fi |
29955 | else | 30502 | fi |
29956 | pkg_failed=untried | 30503 | else |
30504 | pkg_failed=untried | ||
29957 | fi | 30505 | fi |
29958 | if test -n "$XEXT_LIBS"; then | 30506 | if test -n "$PKG_CONFIG"; then |
29959 | pkg_cv_XEXT_LIBS="$XEXT_LIBS" | 30507 | if test -n "$XEXT_LIBS"; then |
29960 | elif test -n "$PKG_CONFIG"; then | 30508 | pkg_cv_XEXT_LIBS="$XEXT_LIBS" |
29961 | if test -n "$PKG_CONFIG" && \ | 30509 | else |
30510 | if test -n "$PKG_CONFIG" && \ | ||
29962 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xext < 1.1.1\""; } >&5 | 30511 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"xext < 1.1.1\""; } >&5 |
29963 | ($PKG_CONFIG --exists --print-errors "xext < 1.1.1") 2>&5 | 30512 | ($PKG_CONFIG --exists --print-errors "xext < 1.1.1") 2>&5 |
29964 | ac_status=$? | 30513 | ac_status=$? |
@@ -29968,15 +30517,14 @@ if test -n "$XEXT_LIBS"; then | |||
29968 | else | 30517 | else |
29969 | pkg_failed=yes | 30518 | pkg_failed=yes |
29970 | fi | 30519 | fi |
29971 | else | 30520 | fi |
29972 | pkg_failed=untried | 30521 | else |
30522 | pkg_failed=untried | ||
29973 | fi | 30523 | fi |
29974 | 30524 | ||
29975 | 30525 | ||
29976 | 30526 | ||
29977 | if test $pkg_failed = yes; then | 30527 | if test $pkg_failed = yes; then |
29978 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
29979 | $as_echo "no" >&6; } | ||
29980 | 30528 | ||
29981 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 30529 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
29982 | _pkg_short_errors_supported=yes | 30530 | _pkg_short_errors_supported=yes |
@@ -29984,18 +30532,18 @@ else | |||
29984 | _pkg_short_errors_supported=no | 30532 | _pkg_short_errors_supported=no |
29985 | fi | 30533 | fi |
29986 | if test $_pkg_short_errors_supported = yes; then | 30534 | if test $_pkg_short_errors_supported = yes; then |
29987 | XEXT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xext < 1.1.1" 2>&1` | 30535 | XEXT_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xext < 1.1.1"` |
29988 | else | 30536 | else |
29989 | XEXT_PKG_ERRORS=`$PKG_CONFIG --print-errors "xext < 1.1.1" 2>&1` | 30537 | XEXT_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xext < 1.1.1"` |
29990 | fi | 30538 | fi |
29991 | # Put the nasty error message in config.log where it belongs | 30539 | # Put the nasty error message in config.log where it belongs |
29992 | echo "$XEXT_PKG_ERRORS" >&5 | 30540 | echo "$XEXT_PKG_ERRORS" >&5 |
29993 | 30541 | ||
29994 | build_avoid_libXext_bug=no | 30542 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
30543 | $as_echo "no" >&6; } | ||
30544 | build_avoid_libXext_bug=no | ||
29995 | 30545 | ||
29996 | elif test $pkg_failed = untried; then | 30546 | elif test $pkg_failed = untried; then |
29997 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
29998 | $as_echo "no" >&6; } | ||
29999 | build_avoid_libXext_bug=no | 30547 | build_avoid_libXext_bug=no |
30000 | 30548 | ||
30001 | else | 30549 | else |
@@ -30201,12 +30749,25 @@ $as_echo_n "checking whether to build sse3 code... " >&6; } | |||
30201 | if test "${enable_cpu_sse3+set}" = set; then : | 30749 | if test "${enable_cpu_sse3+set}" = set; then : |
30202 | enableval=$enable_cpu_sse3; | 30750 | enableval=$enable_cpu_sse3; |
30203 | if test "x$enableval" = "xyes" ; then | 30751 | if test "x$enableval" = "xyes" ; then |
30204 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | 30752 | ac_fn_c_check_header_mongrel "$LINENO" "immintrin.h" "ac_cv_header_immintrin_h" "$ac_includes_default" |
30753 | if test "x$ac_cv_header_immintrin_h" = x""yes; then : | ||
30754 | |||
30755 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
30205 | $as_echo "yes" >&6; } | 30756 | $as_echo "yes" >&6; } |
30206 | 30757 | ||
30207 | $as_echo "#define BUILD_SSE3 1" >>confdefs.h | 30758 | $as_echo "#define BUILD_SSE3 1" >>confdefs.h |
30208 | 30759 | ||
30209 | build_cpu_sse3="yes" | 30760 | build_cpu_sse3="yes" |
30761 | |||
30762 | else | ||
30763 | |||
30764 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
30765 | $as_echo "no" >&6; } | ||
30766 | build_cpu_sse3="no" | ||
30767 | |||
30768 | fi | ||
30769 | |||
30770 | |||
30210 | else | 30771 | else |
30211 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | 30772 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
30212 | $as_echo "no" >&6; } | 30773 | $as_echo "no" >&6; } |
@@ -30218,9 +30779,25 @@ else | |||
30218 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $build_cpu_sse3" >&5 | 30779 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: $build_cpu_sse3" >&5 |
30219 | $as_echo "$build_cpu_sse3" >&6; } | 30780 | $as_echo "$build_cpu_sse3" >&6; } |
30220 | if test "x$build_cpu_sse3" = "xyes" ; then | 30781 | if test "x$build_cpu_sse3" = "xyes" ; then |
30782 | ac_fn_c_check_header_mongrel "$LINENO" "immintrin.h" "ac_cv_header_immintrin_h" "$ac_includes_default" | ||
30783 | if test "x$ac_cv_header_immintrin_h" = x""yes; then : | ||
30784 | |||
30785 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||
30786 | $as_echo "yes" >&6; } | ||
30221 | 30787 | ||
30222 | $as_echo "#define BUILD_SSE3 1" >>confdefs.h | 30788 | $as_echo "#define BUILD_SSE3 1" >>confdefs.h |
30223 | 30789 | ||
30790 | build_cpu_sse3="yes" | ||
30791 | |||
30792 | else | ||
30793 | |||
30794 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
30795 | $as_echo "no" >&6; } | ||
30796 | build_cpu_sse3="no" | ||
30797 | |||
30798 | fi | ||
30799 | |||
30800 | |||
30224 | fi | 30801 | fi |
30225 | 30802 | ||
30226 | 30803 | ||
@@ -30309,7 +30886,7 @@ $as_echo "#define HAVE_ALTIVEC_H 1" >>confdefs.h | |||
30309 | else | 30886 | else |
30310 | 30887 | ||
30311 | if test "x$build_cpu_altivec" = "xyes" -a "x$use_strict" = "xyes" ; then | 30888 | if test "x$build_cpu_altivec" = "xyes" -a "x$use_strict" = "xyes" ; then |
30312 | as_fn_error $? "Altivec not found (strict dependencies checking)" "$LINENO" 5 | 30889 | as_fn_error "Altivec not found (strict dependencies checking)" "$LINENO" 5 |
30313 | fi | 30890 | fi |
30314 | build_cpu_altivec="no" | 30891 | build_cpu_altivec="no" |
30315 | 30892 | ||
@@ -31777,10 +32354,11 @@ pkg_failed=no | |||
31777 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for VALGRIND" >&5 | 32354 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for VALGRIND" >&5 |
31778 | $as_echo_n "checking for VALGRIND... " >&6; } | 32355 | $as_echo_n "checking for VALGRIND... " >&6; } |
31779 | 32356 | ||
31780 | if test -n "$VALGRIND_CFLAGS"; then | 32357 | if test -n "$PKG_CONFIG"; then |
31781 | pkg_cv_VALGRIND_CFLAGS="$VALGRIND_CFLAGS" | 32358 | if test -n "$VALGRIND_CFLAGS"; then |
31782 | elif test -n "$PKG_CONFIG"; then | 32359 | pkg_cv_VALGRIND_CFLAGS="$VALGRIND_CFLAGS" |
31783 | if test -n "$PKG_CONFIG" && \ | 32360 | else |
32361 | if test -n "$PKG_CONFIG" && \ | ||
31784 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"valgrind >= 2.4.0\""; } >&5 | 32362 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"valgrind >= 2.4.0\""; } >&5 |
31785 | ($PKG_CONFIG --exists --print-errors "valgrind >= 2.4.0") 2>&5 | 32363 | ($PKG_CONFIG --exists --print-errors "valgrind >= 2.4.0") 2>&5 |
31786 | ac_status=$? | 32364 | ac_status=$? |
@@ -31790,13 +32368,15 @@ if test -n "$VALGRIND_CFLAGS"; then | |||
31790 | else | 32368 | else |
31791 | pkg_failed=yes | 32369 | pkg_failed=yes |
31792 | fi | 32370 | fi |
31793 | else | 32371 | fi |
31794 | pkg_failed=untried | 32372 | else |
32373 | pkg_failed=untried | ||
31795 | fi | 32374 | fi |
31796 | if test -n "$VALGRIND_LIBS"; then | 32375 | if test -n "$PKG_CONFIG"; then |
31797 | pkg_cv_VALGRIND_LIBS="$VALGRIND_LIBS" | 32376 | if test -n "$VALGRIND_LIBS"; then |
31798 | elif test -n "$PKG_CONFIG"; then | 32377 | pkg_cv_VALGRIND_LIBS="$VALGRIND_LIBS" |
31799 | if test -n "$PKG_CONFIG" && \ | 32378 | else |
32379 | if test -n "$PKG_CONFIG" && \ | ||
31800 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"valgrind >= 2.4.0\""; } >&5 | 32380 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"valgrind >= 2.4.0\""; } >&5 |
31801 | ($PKG_CONFIG --exists --print-errors "valgrind >= 2.4.0") 2>&5 | 32381 | ($PKG_CONFIG --exists --print-errors "valgrind >= 2.4.0") 2>&5 |
31802 | ac_status=$? | 32382 | ac_status=$? |
@@ -31806,15 +32386,14 @@ if test -n "$VALGRIND_LIBS"; then | |||
31806 | else | 32386 | else |
31807 | pkg_failed=yes | 32387 | pkg_failed=yes |
31808 | fi | 32388 | fi |
31809 | else | 32389 | fi |
31810 | pkg_failed=untried | 32390 | else |
32391 | pkg_failed=untried | ||
31811 | fi | 32392 | fi |
31812 | 32393 | ||
31813 | 32394 | ||
31814 | 32395 | ||
31815 | if test $pkg_failed = yes; then | 32396 | if test $pkg_failed = yes; then |
31816 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
31817 | $as_echo "no" >&6; } | ||
31818 | 32397 | ||
31819 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 32398 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
31820 | _pkg_short_errors_supported=yes | 32399 | _pkg_short_errors_supported=yes |
@@ -31822,25 +32401,25 @@ else | |||
31822 | _pkg_short_errors_supported=no | 32401 | _pkg_short_errors_supported=no |
31823 | fi | 32402 | fi |
31824 | if test $_pkg_short_errors_supported = yes; then | 32403 | if test $_pkg_short_errors_supported = yes; then |
31825 | VALGRIND_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "valgrind >= 2.4.0" 2>&1` | 32404 | VALGRIND_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "valgrind >= 2.4.0"` |
31826 | else | 32405 | else |
31827 | VALGRIND_PKG_ERRORS=`$PKG_CONFIG --print-errors "valgrind >= 2.4.0" 2>&1` | 32406 | VALGRIND_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "valgrind >= 2.4.0"` |
31828 | fi | 32407 | fi |
31829 | # Put the nasty error message in config.log where it belongs | 32408 | # Put the nasty error message in config.log where it belongs |
31830 | echo "$VALGRIND_PKG_ERRORS" >&5 | 32409 | echo "$VALGRIND_PKG_ERRORS" >&5 |
31831 | 32410 | ||
32411 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
32412 | $as_echo "no" >&6; } | ||
31832 | 32413 | ||
31833 | if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then | 32414 | if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then |
31834 | as_fn_error $? "Valgrind not found (strict dependencies checking)" "$LINENO" 5 | 32415 | as_fn_error "Valgrind not found (strict dependencies checking)" "$LINENO" 5 |
31835 | fi | 32416 | fi |
31836 | 32417 | ||
31837 | 32418 | ||
31838 | elif test $pkg_failed = untried; then | 32419 | elif test $pkg_failed = untried; then |
31839 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
31840 | $as_echo "no" >&6; } | ||
31841 | 32420 | ||
31842 | if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then | 32421 | if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then |
31843 | as_fn_error $? "Valgrind not found (strict dependencies checking)" "$LINENO" 5 | 32422 | as_fn_error "Valgrind not found (strict dependencies checking)" "$LINENO" 5 |
31844 | fi | 32423 | fi |
31845 | 32424 | ||
31846 | 32425 | ||
@@ -31898,10 +32477,11 @@ pkg_failed=no | |||
31898 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ECORE_EVAS" >&5 | 32477 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ECORE_EVAS" >&5 |
31899 | $as_echo_n "checking for ECORE_EVAS... " >&6; } | 32478 | $as_echo_n "checking for ECORE_EVAS... " >&6; } |
31900 | 32479 | ||
31901 | if test -n "$ECORE_EVAS_CFLAGS"; then | 32480 | if test -n "$PKG_CONFIG"; then |
31902 | pkg_cv_ECORE_EVAS_CFLAGS="$ECORE_EVAS_CFLAGS" | 32481 | if test -n "$ECORE_EVAS_CFLAGS"; then |
31903 | elif test -n "$PKG_CONFIG"; then | 32482 | pkg_cv_ECORE_EVAS_CFLAGS="$ECORE_EVAS_CFLAGS" |
31904 | if test -n "$PKG_CONFIG" && \ | 32483 | else |
32484 | if test -n "$PKG_CONFIG" && \ | ||
31905 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ecore-evas ecore\""; } >&5 | 32485 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ecore-evas ecore\""; } >&5 |
31906 | ($PKG_CONFIG --exists --print-errors "ecore-evas ecore") 2>&5 | 32486 | ($PKG_CONFIG --exists --print-errors "ecore-evas ecore") 2>&5 |
31907 | ac_status=$? | 32487 | ac_status=$? |
@@ -31911,13 +32491,15 @@ if test -n "$ECORE_EVAS_CFLAGS"; then | |||
31911 | else | 32491 | else |
31912 | pkg_failed=yes | 32492 | pkg_failed=yes |
31913 | fi | 32493 | fi |
31914 | else | 32494 | fi |
31915 | pkg_failed=untried | 32495 | else |
32496 | pkg_failed=untried | ||
31916 | fi | 32497 | fi |
31917 | if test -n "$ECORE_EVAS_LIBS"; then | 32498 | if test -n "$PKG_CONFIG"; then |
31918 | pkg_cv_ECORE_EVAS_LIBS="$ECORE_EVAS_LIBS" | 32499 | if test -n "$ECORE_EVAS_LIBS"; then |
31919 | elif test -n "$PKG_CONFIG"; then | 32500 | pkg_cv_ECORE_EVAS_LIBS="$ECORE_EVAS_LIBS" |
31920 | if test -n "$PKG_CONFIG" && \ | 32501 | else |
32502 | if test -n "$PKG_CONFIG" && \ | ||
31921 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ecore-evas ecore\""; } >&5 | 32503 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"ecore-evas ecore\""; } >&5 |
31922 | ($PKG_CONFIG --exists --print-errors "ecore-evas ecore") 2>&5 | 32504 | ($PKG_CONFIG --exists --print-errors "ecore-evas ecore") 2>&5 |
31923 | ac_status=$? | 32505 | ac_status=$? |
@@ -31927,15 +32509,14 @@ if test -n "$ECORE_EVAS_LIBS"; then | |||
31927 | else | 32509 | else |
31928 | pkg_failed=yes | 32510 | pkg_failed=yes |
31929 | fi | 32511 | fi |
31930 | else | 32512 | fi |
31931 | pkg_failed=untried | 32513 | else |
32514 | pkg_failed=untried | ||
31932 | fi | 32515 | fi |
31933 | 32516 | ||
31934 | 32517 | ||
31935 | 32518 | ||
31936 | if test $pkg_failed = yes; then | 32519 | if test $pkg_failed = yes; then |
31937 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
31938 | $as_echo "no" >&6; } | ||
31939 | 32520 | ||
31940 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 32521 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
31941 | _pkg_short_errors_supported=yes | 32522 | _pkg_short_errors_supported=yes |
@@ -31943,34 +32524,35 @@ else | |||
31943 | _pkg_short_errors_supported=no | 32524 | _pkg_short_errors_supported=no |
31944 | fi | 32525 | fi |
31945 | if test $_pkg_short_errors_supported = yes; then | 32526 | if test $_pkg_short_errors_supported = yes; then |
31946 | ECORE_EVAS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "ecore-evas ecore" 2>&1` | 32527 | ECORE_EVAS_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "ecore-evas ecore"` |
31947 | else | 32528 | else |
31948 | ECORE_EVAS_PKG_ERRORS=`$PKG_CONFIG --print-errors "ecore-evas ecore" 2>&1` | 32529 | ECORE_EVAS_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "ecore-evas ecore"` |
31949 | fi | 32530 | fi |
31950 | # Put the nasty error message in config.log where it belongs | 32531 | # Put the nasty error message in config.log where it belongs |
31951 | echo "$ECORE_EVAS_PKG_ERRORS" >&5 | 32532 | echo "$ECORE_EVAS_PKG_ERRORS" >&5 |
31952 | 32533 | ||
31953 | build_examples="no" | 32534 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
31954 | elif test $pkg_failed = untried; then | ||
31955 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
31956 | $as_echo "no" >&6; } | 32535 | $as_echo "no" >&6; } |
32536 | build_examples="no" | ||
32537 | elif test $pkg_failed = untried; then | ||
31957 | build_examples="no" | 32538 | build_examples="no" |
31958 | else | 32539 | else |
31959 | ECORE_EVAS_CFLAGS=$pkg_cv_ECORE_EVAS_CFLAGS | 32540 | ECORE_EVAS_CFLAGS=$pkg_cv_ECORE_EVAS_CFLAGS |
31960 | ECORE_EVAS_LIBS=$pkg_cv_ECORE_EVAS_LIBS | 32541 | ECORE_EVAS_LIBS=$pkg_cv_ECORE_EVAS_LIBS |
31961 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | 32542 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 |
31962 | $as_echo "yes" >&6; } | 32543 | $as_echo "yes" >&6; } |
31963 | 32544 | : | |
31964 | fi | 32545 | fi |
31965 | 32546 | ||
31966 | pkg_failed=no | 32547 | pkg_failed=no |
31967 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EDJE" >&5 | 32548 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EDJE" >&5 |
31968 | $as_echo_n "checking for EDJE... " >&6; } | 32549 | $as_echo_n "checking for EDJE... " >&6; } |
31969 | 32550 | ||
31970 | if test -n "$EDJE_CFLAGS"; then | 32551 | if test -n "$PKG_CONFIG"; then |
31971 | pkg_cv_EDJE_CFLAGS="$EDJE_CFLAGS" | 32552 | if test -n "$EDJE_CFLAGS"; then |
31972 | elif test -n "$PKG_CONFIG"; then | 32553 | pkg_cv_EDJE_CFLAGS="$EDJE_CFLAGS" |
31973 | if test -n "$PKG_CONFIG" && \ | 32554 | else |
32555 | if test -n "$PKG_CONFIG" && \ | ||
31974 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edje\""; } >&5 | 32556 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edje\""; } >&5 |
31975 | ($PKG_CONFIG --exists --print-errors "edje") 2>&5 | 32557 | ($PKG_CONFIG --exists --print-errors "edje") 2>&5 |
31976 | ac_status=$? | 32558 | ac_status=$? |
@@ -31980,13 +32562,15 @@ if test -n "$EDJE_CFLAGS"; then | |||
31980 | else | 32562 | else |
31981 | pkg_failed=yes | 32563 | pkg_failed=yes |
31982 | fi | 32564 | fi |
31983 | else | 32565 | fi |
31984 | pkg_failed=untried | 32566 | else |
32567 | pkg_failed=untried | ||
31985 | fi | 32568 | fi |
31986 | if test -n "$EDJE_LIBS"; then | 32569 | if test -n "$PKG_CONFIG"; then |
31987 | pkg_cv_EDJE_LIBS="$EDJE_LIBS" | 32570 | if test -n "$EDJE_LIBS"; then |
31988 | elif test -n "$PKG_CONFIG"; then | 32571 | pkg_cv_EDJE_LIBS="$EDJE_LIBS" |
31989 | if test -n "$PKG_CONFIG" && \ | 32572 | else |
32573 | if test -n "$PKG_CONFIG" && \ | ||
31990 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edje\""; } >&5 | 32574 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"edje\""; } >&5 |
31991 | ($PKG_CONFIG --exists --print-errors "edje") 2>&5 | 32575 | ($PKG_CONFIG --exists --print-errors "edje") 2>&5 |
31992 | ac_status=$? | 32576 | ac_status=$? |
@@ -31996,15 +32580,14 @@ if test -n "$EDJE_LIBS"; then | |||
31996 | else | 32580 | else |
31997 | pkg_failed=yes | 32581 | pkg_failed=yes |
31998 | fi | 32582 | fi |
31999 | else | 32583 | fi |
32000 | pkg_failed=untried | 32584 | else |
32585 | pkg_failed=untried | ||
32001 | fi | 32586 | fi |
32002 | 32587 | ||
32003 | 32588 | ||
32004 | 32589 | ||
32005 | if test $pkg_failed = yes; then | 32590 | if test $pkg_failed = yes; then |
32006 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
32007 | $as_echo "no" >&6; } | ||
32008 | 32591 | ||
32009 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 32592 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
32010 | _pkg_short_errors_supported=yes | 32593 | _pkg_short_errors_supported=yes |
@@ -32012,17 +32595,17 @@ else | |||
32012 | _pkg_short_errors_supported=no | 32595 | _pkg_short_errors_supported=no |
32013 | fi | 32596 | fi |
32014 | if test $_pkg_short_errors_supported = yes; then | 32597 | if test $_pkg_short_errors_supported = yes; then |
32015 | EDJE_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "edje" 2>&1` | 32598 | EDJE_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "edje"` |
32016 | else | 32599 | else |
32017 | EDJE_PKG_ERRORS=`$PKG_CONFIG --print-errors "edje" 2>&1` | 32600 | EDJE_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "edje"` |
32018 | fi | 32601 | fi |
32019 | # Put the nasty error message in config.log where it belongs | 32602 | # Put the nasty error message in config.log where it belongs |
32020 | echo "$EDJE_PKG_ERRORS" >&5 | 32603 | echo "$EDJE_PKG_ERRORS" >&5 |
32021 | 32604 | ||
32022 | build_examples="no" | 32605 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
32023 | elif test $pkg_failed = untried; then | ||
32024 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
32025 | $as_echo "no" >&6; } | 32606 | $as_echo "no" >&6; } |
32607 | build_examples="no" | ||
32608 | elif test $pkg_failed = untried; then | ||
32026 | build_examples="no" | 32609 | build_examples="no" |
32027 | else | 32610 | else |
32028 | EDJE_CFLAGS=$pkg_cv_EDJE_CFLAGS | 32611 | EDJE_CFLAGS=$pkg_cv_EDJE_CFLAGS |
@@ -32081,10 +32664,11 @@ pkg_failed=no | |||
32081 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CHECK" >&5 | 32664 | { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CHECK" >&5 |
32082 | $as_echo_n "checking for CHECK... " >&6; } | 32665 | $as_echo_n "checking for CHECK... " >&6; } |
32083 | 32666 | ||
32084 | if test -n "$CHECK_CFLAGS"; then | 32667 | if test -n "$PKG_CONFIG"; then |
32085 | pkg_cv_CHECK_CFLAGS="$CHECK_CFLAGS" | 32668 | if test -n "$CHECK_CFLAGS"; then |
32086 | elif test -n "$PKG_CONFIG"; then | 32669 | pkg_cv_CHECK_CFLAGS="$CHECK_CFLAGS" |
32087 | if test -n "$PKG_CONFIG" && \ | 32670 | else |
32671 | if test -n "$PKG_CONFIG" && \ | ||
32088 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"check >= 0.9.5\""; } >&5 | 32672 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"check >= 0.9.5\""; } >&5 |
32089 | ($PKG_CONFIG --exists --print-errors "check >= 0.9.5") 2>&5 | 32673 | ($PKG_CONFIG --exists --print-errors "check >= 0.9.5") 2>&5 |
32090 | ac_status=$? | 32674 | ac_status=$? |
@@ -32094,13 +32678,15 @@ if test -n "$CHECK_CFLAGS"; then | |||
32094 | else | 32678 | else |
32095 | pkg_failed=yes | 32679 | pkg_failed=yes |
32096 | fi | 32680 | fi |
32097 | else | 32681 | fi |
32098 | pkg_failed=untried | 32682 | else |
32683 | pkg_failed=untried | ||
32099 | fi | 32684 | fi |
32100 | if test -n "$CHECK_LIBS"; then | 32685 | if test -n "$PKG_CONFIG"; then |
32101 | pkg_cv_CHECK_LIBS="$CHECK_LIBS" | 32686 | if test -n "$CHECK_LIBS"; then |
32102 | elif test -n "$PKG_CONFIG"; then | 32687 | pkg_cv_CHECK_LIBS="$CHECK_LIBS" |
32103 | if test -n "$PKG_CONFIG" && \ | 32688 | else |
32689 | if test -n "$PKG_CONFIG" && \ | ||
32104 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"check >= 0.9.5\""; } >&5 | 32690 | { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"check >= 0.9.5\""; } >&5 |
32105 | ($PKG_CONFIG --exists --print-errors "check >= 0.9.5") 2>&5 | 32691 | ($PKG_CONFIG --exists --print-errors "check >= 0.9.5") 2>&5 |
32106 | ac_status=$? | 32692 | ac_status=$? |
@@ -32110,15 +32696,14 @@ if test -n "$CHECK_LIBS"; then | |||
32110 | else | 32696 | else |
32111 | pkg_failed=yes | 32697 | pkg_failed=yes |
32112 | fi | 32698 | fi |
32113 | else | 32699 | fi |
32114 | pkg_failed=untried | 32700 | else |
32701 | pkg_failed=untried | ||
32115 | fi | 32702 | fi |
32116 | 32703 | ||
32117 | 32704 | ||
32118 | 32705 | ||
32119 | if test $pkg_failed = yes; then | 32706 | if test $pkg_failed = yes; then |
32120 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
32121 | $as_echo "no" >&6; } | ||
32122 | 32707 | ||
32123 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then | 32708 | if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then |
32124 | _pkg_short_errors_supported=yes | 32709 | _pkg_short_errors_supported=yes |
@@ -32126,17 +32711,17 @@ else | |||
32126 | _pkg_short_errors_supported=no | 32711 | _pkg_short_errors_supported=no |
32127 | fi | 32712 | fi |
32128 | if test $_pkg_short_errors_supported = yes; then | 32713 | if test $_pkg_short_errors_supported = yes; then |
32129 | CHECK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "check >= 0.9.5" 2>&1` | 32714 | CHECK_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "check >= 0.9.5"` |
32130 | else | 32715 | else |
32131 | CHECK_PKG_ERRORS=`$PKG_CONFIG --print-errors "check >= 0.9.5" 2>&1` | 32716 | CHECK_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "check >= 0.9.5"` |
32132 | fi | 32717 | fi |
32133 | # Put the nasty error message in config.log where it belongs | 32718 | # Put the nasty error message in config.log where it belongs |
32134 | echo "$CHECK_PKG_ERRORS" >&5 | 32719 | echo "$CHECK_PKG_ERRORS" >&5 |
32135 | 32720 | ||
32136 | _efl_enable_tests="no" | 32721 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 |
32137 | elif test $pkg_failed = untried; then | ||
32138 | { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||
32139 | $as_echo "no" >&6; } | 32722 | $as_echo "no" >&6; } |
32723 | _efl_enable_tests="no" | ||
32724 | elif test $pkg_failed = untried; then | ||
32140 | _efl_enable_tests="no" | 32725 | _efl_enable_tests="no" |
32141 | else | 32726 | else |
32142 | CHECK_CFLAGS=$pkg_cv_CHECK_CFLAGS | 32727 | CHECK_CFLAGS=$pkg_cv_CHECK_CFLAGS |
@@ -32289,7 +32874,7 @@ fi | |||
32289 | ##################################################################### | 32874 | ##################################################################### |
32290 | ## Output | 32875 | ## Output |
32291 | 32876 | ||
32292 | ac_config_files="$ac_config_files Makefile evas-directfb.pc evas-fb.pc evas-opengl-x11.pc evas-opengl-sdl.pc evas-opengl-cocoa.pc evas-software-buffer.pc evas-software-x11.pc evas-software-8-x11.pc evas-software-16-x11.pc evas-software-gdi.pc evas-software-ddraw.pc evas-software-16-ddraw.pc evas-direct3d.pc evas-software-16-wince.pc evas-software-sdl.pc evas-psl1ght.pc evas.pc doc/evas.dox doc/Makefile doc/Doxyfile src/Makefile src/bin/Makefile src/lib/Makefile src/lib/canvas/Makefile src/lib/file/Makefile src/lib/cache/Makefile src/lib/cserve/Makefile src/lib/engines/Makefile src/lib/engines/common/Makefile src/lib/engines/common/evas_op_add/Makefile src/lib/engines/common/evas_op_blend/Makefile src/lib/engines/common/evas_op_copy/Makefile src/lib/engines/common/evas_op_mask/Makefile src/lib/engines/common/evas_op_mul/Makefile src/lib/engines/common/evas_op_sub/Makefile src/lib/engines/common_8/Makefile src/lib/engines/common_16/Makefile src/modules/Makefile src/modules/engines/Makefile src/modules/engines/software_generic/Makefile src/modules/engines/software_gdi/Makefile src/modules/engines/software_ddraw/Makefile src/modules/engines/direct3d/Makefile src/modules/engines/software_16_wince/Makefile src/modules/engines/software_x11/Makefile src/modules/engines/fb/Makefile src/modules/engines/buffer/Makefile src/modules/engines/directfb/Makefile src/modules/engines/gl_common/Makefile src/modules/engines/gl_x11/Makefile src/modules/engines/gl_sdl/Makefile src/modules/engines/gl_cocoa/Makefile src/modules/engines/psl1ght/Makefile src/modules/engines/software_sdl/Makefile src/modules/engines/software_8/Makefile src/modules/engines/software_8_x11/Makefile src/modules/engines/software_16/Makefile src/modules/engines/software_16_x11/Makefile src/modules/engines/software_16_ddraw/Makefile src/modules/engines/software_16_sdl/Makefile src/modules/loaders/Makefile src/modules/loaders/edb/Makefile src/modules/loaders/eet/Makefile src/modules/loaders/gif/Makefile src/modules/loaders/jpeg/Makefile src/modules/loaders/png/Makefile src/modules/loaders/tiff/Makefile src/modules/loaders/xpm/Makefile src/modules/loaders/bmp/Makefile src/modules/loaders/ico/Makefile src/modules/loaders/tga/Makefile src/modules/loaders/svg/Makefile src/modules/loaders/pmaps/Makefile src/modules/loaders/wbmp/Makefile src/modules/loaders/psd/Makefile src/modules/loaders/generic/Makefile src/modules/savers/Makefile src/modules/savers/edb/Makefile src/modules/savers/eet/Makefile src/modules/savers/jpeg/Makefile src/modules/savers/png/Makefile src/modules/savers/tiff/Makefile src/static_deps/Makefile src/static_deps/liblinebreak/Makefile src/lib/include/Makefile src/examples/Makefile src/tests/Makefile evas.spec" | 32877 | ac_config_files="$ac_config_files Makefile evas-directfb.pc evas-fb.pc evas-opengl-x11.pc evas-opengl-sdl.pc evas-opengl-cocoa.pc evas-software-buffer.pc evas-software-x11.pc evas-software-8-x11.pc evas-software-16-x11.pc evas-software-gdi.pc evas-software-ddraw.pc evas-software-16-ddraw.pc evas-direct3d.pc evas-software-16-wince.pc evas-software-sdl.pc evas-psl1ght.pc evas-wayland-shm.pc evas-wayland-egl.pc evas.pc doc/evas.dox doc/Makefile doc/Doxyfile src/Makefile src/bin/Makefile src/lib/Makefile src/lib/canvas/Makefile src/lib/file/Makefile src/lib/cache/Makefile src/lib/cserve/Makefile src/lib/engines/Makefile src/lib/engines/common/Makefile src/lib/engines/common/evas_op_add/Makefile src/lib/engines/common/evas_op_blend/Makefile src/lib/engines/common/evas_op_copy/Makefile src/lib/engines/common/evas_op_mask/Makefile src/lib/engines/common/evas_op_mul/Makefile src/lib/engines/common/evas_op_sub/Makefile src/lib/engines/common_8/Makefile src/lib/engines/common_16/Makefile src/modules/Makefile src/modules/engines/Makefile src/modules/engines/software_generic/Makefile src/modules/engines/software_gdi/Makefile src/modules/engines/software_ddraw/Makefile src/modules/engines/direct3d/Makefile src/modules/engines/software_16_wince/Makefile src/modules/engines/software_x11/Makefile src/modules/engines/fb/Makefile src/modules/engines/buffer/Makefile src/modules/engines/directfb/Makefile src/modules/engines/gl_common/Makefile src/modules/engines/gl_x11/Makefile src/modules/engines/gl_sdl/Makefile src/modules/engines/gl_cocoa/Makefile src/modules/engines/psl1ght/Makefile src/modules/engines/software_sdl/Makefile src/modules/engines/software_8/Makefile src/modules/engines/software_8_x11/Makefile src/modules/engines/software_16/Makefile src/modules/engines/software_16_x11/Makefile src/modules/engines/software_16_ddraw/Makefile src/modules/engines/software_16_sdl/Makefile src/modules/engines/wayland_shm/Makefile src/modules/engines/wayland_egl/Makefile src/modules/loaders/Makefile src/modules/loaders/edb/Makefile src/modules/loaders/eet/Makefile src/modules/loaders/gif/Makefile src/modules/loaders/jpeg/Makefile src/modules/loaders/png/Makefile src/modules/loaders/tiff/Makefile src/modules/loaders/xpm/Makefile src/modules/loaders/bmp/Makefile src/modules/loaders/ico/Makefile src/modules/loaders/tga/Makefile src/modules/loaders/svg/Makefile src/modules/loaders/pmaps/Makefile src/modules/loaders/wbmp/Makefile src/modules/loaders/psd/Makefile src/modules/loaders/generic/Makefile src/modules/savers/Makefile src/modules/savers/edb/Makefile src/modules/savers/eet/Makefile src/modules/savers/jpeg/Makefile src/modules/savers/png/Makefile src/modules/savers/tiff/Makefile src/static_deps/Makefile src/static_deps/liblinebreak/Makefile src/lib/include/Makefile src/examples/Makefile src/tests/Makefile evas.spec" |
32293 | 32878 | ||
32294 | cat >confcache <<\_ACEOF | 32879 | cat >confcache <<\_ACEOF |
32295 | # This file is a shell script that caches the results of configure | 32880 | # This file is a shell script that caches the results of configure |
@@ -32374,7 +32959,6 @@ DEFS=-DHAVE_CONFIG_H | |||
32374 | 32959 | ||
32375 | ac_libobjs= | 32960 | ac_libobjs= |
32376 | ac_ltlibobjs= | 32961 | ac_ltlibobjs= |
32377 | U= | ||
32378 | for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue | 32962 | for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue |
32379 | # 1. Remove the extension, and $U if already installed. | 32963 | # 1. Remove the extension, and $U if already installed. |
32380 | ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' | 32964 | ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' |
@@ -32398,424 +32982,440 @@ else | |||
32398 | fi | 32982 | fi |
32399 | 32983 | ||
32400 | if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then | 32984 | if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then |
32401 | as_fn_error $? "conditional \"AMDEP\" was never defined. | 32985 | as_fn_error "conditional \"AMDEP\" was never defined. |
32402 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 32986 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32403 | fi | 32987 | fi |
32404 | if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then | 32988 | if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then |
32405 | as_fn_error $? "conditional \"am__fastdepCC\" was never defined. | 32989 | as_fn_error "conditional \"am__fastdepCC\" was never defined. |
32406 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 32990 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32407 | fi | 32991 | fi |
32408 | if test -z "${am__fastdepOBJC_TRUE}" && test -z "${am__fastdepOBJC_FALSE}"; then | 32992 | if test -z "${am__fastdepOBJC_TRUE}" && test -z "${am__fastdepOBJC_FALSE}"; then |
32409 | as_fn_error $? "conditional \"am__fastdepOBJC\" was never defined. | 32993 | as_fn_error "conditional \"am__fastdepOBJC\" was never defined. |
32410 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 32994 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32411 | fi | 32995 | fi |
32412 | if test -z "${am__fastdepOBJC_TRUE}" && test -z "${am__fastdepOBJC_FALSE}"; then | 32996 | if test -z "${am__fastdepOBJC_TRUE}" && test -z "${am__fastdepOBJC_FALSE}"; then |
32413 | as_fn_error $? "conditional \"am__fastdepOBJC\" was never defined. | 32997 | as_fn_error "conditional \"am__fastdepOBJC\" was never defined. |
32414 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 32998 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32415 | fi | 32999 | fi |
32416 | if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then | 33000 | if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then |
32417 | as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. | 33001 | as_fn_error "conditional \"am__fastdepCXX\" was never defined. |
32418 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33002 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32419 | fi | 33003 | fi |
32420 | if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then | 33004 | if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then |
32421 | as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. | 33005 | as_fn_error "conditional \"am__fastdepCXX\" was never defined. |
32422 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33006 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32423 | fi | 33007 | fi |
32424 | if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then | 33008 | if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then |
32425 | as_fn_error $? "conditional \"am__fastdepCC\" was never defined. | 33009 | as_fn_error "conditional \"am__fastdepCC\" was never defined. |
32426 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33010 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32427 | fi | 33011 | fi |
32428 | if test -z "${EFL_BUILD_DOC_TRUE}" && test -z "${EFL_BUILD_DOC_FALSE}"; then | 33012 | if test -z "${EFL_BUILD_DOC_TRUE}" && test -z "${EFL_BUILD_DOC_FALSE}"; then |
32429 | as_fn_error $? "conditional \"EFL_BUILD_DOC\" was never defined. | 33013 | as_fn_error "conditional \"EFL_BUILD_DOC\" was never defined. |
32430 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33014 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32431 | fi | 33015 | fi |
32432 | if test -z "${EVAS_USE_LINEBREAK_TRUE}" && test -z "${EVAS_USE_LINEBREAK_FALSE}"; then | 33016 | if test -z "${EVAS_USE_LINEBREAK_TRUE}" && test -z "${EVAS_USE_LINEBREAK_FALSE}"; then |
32433 | as_fn_error $? "conditional \"EVAS_USE_LINEBREAK\" was never defined. | 33017 | as_fn_error "conditional \"EVAS_USE_LINEBREAK\" was never defined. |
32434 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33018 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32435 | fi | 33019 | fi |
32436 | 33020 | ||
32437 | if test -z "${EVAS_CSERVE_TRUE}" && test -z "${EVAS_CSERVE_FALSE}"; then | 33021 | if test -z "${EVAS_CSERVE_TRUE}" && test -z "${EVAS_CSERVE_FALSE}"; then |
32438 | as_fn_error $? "conditional \"EVAS_CSERVE\" was never defined. | 33022 | as_fn_error "conditional \"EVAS_CSERVE\" was never defined. |
32439 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33023 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32440 | fi | 33024 | fi |
32441 | if test -z "${BUILD_ENGINE_BUFFER_TRUE}" && test -z "${BUILD_ENGINE_BUFFER_FALSE}"; then | 33025 | if test -z "${BUILD_ENGINE_BUFFER_TRUE}" && test -z "${BUILD_ENGINE_BUFFER_FALSE}"; then |
32442 | as_fn_error $? "conditional \"BUILD_ENGINE_BUFFER\" was never defined. | 33026 | as_fn_error "conditional \"BUILD_ENGINE_BUFFER\" was never defined. |
32443 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33027 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32444 | fi | 33028 | fi |
32445 | if test -z "${EVAS_STATIC_BUILD_BUFFER_TRUE}" && test -z "${EVAS_STATIC_BUILD_BUFFER_FALSE}"; then | 33029 | if test -z "${EVAS_STATIC_BUILD_BUFFER_TRUE}" && test -z "${EVAS_STATIC_BUILD_BUFFER_FALSE}"; then |
32446 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_BUFFER\" was never defined. | 33030 | as_fn_error "conditional \"EVAS_STATIC_BUILD_BUFFER\" was never defined. |
32447 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33031 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32448 | fi | 33032 | fi |
32449 | if test -z "${BUILD_ENGINE_SOFTWARE_GDI_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_GDI_FALSE}"; then | 33033 | if test -z "${BUILD_ENGINE_SOFTWARE_GDI_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_GDI_FALSE}"; then |
32450 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_GDI\" was never defined. | 33034 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_GDI\" was never defined. |
32451 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33035 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32452 | fi | 33036 | fi |
32453 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_GDI_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_GDI_FALSE}"; then | 33037 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_GDI_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_GDI_FALSE}"; then |
32454 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_GDI\" was never defined. | 33038 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_GDI\" was never defined. |
32455 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33039 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32456 | fi | 33040 | fi |
32457 | if test -z "${BUILD_ENGINE_SOFTWARE_DDRAW_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_DDRAW_FALSE}"; then | 33041 | if test -z "${BUILD_ENGINE_SOFTWARE_DDRAW_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_DDRAW_FALSE}"; then |
32458 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_DDRAW\" was never defined. | 33042 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_DDRAW\" was never defined. |
32459 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33043 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32460 | fi | 33044 | fi |
32461 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_DDRAW_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_DDRAW_FALSE}"; then | 33045 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_DDRAW_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_DDRAW_FALSE}"; then |
32462 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_DDRAW\" was never defined. | 33046 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_DDRAW\" was never defined. |
32463 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33047 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32464 | fi | 33048 | fi |
32465 | if test -z "${BUILD_ENGINE_DIRECT3D_TRUE}" && test -z "${BUILD_ENGINE_DIRECT3D_FALSE}"; then | 33049 | if test -z "${BUILD_ENGINE_DIRECT3D_TRUE}" && test -z "${BUILD_ENGINE_DIRECT3D_FALSE}"; then |
32466 | as_fn_error $? "conditional \"BUILD_ENGINE_DIRECT3D\" was never defined. | 33050 | as_fn_error "conditional \"BUILD_ENGINE_DIRECT3D\" was never defined. |
32467 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33051 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32468 | fi | 33052 | fi |
32469 | if test -z "${EVAS_STATIC_BUILD_DIRECT3D_TRUE}" && test -z "${EVAS_STATIC_BUILD_DIRECT3D_FALSE}"; then | 33053 | if test -z "${EVAS_STATIC_BUILD_DIRECT3D_TRUE}" && test -z "${EVAS_STATIC_BUILD_DIRECT3D_FALSE}"; then |
32470 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_DIRECT3D\" was never defined. | 33054 | as_fn_error "conditional \"EVAS_STATIC_BUILD_DIRECT3D\" was never defined. |
32471 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33055 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32472 | fi | 33056 | fi |
32473 | if test -z "${BUILD_ENGINE_SOFTWARE_SDL_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_SDL_FALSE}"; then | 33057 | if test -z "${BUILD_ENGINE_SOFTWARE_SDL_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_SDL_FALSE}"; then |
32474 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_SDL\" was never defined. | 33058 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_SDL\" was never defined. |
32475 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33059 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32476 | fi | 33060 | fi |
32477 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE}"; then | 33061 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_SDL_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_SDL_FALSE}"; then |
32478 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_SDL\" was never defined. | 33062 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_SDL\" was never defined. |
32479 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33063 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32480 | fi | 33064 | fi |
32481 | if test -z "${BUILD_ENGINE_PSL1GHT_TRUE}" && test -z "${BUILD_ENGINE_PSL1GHT_FALSE}"; then | 33065 | if test -z "${BUILD_ENGINE_PSL1GHT_TRUE}" && test -z "${BUILD_ENGINE_PSL1GHT_FALSE}"; then |
32482 | as_fn_error $? "conditional \"BUILD_ENGINE_PSL1GHT\" was never defined. | 33066 | as_fn_error "conditional \"BUILD_ENGINE_PSL1GHT\" was never defined. |
32483 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33067 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32484 | fi | 33068 | fi |
32485 | if test -z "${EVAS_STATIC_BUILD_PSL1GHT_TRUE}" && test -z "${EVAS_STATIC_BUILD_PSL1GHT_FALSE}"; then | 33069 | if test -z "${EVAS_STATIC_BUILD_PSL1GHT_TRUE}" && test -z "${EVAS_STATIC_BUILD_PSL1GHT_FALSE}"; then |
32486 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_PSL1GHT\" was never defined. | 33070 | as_fn_error "conditional \"EVAS_STATIC_BUILD_PSL1GHT\" was never defined. |
32487 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33071 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32488 | fi | 33072 | fi |
32489 | if test -z "${BUILD_ENGINE_GL_SDL_TRUE}" && test -z "${BUILD_ENGINE_GL_SDL_FALSE}"; then | 33073 | if test -z "${BUILD_ENGINE_GL_SDL_TRUE}" && test -z "${BUILD_ENGINE_GL_SDL_FALSE}"; then |
32490 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_SDL\" was never defined. | 33074 | as_fn_error "conditional \"BUILD_ENGINE_GL_SDL\" was never defined. |
32491 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33075 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32492 | fi | 33076 | fi |
32493 | if test -z "${EVAS_STATIC_BUILD_GL_SDL_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_SDL_FALSE}"; then | 33077 | if test -z "${EVAS_STATIC_BUILD_GL_SDL_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_SDL_FALSE}"; then |
32494 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_SDL\" was never defined. | 33078 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_SDL\" was never defined. |
32495 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33079 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32496 | fi | 33080 | fi |
32497 | if test -z "${BUILD_ENGINE_GL_COCOA_TRUE}" && test -z "${BUILD_ENGINE_GL_COCOA_FALSE}"; then | 33081 | if test -z "${BUILD_ENGINE_GL_COCOA_TRUE}" && test -z "${BUILD_ENGINE_GL_COCOA_FALSE}"; then |
32498 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_COCOA\" was never defined. | 33082 | as_fn_error "conditional \"BUILD_ENGINE_GL_COCOA\" was never defined. |
32499 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33083 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32500 | fi | 33084 | fi |
32501 | if test -z "${EVAS_STATIC_BUILD_GL_COCOA_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_COCOA_FALSE}"; then | 33085 | if test -z "${EVAS_STATIC_BUILD_GL_COCOA_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_COCOA_FALSE}"; then |
32502 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_COCOA\" was never defined. | 33086 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_COCOA\" was never defined. |
32503 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33087 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32504 | fi | 33088 | fi |
32505 | if test -z "${BUILD_ENGINE_FB_TRUE}" && test -z "${BUILD_ENGINE_FB_FALSE}"; then | 33089 | if test -z "${BUILD_ENGINE_FB_TRUE}" && test -z "${BUILD_ENGINE_FB_FALSE}"; then |
32506 | as_fn_error $? "conditional \"BUILD_ENGINE_FB\" was never defined. | 33090 | as_fn_error "conditional \"BUILD_ENGINE_FB\" was never defined. |
32507 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33091 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32508 | fi | 33092 | fi |
32509 | if test -z "${EVAS_STATIC_BUILD_FB_TRUE}" && test -z "${EVAS_STATIC_BUILD_FB_FALSE}"; then | 33093 | if test -z "${EVAS_STATIC_BUILD_FB_TRUE}" && test -z "${EVAS_STATIC_BUILD_FB_FALSE}"; then |
32510 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_FB\" was never defined. | 33094 | as_fn_error "conditional \"EVAS_STATIC_BUILD_FB\" was never defined. |
32511 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33095 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32512 | fi | 33096 | fi |
32513 | if test -z "${BUILD_ENGINE_DIRECTFB_TRUE}" && test -z "${BUILD_ENGINE_DIRECTFB_FALSE}"; then | 33097 | if test -z "${BUILD_ENGINE_DIRECTFB_TRUE}" && test -z "${BUILD_ENGINE_DIRECTFB_FALSE}"; then |
32514 | as_fn_error $? "conditional \"BUILD_ENGINE_DIRECTFB\" was never defined. | 33098 | as_fn_error "conditional \"BUILD_ENGINE_DIRECTFB\" was never defined. |
32515 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33099 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32516 | fi | 33100 | fi |
32517 | if test -z "${EVAS_STATIC_BUILD_DIRECTFB_TRUE}" && test -z "${EVAS_STATIC_BUILD_DIRECTFB_FALSE}"; then | 33101 | if test -z "${EVAS_STATIC_BUILD_DIRECTFB_TRUE}" && test -z "${EVAS_STATIC_BUILD_DIRECTFB_FALSE}"; then |
32518 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_DIRECTFB\" was never defined. | 33102 | as_fn_error "conditional \"EVAS_STATIC_BUILD_DIRECTFB\" was never defined. |
32519 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33103 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32520 | fi | 33104 | fi |
32521 | if test -z "${BUILD_ENGINE_SOFTWARE_8_X11_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_8_X11_FALSE}"; then | 33105 | if test -z "${BUILD_ENGINE_SOFTWARE_8_X11_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_8_X11_FALSE}"; then |
32522 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_8_X11\" was never defined. | 33106 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_8_X11\" was never defined. |
32523 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33107 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32524 | fi | 33108 | fi |
32525 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_X11_FALSE}"; then | 33109 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_X11_FALSE}"; then |
32526 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_8_X11\" was never defined. | 33110 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_8_X11\" was never defined. |
32527 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33111 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32528 | fi | 33112 | fi |
32529 | if test -z "${BUILD_ENGINE_SOFTWARE_16_X11_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_X11_FALSE}"; then | 33113 | if test -z "${BUILD_ENGINE_SOFTWARE_16_X11_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_X11_FALSE}"; then |
32530 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_16_X11\" was never defined. | 33114 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_16_X11\" was never defined. |
32531 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33115 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32532 | fi | 33116 | fi |
32533 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_X11_FALSE}"; then | 33117 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_X11_FALSE}"; then |
32534 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_X11\" was never defined. | 33118 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_X11\" was never defined. |
32535 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33119 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32536 | fi | 33120 | fi |
32537 | if test -z "${BUILD_ENGINE_SOFTWARE_16_DDRAW_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_DDRAW_FALSE}"; then | 33121 | if test -z "${BUILD_ENGINE_SOFTWARE_16_DDRAW_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_DDRAW_FALSE}"; then |
32538 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_16_DDRAW\" was never defined. | 33122 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_16_DDRAW\" was never defined. |
32539 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33123 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32540 | fi | 33124 | fi |
32541 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_DDRAW_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_DDRAW_FALSE}"; then | 33125 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_DDRAW_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_DDRAW_FALSE}"; then |
32542 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_DDRAW\" was never defined. | 33126 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_DDRAW\" was never defined. |
32543 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33127 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32544 | fi | 33128 | fi |
32545 | if test -z "${BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_WINCE_FALSE}"; then | 33129 | if test -z "${BUILD_ENGINE_SOFTWARE_16_WINCE_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_WINCE_FALSE}"; then |
32546 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_16_WINCE\" was never defined. | 33130 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_16_WINCE\" was never defined. |
32547 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33131 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32548 | fi | 33132 | fi |
32549 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE}"; then | 33133 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_WINCE_FALSE}"; then |
32550 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_WINCE\" was never defined. | 33134 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_WINCE\" was never defined. |
32551 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33135 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32552 | fi | 33136 | fi |
32553 | if test -z "${BUILD_ENGINE_SOFTWARE_16_SDL_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_SDL_FALSE}"; then | 33137 | if test -z "${BUILD_ENGINE_SOFTWARE_16_SDL_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_SDL_FALSE}"; then |
32554 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_16_SDL\" was never defined. | 33138 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_16_SDL\" was never defined. |
32555 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33139 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32556 | fi | 33140 | fi |
32557 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE}"; then | 33141 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_SDL_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_SDL_FALSE}"; then |
32558 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_SDL\" was never defined. | 33142 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16_SDL\" was never defined. |
33143 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
33144 | fi | ||
33145 | if test -z "${BUILD_ENGINE_WAYLAND_SHM_TRUE}" && test -z "${BUILD_ENGINE_WAYLAND_SHM_FALSE}"; then | ||
33146 | as_fn_error "conditional \"BUILD_ENGINE_WAYLAND_SHM\" was never defined. | ||
33147 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
33148 | fi | ||
33149 | if test -z "${EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE}" && test -z "${EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE}"; then | ||
33150 | as_fn_error "conditional \"EVAS_STATIC_BUILD_WAYLAND_SHM\" was never defined. | ||
33151 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
33152 | fi | ||
33153 | if test -z "${BUILD_ENGINE_WAYLAND_EGL_TRUE}" && test -z "${BUILD_ENGINE_WAYLAND_EGL_FALSE}"; then | ||
33154 | as_fn_error "conditional \"BUILD_ENGINE_WAYLAND_EGL\" was never defined. | ||
33155 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | ||
33156 | fi | ||
33157 | if test -z "${EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE}" && test -z "${EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE}"; then | ||
33158 | as_fn_error "conditional \"EVAS_STATIC_BUILD_WAYLAND_EGL\" was never defined. | ||
32559 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33159 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32560 | fi | 33160 | fi |
32561 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_GENERIC_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE}"; then | 33161 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_GENERIC_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_GENERIC_FALSE}"; then |
32562 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_GENERIC\" was never defined. | 33162 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_GENERIC\" was never defined. |
32563 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33163 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32564 | fi | 33164 | fi |
32565 | if test -z "${BUILD_ENGINE_SOFTWARE_XCB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XCB_FALSE}"; then | 33165 | if test -z "${BUILD_ENGINE_SOFTWARE_XCB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XCB_FALSE}"; then |
32566 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_XCB\" was never defined. | 33166 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_XCB\" was never defined. |
32567 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33167 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32568 | fi | 33168 | fi |
32569 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_FALSE}"; then | 33169 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_FALSE}"; then |
32570 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XCB\" was never defined. | 33170 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XCB\" was never defined. |
32571 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33171 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32572 | fi | 33172 | fi |
32573 | if test -z "${BUILD_ENGINE_SOFTWARE_XLIB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XLIB_FALSE}"; then | 33173 | if test -z "${BUILD_ENGINE_SOFTWARE_XLIB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XLIB_FALSE}"; then |
32574 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_XLIB\" was never defined. | 33174 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_XLIB\" was never defined. |
32575 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33175 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32576 | fi | 33176 | fi |
32577 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_FALSE}"; then | 33177 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_FALSE}"; then |
32578 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XLIB\" was never defined. | 33178 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XLIB\" was never defined. |
32579 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33179 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32580 | fi | 33180 | fi |
32581 | if test -z "${BUILD_ENGINE_SOFTWARE_XLIB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XLIB_FALSE}"; then | 33181 | if test -z "${BUILD_ENGINE_SOFTWARE_XLIB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XLIB_FALSE}"; then |
32582 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_XLIB\" was never defined. | 33182 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_XLIB\" was never defined. |
32583 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33183 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32584 | fi | 33184 | fi |
32585 | if test -z "${BUILD_ENGINE_SOFTWARE_XCB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XCB_FALSE}"; then | 33185 | if test -z "${BUILD_ENGINE_SOFTWARE_XCB_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_XCB_FALSE}"; then |
32586 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_XCB\" was never defined. | 33186 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_XCB\" was never defined. |
32587 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33187 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32588 | fi | 33188 | fi |
32589 | if test -z "${BUILD_ENGINE_SOFTWARE_X11_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_X11_FALSE}"; then | 33189 | if test -z "${BUILD_ENGINE_SOFTWARE_X11_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_X11_FALSE}"; then |
32590 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_X11\" was never defined. | 33190 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_X11\" was never defined. |
32591 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33191 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32592 | fi | 33192 | fi |
32593 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_X11_FALSE}"; then | 33193 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_X11_FALSE}"; then |
32594 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_X11\" was never defined. | 33194 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_X11\" was never defined. |
32595 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33195 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32596 | fi | 33196 | fi |
32597 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_FALSE}"; then | 33197 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XLIB_FALSE}"; then |
32598 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XLIB\" was never defined. | 33198 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XLIB\" was never defined. |
32599 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33199 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32600 | fi | 33200 | fi |
32601 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_FALSE}"; then | 33201 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_XCB_FALSE}"; then |
32602 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XCB\" was never defined. | 33202 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_XCB\" was never defined. |
32603 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33203 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32604 | fi | 33204 | fi |
32605 | if test -z "${BUILD_ENGINE_GL_XCB_TRUE}" && test -z "${BUILD_ENGINE_GL_XCB_FALSE}"; then | 33205 | if test -z "${BUILD_ENGINE_GL_XCB_TRUE}" && test -z "${BUILD_ENGINE_GL_XCB_FALSE}"; then |
32606 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_XCB\" was never defined. | 33206 | as_fn_error "conditional \"BUILD_ENGINE_GL_XCB\" was never defined. |
32607 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33207 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32608 | fi | 33208 | fi |
32609 | if test -z "${EVAS_STATIC_BUILD_GL_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XCB_FALSE}"; then | 33209 | if test -z "${EVAS_STATIC_BUILD_GL_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XCB_FALSE}"; then |
32610 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_XCB\" was never defined. | 33210 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_XCB\" was never defined. |
32611 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33211 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32612 | fi | 33212 | fi |
32613 | if test -z "${BUILD_ENGINE_GL_XLIB_TRUE}" && test -z "${BUILD_ENGINE_GL_XLIB_FALSE}"; then | 33213 | if test -z "${BUILD_ENGINE_GL_XLIB_TRUE}" && test -z "${BUILD_ENGINE_GL_XLIB_FALSE}"; then |
32614 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_XLIB\" was never defined. | 33214 | as_fn_error "conditional \"BUILD_ENGINE_GL_XLIB\" was never defined. |
32615 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33215 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32616 | fi | 33216 | fi |
32617 | if test -z "${EVAS_STATIC_BUILD_GL_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XLIB_FALSE}"; then | 33217 | if test -z "${EVAS_STATIC_BUILD_GL_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XLIB_FALSE}"; then |
32618 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_XLIB\" was never defined. | 33218 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_XLIB\" was never defined. |
32619 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33219 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32620 | fi | 33220 | fi |
32621 | if test -z "${BUILD_ENGINE_GL_XLIB_TRUE}" && test -z "${BUILD_ENGINE_GL_XLIB_FALSE}"; then | 33221 | if test -z "${BUILD_ENGINE_GL_XLIB_TRUE}" && test -z "${BUILD_ENGINE_GL_XLIB_FALSE}"; then |
32622 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_XLIB\" was never defined. | 33222 | as_fn_error "conditional \"BUILD_ENGINE_GL_XLIB\" was never defined. |
32623 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33223 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32624 | fi | 33224 | fi |
32625 | if test -z "${BUILD_ENGINE_GL_XCB_TRUE}" && test -z "${BUILD_ENGINE_GL_XCB_FALSE}"; then | 33225 | if test -z "${BUILD_ENGINE_GL_XCB_TRUE}" && test -z "${BUILD_ENGINE_GL_XCB_FALSE}"; then |
32626 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_XCB\" was never defined. | 33226 | as_fn_error "conditional \"BUILD_ENGINE_GL_XCB\" was never defined. |
32627 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33227 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32628 | fi | 33228 | fi |
32629 | if test -z "${BUILD_ENGINE_GL_X11_TRUE}" && test -z "${BUILD_ENGINE_GL_X11_FALSE}"; then | 33229 | if test -z "${BUILD_ENGINE_GL_X11_TRUE}" && test -z "${BUILD_ENGINE_GL_X11_FALSE}"; then |
32630 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_X11\" was never defined. | 33230 | as_fn_error "conditional \"BUILD_ENGINE_GL_X11\" was never defined. |
32631 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33231 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32632 | fi | 33232 | fi |
32633 | if test -z "${EVAS_STATIC_BUILD_GL_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_X11_FALSE}"; then | 33233 | if test -z "${EVAS_STATIC_BUILD_GL_X11_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_X11_FALSE}"; then |
32634 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_X11\" was never defined. | 33234 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_X11\" was never defined. |
32635 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33235 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32636 | fi | 33236 | fi |
32637 | if test -z "${EVAS_STATIC_BUILD_GL_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XLIB_FALSE}"; then | 33237 | if test -z "${EVAS_STATIC_BUILD_GL_XLIB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XLIB_FALSE}"; then |
32638 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_XLIB\" was never defined. | 33238 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_XLIB\" was never defined. |
32639 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33239 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32640 | fi | 33240 | fi |
32641 | if test -z "${EVAS_STATIC_BUILD_GL_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XCB_FALSE}"; then | 33241 | if test -z "${EVAS_STATIC_BUILD_GL_XCB_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_XCB_FALSE}"; then |
32642 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_XCB\" was never defined. | 33242 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_XCB\" was never defined. |
32643 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33243 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32644 | fi | 33244 | fi |
32645 | if test -z "${BUILD_ENGINE_GL_COMMON_TRUE}" && test -z "${BUILD_ENGINE_GL_COMMON_FALSE}"; then | 33245 | if test -z "${BUILD_ENGINE_GL_COMMON_TRUE}" && test -z "${BUILD_ENGINE_GL_COMMON_FALSE}"; then |
32646 | as_fn_error $? "conditional \"BUILD_ENGINE_GL_COMMON\" was never defined. | 33246 | as_fn_error "conditional \"BUILD_ENGINE_GL_COMMON\" was never defined. |
32647 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33247 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32648 | fi | 33248 | fi |
32649 | if test -z "${EVAS_STATIC_BUILD_GL_COMMON_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_COMMON_FALSE}"; then | 33249 | if test -z "${EVAS_STATIC_BUILD_GL_COMMON_TRUE}" && test -z "${EVAS_STATIC_BUILD_GL_COMMON_FALSE}"; then |
32650 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GL_COMMON\" was never defined. | 33250 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GL_COMMON\" was never defined. |
32651 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33251 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32652 | fi | 33252 | fi |
32653 | if test -z "${BUILD_ENGINE_SOFTWARE_16_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_FALSE}"; then | 33253 | if test -z "${BUILD_ENGINE_SOFTWARE_16_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_16_FALSE}"; then |
32654 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_16\" was never defined. | 33254 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_16\" was never defined. |
32655 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33255 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32656 | fi | 33256 | fi |
32657 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_FALSE}"; then | 33257 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_16_FALSE}"; then |
32658 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16\" was never defined. | 33258 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_16\" was never defined. |
32659 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33259 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32660 | fi | 33260 | fi |
32661 | if test -z "${BUILD_ENGINE_SOFTWARE_8_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_8_FALSE}"; then | 33261 | if test -z "${BUILD_ENGINE_SOFTWARE_8_TRUE}" && test -z "${BUILD_ENGINE_SOFTWARE_8_FALSE}"; then |
32662 | as_fn_error $? "conditional \"BUILD_ENGINE_SOFTWARE_8\" was never defined. | 33262 | as_fn_error "conditional \"BUILD_ENGINE_SOFTWARE_8\" was never defined. |
32663 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33263 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32664 | fi | 33264 | fi |
32665 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_FALSE}"; then | 33265 | if test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_TRUE}" && test -z "${EVAS_STATIC_BUILD_SOFTWARE_8_FALSE}"; then |
32666 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SOFTWARE_8\" was never defined. | 33266 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SOFTWARE_8\" was never defined. |
32667 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33267 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32668 | fi | 33268 | fi |
32669 | if test -z "${BUILD_LOADER_EDB_TRUE}" && test -z "${BUILD_LOADER_EDB_FALSE}"; then | 33269 | if test -z "${BUILD_LOADER_EDB_TRUE}" && test -z "${BUILD_LOADER_EDB_FALSE}"; then |
32670 | as_fn_error $? "conditional \"BUILD_LOADER_EDB\" was never defined. | 33270 | as_fn_error "conditional \"BUILD_LOADER_EDB\" was never defined. |
32671 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33271 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32672 | fi | 33272 | fi |
32673 | if test -z "${EVAS_STATIC_BUILD_EDB_TRUE}" && test -z "${EVAS_STATIC_BUILD_EDB_FALSE}"; then | 33273 | if test -z "${EVAS_STATIC_BUILD_EDB_TRUE}" && test -z "${EVAS_STATIC_BUILD_EDB_FALSE}"; then |
32674 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_EDB\" was never defined. | 33274 | as_fn_error "conditional \"EVAS_STATIC_BUILD_EDB\" was never defined. |
32675 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33275 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32676 | fi | 33276 | fi |
32677 | if test -z "${BUILD_LOADER_EET_TRUE}" && test -z "${BUILD_LOADER_EET_FALSE}"; then | 33277 | if test -z "${BUILD_LOADER_EET_TRUE}" && test -z "${BUILD_LOADER_EET_FALSE}"; then |
32678 | as_fn_error $? "conditional \"BUILD_LOADER_EET\" was never defined. | 33278 | as_fn_error "conditional \"BUILD_LOADER_EET\" was never defined. |
32679 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33279 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32680 | fi | 33280 | fi |
32681 | if test -z "${EVAS_STATIC_BUILD_EET_TRUE}" && test -z "${EVAS_STATIC_BUILD_EET_FALSE}"; then | 33281 | if test -z "${EVAS_STATIC_BUILD_EET_TRUE}" && test -z "${EVAS_STATIC_BUILD_EET_FALSE}"; then |
32682 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_EET\" was never defined. | 33282 | as_fn_error "conditional \"EVAS_STATIC_BUILD_EET\" was never defined. |
32683 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33283 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32684 | fi | 33284 | fi |
32685 | if test -z "${BUILD_LOADER_GIF_TRUE}" && test -z "${BUILD_LOADER_GIF_FALSE}"; then | 33285 | if test -z "${BUILD_LOADER_GIF_TRUE}" && test -z "${BUILD_LOADER_GIF_FALSE}"; then |
32686 | as_fn_error $? "conditional \"BUILD_LOADER_GIF\" was never defined. | 33286 | as_fn_error "conditional \"BUILD_LOADER_GIF\" was never defined. |
32687 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33287 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32688 | fi | 33288 | fi |
32689 | if test -z "${EVAS_STATIC_BUILD_GIF_TRUE}" && test -z "${EVAS_STATIC_BUILD_GIF_FALSE}"; then | 33289 | if test -z "${EVAS_STATIC_BUILD_GIF_TRUE}" && test -z "${EVAS_STATIC_BUILD_GIF_FALSE}"; then |
32690 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GIF\" was never defined. | 33290 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GIF\" was never defined. |
32691 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33291 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32692 | fi | 33292 | fi |
32693 | if test -z "${BUILD_LOADER_JPEG_TRUE}" && test -z "${BUILD_LOADER_JPEG_FALSE}"; then | 33293 | if test -z "${BUILD_LOADER_JPEG_TRUE}" && test -z "${BUILD_LOADER_JPEG_FALSE}"; then |
32694 | as_fn_error $? "conditional \"BUILD_LOADER_JPEG\" was never defined. | 33294 | as_fn_error "conditional \"BUILD_LOADER_JPEG\" was never defined. |
32695 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33295 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32696 | fi | 33296 | fi |
32697 | if test -z "${EVAS_STATIC_BUILD_JPEG_TRUE}" && test -z "${EVAS_STATIC_BUILD_JPEG_FALSE}"; then | 33297 | if test -z "${EVAS_STATIC_BUILD_JPEG_TRUE}" && test -z "${EVAS_STATIC_BUILD_JPEG_FALSE}"; then |
32698 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_JPEG\" was never defined. | 33298 | as_fn_error "conditional \"EVAS_STATIC_BUILD_JPEG\" was never defined. |
32699 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33299 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32700 | fi | 33300 | fi |
32701 | if test -z "${BUILD_SAVER_JPEG_TRUE}" && test -z "${BUILD_SAVER_JPEG_FALSE}"; then | 33301 | if test -z "${BUILD_SAVER_JPEG_TRUE}" && test -z "${BUILD_SAVER_JPEG_FALSE}"; then |
32702 | as_fn_error $? "conditional \"BUILD_SAVER_JPEG\" was never defined. | 33302 | as_fn_error "conditional \"BUILD_SAVER_JPEG\" was never defined. |
32703 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33303 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32704 | fi | 33304 | fi |
32705 | if test -z "${BUILD_LOADER_PMAPS_TRUE}" && test -z "${BUILD_LOADER_PMAPS_FALSE}"; then | 33305 | if test -z "${BUILD_LOADER_PMAPS_TRUE}" && test -z "${BUILD_LOADER_PMAPS_FALSE}"; then |
32706 | as_fn_error $? "conditional \"BUILD_LOADER_PMAPS\" was never defined. | 33306 | as_fn_error "conditional \"BUILD_LOADER_PMAPS\" was never defined. |
32707 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33307 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32708 | fi | 33308 | fi |
32709 | if test -z "${EVAS_STATIC_BUILD_PMAPS_TRUE}" && test -z "${EVAS_STATIC_BUILD_PMAPS_FALSE}"; then | 33309 | if test -z "${EVAS_STATIC_BUILD_PMAPS_TRUE}" && test -z "${EVAS_STATIC_BUILD_PMAPS_FALSE}"; then |
32710 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_PMAPS\" was never defined. | 33310 | as_fn_error "conditional \"EVAS_STATIC_BUILD_PMAPS\" was never defined. |
32711 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33311 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32712 | fi | 33312 | fi |
32713 | if test -z "${BUILD_LOADER_PNG_TRUE}" && test -z "${BUILD_LOADER_PNG_FALSE}"; then | 33313 | if test -z "${BUILD_LOADER_PNG_TRUE}" && test -z "${BUILD_LOADER_PNG_FALSE}"; then |
32714 | as_fn_error $? "conditional \"BUILD_LOADER_PNG\" was never defined. | 33314 | as_fn_error "conditional \"BUILD_LOADER_PNG\" was never defined. |
32715 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33315 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32716 | fi | 33316 | fi |
32717 | if test -z "${EVAS_STATIC_BUILD_PNG_TRUE}" && test -z "${EVAS_STATIC_BUILD_PNG_FALSE}"; then | 33317 | if test -z "${EVAS_STATIC_BUILD_PNG_TRUE}" && test -z "${EVAS_STATIC_BUILD_PNG_FALSE}"; then |
32718 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_PNG\" was never defined. | 33318 | as_fn_error "conditional \"EVAS_STATIC_BUILD_PNG\" was never defined. |
32719 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33319 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32720 | fi | 33320 | fi |
32721 | if test -z "${BUILD_LOADER_SVG_TRUE}" && test -z "${BUILD_LOADER_SVG_FALSE}"; then | 33321 | if test -z "${BUILD_LOADER_SVG_TRUE}" && test -z "${BUILD_LOADER_SVG_FALSE}"; then |
32722 | as_fn_error $? "conditional \"BUILD_LOADER_SVG\" was never defined. | 33322 | as_fn_error "conditional \"BUILD_LOADER_SVG\" was never defined. |
32723 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33323 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32724 | fi | 33324 | fi |
32725 | if test -z "${EVAS_STATIC_BUILD_SVG_TRUE}" && test -z "${EVAS_STATIC_BUILD_SVG_FALSE}"; then | 33325 | if test -z "${EVAS_STATIC_BUILD_SVG_TRUE}" && test -z "${EVAS_STATIC_BUILD_SVG_FALSE}"; then |
32726 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_SVG\" was never defined. | 33326 | as_fn_error "conditional \"EVAS_STATIC_BUILD_SVG\" was never defined. |
32727 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33327 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32728 | fi | 33328 | fi |
32729 | if test -z "${BUILD_LOADER_TIFF_TRUE}" && test -z "${BUILD_LOADER_TIFF_FALSE}"; then | 33329 | if test -z "${BUILD_LOADER_TIFF_TRUE}" && test -z "${BUILD_LOADER_TIFF_FALSE}"; then |
32730 | as_fn_error $? "conditional \"BUILD_LOADER_TIFF\" was never defined. | 33330 | as_fn_error "conditional \"BUILD_LOADER_TIFF\" was never defined. |
32731 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33331 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32732 | fi | 33332 | fi |
32733 | if test -z "${EVAS_STATIC_BUILD_TIFF_TRUE}" && test -z "${EVAS_STATIC_BUILD_TIFF_FALSE}"; then | 33333 | if test -z "${EVAS_STATIC_BUILD_TIFF_TRUE}" && test -z "${EVAS_STATIC_BUILD_TIFF_FALSE}"; then |
32734 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_TIFF\" was never defined. | 33334 | as_fn_error "conditional \"EVAS_STATIC_BUILD_TIFF\" was never defined. |
32735 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33335 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32736 | fi | 33336 | fi |
32737 | if test -z "${BUILD_LOADER_XPM_TRUE}" && test -z "${BUILD_LOADER_XPM_FALSE}"; then | 33337 | if test -z "${BUILD_LOADER_XPM_TRUE}" && test -z "${BUILD_LOADER_XPM_FALSE}"; then |
32738 | as_fn_error $? "conditional \"BUILD_LOADER_XPM\" was never defined. | 33338 | as_fn_error "conditional \"BUILD_LOADER_XPM\" was never defined. |
32739 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33339 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32740 | fi | 33340 | fi |
32741 | if test -z "${EVAS_STATIC_BUILD_XPM_TRUE}" && test -z "${EVAS_STATIC_BUILD_XPM_FALSE}"; then | 33341 | if test -z "${EVAS_STATIC_BUILD_XPM_TRUE}" && test -z "${EVAS_STATIC_BUILD_XPM_FALSE}"; then |
32742 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_XPM\" was never defined. | 33342 | as_fn_error "conditional \"EVAS_STATIC_BUILD_XPM\" was never defined. |
32743 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33343 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32744 | fi | 33344 | fi |
32745 | if test -z "${BUILD_LOADER_BMP_TRUE}" && test -z "${BUILD_LOADER_BMP_FALSE}"; then | 33345 | if test -z "${BUILD_LOADER_BMP_TRUE}" && test -z "${BUILD_LOADER_BMP_FALSE}"; then |
32746 | as_fn_error $? "conditional \"BUILD_LOADER_BMP\" was never defined. | 33346 | as_fn_error "conditional \"BUILD_LOADER_BMP\" was never defined. |
32747 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33347 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32748 | fi | 33348 | fi |
32749 | if test -z "${EVAS_STATIC_BUILD_BMP_TRUE}" && test -z "${EVAS_STATIC_BUILD_BMP_FALSE}"; then | 33349 | if test -z "${EVAS_STATIC_BUILD_BMP_TRUE}" && test -z "${EVAS_STATIC_BUILD_BMP_FALSE}"; then |
32750 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_BMP\" was never defined. | 33350 | as_fn_error "conditional \"EVAS_STATIC_BUILD_BMP\" was never defined. |
32751 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33351 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32752 | fi | 33352 | fi |
32753 | if test -z "${BUILD_LOADER_TGA_TRUE}" && test -z "${BUILD_LOADER_TGA_FALSE}"; then | 33353 | if test -z "${BUILD_LOADER_TGA_TRUE}" && test -z "${BUILD_LOADER_TGA_FALSE}"; then |
32754 | as_fn_error $? "conditional \"BUILD_LOADER_TGA\" was never defined. | 33354 | as_fn_error "conditional \"BUILD_LOADER_TGA\" was never defined. |
32755 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33355 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32756 | fi | 33356 | fi |
32757 | if test -z "${EVAS_STATIC_BUILD_TGA_TRUE}" && test -z "${EVAS_STATIC_BUILD_TGA_FALSE}"; then | 33357 | if test -z "${EVAS_STATIC_BUILD_TGA_TRUE}" && test -z "${EVAS_STATIC_BUILD_TGA_FALSE}"; then |
32758 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_TGA\" was never defined. | 33358 | as_fn_error "conditional \"EVAS_STATIC_BUILD_TGA\" was never defined. |
32759 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33359 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32760 | fi | 33360 | fi |
32761 | if test -z "${BUILD_LOADER_WBMP_TRUE}" && test -z "${BUILD_LOADER_WBMP_FALSE}"; then | 33361 | if test -z "${BUILD_LOADER_WBMP_TRUE}" && test -z "${BUILD_LOADER_WBMP_FALSE}"; then |
32762 | as_fn_error $? "conditional \"BUILD_LOADER_WBMP\" was never defined. | 33362 | as_fn_error "conditional \"BUILD_LOADER_WBMP\" was never defined. |
32763 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33363 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32764 | fi | 33364 | fi |
32765 | if test -z "${EVAS_STATIC_BUILD_WBMP_TRUE}" && test -z "${EVAS_STATIC_BUILD_WBMP_FALSE}"; then | 33365 | if test -z "${EVAS_STATIC_BUILD_WBMP_TRUE}" && test -z "${EVAS_STATIC_BUILD_WBMP_FALSE}"; then |
32766 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_WBMP\" was never defined. | 33366 | as_fn_error "conditional \"EVAS_STATIC_BUILD_WBMP\" was never defined. |
32767 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33367 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32768 | fi | 33368 | fi |
32769 | if test -z "${BUILD_LOADER_ICO_TRUE}" && test -z "${BUILD_LOADER_ICO_FALSE}"; then | 33369 | if test -z "${BUILD_LOADER_ICO_TRUE}" && test -z "${BUILD_LOADER_ICO_FALSE}"; then |
32770 | as_fn_error $? "conditional \"BUILD_LOADER_ICO\" was never defined. | 33370 | as_fn_error "conditional \"BUILD_LOADER_ICO\" was never defined. |
32771 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33371 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32772 | fi | 33372 | fi |
32773 | if test -z "${EVAS_STATIC_BUILD_ICO_TRUE}" && test -z "${EVAS_STATIC_BUILD_ICO_FALSE}"; then | 33373 | if test -z "${EVAS_STATIC_BUILD_ICO_TRUE}" && test -z "${EVAS_STATIC_BUILD_ICO_FALSE}"; then |
32774 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_ICO\" was never defined. | 33374 | as_fn_error "conditional \"EVAS_STATIC_BUILD_ICO\" was never defined. |
32775 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33375 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32776 | fi | 33376 | fi |
32777 | if test -z "${BUILD_LOADER_PSD_TRUE}" && test -z "${BUILD_LOADER_PSD_FALSE}"; then | 33377 | if test -z "${BUILD_LOADER_PSD_TRUE}" && test -z "${BUILD_LOADER_PSD_FALSE}"; then |
32778 | as_fn_error $? "conditional \"BUILD_LOADER_PSD\" was never defined. | 33378 | as_fn_error "conditional \"BUILD_LOADER_PSD\" was never defined. |
32779 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33379 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32780 | fi | 33380 | fi |
32781 | if test -z "${EVAS_STATIC_BUILD_PSD_TRUE}" && test -z "${EVAS_STATIC_BUILD_PSD_FALSE}"; then | 33381 | if test -z "${EVAS_STATIC_BUILD_PSD_TRUE}" && test -z "${EVAS_STATIC_BUILD_PSD_FALSE}"; then |
32782 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_PSD\" was never defined. | 33382 | as_fn_error "conditional \"EVAS_STATIC_BUILD_PSD\" was never defined. |
32783 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33383 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32784 | fi | 33384 | fi |
32785 | if test -z "${BUILD_LOADER_GENERIC_TRUE}" && test -z "${BUILD_LOADER_GENERIC_FALSE}"; then | 33385 | if test -z "${BUILD_LOADER_GENERIC_TRUE}" && test -z "${BUILD_LOADER_GENERIC_FALSE}"; then |
32786 | as_fn_error $? "conditional \"BUILD_LOADER_GENERIC\" was never defined. | 33386 | as_fn_error "conditional \"BUILD_LOADER_GENERIC\" was never defined. |
32787 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33387 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32788 | fi | 33388 | fi |
32789 | if test -z "${EVAS_STATIC_BUILD_GENERIC_TRUE}" && test -z "${EVAS_STATIC_BUILD_GENERIC_FALSE}"; then | 33389 | if test -z "${EVAS_STATIC_BUILD_GENERIC_TRUE}" && test -z "${EVAS_STATIC_BUILD_GENERIC_FALSE}"; then |
32790 | as_fn_error $? "conditional \"EVAS_STATIC_BUILD_GENERIC\" was never defined. | 33390 | as_fn_error "conditional \"EVAS_STATIC_BUILD_GENERIC\" was never defined. |
32791 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33391 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32792 | fi | 33392 | fi |
32793 | if test -z "${EVAS_MAGIC_DEBUG_TRUE}" && test -z "${EVAS_MAGIC_DEBUG_FALSE}"; then | 33393 | if test -z "${EVAS_MAGIC_DEBUG_TRUE}" && test -z "${EVAS_MAGIC_DEBUG_FALSE}"; then |
32794 | as_fn_error $? "conditional \"EVAS_MAGIC_DEBUG\" was never defined. | 33394 | as_fn_error "conditional \"EVAS_MAGIC_DEBUG\" was never defined. |
32795 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33395 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32796 | fi | 33396 | fi |
32797 | if test -z "${WORD_CACHE_TRUE}" && test -z "${WORD_CACHE_FALSE}"; then | 33397 | if test -z "${WORD_CACHE_TRUE}" && test -z "${WORD_CACHE_FALSE}"; then |
32798 | as_fn_error $? "conditional \"WORD_CACHE\" was never defined. | 33398 | as_fn_error "conditional \"WORD_CACHE\" was never defined. |
32799 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33399 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32800 | fi | 33400 | fi |
32801 | if test -z "${METRIC_CACHE_TRUE}" && test -z "${METRIC_CACHE_FALSE}"; then | 33401 | if test -z "${METRIC_CACHE_TRUE}" && test -z "${METRIC_CACHE_FALSE}"; then |
32802 | as_fn_error $? "conditional \"METRIC_CACHE\" was never defined. | 33402 | as_fn_error "conditional \"METRIC_CACHE\" was never defined. |
32803 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33403 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32804 | fi | 33404 | fi |
32805 | if test -z "${INSTALL_EXAMPLES_TRUE}" && test -z "${INSTALL_EXAMPLES_FALSE}"; then | 33405 | if test -z "${INSTALL_EXAMPLES_TRUE}" && test -z "${INSTALL_EXAMPLES_FALSE}"; then |
32806 | as_fn_error $? "conditional \"INSTALL_EXAMPLES\" was never defined. | 33406 | as_fn_error "conditional \"INSTALL_EXAMPLES\" was never defined. |
32807 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33407 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32808 | fi | 33408 | fi |
32809 | if test -z "${BUILD_EXAMPLES_TRUE}" && test -z "${BUILD_EXAMPLES_FALSE}"; then | 33409 | if test -z "${BUILD_EXAMPLES_TRUE}" && test -z "${BUILD_EXAMPLES_FALSE}"; then |
32810 | as_fn_error $? "conditional \"BUILD_EXAMPLES\" was never defined. | 33410 | as_fn_error "conditional \"BUILD_EXAMPLES\" was never defined. |
32811 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33411 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32812 | fi | 33412 | fi |
32813 | if test -z "${EFL_ENABLE_TESTS_TRUE}" && test -z "${EFL_ENABLE_TESTS_FALSE}"; then | 33413 | if test -z "${EFL_ENABLE_TESTS_TRUE}" && test -z "${EFL_ENABLE_TESTS_FALSE}"; then |
32814 | as_fn_error $? "conditional \"EFL_ENABLE_TESTS\" was never defined. | 33414 | as_fn_error "conditional \"EFL_ENABLE_TESTS\" was never defined. |
32815 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33415 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32816 | fi | 33416 | fi |
32817 | if test -z "${EFL_ENABLE_COVERAGE_TRUE}" && test -z "${EFL_ENABLE_COVERAGE_FALSE}"; then | 33417 | if test -z "${EFL_ENABLE_COVERAGE_TRUE}" && test -z "${EFL_ENABLE_COVERAGE_FALSE}"; then |
32818 | as_fn_error $? "conditional \"EFL_ENABLE_COVERAGE\" was never defined. | 33418 | as_fn_error "conditional \"EFL_ENABLE_COVERAGE\" was never defined. |
32819 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 | 33419 | Usually this means the macro was only invoked conditionally." "$LINENO" 5 |
32820 | fi | 33420 | fi |
32821 | 33421 | ||
@@ -32965,19 +33565,19 @@ export LANGUAGE | |||
32965 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH | 33565 | (unset CDPATH) >/dev/null 2>&1 && unset CDPATH |
32966 | 33566 | ||
32967 | 33567 | ||
32968 | # as_fn_error STATUS ERROR [LINENO LOG_FD] | 33568 | # as_fn_error ERROR [LINENO LOG_FD] |
32969 | # ---------------------------------------- | 33569 | # --------------------------------- |
32970 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are | 33570 | # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are |
32971 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the | 33571 | # provided, also output the error to LOG_FD, referencing LINENO. Then exit the |
32972 | # script with STATUS, using 1 if that was 0. | 33572 | # script with status $?, using 1 if that was 0. |
32973 | as_fn_error () | 33573 | as_fn_error () |
32974 | { | 33574 | { |
32975 | as_status=$1; test $as_status -eq 0 && as_status=1 | 33575 | as_status=$?; test $as_status -eq 0 && as_status=1 |
32976 | if test "$4"; then | 33576 | if test "$3"; then |
32977 | as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack | 33577 | as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack |
32978 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | 33578 | $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 |
32979 | fi | 33579 | fi |
32980 | $as_echo "$as_me: error: $2" >&2 | 33580 | $as_echo "$as_me: error: $1" >&2 |
32981 | as_fn_exit $as_status | 33581 | as_fn_exit $as_status |
32982 | } # as_fn_error | 33582 | } # as_fn_error |
32983 | 33583 | ||
@@ -33173,7 +33773,7 @@ $as_echo X"$as_dir" | | |||
33173 | test -d "$as_dir" && break | 33773 | test -d "$as_dir" && break |
33174 | done | 33774 | done |
33175 | test -z "$as_dirs" || eval "mkdir $as_dirs" | 33775 | test -z "$as_dirs" || eval "mkdir $as_dirs" |
33176 | } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" | 33776 | } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" |
33177 | 33777 | ||
33178 | 33778 | ||
33179 | } # as_fn_mkdir_p | 33779 | } # as_fn_mkdir_p |
@@ -33226,8 +33826,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | |||
33226 | # report actual input values of CONFIG_FILES etc. instead of their | 33826 | # report actual input values of CONFIG_FILES etc. instead of their |
33227 | # values after options handling. | 33827 | # values after options handling. |
33228 | ac_log=" | 33828 | ac_log=" |
33229 | This file was extended by evas $as_me 1.1.0, which was | 33829 | This file was extended by evas $as_me 1.1.99.67344, which was |
33230 | generated by GNU Autoconf 2.67. Invocation command line was | 33830 | generated by GNU Autoconf 2.65. Invocation command line was |
33231 | 33831 | ||
33232 | CONFIG_FILES = $CONFIG_FILES | 33832 | CONFIG_FILES = $CONFIG_FILES |
33233 | CONFIG_HEADERS = $CONFIG_HEADERS | 33833 | CONFIG_HEADERS = $CONFIG_HEADERS |
@@ -33292,11 +33892,11 @@ _ACEOF | |||
33292 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | 33892 | cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 |
33293 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" | 33893 | ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" |
33294 | ac_cs_version="\\ | 33894 | ac_cs_version="\\ |
33295 | evas config.status 1.1.0 | 33895 | evas config.status 1.1.99.67344 |
33296 | configured by $0, generated by GNU Autoconf 2.67, | 33896 | configured by $0, generated by GNU Autoconf 2.65, |
33297 | with options \\"\$ac_cs_config\\" | 33897 | with options \\"\$ac_cs_config\\" |
33298 | 33898 | ||
33299 | Copyright (C) 2010 Free Software Foundation, Inc. | 33899 | Copyright (C) 2009 Free Software Foundation, Inc. |
33300 | This config.status script is free software; the Free Software Foundation | 33900 | This config.status script is free software; the Free Software Foundation |
33301 | gives unlimited permission to copy, distribute and modify it." | 33901 | gives unlimited permission to copy, distribute and modify it." |
33302 | 33902 | ||
@@ -33314,16 +33914,11 @@ ac_need_defaults=: | |||
33314 | while test $# != 0 | 33914 | while test $# != 0 |
33315 | do | 33915 | do |
33316 | case $1 in | 33916 | case $1 in |
33317 | --*=?*) | 33917 | --*=*) |
33318 | ac_option=`expr "X$1" : 'X\([^=]*\)='` | 33918 | ac_option=`expr "X$1" : 'X\([^=]*\)='` |
33319 | ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` | 33919 | ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` |
33320 | ac_shift=: | 33920 | ac_shift=: |
33321 | ;; | 33921 | ;; |
33322 | --*=) | ||
33323 | ac_option=`expr "X$1" : 'X\([^=]*\)='` | ||
33324 | ac_optarg= | ||
33325 | ac_shift=: | ||
33326 | ;; | ||
33327 | *) | 33922 | *) |
33328 | ac_option=$1 | 33923 | ac_option=$1 |
33329 | ac_optarg=$2 | 33924 | ac_optarg=$2 |
@@ -33345,7 +33940,6 @@ do | |||
33345 | $ac_shift | 33940 | $ac_shift |
33346 | case $ac_optarg in | 33941 | case $ac_optarg in |
33347 | *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; | 33942 | *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; |
33348 | '') as_fn_error $? "missing file argument" ;; | ||
33349 | esac | 33943 | esac |
33350 | as_fn_append CONFIG_FILES " '$ac_optarg'" | 33944 | as_fn_append CONFIG_FILES " '$ac_optarg'" |
33351 | ac_need_defaults=false;; | 33945 | ac_need_defaults=false;; |
@@ -33358,7 +33952,7 @@ do | |||
33358 | ac_need_defaults=false;; | 33952 | ac_need_defaults=false;; |
33359 | --he | --h) | 33953 | --he | --h) |
33360 | # Conflict between --help and --header | 33954 | # Conflict between --help and --header |
33361 | as_fn_error $? "ambiguous option: \`$1' | 33955 | as_fn_error "ambiguous option: \`$1' |
33362 | Try \`$0 --help' for more information.";; | 33956 | Try \`$0 --help' for more information.";; |
33363 | --help | --hel | -h ) | 33957 | --help | --hel | -h ) |
33364 | $as_echo "$ac_cs_usage"; exit ;; | 33958 | $as_echo "$ac_cs_usage"; exit ;; |
@@ -33367,7 +33961,7 @@ Try \`$0 --help' for more information.";; | |||
33367 | ac_cs_silent=: ;; | 33961 | ac_cs_silent=: ;; |
33368 | 33962 | ||
33369 | # This is an error. | 33963 | # This is an error. |
33370 | -*) as_fn_error $? "unrecognized option: \`$1' | 33964 | -*) as_fn_error "unrecognized option: \`$1' |
33371 | Try \`$0 --help' for more information." ;; | 33965 | Try \`$0 --help' for more information." ;; |
33372 | 33966 | ||
33373 | *) as_fn_append ac_config_targets " $1" | 33967 | *) as_fn_append ac_config_targets " $1" |
@@ -33793,6 +34387,8 @@ do | |||
33793 | "evas-software-16-wince.pc") CONFIG_FILES="$CONFIG_FILES evas-software-16-wince.pc" ;; | 34387 | "evas-software-16-wince.pc") CONFIG_FILES="$CONFIG_FILES evas-software-16-wince.pc" ;; |
33794 | "evas-software-sdl.pc") CONFIG_FILES="$CONFIG_FILES evas-software-sdl.pc" ;; | 34388 | "evas-software-sdl.pc") CONFIG_FILES="$CONFIG_FILES evas-software-sdl.pc" ;; |
33795 | "evas-psl1ght.pc") CONFIG_FILES="$CONFIG_FILES evas-psl1ght.pc" ;; | 34389 | "evas-psl1ght.pc") CONFIG_FILES="$CONFIG_FILES evas-psl1ght.pc" ;; |
34390 | "evas-wayland-shm.pc") CONFIG_FILES="$CONFIG_FILES evas-wayland-shm.pc" ;; | ||
34391 | "evas-wayland-egl.pc") CONFIG_FILES="$CONFIG_FILES evas-wayland-egl.pc" ;; | ||
33796 | "evas.pc") CONFIG_FILES="$CONFIG_FILES evas.pc" ;; | 34392 | "evas.pc") CONFIG_FILES="$CONFIG_FILES evas.pc" ;; |
33797 | "doc/evas.dox") CONFIG_FILES="$CONFIG_FILES doc/evas.dox" ;; | 34393 | "doc/evas.dox") CONFIG_FILES="$CONFIG_FILES doc/evas.dox" ;; |
33798 | "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; | 34394 | "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; |
@@ -33837,6 +34433,8 @@ do | |||
33837 | "src/modules/engines/software_16_x11/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/software_16_x11/Makefile" ;; | 34433 | "src/modules/engines/software_16_x11/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/software_16_x11/Makefile" ;; |
33838 | "src/modules/engines/software_16_ddraw/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/software_16_ddraw/Makefile" ;; | 34434 | "src/modules/engines/software_16_ddraw/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/software_16_ddraw/Makefile" ;; |
33839 | "src/modules/engines/software_16_sdl/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/software_16_sdl/Makefile" ;; | 34435 | "src/modules/engines/software_16_sdl/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/software_16_sdl/Makefile" ;; |
34436 | "src/modules/engines/wayland_shm/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/wayland_shm/Makefile" ;; | ||
34437 | "src/modules/engines/wayland_egl/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/engines/wayland_egl/Makefile" ;; | ||
33840 | "src/modules/loaders/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/loaders/Makefile" ;; | 34438 | "src/modules/loaders/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/loaders/Makefile" ;; |
33841 | "src/modules/loaders/edb/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/loaders/edb/Makefile" ;; | 34439 | "src/modules/loaders/edb/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/loaders/edb/Makefile" ;; |
33842 | "src/modules/loaders/eet/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/loaders/eet/Makefile" ;; | 34440 | "src/modules/loaders/eet/Makefile") CONFIG_FILES="$CONFIG_FILES src/modules/loaders/eet/Makefile" ;; |
@@ -33866,7 +34464,7 @@ do | |||
33866 | "src/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/tests/Makefile" ;; | 34464 | "src/tests/Makefile") CONFIG_FILES="$CONFIG_FILES src/tests/Makefile" ;; |
33867 | "evas.spec") CONFIG_FILES="$CONFIG_FILES evas.spec" ;; | 34465 | "evas.spec") CONFIG_FILES="$CONFIG_FILES evas.spec" ;; |
33868 | 34466 | ||
33869 | *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;; | 34467 | *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; |
33870 | esac | 34468 | esac |
33871 | done | 34469 | done |
33872 | 34470 | ||
@@ -33904,7 +34502,7 @@ $debug || | |||
33904 | { | 34502 | { |
33905 | tmp=./conf$$-$RANDOM | 34503 | tmp=./conf$$-$RANDOM |
33906 | (umask 077 && mkdir "$tmp") | 34504 | (umask 077 && mkdir "$tmp") |
33907 | } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 | 34505 | } || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 |
33908 | 34506 | ||
33909 | # Set up the scripts for CONFIG_FILES section. | 34507 | # Set up the scripts for CONFIG_FILES section. |
33910 | # No need to generate them if there are no CONFIG_FILES. | 34508 | # No need to generate them if there are no CONFIG_FILES. |
@@ -33921,7 +34519,7 @@ if test "x$ac_cr" = x; then | |||
33921 | fi | 34519 | fi |
33922 | ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` | 34520 | ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null` |
33923 | if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then | 34521 | if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then |
33924 | ac_cs_awk_cr='\\r' | 34522 | ac_cs_awk_cr='\r' |
33925 | else | 34523 | else |
33926 | ac_cs_awk_cr=$ac_cr | 34524 | ac_cs_awk_cr=$ac_cr |
33927 | fi | 34525 | fi |
@@ -33935,18 +34533,18 @@ _ACEOF | |||
33935 | echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && | 34533 | echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && |
33936 | echo "_ACEOF" | 34534 | echo "_ACEOF" |
33937 | } >conf$$subs.sh || | 34535 | } >conf$$subs.sh || |
33938 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | 34536 | as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 |
33939 | ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` | 34537 | ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` |
33940 | ac_delim='%!_!# ' | 34538 | ac_delim='%!_!# ' |
33941 | for ac_last_try in false false false false false :; do | 34539 | for ac_last_try in false false false false false :; do |
33942 | . ./conf$$subs.sh || | 34540 | . ./conf$$subs.sh || |
33943 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | 34541 | as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 |
33944 | 34542 | ||
33945 | ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` | 34543 | ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` |
33946 | if test $ac_delim_n = $ac_delim_num; then | 34544 | if test $ac_delim_n = $ac_delim_num; then |
33947 | break | 34545 | break |
33948 | elif $ac_last_try; then | 34546 | elif $ac_last_try; then |
33949 | as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 | 34547 | as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 |
33950 | else | 34548 | else |
33951 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " | 34549 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " |
33952 | fi | 34550 | fi |
@@ -34035,28 +34633,20 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then | |||
34035 | else | 34633 | else |
34036 | cat | 34634 | cat |
34037 | fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ | 34635 | fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ |
34038 | || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 | 34636 | || as_fn_error "could not setup config files machinery" "$LINENO" 5 |
34039 | _ACEOF | 34637 | _ACEOF |
34040 | 34638 | ||
34041 | # VPATH may cause trouble with some makes, so we remove sole $(srcdir), | 34639 | # VPATH may cause trouble with some makes, so we remove $(srcdir), |
34042 | # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and | 34640 | # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and |
34043 | # trailing colons and then remove the whole line if VPATH becomes empty | 34641 | # trailing colons and then remove the whole line if VPATH becomes empty |
34044 | # (actually we leave an empty line to preserve line numbers). | 34642 | # (actually we leave an empty line to preserve line numbers). |
34045 | if test "x$srcdir" = x.; then | 34643 | if test "x$srcdir" = x.; then |
34046 | ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ | 34644 | ac_vpsub='/^[ ]*VPATH[ ]*=/{ |
34047 | h | 34645 | s/:*\$(srcdir):*/:/ |
34048 | s/// | 34646 | s/:*\${srcdir}:*/:/ |
34049 | s/^/:/ | 34647 | s/:*@srcdir@:*/:/ |
34050 | s/[ ]*$/:/ | 34648 | s/^\([^=]*=[ ]*\):*/\1/ |
34051 | s/:\$(srcdir):/:/g | ||
34052 | s/:\${srcdir}:/:/g | ||
34053 | s/:@srcdir@:/:/g | ||
34054 | s/^:*// | ||
34055 | s/:*$// | 34649 | s/:*$// |
34056 | x | ||
34057 | s/\(=[ ]*\).*/\1/ | ||
34058 | G | ||
34059 | s/\n// | ||
34060 | s/^[^=]*=[ ]*$// | 34650 | s/^[^=]*=[ ]*$// |
34061 | }' | 34651 | }' |
34062 | fi | 34652 | fi |
@@ -34084,7 +34674,7 @@ for ac_last_try in false false :; do | |||
34084 | if test -z "$ac_t"; then | 34674 | if test -z "$ac_t"; then |
34085 | break | 34675 | break |
34086 | elif $ac_last_try; then | 34676 | elif $ac_last_try; then |
34087 | as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 | 34677 | as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5 |
34088 | else | 34678 | else |
34089 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " | 34679 | ac_delim="$ac_delim!$ac_delim _$ac_delim!! " |
34090 | fi | 34680 | fi |
@@ -34169,7 +34759,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 | |||
34169 | _ACAWK | 34759 | _ACAWK |
34170 | _ACEOF | 34760 | _ACEOF |
34171 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 | 34761 | cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 |
34172 | as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 | 34762 | as_fn_error "could not setup config headers machinery" "$LINENO" 5 |
34173 | fi # test -n "$CONFIG_HEADERS" | 34763 | fi # test -n "$CONFIG_HEADERS" |
34174 | 34764 | ||
34175 | 34765 | ||
@@ -34182,7 +34772,7 @@ do | |||
34182 | esac | 34772 | esac |
34183 | case $ac_mode$ac_tag in | 34773 | case $ac_mode$ac_tag in |
34184 | :[FHL]*:*);; | 34774 | :[FHL]*:*);; |
34185 | :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;; | 34775 | :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; |
34186 | :[FH]-) ac_tag=-:-;; | 34776 | :[FH]-) ac_tag=-:-;; |
34187 | :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; | 34777 | :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; |
34188 | esac | 34778 | esac |
@@ -34210,7 +34800,7 @@ do | |||
34210 | [\\/$]*) false;; | 34800 | [\\/$]*) false;; |
34211 | *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; | 34801 | *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; |
34212 | esac || | 34802 | esac || |
34213 | as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;; | 34803 | as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; |
34214 | esac | 34804 | esac |
34215 | case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac | 34805 | case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac |
34216 | as_fn_append ac_file_inputs " '$ac_f'" | 34806 | as_fn_append ac_file_inputs " '$ac_f'" |
@@ -34237,7 +34827,7 @@ $as_echo "$as_me: creating $ac_file" >&6;} | |||
34237 | 34827 | ||
34238 | case $ac_tag in | 34828 | case $ac_tag in |
34239 | *:-:* | *:-) cat >"$tmp/stdin" \ | 34829 | *:-:* | *:-) cat >"$tmp/stdin" \ |
34240 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; | 34830 | || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; |
34241 | esac | 34831 | esac |
34242 | ;; | 34832 | ;; |
34243 | esac | 34833 | esac |
@@ -34374,22 +34964,22 @@ s&@MKDIR_P@&$ac_MKDIR_P&;t t | |||
34374 | $ac_datarootdir_hack | 34964 | $ac_datarootdir_hack |
34375 | " | 34965 | " |
34376 | eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ | 34966 | eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ |
34377 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | 34967 | || as_fn_error "could not create $ac_file" "$LINENO" 5 |
34378 | 34968 | ||
34379 | test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && | 34969 | test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && |
34380 | { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && | 34970 | { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && |
34381 | { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && | 34971 | { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && |
34382 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' | 34972 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' |
34383 | which seems to be undefined. Please make sure it is defined" >&5 | 34973 | which seems to be undefined. Please make sure it is defined." >&5 |
34384 | $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' | 34974 | $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' |
34385 | which seems to be undefined. Please make sure it is defined" >&2;} | 34975 | which seems to be undefined. Please make sure it is defined." >&2;} |
34386 | 34976 | ||
34387 | rm -f "$tmp/stdin" | 34977 | rm -f "$tmp/stdin" |
34388 | case $ac_file in | 34978 | case $ac_file in |
34389 | -) cat "$tmp/out" && rm -f "$tmp/out";; | 34979 | -) cat "$tmp/out" && rm -f "$tmp/out";; |
34390 | *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; | 34980 | *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; |
34391 | esac \ | 34981 | esac \ |
34392 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | 34982 | || as_fn_error "could not create $ac_file" "$LINENO" 5 |
34393 | ;; | 34983 | ;; |
34394 | :H) | 34984 | :H) |
34395 | # | 34985 | # |
@@ -34400,19 +34990,19 @@ which seems to be undefined. Please make sure it is defined" >&2;} | |||
34400 | $as_echo "/* $configure_input */" \ | 34990 | $as_echo "/* $configure_input */" \ |
34401 | && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" | 34991 | && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" |
34402 | } >"$tmp/config.h" \ | 34992 | } >"$tmp/config.h" \ |
34403 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | 34993 | || as_fn_error "could not create $ac_file" "$LINENO" 5 |
34404 | if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then | 34994 | if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then |
34405 | { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 | 34995 | { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 |
34406 | $as_echo "$as_me: $ac_file is unchanged" >&6;} | 34996 | $as_echo "$as_me: $ac_file is unchanged" >&6;} |
34407 | else | 34997 | else |
34408 | rm -f "$ac_file" | 34998 | rm -f "$ac_file" |
34409 | mv "$tmp/config.h" "$ac_file" \ | 34999 | mv "$tmp/config.h" "$ac_file" \ |
34410 | || as_fn_error $? "could not create $ac_file" "$LINENO" 5 | 35000 | || as_fn_error "could not create $ac_file" "$LINENO" 5 |
34411 | fi | 35001 | fi |
34412 | else | 35002 | else |
34413 | $as_echo "/* $configure_input */" \ | 35003 | $as_echo "/* $configure_input */" \ |
34414 | && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ | 35004 | && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ |
34415 | || as_fn_error $? "could not create -" "$LINENO" 5 | 35005 | || as_fn_error "could not create -" "$LINENO" 5 |
34416 | fi | 35006 | fi |
34417 | # Compute "$ac_file"'s index in $config_headers. | 35007 | # Compute "$ac_file"'s index in $config_headers. |
34418 | _am_arg="$ac_file" | 35008 | _am_arg="$ac_file" |
@@ -35370,7 +35960,7 @@ _ACEOF | |||
35370 | ac_clean_files=$ac_clean_files_save | 35960 | ac_clean_files=$ac_clean_files_save |
35371 | 35961 | ||
35372 | test $ac_write_fail = 0 || | 35962 | test $ac_write_fail = 0 || |
35373 | as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 | 35963 | as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5 |
35374 | 35964 | ||
35375 | 35965 | ||
35376 | # configure is writing to config.log, and then calls config.status. | 35966 | # configure is writing to config.log, and then calls config.status. |
@@ -35391,7 +35981,7 @@ if test "$no_create" != yes; then | |||
35391 | exec 5>>config.log | 35981 | exec 5>>config.log |
35392 | # Use ||, not &&, to avoid exiting from the if with $? = 1, which | 35982 | # Use ||, not &&, to avoid exiting from the if with $? = 1, which |
35393 | # would make configure fail if this is the last instruction. | 35983 | # would make configure fail if this is the last instruction. |
35394 | $ac_cs_success || as_fn_exit 1 | 35984 | $ac_cs_success || as_fn_exit $? |
35395 | fi | 35985 | fi |
35396 | if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then | 35986 | if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then |
35397 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 | 35987 | { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 |
@@ -35465,6 +36055,8 @@ echo " Software 16bit X11.........: $have_evas_engine_software_16_x11" | |||
35465 | echo " Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw" | 36055 | echo " Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw" |
35466 | echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince" | 36056 | echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince" |
35467 | echo " Software 16bit SDL.........: $have_evas_engine_software_16_sdl (primitive: $sdl_primitive)" | 36057 | echo " Software 16bit SDL.........: $have_evas_engine_software_16_sdl (primitive: $sdl_primitive)" |
36058 | echo " Wayland Shm................: $have_evas_engine_wayland_shm" | ||
36059 | echo " Wayland Egl................: $have_evas_engine_wayland_egl" | ||
35468 | echo | 36060 | echo |
35469 | echo "Image Loaders:" | 36061 | echo "Image Loaders:" |
35470 | echo " BMP.....................: $have_evas_image_loader_bmp" | 36062 | echo " BMP.....................: $have_evas_image_loader_bmp" |
@@ -35517,6 +36109,16 @@ echo | |||
35517 | echo " Word Cache..............: $want_word_cache" | 36109 | echo " Word Cache..............: $want_word_cache" |
35518 | echo " Metric Cache............: $want_metric_cache" | 36110 | echo " Metric Cache............: $want_metric_cache" |
35519 | echo | 36111 | echo |
36112 | echo " Pixman..................: $have_pixman" | ||
36113 | echo " Pixman Fonts............: $have_pixman_font" | ||
36114 | echo " Pixman Rects............: $have_pixman_rect" | ||
36115 | echo " Pixman Lines............: $have_pixman_line" | ||
36116 | echo " Pixman Polygons.........: $have_pixman_poly" | ||
36117 | echo " Pixman Images...........: $have_pixman_image" | ||
36118 | echo " Pixman Image ScaleSample: $have_pixman_image_scale_sample" | ||
36119 | echo | ||
36120 | echo " Tiled 32BPP rotate......: $have_tile_rotate" | ||
36121 | echo | ||
35520 | echo "ARGB Software Engine Options:" | 36122 | echo "ARGB Software Engine Options:" |
35521 | echo " Sampling Scaler.........: $scaler_sample" | 36123 | echo " Sampling Scaler.........: $scaler_sample" |
35522 | echo " Smooth Scaler...........: $scaler_smooth" | 36124 | echo " Smooth Scaler...........: $scaler_smooth" |
diff --git a/libraries/evas/configure.ac b/libraries/evas/configure.ac index 0b56053..5424e31 100644 --- a/libraries/evas/configure.ac +++ b/libraries/evas/configure.ac | |||
@@ -2,11 +2,11 @@ | |||
2 | ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## | 2 | ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## |
3 | m4_define([v_maj], [1]) | 3 | m4_define([v_maj], [1]) |
4 | m4_define([v_min], [1]) | 4 | m4_define([v_min], [1]) |
5 | m4_define([v_mic], [0]) | 5 | m4_define([v_mic], [99]) |
6 | m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v export || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n'])) | 6 | m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v '\(export\|Unversioned directory\)' || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n'])) |
7 | m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null | (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d '\n']))]) | 7 | m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null | (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d '\n']))]) |
8 | ##-- When released, remove the dnl on the below line | 8 | ##-- When released, remove the dnl on the below line |
9 | m4_undefine([v_rev]) | 9 | dnl m4_undefine([v_rev]) |
10 | ##-- When doing snapshots - change soname. remove dnl on below line | 10 | ##-- When doing snapshots - change soname. remove dnl on below line |
11 | dnl m4_define([relname], [ver-pre-svn-07]) | 11 | dnl m4_define([relname], [ver-pre-svn-07]) |
12 | dnl m4_define([v_rel], [-release relname]) | 12 | dnl m4_define([v_rel], [-release relname]) |
@@ -112,6 +112,8 @@ want_evas_engine_direct3d="no" | |||
112 | want_evas_engine_fb="no" | 112 | want_evas_engine_fb="no" |
113 | want_evas_engine_directfb="no" | 113 | want_evas_engine_directfb="no" |
114 | want_evas_engine_psl1ght="no" | 114 | want_evas_engine_psl1ght="no" |
115 | want_evas_engine_wayland_shm="no" | ||
116 | want_evas_engine_wayland_egl="no" | ||
115 | 117 | ||
116 | want_evas_image_loader_edb="yes" | 118 | want_evas_image_loader_edb="yes" |
117 | want_evas_image_loader_eet="yes" | 119 | want_evas_image_loader_eet="yes" |
@@ -158,6 +160,8 @@ case "$host_os" in | |||
158 | want_evas_engine_software_xcb="no" | 160 | want_evas_engine_software_xcb="no" |
159 | want_evas_engine_gl_xcb="no" | 161 | want_evas_engine_gl_xcb="no" |
160 | want_evas_engine_fb="auto" | 162 | want_evas_engine_fb="auto" |
163 | want_evas_engine_wayland_shm="auto" | ||
164 | want_evas_engine_wayland_egl="auto" | ||
161 | ### no - not ready/usable/complete | 165 | ### no - not ready/usable/complete |
162 | # want_evas_engine_software_8_x11="auto" | 166 | # want_evas_engine_software_8_x11="auto" |
163 | # want_evas_engine_software_16_x11="auto" | 167 | # want_evas_engine_software_16_x11="auto" |
@@ -403,8 +407,8 @@ fi | |||
403 | # Pixman | 407 | # Pixman |
404 | have_pixman="no" | 408 | have_pixman="no" |
405 | AC_ARG_ENABLE([pixman], | 409 | AC_ARG_ENABLE([pixman], |
406 | AC_HELP_STRING([--disable-pixman], | 410 | AC_HELP_STRING([--enable-pixman], |
407 | [disable pixman for software rendering. @<:@default=enabled@:>@]), | 411 | [enable pixman for software rendering. @<:@default=enabled@:>@]), |
408 | [ | 412 | [ |
409 | if test "x${enableval}" = "xyes" ; then | 413 | if test "x${enableval}" = "xyes" ; then |
410 | want_pixman="yes" | 414 | want_pixman="yes" |
@@ -429,12 +433,74 @@ if test "x${want_pixman}" = "xyes" -o "x${want_pixman}" = "xauto" ; then | |||
429 | ]) | 433 | ]) |
430 | fi | 434 | fi |
431 | 435 | ||
436 | have_pixman_font="no" | ||
437 | AC_ARG_ENABLE(pixman-font, | ||
438 | AC_HELP_STRING([--enable-pixman-font], [Allow pixman to render fonts]), | ||
439 | [ | ||
440 | have_pixman_font="yes" | ||
441 | AC_DEFINE(PIXMAN_FONT, 1, [Allow pixman to render fonts]) | ||
442 | ] | ||
443 | ) | ||
444 | |||
445 | have_pixman_rect="no" | ||
446 | AC_ARG_ENABLE(pixman-rect, | ||
447 | AC_HELP_STRING([--enable-pixman-rect], [Allow pixman to render rects]), | ||
448 | [ | ||
449 | have_pixman_rect="yes" | ||
450 | AC_DEFINE(PIXMAN_RECT, 1, [Allow pixman to render rects]) | ||
451 | ] | ||
452 | ) | ||
453 | |||
454 | have_pixman_line="no" | ||
455 | AC_ARG_ENABLE(pixman-line, | ||
456 | AC_HELP_STRING([--enable-pixman-line], [Allow pixman to render lines]), | ||
457 | [ | ||
458 | have_pixman_line="yes" | ||
459 | AC_DEFINE(PIXMAN_LINE, 1, [Allow pixman to render lines]) | ||
460 | ] | ||
461 | ) | ||
462 | |||
463 | have_pixman_poly="no" | ||
464 | AC_ARG_ENABLE(pixman-poly, | ||
465 | AC_HELP_STRING([--enable-pixman-poly], [Allow pixman to render polys]), | ||
466 | [ | ||
467 | have_pixman_poly="yes" | ||
468 | AC_DEFINE(PIXMAN_POLY, 1, [Allow pixman to render polys]) | ||
469 | ] | ||
470 | ) | ||
471 | |||
472 | have_pixman_image="no" | ||
473 | AC_ARG_ENABLE(pixman-image, | ||
474 | AC_HELP_STRING([--enable-pixman-image], [Allow pixman to render images]), | ||
475 | [ | ||
476 | have_pixman_image="yes" | ||
477 | AC_DEFINE(PIXMAN_IMAGE, 1, [Allow pixman to render images]) | ||
478 | ] | ||
479 | ) | ||
480 | |||
481 | have_pixman_image_scale_sample="no" | ||
482 | AC_ARG_ENABLE(pixman-image-scale-sample, | ||
483 | AC_HELP_STRING([--enable-pixman-image-scale-sample], [Allow pixman to render sampled scaled images]), | ||
484 | [ | ||
485 | have_pixman_image_scale_sample="yes" | ||
486 | AC_DEFINE(PIXMAN_IMAGE_SCALE_SAMPLE, 1, [Allow pixman to render image sampled scaling]) | ||
487 | ] | ||
488 | ) | ||
489 | |||
490 | have_tile_rotate="no" | ||
491 | AC_ARG_ENABLE(tile-rotate, | ||
492 | AC_HELP_STRING([--enable-tile-rotate], [Enable tiled rotate algorithm]), | ||
493 | [ | ||
494 | have_tile_rotate="yes" | ||
495 | AC_DEFINE(TILE_ROTATE, 1, [Enable tiled rotate algorithm]) | ||
496 | ] | ||
497 | ) | ||
498 | |||
432 | ### Checks for header files | 499 | ### Checks for header files |
433 | AC_HEADER_STDC | 500 | AC_HEADER_STDC |
434 | AC_CHECK_HEADERS([unistd.h stdint.h sys/param.h netinet/in.h]) | 501 | AC_CHECK_HEADERS([unistd.h stdint.h sys/param.h netinet/in.h sys/mman.h]) |
435 | EFL_CHECK_PATH_MAX | 502 | EFL_CHECK_PATH_MAX |
436 | 503 | ||
437 | |||
438 | ### Checks for types | 504 | ### Checks for types |
439 | AC_CHECK_TYPES([struct sigaction], [], [], | 505 | AC_CHECK_TYPES([struct sigaction], [], [], |
440 | [[#include <signal.h>]]) | 506 | [[#include <signal.h>]]) |
@@ -704,6 +770,10 @@ EVAS_CHECK_ENGINE([software-16-wince], [${want_evas_engine_software_16_wince}], | |||
704 | 770 | ||
705 | EVAS_CHECK_ENGINE([software-16-sdl], [${want_evas_engine_software_16_sdl}], [no], [Software SDL 16 bits]) | 771 | EVAS_CHECK_ENGINE([software-16-sdl], [${want_evas_engine_software_16_sdl}], [no], [Software SDL 16 bits]) |
706 | 772 | ||
773 | EVAS_CHECK_ENGINE([wayland-shm], [${want_evas_engine_wayland_shm}], [no], [Wayland Shm]) | ||
774 | |||
775 | EVAS_CHECK_ENGINE([wayland-egl], [${want_evas_engine_wayland_egl}], [no], [Wayland Egl]) | ||
776 | |||
707 | # SDL primitive | 777 | # SDL primitive |
708 | sdl_primitive="no" | 778 | sdl_primitive="no" |
709 | 779 | ||
@@ -856,13 +926,15 @@ have_static_evas_engine_gl_common="no" | |||
856 | if test "x$have_evas_engine_gl_xlib" = "xyes" \ | 926 | if test "x$have_evas_engine_gl_xlib" = "xyes" \ |
857 | || test "x$have_evas_engine_gl_xcb" = "xyes" \ | 927 | || test "x$have_evas_engine_gl_xcb" = "xyes" \ |
858 | || test "x$have_evas_engine_gl_sdl" = "xyes" \ | 928 | || test "x$have_evas_engine_gl_sdl" = "xyes" \ |
859 | || test "x$have_evas_engine_gl_cocoa" = "xyes"; then | 929 | || test "x$have_evas_engine_gl_cocoa" = "xyes" \ |
930 | || test "x$have_evas_engine_wayland_egl" = "xyes"; then | ||
860 | have_evas_engine_gl_common="yes" | 931 | have_evas_engine_gl_common="yes" |
861 | fi | 932 | fi |
862 | if test "x$have_evas_engine_gl_xlib" = "xstatic" \ | 933 | if test "x$have_evas_engine_gl_xlib" = "xstatic" \ |
863 | || test "x$have_evas_engine_gl_xcb" = "xstatic" \ | 934 | || test "x$have_evas_engine_gl_xcb" = "xstatic" \ |
864 | || test "x$have_evas_engine_gl_sdl" = "xstatic" \ | 935 | || test "x$have_evas_engine_gl_sdl" = "xstatic" \ |
865 | || test "x$have_evas_engine_gl_cocoa" = "xstatic"; then | 936 | || test "x$have_evas_engine_gl_cocoa" = "xstatic" \ |
937 | || test "x$have_evas_engine_wayland_egl" = "xstatic"; then | ||
866 | have_evas_engine_gl_common="yes" | 938 | have_evas_engine_gl_common="yes" |
867 | have_static_evas_engine_gl_common="yes" | 939 | have_static_evas_engine_gl_common="yes" |
868 | fi | 940 | fi |
@@ -1272,9 +1344,16 @@ AC_ARG_ENABLE(cpu-sse3, | |||
1272 | AS_HELP_STRING([--enable-cpu-sse3], [enable sse3 code]), | 1344 | AS_HELP_STRING([--enable-cpu-sse3], [enable sse3 code]), |
1273 | [ | 1345 | [ |
1274 | if test "x$enableval" = "xyes" ; then | 1346 | if test "x$enableval" = "xyes" ; then |
1275 | AC_MSG_RESULT(yes) | 1347 | AC_CHECK_HEADER(immintrin.h, |
1276 | AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code]) | 1348 | [ |
1277 | build_cpu_sse3="yes" | 1349 | AC_MSG_RESULT(yes) |
1350 | AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code]) | ||
1351 | build_cpu_sse3="yes" | ||
1352 | ], | ||
1353 | [ | ||
1354 | AC_MSG_RESULT(no) | ||
1355 | build_cpu_sse3="no" | ||
1356 | ]) | ||
1278 | else | 1357 | else |
1279 | AC_MSG_RESULT(no) | 1358 | AC_MSG_RESULT(no) |
1280 | build_cpu_sse3="no" | 1359 | build_cpu_sse3="no" |
@@ -1283,7 +1362,16 @@ AC_ARG_ENABLE(cpu-sse3, | |||
1283 | [ | 1362 | [ |
1284 | AC_MSG_RESULT($build_cpu_sse3) | 1363 | AC_MSG_RESULT($build_cpu_sse3) |
1285 | if test "x$build_cpu_sse3" = "xyes" ; then | 1364 | if test "x$build_cpu_sse3" = "xyes" ; then |
1286 | AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code]) | 1365 | AC_CHECK_HEADER(immintrin.h, |
1366 | [ | ||
1367 | AC_MSG_RESULT(yes) | ||
1368 | AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code]) | ||
1369 | build_cpu_sse3="yes" | ||
1370 | ], | ||
1371 | [ | ||
1372 | AC_MSG_RESULT(no) | ||
1373 | build_cpu_sse3="no" | ||
1374 | ]) | ||
1287 | fi | 1375 | fi |
1288 | ] | 1376 | ] |
1289 | ) | 1377 | ) |
@@ -1805,6 +1893,8 @@ evas-direct3d.pc | |||
1805 | evas-software-16-wince.pc | 1893 | evas-software-16-wince.pc |
1806 | evas-software-sdl.pc | 1894 | evas-software-sdl.pc |
1807 | evas-psl1ght.pc | 1895 | evas-psl1ght.pc |
1896 | evas-wayland-shm.pc | ||
1897 | evas-wayland-egl.pc | ||
1808 | evas.pc | 1898 | evas.pc |
1809 | doc/evas.dox | 1899 | doc/evas.dox |
1810 | doc/Makefile | 1900 | doc/Makefile |
@@ -1849,6 +1939,8 @@ src/modules/engines/software_16/Makefile | |||
1849 | src/modules/engines/software_16_x11/Makefile | 1939 | src/modules/engines/software_16_x11/Makefile |
1850 | src/modules/engines/software_16_ddraw/Makefile | 1940 | src/modules/engines/software_16_ddraw/Makefile |
1851 | src/modules/engines/software_16_sdl/Makefile | 1941 | src/modules/engines/software_16_sdl/Makefile |
1942 | src/modules/engines/wayland_shm/Makefile | ||
1943 | src/modules/engines/wayland_egl/Makefile | ||
1852 | src/modules/loaders/Makefile | 1944 | src/modules/loaders/Makefile |
1853 | src/modules/loaders/edb/Makefile | 1945 | src/modules/loaders/edb/Makefile |
1854 | src/modules/loaders/eet/Makefile | 1946 | src/modules/loaders/eet/Makefile |
@@ -1945,6 +2037,8 @@ echo " Software 16bit X11.........: $have_evas_engine_software_16_x11" | |||
1945 | echo " Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw" | 2037 | echo " Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw" |
1946 | echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince" | 2038 | echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince" |
1947 | echo " Software 16bit SDL.........: $have_evas_engine_software_16_sdl (primitive: $sdl_primitive)" | 2039 | echo " Software 16bit SDL.........: $have_evas_engine_software_16_sdl (primitive: $sdl_primitive)" |
2040 | echo " Wayland Shm................: $have_evas_engine_wayland_shm" | ||
2041 | echo " Wayland Egl................: $have_evas_engine_wayland_egl" | ||
1948 | echo | 2042 | echo |
1949 | echo "Image Loaders:" | 2043 | echo "Image Loaders:" |
1950 | echo " BMP.....................: $have_evas_image_loader_bmp" | 2044 | echo " BMP.....................: $have_evas_image_loader_bmp" |
@@ -2002,6 +2096,16 @@ echo | |||
2002 | echo " Word Cache..............: $want_word_cache" | 2096 | echo " Word Cache..............: $want_word_cache" |
2003 | echo " Metric Cache............: $want_metric_cache" | 2097 | echo " Metric Cache............: $want_metric_cache" |
2004 | echo | 2098 | echo |
2099 | echo " Pixman..................: $have_pixman" | ||
2100 | echo " Pixman Fonts............: $have_pixman_font" | ||
2101 | echo " Pixman Rects............: $have_pixman_rect" | ||
2102 | echo " Pixman Lines............: $have_pixman_line" | ||
2103 | echo " Pixman Polygons.........: $have_pixman_poly" | ||
2104 | echo " Pixman Images...........: $have_pixman_image" | ||
2105 | echo " Pixman Image ScaleSample: $have_pixman_image_scale_sample" | ||
2106 | echo | ||
2107 | echo " Tiled 32BPP rotate......: $have_tile_rotate" | ||
2108 | echo | ||
2005 | echo "ARGB Software Engine Options:" | 2109 | echo "ARGB Software Engine Options:" |
2006 | echo " Sampling Scaler.........: $scaler_sample" | 2110 | echo " Sampling Scaler.........: $scaler_sample" |
2007 | echo " Smooth Scaler...........: $scaler_smooth" | 2111 | echo " Smooth Scaler...........: $scaler_smooth" |
diff --git a/libraries/evas/doc/Makefile.in b/libraries/evas/doc/Makefile.in index e9a343d..20f2693 100644 --- a/libraries/evas/doc/Makefile.in +++ b/libraries/evas/doc/Makefile.in | |||
@@ -167,8 +167,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
167 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 167 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
168 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 168 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
169 | PKG_CONFIG = @PKG_CONFIG@ | 169 | PKG_CONFIG = @PKG_CONFIG@ |
170 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
171 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
172 | PNG_CFLAGS = @PNG_CFLAGS@ | 170 | PNG_CFLAGS = @PNG_CFLAGS@ |
173 | PNG_LIBS = @PNG_LIBS@ | 171 | PNG_LIBS = @PNG_LIBS@ |
174 | RANLIB = @RANLIB@ | 172 | RANLIB = @RANLIB@ |
@@ -185,6 +183,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
185 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 183 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
186 | VERSION = @VERSION@ | 184 | VERSION = @VERSION@ |
187 | VMAJ = @VMAJ@ | 185 | VMAJ = @VMAJ@ |
186 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
187 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
188 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 188 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
189 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 189 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
190 | XCB_CFLAGS = @XCB_CFLAGS@ | 190 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -266,6 +266,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
266 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 266 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
267 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 267 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
268 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 268 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
269 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
270 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
271 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
272 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
269 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 273 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
270 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 274 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
271 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 275 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/doc/img/e_big.png b/libraries/evas/doc/img/e_big.png index d42aeb4..d42aeb4 100644..100755 --- a/libraries/evas/doc/img/e_big.png +++ b/libraries/evas/doc/img/e_big.png | |||
Binary files differ | |||
diff --git a/libraries/evas/doc/img/foot_bg.png b/libraries/evas/doc/img/foot_bg.png index b24f3a4..b24f3a4 100644..100755 --- a/libraries/evas/doc/img/foot_bg.png +++ b/libraries/evas/doc/img/foot_bg.png | |||
Binary files differ | |||
diff --git a/libraries/evas/doc/img/head_bg.png b/libraries/evas/doc/img/head_bg.png index 081dc13..081dc13 100644..100755 --- a/libraries/evas/doc/img/head_bg.png +++ b/libraries/evas/doc/img/head_bg.png | |||
Binary files differ | |||
diff --git a/libraries/evas/doc/img/menu_bg.png b/libraries/evas/doc/img/menu_bg.png index e978743..e978743 100644..100755 --- a/libraries/evas/doc/img/menu_bg.png +++ b/libraries/evas/doc/img/menu_bg.png | |||
Binary files differ | |||
diff --git a/libraries/evas/doc/img/menu_bg_current.png b/libraries/evas/doc/img/menu_bg_current.png index de97c92..de97c92 100644..100755 --- a/libraries/evas/doc/img/menu_bg_current.png +++ b/libraries/evas/doc/img/menu_bg_current.png | |||
Binary files differ | |||
diff --git a/libraries/evas/doc/img/menu_bg_hover.png b/libraries/evas/doc/img/menu_bg_hover.png index 3fd851d..3fd851d 100644..100755 --- a/libraries/evas/doc/img/menu_bg_hover.png +++ b/libraries/evas/doc/img/menu_bg_hover.png | |||
Binary files differ | |||
diff --git a/libraries/evas/doc/img/menu_bg_last.png b/libraries/evas/doc/img/menu_bg_last.png index 88c116c..88c116c 100644..100755 --- a/libraries/evas/doc/img/menu_bg_last.png +++ b/libraries/evas/doc/img/menu_bg_last.png | |||
Binary files differ | |||
diff --git a/libraries/evas/doc/img/menu_bg_unsel.png b/libraries/evas/doc/img/menu_bg_unsel.png index 50e5fd8..50e5fd8 100644..100755 --- a/libraries/evas/doc/img/menu_bg_unsel.png +++ b/libraries/evas/doc/img/menu_bg_unsel.png | |||
Binary files differ | |||
diff --git a/libraries/evas/evas-wayland-egl.pc.in b/libraries/evas/evas-wayland-egl.pc.in new file mode 100644 index 0000000..a770c42 --- /dev/null +++ b/libraries/evas/evas-wayland-egl.pc.in | |||
@@ -0,0 +1,3 @@ | |||
1 | Name: evas-wayland-egl | ||
2 | Description: Evas Wayland Egl engine | ||
3 | Version: @VERSION@ | ||
diff --git a/libraries/evas/evas-wayland-shm.pc.in b/libraries/evas/evas-wayland-shm.pc.in new file mode 100644 index 0000000..5576681 --- /dev/null +++ b/libraries/evas/evas-wayland-shm.pc.in | |||
@@ -0,0 +1,3 @@ | |||
1 | Name: evas-wayland-shm | ||
2 | Description: Evas Wayland Shm engine | ||
3 | Version: @VERSION@ | ||
diff --git a/libraries/evas/evas.spec b/libraries/evas/evas.spec index f3ebad3..fe04f2e 100644 --- a/libraries/evas/evas.spec +++ b/libraries/evas/evas.spec | |||
@@ -85,7 +85,7 @@ | |||
85 | 85 | ||
86 | Summary: Multi-platform Canvas Library | 86 | Summary: Multi-platform Canvas Library |
87 | Name: evas | 87 | Name: evas |
88 | Version: 1.1.0 | 88 | Version: 1.1.99.67344 |
89 | Release: %{_rel} | 89 | Release: %{_rel} |
90 | License: BSD | 90 | License: BSD |
91 | Group: System Environment/Libraries | 91 | Group: System Environment/Libraries |
diff --git a/libraries/evas/ltmain.sh b/libraries/evas/ltmain.sh index fa4b1e1..7ed280b 100755 --- a/libraries/evas/ltmain.sh +++ b/libraries/evas/ltmain.sh | |||
@@ -65,7 +65,7 @@ | |||
65 | # compiler: $LTCC | 65 | # compiler: $LTCC |
66 | # compiler flags: $LTCFLAGS | 66 | # compiler flags: $LTCFLAGS |
67 | # linker: $LD (gnu? $with_gnu_ld) | 67 | # linker: $LD (gnu? $with_gnu_ld) |
68 | # $progname: (GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu3 | 68 | # $progname: (GNU libtool) 2.2.6b Debian-2.2.6b-2ubuntu1 |
69 | # automake: $automake_version | 69 | # automake: $automake_version |
70 | # autoconf: $autoconf_version | 70 | # autoconf: $autoconf_version |
71 | # | 71 | # |
@@ -73,7 +73,7 @@ | |||
73 | 73 | ||
74 | PROGRAM=ltmain.sh | 74 | PROGRAM=ltmain.sh |
75 | PACKAGE=libtool | 75 | PACKAGE=libtool |
76 | VERSION="2.2.6b Debian-2.2.6b-2ubuntu3" | 76 | VERSION="2.2.6b Debian-2.2.6b-2ubuntu1" |
77 | TIMESTAMP="" | 77 | TIMESTAMP="" |
78 | package_revision=1.3017 | 78 | package_revision=1.3017 |
79 | 79 | ||
diff --git a/libraries/evas/m4/evas_check_engine.m4 b/libraries/evas/m4/evas_check_engine.m4 index 5294100..4fc13a9 100644 --- a/libraries/evas/m4/evas_check_engine.m4 +++ b/libraries/evas/m4/evas_check_engine.m4 | |||
@@ -873,6 +873,79 @@ fi | |||
873 | 873 | ||
874 | ]) | 874 | ]) |
875 | 875 | ||
876 | |||
877 | dnl use: EVAS_CHECK_ENGINE_DEP_WAYLAND_SHM(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) | ||
878 | |||
879 | AC_DEFUN([EVAS_CHECK_ENGINE_DEP_WAYLAND_SHM], | ||
880 | [ | ||
881 | |||
882 | have_dep="yes" | ||
883 | evas_engine_[]$1[]_cflags="" | ||
884 | evas_engine_[]$1[]_libs="" | ||
885 | |||
886 | AC_SUBST([evas_engine_$1_cflags]) | ||
887 | AC_SUBST([evas_engine_$1_libs]) | ||
888 | |||
889 | if test "x${have_dep}" = "xyes" ; then | ||
890 | m4_default([$4], [:]) | ||
891 | else | ||
892 | m4_default([$5], [:]) | ||
893 | fi | ||
894 | |||
895 | ]) | ||
896 | |||
897 | |||
898 | dnl use: EVAS_CHECK_ENGINE_DEP_WAYLAND_EGL(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) | ||
899 | |||
900 | AC_DEFUN([EVAS_CHECK_ENGINE_DEP_WAYLAND_EGL], | ||
901 | [ | ||
902 | |||
903 | requirement="" | ||
904 | have_dep="no" | ||
905 | evas_engine_[]$1[]_cflags="" | ||
906 | evas_engine_[]$1[]_libs="" | ||
907 | |||
908 | PKG_CHECK_MODULES([WAYLAND_EGL], | ||
909 | [egl >= 7.10 glesv2 gl wayland-client wayland-egl], | ||
910 | [ | ||
911 | have_dep="yes" | ||
912 | requirement="egl >= 7.10 glesv2 gl wayland-client wayland-egl" | ||
913 | evas_engine_[]$1[]_cflags="${WAYLAND_EGL_CFLAGS}" | ||
914 | evas_engine_[]$1[]_libs="${WAYLAND_EGL_LIBS}" | ||
915 | ],[ | ||
916 | have_dep="no" | ||
917 | ] | ||
918 | ) | ||
919 | |||
920 | if test "x${have_dep}" = "xyes" ; then | ||
921 | PKG_CHECK_MODULES([GL_EET], [eet >= 1.5.0], [have_dep="yes"], [have_dep="no"]) | ||
922 | AC_CHECK_HEADER([GLES2/gl2.h], | ||
923 | [have_egl="yes"], | ||
924 | [have_egl="no"], | ||
925 | [ | ||
926 | ]) | ||
927 | if test "x${have_egl}" = "xyes" ; then | ||
928 | evas_engine_[]$1[]_cflags="${WAYLAND_EGL_CFLAGS}" | ||
929 | evas_engine_[]$1[]_libs="${WAYLAND_EGL_LIBS} -lGL -lGLESv2 -lEGL" | ||
930 | fi | ||
931 | fi | ||
932 | |||
933 | AC_SUBST([evas_engine_$1_cflags]) | ||
934 | AC_SUBST([evas_engine_$1_libs]) | ||
935 | |||
936 | if test "x$3" = "xstatic" ; then | ||
937 | requirement_evas="${requirement} ${requirement_evas}" | ||
938 | fi | ||
939 | |||
940 | if test "x${have_dep}" = "xyes" ; then | ||
941 | m4_default([$4], [:]) | ||
942 | else | ||
943 | m4_default([$5], [:]) | ||
944 | fi | ||
945 | |||
946 | ]) | ||
947 | |||
948 | |||
876 | dnl use: EVAS_CHECK_ENGINE(engine, want_engine, simple, description) | 949 | dnl use: EVAS_CHECK_ENGINE(engine, want_engine, simple, description) |
877 | 950 | ||
878 | 951 | ||
diff --git a/libraries/evas/sha1-for-source.txt b/libraries/evas/sha1-for-source.txt deleted file mode 100644 index 36d8a4c..0000000 --- a/libraries/evas/sha1-for-source.txt +++ /dev/null | |||
@@ -1 +0,0 @@ | |||
1 | c4cc1315c6fe6096e822f8dbf2c099a541b07962 | ||
diff --git a/libraries/evas/src/Makefile.in b/libraries/evas/src/Makefile.in index 9b729e1..68cdb12 100644 --- a/libraries/evas/src/Makefile.in +++ b/libraries/evas/src/Makefile.in | |||
@@ -206,8 +206,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
206 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 206 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
207 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 207 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
208 | PKG_CONFIG = @PKG_CONFIG@ | 208 | PKG_CONFIG = @PKG_CONFIG@ |
209 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
210 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
211 | PNG_CFLAGS = @PNG_CFLAGS@ | 209 | PNG_CFLAGS = @PNG_CFLAGS@ |
212 | PNG_LIBS = @PNG_LIBS@ | 210 | PNG_LIBS = @PNG_LIBS@ |
213 | RANLIB = @RANLIB@ | 211 | RANLIB = @RANLIB@ |
@@ -224,6 +222,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
224 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 222 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
225 | VERSION = @VERSION@ | 223 | VERSION = @VERSION@ |
226 | VMAJ = @VMAJ@ | 224 | VMAJ = @VMAJ@ |
225 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
226 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
227 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 227 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
228 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 228 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
229 | XCB_CFLAGS = @XCB_CFLAGS@ | 229 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -305,6 +305,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
305 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 305 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
306 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 306 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
307 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 307 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
308 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
309 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
310 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
311 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
308 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 312 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
309 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 313 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
310 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 314 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/bin/Makefile.in b/libraries/evas/src/bin/Makefile.in index 885bfc4..136b34c 100644 --- a/libraries/evas/src/bin/Makefile.in +++ b/libraries/evas/src/bin/Makefile.in | |||
@@ -212,8 +212,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
212 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 212 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
213 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 213 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
214 | PKG_CONFIG = @PKG_CONFIG@ | 214 | PKG_CONFIG = @PKG_CONFIG@ |
215 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
216 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
217 | PNG_CFLAGS = @PNG_CFLAGS@ | 215 | PNG_CFLAGS = @PNG_CFLAGS@ |
218 | PNG_LIBS = @PNG_LIBS@ | 216 | PNG_LIBS = @PNG_LIBS@ |
219 | RANLIB = @RANLIB@ | 217 | RANLIB = @RANLIB@ |
@@ -230,6 +228,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
230 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 228 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
231 | VERSION = @VERSION@ | 229 | VERSION = @VERSION@ |
232 | VMAJ = @VMAJ@ | 230 | VMAJ = @VMAJ@ |
231 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
232 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
233 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 233 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
234 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 234 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
235 | XCB_CFLAGS = @XCB_CFLAGS@ | 235 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -311,6 +311,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
311 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 311 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
312 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 312 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
313 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 313 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
314 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
315 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
316 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
317 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
314 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 318 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
315 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 319 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
316 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 320 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/examples/Makefile.am b/libraries/evas/src/examples/Makefile.am index f748c12..ffa9274 100644 --- a/libraries/evas/src/examples/Makefile.am +++ b/libraries/evas/src/examples/Makefile.am | |||
@@ -1,6 +1,6 @@ | |||
1 | MAINTAINERCLEANFILES = Makefile.in | 1 | MAINTAINERCLEANFILES = Makefile.in |
2 | 2 | ||
3 | pkglibdir = $(datadir)/$(PACKAGE)/examples | 3 | examplesdir = $(datadir)/$(PACKAGE)/examples |
4 | 4 | ||
5 | #put here all EDCs one needs to the tests | 5 | #put here all EDCs one needs to the tests |
6 | EDCS = aspect.edc | 6 | EDCS = aspect.edc |
@@ -28,68 +28,68 @@ AM_CPPFLAGS = \ | |||
28 | 28 | ||
29 | AM_CFLAGS = @WIN32_CFLAGS@ | 29 | AM_CFLAGS = @WIN32_CFLAGS@ |
30 | 30 | ||
31 | pkglib_PROGRAMS = | 31 | examples_PROGRAMS = |
32 | 32 | ||
33 | if BUILD_ENGINE_BUFFER | 33 | if BUILD_ENGINE_BUFFER |
34 | AM_CPPFLAGS += -I$(top_srcdir)/src/modules/engines/buffer | 34 | AM_CPPFLAGS += -I$(top_srcdir)/src/modules/engines/buffer |
35 | 35 | ||
36 | pkglib_PROGRAMS += evas_buffer_simple | 36 | examples_PROGRAMS += evas_buffer_simple |
37 | evas_buffer_simple_SOURCES = evas-buffer-simple.c | 37 | evas_buffer_simple_SOURCES = evas-buffer-simple.c |
38 | evas_buffer_simple_LDADD = $(top_builddir)/src/lib/libevas.la | 38 | evas_buffer_simple_LDADD = $(top_builddir)/src/lib/libevas.la |
39 | endif | 39 | endif |
40 | 40 | ||
41 | pkglib_PROGRAMS += evas_init_shutdown | 41 | examples_PROGRAMS += evas_init_shutdown |
42 | evas_init_shutdown_SOURCES = evas-init-shutdown.c | 42 | evas_init_shutdown_SOURCES = evas-init-shutdown.c |
43 | evas_init_shutdown_LDADD = $(top_builddir)/src/lib/libevas.la | 43 | evas_init_shutdown_LDADD = $(top_builddir)/src/lib/libevas.la |
44 | 44 | ||
45 | #the ones using ecore_evas follow | 45 | #the ones using ecore_evas follow |
46 | AM_CPPFLAGS += @ECORE_EVAS_CFLAGS@ | 46 | AM_CPPFLAGS += @ECORE_EVAS_CFLAGS@ |
47 | 47 | ||
48 | pkglib_PROGRAMS += evas_images | 48 | examples_PROGRAMS += evas_images |
49 | evas_images_SOURCES = evas-images.c | 49 | evas_images_SOURCES = evas-images.c |
50 | evas_images_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 50 | evas_images_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
51 | 51 | ||
52 | pkglib_PROGRAMS += evas_events | 52 | examples_PROGRAMS += evas_events |
53 | evas_events_SOURCES = evas-events.c | 53 | evas_events_SOURCES = evas-events.c |
54 | evas_events_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 54 | evas_events_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
55 | 55 | ||
56 | pkglib_PROGRAMS += evas_object_manipulation | 56 | examples_PROGRAMS += evas_object_manipulation |
57 | evas_object_manipulation_SOURCES = evas-object-manipulation.c | 57 | evas_object_manipulation_SOURCES = evas-object-manipulation.c |
58 | evas_object_manipulation_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 58 | evas_object_manipulation_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
59 | 59 | ||
60 | pkglib_PROGRAMS += evas_hints | 60 | examples_PROGRAMS += evas_hints |
61 | evas_hints_SOURCES = evas-hints.c | 61 | evas_hints_SOURCES = evas-hints.c |
62 | evas_hints_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 62 | evas_hints_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
63 | 63 | ||
64 | pkglib_PROGRAMS += evas_stacking | 64 | examples_PROGRAMS += evas_stacking |
65 | evas_stacking_SOURCES = evas-stacking.c | 65 | evas_stacking_SOURCES = evas-stacking.c |
66 | evas_stacking_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 66 | evas_stacking_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
67 | 67 | ||
68 | pkglib_PROGRAMS += evas_images2 | 68 | examples_PROGRAMS += evas_images2 |
69 | evas_images2_SOURCES = evas-images2.c | 69 | evas_images2_SOURCES = evas-images2.c |
70 | evas_images2_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 70 | evas_images2_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
71 | 71 | ||
72 | pkglib_PROGRAMS += evas_text | 72 | examples_PROGRAMS += evas_text |
73 | evas_text_SOURCES = evas-text.c | 73 | evas_text_SOURCES = evas-text.c |
74 | evas_text_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 74 | evas_text_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
75 | 75 | ||
76 | pkglib_PROGRAMS += evas_smart_object | 76 | examples_PROGRAMS += evas_smart_object |
77 | evas_smart_object_SOURCES = evas-smart-object.c | 77 | evas_smart_object_SOURCES = evas-smart-object.c |
78 | evas_smart_object_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 78 | evas_smart_object_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
79 | 79 | ||
80 | pkglib_PROGRAMS += evas_box | 80 | examples_PROGRAMS += evas_box |
81 | evas_box_SOURCES = evas-box.c | 81 | evas_box_SOURCES = evas-box.c |
82 | evas_box_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ @EINA_LIBS@ | 82 | evas_box_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ @EINA_LIBS@ |
83 | 83 | ||
84 | #the ones using ecore_evas and edje follow | 84 | #the ones using ecore_evas and edje follow |
85 | AM_CPPFLAGS += @EDJE_CFLAGS@ | 85 | AM_CPPFLAGS += @EDJE_CFLAGS@ |
86 | 86 | ||
87 | pkglib_PROGRAMS += evas_aspect_hints | 87 | examples_PROGRAMS += evas_aspect_hints |
88 | evas_aspect_hints_DEPS = $(srcdir)/aspect.edc | 88 | evas_aspect_hints_DEPS = $(srcdir)/aspect.edc |
89 | evas_aspect_hints_SOURCES = evas-aspect-hints.c | 89 | evas_aspect_hints_SOURCES = evas-aspect-hints.c |
90 | evas_aspect_hints_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ @EDJE_LIBS@ | 90 | evas_aspect_hints_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ @EDJE_LIBS@ |
91 | 91 | ||
92 | pkglib_PROGRAMS += evas_map_utils | 92 | examples_PROGRAMS += evas_map_utils |
93 | evas_map_utils_SOURCES = evas-map-utils.c | 93 | evas_map_utils_SOURCES = evas-map-utils.c |
94 | evas_map_utils_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ | 94 | evas_map_utils_LDADD = $(top_builddir)/src/lib/libevas.la @ECORE_EVAS_LIBS@ |
95 | 95 | ||
diff --git a/libraries/evas/src/examples/Makefile.in b/libraries/evas/src/examples/Makefile.in index 5332650..f58d297 100644 --- a/libraries/evas/src/examples/Makefile.in +++ b/libraries/evas/src/examples/Makefile.in | |||
@@ -19,6 +19,7 @@ | |||
19 | VPATH = @srcdir@ | 19 | VPATH = @srcdir@ |
20 | pkgdatadir = $(datadir)/@PACKAGE@ | 20 | pkgdatadir = $(datadir)/@PACKAGE@ |
21 | pkgincludedir = $(includedir)/@PACKAGE@ | 21 | pkgincludedir = $(includedir)/@PACKAGE@ |
22 | pkglibdir = $(libdir)/@PACKAGE@ | ||
22 | pkglibexecdir = $(libexecdir)/@PACKAGE@ | 23 | pkglibexecdir = $(libexecdir)/@PACKAGE@ |
23 | am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd | 24 | am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd |
24 | install_sh_DATA = $(install_sh) -c -m 644 | 25 | install_sh_DATA = $(install_sh) -c -m 644 |
@@ -34,7 +35,7 @@ PRE_UNINSTALL = : | |||
34 | POST_UNINSTALL = : | 35 | POST_UNINSTALL = : |
35 | build_triplet = @build@ | 36 | build_triplet = @build@ |
36 | host_triplet = @host@ | 37 | host_triplet = @host@ |
37 | @BUILD_EXAMPLES_TRUE@pkglib_PROGRAMS = $(am__EXEEXT_1) \ | 38 | @BUILD_EXAMPLES_TRUE@examples_PROGRAMS = $(am__EXEEXT_1) \ |
38 | @BUILD_EXAMPLES_TRUE@ evas_init_shutdown$(EXEEXT) \ | 39 | @BUILD_EXAMPLES_TRUE@ evas_init_shutdown$(EXEEXT) \ |
39 | @BUILD_EXAMPLES_TRUE@ evas_images$(EXEEXT) evas_events$(EXEEXT) \ | 40 | @BUILD_EXAMPLES_TRUE@ evas_images$(EXEEXT) evas_events$(EXEEXT) \ |
40 | @BUILD_EXAMPLES_TRUE@ evas_object_manipulation$(EXEEXT) \ | 41 | @BUILD_EXAMPLES_TRUE@ evas_object_manipulation$(EXEEXT) \ |
@@ -89,8 +90,8 @@ CONFIG_HEADER = $(top_builddir)/config.h | |||
89 | CONFIG_CLEAN_FILES = | 90 | CONFIG_CLEAN_FILES = |
90 | CONFIG_CLEAN_VPATH_FILES = | 91 | CONFIG_CLEAN_VPATH_FILES = |
91 | @BUILD_ENGINE_BUFFER_TRUE@@BUILD_EXAMPLES_TRUE@am__EXEEXT_1 = evas_buffer_simple$(EXEEXT) | 92 | @BUILD_ENGINE_BUFFER_TRUE@@BUILD_EXAMPLES_TRUE@am__EXEEXT_1 = evas_buffer_simple$(EXEEXT) |
92 | am__installdirs = "$(DESTDIR)$(pkglibdir)" "$(DESTDIR)$(filesdir)" | 93 | am__installdirs = "$(DESTDIR)$(examplesdir)" "$(DESTDIR)$(filesdir)" |
93 | PROGRAMS = $(pkglib_PROGRAMS) | 94 | PROGRAMS = $(examples_PROGRAMS) |
94 | am__evas_aspect_hints_SOURCES_DIST = evas-aspect-hints.c | 95 | am__evas_aspect_hints_SOURCES_DIST = evas-aspect-hints.c |
95 | @BUILD_EXAMPLES_TRUE@am_evas_aspect_hints_OBJECTS = \ | 96 | @BUILD_EXAMPLES_TRUE@am_evas_aspect_hints_OBJECTS = \ |
96 | @BUILD_EXAMPLES_TRUE@ evas-aspect-hints.$(OBJEXT) | 97 | @BUILD_EXAMPLES_TRUE@ evas-aspect-hints.$(OBJEXT) |
@@ -236,7 +237,6 @@ DATA = $(files_DATA) | |||
236 | ETAGS = etags | 237 | ETAGS = etags |
237 | CTAGS = ctags | 238 | CTAGS = ctags |
238 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | 239 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) |
239 | pkglibdir = $(datadir)/$(PACKAGE)/examples | ||
240 | ACLOCAL = @ACLOCAL@ | 240 | ACLOCAL = @ACLOCAL@ |
241 | ALLOCA = @ALLOCA@ | 241 | ALLOCA = @ALLOCA@ |
242 | AMTAR = @AMTAR@ | 242 | AMTAR = @AMTAR@ |
@@ -339,8 +339,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
339 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 339 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
340 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 340 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
341 | PKG_CONFIG = @PKG_CONFIG@ | 341 | PKG_CONFIG = @PKG_CONFIG@ |
342 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
343 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
344 | PNG_CFLAGS = @PNG_CFLAGS@ | 342 | PNG_CFLAGS = @PNG_CFLAGS@ |
345 | PNG_LIBS = @PNG_LIBS@ | 343 | PNG_LIBS = @PNG_LIBS@ |
346 | RANLIB = @RANLIB@ | 344 | RANLIB = @RANLIB@ |
@@ -357,6 +355,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
357 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 355 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
358 | VERSION = @VERSION@ | 356 | VERSION = @VERSION@ |
359 | VMAJ = @VMAJ@ | 357 | VMAJ = @VMAJ@ |
358 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
359 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
360 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 360 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
361 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 361 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
362 | XCB_CFLAGS = @XCB_CFLAGS@ | 362 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -438,6 +438,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
438 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 438 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
439 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 439 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
440 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 440 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
441 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
442 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
443 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
444 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
441 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 445 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
442 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 446 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
443 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 447 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
@@ -513,6 +517,7 @@ top_builddir = @top_builddir@ | |||
513 | top_srcdir = @top_srcdir@ | 517 | top_srcdir = @top_srcdir@ |
514 | version_info = @version_info@ | 518 | version_info = @version_info@ |
515 | MAINTAINERCLEANFILES = Makefile.in | 519 | MAINTAINERCLEANFILES = Makefile.in |
520 | examplesdir = $(datadir)/$(PACKAGE)/examples | ||
516 | 521 | ||
517 | #put here all EDCs one needs to the tests | 522 | #put here all EDCs one needs to the tests |
518 | EDCS = aspect.edc | 523 | EDCS = aspect.edc |
@@ -616,10 +621,10 @@ $(top_srcdir)/configure: $(am__configure_deps) | |||
616 | $(ACLOCAL_M4): $(am__aclocal_m4_deps) | 621 | $(ACLOCAL_M4): $(am__aclocal_m4_deps) |
617 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | 622 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh |
618 | $(am__aclocal_m4_deps): | 623 | $(am__aclocal_m4_deps): |
619 | install-pkglibPROGRAMS: $(pkglib_PROGRAMS) | 624 | install-examplesPROGRAMS: $(examples_PROGRAMS) |
620 | @$(NORMAL_INSTALL) | 625 | @$(NORMAL_INSTALL) |
621 | test -z "$(pkglibdir)" || $(MKDIR_P) "$(DESTDIR)$(pkglibdir)" | 626 | test -z "$(examplesdir)" || $(MKDIR_P) "$(DESTDIR)$(examplesdir)" |
622 | @list='$(pkglib_PROGRAMS)'; test -n "$(pkglibdir)" || list=; \ | 627 | @list='$(examples_PROGRAMS)'; test -n "$(examplesdir)" || list=; \ |
623 | for p in $$list; do echo "$$p $$p"; done | \ | 628 | for p in $$list; do echo "$$p $$p"; done | \ |
624 | sed 's/$(EXEEXT)$$//' | \ | 629 | sed 's/$(EXEEXT)$$//' | \ |
625 | while read p p1; do if test -f $$p || test -f $$p1; \ | 630 | while read p p1; do if test -f $$p || test -f $$p1; \ |
@@ -636,23 +641,23 @@ install-pkglibPROGRAMS: $(pkglib_PROGRAMS) | |||
636 | while read type dir files; do \ | 641 | while read type dir files; do \ |
637 | if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ | 642 | if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ |
638 | test -z "$$files" || { \ | 643 | test -z "$$files" || { \ |
639 | echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(pkglibdir)$$dir'"; \ | 644 | echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(examplesdir)$$dir'"; \ |
640 | $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(pkglibdir)$$dir" || exit $$?; \ | 645 | $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(examplesdir)$$dir" || exit $$?; \ |
641 | } \ | 646 | } \ |
642 | ; done | 647 | ; done |
643 | 648 | ||
644 | uninstall-pkglibPROGRAMS: | 649 | uninstall-examplesPROGRAMS: |
645 | @$(NORMAL_UNINSTALL) | 650 | @$(NORMAL_UNINSTALL) |
646 | @list='$(pkglib_PROGRAMS)'; test -n "$(pkglibdir)" || list=; \ | 651 | @list='$(examples_PROGRAMS)'; test -n "$(examplesdir)" || list=; \ |
647 | files=`for p in $$list; do echo "$$p"; done | \ | 652 | files=`for p in $$list; do echo "$$p"; done | \ |
648 | sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ | 653 | sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ |
649 | -e 's/$$/$(EXEEXT)/' `; \ | 654 | -e 's/$$/$(EXEEXT)/' `; \ |
650 | test -n "$$list" || exit 0; \ | 655 | test -n "$$list" || exit 0; \ |
651 | echo " ( cd '$(DESTDIR)$(pkglibdir)' && rm -f" $$files ")"; \ | 656 | echo " ( cd '$(DESTDIR)$(examplesdir)' && rm -f" $$files ")"; \ |
652 | cd "$(DESTDIR)$(pkglibdir)" && rm -f $$files | 657 | cd "$(DESTDIR)$(examplesdir)" && rm -f $$files |
653 | 658 | ||
654 | clean-pkglibPROGRAMS: | 659 | clean-examplesPROGRAMS: |
655 | @list='$(pkglib_PROGRAMS)'; test -n "$$list" || exit 0; \ | 660 | @list='$(examples_PROGRAMS)'; test -n "$$list" || exit 0; \ |
656 | echo " rm -f" $$list; \ | 661 | echo " rm -f" $$list; \ |
657 | rm -f $$list || exit $$?; \ | 662 | rm -f $$list || exit $$?; \ |
658 | test -n "$(EXEEXT)" || exit 0; \ | 663 | test -n "$(EXEEXT)" || exit 0; \ |
@@ -855,7 +860,7 @@ check-am: all-am | |||
855 | check: check-am | 860 | check: check-am |
856 | all-am: Makefile $(PROGRAMS) $(DATA) | 861 | all-am: Makefile $(PROGRAMS) $(DATA) |
857 | installdirs: | 862 | installdirs: |
858 | for dir in "$(DESTDIR)$(pkglibdir)" "$(DESTDIR)$(filesdir)"; do \ | 863 | for dir in "$(DESTDIR)$(examplesdir)" "$(DESTDIR)$(filesdir)"; do \ |
859 | test -z "$$dir" || $(MKDIR_P) "$$dir"; \ | 864 | test -z "$$dir" || $(MKDIR_P) "$$dir"; \ |
860 | done | 865 | done |
861 | install: install-am | 866 | install: install-am |
@@ -886,7 +891,7 @@ maintainer-clean-generic: | |||
886 | -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) | 891 | -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) |
887 | clean: clean-am | 892 | clean: clean-am |
888 | 893 | ||
889 | clean-am: clean-generic clean-libtool clean-pkglibPROGRAMS \ | 894 | clean-am: clean-examplesPROGRAMS clean-generic clean-libtool \ |
890 | mostlyclean-am | 895 | mostlyclean-am |
891 | 896 | ||
892 | distclean: distclean-am | 897 | distclean: distclean-am |
@@ -907,13 +912,13 @@ info: info-am | |||
907 | 912 | ||
908 | info-am: | 913 | info-am: |
909 | 914 | ||
910 | install-data-am: install-filesDATA | 915 | install-data-am: install-examplesPROGRAMS install-filesDATA |
911 | 916 | ||
912 | install-dvi: install-dvi-am | 917 | install-dvi: install-dvi-am |
913 | 918 | ||
914 | install-dvi-am: | 919 | install-dvi-am: |
915 | 920 | ||
916 | install-exec-am: install-pkglibPROGRAMS | 921 | install-exec-am: |
917 | 922 | ||
918 | install-html: install-html-am | 923 | install-html: install-html-am |
919 | 924 | ||
@@ -953,24 +958,25 @@ ps: ps-am | |||
953 | 958 | ||
954 | ps-am: | 959 | ps-am: |
955 | 960 | ||
956 | uninstall-am: uninstall-filesDATA uninstall-pkglibPROGRAMS | 961 | uninstall-am: uninstall-examplesPROGRAMS uninstall-filesDATA |
957 | 962 | ||
958 | .MAKE: install-am install-strip | 963 | .MAKE: install-am install-strip |
959 | 964 | ||
960 | .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ | 965 | .PHONY: CTAGS GTAGS all all-am check check-am clean \ |
961 | clean-libtool clean-pkglibPROGRAMS ctags distclean \ | 966 | clean-examplesPROGRAMS clean-generic clean-libtool ctags \ |
962 | distclean-compile distclean-generic distclean-libtool \ | 967 | distclean distclean-compile distclean-generic \ |
963 | distclean-tags distdir dvi dvi-am html html-am info info-am \ | 968 | distclean-libtool distclean-tags distdir dvi dvi-am html \ |
964 | install install-am install-data install-data-am install-dvi \ | 969 | html-am info info-am install install-am install-data \ |
965 | install-dvi-am install-exec install-exec-am install-filesDATA \ | 970 | install-data-am install-dvi install-dvi-am \ |
966 | install-html install-html-am install-info install-info-am \ | 971 | install-examplesPROGRAMS install-exec install-exec-am \ |
967 | install-man install-pdf install-pdf-am install-pkglibPROGRAMS \ | 972 | install-filesDATA install-html install-html-am install-info \ |
973 | install-info-am install-man install-pdf install-pdf-am \ | ||
968 | install-ps install-ps-am install-strip installcheck \ | 974 | install-ps install-ps-am install-strip installcheck \ |
969 | installcheck-am installdirs maintainer-clean \ | 975 | installcheck-am installdirs maintainer-clean \ |
970 | maintainer-clean-generic mostlyclean mostlyclean-compile \ | 976 | maintainer-clean-generic mostlyclean mostlyclean-compile \ |
971 | mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ | 977 | mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ |
972 | tags uninstall uninstall-am uninstall-filesDATA \ | 978 | tags uninstall uninstall-am uninstall-examplesPROGRAMS \ |
973 | uninstall-pkglibPROGRAMS | 979 | uninstall-filesDATA |
974 | 980 | ||
975 | 981 | ||
976 | @BUILD_EXAMPLES_TRUE@aspect.edj: ${evas_aspect_hints_DEPS} | 982 | @BUILD_EXAMPLES_TRUE@aspect.edj: ${evas_aspect_hints_DEPS} |
diff --git a/libraries/evas/src/lib/Evas.h b/libraries/evas/src/lib/Evas.h index 5898290..b85bbeb 100644 --- a/libraries/evas/src/lib/Evas.h +++ b/libraries/evas/src/lib/Evas.h | |||
@@ -5,6 +5,7 @@ | |||
5 | @date 2000-2011 | 5 | @date 2000-2011 |
6 | 6 | ||
7 | Please see the @ref authors page for contact details. | 7 | Please see the @ref authors page for contact details. |
8 | |||
8 | @link Evas.h Evas API @endlink | 9 | @link Evas.h Evas API @endlink |
9 | 10 | ||
10 | @section toc Table of Contents | 11 | @section toc Table of Contents |
@@ -342,7 +343,7 @@ extern "C" { | |||
342 | #endif | 343 | #endif |
343 | 344 | ||
344 | #define EVAS_VERSION_MAJOR 1 | 345 | #define EVAS_VERSION_MAJOR 1 |
345 | #define EVAS_VERSION_MINOR 0 | 346 | #define EVAS_VERSION_MINOR 2 |
346 | 347 | ||
347 | typedef struct _Evas_Version | 348 | typedef struct _Evas_Version |
348 | { | 349 | { |
@@ -432,6 +433,9 @@ typedef enum _Evas_Callback_Type | |||
432 | */ | 433 | */ |
433 | EVAS_CALLBACK_IMAGE_UNLOADED, /**< Image data has been unloaded (by some mechanims in Evas that throw out original image data) */ | 434 | EVAS_CALLBACK_IMAGE_UNLOADED, /**< Image data has been unloaded (by some mechanims in Evas that throw out original image data) */ |
434 | 435 | ||
436 | EVAS_CALLBACK_RENDER_PRE, /**< Called just before rendering starts on the canvas target @since 1.2 */ | ||
437 | EVAS_CALLBACK_RENDER_POST, /**< Called just after rendering stops on the canvas target @since 1.2 */ | ||
438 | |||
435 | EVAS_CALLBACK_LAST /**< kept as last element/sentinel -- not really an event */ | 439 | EVAS_CALLBACK_LAST /**< kept as last element/sentinel -- not really an event */ |
436 | } Evas_Callback_Type; /**< The types of events triggering a callback */ | 440 | } Evas_Callback_Type; /**< The types of events triggering a callback */ |
437 | 441 | ||
@@ -1061,7 +1065,8 @@ struct _Evas_Event_Hold /** Hold change event */ | |||
1061 | typedef enum _Evas_Object_Pointer_Mode | 1065 | typedef enum _Evas_Object_Pointer_Mode |
1062 | { | 1066 | { |
1063 | EVAS_OBJECT_POINTER_MODE_AUTOGRAB, /**< default, X11-like */ | 1067 | EVAS_OBJECT_POINTER_MODE_AUTOGRAB, /**< default, X11-like */ |
1064 | EVAS_OBJECT_POINTER_MODE_NOGRAB /**< pointer always bound to the object right below it */ | 1068 | EVAS_OBJECT_POINTER_MODE_NOGRAB, /**< pointer always bound to the object right below it */ |
1069 | EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN /**< useful on object with "repeat events" enabled, where mouse/touch up and down events WONT be repeated to objects and these objects wont be auto-grabbed. @since 1.2 */ | ||
1065 | } Evas_Object_Pointer_Mode; /**< How the mouse pointer should be handled by Evas. */ | 1070 | } Evas_Object_Pointer_Mode; /**< How the mouse pointer should be handled by Evas. */ |
1066 | 1071 | ||
1067 | typedef void (*Evas_Smart_Cb) (void *data, Evas_Object *obj, void *event_info); /**< Evas smart objects' "smart callback" function signature */ | 1072 | typedef void (*Evas_Smart_Cb) (void *data, Evas_Object *obj, void *event_info); /**< Evas smart objects' "smart callback" function signature */ |
@@ -1220,7 +1225,7 @@ EAPI Evas_Alloc_Error evas_alloc_error (void); | |||
1220 | * | 1225 | * |
1221 | * @ingroup Evas_Group | 1226 | * @ingroup Evas_Group |
1222 | */ | 1227 | */ |
1223 | EAPI int evas_async_events_fd_get (void) EINA_WARN_UNUSED_RESULT EINA_PURE; | 1228 | EAPI int evas_async_events_fd_get (void) EINA_WARN_UNUSED_RESULT; |
1224 | 1229 | ||
1225 | /** | 1230 | /** |
1226 | * @brief Trigger the processing of all events waiting on the file | 1231 | * @brief Trigger the processing of all events waiting on the file |
@@ -1339,7 +1344,7 @@ EAPI void evas_focus_out (Evas *e); | |||
1339 | * @param e The evas to query information. | 1344 | * @param e The evas to query information. |
1340 | * @ingroup Evas_Canvas | 1345 | * @ingroup Evas_Canvas |
1341 | */ | 1346 | */ |
1342 | EAPI Eina_Bool evas_focus_state_get (const Evas *e) EINA_PURE; | 1347 | EAPI Eina_Bool evas_focus_state_get (const Evas *e); |
1343 | 1348 | ||
1344 | /** | 1349 | /** |
1345 | * Push the nochange flag up 1 | 1350 | * Push the nochange flag up 1 |
@@ -1380,7 +1385,7 @@ EAPI void evas_data_attach_set (Evas *e, void *data) E | |||
1380 | * @return The pointer attached | 1385 | * @return The pointer attached |
1381 | * @ingroup Evas_Canvas | 1386 | * @ingroup Evas_Canvas |
1382 | */ | 1387 | */ |
1383 | EAPI void *evas_data_attach_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 1388 | EAPI void *evas_data_attach_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
1384 | 1389 | ||
1385 | 1390 | ||
1386 | /** | 1391 | /** |
@@ -1747,7 +1752,7 @@ EAPI void evas_output_method_set (Evas *e, int render_me | |||
1747 | * returned if there is an error. | 1752 | * returned if there is an error. |
1748 | * @ingroup Evas_Output_Method | 1753 | * @ingroup Evas_Output_Method |
1749 | */ | 1754 | */ |
1750 | EAPI int evas_output_method_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 1755 | EAPI int evas_output_method_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
1751 | 1756 | ||
1752 | 1757 | ||
1753 | /** | 1758 | /** |
@@ -1764,7 +1769,7 @@ EAPI int evas_output_method_get (const Evas *e) EINA_WA | |||
1764 | * an engine has not yet been assigned. | 1769 | * an engine has not yet been assigned. |
1765 | * @ingroup Evas_Output_Method | 1770 | * @ingroup Evas_Output_Method |
1766 | */ | 1771 | */ |
1767 | EAPI Evas_Engine_Info *evas_engine_info_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 1772 | EAPI Evas_Engine_Info *evas_engine_info_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
1768 | 1773 | ||
1769 | /** | 1774 | /** |
1770 | * Applies the engine settings for the given evas from the given @c | 1775 | * Applies the engine settings for the given evas from the given @c |
@@ -1876,6 +1881,38 @@ EAPI void evas_output_viewport_set (Evas *e, Evas_Coord x, | |||
1876 | EAPI void evas_output_viewport_get (const Evas *e, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h) EINA_ARG_NONNULL(1); | 1881 | EAPI void evas_output_viewport_get (const Evas *e, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h) EINA_ARG_NONNULL(1); |
1877 | 1882 | ||
1878 | /** | 1883 | /** |
1884 | * Sets the output framespace size of the render engine of the given evas. | ||
1885 | * | ||
1886 | * The framespace size is used in the Wayland engines to denote space where | ||
1887 | * the output is not drawn. This is mainly used in ecore_evas to draw borders | ||
1888 | * | ||
1889 | * The units used for @p w and @p h depend on the engine used by the | ||
1890 | * evas. | ||
1891 | * | ||
1892 | * @param e The given evas. | ||
1893 | * @param x The left coordinate in output units, usually pixels. | ||
1894 | * @param y The top coordinate in output units, usually pixels. | ||
1895 | * @param w The width in output units, usually pixels. | ||
1896 | * @param h The height in output units, usually pixels. | ||
1897 | * @ingroup Evas_Output_Size | ||
1898 | * @since 1.1.0 | ||
1899 | */ | ||
1900 | EAPI void evas_output_framespace_set (Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h); | ||
1901 | |||
1902 | /** | ||
1903 | * Get the render engine's output framespace co-ordinates in canvas units. | ||
1904 | * | ||
1905 | * @param e The pointer to the Evas Canvas | ||
1906 | * @param x The pointer to a x variable to be filled in | ||
1907 | * @param y The pointer to a y variable to be filled in | ||
1908 | * @param w The pointer to a width variable to be filled in | ||
1909 | * @param h The pointer to a height variable to be filled in | ||
1910 | * @ingroup Evas_Output_Size | ||
1911 | * @since 1.1.0 | ||
1912 | */ | ||
1913 | EAPI void evas_output_framespace_get (const Evas *e, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h); | ||
1914 | |||
1915 | /** | ||
1879 | * @defgroup Evas_Coord_Mapping_Group Coordinate Mapping Functions | 1916 | * @defgroup Evas_Coord_Mapping_Group Coordinate Mapping Functions |
1880 | * | 1917 | * |
1881 | * Functions that are used to map coordinates from the canvas to the | 1918 | * Functions that are used to map coordinates from the canvas to the |
@@ -2342,6 +2379,33 @@ EAPI void evas_post_event_callback_remove_full (Evas *e, Evas_Objec | |||
2342 | */ | 2379 | */ |
2343 | 2380 | ||
2344 | /** | 2381 | /** |
2382 | * Set the default set of flags an event begins with | ||
2383 | * | ||
2384 | * @param e The canvas to set the default event flags of | ||
2385 | * @param flags The default flags to use | ||
2386 | * | ||
2387 | * Events in evas can have an event_flags member. This starts out with | ||
2388 | * and initial value (no flags). this lets you set the default flags that | ||
2389 | * an event begins with to be @p flags | ||
2390 | * | ||
2391 | * @since 1.2 | ||
2392 | */ | ||
2393 | EAPI void evas_event_default_flags_set (Evas *e, Evas_Event_Flags flags) EINA_ARG_NONNULL(1); | ||
2394 | |||
2395 | /** | ||
2396 | * Get the defaulty set of flags an event begins with | ||
2397 | * | ||
2398 | * @param e The canvas to get the default event flags from | ||
2399 | * @return The default event flags for that canvas | ||
2400 | * | ||
2401 | * This gets the default event flags events are produced with when fed in. | ||
2402 | * | ||
2403 | * @see evas_event_default_flags_set() | ||
2404 | * @since 1.2 | ||
2405 | */ | ||
2406 | EAPI Evas_Event_Flags evas_event_default_flags_get (const Evas *e) EINA_ARG_NONNULL(1); | ||
2407 | |||
2408 | /** | ||
2345 | * Freeze all input events processing. | 2409 | * Freeze all input events processing. |
2346 | * | 2410 | * |
2347 | * @param e The canvas to freeze input events processing on. | 2411 | * @param e The canvas to freeze input events processing on. |
@@ -2407,7 +2471,7 @@ EAPI void evas_event_thaw (Evas *e) EINA_ARG_NONN | |||
2407 | * @endcode | 2471 | * @endcode |
2408 | * | 2472 | * |
2409 | */ | 2473 | */ |
2410 | EAPI int evas_event_freeze_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 2474 | EAPI int evas_event_freeze_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2411 | 2475 | ||
2412 | /** | 2476 | /** |
2413 | * After thaw of a canvas, re-evaluate the state of objects and call callbacks | 2477 | * After thaw of a canvas, re-evaluate the state of objects and call callbacks |
@@ -2448,6 +2512,16 @@ EAPI void evas_event_thaw_eval (Evas *e) EINA_ARG_NONN | |||
2448 | */ | 2512 | */ |
2449 | 2513 | ||
2450 | /** | 2514 | /** |
2515 | * Get the number of mouse or multi presses currently active | ||
2516 | * | ||
2517 | * @p e The given canvas pointer. | ||
2518 | * @return The numer of presses (0 if none active). | ||
2519 | * | ||
2520 | * @since 1.2 | ||
2521 | */ | ||
2522 | EAPI int evas_event_down_count_get (const Evas *e) EINA_ARG_NONNULL(1); | ||
2523 | |||
2524 | /** | ||
2451 | * Mouse down event feed. | 2525 | * Mouse down event feed. |
2452 | * | 2526 | * |
2453 | * @param e The given canvas pointer. | 2527 | * @param e The given canvas pointer. |
@@ -2679,7 +2753,7 @@ EAPI void evas_image_cache_set (Evas *e, int size) EIN | |||
2679 | * This function returns the image cache size of canvas in bytes. | 2753 | * This function returns the image cache size of canvas in bytes. |
2680 | * | 2754 | * |
2681 | */ | 2755 | */ |
2682 | EAPI int evas_image_cache_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 2756 | EAPI int evas_image_cache_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2683 | 2757 | ||
2684 | /** | 2758 | /** |
2685 | * Get the maximum image size evas can possibly handle | 2759 | * Get the maximum image size evas can possibly handle |
@@ -2728,7 +2802,7 @@ EAPI void evas_font_hinting_set (Evas *e, Evas_Font_H | |||
2728 | * #EVAS_FONT_HINTING_AUTO, #EVAS_FONT_HINTING_BYTECODE. | 2802 | * #EVAS_FONT_HINTING_AUTO, #EVAS_FONT_HINTING_BYTECODE. |
2729 | * @ingroup Evas_Font_Group | 2803 | * @ingroup Evas_Font_Group |
2730 | */ | 2804 | */ |
2731 | EAPI Evas_Font_Hinting_Flags evas_font_hinting_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 2805 | EAPI Evas_Font_Hinting_Flags evas_font_hinting_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2732 | 2806 | ||
2733 | /** | 2807 | /** |
2734 | * Checks if the font hinting is supported by the given evas. | 2808 | * Checks if the font hinting is supported by the given evas. |
@@ -2739,7 +2813,7 @@ EAPI Evas_Font_Hinting_Flags evas_font_hinting_get (const Evas *e) EINA_ | |||
2739 | * @return @c EINA_TRUE if it is supported, @c EINA_FALSE otherwise. | 2813 | * @return @c EINA_TRUE if it is supported, @c EINA_FALSE otherwise. |
2740 | * @ingroup Evas_Font_Group | 2814 | * @ingroup Evas_Font_Group |
2741 | */ | 2815 | */ |
2742 | EAPI Eina_Bool evas_font_hinting_can_hint (const Evas *e, Evas_Font_Hinting_Flags hinting) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 2816 | EAPI Eina_Bool evas_font_hinting_can_hint (const Evas *e, Evas_Font_Hinting_Flags hinting) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2743 | 2817 | ||
2744 | 2818 | ||
2745 | /** | 2819 | /** |
@@ -2768,7 +2842,7 @@ EAPI void evas_font_cache_set (Evas *e, int size) E | |||
2768 | * | 2842 | * |
2769 | * @ingroup Evas_Font_Group | 2843 | * @ingroup Evas_Font_Group |
2770 | */ | 2844 | */ |
2771 | EAPI int evas_font_cache_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 2845 | EAPI int evas_font_cache_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2772 | 2846 | ||
2773 | 2847 | ||
2774 | /** | 2848 | /** |
@@ -2785,7 +2859,7 @@ EAPI int evas_font_cache_get (const Evas *e) EINA_ | |||
2785 | * | 2859 | * |
2786 | * @ingroup Evas_Font_Group | 2860 | * @ingroup Evas_Font_Group |
2787 | */ | 2861 | */ |
2788 | EAPI Eina_List *evas_font_available_list (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 2862 | EAPI Eina_List *evas_font_available_list (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2789 | 2863 | ||
2790 | /** | 2864 | /** |
2791 | * Free list of font descriptions returned by evas_font_dir_available_list(). | 2865 | * Free list of font descriptions returned by evas_font_dir_available_list(). |
@@ -2834,7 +2908,7 @@ EAPI void evas_font_path_prepend (Evas *e, const char *p | |||
2834 | * @return The list of font paths used. | 2908 | * @return The list of font paths used. |
2835 | * @ingroup Evas_Font_Path_Group | 2909 | * @ingroup Evas_Font_Path_Group |
2836 | */ | 2910 | */ |
2837 | EAPI const Eina_List *evas_font_path_list (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 2911 | EAPI const Eina_List *evas_font_path_list (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2838 | 2912 | ||
2839 | /** | 2913 | /** |
2840 | * @defgroup Evas_Object_Group Generic Object Functions | 2914 | * @defgroup Evas_Object_Group Generic Object Functions |
@@ -2958,7 +3032,7 @@ EAPI void evas_object_clip_set (Evas_Object *obj, Evas | |||
2958 | * | 3032 | * |
2959 | * See the full @ref Example_Evas_Object_Manipulation "example". | 3033 | * See the full @ref Example_Evas_Object_Manipulation "example". |
2960 | */ | 3034 | */ |
2961 | EAPI Evas_Object *evas_object_clip_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3035 | EAPI Evas_Object *evas_object_clip_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
2962 | 3036 | ||
2963 | /** | 3037 | /** |
2964 | * Disable/cease clipping on a clipped @p obj object. | 3038 | * Disable/cease clipping on a clipped @p obj object. |
@@ -3015,7 +3089,7 @@ EAPI void evas_object_clip_unset (Evas_Object *obj); | |||
3015 | * } | 3089 | * } |
3016 | * @endcode | 3090 | * @endcode |
3017 | */ | 3091 | */ |
3018 | EAPI const Eina_List *evas_object_clipees_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3092 | EAPI const Eina_List *evas_object_clipees_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3019 | 3093 | ||
3020 | 3094 | ||
3021 | /** | 3095 | /** |
@@ -3068,7 +3142,7 @@ EAPI void evas_object_focus_set (Evas_Object *obj, Eina | |||
3068 | * @see evas_object_key_grab | 3142 | * @see evas_object_key_grab |
3069 | * @see evas_object_key_ungrab | 3143 | * @see evas_object_key_ungrab |
3070 | */ | 3144 | */ |
3071 | EAPI Eina_Bool evas_object_focus_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3145 | EAPI Eina_Bool evas_object_focus_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3072 | 3146 | ||
3073 | 3147 | ||
3074 | /** | 3148 | /** |
@@ -3104,7 +3178,7 @@ EAPI void evas_object_layer_set (Evas_Object *obj, shor | |||
3104 | * | 3178 | * |
3105 | * @see evas_object_layer_set() | 3179 | * @see evas_object_layer_set() |
3106 | */ | 3180 | */ |
3107 | EAPI short evas_object_layer_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3181 | EAPI short evas_object_layer_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3108 | 3182 | ||
3109 | 3183 | ||
3110 | /** | 3184 | /** |
@@ -3139,7 +3213,7 @@ EAPI void evas_object_name_set (Evas_Object *obj, cons | |||
3139 | * | 3213 | * |
3140 | * See the full @ref Example_Evas_Events "example". | 3214 | * See the full @ref Example_Evas_Events "example". |
3141 | */ | 3215 | */ |
3142 | EAPI const char *evas_object_name_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3216 | EAPI const char *evas_object_name_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3143 | 3217 | ||
3144 | 3218 | ||
3145 | /** | 3219 | /** |
@@ -3382,7 +3456,7 @@ EAPI void evas_object_hide (Evas_Object *obj) EINA | |||
3382 | * | 3456 | * |
3383 | * @ingroup Evas_Object_Group_Basic | 3457 | * @ingroup Evas_Object_Group_Basic |
3384 | */ | 3458 | */ |
3385 | EAPI Eina_Bool evas_object_visible_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3459 | EAPI Eina_Bool evas_object_visible_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3386 | 3460 | ||
3387 | 3461 | ||
3388 | /** | 3462 | /** |
@@ -3455,7 +3529,7 @@ EAPI void evas_object_color_get (const Evas_Object *obj | |||
3455 | * | 3529 | * |
3456 | * @ingroup Evas_Object_Group_Basic | 3530 | * @ingroup Evas_Object_Group_Basic |
3457 | */ | 3531 | */ |
3458 | EAPI Evas *evas_object_evas_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3532 | EAPI Evas *evas_object_evas_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3459 | 3533 | ||
3460 | /** | 3534 | /** |
3461 | * Retrieves the type of the given Evas object. | 3535 | * Retrieves the type of the given Evas object. |
@@ -3485,7 +3559,7 @@ EAPI Evas *evas_object_evas_get (const Evas_Object *obj | |||
3485 | * | 3559 | * |
3486 | * See the full @ref Example_Evas_Object_Manipulation "example". | 3560 | * See the full @ref Example_Evas_Object_Manipulation "example". |
3487 | */ | 3561 | */ |
3488 | EAPI const char *evas_object_type_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3562 | EAPI const char *evas_object_type_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3489 | 3563 | ||
3490 | /** | 3564 | /** |
3491 | * Raise @p obj to the top of its layer. | 3565 | * Raise @p obj to the top of its layer. |
@@ -3586,7 +3660,7 @@ EAPI void evas_object_stack_below (Evas_Object *obj, Evas | |||
3586 | * @see evas_object_below_get() | 3660 | * @see evas_object_below_get() |
3587 | * | 3661 | * |
3588 | */ | 3662 | */ |
3589 | EAPI Evas_Object *evas_object_above_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3663 | EAPI Evas_Object *evas_object_above_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3590 | 3664 | ||
3591 | /** | 3665 | /** |
3592 | * Get the Evas object stacked right below @p obj | 3666 | * Get the Evas object stacked right below @p obj |
@@ -3602,7 +3676,7 @@ EAPI Evas_Object *evas_object_above_get (const Evas_Object *obj | |||
3602 | * @see evas_object_layer_set() | 3676 | * @see evas_object_layer_set() |
3603 | * @see evas_object_below_get() | 3677 | * @see evas_object_below_get() |
3604 | */ | 3678 | */ |
3605 | EAPI Evas_Object *evas_object_below_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 3679 | EAPI Evas_Object *evas_object_below_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3606 | 3680 | ||
3607 | /** | 3681 | /** |
3608 | * @} | 3682 | * @} |
@@ -3946,7 +4020,7 @@ EAPI void evas_object_pass_events_set (Evas_Object *obj, Ein | |||
3946 | * @see evas_object_propagate_events_get() | 4020 | * @see evas_object_propagate_events_get() |
3947 | * @see evas_object_freeze_events_get() | 4021 | * @see evas_object_freeze_events_get() |
3948 | */ | 4022 | */ |
3949 | EAPI Eina_Bool evas_object_pass_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 4023 | EAPI Eina_Bool evas_object_pass_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3950 | 4024 | ||
3951 | /** | 4025 | /** |
3952 | * Set whether an Evas object is to repeat events. | 4026 | * Set whether an Evas object is to repeat events. |
@@ -3988,7 +4062,7 @@ EAPI void evas_object_repeat_events_set (Evas_Object *obj, Ein | |||
3988 | * @see evas_object_propagate_events_get() | 4062 | * @see evas_object_propagate_events_get() |
3989 | * @see evas_object_freeze_events_get() | 4063 | * @see evas_object_freeze_events_get() |
3990 | */ | 4064 | */ |
3991 | EAPI Eina_Bool evas_object_repeat_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 4065 | EAPI Eina_Bool evas_object_repeat_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
3992 | 4066 | ||
3993 | /** | 4067 | /** |
3994 | * Set whether events on a smart object's member should get propagated | 4068 | * Set whether events on a smart object's member should get propagated |
@@ -4026,7 +4100,7 @@ EAPI void evas_object_propagate_events_set (Evas_Object *obj, Ein | |||
4026 | * @see evas_object_pass_events_get() | 4100 | * @see evas_object_pass_events_get() |
4027 | * @see evas_object_freeze_events_get() | 4101 | * @see evas_object_freeze_events_get() |
4028 | */ | 4102 | */ |
4029 | EAPI Eina_Bool evas_object_propagate_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 4103 | EAPI Eina_Bool evas_object_propagate_events_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
4030 | 4104 | ||
4031 | /** | 4105 | /** |
4032 | * Set whether an Evas object is to freeze (discard) events. | 4106 | * Set whether an Evas object is to freeze (discard) events. |
@@ -4064,7 +4138,7 @@ EAPI void evas_object_freeze_events_set(Evas_Object *obj, Eina_Bool | |||
4064 | * @see evas_object_propagate_events_get() | 4138 | * @see evas_object_propagate_events_get() |
4065 | * @since 1.1.0 | 4139 | * @since 1.1.0 |
4066 | */ | 4140 | */ |
4067 | EAPI Eina_Bool evas_object_freeze_events_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 4141 | EAPI Eina_Bool evas_object_freeze_events_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
4068 | 4142 | ||
4069 | /** | 4143 | /** |
4070 | * @} | 4144 | * @} |
@@ -5028,7 +5102,7 @@ EAPI void evas_object_size_hint_min_get (const Evas_Object *obj | |||
5028 | * @skip evas_object_size_hint_min_set | 5102 | * @skip evas_object_size_hint_min_set |
5029 | * @until return | 5103 | * @until return |
5030 | * | 5104 | * |
5031 | * In this example the minimum size hints change de behavior of an | 5105 | * In this example the minimum size hints change the behavior of an |
5032 | * Evas box when layouting its children. See the full @ref | 5106 | * Evas box when layouting its children. See the full @ref |
5033 | * Example_Evas_Size_Hints "example". | 5107 | * Example_Evas_Size_Hints "example". |
5034 | * | 5108 | * |
@@ -5072,7 +5146,7 @@ EAPI void evas_object_size_hint_max_get (const Evas_Object *obj | |||
5072 | * @skip evas_object_size_hint_max_set | 5146 | * @skip evas_object_size_hint_max_set |
5073 | * @until return | 5147 | * @until return |
5074 | * | 5148 | * |
5075 | * In this example the maximum size hints change de behavior of an | 5149 | * In this example the maximum size hints change the behavior of an |
5076 | * Evas box when layouting its children. See the full @ref | 5150 | * Evas box when layouting its children. See the full @ref |
5077 | * Example_Evas_Size_Hints "example". | 5151 | * Example_Evas_Size_Hints "example". |
5078 | * | 5152 | * |
@@ -5247,7 +5321,7 @@ EAPI void evas_object_size_hint_align_get (const Evas_Object *obj | |||
5247 | * @skip evas_object_size_hint_align_set | 5321 | * @skip evas_object_size_hint_align_set |
5248 | * @until return | 5322 | * @until return |
5249 | * | 5323 | * |
5250 | * In this example the alignment hints change de behavior of an Evas | 5324 | * In this example the alignment hints change the behavior of an Evas |
5251 | * box when layouting its children. See the full @ref | 5325 | * box when layouting its children. See the full @ref |
5252 | * Example_Evas_Size_Hints "example". | 5326 | * Example_Evas_Size_Hints "example". |
5253 | * | 5327 | * |
@@ -5306,7 +5380,7 @@ EAPI void evas_object_size_hint_weight_get (const Evas_Object *obj | |||
5306 | * @skip evas_object_size_hint_weight_set | 5380 | * @skip evas_object_size_hint_weight_set |
5307 | * @until return | 5381 | * @until return |
5308 | * | 5382 | * |
5309 | * In this example the weight hints change de behavior of an Evas box | 5383 | * In this example the weight hints change the behavior of an Evas box |
5310 | * when layouting its children. See the full @ref | 5384 | * when layouting its children. See the full @ref |
5311 | * Example_Evas_Size_Hints "example". | 5385 | * Example_Evas_Size_Hints "example". |
5312 | * | 5386 | * |
@@ -5342,7 +5416,7 @@ EAPI void evas_object_size_hint_weight_set (Evas_Object *obj, doub | |||
5342 | * @skip evas_object_size_hint_padding_set | 5416 | * @skip evas_object_size_hint_padding_set |
5343 | * @until return | 5417 | * @until return |
5344 | * | 5418 | * |
5345 | * In this example the padding hints change de behavior of an Evas box | 5419 | * In this example the padding hints change the behavior of an Evas box |
5346 | * when layouting its children. See the full @ref | 5420 | * when layouting its children. See the full @ref |
5347 | * Example_Evas_Size_Hints "example". | 5421 | * Example_Evas_Size_Hints "example". |
5348 | * | 5422 | * |
@@ -5456,7 +5530,7 @@ EAPI void evas_object_data_set (Evas_Object *ob | |||
5456 | * else printf("No data was stored on the object\n"); | 5530 | * else printf("No data was stored on the object\n"); |
5457 | * @endcode | 5531 | * @endcode |
5458 | */ | 5532 | */ |
5459 | EAPI void *evas_object_data_get (const Evas_Object *obj, const char *key) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 5533 | EAPI void *evas_object_data_get (const Evas_Object *obj, const char *key) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
5460 | 5534 | ||
5461 | /** | 5535 | /** |
5462 | * Delete an attached data pointer from an object. | 5536 | * Delete an attached data pointer from an object. |
@@ -5510,7 +5584,7 @@ EAPI void evas_object_pointer_mode_set (Evas_Object *ob | |||
5510 | * @return pointer behavior. | 5584 | * @return pointer behavior. |
5511 | * @ingroup Evas_Object_Group_Extras | 5585 | * @ingroup Evas_Object_Group_Extras |
5512 | */ | 5586 | */ |
5513 | EAPI Evas_Object_Pointer_Mode evas_object_pointer_mode_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5587 | EAPI Evas_Object_Pointer_Mode evas_object_pointer_mode_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5514 | 5588 | ||
5515 | 5589 | ||
5516 | /** | 5590 | /** |
@@ -5528,7 +5602,7 @@ EAPI void evas_object_anti_alias_set (Evas_Object *ob | |||
5528 | * @return @c 1 if the object is to be anti_aliased. @c 0 otherwise. | 5602 | * @return @c 1 if the object is to be anti_aliased. @c 0 otherwise. |
5529 | * @ingroup Evas_Object_Group_Extras | 5603 | * @ingroup Evas_Object_Group_Extras |
5530 | */ | 5604 | */ |
5531 | EAPI Eina_Bool evas_object_anti_alias_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5605 | EAPI Eina_Bool evas_object_anti_alias_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5532 | 5606 | ||
5533 | 5607 | ||
5534 | /** | 5608 | /** |
@@ -5562,7 +5636,7 @@ EAPI void evas_object_scale_set (Evas_Object *ob | |||
5562 | * | 5636 | * |
5563 | * @see evas_object_scale_set() | 5637 | * @see evas_object_scale_set() |
5564 | */ | 5638 | */ |
5565 | EAPI double evas_object_scale_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5639 | EAPI double evas_object_scale_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5566 | 5640 | ||
5567 | 5641 | ||
5568 | /** | 5642 | /** |
@@ -5579,7 +5653,7 @@ EAPI void evas_object_render_op_set (Evas_Object *ob | |||
5579 | * @return one of the enumerated values in Evas_Render_Op. | 5653 | * @return one of the enumerated values in Evas_Render_Op. |
5580 | * @ingroup Evas_Object_Group_Extras | 5654 | * @ingroup Evas_Object_Group_Extras |
5581 | */ | 5655 | */ |
5582 | EAPI Evas_Render_Op evas_object_render_op_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5656 | EAPI Evas_Render_Op evas_object_render_op_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5583 | 5657 | ||
5584 | /** | 5658 | /** |
5585 | * Set whether to use precise (usually expensive) point collision | 5659 | * Set whether to use precise (usually expensive) point collision |
@@ -5621,7 +5695,7 @@ EAPI Evas_Render_Op evas_object_render_op_get (const Evas_Obje | |||
5621 | * | 5695 | * |
5622 | * @ingroup Evas_Object_Group_Extras | 5696 | * @ingroup Evas_Object_Group_Extras |
5623 | */ | 5697 | */ |
5624 | EAPI Eina_Bool evas_object_precise_is_inside_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5698 | EAPI Eina_Bool evas_object_precise_is_inside_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5625 | 5699 | ||
5626 | /** | 5700 | /** |
5627 | * Set a hint flag on the given Evas object that it's used as a "static | 5701 | * Set a hint flag on the given Evas object that it's used as a "static |
@@ -5653,7 +5727,7 @@ EAPI Evas_Render_Op evas_object_render_op_get (const Evas_Obje | |||
5653 | * | 5727 | * |
5654 | * @ingroup Evas_Object_Group_Extras | 5728 | * @ingroup Evas_Object_Group_Extras |
5655 | */ | 5729 | */ |
5656 | EAPI Eina_Bool evas_object_static_clip_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5730 | EAPI Eina_Bool evas_object_static_clip_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5657 | 5731 | ||
5658 | /** | 5732 | /** |
5659 | * @} | 5733 | * @} |
@@ -5710,7 +5784,7 @@ EAPI Evas_Render_Op evas_object_render_op_get (const Evas_Obje | |||
5710 | * | 5784 | * |
5711 | * @ingroup Evas_Object_Group_Find | 5785 | * @ingroup Evas_Object_Group_Find |
5712 | */ | 5786 | */ |
5713 | EAPI Evas_Object *evas_focus_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5787 | EAPI Evas_Object *evas_focus_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5714 | 5788 | ||
5715 | /** | 5789 | /** |
5716 | * Retrieves the object on the given evas with the given name. | 5790 | * Retrieves the object on the given evas with the given name. |
@@ -5718,9 +5792,36 @@ EAPI Evas_Object *evas_focus_get (const Evas *e) EINA_WA | |||
5718 | * @param name The given name. | 5792 | * @param name The given name. |
5719 | * @return If successful, the Evas object with the given name. Otherwise, | 5793 | * @return If successful, the Evas object with the given name. Otherwise, |
5720 | * @c NULL. | 5794 | * @c NULL. |
5795 | * | ||
5796 | * This looks for the evas object given a name by evas_object_name_set(). If | ||
5797 | * the name is not unique canvas-wide, then which one of the many objects | ||
5798 | * with that name is returned is undefined, so only use this if you can ensure | ||
5799 | * the object name is unique. | ||
5800 | * | ||
5801 | * @ingroup Evas_Object_Group_Find | ||
5802 | */ | ||
5803 | EAPI Evas_Object *evas_object_name_find (const Evas *e, const char *name) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); | ||
5804 | |||
5805 | /** | ||
5806 | * Retrieves the object from children of the given object with the given name. | ||
5807 | * @param obj The parent (smart) object whose children to search. | ||
5808 | * @param name The given name. | ||
5809 | * @param recurse Set to the number of child levels to recurse (0 == don't recurse, 1 == only look at the children of @p obj or their immediate children, but no further etc.). | ||
5810 | * @return If successful, the Evas object with the given name. Otherwise, | ||
5811 | * @c NULL. | ||
5812 | * | ||
5813 | * This looks for the evas object given a name by evas_object_name_set(), but | ||
5814 | * it ONLY looks at the children of the object *p obj, and will only recurse | ||
5815 | * into those children if @p recurse is greater than 0. If the name is not | ||
5816 | * unique within immediate children (or the whole child tree) then it is not | ||
5817 | * defined which child object will be returned. If @p recurse is set to -1 then | ||
5818 | * it will recurse without limit. | ||
5819 | * | ||
5820 | * @since 1.2 | ||
5821 | * | ||
5721 | * @ingroup Evas_Object_Group_Find | 5822 | * @ingroup Evas_Object_Group_Find |
5722 | */ | 5823 | */ |
5723 | EAPI Evas_Object *evas_object_name_find (const Evas *e, const char *name) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5824 | EAPI Evas_Object *evas_object_name_child_find (const Evas_Object *obj, const char *name, int recurse) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5724 | 5825 | ||
5725 | /** | 5826 | /** |
5726 | * Retrieve the Evas object stacked at the top of a given position in | 5827 | * Retrieve the Evas object stacked at the top of a given position in |
@@ -5745,7 +5846,7 @@ EAPI Evas_Object *evas_object_name_find (const Evas *e, const c | |||
5745 | * objects, acting only on the ones at the "top level", with regard to | 5846 | * objects, acting only on the ones at the "top level", with regard to |
5746 | * object parenting. | 5847 | * object parenting. |
5747 | */ | 5848 | */ |
5748 | EAPI Evas_Object *evas_object_top_at_xy_get (const Evas *e, Evas_Coord x, Evas_Coord y, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5849 | EAPI Evas_Object *evas_object_top_at_xy_get (const Evas *e, Evas_Coord x, Evas_Coord y, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5749 | 5850 | ||
5750 | /** | 5851 | /** |
5751 | * Retrieve the Evas object stacked at the top at the position of the | 5852 | * Retrieve the Evas object stacked at the top at the position of the |
@@ -5763,7 +5864,7 @@ EAPI Evas_Object *evas_object_top_at_xy_get (const Evas *e, Evas_Co | |||
5763 | * objects, acting only on the ones at the "top level", with regard to | 5864 | * objects, acting only on the ones at the "top level", with regard to |
5764 | * object parenting. | 5865 | * object parenting. |
5765 | */ | 5866 | */ |
5766 | EAPI Evas_Object *evas_object_top_at_pointer_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5867 | EAPI Evas_Object *evas_object_top_at_pointer_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5767 | 5868 | ||
5768 | /** | 5869 | /** |
5769 | * Retrieve the Evas object stacked at the top of a given rectangular | 5870 | * Retrieve the Evas object stacked at the top of a given rectangular |
@@ -5793,7 +5894,7 @@ EAPI Evas_Object *evas_object_top_at_pointer_get (const Evas *e) EINA_WA | |||
5793 | * objects, acting only on the ones at the "top level", with regard to | 5894 | * objects, acting only on the ones at the "top level", with regard to |
5794 | * object parenting. | 5895 | * object parenting. |
5795 | */ | 5896 | */ |
5796 | EAPI Evas_Object *evas_object_top_in_rectangle_get (const Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5897 | EAPI Evas_Object *evas_object_top_in_rectangle_get (const Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5797 | 5898 | ||
5798 | /** | 5899 | /** |
5799 | * Retrieve a list of Evas objects lying over a given position in | 5900 | * Retrieve a list of Evas objects lying over a given position in |
@@ -5818,8 +5919,8 @@ EAPI Evas_Object *evas_object_top_in_rectangle_get (const Evas *e, Evas_Co | |||
5818 | * objects, acting only on the ones at the "top level", with regard to | 5919 | * objects, acting only on the ones at the "top level", with regard to |
5819 | * object parenting. | 5920 | * object parenting. |
5820 | */ | 5921 | */ |
5821 | EAPI Eina_List *evas_objects_at_xy_get (const Evas *e, Evas_Coord x, Evas_Coord y, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5922 | EAPI Eina_List *evas_objects_at_xy_get (const Evas *e, Evas_Coord x, Evas_Coord y, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5822 | EAPI Eina_List *evas_objects_in_rectangle_get (const Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5923 | EAPI Eina_List *evas_objects_in_rectangle_get (const Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h, Eina_Bool include_pass_events_objects, Eina_Bool include_hidden_objects) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5823 | 5924 | ||
5824 | /** | 5925 | /** |
5825 | * Get the lowest (stacked) Evas object on the canvas @p | 5926 | * Get the lowest (stacked) Evas object on the canvas @p |
@@ -5840,7 +5941,7 @@ EAPI Eina_List *evas_objects_at_xy_get (const Evas *e, Evas_Co | |||
5840 | * objects, acting only on the ones at the "top level", with regard to | 5941 | * objects, acting only on the ones at the "top level", with regard to |
5841 | * object parenting. | 5942 | * object parenting. |
5842 | */ | 5943 | */ |
5843 | EAPI Evas_Object *evas_object_bottom_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5944 | EAPI Evas_Object *evas_object_bottom_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5844 | 5945 | ||
5845 | /** | 5946 | /** |
5846 | * Get the highest (stacked) Evas object on the canvas @p | 5947 | * Get the highest (stacked) Evas object on the canvas @p |
@@ -5862,7 +5963,7 @@ EAPI Evas_Object *evas_object_bottom_get (const Evas *e) EINA_WA | |||
5862 | * objects, acting only on the ones at the "top level", with regard to | 5963 | * objects, acting only on the ones at the "top level", with regard to |
5863 | * object parenting. | 5964 | * object parenting. |
5864 | */ | 5965 | */ |
5865 | EAPI Evas_Object *evas_object_top_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 5966 | EAPI Evas_Object *evas_object_top_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
5866 | 5967 | ||
5867 | /** | 5968 | /** |
5868 | * @} | 5969 | * @} |
@@ -6502,7 +6603,7 @@ EAPI void evas_object_image_border_center_fill_set (Evas_Obj | |||
6502 | * | 6603 | * |
6503 | * See @ref evas_object_image_fill_set() for more details. | 6604 | * See @ref evas_object_image_fill_set() for more details. |
6504 | */ | 6605 | */ |
6505 | EAPI Evas_Border_Fill_Mode evas_object_image_border_center_fill_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6606 | EAPI Evas_Border_Fill_Mode evas_object_image_border_center_fill_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6506 | 6607 | ||
6507 | /** | 6608 | /** |
6508 | * Set whether the image object's fill property should track the | 6609 | * Set whether the image object's fill property should track the |
@@ -6532,7 +6633,7 @@ EAPI void evas_object_image_filled_set (Evas_Obj | |||
6532 | * | 6633 | * |
6533 | * @see evas_object_image_filled_set() for more information | 6634 | * @see evas_object_image_filled_set() for more information |
6534 | */ | 6635 | */ |
6535 | EAPI Eina_Bool evas_object_image_filled_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6636 | EAPI Eina_Bool evas_object_image_filled_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6536 | 6637 | ||
6537 | /** | 6638 | /** |
6538 | * Sets the scaling factor (multiplier) for the borders of an image | 6639 | * Sets the scaling factor (multiplier) for the borders of an image |
@@ -6633,7 +6734,7 @@ EAPI void evas_object_image_fill_spread_set (Evas_Obj | |||
6633 | * @param obj The given evas image object. | 6734 | * @param obj The given evas image object. |
6634 | * @return The current spread mode of the image object. | 6735 | * @return The current spread mode of the image object. |
6635 | */ | 6736 | */ |
6636 | EAPI Evas_Fill_Spread evas_object_image_fill_spread_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6737 | EAPI Evas_Fill_Spread evas_object_image_fill_spread_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6637 | 6738 | ||
6638 | /** | 6739 | /** |
6639 | * Sets the size of the given image object. | 6740 | * Sets the size of the given image object. |
@@ -6670,7 +6771,7 @@ EAPI void evas_object_image_size_get (const Ev | |||
6670 | * The row stride is the number of bytes between the start of a row | 6771 | * The row stride is the number of bytes between the start of a row |
6671 | * and the start of the next row for image data. | 6772 | * and the start of the next row for image data. |
6672 | */ | 6773 | */ |
6673 | EAPI int evas_object_image_stride_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6774 | EAPI int evas_object_image_stride_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6674 | 6775 | ||
6675 | /** | 6776 | /** |
6676 | * Retrieves a number representing any error that occurred during the | 6777 | * Retrieves a number representing any error that occurred during the |
@@ -6681,7 +6782,7 @@ EAPI int evas_object_image_stride_get (const Ev | |||
6681 | * one of the #Evas_Load_Error values. #EVAS_LOAD_ERROR_NONE | 6782 | * one of the #Evas_Load_Error values. #EVAS_LOAD_ERROR_NONE |
6682 | * is returned if there was no error. | 6783 | * is returned if there was no error. |
6683 | */ | 6784 | */ |
6684 | EAPI Evas_Load_Error evas_object_image_load_error_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6785 | EAPI Evas_Load_Error evas_object_image_load_error_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6685 | 6786 | ||
6686 | /** | 6787 | /** |
6687 | * Sets the raw image data of the given image object. | 6788 | * Sets the raw image data of the given image object. |
@@ -6730,7 +6831,7 @@ EAPI void evas_object_image_data_set (Evas_Obj | |||
6730 | * | 6831 | * |
6731 | * @see evas_object_image_data_set() | 6832 | * @see evas_object_image_data_set() |
6732 | */ | 6833 | */ |
6733 | EAPI void *evas_object_image_data_get (const Evas_Object *obj, Eina_Bool for_writing) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6834 | EAPI void *evas_object_image_data_get (const Evas_Object *obj, Eina_Bool for_writing) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6734 | 6835 | ||
6735 | /** | 6836 | /** |
6736 | * Converts the raw image data of the given image object to the | 6837 | * Converts the raw image data of the given image object to the |
@@ -6748,7 +6849,7 @@ EAPI void *evas_object_image_data_get (const Ev | |||
6748 | * @param to_cspace The colorspace to which the image raw data will be converted. | 6849 | * @param to_cspace The colorspace to which the image raw data will be converted. |
6749 | * @return data A newly allocated data in the format specified by to_cspace. | 6850 | * @return data A newly allocated data in the format specified by to_cspace. |
6750 | */ | 6851 | */ |
6751 | EAPI void *evas_object_image_data_convert (Evas_Object *obj, Evas_Colorspace to_cspace) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6852 | EAPI void *evas_object_image_data_convert (Evas_Object *obj, Evas_Colorspace to_cspace) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6752 | 6853 | ||
6753 | /** | 6854 | /** |
6754 | * Replaces the raw image data of the given image object. | 6855 | * Replaces the raw image data of the given image object. |
@@ -6819,7 +6920,7 @@ EAPI void evas_object_image_alpha_set (Evas_Obj | |||
6819 | * | 6920 | * |
6820 | * See @ref evas_object_image_alpha_set() for more details. | 6921 | * See @ref evas_object_image_alpha_set() for more details. |
6821 | */ | 6922 | */ |
6822 | EAPI Eina_Bool evas_object_image_alpha_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6923 | EAPI Eina_Bool evas_object_image_alpha_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6823 | 6924 | ||
6824 | /** | 6925 | /** |
6825 | * Sets whether to use high-quality image scaling algorithm on the | 6926 | * Sets whether to use high-quality image scaling algorithm on the |
@@ -6849,7 +6950,7 @@ EAPI void evas_object_image_smooth_scale_set (Evas_Obj | |||
6849 | * | 6950 | * |
6850 | * See @ref evas_object_image_smooth_scale_set() for more details. | 6951 | * See @ref evas_object_image_smooth_scale_set() for more details. |
6851 | */ | 6952 | */ |
6852 | EAPI Eina_Bool evas_object_image_smooth_scale_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 6953 | EAPI Eina_Bool evas_object_image_smooth_scale_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6853 | 6954 | ||
6854 | /** | 6955 | /** |
6855 | * Preload an image object's image data in the background | 6956 | * Preload an image object's image data in the background |
@@ -6947,7 +7048,7 @@ EAPI void evas_object_image_pixels_dirty_set (Evas_Obj | |||
6947 | * @param obj The given image object. | 7048 | * @param obj The given image object. |
6948 | * @return Whether the image is dirty. | 7049 | * @return Whether the image is dirty. |
6949 | */ | 7050 | */ |
6950 | EAPI Eina_Bool evas_object_image_pixels_dirty_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7051 | EAPI Eina_Bool evas_object_image_pixels_dirty_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6951 | 7052 | ||
6952 | /** | 7053 | /** |
6953 | * Set the DPI resolution of an image object's source image. | 7054 | * Set the DPI resolution of an image object's source image. |
@@ -6972,7 +7073,7 @@ EAPI void evas_object_image_load_dpi_set (Evas_Obj | |||
6972 | * | 7073 | * |
6973 | * @see evas_object_image_load_dpi_set() for more details | 7074 | * @see evas_object_image_load_dpi_set() for more details |
6974 | */ | 7075 | */ |
6975 | EAPI double evas_object_image_load_dpi_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7076 | EAPI double evas_object_image_load_dpi_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
6976 | 7077 | ||
6977 | /** | 7078 | /** |
6978 | * Set the size of a given image object's source image, when loading | 7079 | * Set the size of a given image object's source image, when loading |
@@ -7026,7 +7127,7 @@ EAPI void evas_object_image_load_scale_down_set (Evas_Obj | |||
7026 | * | 7127 | * |
7027 | * @see evas_object_image_load_scale_down_set() for more details | 7128 | * @see evas_object_image_load_scale_down_set() for more details |
7028 | */ | 7129 | */ |
7029 | EAPI int evas_object_image_load_scale_down_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7130 | EAPI int evas_object_image_load_scale_down_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7030 | 7131 | ||
7031 | /** | 7132 | /** |
7032 | * Inform a given image object to load a selective region of its | 7133 | * Inform a given image object to load a selective region of its |
@@ -7103,7 +7204,18 @@ EAPI void evas_object_image_colorspace_set (Evas_Obj | |||
7103 | * This function returns the colorspace of given canvas image. | 7204 | * This function returns the colorspace of given canvas image. |
7104 | * | 7205 | * |
7105 | */ | 7206 | */ |
7106 | EAPI Evas_Colorspace evas_object_image_colorspace_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7207 | EAPI Evas_Colorspace evas_object_image_colorspace_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7208 | |||
7209 | /** | ||
7210 | * Get the support state of a given image | ||
7211 | * | ||
7212 | * @param obj The given image object pointer | ||
7213 | * @return The region support state | ||
7214 | * @since 1.2.0 | ||
7215 | * | ||
7216 | * This function returns the state of the region support of given image | ||
7217 | */ | ||
7218 | EAPI Eina_Bool evas_object_image_region_support_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); | ||
7107 | 7219 | ||
7108 | /** | 7220 | /** |
7109 | * Set the native surface of a given image of the canvas | 7221 | * Set the native surface of a given image of the canvas |
@@ -7125,7 +7237,7 @@ EAPI void evas_object_image_native_surface_set (Evas_Obj | |||
7125 | * This function returns the native surface of a given canvas image. | 7237 | * This function returns the native surface of a given canvas image. |
7126 | * | 7238 | * |
7127 | */ | 7239 | */ |
7128 | EAPI Evas_Native_Surface *evas_object_image_native_surface_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7240 | EAPI Evas_Native_Surface *evas_object_image_native_surface_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7129 | 7241 | ||
7130 | /** | 7242 | /** |
7131 | * Set the video surface linked to a given image of the canvas | 7243 | * Set the video surface linked to a given image of the canvas |
@@ -7149,7 +7261,7 @@ EAPI void evas_object_image_video_surface_set (Evas_Obj | |||
7149 | * This function returns the video surface linked to a given canvas image. | 7261 | * This function returns the video surface linked to a given canvas image. |
7150 | * | 7262 | * |
7151 | */ | 7263 | */ |
7152 | EAPI const Evas_Video_Surface *evas_object_image_video_surface_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7264 | EAPI const Evas_Video_Surface *evas_object_image_video_surface_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7153 | 7265 | ||
7154 | /** | 7266 | /** |
7155 | * Set the scale hint of a given image of the canvas. | 7267 | * Set the scale hint of a given image of the canvas. |
@@ -7178,7 +7290,7 @@ EAPI void evas_object_image_scale_hint_set (Evas_Obj | |||
7178 | * | 7290 | * |
7179 | * @see evas_object_image_scale_hint_set() for more details. | 7291 | * @see evas_object_image_scale_hint_set() for more details. |
7180 | */ | 7292 | */ |
7181 | EAPI Evas_Image_Scale_Hint evas_object_image_scale_hint_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7293 | EAPI Evas_Image_Scale_Hint evas_object_image_scale_hint_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7182 | 7294 | ||
7183 | /** | 7295 | /** |
7184 | * Set the content hint setting of a given image object of the canvas. | 7296 | * Set the content hint setting of a given image object of the canvas. |
@@ -7210,7 +7322,7 @@ EAPI void evas_object_image_content_hint_set (Evas_Obj | |||
7210 | * | 7322 | * |
7211 | * @see evas_object_image_content_hint_set() | 7323 | * @see evas_object_image_content_hint_set() |
7212 | */ | 7324 | */ |
7213 | EAPI Evas_Image_Content_Hint evas_object_image_content_hint_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7325 | EAPI Evas_Image_Content_Hint evas_object_image_content_hint_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7214 | 7326 | ||
7215 | 7327 | ||
7216 | /** | 7328 | /** |
@@ -7563,7 +7675,7 @@ EAPI void evas_object_text_font_source_set (Evas_Object *obj, cons | |||
7563 | * | 7675 | * |
7564 | * @see evas_object_text_font_get() for more details | 7676 | * @see evas_object_text_font_get() for more details |
7565 | */ | 7677 | */ |
7566 | EAPI const char *evas_object_text_font_source_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7678 | EAPI const char *evas_object_text_font_source_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7567 | 7679 | ||
7568 | /** | 7680 | /** |
7569 | * Set the font family and size on a given text object. | 7681 | * Set the font family and size on a given text object. |
@@ -7620,7 +7732,7 @@ EAPI void evas_object_text_text_set (Evas_Object *obj, cons | |||
7620 | * | 7732 | * |
7621 | * @see evas_object_text_text_set() | 7733 | * @see evas_object_text_text_set() |
7622 | */ | 7734 | */ |
7623 | EAPI const char *evas_object_text_text_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7735 | EAPI const char *evas_object_text_text_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7624 | 7736 | ||
7625 | /** | 7737 | /** |
7626 | * @brief Sets the BiDi delimiters used in the textblock. | 7738 | * @brief Sets the BiDi delimiters used in the textblock. |
@@ -7648,13 +7760,13 @@ EAPI void evas_object_text_bidi_delimiters_set(Evas_Object *obj, co | |||
7648 | */ | 7760 | */ |
7649 | EAPI const char *evas_object_text_bidi_delimiters_get(const Evas_Object *obj); | 7761 | EAPI const char *evas_object_text_bidi_delimiters_get(const Evas_Object *obj); |
7650 | 7762 | ||
7651 | EAPI Evas_Coord evas_object_text_ascent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7763 | EAPI Evas_Coord evas_object_text_ascent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7652 | EAPI Evas_Coord evas_object_text_descent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7764 | EAPI Evas_Coord evas_object_text_descent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7653 | EAPI Evas_Coord evas_object_text_max_ascent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7765 | EAPI Evas_Coord evas_object_text_max_ascent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7654 | EAPI Evas_Coord evas_object_text_max_descent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7766 | EAPI Evas_Coord evas_object_text_max_descent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7655 | EAPI Evas_Coord evas_object_text_horiz_advance_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7767 | EAPI Evas_Coord evas_object_text_horiz_advance_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7656 | EAPI Evas_Coord evas_object_text_vert_advance_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7768 | EAPI Evas_Coord evas_object_text_vert_advance_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7657 | EAPI Evas_Coord evas_object_text_inset_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7769 | EAPI Evas_Coord evas_object_text_inset_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7658 | 7770 | ||
7659 | /** | 7771 | /** |
7660 | * Retrieve position and dimension information of a character within a text @c Evas_Object. | 7772 | * Retrieve position and dimension information of a character within a text @c Evas_Object. |
@@ -7692,7 +7804,7 @@ EAPI int evas_object_text_last_up_to_pos (const Evas_Object *obj | |||
7692 | * | 7804 | * |
7693 | * @see evas_object_text_style_set() for more details. | 7805 | * @see evas_object_text_style_set() for more details. |
7694 | */ | 7806 | */ |
7695 | EAPI Evas_Text_Style_Type evas_object_text_style_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 7807 | EAPI Evas_Text_Style_Type evas_object_text_style_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
7696 | 7808 | ||
7697 | /** | 7809 | /** |
7698 | * Sets the style to apply on the given text object. | 7810 | * Sets the style to apply on the given text object. |
@@ -7742,7 +7854,7 @@ EAPI void evas_object_text_style_set (Evas_Object *obj, Evas | |||
7742 | * - #EVAS_TEXT_STYLE_SOFT_SHADOW | 7854 | * - #EVAS_TEXT_STYLE_SOFT_SHADOW |
7743 | * - #EVAS_TEXT_STYLE_FAR_SOFT_SHADOW | 7855 | * - #EVAS_TEXT_STYLE_FAR_SOFT_SHADOW |
7744 | * | 7856 | * |
7745 | * One can also change de direction the shadow grows to, with | 7857 | * One can also change the direction where the shadow grows to, with |
7746 | * evas_object_text_style_set(). | 7858 | * evas_object_text_style_set(). |
7747 | * | 7859 | * |
7748 | * @see evas_object_text_shadow_color_get() | 7860 | * @see evas_object_text_shadow_color_get() |
@@ -8081,7 +8193,7 @@ EAPI Evas_Object *evas_object_textblock_add(Evas *e) EINA_WARN_U | |||
8081 | * @param escape the string to be escaped | 8193 | * @param escape the string to be escaped |
8082 | * @return the unescaped version of escape | 8194 | * @return the unescaped version of escape |
8083 | */ | 8195 | */ |
8084 | EAPI const char *evas_textblock_escape_string_get(const char *escape) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8196 | EAPI const char *evas_textblock_escape_string_get(const char *escape) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8085 | 8197 | ||
8086 | /** | 8198 | /** |
8087 | * Returns the escaped version of the string. | 8199 | * Returns the escaped version of the string. |
@@ -8089,7 +8201,7 @@ EAPI const char *evas_textblock_escape_string_get(const char *e | |||
8089 | * @param len_ret the len of the part of the string that was used. | 8201 | * @param len_ret the len of the part of the string that was used. |
8090 | * @return the escaped string. | 8202 | * @return the escaped string. |
8091 | */ | 8203 | */ |
8092 | EAPI const char *evas_textblock_string_escape_get(const char *string, int *len_ret) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8204 | EAPI const char *evas_textblock_string_escape_get(const char *string, int *len_ret) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8093 | 8205 | ||
8094 | /** | 8206 | /** |
8095 | * Return the unescaped version of the string between start and end. | 8207 | * Return the unescaped version of the string between start and end. |
@@ -8098,8 +8210,35 @@ EAPI const char *evas_textblock_string_escape_get(const char *s | |||
8098 | * @param escape_end the end of the string. | 8210 | * @param escape_end the end of the string. |
8099 | * @return the unescaped version of the range | 8211 | * @return the unescaped version of the range |
8100 | */ | 8212 | */ |
8101 | EAPI const char *evas_textblock_escape_string_range_get(const char *escape_start, const char *escape_end) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 8213 | EAPI const char *evas_textblock_escape_string_range_get(const char *escape_start, const char *escape_end) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
8102 | 8214 | ||
8215 | /** | ||
8216 | * Return the plain version of the markup. | ||
8217 | * | ||
8218 | * Works as if you set the markup to a textblock and then retrieve the plain | ||
8219 | * version of the text. i.e: <br> and <\n> will be replaced with \n, &...; with | ||
8220 | * the actual char and etc. | ||
8221 | * | ||
8222 | * @param obj the textblock object to work with. (if NULL, tries the default) | ||
8223 | * @param text the markup text (if NULL, return NULL) | ||
8224 | * @return an allocated plain text version of the markup | ||
8225 | * @since 1.2.0 | ||
8226 | */ | ||
8227 | EAPI char *evas_textblock_text_markup_to_utf8(const Evas_Object *obj, const char *text) EINA_WARN_UNUSED_RESULT EINA_MALLOC; | ||
8228 | |||
8229 | /** | ||
8230 | * Return the markup version of the plain text. | ||
8231 | * | ||
8232 | * Replaces \n -> <br/> \t -> <tab/> and etc. Generally needed before you pass | ||
8233 | * plain text to be set in a textblock. | ||
8234 | * | ||
8235 | * @param obj the textblock object to work with (if NULL, it just does the | ||
8236 | * default behaviour, i.e with no extra object information). | ||
8237 | * @param text the markup text (if NULL, return NULL) | ||
8238 | * @return an allocated plain text version of the markup | ||
8239 | * @since 1.2.0 | ||
8240 | */ | ||
8241 | EAPI char *evas_textblock_text_utf8_to_markup(const Evas_Object *obj, const char *text) EINA_WARN_UNUSED_RESULT EINA_MALLOC; | ||
8103 | 8242 | ||
8104 | /** | 8243 | /** |
8105 | * Creates a new textblock style. | 8244 | * Creates a new textblock style. |
@@ -8128,7 +8267,7 @@ EAPI void evas_textblock_style_set(Evas_Textblock_Style | |||
8128 | * @param ts the style to get it's text. | 8267 | * @param ts the style to get it's text. |
8129 | * @return the text of the style or null on error. | 8268 | * @return the text of the style or null on error. |
8130 | */ | 8269 | */ |
8131 | EAPI const char *evas_textblock_style_get(const Evas_Textblock_Style *ts) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8270 | EAPI const char *evas_textblock_style_get(const Evas_Textblock_Style *ts) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8132 | 8271 | ||
8133 | 8272 | ||
8134 | /** | 8273 | /** |
@@ -8144,7 +8283,7 @@ EAPI void evas_object_textblock_style_set(Evas_Object *o | |||
8144 | * @param obj the object to get the style from. | 8283 | * @param obj the object to get the style from. |
8145 | * @return the style of the object. | 8284 | * @return the style of the object. |
8146 | */ | 8285 | */ |
8147 | EAPI const Evas_Textblock_Style *evas_object_textblock_style_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8286 | EAPI const Evas_Textblock_Style *evas_object_textblock_style_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8148 | 8287 | ||
8149 | /** | 8288 | /** |
8150 | * @brief Set the "replacement character" to use for the given textblock object. | 8289 | * @brief Set the "replacement character" to use for the given textblock object. |
@@ -8161,7 +8300,7 @@ EAPI void evas_object_textblock_replace_char_set(Evas_Ob | |||
8161 | * @param obj The given textblock object | 8300 | * @param obj The given textblock object |
8162 | * @return replacement character or @c NULL | 8301 | * @return replacement character or @c NULL |
8163 | */ | 8302 | */ |
8164 | EAPI const char *evas_object_textblock_replace_char_get(Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8303 | EAPI const char *evas_object_textblock_replace_char_get(Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8165 | 8304 | ||
8166 | /** | 8305 | /** |
8167 | * @brief Sets the vertical alignment of text within the textblock object | 8306 | * @brief Sets the vertical alignment of text within the textblock object |
@@ -8230,7 +8369,7 @@ EAPI void evas_object_textblock_legacy_newline_set(Evas_ | |||
8230 | * @return EINA_TRUE if in legacy mode, EINA_FALSE otherwise. | 8369 | * @return EINA_TRUE if in legacy mode, EINA_FALSE otherwise. |
8231 | * @since 1.1.0 | 8370 | * @since 1.1.0 |
8232 | */ | 8371 | */ |
8233 | EAPI Eina_Bool evas_object_textblock_legacy_newline_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8372 | EAPI Eina_Bool evas_object_textblock_legacy_newline_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8234 | 8373 | ||
8235 | 8374 | ||
8236 | /** | 8375 | /** |
@@ -8270,7 +8409,7 @@ EAPI const char *evas_object_textblock_text_markup_get(const Ev | |||
8270 | * @param obj the object. | 8409 | * @param obj the object. |
8271 | * @return the obj's main cursor. | 8410 | * @return the obj's main cursor. |
8272 | */ | 8411 | */ |
8273 | EAPI Evas_Textblock_Cursor *evas_object_textblock_cursor_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8412 | EAPI Evas_Textblock_Cursor *evas_object_textblock_cursor_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8274 | 8413 | ||
8275 | /** | 8414 | /** |
8276 | * Create a new cursor, associate it to the obj and init it to point | 8415 | * Create a new cursor, associate it to the obj and init it to point |
@@ -8421,7 +8560,7 @@ EAPI void evas_textblock_cursor_at_format_set(Evas_Textb | |||
8421 | * @return #EINA_TRUE if the cursor points to a visible format, #EINA_FALSE otherwise. | 8560 | * @return #EINA_TRUE if the cursor points to a visible format, #EINA_FALSE otherwise. |
8422 | * @see evas_textblock_cursor_format_get() | 8561 | * @see evas_textblock_cursor_format_get() |
8423 | */ | 8562 | */ |
8424 | EAPI Eina_Bool evas_textblock_cursor_format_is_visible_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8563 | EAPI Eina_Bool evas_textblock_cursor_format_is_visible_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8425 | 8564 | ||
8426 | /** | 8565 | /** |
8427 | * Advances to the next format node | 8566 | * Advances to the next format node |
@@ -8464,6 +8603,24 @@ EAPI Eina_Bool evas_textblock_cursor_char_next(Evas_Textblock | |||
8464 | EAPI Eina_Bool evas_textblock_cursor_char_prev(Evas_Textblock_Cursor *cur) EINA_ARG_NONNULL(1); | 8603 | EAPI Eina_Bool evas_textblock_cursor_char_prev(Evas_Textblock_Cursor *cur) EINA_ARG_NONNULL(1); |
8465 | 8604 | ||
8466 | /** | 8605 | /** |
8606 | * Moves the cursor to the start of the word under the cursor. | ||
8607 | * | ||
8608 | * @param cur the cursor to move. | ||
8609 | * @return #EINA_TRUE on success #EINA_FALSE otherwise. | ||
8610 | * @since 1.2.0 | ||
8611 | */ | ||
8612 | EAPI Eina_Bool evas_textblock_cursor_word_start(Evas_Textblock_Cursor *cur) EINA_ARG_NONNULL(1); | ||
8613 | |||
8614 | /** | ||
8615 | * Moves the cursor to the end of the word under the cursor. | ||
8616 | * | ||
8617 | * @param cur the cursor to move. | ||
8618 | * @return #EINA_TRUE on success #EINA_FALSE otherwise. | ||
8619 | * @since 1.2.0 | ||
8620 | */ | ||
8621 | EAPI Eina_Bool evas_textblock_cursor_word_end(Evas_Textblock_Cursor *cur) EINA_ARG_NONNULL(1); | ||
8622 | |||
8623 | /** | ||
8467 | * Go to the first char in the node the cursor is pointing on. | 8624 | * Go to the first char in the node the cursor is pointing on. |
8468 | * | 8625 | * |
8469 | * @param cur the cursor to update. | 8626 | * @param cur the cursor to update. |
@@ -8501,7 +8658,7 @@ EAPI void evas_textblock_cursor_line_char_last(Evas_Text | |||
8501 | * @param cur the cursor to take the position from. | 8658 | * @param cur the cursor to take the position from. |
8502 | * @return the position or -1 on error | 8659 | * @return the position or -1 on error |
8503 | */ | 8660 | */ |
8504 | EAPI int evas_textblock_cursor_pos_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8661 | EAPI int evas_textblock_cursor_pos_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8505 | 8662 | ||
8506 | /** | 8663 | /** |
8507 | * Set the cursor pos. | 8664 | * Set the cursor pos. |
@@ -8527,7 +8684,7 @@ EAPI Eina_Bool evas_textblock_cursor_line_set(Evas_Textblock_ | |||
8527 | * @param cur2 the second cursor. | 8684 | * @param cur2 the second cursor. |
8528 | * @return -1 if cur1 < cur2, 0 if cur1 == cur2 and 1 otherwise. | 8685 | * @return -1 if cur1 < cur2, 0 if cur1 == cur2 and 1 otherwise. |
8529 | */ | 8686 | */ |
8530 | EAPI int evas_textblock_cursor_compare(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 8687 | EAPI int evas_textblock_cursor_compare(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
8531 | 8688 | ||
8532 | /** | 8689 | /** |
8533 | * Make cur_dest point to the same place as cur. Does not work if they don't | 8690 | * Make cur_dest point to the same place as cur. Does not work if they don't |
@@ -8630,7 +8787,7 @@ EAPI void evas_textblock_cursor_range_delete(Evas_Textbl | |||
8630 | * @param cur the cursor pointing to the paragraph. | 8787 | * @param cur the cursor pointing to the paragraph. |
8631 | * @return the text on success, NULL otherwise. | 8788 | * @return the text on success, NULL otherwise. |
8632 | */ | 8789 | */ |
8633 | EAPI const char *evas_textblock_cursor_paragraph_text_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8790 | EAPI const char *evas_textblock_cursor_paragraph_text_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8634 | 8791 | ||
8635 | /** | 8792 | /** |
8636 | * Return the length of the paragraph, cheaper the eina_unicode_strlen() | 8793 | * Return the length of the paragraph, cheaper the eina_unicode_strlen() |
@@ -8638,7 +8795,7 @@ EAPI const char *evas_textblock_cursor_paragraph_text_get(const | |||
8638 | * @param cur the position of the paragraph. | 8795 | * @param cur the position of the paragraph. |
8639 | * @return the length of the paragraph on success, -1 otehrwise. | 8796 | * @return the length of the paragraph on success, -1 otehrwise. |
8640 | */ | 8797 | */ |
8641 | EAPI int evas_textblock_cursor_paragraph_text_length_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8798 | EAPI int evas_textblock_cursor_paragraph_text_length_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8642 | 8799 | ||
8643 | /** | 8800 | /** |
8644 | * Return the currently visible range. | 8801 | * Return the currently visible range. |
@@ -8648,7 +8805,7 @@ EAPI int evas_textblock_cursor_paragraph_text_length_ge | |||
8648 | * @return EINA_TRUE on success. EINA_FALSE otherwise. | 8805 | * @return EINA_TRUE on success. EINA_FALSE otherwise. |
8649 | * @since 1.1.0 | 8806 | * @since 1.1.0 |
8650 | */ | 8807 | */ |
8651 | Eina_Bool evas_textblock_cursor_visible_range_get(Evas_Textblock_Cursor *start, Evas_Textblock_Cursor *end) EINA_ARG_NONNULL(1, 2); | 8808 | EAPI Eina_Bool evas_textblock_cursor_visible_range_get(Evas_Textblock_Cursor *start, Evas_Textblock_Cursor *end) EINA_ARG_NONNULL(1, 2); |
8652 | 8809 | ||
8653 | /** | 8810 | /** |
8654 | * Return the format nodes in the range between cur1 and cur2. | 8811 | * Return the format nodes in the range between cur1 and cur2. |
@@ -8658,7 +8815,7 @@ Eina_Bool evas_textblock_cursor_visible_range_get(Evas_T | |||
8658 | * @return the foramt nodes in the range. You have to free it. | 8815 | * @return the foramt nodes in the range. You have to free it. |
8659 | * @since 1.1.0 | 8816 | * @since 1.1.0 |
8660 | */ | 8817 | */ |
8661 | EAPI Eina_List * evas_textblock_cursor_range_formats_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 8818 | EAPI Eina_List * evas_textblock_cursor_range_formats_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
8662 | 8819 | ||
8663 | /** | 8820 | /** |
8664 | * Return the text in the range between cur1 and cur2 | 8821 | * Return the text in the range between cur1 and cur2 |
@@ -8669,13 +8826,15 @@ EAPI Eina_List * evas_textblock_cursor_range_formats_get(const E | |||
8669 | * @return the text in the range | 8826 | * @return the text in the range |
8670 | * @see elm_entry_markup_to_utf8() | 8827 | * @see elm_entry_markup_to_utf8() |
8671 | */ | 8828 | */ |
8672 | EAPI char *evas_textblock_cursor_range_text_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2, Evas_Textblock_Text_Type format) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 8829 | EAPI char *evas_textblock_cursor_range_text_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2, Evas_Textblock_Text_Type format) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
8673 | 8830 | ||
8674 | /** | 8831 | /** |
8675 | * Return the content of the cursor. | 8832 | * Return the content of the cursor. |
8676 | * | 8833 | * |
8834 | * Free the returned string pointer when done (if it is not NULL). | ||
8835 | * | ||
8677 | * @param cur the cursor | 8836 | * @param cur the cursor |
8678 | * @return the text in the range | 8837 | * @return the text in the range, terminated by a nul byte (may be utf8). |
8679 | */ | 8838 | */ |
8680 | EAPI char *evas_textblock_cursor_content_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_MALLOC; | 8839 | EAPI char *evas_textblock_cursor_content_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_MALLOC; |
8681 | 8840 | ||
@@ -8766,7 +8925,7 @@ EAPI int evas_textblock_cursor_line_coord_set(Evas_Text | |||
8766 | * @param cur2 other side of the range. | 8925 | * @param cur2 other side of the range. |
8767 | * @return a list of Rectangles representing the geometry of the range. | 8926 | * @return a list of Rectangles representing the geometry of the range. |
8768 | */ | 8927 | */ |
8769 | EAPI Eina_List *evas_textblock_cursor_range_geometry_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 8928 | EAPI Eina_List *evas_textblock_cursor_range_geometry_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *cur2) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
8770 | EAPI Eina_Bool evas_textblock_cursor_format_item_geometry_get(const Evas_Textblock_Cursor *cur, Evas_Coord *cx, Evas_Coord *cy, Evas_Coord *cw, Evas_Coord *ch) EINA_ARG_NONNULL(1); | 8929 | EAPI Eina_Bool evas_textblock_cursor_format_item_geometry_get(const Evas_Textblock_Cursor *cur, Evas_Coord *cx, Evas_Coord *cy, Evas_Coord *cw, Evas_Coord *ch) EINA_ARG_NONNULL(1); |
8771 | 8930 | ||
8772 | 8931 | ||
@@ -8776,7 +8935,7 @@ EAPI Eina_List *evas_textblock_cursor_range_geometry_get(const | |||
8776 | * @param cur the cursor to check. | 8935 | * @param cur the cursor to check. |
8777 | * @return #EINA_TRUE if true, #EINA_FALSE otherwise. | 8936 | * @return #EINA_TRUE if true, #EINA_FALSE otherwise. |
8778 | */ | 8937 | */ |
8779 | EAPI Eina_Bool evas_textblock_cursor_eol_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 8938 | EAPI Eina_Bool evas_textblock_cursor_eol_get(const Evas_Textblock_Cursor *cur) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
8780 | 8939 | ||
8781 | 8940 | ||
8782 | /** | 8941 | /** |
@@ -8931,6 +9090,12 @@ EAPI void evas_object_polygon_points_clear (Evas_Object *obj) EINA | |||
8931 | * @} | 9090 | * @} |
8932 | */ | 9091 | */ |
8933 | 9092 | ||
9093 | /* @since 1.2.0 */ | ||
9094 | EAPI void evas_object_is_frame_object_set(Evas_Object *obj, Eina_Bool is_frame); | ||
9095 | |||
9096 | /* @since 1.2.0 */ | ||
9097 | EAPI Eina_Bool evas_object_is_frame_object_get(Evas_Object *obj); | ||
9098 | |||
8934 | /** | 9099 | /** |
8935 | * @defgroup Evas_Smart_Group Smart Functions | 9100 | * @defgroup Evas_Smart_Group Smart Functions |
8936 | * | 9101 | * |
@@ -9273,7 +9438,7 @@ EAPI Evas_Smart *evas_smart_class_new (const | |||
9273 | * @param s a valid #Evas_Smart pointer | 9438 | * @param s a valid #Evas_Smart pointer |
9274 | * @return the #Evas_Smart_Class in it | 9439 | * @return the #Evas_Smart_Class in it |
9275 | */ | 9440 | */ |
9276 | EAPI const Evas_Smart_Class *evas_smart_class_get (const Evas_Smart *s) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 9441 | EAPI const Evas_Smart_Class *evas_smart_class_get (const Evas_Smart *s) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9277 | 9442 | ||
9278 | 9443 | ||
9279 | /** | 9444 | /** |
@@ -9284,7 +9449,7 @@ EAPI const Evas_Smart_Class *evas_smart_class_get (const | |||
9284 | * This data pointer is set as the data field in the #Evas_Smart_Class | 9449 | * This data pointer is set as the data field in the #Evas_Smart_Class |
9285 | * passed in to evas_smart_class_new(). | 9450 | * passed in to evas_smart_class_new(). |
9286 | */ | 9451 | */ |
9287 | EAPI void *evas_smart_data_get (const Evas_Smart *s) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 9452 | EAPI void *evas_smart_data_get (const Evas_Smart *s) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9288 | 9453 | ||
9289 | /** | 9454 | /** |
9290 | * Get the smart callbacks known by this #Evas_Smart handle's smart | 9455 | * Get the smart callbacks known by this #Evas_Smart handle's smart |
@@ -9338,7 +9503,7 @@ EAPI const Evas_Smart_Cb_Description **evas_smart_callbacks_descriptions_get(con | |||
9338 | * | 9503 | * |
9339 | * @see evas_smart_callbacks_descriptions_get() | 9504 | * @see evas_smart_callbacks_descriptions_get() |
9340 | */ | 9505 | */ |
9341 | EAPI const Evas_Smart_Cb_Description *evas_smart_callback_description_find(const Evas_Smart *s, const char *name) EINA_ARG_NONNULL(1, 2) EINA_PURE; | 9506 | EAPI const Evas_Smart_Cb_Description *evas_smart_callback_description_find(const Evas_Smart *s, const char *name) EINA_ARG_NONNULL(1, 2); |
9342 | 9507 | ||
9343 | 9508 | ||
9344 | /** | 9509 | /** |
@@ -9507,7 +9672,7 @@ EAPI void evas_object_smart_member_del (Evas_Object *obj) EINA | |||
9507 | * @see evas_object_smart_member_add() | 9672 | * @see evas_object_smart_member_add() |
9508 | * @see evas_object_smart_member_del() | 9673 | * @see evas_object_smart_member_del() |
9509 | */ | 9674 | */ |
9510 | EAPI Eina_List *evas_object_smart_members_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 9675 | EAPI Eina_List *evas_object_smart_members_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9511 | 9676 | ||
9512 | /** | 9677 | /** |
9513 | * Gets the parent smart object of a given Evas object, if it has one. | 9678 | * Gets the parent smart object of a given Evas object, if it has one. |
@@ -9519,7 +9684,7 @@ EAPI Eina_List *evas_object_smart_members_get (const Evas_Object *obj | |||
9519 | * | 9684 | * |
9520 | * @ingroup Evas_Smart_Object_Group | 9685 | * @ingroup Evas_Smart_Object_Group |
9521 | */ | 9686 | */ |
9522 | EAPI Evas_Object *evas_object_smart_parent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 9687 | EAPI Evas_Object *evas_object_smart_parent_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9523 | 9688 | ||
9524 | /** | 9689 | /** |
9525 | * Checks whether a given smart object or any of its smart object | 9690 | * Checks whether a given smart object or any of its smart object |
@@ -9546,7 +9711,7 @@ EAPI Evas_Object *evas_object_smart_parent_get (const Evas_Object *obj | |||
9546 | * | 9711 | * |
9547 | * @ingroup Evas_Smart_Object_Group | 9712 | * @ingroup Evas_Smart_Object_Group |
9548 | */ | 9713 | */ |
9549 | EAPI Eina_Bool evas_object_smart_type_check (const Evas_Object *obj, const char *type) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 9714 | EAPI Eina_Bool evas_object_smart_type_check (const Evas_Object *obj, const char *type) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
9550 | 9715 | ||
9551 | /** | 9716 | /** |
9552 | * Checks whether a given smart object or any of its smart object | 9717 | * Checks whether a given smart object or any of its smart object |
@@ -9561,7 +9726,7 @@ EAPI Eina_Bool evas_object_smart_type_check (const Evas_Object *obj | |||
9561 | * | 9726 | * |
9562 | * @ingroup Evas_Smart_Object_Group | 9727 | * @ingroup Evas_Smart_Object_Group |
9563 | */ | 9728 | */ |
9564 | EAPI Eina_Bool evas_object_smart_type_check_ptr (const Evas_Object *obj, const char *type) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 9729 | EAPI Eina_Bool evas_object_smart_type_check_ptr (const Evas_Object *obj, const char *type) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
9565 | 9730 | ||
9566 | /** | 9731 | /** |
9567 | * Get the #Evas_Smart from which @p obj smart object was created. | 9732 | * Get the #Evas_Smart from which @p obj smart object was created. |
@@ -9571,7 +9736,7 @@ EAPI Eina_Bool evas_object_smart_type_check_ptr (const Evas_Object *obj | |||
9571 | * | 9736 | * |
9572 | * @ingroup Evas_Smart_Object_Group | 9737 | * @ingroup Evas_Smart_Object_Group |
9573 | */ | 9738 | */ |
9574 | EAPI Evas_Smart *evas_object_smart_smart_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 9739 | EAPI Evas_Smart *evas_object_smart_smart_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9575 | 9740 | ||
9576 | /** | 9741 | /** |
9577 | * Retrieve user data stored on a given smart object. | 9742 | * Retrieve user data stored on a given smart object. |
@@ -9585,7 +9750,7 @@ EAPI Evas_Smart *evas_object_smart_smart_get (const Evas_Object *obj | |||
9585 | * | 9750 | * |
9586 | * @ingroup Evas_Smart_Object_Group | 9751 | * @ingroup Evas_Smart_Object_Group |
9587 | */ | 9752 | */ |
9588 | EAPI void *evas_object_smart_data_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 9753 | EAPI void *evas_object_smart_data_get (const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9589 | 9754 | ||
9590 | /** | 9755 | /** |
9591 | * Store a pointer to user data for a given smart object. | 9756 | * Store a pointer to user data for a given smart object. |
@@ -9683,6 +9848,34 @@ EAPI void evas_object_smart_callback_priority_add(Evas_Object *obj, | |||
9683 | EAPI void *evas_object_smart_callback_del (Evas_Object *obj, const char *event, Evas_Smart_Cb func) EINA_ARG_NONNULL(1, 2, 3); | 9848 | EAPI void *evas_object_smart_callback_del (Evas_Object *obj, const char *event, Evas_Smart_Cb func) EINA_ARG_NONNULL(1, 2, 3); |
9684 | 9849 | ||
9685 | /** | 9850 | /** |
9851 | * Delete (unregister) a callback function from the smart event | ||
9852 | * specified by @p event on the smart object @p obj. | ||
9853 | * | ||
9854 | * @param obj a smart object | ||
9855 | * @param event the event's name string | ||
9856 | * @param func the callback function | ||
9857 | * @param data the data pointer that was passed to the callback | ||
9858 | * @return the data pointer | ||
9859 | * | ||
9860 | * This function removes <b>the first</b> added smart callback on the | ||
9861 | * object @p obj matching the event name @p event, the registered | ||
9862 | * function pointer @p func and the callback data pointer @p data. If | ||
9863 | * the removal is successful it will also return the data pointer that | ||
9864 | * was passed to evas_object_smart_callback_add() (that will be the same | ||
9865 | * as the parameter) when the callback(s) was(were) added to the canvas. | ||
9866 | * If not successful @c NULL will be returned. A common use would be to | ||
9867 | * remove an exact match of a callback | ||
9868 | * | ||
9869 | * @see evas_object_smart_callback_add() for more details. | ||
9870 | * @since 1.2.0 | ||
9871 | * @ingroup Evas_Smart_Object_Group | ||
9872 | * | ||
9873 | * @note To delete all smart event callbacks which match @p type and @p func, | ||
9874 | * use evas_object_smart_callback_del(). | ||
9875 | */ | ||
9876 | EAPI void *evas_object_smart_callback_del_full(Evas_Object *obj, const char *event, Evas_Smart_Cb func, const void *data) EINA_ARG_NONNULL(1, 2, 3); | ||
9877 | |||
9878 | /** | ||
9686 | * Call a given smart callback on the smart object @p obj. | 9879 | * Call a given smart callback on the smart object @p obj. |
9687 | * | 9880 | * |
9688 | * @param obj the smart object | 9881 | * @param obj the smart object |
@@ -9856,7 +10049,7 @@ EAPI void evas_object_smart_need_recalculate_set(Evas_Object *obj, | |||
9856 | * | 10049 | * |
9857 | * @ingroup Evas_Smart_Object_Group | 10050 | * @ingroup Evas_Smart_Object_Group |
9858 | */ | 10051 | */ |
9859 | EAPI Eina_Bool evas_object_smart_need_recalculate_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 10052 | EAPI Eina_Bool evas_object_smart_need_recalculate_get(const Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9860 | 10053 | ||
9861 | /** | 10054 | /** |
9862 | * Call the @b calculate() smart function immediataly on a given smart | 10055 | * Call the @b calculate() smart function immediataly on a given smart |
@@ -9977,7 +10170,7 @@ EAPI void evas_object_smart_move_children_relative(Evas_Objec | |||
9977 | * | 10170 | * |
9978 | * @see evas_object_smart_clipped_smart_add() | 10171 | * @see evas_object_smart_clipped_smart_add() |
9979 | */ | 10172 | */ |
9980 | EAPI Evas_Object *evas_object_smart_clipped_clipper_get (Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 10173 | EAPI Evas_Object *evas_object_smart_clipped_clipper_get (Evas_Object *obj) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
9981 | 10174 | ||
9982 | /** | 10175 | /** |
9983 | * Set a given smart class' callbacks so it implements the <b>clipped smart | 10176 | * Set a given smart class' callbacks so it implements the <b>clipped smart |
@@ -10885,7 +11078,7 @@ EAPI Eina_List *evas_object_box_children_get | |||
10885 | * _Evas_Object_Box_Api::property_name_get smart class function of the | 11078 | * _Evas_Object_Box_Api::property_name_get smart class function of the |
10886 | * box, which is originally set to @c NULL. | 11079 | * box, which is originally set to @c NULL. |
10887 | */ | 11080 | */ |
10888 | EAPI const char *evas_object_box_option_property_name_get (Evas_Object *o, int property) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 11081 | EAPI const char *evas_object_box_option_property_name_get (Evas_Object *o, int property) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
10889 | 11082 | ||
10890 | /** | 11083 | /** |
10891 | * Get the numerical identifier of the property of the child elements | 11084 | * Get the numerical identifier of the property of the child elements |
@@ -10904,7 +11097,7 @@ EAPI const char *evas_object_box_option_property_name_get | |||
10904 | * _Evas_Object_Box_Api::property_id_get smart class function of the | 11097 | * _Evas_Object_Box_Api::property_id_get smart class function of the |
10905 | * box, which is originally set to @c NULL. | 11098 | * box, which is originally set to @c NULL. |
10906 | */ | 11099 | */ |
10907 | EAPI int evas_object_box_option_property_id_get (Evas_Object *o, const char *name) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 11100 | EAPI int evas_object_box_option_property_id_get (Evas_Object *o, const char *name) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
10908 | 11101 | ||
10909 | /** | 11102 | /** |
10910 | * Set a property value (by its given numerical identifier), on a | 11103 | * Set a property value (by its given numerical identifier), on a |
@@ -11081,7 +11274,7 @@ EAPI void evas_object_table_homogeneous_set (Evas | |||
11081 | * | 11274 | * |
11082 | * @see evas_object_table_homogeneous_set() | 11275 | * @see evas_object_table_homogeneous_set() |
11083 | */ | 11276 | */ |
11084 | EAPI Evas_Object_Table_Homogeneous_Mode evas_object_table_homogeneous_get (const Evas_Object *o) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 11277 | EAPI Evas_Object_Table_Homogeneous_Mode evas_object_table_homogeneous_get (const Evas_Object *o) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
11085 | 11278 | ||
11086 | /** | 11279 | /** |
11087 | * Set padding between cells. | 11280 | * Set padding between cells. |
@@ -11455,7 +11648,7 @@ EAPI Eina_List *evas_object_grid_children_get (const | |||
11455 | * @return @c EINA_TRUE if it wants, @c EINA_FALSE otherwise. | 11648 | * @return @c EINA_TRUE if it wants, @c EINA_FALSE otherwise. |
11456 | * @ingroup Evas_Cserve | 11649 | * @ingroup Evas_Cserve |
11457 | */ | 11650 | */ |
11458 | EAPI Eina_Bool evas_cserve_want_get (void) EINA_WARN_UNUSED_RESULT EINA_PURE; | 11651 | EAPI Eina_Bool evas_cserve_want_get (void) EINA_WARN_UNUSED_RESULT; |
11459 | 11652 | ||
11460 | /** | 11653 | /** |
11461 | * Retrieves if the system is connected to the server used to share | 11654 | * Retrieves if the system is connected to the server used to share |
@@ -11482,7 +11675,7 @@ EAPI Eina_Bool evas_cserve_stats_get (Evas_Cserve_Stats | |||
11482 | * | 11675 | * |
11483 | * @param cache A handle to the given images cache. | 11676 | * @param cache A handle to the given images cache. |
11484 | */ | 11677 | */ |
11485 | EAPI void evas_cserve_image_cache_contents_clean (Evas_Cserve_Image_Cache *cache) EINA_PURE; | 11678 | EAPI void evas_cserve_image_cache_contents_clean (Evas_Cserve_Image_Cache *cache); |
11486 | 11679 | ||
11487 | /** | 11680 | /** |
11488 | * Retrieves the current configuration of the Evas image caching | 11681 | * Retrieves the current configuration of the Evas image caching |
@@ -11501,7 +11694,7 @@ EAPI void evas_cserve_image_cache_contents_clean (Evas_Cserve_Image | |||
11501 | * | 11694 | * |
11502 | * @ingroup Evas_Cserve | 11695 | * @ingroup Evas_Cserve |
11503 | */ | 11696 | */ |
11504 | EAPI Eina_Bool evas_cserve_config_get (Evas_Cserve_Config *config) EINA_WARN_UNUSED_RESULT EINA_PURE; | 11697 | EAPI Eina_Bool evas_cserve_config_get (Evas_Cserve_Config *config) EINA_WARN_UNUSED_RESULT; |
11505 | 11698 | ||
11506 | /** | 11699 | /** |
11507 | * Changes the configurations of the Evas image caching server. | 11700 | * Changes the configurations of the Evas image caching server. |
@@ -11515,7 +11708,7 @@ EAPI Eina_Bool evas_cserve_config_get (Evas_Cserve_Confi | |||
11515 | * | 11708 | * |
11516 | * @ingroup Evas_Cserve | 11709 | * @ingroup Evas_Cserve |
11517 | */ | 11710 | */ |
11518 | EAPI Eina_Bool evas_cserve_config_set (const Evas_Cserve_Config *config) EINA_WARN_UNUSED_RESULT EINA_PURE; | 11711 | EAPI Eina_Bool evas_cserve_config_set (const Evas_Cserve_Config *config) EINA_WARN_UNUSED_RESULT; |
11519 | 11712 | ||
11520 | /** | 11713 | /** |
11521 | * Force the system to disconnect from the bitmap caching server. | 11714 | * Force the system to disconnect from the bitmap caching server. |
@@ -11711,7 +11904,7 @@ EAPI int evas_string_char_prev_get (const char *str, int p | |||
11711 | * @return The length in characters (not bytes) | 11904 | * @return The length in characters (not bytes) |
11712 | * @ingroup Evas_Utils | 11905 | * @ingroup Evas_Utils |
11713 | */ | 11906 | */ |
11714 | EAPI int evas_string_char_len_get (const char *str) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 11907 | EAPI int evas_string_char_len_get (const char *str) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
11715 | 11908 | ||
11716 | /** | 11909 | /** |
11717 | * @defgroup Evas_Keys Key Input Functions | 11910 | * @defgroup Evas_Keys Key Input Functions |
@@ -11769,7 +11962,7 @@ EAPI int evas_string_char_len_get (const char *str) EINA_ | |||
11769 | * @return An ::Evas_Modifier handle to query Evas' keys subsystem | 11962 | * @return An ::Evas_Modifier handle to query Evas' keys subsystem |
11770 | * with evas_key_modifier_is_set(), or @c NULL on error. | 11963 | * with evas_key_modifier_is_set(), or @c NULL on error. |
11771 | */ | 11964 | */ |
11772 | EAPI const Evas_Modifier *evas_key_modifier_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 11965 | EAPI const Evas_Modifier *evas_key_modifier_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
11773 | 11966 | ||
11774 | /** | 11967 | /** |
11775 | * Returns a handle to the list of lock keys registered in the canvas | 11968 | * Returns a handle to the list of lock keys registered in the canvas |
@@ -11787,7 +11980,7 @@ EAPI const Evas_Modifier *evas_key_modifier_get (const Evas *e) EINA_WA | |||
11787 | * @return An ::Evas_Lock handle to query Evas' keys subsystem with | 11980 | * @return An ::Evas_Lock handle to query Evas' keys subsystem with |
11788 | * evas_key_lock_is_set(), or @c NULL on error. | 11981 | * evas_key_lock_is_set(), or @c NULL on error. |
11789 | */ | 11982 | */ |
11790 | EAPI const Evas_Lock *evas_key_lock_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1) EINA_PURE; | 11983 | EAPI const Evas_Lock *evas_key_lock_get (const Evas *e) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1); |
11791 | 11984 | ||
11792 | 11985 | ||
11793 | /** | 11986 | /** |
@@ -11808,7 +12001,7 @@ EAPI const Evas_Lock *evas_key_lock_get (const Evas *e) EINA_WA | |||
11808 | * @see evas_key_modifier_on | 12001 | * @see evas_key_modifier_on |
11809 | * @see evas_key_modifier_off | 12002 | * @see evas_key_modifier_off |
11810 | */ | 12003 | */ |
11811 | EAPI Eina_Bool evas_key_modifier_is_set (const Evas_Modifier *m, const char *keyname) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 12004 | EAPI Eina_Bool evas_key_modifier_is_set (const Evas_Modifier *m, const char *keyname) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
11812 | 12005 | ||
11813 | 12006 | ||
11814 | /** | 12007 | /** |
@@ -11828,7 +12021,7 @@ EAPI Eina_Bool evas_key_modifier_is_set (const Evas_Modifier *m | |||
11828 | * @see evas_key_lock_on | 12021 | * @see evas_key_lock_on |
11829 | * @see evas_key_lock_off | 12022 | * @see evas_key_lock_off |
11830 | */ | 12023 | */ |
11831 | EAPI Eina_Bool evas_key_lock_is_set (const Evas_Lock *l, const char *keyname) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 12024 | EAPI Eina_Bool evas_key_lock_is_set (const Evas_Lock *l, const char *keyname) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
11832 | 12025 | ||
11833 | 12026 | ||
11834 | /** | 12027 | /** |
@@ -12012,7 +12205,7 @@ EAPI void evas_key_lock_off (Evas *e, const char *k | |||
12012 | * @see evas_object_key_grab | 12205 | * @see evas_object_key_grab |
12013 | * @see evas_object_key_ungrab | 12206 | * @see evas_object_key_ungrab |
12014 | */ | 12207 | */ |
12015 | EAPI Evas_Modifier_Mask evas_key_modifier_mask_get (const Evas *e, const char *keyname) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2) EINA_PURE; | 12208 | EAPI Evas_Modifier_Mask evas_key_modifier_mask_get (const Evas *e, const char *keyname) EINA_WARN_UNUSED_RESULT EINA_ARG_NONNULL(1, 2); |
12016 | 12209 | ||
12017 | 12210 | ||
12018 | /** | 12211 | /** |
diff --git a/libraries/evas/src/lib/Evas_GL.h b/libraries/evas/src/lib/Evas_GL.h index 04bedea..fdfbaad 100644 --- a/libraries/evas/src/lib/Evas_GL.h +++ b/libraries/evas/src/lib/Evas_GL.h | |||
@@ -28,7 +28,7 @@ typedef enum _Evas_GL_Depth_Bits | |||
28 | EVAS_GL_DEPTH_BIT_8 = 1, | 28 | EVAS_GL_DEPTH_BIT_8 = 1, |
29 | EVAS_GL_DEPTH_BIT_16 = 2, | 29 | EVAS_GL_DEPTH_BIT_16 = 2, |
30 | EVAS_GL_DEPTH_BIT_24 = 3, | 30 | EVAS_GL_DEPTH_BIT_24 = 3, |
31 | EVAS_GL_DEPTH_BIT_32 = 4, | 31 | EVAS_GL_DEPTH_BIT_32 = 4 |
32 | } Evas_GL_Depth_Bits; | 32 | } Evas_GL_Depth_Bits; |
33 | 33 | ||
34 | typedef enum _Evas_GL_Stencil_Bits | 34 | typedef enum _Evas_GL_Stencil_Bits |
@@ -38,14 +38,21 @@ typedef enum _Evas_GL_Stencil_Bits | |||
38 | EVAS_GL_STENCIL_BIT_2 = 2, | 38 | EVAS_GL_STENCIL_BIT_2 = 2, |
39 | EVAS_GL_STENCIL_BIT_4 = 3, | 39 | EVAS_GL_STENCIL_BIT_4 = 3, |
40 | EVAS_GL_STENCIL_BIT_8 = 4, | 40 | EVAS_GL_STENCIL_BIT_8 = 4, |
41 | EVAS_GL_STENCIL_BIT_16 = 5, | 41 | EVAS_GL_STENCIL_BIT_16 = 5 |
42 | } Evas_GL_Stencil_Bits; | 42 | } Evas_GL_Stencil_Bits; |
43 | 43 | ||
44 | typedef enum _Evas_GL_Options_Bits | ||
45 | { | ||
46 | EVAS_GL_OPTIONS_NONE = 0, | ||
47 | EVAS_GL_OPTIONS_DIRECT = (1<<0) | ||
48 | } Evas_GL_Options_Bits; | ||
49 | |||
44 | struct _Evas_GL_Config | 50 | struct _Evas_GL_Config |
45 | { | 51 | { |
46 | Evas_GL_Color_Format color_format; | 52 | Evas_GL_Color_Format color_format; |
47 | Evas_GL_Depth_Bits depth_bits; | 53 | Evas_GL_Depth_Bits depth_bits; |
48 | Evas_GL_Stencil_Bits stencil_bits; | 54 | Evas_GL_Stencil_Bits stencil_bits; |
55 | Evas_GL_Options_Bits options_bits; | ||
49 | }; | 56 | }; |
50 | 57 | ||
51 | #define EVAS_GL_EXTENSIONS 1 | 58 | #define EVAS_GL_EXTENSIONS 1 |
@@ -73,6 +80,7 @@ typedef struct _GLData | |||
73 | { | 80 | { |
74 | Evas_GL_Context *ctx; | 81 | Evas_GL_Context *ctx; |
75 | Evas_GL_Surface *sfc; | 82 | Evas_GL_Surface *sfc; |
83 | Evas_GL_Config *cfg; | ||
76 | Evas_GL *evasgl; | 84 | Evas_GL *evasgl; |
77 | Evas_GL_API *glapi; | 85 | Evas_GL_API *glapi; |
78 | GLuint program; | 86 | GLuint program; |
@@ -93,13 +101,6 @@ static GLuint load_shader (GLData *gld, GLenum type, const char *shader_src) | |||
93 | int | 101 | int |
94 | main(int argc, char **argv) | 102 | main(int argc, char **argv) |
95 | { | 103 | { |
96 | // config for the surface for evas_gl | ||
97 | Evas_GL_Config config = | ||
98 | { | ||
99 | EVAS_GL_RGBA_8888, | ||
100 | EVAS_GL_DEPTH_NONE, | ||
101 | EVAS_GL_STENCIL_NONE | ||
102 | }; | ||
103 | // a size by default | 104 | // a size by default |
104 | int w = 256, h = 256; | 105 | int w = 256, h = 256; |
105 | // some variables we will use | 106 | // some variables we will use |
@@ -124,8 +125,16 @@ main(int argc, char **argv) | |||
124 | // get the evas gl handle for doing gl things | 125 | // get the evas gl handle for doing gl things |
125 | gld->evasgl = evas_gl_new(canvas); | 126 | gld->evasgl = evas_gl_new(canvas); |
126 | gld->glapi = evas_gl_api_get(gld->evasgl); | 127 | gld->glapi = evas_gl_api_get(gld->evasgl); |
128 | |||
129 | // Set a surface config | ||
130 | gld->cfg = evas_gl_config_new(); | ||
131 | gld->cfg->color_format = EVAS_GL_RGBA_8888; | ||
132 | //gld->cfg->depth_bits = EVAS_GL_DEPTH_NONE; // Othe config options | ||
133 | //gld->cfg->stencil_bits = EVAS_GL_STENCIL_NONE; | ||
134 | //gld->cfg->options_bits = EVAS_GL_OPTIONS_NONE; | ||
135 | |||
127 | // create a surface and context | 136 | // create a surface and context |
128 | gld->sfc = evas_gl_surface_create(gld->evasgl, &config, w, h); | 137 | gld->sfc = evas_gl_surface_create(gld->evasgl, gld->cfg, w, h); |
129 | gld->ctx = evas_gl_context_create(gld->evasgl, NULL); | 138 | gld->ctx = evas_gl_context_create(gld->evasgl, NULL); |
130 | //-// | 139 | //-// |
131 | //-//-//-// END GL INIT BLOB | 140 | //-//-//-// END GL INIT BLOB |
@@ -207,6 +216,7 @@ on_del(void *data, Evas *e, Evas_Object *obj, void *event_info) | |||
207 | 216 | ||
208 | evas_gl_surface_destroy(gld->evasgl, gld->sfc); | 217 | evas_gl_surface_destroy(gld->evasgl, gld->sfc); |
209 | evas_gl_context_destroy(gld->evasgl, gld->ctx); | 218 | evas_gl_context_destroy(gld->evasgl, gld->ctx); |
219 | evas_gl_config_free(gld->cfg); | ||
210 | evas_gl_free(gld->evasgl); | 220 | evas_gl_free(gld->evasgl); |
211 | free(gld); | 221 | free(gld); |
212 | } | 222 | } |
@@ -389,6 +399,22 @@ EAPI Evas_GL *evas_gl_new (Evas *e) EINA_WARN_UNU | |||
389 | EAPI void evas_gl_free (Evas_GL *evas_gl) EINA_ARG_NONNULL(1); | 399 | EAPI void evas_gl_free (Evas_GL *evas_gl) EINA_ARG_NONNULL(1); |
390 | 400 | ||
391 | /** | 401 | /** |
402 | * Allocates a new config object for the user to fill out. | ||
403 | * | ||
404 | * As long as the Evas creates a config object for the user, it takes care | ||
405 | * of the backward compatibility issue. | ||
406 | */ | ||
407 | EAPI Evas_GL_Config *evas_gl_config_new (); | ||
408 | |||
409 | /** | ||
410 | * Frees a config object created from evas_gl_config_new. | ||
411 | * | ||
412 | * As long as the Evas creates a config object for the user, it takes care | ||
413 | * of the backward compatibility issue. | ||
414 | */ | ||
415 | EAPI void evas_gl_config_free (Evas_GL_Config *cfg) EINA_ARG_NONNULL(1); | ||
416 | |||
417 | /** | ||
392 | * Creates and returns new Evas_GL_Surface object for GL Rendering. | 418 | * Creates and returns new Evas_GL_Surface object for GL Rendering. |
393 | * | 419 | * |
394 | * @param evas_gl The given Evas_GL object. | 420 | * @param evas_gl The given Evas_GL object. |
diff --git a/libraries/evas/src/lib/Makefile.am b/libraries/evas/src/lib/Makefile.am index 6b1011a..2a1a92d 100644 --- a/libraries/evas/src/lib/Makefile.am +++ b/libraries/evas/src/lib/Makefile.am | |||
@@ -100,6 +100,11 @@ SUBDIRS += ../modules/engines/software_x11/ | |||
100 | EVAS_STATIC_MODULE += ../modules/engines/software_x11/libevas_engine_software_x11.la | 100 | EVAS_STATIC_MODULE += ../modules/engines/software_x11/libevas_engine_software_x11.la |
101 | EVAS_STATIC_LIBADD += @evas_engine_software_xlib_libs@ @evas_engine_software_xcb_libs@ | 101 | EVAS_STATIC_LIBADD += @evas_engine_software_xlib_libs@ @evas_engine_software_xcb_libs@ |
102 | endif | 102 | endif |
103 | if EVAS_STATIC_BUILD_WAYLAND_SHM | ||
104 | SUBDIRS += ../modules/engines/wayland_shm/ | ||
105 | EVAS_STATIC_MODULE += ../modules/engines/wayland_shm/libevas_engine_wayland_shm.la | ||
106 | EVAS_STATIC_LIBADD += @evas_engine_wayland_shm_libs@ | ||
107 | endif | ||
103 | if EVAS_STATIC_BUILD_BMP | 108 | if EVAS_STATIC_BUILD_BMP |
104 | SUBDIRS += ../modules/loaders/bmp | 109 | SUBDIRS += ../modules/loaders/bmp |
105 | EVAS_STATIC_MODULE += ../modules/loaders/bmp/libevas_loader_bmp.la | 110 | EVAS_STATIC_MODULE += ../modules/loaders/bmp/libevas_loader_bmp.la |
@@ -200,9 +205,7 @@ AM_CFLAGS = @WIN32_CFLAGS@ | |||
200 | 205 | ||
201 | lib_LTLIBRARIES = libevas.la | 206 | lib_LTLIBRARIES = libevas.la |
202 | 207 | ||
203 | ### Evas_GL disabled for 1.1 | 208 | includes_HEADERS = Evas.h Evas_GL.h |
204 | #includes_HEADERS = Evas.h Evas_GL.h | ||
205 | includes_HEADERS = Evas.h | ||
206 | includesdir = $(includedir)/evas-@VMAJ@ | 209 | includesdir = $(includedir)/evas-@VMAJ@ |
207 | 210 | ||
208 | libevas_la_SOURCES = main.c | 211 | libevas_la_SOURCES = main.c |
diff --git a/libraries/evas/src/lib/Makefile.in b/libraries/evas/src/lib/Makefile.in index 87bbaac..ffe71d1 100644 --- a/libraries/evas/src/lib/Makefile.in +++ b/libraries/evas/src/lib/Makefile.in | |||
@@ -101,57 +101,60 @@ host_triplet = @host@ | |||
101 | @EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE@am__append_48 = ../modules/engines/software_x11/ | 101 | @EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE@am__append_48 = ../modules/engines/software_x11/ |
102 | @EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE@am__append_49 = ../modules/engines/software_x11/libevas_engine_software_x11.la | 102 | @EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE@am__append_49 = ../modules/engines/software_x11/libevas_engine_software_x11.la |
103 | @EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE@am__append_50 = @evas_engine_software_xlib_libs@ @evas_engine_software_xcb_libs@ | 103 | @EVAS_STATIC_BUILD_SOFTWARE_X11_TRUE@am__append_50 = @evas_engine_software_xlib_libs@ @evas_engine_software_xcb_libs@ |
104 | @EVAS_STATIC_BUILD_BMP_TRUE@am__append_51 = ../modules/loaders/bmp | 104 | @EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@am__append_51 = ../modules/engines/wayland_shm/ |
105 | @EVAS_STATIC_BUILD_BMP_TRUE@am__append_52 = ../modules/loaders/bmp/libevas_loader_bmp.la | 105 | @EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@am__append_52 = ../modules/engines/wayland_shm/libevas_engine_wayland_shm.la |
106 | @EVAS_STATIC_BUILD_BMP_TRUE@am__append_53 = @evas_image_loader_bmp_libs@ | 106 | @EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@am__append_53 = @evas_engine_wayland_shm_libs@ |
107 | @EVAS_STATIC_BUILD_EDB_TRUE@am__append_54 = ../modules/savers/edb ../modules/loaders/edb | 107 | @EVAS_STATIC_BUILD_BMP_TRUE@am__append_54 = ../modules/loaders/bmp |
108 | @EVAS_STATIC_BUILD_EDB_TRUE@am__append_55 = ../modules/savers/edb/libevas_saver_edb.la ../modules/loaders/edb/libevas_loader_edb.la | 108 | @EVAS_STATIC_BUILD_BMP_TRUE@am__append_55 = ../modules/loaders/bmp/libevas_loader_bmp.la |
109 | @EVAS_STATIC_BUILD_EDB_TRUE@am__append_56 = @evas_image_loader_edb_libs@ | 109 | @EVAS_STATIC_BUILD_BMP_TRUE@am__append_56 = @evas_image_loader_bmp_libs@ |
110 | @EVAS_STATIC_BUILD_EET_TRUE@am__append_57 = ../modules/savers/eet ../modules/loaders/eet | 110 | @EVAS_STATIC_BUILD_EDB_TRUE@am__append_57 = ../modules/savers/edb ../modules/loaders/edb |
111 | @EVAS_STATIC_BUILD_EET_TRUE@am__append_58 = ../modules/savers/eet/libevas_saver_eet.la ../modules/loaders/eet/libevas_loader_eet.la | 111 | @EVAS_STATIC_BUILD_EDB_TRUE@am__append_58 = ../modules/savers/edb/libevas_saver_edb.la ../modules/loaders/edb/libevas_loader_edb.la |
112 | @EVAS_STATIC_BUILD_EET_TRUE@am__append_59 = @evas_image_loader_eet_libs@ | 112 | @EVAS_STATIC_BUILD_EDB_TRUE@am__append_59 = @evas_image_loader_edb_libs@ |
113 | @EVAS_STATIC_BUILD_GENERIC_TRUE@am__append_60 = ../modules/loaders/generic | 113 | @EVAS_STATIC_BUILD_EET_TRUE@am__append_60 = ../modules/savers/eet ../modules/loaders/eet |
114 | @EVAS_STATIC_BUILD_GENERIC_TRUE@am__append_61 = ../modules/loaders/generic/libevas_loader_generic.la | 114 | @EVAS_STATIC_BUILD_EET_TRUE@am__append_61 = ../modules/savers/eet/libevas_saver_eet.la ../modules/loaders/eet/libevas_loader_eet.la |
115 | @EVAS_STATIC_BUILD_GENERIC_TRUE@am__append_62 = @evas_image_loader_generic_libs@ | 115 | @EVAS_STATIC_BUILD_EET_TRUE@am__append_62 = @evas_image_loader_eet_libs@ |
116 | @EVAS_STATIC_BUILD_GIF_TRUE@am__append_63 = ../modules/loaders/gif | 116 | @EVAS_STATIC_BUILD_GENERIC_TRUE@am__append_63 = ../modules/loaders/generic |
117 | @EVAS_STATIC_BUILD_GIF_TRUE@am__append_64 = ../modules/loaders/gif/libevas_loader_gif.la | 117 | @EVAS_STATIC_BUILD_GENERIC_TRUE@am__append_64 = ../modules/loaders/generic/libevas_loader_generic.la |
118 | @EVAS_STATIC_BUILD_GIF_TRUE@am__append_65 = @evas_image_loader_gif_libs@ | 118 | @EVAS_STATIC_BUILD_GENERIC_TRUE@am__append_65 = @evas_image_loader_generic_libs@ |
119 | @EVAS_STATIC_BUILD_ICO_TRUE@am__append_66 = ../modules/loaders/ico | 119 | @EVAS_STATIC_BUILD_GIF_TRUE@am__append_66 = ../modules/loaders/gif |
120 | @EVAS_STATIC_BUILD_ICO_TRUE@am__append_67 = ../modules/loaders/ico/libevas_loader_ico.la | 120 | @EVAS_STATIC_BUILD_GIF_TRUE@am__append_67 = ../modules/loaders/gif/libevas_loader_gif.la |
121 | @EVAS_STATIC_BUILD_ICO_TRUE@am__append_68 = @evas_image_loader_ico_libs@ | 121 | @EVAS_STATIC_BUILD_GIF_TRUE@am__append_68 = @evas_image_loader_gif_libs@ |
122 | @EVAS_STATIC_BUILD_JPEG_TRUE@am__append_69 = ../modules/loaders/jpeg | 122 | @EVAS_STATIC_BUILD_ICO_TRUE@am__append_69 = ../modules/loaders/ico |
123 | @EVAS_STATIC_BUILD_JPEG_TRUE@am__append_70 = ../modules/loaders/jpeg/libevas_loader_jpeg.la | 123 | @EVAS_STATIC_BUILD_ICO_TRUE@am__append_70 = ../modules/loaders/ico/libevas_loader_ico.la |
124 | @BUILD_SAVER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_TRUE@am__append_71 = ../modules/savers/jpeg | 124 | @EVAS_STATIC_BUILD_ICO_TRUE@am__append_71 = @evas_image_loader_ico_libs@ |
125 | @BUILD_SAVER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_TRUE@am__append_72 = ../modules/savers/jpeg/libevas_saver_jpeg.la | 125 | @EVAS_STATIC_BUILD_JPEG_TRUE@am__append_72 = ../modules/loaders/jpeg |
126 | @EVAS_STATIC_BUILD_JPEG_TRUE@am__append_73 = @evas_image_loader_jpeg_libs@ | 126 | @EVAS_STATIC_BUILD_JPEG_TRUE@am__append_73 = ../modules/loaders/jpeg/libevas_loader_jpeg.la |
127 | @EVAS_STATIC_BUILD_PMAPS_TRUE@am__append_74 = ../modules/loaders/pmaps | 127 | @BUILD_SAVER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_TRUE@am__append_74 = ../modules/savers/jpeg |
128 | @EVAS_STATIC_BUILD_PMAPS_TRUE@am__append_75 = ../modules/loaders/pmaps/libevas_loader_pmaps.la | 128 | @BUILD_SAVER_JPEG_TRUE@@EVAS_STATIC_BUILD_JPEG_TRUE@am__append_75 = ../modules/savers/jpeg/libevas_saver_jpeg.la |
129 | @EVAS_STATIC_BUILD_PMAPS_TRUE@am__append_76 = @evas_image_loader_pmaps_libs@ | 129 | @EVAS_STATIC_BUILD_JPEG_TRUE@am__append_76 = @evas_image_loader_jpeg_libs@ |
130 | @EVAS_STATIC_BUILD_PNG_TRUE@am__append_77 = ../modules/savers/png ../modules/loaders/png | 130 | @EVAS_STATIC_BUILD_PMAPS_TRUE@am__append_77 = ../modules/loaders/pmaps |
131 | @EVAS_STATIC_BUILD_PNG_TRUE@am__append_78 = ../modules/savers/png/libevas_saver_png.la ../modules/loaders/png/libevas_loader_png.la | 131 | @EVAS_STATIC_BUILD_PMAPS_TRUE@am__append_78 = ../modules/loaders/pmaps/libevas_loader_pmaps.la |
132 | @EVAS_STATIC_BUILD_PNG_TRUE@am__append_79 = @evas_image_loader_png_libs@ | 132 | @EVAS_STATIC_BUILD_PMAPS_TRUE@am__append_79 = @evas_image_loader_pmaps_libs@ |
133 | @EVAS_STATIC_BUILD_PSD_TRUE@am__append_80 = ../modules/loaders/psd | 133 | @EVAS_STATIC_BUILD_PNG_TRUE@am__append_80 = ../modules/savers/png ../modules/loaders/png |
134 | @EVAS_STATIC_BUILD_PSD_TRUE@am__append_81 = ../modules/loaders/psd/libevas_loader_psd.la | 134 | @EVAS_STATIC_BUILD_PNG_TRUE@am__append_81 = ../modules/savers/png/libevas_saver_png.la ../modules/loaders/png/libevas_loader_png.la |
135 | @EVAS_STATIC_BUILD_PSD_TRUE@am__append_82 = @evas_image_loader_psd_libs@ | 135 | @EVAS_STATIC_BUILD_PNG_TRUE@am__append_82 = @evas_image_loader_png_libs@ |
136 | @EVAS_STATIC_BUILD_SVG_TRUE@am__append_83 = ../modules/loaders/svg | 136 | @EVAS_STATIC_BUILD_PSD_TRUE@am__append_83 = ../modules/loaders/psd |
137 | @EVAS_STATIC_BUILD_SVG_TRUE@am__append_84 = ../modules/loaders/svg/libevas_loader_svg.la | 137 | @EVAS_STATIC_BUILD_PSD_TRUE@am__append_84 = ../modules/loaders/psd/libevas_loader_psd.la |
138 | @EVAS_STATIC_BUILD_SVG_TRUE@am__append_85 = @evas_image_loader_svg_libs@ | 138 | @EVAS_STATIC_BUILD_PSD_TRUE@am__append_85 = @evas_image_loader_psd_libs@ |
139 | @EVAS_STATIC_BUILD_TGA_TRUE@am__append_86 = ../modules/loaders/tga | 139 | @EVAS_STATIC_BUILD_SVG_TRUE@am__append_86 = ../modules/loaders/svg |
140 | @EVAS_STATIC_BUILD_TGA_TRUE@am__append_87 = ../modules/loaders/tga/libevas_loader_tga.la | 140 | @EVAS_STATIC_BUILD_SVG_TRUE@am__append_87 = ../modules/loaders/svg/libevas_loader_svg.la |
141 | @EVAS_STATIC_BUILD_TGA_TRUE@am__append_88 = @evas_image_loader_tga_libs@ | 141 | @EVAS_STATIC_BUILD_SVG_TRUE@am__append_88 = @evas_image_loader_svg_libs@ |
142 | @EVAS_STATIC_BUILD_TIFF_TRUE@am__append_89 = ../modules/savers/tiff ../modules/loaders/tiff | 142 | @EVAS_STATIC_BUILD_TGA_TRUE@am__append_89 = ../modules/loaders/tga |
143 | @EVAS_STATIC_BUILD_TIFF_TRUE@am__append_90 = ../modules/savers/tiff/libevas_saver_tiff.la ../modules/loaders/tiff/libevas_loader_tiff.la | 143 | @EVAS_STATIC_BUILD_TGA_TRUE@am__append_90 = ../modules/loaders/tga/libevas_loader_tga.la |
144 | @EVAS_STATIC_BUILD_TIFF_TRUE@am__append_91 = @evas_image_loader_tiff_libs@ | 144 | @EVAS_STATIC_BUILD_TGA_TRUE@am__append_91 = @evas_image_loader_tga_libs@ |
145 | @EVAS_STATIC_BUILD_WBMP_TRUE@am__append_92 = ../modules/loaders/wbmp | 145 | @EVAS_STATIC_BUILD_TIFF_TRUE@am__append_92 = ../modules/savers/tiff ../modules/loaders/tiff |
146 | @EVAS_STATIC_BUILD_WBMP_TRUE@am__append_93 = ../modules/loaders/wbmp/libevas_loader_wbmp.la | 146 | @EVAS_STATIC_BUILD_TIFF_TRUE@am__append_93 = ../modules/savers/tiff/libevas_saver_tiff.la ../modules/loaders/tiff/libevas_loader_tiff.la |
147 | @EVAS_STATIC_BUILD_WBMP_TRUE@am__append_94 = @evas_image_loader_wbmp_libs@ | 147 | @EVAS_STATIC_BUILD_TIFF_TRUE@am__append_94 = @evas_image_loader_tiff_libs@ |
148 | @EVAS_STATIC_BUILD_XPM_TRUE@am__append_95 = ../modules/loaders/xpm | 148 | @EVAS_STATIC_BUILD_WBMP_TRUE@am__append_95 = ../modules/loaders/wbmp |
149 | @EVAS_STATIC_BUILD_XPM_TRUE@am__append_96 = ../modules/loaders/xpm/libevas_loader_xpm.la | 149 | @EVAS_STATIC_BUILD_WBMP_TRUE@am__append_96 = ../modules/loaders/wbmp/libevas_loader_wbmp.la |
150 | @EVAS_STATIC_BUILD_XPM_TRUE@am__append_97 = @evas_image_loader_xpm_libs@ | 150 | @EVAS_STATIC_BUILD_WBMP_TRUE@am__append_97 = @evas_image_loader_wbmp_libs@ |
151 | @BUILD_ENGINE_SOFTWARE_16_TRUE@am__append_98 = engines/common_16/libevas_engine_common_16.la | 151 | @EVAS_STATIC_BUILD_XPM_TRUE@am__append_98 = ../modules/loaders/xpm |
152 | @BUILD_ENGINE_SOFTWARE_16_TRUE@am__append_99 = engines/common_16/libevas_engine_common_16.la | 152 | @EVAS_STATIC_BUILD_XPM_TRUE@am__append_99 = ../modules/loaders/xpm/libevas_loader_xpm.la |
153 | @BUILD_ENGINE_SOFTWARE_8_TRUE@am__append_100 = engines/common_8/libevas_engine_common_8.la | 153 | @EVAS_STATIC_BUILD_XPM_TRUE@am__append_100 = @evas_image_loader_xpm_libs@ |
154 | @BUILD_ENGINE_SOFTWARE_8_TRUE@am__append_101 = engines/common_8/libevas_engine_common_8.la | 154 | @BUILD_ENGINE_SOFTWARE_16_TRUE@am__append_101 = engines/common_16/libevas_engine_common_16.la |
155 | @BUILD_ENGINE_SOFTWARE_16_TRUE@am__append_102 = engines/common_16/libevas_engine_common_16.la | ||
156 | @BUILD_ENGINE_SOFTWARE_8_TRUE@am__append_103 = engines/common_8/libevas_engine_common_8.la | ||
157 | @BUILD_ENGINE_SOFTWARE_8_TRUE@am__append_104 = engines/common_8/libevas_engine_common_8.la | ||
155 | subdir = src/lib | 158 | subdir = src/lib |
156 | DIST_COMMON = $(includes_HEADERS) $(srcdir)/Makefile.am \ | 159 | DIST_COMMON = $(includes_HEADERS) $(srcdir)/Makefile.am \ |
157 | $(srcdir)/Makefile.in | 160 | $(srcdir)/Makefile.in |
@@ -213,7 +216,7 @@ am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ | |||
213 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ | 216 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ |
214 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ | 217 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ |
215 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ | 218 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ |
216 | $(am__DEPENDENCIES_1) | 219 | $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) |
217 | am_libevas_la_OBJECTS = main.lo | 220 | am_libevas_la_OBJECTS = main.lo |
218 | libevas_la_OBJECTS = $(am_libevas_la_OBJECTS) | 221 | libevas_la_OBJECTS = $(am_libevas_la_OBJECTS) |
219 | AM_V_lt = $(am__v_lt_$(V)) | 222 | AM_V_lt = $(am__v_lt_$(V)) |
@@ -393,8 +396,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
393 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 396 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
394 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 397 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
395 | PKG_CONFIG = @PKG_CONFIG@ | 398 | PKG_CONFIG = @PKG_CONFIG@ |
396 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
397 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
398 | PNG_CFLAGS = @PNG_CFLAGS@ | 399 | PNG_CFLAGS = @PNG_CFLAGS@ |
399 | PNG_LIBS = @PNG_LIBS@ | 400 | PNG_LIBS = @PNG_LIBS@ |
400 | RANLIB = @RANLIB@ | 401 | RANLIB = @RANLIB@ |
@@ -411,6 +412,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
411 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 412 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
412 | VERSION = @VERSION@ | 413 | VERSION = @VERSION@ |
413 | VMAJ = @VMAJ@ | 414 | VMAJ = @VMAJ@ |
415 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
416 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
414 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 417 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
415 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 418 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
416 | XCB_CFLAGS = @XCB_CFLAGS@ | 419 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -492,6 +495,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
492 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 495 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
493 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 496 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
494 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 497 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
498 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
499 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
500 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
501 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
495 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 502 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
496 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 503 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
497 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 504 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
@@ -576,9 +583,10 @@ SUBDIRS = canvas cache cserve file engines include $(am__append_1) \ | |||
576 | $(am__append_45) $(am__append_48) $(am__append_51) \ | 583 | $(am__append_45) $(am__append_48) $(am__append_51) \ |
577 | $(am__append_54) $(am__append_57) $(am__append_60) \ | 584 | $(am__append_54) $(am__append_57) $(am__append_60) \ |
578 | $(am__append_63) $(am__append_66) $(am__append_69) \ | 585 | $(am__append_63) $(am__append_66) $(am__append_69) \ |
579 | $(am__append_71) $(am__append_74) $(am__append_77) \ | 586 | $(am__append_72) $(am__append_74) $(am__append_77) \ |
580 | $(am__append_80) $(am__append_83) $(am__append_86) \ | 587 | $(am__append_80) $(am__append_83) $(am__append_86) \ |
581 | $(am__append_89) $(am__append_92) $(am__append_95) | 588 | $(am__append_89) $(am__append_92) $(am__append_95) \ |
589 | $(am__append_98) | ||
582 | EVAS_STATIC_MODULE = $(am__append_2) $(am__append_4) $(am__append_6) \ | 590 | EVAS_STATIC_MODULE = $(am__append_2) $(am__append_4) $(am__append_6) \ |
583 | $(am__append_9) $(am__append_12) $(am__append_15) \ | 591 | $(am__append_9) $(am__append_12) $(am__append_15) \ |
584 | $(am__append_18) $(am__append_21) $(am__append_24) \ | 592 | $(am__append_18) $(am__append_21) $(am__append_24) \ |
@@ -587,20 +595,20 @@ EVAS_STATIC_MODULE = $(am__append_2) $(am__append_4) $(am__append_6) \ | |||
587 | $(am__append_43) $(am__append_46) $(am__append_49) \ | 595 | $(am__append_43) $(am__append_46) $(am__append_49) \ |
588 | $(am__append_52) $(am__append_55) $(am__append_58) \ | 596 | $(am__append_52) $(am__append_55) $(am__append_58) \ |
589 | $(am__append_61) $(am__append_64) $(am__append_67) \ | 597 | $(am__append_61) $(am__append_64) $(am__append_67) \ |
590 | $(am__append_70) $(am__append_72) $(am__append_75) \ | 598 | $(am__append_70) $(am__append_73) $(am__append_75) \ |
591 | $(am__append_78) $(am__append_81) $(am__append_84) \ | 599 | $(am__append_78) $(am__append_81) $(am__append_84) \ |
592 | $(am__append_87) $(am__append_90) $(am__append_93) \ | 600 | $(am__append_87) $(am__append_90) $(am__append_93) \ |
593 | $(am__append_96) | 601 | $(am__append_96) $(am__append_99) |
594 | EVAS_STATIC_LIBADD = $(am__append_7) $(am__append_10) $(am__append_13) \ | 602 | EVAS_STATIC_LIBADD = $(am__append_7) $(am__append_10) $(am__append_13) \ |
595 | $(am__append_16) $(am__append_19) $(am__append_22) \ | 603 | $(am__append_16) $(am__append_19) $(am__append_22) \ |
596 | $(am__append_27) $(am__append_30) $(am__append_33) \ | 604 | $(am__append_27) $(am__append_30) $(am__append_33) \ |
597 | $(am__append_38) $(am__append_41) $(am__append_44) \ | 605 | $(am__append_38) $(am__append_41) $(am__append_44) \ |
598 | $(am__append_47) $(am__append_50) $(am__append_53) \ | 606 | $(am__append_47) $(am__append_50) $(am__append_53) \ |
599 | $(am__append_56) $(am__append_59) $(am__append_62) \ | 607 | $(am__append_56) $(am__append_59) $(am__append_62) \ |
600 | $(am__append_65) $(am__append_68) $(am__append_73) \ | 608 | $(am__append_65) $(am__append_68) $(am__append_71) \ |
601 | $(am__append_76) $(am__append_79) $(am__append_82) \ | 609 | $(am__append_76) $(am__append_79) $(am__append_82) \ |
602 | $(am__append_85) $(am__append_88) $(am__append_91) \ | 610 | $(am__append_85) $(am__append_88) $(am__append_91) \ |
603 | $(am__append_94) $(am__append_97) | 611 | $(am__append_94) $(am__append_97) $(am__append_100) |
604 | AM_CPPFLAGS = \ | 612 | AM_CPPFLAGS = \ |
605 | -I. \ | 613 | -I. \ |
606 | -I$(top_srcdir)/src/lib \ | 614 | -I$(top_srcdir)/src/lib \ |
@@ -619,10 +627,7 @@ AM_CPPFLAGS = \ | |||
619 | 627 | ||
620 | AM_CFLAGS = @WIN32_CFLAGS@ | 628 | AM_CFLAGS = @WIN32_CFLAGS@ |
621 | lib_LTLIBRARIES = libevas.la | 629 | lib_LTLIBRARIES = libevas.la |
622 | 630 | includes_HEADERS = Evas.h Evas_GL.h | |
623 | ### Evas_GL disabled for 1.1 | ||
624 | #includes_HEADERS = Evas.h Evas_GL.h | ||
625 | includes_HEADERS = Evas.h | ||
626 | includesdir = $(includedir)/evas-@VMAJ@ | 631 | includesdir = $(includedir)/evas-@VMAJ@ |
627 | libevas_la_SOURCES = main.c | 632 | libevas_la_SOURCES = main.c |
628 | @EVAS_CSERVE_TRUE@libevas_cserve_la = cserve/libevas_cserve.la | 633 | @EVAS_CSERVE_TRUE@libevas_cserve_la = cserve/libevas_cserve.la |
@@ -631,12 +636,12 @@ libevas_la_LIBADD = canvas/libevas_canvas.la file/libevas_file.la \ | |||
631 | engines/common/libevas_engine_common.la @FREETYPE_LIBS@ \ | 636 | engines/common/libevas_engine_common.la @FREETYPE_LIBS@ \ |
632 | @FRIBIDI_LIBS@ @HARFBUZZ_LIBS@ @EET_LIBS@ @FONTCONFIG_LIBS@ \ | 637 | @FRIBIDI_LIBS@ @HARFBUZZ_LIBS@ @EET_LIBS@ @FONTCONFIG_LIBS@ \ |
633 | @pthread_libs@ @EINA_LIBS@ $(EVAS_STATIC_MODULE) \ | 638 | @pthread_libs@ @EINA_LIBS@ $(EVAS_STATIC_MODULE) \ |
634 | $(EVAS_STATIC_LIBADD) @PIXMAN_LIBS@ -lm $(am__append_98) \ | 639 | $(EVAS_STATIC_LIBADD) @PIXMAN_LIBS@ -lm $(am__append_101) \ |
635 | $(am__append_100) | 640 | $(am__append_103) |
636 | libevas_la_DEPENDENCIES = canvas/libevas_canvas.la \ | 641 | libevas_la_DEPENDENCIES = canvas/libevas_canvas.la \ |
637 | file/libevas_file.la cache/libevas_cache.la \ | 642 | file/libevas_file.la cache/libevas_cache.la \ |
638 | $(libevas_cserve_la) engines/common/libevas_engine_common.la \ | 643 | $(libevas_cserve_la) engines/common/libevas_engine_common.la \ |
639 | $(EVAS_STATIC_MODULE) $(am__append_99) $(am__append_101) | 644 | $(EVAS_STATIC_MODULE) $(am__append_102) $(am__append_104) |
640 | libevas_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@ @release_info@ | 645 | libevas_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@ @release_info@ |
641 | 646 | ||
642 | ### Evas_GL we are still using it in our code, so just don't install it. | 647 | ### Evas_GL we are still using it in our code, so just don't install it. |
diff --git a/libraries/evas/src/lib/cache/Makefile.in b/libraries/evas/src/lib/cache/Makefile.in index b024731..2b50c81 100644 --- a/libraries/evas/src/lib/cache/Makefile.in +++ b/libraries/evas/src/lib/cache/Makefile.in | |||
@@ -197,8 +197,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
197 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 197 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
198 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 198 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
199 | PKG_CONFIG = @PKG_CONFIG@ | 199 | PKG_CONFIG = @PKG_CONFIG@ |
200 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
201 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
202 | PNG_CFLAGS = @PNG_CFLAGS@ | 200 | PNG_CFLAGS = @PNG_CFLAGS@ |
203 | PNG_LIBS = @PNG_LIBS@ | 201 | PNG_LIBS = @PNG_LIBS@ |
204 | RANLIB = @RANLIB@ | 202 | RANLIB = @RANLIB@ |
@@ -215,6 +213,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
215 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 213 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
216 | VERSION = @VERSION@ | 214 | VERSION = @VERSION@ |
217 | VMAJ = @VMAJ@ | 215 | VMAJ = @VMAJ@ |
216 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
217 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
218 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 218 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
219 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 219 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
220 | XCB_CFLAGS = @XCB_CFLAGS@ | 220 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -296,6 +296,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
296 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 296 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
297 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 297 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
298 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 298 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
299 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
300 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
301 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
302 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
299 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 303 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
300 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 304 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
301 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 305 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/cache/evas_cache_engine_image.c b/libraries/evas/src/lib/cache/evas_cache_engine_image.c index 8ae4392..5ec1af2 100644 --- a/libraries/evas/src/lib/cache/evas_cache_engine_image.c +++ b/libraries/evas/src/lib/cache/evas_cache_engine_image.c | |||
@@ -1,3 +1,7 @@ | |||
1 | #ifdef HAVE_CONFIG_H | ||
2 | # include <config.h> | ||
3 | #endif | ||
4 | |||
1 | #include <assert.h> | 5 | #include <assert.h> |
2 | 6 | ||
3 | #include "evas_common.h" | 7 | #include "evas_common.h" |
diff --git a/libraries/evas/src/lib/cache/evas_cache_image.c b/libraries/evas/src/lib/cache/evas_cache_image.c index d52c64e..73e4f8a 100644 --- a/libraries/evas/src/lib/cache/evas_cache_image.c +++ b/libraries/evas/src/lib/cache/evas_cache_image.c | |||
@@ -918,12 +918,8 @@ evas_cache_image_drop(Image_Entry *im) | |||
918 | EAPI void | 918 | EAPI void |
919 | evas_cache_image_data_not_needed(Image_Entry *im) | 919 | evas_cache_image_data_not_needed(Image_Entry *im) |
920 | { | 920 | { |
921 | Evas_Cache_Image *cache; | ||
922 | int references; | 921 | int references; |
923 | 922 | ||
924 | /* FIXME: no one uses this api... well evas_cache_engine_parent_not_needed() | ||
925 | * does, but nothing uses that! */ | ||
926 | cache = im->cache; | ||
927 | #ifdef EVAS_FRAME_QUEUING | 923 | #ifdef EVAS_FRAME_QUEUING |
928 | LKL(im->lock_references); | 924 | LKL(im->lock_references); |
929 | #endif | 925 | #endif |
@@ -941,11 +937,12 @@ evas_cache_image_dirty(Image_Entry *im, unsigned int x, unsigned int y, unsigned | |||
941 | { | 937 | { |
942 | Image_Entry *im_dirty = im; | 938 | Image_Entry *im_dirty = im; |
943 | Evas_Cache_Image *cache; | 939 | Evas_Cache_Image *cache; |
944 | int references; | ||
945 | 940 | ||
946 | cache = im->cache; | 941 | cache = im->cache; |
947 | if (!(im->flags.dirty)) | 942 | if (!(im->flags.dirty)) |
948 | { | 943 | { |
944 | #ifndef EVAS_CSERVE | ||
945 | int references; | ||
949 | #ifdef EVAS_FRAME_QUEUING | 946 | #ifdef EVAS_FRAME_QUEUING |
950 | LKL(im->lock_references); | 947 | LKL(im->lock_references); |
951 | #endif | 948 | #endif |
@@ -953,21 +950,18 @@ evas_cache_image_dirty(Image_Entry *im, unsigned int x, unsigned int y, unsigned | |||
953 | #ifdef EVAS_FRAME_QUEUING | 950 | #ifdef EVAS_FRAME_QUEUING |
954 | LKU(im->lock_references); | 951 | LKU(im->lock_references); |
955 | #endif | 952 | #endif |
956 | #ifndef EVAS_CSERVE | ||
957 | // if ref 1 also copy if using shared cache as its read-only | 953 | // if ref 1 also copy if using shared cache as its read-only |
958 | if (references == 1) im_dirty = im; | 954 | if (references == 1) im_dirty = im; |
959 | else | 955 | else |
960 | #endif | 956 | #endif |
961 | { | 957 | { |
962 | int error; | ||
963 | |||
964 | im_dirty = | 958 | im_dirty = |
965 | evas_cache_image_copied_data(cache, im->w, im->h, | 959 | evas_cache_image_copied_data(cache, im->w, im->h, |
966 | evas_cache_image_pixels(im), | 960 | evas_cache_image_pixels(im), |
967 | im->flags.alpha, im->space); | 961 | im->flags.alpha, im->space); |
968 | if (!im_dirty) goto on_error; | 962 | if (!im_dirty) goto on_error; |
969 | if (cache->func.debug) cache->func.debug("dirty-src", im); | 963 | if (cache->func.debug) cache->func.debug("dirty-src", im); |
970 | error = cache->func.dirty(im_dirty, im); | 964 | cache->func.dirty(im_dirty, im); |
971 | if (cache->func.debug) cache->func.debug("dirty-out", im_dirty); | 965 | if (cache->func.debug) cache->func.debug("dirty-out", im_dirty); |
972 | #ifdef EVAS_FRAME_QUEUING | 966 | #ifdef EVAS_FRAME_QUEUING |
973 | LKL(im_dirty->lock_references); | 967 | LKL(im_dirty->lock_references); |
@@ -1014,15 +1008,13 @@ evas_cache_image_alone(Image_Entry *im) | |||
1014 | } | 1008 | } |
1015 | else | 1009 | else |
1016 | { | 1010 | { |
1017 | int error; | ||
1018 | |||
1019 | im_dirty = evas_cache_image_copied_data(cache, im->w, im->h, | 1011 | im_dirty = evas_cache_image_copied_data(cache, im->w, im->h, |
1020 | evas_cache_image_pixels(im), | 1012 | evas_cache_image_pixels(im), |
1021 | im->flags.alpha, | 1013 | im->flags.alpha, |
1022 | im->space); | 1014 | im->space); |
1023 | if (!im_dirty) goto on_error; | 1015 | if (!im_dirty) goto on_error; |
1024 | if (cache->func.debug) cache->func.debug("dirty-src", im); | 1016 | if (cache->func.debug) cache->func.debug("dirty-src", im); |
1025 | error = cache->func.dirty(im_dirty, im); | 1017 | cache->func.dirty(im_dirty, im); |
1026 | if (cache->func.debug) cache->func.debug("dirty-out", im_dirty); | 1018 | if (cache->func.debug) cache->func.debug("dirty-out", im_dirty); |
1027 | #ifdef EVAS_FRAME_QUEUING | 1019 | #ifdef EVAS_FRAME_QUEUING |
1028 | LKL(im_dirty->lock_references); | 1020 | LKL(im_dirty->lock_references); |
@@ -1296,6 +1288,7 @@ evas_cache_image_preload_cancel(Image_Entry *im, const void *target) | |||
1296 | _evas_cache_image_entry_preload_remove(im, target); | 1288 | _evas_cache_image_entry_preload_remove(im, target); |
1297 | #else | 1289 | #else |
1298 | (void)im; | 1290 | (void)im; |
1291 | (void)target; | ||
1299 | #endif | 1292 | #endif |
1300 | } | 1293 | } |
1301 | 1294 | ||
diff --git a/libraries/evas/src/lib/cache/evas_preload.c b/libraries/evas/src/lib/cache/evas_preload.c index 6e0412a..5eebaed 100644 --- a/libraries/evas/src/lib/cache/evas_preload.c +++ b/libraries/evas/src/lib/cache/evas_preload.c | |||
@@ -225,6 +225,7 @@ evas_preload_thread_run(void (*func_heavy) (void *data), | |||
225 | If no thread and as we don't want to break app that rely on this | 225 | If no thread and as we don't want to break app that rely on this |
226 | facility, we will lock the interface until we are done. | 226 | facility, we will lock the interface until we are done. |
227 | */ | 227 | */ |
228 | (void)func_cancel; | ||
228 | func_heavy((void *)data); | 229 | func_heavy((void *)data); |
229 | func_end((void *)data); | 230 | func_end((void *)data); |
230 | return (void *)1; | 231 | return (void *)1; |
@@ -253,12 +254,13 @@ evas_preload_thread_cancel(Evas_Preload_Pthread *thread) | |||
253 | } | 254 | } |
254 | } | 255 | } |
255 | LKU(_mutex); | 256 | LKU(_mutex); |
256 | 257 | ||
257 | /* Delay the destruction */ | 258 | /* Delay the destruction */ |
258 | work = (Evas_Preload_Pthread_Worker *)thread; | 259 | work = (Evas_Preload_Pthread_Worker *)thread; |
259 | work->cancel = EINA_TRUE; | 260 | work->cancel = EINA_TRUE; |
260 | return EINA_FALSE; | 261 | return EINA_FALSE; |
261 | #else | 262 | #else |
263 | (void) thread; | ||
262 | return EINA_TRUE; | 264 | return EINA_TRUE; |
263 | #endif | 265 | #endif |
264 | } | 266 | } |
diff --git a/libraries/evas/src/lib/canvas/Makefile.in b/libraries/evas/src/lib/canvas/Makefile.in index 0b4e15d..75da67a 100644 --- a/libraries/evas/src/lib/canvas/Makefile.in +++ b/libraries/evas/src/lib/canvas/Makefile.in | |||
@@ -211,8 +211,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
211 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 211 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
212 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 212 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
213 | PKG_CONFIG = @PKG_CONFIG@ | 213 | PKG_CONFIG = @PKG_CONFIG@ |
214 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
215 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
216 | PNG_CFLAGS = @PNG_CFLAGS@ | 214 | PNG_CFLAGS = @PNG_CFLAGS@ |
217 | PNG_LIBS = @PNG_LIBS@ | 215 | PNG_LIBS = @PNG_LIBS@ |
218 | RANLIB = @RANLIB@ | 216 | RANLIB = @RANLIB@ |
@@ -229,6 +227,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
229 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 227 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
230 | VERSION = @VERSION@ | 228 | VERSION = @VERSION@ |
231 | VMAJ = @VMAJ@ | 229 | VMAJ = @VMAJ@ |
230 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
231 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
232 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 232 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
233 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 233 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
234 | XCB_CFLAGS = @XCB_CFLAGS@ | 234 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -310,6 +310,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
310 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 310 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
311 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 311 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
312 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 312 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
313 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
314 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
315 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
316 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
313 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 317 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
314 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 318 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
315 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 319 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/canvas/evas_callbacks.c b/libraries/evas/src/lib/canvas/evas_callbacks.c index 33b93bc..93f34f2 100644 --- a/libraries/evas/src/lib/canvas/evas_callbacks.c +++ b/libraries/evas/src/lib/canvas/evas_callbacks.c | |||
@@ -23,7 +23,7 @@ _evas_post_event_callback_call(Evas *e) | |||
23 | { | 23 | { |
24 | if (!pc->func((void*)pc->data, e)) skip = 1; | 24 | if (!pc->func((void*)pc->data, e)) skip = 1; |
25 | } | 25 | } |
26 | EVAS_MEMPOOL_FREE(_mp_pc, pc); | 26 | EVAS_MEMPOOL_FREE(_mp_pc, pc); |
27 | } | 27 | } |
28 | _evas_unwalk(e); | 28 | _evas_unwalk(e); |
29 | } | 29 | } |
@@ -32,10 +32,10 @@ void | |||
32 | _evas_post_event_callback_free(Evas *e) | 32 | _evas_post_event_callback_free(Evas *e) |
33 | { | 33 | { |
34 | Evas_Post_Callback *pc; | 34 | Evas_Post_Callback *pc; |
35 | 35 | ||
36 | EINA_LIST_FREE(e->post_events, pc) | 36 | EINA_LIST_FREE(e->post_events, pc) |
37 | { | 37 | { |
38 | EVAS_MEMPOOL_FREE(_mp_pc, pc); | 38 | EVAS_MEMPOOL_FREE(_mp_pc, pc); |
39 | } | 39 | } |
40 | _evas_unwalk(e); | 40 | _evas_unwalk(e); |
41 | } | 41 | } |
@@ -48,15 +48,15 @@ evas_event_callback_list_post_free(Eina_Inlist **list) | |||
48 | /* MEM OK */ | 48 | /* MEM OK */ |
49 | for (l = *list; l;) | 49 | for (l = *list; l;) |
50 | { | 50 | { |
51 | Evas_Func_Node *fn; | 51 | Evas_Func_Node *fn; |
52 | 52 | ||
53 | fn = (Evas_Func_Node *)l; | 53 | fn = (Evas_Func_Node *)l; |
54 | l = l->next; | 54 | l = l->next; |
55 | if (fn->delete_me) | 55 | if (fn->delete_me) |
56 | { | 56 | { |
57 | *list = eina_inlist_remove(*list, EINA_INLIST_GET(fn)); | 57 | *list = eina_inlist_remove(*list, EINA_INLIST_GET(fn)); |
58 | EVAS_MEMPOOL_FREE(_mp_fn, fn); | 58 | EVAS_MEMPOOL_FREE(_mp_fn, fn); |
59 | } | 59 | } |
60 | } | 60 | } |
61 | } | 61 | } |
62 | 62 | ||
@@ -70,7 +70,7 @@ evas_object_event_callback_clear(Evas_Object *obj) | |||
70 | if (!obj->callbacks->callbacks) | 70 | if (!obj->callbacks->callbacks) |
71 | { | 71 | { |
72 | EVAS_MEMPOOL_FREE(_mp_cb, obj->callbacks); | 72 | EVAS_MEMPOOL_FREE(_mp_cb, obj->callbacks); |
73 | obj->callbacks = NULL; | 73 | obj->callbacks = NULL; |
74 | } | 74 | } |
75 | } | 75 | } |
76 | 76 | ||
@@ -84,7 +84,7 @@ evas_event_callback_clear(Evas *e) | |||
84 | if (!e->callbacks->callbacks) | 84 | if (!e->callbacks->callbacks) |
85 | { | 85 | { |
86 | EVAS_MEMPOOL_FREE(_mp_cb, e->callbacks); | 86 | EVAS_MEMPOOL_FREE(_mp_cb, e->callbacks); |
87 | e->callbacks = NULL; | 87 | e->callbacks = NULL; |
88 | } | 88 | } |
89 | } | 89 | } |
90 | 90 | ||
@@ -95,7 +95,7 @@ evas_object_event_callback_all_del(Evas_Object *obj) | |||
95 | 95 | ||
96 | if (!obj->callbacks) return; | 96 | if (!obj->callbacks) return; |
97 | EINA_INLIST_FOREACH(obj->callbacks->callbacks, fn) | 97 | EINA_INLIST_FOREACH(obj->callbacks->callbacks, fn) |
98 | fn->delete_me = 1; | 98 | fn->delete_me = 1; |
99 | } | 99 | } |
100 | 100 | ||
101 | void | 101 | void |
@@ -115,7 +115,7 @@ evas_event_callback_all_del(Evas *e) | |||
115 | 115 | ||
116 | if (!e->callbacks) return; | 116 | if (!e->callbacks) return; |
117 | EINA_INLIST_FOREACH(e->callbacks->callbacks, fn) | 117 | EINA_INLIST_FOREACH(e->callbacks->callbacks, fn) |
118 | fn->delete_me = 1; | 118 | fn->delete_me = 1; |
119 | } | 119 | } |
120 | 120 | ||
121 | void | 121 | void |
@@ -136,25 +136,25 @@ evas_event_callback_call(Evas *e, Evas_Callback_Type type, void *event_info) | |||
136 | _evas_walk(e); | 136 | _evas_walk(e); |
137 | if (e->callbacks) | 137 | if (e->callbacks) |
138 | { | 138 | { |
139 | l_mod = &e->callbacks->callbacks; | 139 | l_mod = &e->callbacks->callbacks; |
140 | e->callbacks->walking_list++; | 140 | e->callbacks->walking_list++; |
141 | for (l = *l_mod; l; l = l->next) | 141 | for (l = *l_mod; l; l = l->next) |
142 | { | 142 | { |
143 | Evas_Func_Node *fn; | 143 | Evas_Func_Node *fn; |
144 | 144 | ||
145 | fn = (Evas_Func_Node *)l; | 145 | fn = (Evas_Func_Node *)l; |
146 | if ((fn->type == type) && (!fn->delete_me)) | 146 | if ((fn->type == type) && (!fn->delete_me)) |
147 | { | 147 | { |
148 | Evas_Event_Cb func = fn->func; | 148 | Evas_Event_Cb func = fn->func; |
149 | if (func) | 149 | if (func) |
150 | func(fn->data, e, event_info); | 150 | func(fn->data, e, event_info); |
151 | } | 151 | } |
152 | if (e->delete_me) break; | 152 | if (e->delete_me) break; |
153 | } | 153 | } |
154 | e->callbacks->walking_list--; | 154 | e->callbacks->walking_list--; |
155 | if (!e->callbacks->walking_list) | 155 | if (!e->callbacks->walking_list) |
156 | { | 156 | { |
157 | evas_event_callback_clear(e); | 157 | evas_event_callback_clear(e); |
158 | l_mod = NULL; | 158 | l_mod = NULL; |
159 | } | 159 | } |
160 | } | 160 | } |
@@ -162,7 +162,7 @@ evas_event_callback_call(Evas *e, Evas_Callback_Type type, void *event_info) | |||
162 | } | 162 | } |
163 | 163 | ||
164 | void | 164 | void |
165 | evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void *event_info) | 165 | evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void *event_info, int event_id) |
166 | { | 166 | { |
167 | /* MEM OK */ | 167 | /* MEM OK */ |
168 | Eina_Inlist **l_mod = NULL, *l; | 168 | Eina_Inlist **l_mod = NULL, *l; |
@@ -170,67 +170,67 @@ evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void | |||
170 | Evas *e; | 170 | Evas *e; |
171 | 171 | ||
172 | if ((obj->delete_me) || (!obj->layer)) return; | 172 | if ((obj->delete_me) || (!obj->layer)) return; |
173 | if ((obj->last_event == _evas_event_counter) && | 173 | if ((obj->last_event == event_id) && |
174 | (obj->last_event_type == type)) return; | 174 | (obj->last_event_type == type)) return; |
175 | obj->last_event = _evas_event_counter; | 175 | obj->last_event = event_id; |
176 | obj->last_event_type = type; | 176 | obj->last_event_type = type; |
177 | if (!(e = obj->layer->evas)) return; | 177 | if (!(e = obj->layer->evas)) return; |
178 | 178 | ||
179 | _evas_walk(e); | 179 | _evas_walk(e); |
180 | if (obj->callbacks) | 180 | if (obj->callbacks) |
181 | { | 181 | { |
182 | l_mod = &obj->callbacks->callbacks; | 182 | l_mod = &obj->callbacks->callbacks; |
183 | switch (type) | 183 | switch (type) |
184 | { | 184 | { |
185 | case EVAS_CALLBACK_MOUSE_DOWN: | 185 | case EVAS_CALLBACK_MOUSE_DOWN: |
186 | { | 186 | { |
187 | Evas_Event_Mouse_Down *ev = event_info; | 187 | Evas_Event_Mouse_Down *ev = event_info; |
188 | 188 | ||
189 | flags = ev->flags; | 189 | flags = ev->flags; |
190 | if (ev->flags & (EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK)) | 190 | if (ev->flags & (EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK)) |
191 | { | 191 | { |
192 | if (obj->last_mouse_down_counter < (e->last_mouse_down_counter - 1)) | 192 | if (obj->last_mouse_down_counter < (e->last_mouse_down_counter - 1)) |
193 | ev->flags &= ~(EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK); | 193 | ev->flags &= ~(EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK); |
194 | } | 194 | } |
195 | obj->last_mouse_down_counter = e->last_mouse_down_counter; | 195 | obj->last_mouse_down_counter = e->last_mouse_down_counter; |
196 | break; | 196 | break; |
197 | } | 197 | } |
198 | case EVAS_CALLBACK_MOUSE_UP: | 198 | case EVAS_CALLBACK_MOUSE_UP: |
199 | { | 199 | { |
200 | Evas_Event_Mouse_Up *ev = event_info; | 200 | Evas_Event_Mouse_Up *ev = event_info; |
201 | 201 | ||
202 | flags = ev->flags; | 202 | flags = ev->flags; |
203 | if (ev->flags & (EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK)) | 203 | if (ev->flags & (EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK)) |
204 | { | 204 | { |
205 | if (obj->last_mouse_up_counter < (e->last_mouse_up_counter - 1)) | 205 | if (obj->last_mouse_up_counter < (e->last_mouse_up_counter - 1)) |
206 | ev->flags &= ~(EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK); | 206 | ev->flags &= ~(EVAS_BUTTON_DOUBLE_CLICK | EVAS_BUTTON_TRIPLE_CLICK); |
207 | } | 207 | } |
208 | obj->last_mouse_up_counter = e->last_mouse_up_counter; | 208 | obj->last_mouse_up_counter = e->last_mouse_up_counter; |
209 | break; | 209 | break; |
210 | } | 210 | } |
211 | default: | 211 | default: |
212 | break; | 212 | break; |
213 | } | 213 | } |
214 | obj->callbacks->walking_list++; | 214 | obj->callbacks->walking_list++; |
215 | for (l = *l_mod; l; l = l->next) | 215 | for (l = *l_mod; l; l = l->next) |
216 | { | 216 | { |
217 | Evas_Func_Node *fn; | 217 | Evas_Func_Node *fn; |
218 | 218 | ||
219 | fn = (Evas_Func_Node *)l; | 219 | fn = (Evas_Func_Node *)l; |
220 | if ((fn->type == type) && (!fn->delete_me)) | 220 | if ((fn->type == type) && (!fn->delete_me)) |
221 | { | 221 | { |
222 | Evas_Object_Event_Cb func = fn->func; | 222 | Evas_Object_Event_Cb func = fn->func; |
223 | if (func) | 223 | if (func) |
224 | func(fn->data, obj->layer->evas, obj, event_info); | 224 | func(fn->data, obj->layer->evas, obj, event_info); |
225 | } | 225 | } |
226 | if (obj->delete_me) break; | 226 | if (obj->delete_me) break; |
227 | } | 227 | } |
228 | obj->callbacks->walking_list--; | 228 | obj->callbacks->walking_list--; |
229 | if (!obj->callbacks->walking_list) | 229 | if (!obj->callbacks->walking_list) |
230 | { | 230 | { |
231 | evas_object_event_callback_clear(obj); | 231 | evas_object_event_callback_clear(obj); |
232 | l_mod = NULL; | 232 | l_mod = NULL; |
233 | } | 233 | } |
234 | 234 | ||
235 | if (type == EVAS_CALLBACK_MOUSE_DOWN) | 235 | if (type == EVAS_CALLBACK_MOUSE_DOWN) |
236 | { | 236 | { |
@@ -246,12 +246,12 @@ evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void | |||
246 | 246 | ||
247 | if (!((obj->no_propagate) && (l_mod) && (*l_mod))) | 247 | if (!((obj->no_propagate) && (l_mod) && (*l_mod))) |
248 | { | 248 | { |
249 | if (!obj->no_propagate) | 249 | if (!obj->no_propagate) |
250 | { | 250 | { |
251 | if ((obj->smart.parent) && (type != EVAS_CALLBACK_FREE) && | 251 | if ((obj->smart.parent) && (type != EVAS_CALLBACK_FREE) && |
252 | (type <= EVAS_CALLBACK_KEY_UP)) | 252 | (type <= EVAS_CALLBACK_KEY_UP)) |
253 | evas_object_event_callback_call(obj->smart.parent, type, event_info); | 253 | evas_object_event_callback_call(obj->smart.parent, type, event_info, event_id); |
254 | } | 254 | } |
255 | } | 255 | } |
256 | _evas_unwalk(e); | 256 | _evas_unwalk(e); |
257 | } | 257 | } |
@@ -263,16 +263,16 @@ _callback_priority_cmp(const void *_a, const void *_b) | |||
263 | a = EINA_INLIST_CONTAINER_GET(_a, Evas_Func_Node); | 263 | a = EINA_INLIST_CONTAINER_GET(_a, Evas_Func_Node); |
264 | b = EINA_INLIST_CONTAINER_GET(_b, Evas_Func_Node); | 264 | b = EINA_INLIST_CONTAINER_GET(_b, Evas_Func_Node); |
265 | if (a->priority < b->priority) | 265 | if (a->priority < b->priority) |
266 | return -1; | 266 | return -1; |
267 | else | 267 | else |
268 | return 1; | 268 | return 1; |
269 | } | 269 | } |
270 | 270 | ||
271 | EAPI void | 271 | EAPI void |
272 | evas_object_event_callback_add(Evas_Object *obj, Evas_Callback_Type type, Evas_Object_Event_Cb func, const void *data) | 272 | evas_object_event_callback_add(Evas_Object *obj, Evas_Callback_Type type, Evas_Object_Event_Cb func, const void *data) |
273 | { | 273 | { |
274 | evas_object_event_callback_priority_add(obj, type, | 274 | evas_object_event_callback_priority_add(obj, type, |
275 | EVAS_CALLBACK_PRIORITY_DEFAULT, func, data); | 275 | EVAS_CALLBACK_PRIORITY_DEFAULT, func, data); |
276 | } | 276 | } |
277 | 277 | ||
278 | EAPI void | 278 | EAPI void |
@@ -294,7 +294,7 @@ evas_object_event_callback_priority_add(Evas_Object *obj, Evas_Callback_Type typ | |||
294 | if (!obj->callbacks) return; | 294 | if (!obj->callbacks) return; |
295 | EVAS_MEMPOOL_PREP(_mp_cb, obj->callbacks, Evas_Callbacks); | 295 | EVAS_MEMPOOL_PREP(_mp_cb, obj->callbacks, Evas_Callbacks); |
296 | } | 296 | } |
297 | 297 | ||
298 | EVAS_MEMPOOL_INIT(_mp_fn, "evas_func_node", Evas_Func_Node, 2048, ); | 298 | EVAS_MEMPOOL_INIT(_mp_fn, "evas_func_node", Evas_Func_Node, 2048, ); |
299 | fn = EVAS_MEMPOOL_ALLOC(_mp_fn, Evas_Func_Node); | 299 | fn = EVAS_MEMPOOL_ALLOC(_mp_fn, Evas_Func_Node); |
300 | if (!fn) return; | 300 | if (!fn) return; |
@@ -305,8 +305,8 @@ evas_object_event_callback_priority_add(Evas_Object *obj, Evas_Callback_Type typ | |||
305 | fn->priority = priority; | 305 | fn->priority = priority; |
306 | 306 | ||
307 | obj->callbacks->callbacks = | 307 | obj->callbacks->callbacks = |
308 | eina_inlist_sorted_insert(obj->callbacks->callbacks, EINA_INLIST_GET(fn), | 308 | eina_inlist_sorted_insert(obj->callbacks->callbacks, EINA_INLIST_GET(fn), |
309 | _callback_priority_cmp); | 309 | _callback_priority_cmp); |
310 | } | 310 | } |
311 | 311 | ||
312 | EAPI void * | 312 | EAPI void * |
@@ -325,17 +325,17 @@ evas_object_event_callback_del(Evas_Object *obj, Evas_Callback_Type type, Evas_O | |||
325 | 325 | ||
326 | EINA_INLIST_FOREACH(obj->callbacks->callbacks, fn) | 326 | EINA_INLIST_FOREACH(obj->callbacks->callbacks, fn) |
327 | { | 327 | { |
328 | if ((fn->func == func) && (fn->type == type) && (!fn->delete_me)) | 328 | if ((fn->func == func) && (fn->type == type) && (!fn->delete_me)) |
329 | { | 329 | { |
330 | void *tmp; | 330 | void *tmp; |
331 | 331 | ||
332 | tmp = fn->data; | 332 | tmp = fn->data; |
333 | fn->delete_me = 1; | 333 | fn->delete_me = 1; |
334 | obj->callbacks->deletions_waiting = 1; | 334 | obj->callbacks->deletions_waiting = 1; |
335 | if (!obj->callbacks->walking_list) | 335 | if (!obj->callbacks->walking_list) |
336 | evas_object_event_callback_clear(obj); | 336 | evas_object_event_callback_clear(obj); |
337 | return tmp; | 337 | return tmp; |
338 | } | 338 | } |
339 | } | 339 | } |
340 | return NULL; | 340 | return NULL; |
341 | } | 341 | } |
@@ -356,17 +356,17 @@ evas_object_event_callback_del_full(Evas_Object *obj, Evas_Callback_Type type, E | |||
356 | 356 | ||
357 | EINA_INLIST_FOREACH(obj->callbacks->callbacks, fn) | 357 | EINA_INLIST_FOREACH(obj->callbacks->callbacks, fn) |
358 | { | 358 | { |
359 | if ((fn->func == func) && (fn->type == type) && (fn->data == data) && (!fn->delete_me)) | 359 | if ((fn->func == func) && (fn->type == type) && (fn->data == data) && (!fn->delete_me)) |
360 | { | 360 | { |
361 | void *tmp; | 361 | void *tmp; |
362 | 362 | ||
363 | tmp = fn->data; | 363 | tmp = fn->data; |
364 | fn->delete_me = 1; | 364 | fn->delete_me = 1; |
365 | obj->callbacks->deletions_waiting = 1; | 365 | obj->callbacks->deletions_waiting = 1; |
366 | if (!obj->callbacks->walking_list) | 366 | if (!obj->callbacks->walking_list) |
367 | evas_object_event_callback_clear(obj); | 367 | evas_object_event_callback_clear(obj); |
368 | return tmp; | 368 | return tmp; |
369 | } | 369 | } |
370 | } | 370 | } |
371 | return NULL; | 371 | return NULL; |
372 | } | 372 | } |
@@ -375,7 +375,7 @@ EAPI void | |||
375 | evas_event_callback_add(Evas *e, Evas_Callback_Type type, Evas_Event_Cb func, const void *data) | 375 | evas_event_callback_add(Evas *e, Evas_Callback_Type type, Evas_Event_Cb func, const void *data) |
376 | { | 376 | { |
377 | evas_event_callback_priority_add(e, type, EVAS_CALLBACK_PRIORITY_DEFAULT, | 377 | evas_event_callback_priority_add(e, type, EVAS_CALLBACK_PRIORITY_DEFAULT, |
378 | func, data); | 378 | func, data); |
379 | } | 379 | } |
380 | 380 | ||
381 | EAPI void | 381 | EAPI void |
@@ -397,7 +397,7 @@ evas_event_callback_priority_add(Evas *e, Evas_Callback_Type type, Evas_Callback | |||
397 | if (!e->callbacks) return; | 397 | if (!e->callbacks) return; |
398 | EVAS_MEMPOOL_PREP(_mp_cb, e->callbacks, Evas_Callbacks); | 398 | EVAS_MEMPOOL_PREP(_mp_cb, e->callbacks, Evas_Callbacks); |
399 | } | 399 | } |
400 | 400 | ||
401 | EVAS_MEMPOOL_INIT(_mp_fn, "evas_func_node", Evas_Func_Node, 2048, ); | 401 | EVAS_MEMPOOL_INIT(_mp_fn, "evas_func_node", Evas_Func_Node, 2048, ); |
402 | fn = EVAS_MEMPOOL_ALLOC(_mp_fn, Evas_Func_Node); | 402 | fn = EVAS_MEMPOOL_ALLOC(_mp_fn, Evas_Func_Node); |
403 | if (!fn) return; | 403 | if (!fn) return; |
@@ -408,7 +408,7 @@ evas_event_callback_priority_add(Evas *e, Evas_Callback_Type type, Evas_Callback | |||
408 | fn->priority = priority; | 408 | fn->priority = priority; |
409 | 409 | ||
410 | e->callbacks->callbacks = eina_inlist_sorted_insert(e->callbacks->callbacks, | 410 | e->callbacks->callbacks = eina_inlist_sorted_insert(e->callbacks->callbacks, |
411 | EINA_INLIST_GET(fn), _callback_priority_cmp); | 411 | EINA_INLIST_GET(fn), _callback_priority_cmp); |
412 | } | 412 | } |
413 | 413 | ||
414 | EAPI void * | 414 | EAPI void * |
@@ -427,17 +427,17 @@ evas_event_callback_del(Evas *e, Evas_Callback_Type type, Evas_Event_Cb func) | |||
427 | 427 | ||
428 | EINA_INLIST_FOREACH(e->callbacks->callbacks, fn) | 428 | EINA_INLIST_FOREACH(e->callbacks->callbacks, fn) |
429 | { | 429 | { |
430 | if ((fn->func == func) && (fn->type == type) && (!fn->delete_me)) | 430 | if ((fn->func == func) && (fn->type == type) && (!fn->delete_me)) |
431 | { | 431 | { |
432 | void *data; | 432 | void *data; |
433 | 433 | ||
434 | data = fn->data; | 434 | data = fn->data; |
435 | fn->delete_me = 1; | 435 | fn->delete_me = 1; |
436 | e->callbacks->deletions_waiting = 1; | 436 | e->callbacks->deletions_waiting = 1; |
437 | if (!e->callbacks->walking_list) | 437 | if (!e->callbacks->walking_list) |
438 | evas_event_callback_clear(e); | 438 | evas_event_callback_clear(e); |
439 | return data; | 439 | return data; |
440 | } | 440 | } |
441 | } | 441 | } |
442 | return NULL; | 442 | return NULL; |
443 | } | 443 | } |
@@ -458,17 +458,17 @@ evas_event_callback_del_full(Evas *e, Evas_Callback_Type type, Evas_Event_Cb fun | |||
458 | 458 | ||
459 | EINA_INLIST_FOREACH(e->callbacks->callbacks, fn) | 459 | EINA_INLIST_FOREACH(e->callbacks->callbacks, fn) |
460 | { | 460 | { |
461 | if ((fn->func == func) && (fn->type == type) && (fn->data == data) && (!fn->delete_me)) | 461 | if ((fn->func == func) && (fn->type == type) && (fn->data == data) && (!fn->delete_me)) |
462 | { | 462 | { |
463 | void *tmp; | 463 | void *tmp; |
464 | 464 | ||
465 | tmp = fn->data; | 465 | tmp = fn->data; |
466 | fn->delete_me = 1; | 466 | fn->delete_me = 1; |
467 | e->callbacks->deletions_waiting = 1; | 467 | e->callbacks->deletions_waiting = 1; |
468 | if (!e->callbacks->walking_list) | 468 | if (!e->callbacks->walking_list) |
469 | evas_event_callback_clear(e); | 469 | evas_event_callback_clear(e); |
470 | return tmp; | 470 | return tmp; |
471 | } | 471 | } |
472 | } | 472 | } |
473 | return NULL; | 473 | return NULL; |
474 | } | 474 | } |
@@ -477,17 +477,17 @@ EAPI void | |||
477 | evas_post_event_callback_push(Evas *e, Evas_Object_Event_Post_Cb func, const void *data) | 477 | evas_post_event_callback_push(Evas *e, Evas_Object_Event_Post_Cb func, const void *data) |
478 | { | 478 | { |
479 | Evas_Post_Callback *pc; | 479 | Evas_Post_Callback *pc; |
480 | 480 | ||
481 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 481 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
482 | return; | 482 | return; |
483 | MAGIC_CHECK_END(); | 483 | MAGIC_CHECK_END(); |
484 | 484 | ||
485 | EVAS_MEMPOOL_INIT(_mp_pc, "evas_post_callback", Evas_Post_Callback, 64, ); | 485 | EVAS_MEMPOOL_INIT(_mp_pc, "evas_post_callback", Evas_Post_Callback, 64, ); |
486 | pc = EVAS_MEMPOOL_ALLOC(_mp_pc, Evas_Post_Callback); | 486 | pc = EVAS_MEMPOOL_ALLOC(_mp_pc, Evas_Post_Callback); |
487 | if (!pc) return; | 487 | if (!pc) return; |
488 | EVAS_MEMPOOL_PREP(_mp_pc, pc, Evas_Post_Callback); | 488 | EVAS_MEMPOOL_PREP(_mp_pc, pc, Evas_Post_Callback); |
489 | if (e->delete_me) return; | 489 | if (e->delete_me) return; |
490 | 490 | ||
491 | pc->func = func; | 491 | pc->func = func; |
492 | pc->data = data; | 492 | pc->data = data; |
493 | e->post_events = eina_list_prepend(e->post_events, pc); | 493 | e->post_events = eina_list_prepend(e->post_events, pc); |
@@ -498,11 +498,11 @@ evas_post_event_callback_remove(Evas *e, Evas_Object_Event_Post_Cb func) | |||
498 | { | 498 | { |
499 | Evas_Post_Callback *pc; | 499 | Evas_Post_Callback *pc; |
500 | Eina_List *l; | 500 | Eina_List *l; |
501 | 501 | ||
502 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 502 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
503 | return; | 503 | return; |
504 | MAGIC_CHECK_END(); | 504 | MAGIC_CHECK_END(); |
505 | 505 | ||
506 | EINA_LIST_FOREACH(e->post_events, l, pc) | 506 | EINA_LIST_FOREACH(e->post_events, l, pc) |
507 | { | 507 | { |
508 | if (pc->func == func) | 508 | if (pc->func == func) |
@@ -518,11 +518,11 @@ evas_post_event_callback_remove_full(Evas *e, Evas_Object_Event_Post_Cb func, co | |||
518 | { | 518 | { |
519 | Evas_Post_Callback *pc; | 519 | Evas_Post_Callback *pc; |
520 | Eina_List *l; | 520 | Eina_List *l; |
521 | 521 | ||
522 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 522 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
523 | return; | 523 | return; |
524 | MAGIC_CHECK_END(); | 524 | MAGIC_CHECK_END(); |
525 | 525 | ||
526 | EINA_LIST_FOREACH(e->post_events, l, pc) | 526 | EINA_LIST_FOREACH(e->post_events, l, pc) |
527 | { | 527 | { |
528 | if ((pc->func == func) && (pc->data == data)) | 528 | if ((pc->func == func) && (pc->data == data)) |
diff --git a/libraries/evas/src/lib/canvas/evas_events.c b/libraries/evas/src/lib/canvas/evas_events.c index 99ecf8c..9b7077e 100644 --- a/libraries/evas/src/lib/canvas/evas_events.c +++ b/libraries/evas/src/lib/canvas/evas_events.c | |||
@@ -1,6 +1,11 @@ | |||
1 | #include "evas_common.h" | 1 | #include "evas_common.h" |
2 | #include "evas_private.h" | 2 | #include "evas_private.h" |
3 | 3 | ||
4 | static Eina_List * | ||
5 | _evas_event_object_list_in_get(Evas *e, Eina_List *in, | ||
6 | const Eina_Inlist *list, Evas_Object *stop, | ||
7 | int x, int y, int *no_rep); | ||
8 | |||
4 | static void | 9 | static void |
5 | _evas_event_havemap_adjust(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Eina_Bool mouse_grabbed) | 10 | _evas_event_havemap_adjust(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Eina_Bool mouse_grabbed) |
6 | { | 11 | { |
@@ -16,13 +21,17 @@ _evas_event_havemap_adjust(Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, Eina_ | |||
16 | } | 21 | } |
17 | 22 | ||
18 | static Eina_List * | 23 | static Eina_List * |
19 | _evas_event_object_list_in_get(Evas *e, Eina_List *in, | 24 | _evas_event_object_list_raw_in_get(Evas *e, Eina_List *in, |
20 | const Eina_Inlist *list, Evas_Object *stop, | 25 | const Eina_Inlist *list, Evas_Object *stop, |
21 | int x, int y, int *no_rep) | 26 | int x, int y, int *no_rep) |
22 | { | 27 | { |
23 | Evas_Object *obj; | 28 | Evas_Object *obj; |
29 | int inside; | ||
30 | |||
24 | if (!list) return in; | 31 | if (!list) return in; |
25 | EINA_INLIST_REVERSE_FOREACH(list, obj) | 32 | for (obj = _EINA_INLIST_CONTAINER(obj, list); |
33 | obj; | ||
34 | obj = _EINA_INLIST_CONTAINER(obj, EINA_INLIST_GET(obj)->prev)) | ||
26 | { | 35 | { |
27 | if (obj == stop) | 36 | if (obj == stop) |
28 | { | 37 | { |
@@ -37,9 +46,9 @@ _evas_event_object_list_in_get(Evas *e, Eina_List *in, | |||
37 | if (obj->smart.smart) | 46 | if (obj->smart.smart) |
38 | { | 47 | { |
39 | int norep = 0; | 48 | int norep = 0; |
40 | int inside; | ||
41 | 49 | ||
42 | if (((obj->cur.usemap) && (obj->cur.map) && (obj->cur.map->count == 4))) | 50 | if ((obj->cur.usemap) && (obj->cur.map) && |
51 | (obj->cur.map->count == 4)) | ||
43 | { | 52 | { |
44 | inside = evas_object_is_in_output_rect(obj, x, y, 1, 1); | 53 | inside = evas_object_is_in_output_rect(obj, x, y, 1, 1); |
45 | if (inside) | 54 | if (inside) |
@@ -57,7 +66,8 @@ _evas_event_object_list_in_get(Evas *e, Eina_List *in, | |||
57 | evas_object_smart_members_get_direct(obj), | 66 | evas_object_smart_members_get_direct(obj), |
58 | stop, | 67 | stop, |
59 | obj->cur.geometry.x + obj->cur.map->mx, | 68 | obj->cur.geometry.x + obj->cur.map->mx, |
60 | obj->cur.geometry.y + obj->cur.map->my, &norep); | 69 | obj->cur.geometry.y + obj->cur.map->my, |
70 | &norep); | ||
61 | } | 71 | } |
62 | } | 72 | } |
63 | } | 73 | } |
@@ -69,19 +79,24 @@ _evas_event_object_list_in_get(Evas *e, Eina_List *in, | |||
69 | } | 79 | } |
70 | if (norep) | 80 | if (norep) |
71 | { | 81 | { |
72 | if (!obj->repeat_events) *no_rep = 1; | 82 | if (!obj->repeat_events) |
73 | return in; | 83 | { |
84 | *no_rep = 1; | ||
85 | return in; | ||
86 | } | ||
74 | } | 87 | } |
75 | } | 88 | } |
76 | else | 89 | else |
77 | { | 90 | { |
78 | int inside = evas_object_is_in_output_rect(obj, x, y, 1, 1); | 91 | inside = evas_object_is_in_output_rect(obj, x, y, 1, 1); |
79 | 92 | ||
80 | if (((obj->cur.usemap) && (obj->cur.map) && (obj->cur.map->count == 4))) | 93 | if ((obj->cur.usemap) && (obj->cur.map) && |
94 | (obj->cur.map->count == 4)) | ||
81 | { | 95 | { |
82 | if ((inside) && (!evas_map_coords_get(obj->cur.map, x, y, | 96 | if ((inside) && |
83 | &(obj->cur.map->mx), | 97 | (!evas_map_coords_get(obj->cur.map, x, y, |
84 | &(obj->cur.map->my), 0))) | 98 | &(obj->cur.map->mx), |
99 | &(obj->cur.map->my), 0))) | ||
85 | { | 100 | { |
86 | inside = 0; | 101 | inside = 0; |
87 | } | 102 | } |
@@ -105,6 +120,16 @@ _evas_event_object_list_in_get(Evas *e, Eina_List *in, | |||
105 | return in; | 120 | return in; |
106 | } | 121 | } |
107 | 122 | ||
123 | static Eina_List * | ||
124 | _evas_event_object_list_in_get(Evas *e, Eina_List *in, | ||
125 | const Eina_Inlist *list, Evas_Object *stop, | ||
126 | int x, int y, int *no_rep) | ||
127 | { | ||
128 | if (!list) return NULL; | ||
129 | return _evas_event_object_list_raw_in_get(e, in, list->last, stop, | ||
130 | x, y, no_rep); | ||
131 | } | ||
132 | |||
108 | Eina_List * | 133 | Eina_List * |
109 | evas_event_objects_event_list(Evas *e, Evas_Object *stop, int x, int y) | 134 | evas_event_objects_event_list(Evas *e, Evas_Object *stop, int x, int y) |
110 | { | 135 | { |
@@ -136,6 +161,24 @@ evas_event_list_copy(Eina_List *list) | |||
136 | /* public functions */ | 161 | /* public functions */ |
137 | 162 | ||
138 | EAPI void | 163 | EAPI void |
164 | evas_event_default_flags_set(Evas *e, Evas_Event_Flags flags) | ||
165 | { | ||
166 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | ||
167 | return; | ||
168 | MAGIC_CHECK_END(); | ||
169 | e->default_event_flags = flags; | ||
170 | } | ||
171 | |||
172 | EAPI Evas_Event_Flags | ||
173 | evas_event_default_flags_get(const Evas *e) | ||
174 | { | ||
175 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | ||
176 | return EVAS_EVENT_FLAG_ON_HOLD; | ||
177 | MAGIC_CHECK_END(); | ||
178 | return e->default_event_flags; | ||
179 | } | ||
180 | |||
181 | EAPI void | ||
139 | evas_event_freeze(Evas *e) | 182 | evas_event_freeze(Evas *e) |
140 | { | 183 | { |
141 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 184 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
@@ -197,6 +240,8 @@ evas_event_feed_mouse_down(Evas *e, int b, Evas_Button_Flags flags, unsigned int | |||
197 | Eina_List *l, *copy; | 240 | Eina_List *l, *copy; |
198 | Evas_Event_Mouse_Down ev; | 241 | Evas_Event_Mouse_Down ev; |
199 | Evas_Object *obj; | 242 | Evas_Object *obj; |
243 | int addgrab = 0; | ||
244 | int event_id = 0; | ||
200 | 245 | ||
201 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 246 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
202 | return; | 247 | return; |
@@ -205,12 +250,14 @@ evas_event_feed_mouse_down(Evas *e, int b, Evas_Button_Flags flags, unsigned int | |||
205 | if ((b < 1) || (b > 32)) return; | 250 | if ((b < 1) || (b > 32)) return; |
206 | 251 | ||
207 | e->pointer.button |= (1 << (b - 1)); | 252 | e->pointer.button |= (1 << (b - 1)); |
253 | e->pointer.downs++; | ||
208 | 254 | ||
209 | if (e->events_frozen > 0) return; | 255 | if (e->events_frozen > 0) return; |
210 | e->last_timestamp = timestamp; | 256 | e->last_timestamp = timestamp; |
211 | 257 | ||
212 | _evas_object_event_new(); | 258 | _evas_object_event_new(); |
213 | 259 | ||
260 | event_id = _evas_event_counter; | ||
214 | ev.button = b; | 261 | ev.button = b; |
215 | ev.output.x = e->pointer.x; | 262 | ev.output.x = e->pointer.x; |
216 | ev.output.y = e->pointer.y; | 263 | ev.output.y = e->pointer.y; |
@@ -221,7 +268,7 @@ evas_event_feed_mouse_down(Evas *e, int b, Evas_Button_Flags flags, unsigned int | |||
221 | ev.locks = &(e->locks); | 268 | ev.locks = &(e->locks); |
222 | ev.flags = flags; | 269 | ev.flags = flags; |
223 | ev.timestamp = timestamp; | 270 | ev.timestamp = timestamp; |
224 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 271 | ev.event_flags = e->default_event_flags; |
225 | 272 | ||
226 | _evas_walk(e); | 273 | _evas_walk(e); |
227 | /* append new touch point to the touch point list */ | 274 | /* append new touch point to the touch point list */ |
@@ -238,14 +285,23 @@ evas_event_feed_mouse_down(Evas *e, int b, Evas_Button_Flags flags, unsigned int | |||
238 | e->pointer.object.in = eina_list_free(e->pointer.object.in); | 285 | e->pointer.object.in = eina_list_free(e->pointer.object.in); |
239 | /* and set up the new one */ | 286 | /* and set up the new one */ |
240 | e->pointer.object.in = ins; | 287 | e->pointer.object.in = ins; |
288 | /* adjust grabbed count by the nuymber of currently held down | ||
289 | * fingers/buttons */ | ||
290 | if (e->pointer.downs > 1) addgrab = e->pointer.downs - 1; | ||
241 | } | 291 | } |
242 | copy = evas_event_list_copy(e->pointer.object.in); | 292 | copy = evas_event_list_copy(e->pointer.object.in); |
243 | EINA_LIST_FOREACH(copy, l, obj) | 293 | EINA_LIST_FOREACH(copy, l, obj) |
244 | { | 294 | { |
245 | if (obj->pointer_mode != EVAS_OBJECT_POINTER_MODE_NOGRAB) | 295 | if ((obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_AUTOGRAB) || |
296 | (obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN)) | ||
246 | { | 297 | { |
247 | obj->mouse_grabbed++; | 298 | obj->mouse_grabbed += addgrab + 1; |
248 | e->pointer.mouse_grabbed++; | 299 | e->pointer.mouse_grabbed += addgrab + 1; |
300 | if (obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN) | ||
301 | { | ||
302 | e->pointer.nogrep++; | ||
303 | break; | ||
304 | } | ||
249 | } | 305 | } |
250 | } | 306 | } |
251 | EINA_LIST_FOREACH(copy, l, obj) | 307 | EINA_LIST_FOREACH(copy, l, obj) |
@@ -256,8 +312,10 @@ evas_event_feed_mouse_down(Evas *e, int b, Evas_Button_Flags flags, unsigned int | |||
256 | _evas_event_havemap_adjust(obj, &ev.canvas.x, &ev.canvas.y, obj->mouse_grabbed); | 312 | _evas_event_havemap_adjust(obj, &ev.canvas.x, &ev.canvas.y, obj->mouse_grabbed); |
257 | 313 | ||
258 | if (e->events_frozen <= 0) | 314 | if (e->events_frozen <= 0) |
259 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_DOWN, &ev); | 315 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_DOWN, &ev, event_id); |
260 | if (e->delete_me) break; | 316 | if (e->delete_me) break; |
317 | if (obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN) | ||
318 | break; | ||
261 | } | 319 | } |
262 | if (copy) eina_list_free(copy); | 320 | if (copy) eina_list_free(copy); |
263 | e->last_mouse_down_counter++; | 321 | e->last_mouse_down_counter++; |
@@ -274,9 +332,11 @@ _post_up_handle(Evas *e, unsigned int timestamp, const void *data) | |||
274 | Evas_Event_Mouse_Out ev; | 332 | Evas_Event_Mouse_Out ev; |
275 | Evas_Object *obj; | 333 | Evas_Object *obj; |
276 | int post_called = 0; | 334 | int post_called = 0; |
335 | int event_id = 0; | ||
277 | 336 | ||
278 | _evas_object_event_new(); | 337 | _evas_object_event_new(); |
279 | 338 | ||
339 | event_id = _evas_event_counter; | ||
280 | ev.buttons = e->pointer.button; | 340 | ev.buttons = e->pointer.button; |
281 | ev.output.x = e->pointer.x; | 341 | ev.output.x = e->pointer.x; |
282 | ev.output.y = e->pointer.y; | 342 | ev.output.y = e->pointer.y; |
@@ -286,7 +346,7 @@ _post_up_handle(Evas *e, unsigned int timestamp, const void *data) | |||
286 | ev.modifiers = &(e->modifiers); | 346 | ev.modifiers = &(e->modifiers); |
287 | ev.locks = &(e->locks); | 347 | ev.locks = &(e->locks); |
288 | ev.timestamp = timestamp; | 348 | ev.timestamp = timestamp; |
289 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 349 | ev.event_flags = e->default_event_flags; |
290 | 350 | ||
291 | /* get new list of ins */ | 351 | /* get new list of ins */ |
292 | ins = evas_event_objects_event_list(e, NULL, e->pointer.x, e->pointer.y); | 352 | ins = evas_event_objects_event_list(e, NULL, e->pointer.x, e->pointer.y); |
@@ -304,7 +364,7 @@ _post_up_handle(Evas *e, unsigned int timestamp, const void *data) | |||
304 | { | 364 | { |
305 | obj->mouse_in = 0; | 365 | obj->mouse_in = 0; |
306 | if (e->events_frozen <= 0) | 366 | if (e->events_frozen <= 0) |
307 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev); | 367 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev, event_id); |
308 | } | 368 | } |
309 | } | 369 | } |
310 | if (e->delete_me) break; | 370 | if (e->delete_me) break; |
@@ -319,6 +379,7 @@ _post_up_handle(Evas *e, unsigned int timestamp, const void *data) | |||
319 | 379 | ||
320 | _evas_object_event_new(); | 380 | _evas_object_event_new(); |
321 | 381 | ||
382 | event_id = _evas_event_counter; | ||
322 | ev_in.buttons = e->pointer.button; | 383 | ev_in.buttons = e->pointer.button; |
323 | ev_in.output.x = e->pointer.x; | 384 | ev_in.output.x = e->pointer.x; |
324 | ev_in.output.y = e->pointer.y; | 385 | ev_in.output.y = e->pointer.y; |
@@ -328,7 +389,7 @@ _post_up_handle(Evas *e, unsigned int timestamp, const void *data) | |||
328 | ev_in.modifiers = &(e->modifiers); | 389 | ev_in.modifiers = &(e->modifiers); |
329 | ev_in.locks = &(e->locks); | 390 | ev_in.locks = &(e->locks); |
330 | ev_in.timestamp = timestamp; | 391 | ev_in.timestamp = timestamp; |
331 | ev_in.event_flags = EVAS_EVENT_FLAG_NONE; | 392 | ev_in.event_flags = e->default_event_flags; |
332 | 393 | ||
333 | EINA_LIST_FOREACH(ins, l, obj_itr) | 394 | EINA_LIST_FOREACH(ins, l, obj_itr) |
334 | { | 395 | { |
@@ -341,7 +402,7 @@ _post_up_handle(Evas *e, unsigned int timestamp, const void *data) | |||
341 | { | 402 | { |
342 | obj_itr->mouse_in = 1; | 403 | obj_itr->mouse_in = 1; |
343 | if (e->events_frozen <= 0) | 404 | if (e->events_frozen <= 0) |
344 | evas_object_event_callback_call(obj_itr, EVAS_CALLBACK_MOUSE_IN, &ev_in); | 405 | evas_object_event_callback_call(obj_itr, EVAS_CALLBACK_MOUSE_IN, &ev_in, event_id); |
345 | } | 406 | } |
346 | } | 407 | } |
347 | if (e->delete_me) break; | 408 | if (e->delete_me) break; |
@@ -383,6 +444,7 @@ evas_event_feed_mouse_up(Evas *e, int b, Evas_Button_Flags flags, unsigned int t | |||
383 | if ((b < 1) || (b > 32)) return; | 444 | if ((b < 1) || (b > 32)) return; |
384 | 445 | ||
385 | e->pointer.button &= ~(1 << (b - 1)); | 446 | e->pointer.button &= ~(1 << (b - 1)); |
447 | e->pointer.downs--; | ||
386 | 448 | ||
387 | if (e->events_frozen > 0) return; | 449 | if (e->events_frozen > 0) return; |
388 | e->last_timestamp = timestamp; | 450 | e->last_timestamp = timestamp; |
@@ -390,9 +452,11 @@ evas_event_feed_mouse_up(Evas *e, int b, Evas_Button_Flags flags, unsigned int t | |||
390 | { | 452 | { |
391 | Evas_Event_Mouse_Up ev; | 453 | Evas_Event_Mouse_Up ev; |
392 | Evas_Object *obj; | 454 | Evas_Object *obj; |
455 | int event_id = 0; | ||
393 | 456 | ||
394 | _evas_object_event_new(); | 457 | _evas_object_event_new(); |
395 | 458 | ||
459 | event_id = _evas_event_counter; | ||
396 | ev.button = b; | 460 | ev.button = b; |
397 | ev.output.x = e->pointer.x; | 461 | ev.output.x = e->pointer.x; |
398 | ev.output.y = e->pointer.y; | 462 | ev.output.y = e->pointer.y; |
@@ -403,7 +467,7 @@ evas_event_feed_mouse_up(Evas *e, int b, Evas_Button_Flags flags, unsigned int t | |||
403 | ev.locks = &(e->locks); | 467 | ev.locks = &(e->locks); |
404 | ev.flags = flags; | 468 | ev.flags = flags; |
405 | ev.timestamp = timestamp; | 469 | ev.timestamp = timestamp; |
406 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 470 | ev.event_flags = e->default_event_flags; |
407 | 471 | ||
408 | _evas_walk(e); | 472 | _evas_walk(e); |
409 | /* update released touch point */ | 473 | /* update released touch point */ |
@@ -414,7 +478,7 @@ evas_event_feed_mouse_up(Evas *e, int b, Evas_Button_Flags flags, unsigned int t | |||
414 | ev.canvas.x = e->pointer.x; | 478 | ev.canvas.x = e->pointer.x; |
415 | ev.canvas.y = e->pointer.y; | 479 | ev.canvas.y = e->pointer.y; |
416 | _evas_event_havemap_adjust(obj, &ev.canvas.x, &ev.canvas.y, obj->mouse_grabbed); | 480 | _evas_event_havemap_adjust(obj, &ev.canvas.x, &ev.canvas.y, obj->mouse_grabbed); |
417 | if ((obj->pointer_mode != EVAS_OBJECT_POINTER_MODE_NOGRAB) && | 481 | if ((obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_AUTOGRAB) && |
418 | (obj->mouse_grabbed > 0)) | 482 | (obj->mouse_grabbed > 0)) |
419 | { | 483 | { |
420 | obj->mouse_grabbed--; | 484 | obj->mouse_grabbed--; |
@@ -423,9 +487,14 @@ evas_event_feed_mouse_up(Evas *e, int b, Evas_Button_Flags flags, unsigned int t | |||
423 | if (!obj->delete_me) | 487 | if (!obj->delete_me) |
424 | { | 488 | { |
425 | if (e->events_frozen <= 0) | 489 | if (e->events_frozen <= 0) |
426 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_UP, &ev); | 490 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_UP, &ev, event_id); |
427 | } | 491 | } |
428 | if (e->delete_me) break; | 492 | if (e->delete_me) break; |
493 | if (obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN) | ||
494 | { | ||
495 | if (e->pointer.nogrep > 0) e->pointer.nogrep--; | ||
496 | break; | ||
497 | } | ||
429 | } | 498 | } |
430 | if (copy) copy = eina_list_free(copy); | 499 | if (copy) copy = eina_list_free(copy); |
431 | e->last_mouse_up_counter++; | 500 | e->last_mouse_up_counter++; |
@@ -442,9 +511,9 @@ evas_event_feed_mouse_up(Evas *e, int b, Evas_Button_Flags flags, unsigned int t | |||
442 | ERR("BUG? e->pointer.mouse_grabbed (=%d) < 0!", | 511 | ERR("BUG? e->pointer.mouse_grabbed (=%d) < 0!", |
443 | e->pointer.mouse_grabbed); | 512 | e->pointer.mouse_grabbed); |
444 | } | 513 | } |
445 | /* remove released touch point from the touch point list */ | 514 | /* remove released touch point from the touch point list */ |
446 | _evas_touch_point_remove(e, 0); | 515 | _evas_touch_point_remove(e, 0); |
447 | 516 | ||
448 | _evas_unwalk(e); | 517 | _evas_unwalk(e); |
449 | } | 518 | } |
450 | 519 | ||
@@ -465,6 +534,7 @@ evas_event_feed_mouse_cancel(Evas *e, unsigned int timestamp, const void *data) | |||
465 | if ((e->pointer.button & (1 << i))) | 534 | if ((e->pointer.button & (1 << i))) |
466 | evas_event_feed_mouse_up(e, i + 1, 0, timestamp, data); | 535 | evas_event_feed_mouse_up(e, i + 1, 0, timestamp, data); |
467 | } | 536 | } |
537 | // FIXME: multi cancel too? | ||
468 | _evas_unwalk(e); | 538 | _evas_unwalk(e); |
469 | } | 539 | } |
470 | 540 | ||
@@ -474,6 +544,7 @@ evas_event_feed_mouse_wheel(Evas *e, int direction, int z, unsigned int timestam | |||
474 | Eina_List *l, *copy; | 544 | Eina_List *l, *copy; |
475 | Evas_Event_Mouse_Wheel ev; | 545 | Evas_Event_Mouse_Wheel ev; |
476 | Evas_Object *obj; | 546 | Evas_Object *obj; |
547 | int event_id = 0; | ||
477 | 548 | ||
478 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 549 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
479 | return; | 550 | return; |
@@ -484,6 +555,7 @@ evas_event_feed_mouse_wheel(Evas *e, int direction, int z, unsigned int timestam | |||
484 | 555 | ||
485 | _evas_object_event_new(); | 556 | _evas_object_event_new(); |
486 | 557 | ||
558 | event_id = _evas_event_counter; | ||
487 | ev.direction = direction; | 559 | ev.direction = direction; |
488 | ev.z = z; | 560 | ev.z = z; |
489 | ev.output.x = e->pointer.x; | 561 | ev.output.x = e->pointer.x; |
@@ -494,7 +566,7 @@ evas_event_feed_mouse_wheel(Evas *e, int direction, int z, unsigned int timestam | |||
494 | ev.modifiers = &(e->modifiers); | 566 | ev.modifiers = &(e->modifiers); |
495 | ev.locks = &(e->locks); | 567 | ev.locks = &(e->locks); |
496 | ev.timestamp = timestamp; | 568 | ev.timestamp = timestamp; |
497 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 569 | ev.event_flags = e->default_event_flags; |
498 | 570 | ||
499 | _evas_walk(e); | 571 | _evas_walk(e); |
500 | copy = evas_event_list_copy(e->pointer.object.in); | 572 | copy = evas_event_list_copy(e->pointer.object.in); |
@@ -505,7 +577,7 @@ evas_event_feed_mouse_wheel(Evas *e, int direction, int z, unsigned int timestam | |||
505 | ev.canvas.y = e->pointer.y; | 577 | ev.canvas.y = e->pointer.y; |
506 | _evas_event_havemap_adjust(obj, &ev.canvas.x, &ev.canvas.y, obj->mouse_grabbed); | 578 | _evas_event_havemap_adjust(obj, &ev.canvas.x, &ev.canvas.y, obj->mouse_grabbed); |
507 | if ((e->events_frozen <= 0) && !evas_event_freezes_through(obj)) | 579 | if ((e->events_frozen <= 0) && !evas_event_freezes_through(obj)) |
508 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_WHEEL, &ev); | 580 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_WHEEL, &ev, event_id); |
509 | if (e->delete_me) break; | 581 | if (e->delete_me) break; |
510 | } | 582 | } |
511 | if (copy) copy = eina_list_free(copy); | 583 | if (copy) copy = eina_list_free(copy); |
@@ -517,6 +589,7 @@ evas_event_feed_mouse_wheel(Evas *e, int direction, int z, unsigned int timestam | |||
517 | EAPI void | 589 | EAPI void |
518 | evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const void *data) | 590 | evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const void *data) |
519 | { | 591 | { |
592 | Evas_Object *nogrep_obj = NULL; | ||
520 | int px, py; | 593 | int px, py; |
521 | //// Evas_Coord pcx, pcy; | 594 | //// Evas_Coord pcx, pcy; |
522 | 595 | ||
@@ -553,9 +626,11 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
553 | { | 626 | { |
554 | Evas_Event_Mouse_Move ev; | 627 | Evas_Event_Mouse_Move ev; |
555 | Evas_Object *obj; | 628 | Evas_Object *obj; |
629 | int event_id = 0; | ||
556 | 630 | ||
557 | _evas_object_event_new(); | 631 | _evas_object_event_new(); |
558 | 632 | ||
633 | event_id = _evas_event_counter; | ||
559 | ev.buttons = e->pointer.button; | 634 | ev.buttons = e->pointer.button; |
560 | ev.cur.output.x = e->pointer.x; | 635 | ev.cur.output.x = e->pointer.x; |
561 | ev.cur.output.y = e->pointer.y; | 636 | ev.cur.output.y = e->pointer.y; |
@@ -569,7 +644,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
569 | ev.modifiers = &(e->modifiers); | 644 | ev.modifiers = &(e->modifiers); |
570 | ev.locks = &(e->locks); | 645 | ev.locks = &(e->locks); |
571 | ev.timestamp = timestamp; | 646 | ev.timestamp = timestamp; |
572 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 647 | ev.event_flags = e->default_event_flags; |
573 | copy = evas_event_list_copy(e->pointer.object.in); | 648 | copy = evas_event_list_copy(e->pointer.object.in); |
574 | EINA_LIST_FOREACH(copy, l, obj) | 649 | EINA_LIST_FOREACH(copy, l, obj) |
575 | { | 650 | { |
@@ -586,19 +661,28 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
586 | (!obj->clip.clipees)) | 661 | (!obj->clip.clipees)) |
587 | { | 662 | { |
588 | if ((px != x) || (py != y)) | 663 | if ((px != x) || (py != y)) |
589 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_MOVE, &ev); | 664 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_MOVE, &ev, event_id); |
590 | } | 665 | } |
591 | else | 666 | else |
592 | outs = eina_list_append(outs, obj); | 667 | outs = eina_list_append(outs, obj); |
668 | if ((obj->pointer_mode == EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN) && | ||
669 | (e->pointer.nogrep > 0)) | ||
670 | { | ||
671 | eina_list_free(copy); | ||
672 | nogrep_obj = obj; | ||
673 | goto nogrep; | ||
674 | } | ||
593 | if (e->delete_me) break; | 675 | if (e->delete_me) break; |
594 | } | 676 | } |
595 | _evas_post_event_callback_call(e); | 677 | _evas_post_event_callback_call(e); |
596 | } | 678 | } |
597 | { | 679 | { |
598 | Evas_Event_Mouse_Out ev; | 680 | Evas_Event_Mouse_Out ev; |
681 | int event_id = 0; | ||
599 | 682 | ||
600 | _evas_object_event_new(); | 683 | _evas_object_event_new(); |
601 | 684 | ||
685 | event_id = _evas_event_counter; | ||
602 | ev.buttons = e->pointer.button; | 686 | ev.buttons = e->pointer.button; |
603 | ev.output.x = e->pointer.x; | 687 | ev.output.x = e->pointer.x; |
604 | ev.output.y = e->pointer.y; | 688 | ev.output.y = e->pointer.y; |
@@ -608,7 +692,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
608 | ev.modifiers = &(e->modifiers); | 692 | ev.modifiers = &(e->modifiers); |
609 | ev.locks = &(e->locks); | 693 | ev.locks = &(e->locks); |
610 | ev.timestamp = timestamp; | 694 | ev.timestamp = timestamp; |
611 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 695 | ev.event_flags = e->default_event_flags; |
612 | 696 | ||
613 | if (copy) eina_list_free(copy); | 697 | if (copy) eina_list_free(copy); |
614 | while (outs) | 698 | while (outs) |
@@ -629,7 +713,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
629 | if (!obj->delete_me) | 713 | if (!obj->delete_me) |
630 | { | 714 | { |
631 | if (e->events_frozen <= 0) | 715 | if (e->events_frozen <= 0) |
632 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev); | 716 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev, event_id); |
633 | } | 717 | } |
634 | } | 718 | } |
635 | } | 719 | } |
@@ -645,9 +729,11 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
645 | Evas_Event_Mouse_Out ev2; | 729 | Evas_Event_Mouse_Out ev2; |
646 | Evas_Event_Mouse_In ev3; | 730 | Evas_Event_Mouse_In ev3; |
647 | Evas_Object *obj; | 731 | Evas_Object *obj; |
732 | int event_id = 0, event_id2 = 0; | ||
648 | 733 | ||
649 | _evas_object_event_new(); | 734 | _evas_object_event_new(); |
650 | 735 | ||
736 | event_id = _evas_event_counter; | ||
651 | ev.buttons = e->pointer.button; | 737 | ev.buttons = e->pointer.button; |
652 | ev.cur.output.x = e->pointer.x; | 738 | ev.cur.output.x = e->pointer.x; |
653 | ev.cur.output.y = e->pointer.y; | 739 | ev.cur.output.y = e->pointer.y; |
@@ -661,7 +747,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
661 | ev.modifiers = &(e->modifiers); | 747 | ev.modifiers = &(e->modifiers); |
662 | ev.locks = &(e->locks); | 748 | ev.locks = &(e->locks); |
663 | ev.timestamp = timestamp; | 749 | ev.timestamp = timestamp; |
664 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 750 | ev.event_flags = e->default_event_flags; |
665 | 751 | ||
666 | ev2.buttons = e->pointer.button; | 752 | ev2.buttons = e->pointer.button; |
667 | ev2.output.x = e->pointer.x; | 753 | ev2.output.x = e->pointer.x; |
@@ -672,7 +758,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
672 | ev2.modifiers = &(e->modifiers); | 758 | ev2.modifiers = &(e->modifiers); |
673 | ev2.locks = &(e->locks); | 759 | ev2.locks = &(e->locks); |
674 | ev2.timestamp = timestamp; | 760 | ev2.timestamp = timestamp; |
675 | ev2.event_flags = EVAS_EVENT_FLAG_NONE; | 761 | ev2.event_flags = e->default_event_flags; |
676 | 762 | ||
677 | ev3.buttons = e->pointer.button; | 763 | ev3.buttons = e->pointer.button; |
678 | ev3.output.x = e->pointer.x; | 764 | ev3.output.x = e->pointer.x; |
@@ -683,7 +769,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
683 | ev3.modifiers = &(e->modifiers); | 769 | ev3.modifiers = &(e->modifiers); |
684 | ev3.locks = &(e->locks); | 770 | ev3.locks = &(e->locks); |
685 | ev3.timestamp = timestamp; | 771 | ev3.timestamp = timestamp; |
686 | ev3.event_flags = EVAS_EVENT_FLAG_NONE; | 772 | ev3.event_flags = e->default_event_flags; |
687 | 773 | ||
688 | /* get all new in objects */ | 774 | /* get all new in objects */ |
689 | ins = evas_event_objects_event_list(e, NULL, x, y); | 775 | ins = evas_event_objects_event_list(e, NULL, x, y); |
@@ -711,7 +797,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
711 | ev.cur.canvas.x = e->pointer.x; | 797 | ev.cur.canvas.x = e->pointer.x; |
712 | ev.cur.canvas.y = e->pointer.y; | 798 | ev.cur.canvas.y = e->pointer.y; |
713 | _evas_event_havemap_adjust(obj, &ev.cur.canvas.x, &ev.cur.canvas.y, obj->mouse_grabbed); | 799 | _evas_event_havemap_adjust(obj, &ev.cur.canvas.x, &ev.cur.canvas.y, obj->mouse_grabbed); |
714 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_MOVE, &ev); | 800 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_MOVE, &ev, event_id); |
715 | } | 801 | } |
716 | } | 802 | } |
717 | /* otherwise it has left the object */ | 803 | /* otherwise it has left the object */ |
@@ -724,7 +810,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
724 | ev2.canvas.y = e->pointer.y; | 810 | ev2.canvas.y = e->pointer.y; |
725 | _evas_event_havemap_adjust(obj, &ev2.canvas.x, &ev2.canvas.y, obj->mouse_grabbed); | 811 | _evas_event_havemap_adjust(obj, &ev2.canvas.x, &ev2.canvas.y, obj->mouse_grabbed); |
726 | if (e->events_frozen <= 0) | 812 | if (e->events_frozen <= 0) |
727 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev2); | 813 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev2, event_id); |
728 | } | 814 | } |
729 | } | 815 | } |
730 | if (e->delete_me) break; | 816 | if (e->delete_me) break; |
@@ -733,6 +819,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
733 | 819 | ||
734 | _evas_object_event_new(); | 820 | _evas_object_event_new(); |
735 | 821 | ||
822 | event_id2 = _evas_event_counter; | ||
736 | if (copy) copy = eina_list_free(copy); | 823 | if (copy) copy = eina_list_free(copy); |
737 | /* go thru our current list of ins */ | 824 | /* go thru our current list of ins */ |
738 | EINA_LIST_FOREACH(ins, l, obj) | 825 | EINA_LIST_FOREACH(ins, l, obj) |
@@ -747,7 +834,7 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
747 | { | 834 | { |
748 | obj->mouse_in = 1; | 835 | obj->mouse_in = 1; |
749 | if (e->events_frozen <= 0) | 836 | if (e->events_frozen <= 0) |
750 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_IN, &ev3); | 837 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_IN, &ev3, event_id2); |
751 | } | 838 | } |
752 | } | 839 | } |
753 | if (e->delete_me) break; | 840 | if (e->delete_me) break; |
@@ -766,6 +853,160 @@ evas_event_feed_mouse_move(Evas *e, int x, int y, unsigned int timestamp, const | |||
766 | } | 853 | } |
767 | _evas_post_event_callback_call(e); | 854 | _evas_post_event_callback_call(e); |
768 | } | 855 | } |
856 | _evas_unwalk(e); | ||
857 | return; | ||
858 | nogrep: | ||
859 | { | ||
860 | Eina_List *ins = NULL; | ||
861 | Eina_List *newin = NULL; | ||
862 | Eina_List *l, *copy, *lst = NULL; | ||
863 | Evas_Event_Mouse_Move ev; | ||
864 | Evas_Event_Mouse_Out ev2; | ||
865 | Evas_Event_Mouse_In ev3; | ||
866 | Evas_Object *obj, *below_obj; | ||
867 | int event_id = 0, event_id2 = 0; | ||
868 | int norep = 0, breaknext = 0; | ||
869 | |||
870 | _evas_object_event_new(); | ||
871 | |||
872 | event_id = _evas_event_counter; | ||
873 | ev.buttons = e->pointer.button; | ||
874 | ev.cur.output.x = e->pointer.x; | ||
875 | ev.cur.output.y = e->pointer.y; | ||
876 | ev.cur.canvas.x = e->pointer.x; | ||
877 | ev.cur.canvas.y = e->pointer.y; | ||
878 | ev.prev.output.x = px; | ||
879 | ev.prev.output.y = py; | ||
880 | ev.prev.canvas.x = px; | ||
881 | ev.prev.canvas.y = py; | ||
882 | ev.data = (void *)data; | ||
883 | ev.modifiers = &(e->modifiers); | ||
884 | ev.locks = &(e->locks); | ||
885 | ev.timestamp = timestamp; | ||
886 | ev.event_flags = e->default_event_flags; | ||
887 | |||
888 | ev2.buttons = e->pointer.button; | ||
889 | ev2.output.x = e->pointer.x; | ||
890 | ev2.output.y = e->pointer.y; | ||
891 | ev2.canvas.x = e->pointer.x; | ||
892 | ev2.canvas.y = e->pointer.y; | ||
893 | ev2.data = (void *)data; | ||
894 | ev2.modifiers = &(e->modifiers); | ||
895 | ev2.locks = &(e->locks); | ||
896 | ev2.timestamp = timestamp; | ||
897 | ev2.event_flags = e->default_event_flags; | ||
898 | |||
899 | ev3.buttons = e->pointer.button; | ||
900 | ev3.output.x = e->pointer.x; | ||
901 | ev3.output.y = e->pointer.y; | ||
902 | ev3.canvas.x = e->pointer.x; | ||
903 | ev3.canvas.y = e->pointer.y; | ||
904 | ev3.data = (void *)data; | ||
905 | ev3.modifiers = &(e->modifiers); | ||
906 | ev3.locks = &(e->locks); | ||
907 | ev3.timestamp = timestamp; | ||
908 | ev3.event_flags = e->default_event_flags; | ||
909 | |||
910 | /* go thru old list of in objects */ | ||
911 | copy = evas_event_list_copy(e->pointer.object.in); | ||
912 | EINA_LIST_FOREACH(copy, l, obj) | ||
913 | { | ||
914 | if (breaknext) | ||
915 | { | ||
916 | lst = l; | ||
917 | break; | ||
918 | } | ||
919 | if (obj == nogrep_obj) breaknext = 1; | ||
920 | } | ||
921 | |||
922 | /* get all new in objects */ | ||
923 | below_obj = evas_object_below_get(nogrep_obj); | ||
924 | if (below_obj) | ||
925 | ins = _evas_event_object_list_raw_in_get(e, NULL, | ||
926 | EINA_INLIST_GET(below_obj), NULL, | ||
927 | e->pointer.x, e->pointer.y, | ||
928 | &norep); | ||
929 | EINA_LIST_FOREACH(copy, l, obj) | ||
930 | { | ||
931 | newin = eina_list_append(newin, obj); | ||
932 | if (obj == nogrep_obj) break; | ||
933 | } | ||
934 | EINA_LIST_FOREACH(ins, l, obj) | ||
935 | { | ||
936 | newin = eina_list_append(newin, obj); | ||
937 | } | ||
938 | |||
939 | EINA_LIST_FOREACH(lst, l, obj) | ||
940 | { | ||
941 | /* if its under the pointer and its visible and its in the new */ | ||
942 | /* in list */ | ||
943 | // FIXME: i don't think we need this | ||
944 | // evas_object_clip_recalc(obj); | ||
945 | if ((e->events_frozen <= 0) && | ||
946 | evas_object_is_in_output_rect(obj, x, y, 1, 1) && | ||
947 | (evas_object_clippers_is_visible(obj) || | ||
948 | obj->mouse_grabbed) && | ||
949 | eina_list_data_find(newin, obj) && | ||
950 | (!evas_event_passes_through(obj)) && | ||
951 | (!evas_event_freezes_through(obj)) && | ||
952 | (!obj->clip.clipees) && | ||
953 | ((!obj->precise_is_inside) || evas_object_is_inside(obj, x, y)) | ||
954 | ) | ||
955 | { | ||
956 | if ((px != x) || (py != y)) | ||
957 | { | ||
958 | ev.cur.canvas.x = e->pointer.x; | ||
959 | ev.cur.canvas.y = e->pointer.y; | ||
960 | _evas_event_havemap_adjust(obj, &ev.cur.canvas.x, &ev.cur.canvas.y, obj->mouse_grabbed); | ||
961 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_MOVE, &ev, event_id); | ||
962 | } | ||
963 | } | ||
964 | /* otherwise it has left the object */ | ||
965 | else | ||
966 | { | ||
967 | if (obj->mouse_in) | ||
968 | { | ||
969 | obj->mouse_in = 0; | ||
970 | ev2.canvas.x = e->pointer.x; | ||
971 | ev2.canvas.y = e->pointer.y; | ||
972 | _evas_event_havemap_adjust(obj, &ev2.canvas.x, &ev2.canvas.y, obj->mouse_grabbed); | ||
973 | if (e->events_frozen <= 0) | ||
974 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev2, event_id); | ||
975 | } | ||
976 | } | ||
977 | if (e->delete_me) break; | ||
978 | } | ||
979 | _evas_post_event_callback_call(e); | ||
980 | |||
981 | _evas_object_event_new(); | ||
982 | |||
983 | event_id2 = _evas_event_counter; | ||
984 | if (copy) copy = eina_list_free(copy); | ||
985 | /* go thru our current list of ins */ | ||
986 | EINA_LIST_FOREACH(newin, l, obj) | ||
987 | { | ||
988 | ev3.canvas.x = e->pointer.x; | ||
989 | ev3.canvas.y = e->pointer.y; | ||
990 | _evas_event_havemap_adjust(obj, &ev3.canvas.x, &ev3.canvas.y, obj->mouse_grabbed); | ||
991 | /* if its not in the old list of ins send an enter event */ | ||
992 | if (!eina_list_data_find(e->pointer.object.in, obj)) | ||
993 | { | ||
994 | if (!obj->mouse_in) | ||
995 | { | ||
996 | obj->mouse_in = 1; | ||
997 | if (e->events_frozen <= 0) | ||
998 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_IN, &ev3, event_id2); | ||
999 | } | ||
1000 | } | ||
1001 | if (e->delete_me) break; | ||
1002 | } | ||
1003 | /* free our old list of ins */ | ||
1004 | eina_list_free(e->pointer.object.in); | ||
1005 | /* and set up the new one */ | ||
1006 | e->pointer.object.in = newin; | ||
1007 | |||
1008 | _evas_post_event_callback_call(e); | ||
1009 | } | ||
769 | _evas_unwalk(e); | 1010 | _evas_unwalk(e); |
770 | } | 1011 | } |
771 | 1012 | ||
@@ -776,6 +1017,7 @@ evas_event_feed_mouse_in(Evas *e, unsigned int timestamp, const void *data) | |||
776 | Eina_List *l; | 1017 | Eina_List *l; |
777 | Evas_Event_Mouse_In ev; | 1018 | Evas_Event_Mouse_In ev; |
778 | Evas_Object *obj; | 1019 | Evas_Object *obj; |
1020 | int event_id = 0; | ||
779 | 1021 | ||
780 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 1022 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
781 | return; | 1023 | return; |
@@ -789,6 +1031,7 @@ evas_event_feed_mouse_in(Evas *e, unsigned int timestamp, const void *data) | |||
789 | 1031 | ||
790 | _evas_object_event_new(); | 1032 | _evas_object_event_new(); |
791 | 1033 | ||
1034 | event_id = _evas_event_counter; | ||
792 | ev.buttons = e->pointer.button; | 1035 | ev.buttons = e->pointer.button; |
793 | ev.output.x = e->pointer.x; | 1036 | ev.output.x = e->pointer.x; |
794 | ev.output.y = e->pointer.y; | 1037 | ev.output.y = e->pointer.y; |
@@ -798,7 +1041,7 @@ evas_event_feed_mouse_in(Evas *e, unsigned int timestamp, const void *data) | |||
798 | ev.modifiers = &(e->modifiers); | 1041 | ev.modifiers = &(e->modifiers); |
799 | ev.locks = &(e->locks); | 1042 | ev.locks = &(e->locks); |
800 | ev.timestamp = timestamp; | 1043 | ev.timestamp = timestamp; |
801 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1044 | ev.event_flags = e->default_event_flags; |
802 | 1045 | ||
803 | _evas_walk(e); | 1046 | _evas_walk(e); |
804 | /* get new list of ins */ | 1047 | /* get new list of ins */ |
@@ -814,7 +1057,7 @@ evas_event_feed_mouse_in(Evas *e, unsigned int timestamp, const void *data) | |||
814 | { | 1057 | { |
815 | obj->mouse_in = 1; | 1058 | obj->mouse_in = 1; |
816 | if (e->events_frozen <= 0) | 1059 | if (e->events_frozen <= 0) |
817 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_IN, &ev); | 1060 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_IN, &ev, event_id); |
818 | } | 1061 | } |
819 | } | 1062 | } |
820 | if (e->delete_me) break; | 1063 | if (e->delete_me) break; |
@@ -832,6 +1075,7 @@ EAPI void | |||
832 | evas_event_feed_mouse_out(Evas *e, unsigned int timestamp, const void *data) | 1075 | evas_event_feed_mouse_out(Evas *e, unsigned int timestamp, const void *data) |
833 | { | 1076 | { |
834 | Evas_Event_Mouse_Out ev; | 1077 | Evas_Event_Mouse_Out ev; |
1078 | int event_id = 0; | ||
835 | 1079 | ||
836 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 1080 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
837 | return; | 1081 | return; |
@@ -843,6 +1087,7 @@ evas_event_feed_mouse_out(Evas *e, unsigned int timestamp, const void *data) | |||
843 | 1087 | ||
844 | _evas_object_event_new(); | 1088 | _evas_object_event_new(); |
845 | 1089 | ||
1090 | event_id = _evas_event_counter; | ||
846 | ev.buttons = e->pointer.button; | 1091 | ev.buttons = e->pointer.button; |
847 | ev.output.x = e->pointer.x; | 1092 | ev.output.x = e->pointer.x; |
848 | ev.output.y = e->pointer.y; | 1093 | ev.output.y = e->pointer.y; |
@@ -852,11 +1097,10 @@ evas_event_feed_mouse_out(Evas *e, unsigned int timestamp, const void *data) | |||
852 | ev.modifiers = &(e->modifiers); | 1097 | ev.modifiers = &(e->modifiers); |
853 | ev.locks = &(e->locks); | 1098 | ev.locks = &(e->locks); |
854 | ev.timestamp = timestamp; | 1099 | ev.timestamp = timestamp; |
855 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1100 | ev.event_flags = e->default_event_flags; |
856 | 1101 | ||
857 | _evas_walk(e); | 1102 | _evas_walk(e); |
858 | /* if our mouse button is grabbed to any objects */ | 1103 | /* if our mouse button is inside any objects */ |
859 | if (e->pointer.mouse_grabbed == 0) | ||
860 | { | 1104 | { |
861 | /* go thru old list of in objects */ | 1105 | /* go thru old list of in objects */ |
862 | Eina_List *l, *copy; | 1106 | Eina_List *l, *copy; |
@@ -874,14 +1118,16 @@ evas_event_feed_mouse_out(Evas *e, unsigned int timestamp, const void *data) | |||
874 | if (!obj->delete_me) | 1118 | if (!obj->delete_me) |
875 | { | 1119 | { |
876 | if (e->events_frozen <= 0) | 1120 | if (e->events_frozen <= 0) |
877 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev); | 1121 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev, event_id); |
878 | } | 1122 | } |
1123 | obj->mouse_grabbed = 0; | ||
879 | } | 1124 | } |
880 | if (e->delete_me) break; | 1125 | if (e->delete_me) break; |
881 | } | 1126 | } |
882 | if (copy) copy = eina_list_free(copy); | 1127 | if (copy) copy = eina_list_free(copy); |
883 | /* free our old list of ins */ | 1128 | /* free our old list of ins */ |
884 | e->pointer.object.in = eina_list_free(e->pointer.object.in); | 1129 | e->pointer.object.in = eina_list_free(e->pointer.object.in); |
1130 | e->pointer.mouse_grabbed = 0; | ||
885 | _evas_post_event_callback_call(e); | 1131 | _evas_post_event_callback_call(e); |
886 | } | 1132 | } |
887 | _evas_unwalk(e); | 1133 | _evas_unwalk(e); |
@@ -899,16 +1145,20 @@ evas_event_feed_multi_down(Evas *e, | |||
899 | Eina_List *l, *copy; | 1145 | Eina_List *l, *copy; |
900 | Evas_Event_Multi_Down ev; | 1146 | Evas_Event_Multi_Down ev; |
901 | Evas_Object *obj; | 1147 | Evas_Object *obj; |
1148 | int addgrab = 0; | ||
1149 | int event_id = 0; | ||
902 | 1150 | ||
903 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 1151 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
904 | return; | 1152 | return; |
905 | MAGIC_CHECK_END(); | 1153 | MAGIC_CHECK_END(); |
906 | 1154 | ||
1155 | e->pointer.downs++; | ||
907 | if (e->events_frozen > 0) return; | 1156 | if (e->events_frozen > 0) return; |
908 | e->last_timestamp = timestamp; | 1157 | e->last_timestamp = timestamp; |
909 | 1158 | ||
910 | _evas_object_event_new(); | 1159 | _evas_object_event_new(); |
911 | 1160 | ||
1161 | event_id = _evas_event_counter; | ||
912 | ev.device = d; | 1162 | ev.device = d; |
913 | ev.output.x = x; | 1163 | ev.output.x = x; |
914 | ev.output.y = y; | 1164 | ev.output.y = y; |
@@ -926,18 +1176,22 @@ evas_event_feed_multi_down(Evas *e, | |||
926 | ev.locks = &(e->locks); | 1176 | ev.locks = &(e->locks); |
927 | ev.flags = flags; | 1177 | ev.flags = flags; |
928 | ev.timestamp = timestamp; | 1178 | ev.timestamp = timestamp; |
929 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1179 | ev.event_flags = e->default_event_flags; |
930 | 1180 | ||
931 | _evas_walk(e); | 1181 | _evas_walk(e); |
932 | /* append new touch point to the touch point list */ | 1182 | /* append new touch point to the touch point list */ |
933 | _evas_touch_point_append(e, d, x, y); | 1183 | _evas_touch_point_append(e, d, x, y); |
1184 | if (e->pointer.mouse_grabbed == 0) | ||
1185 | { | ||
1186 | if (e->pointer.downs > 1) addgrab = e->pointer.downs - 1; | ||
1187 | } | ||
934 | copy = evas_event_list_copy(e->pointer.object.in); | 1188 | copy = evas_event_list_copy(e->pointer.object.in); |
935 | EINA_LIST_FOREACH(copy, l, obj) | 1189 | EINA_LIST_FOREACH(copy, l, obj) |
936 | { | 1190 | { |
937 | if (obj->pointer_mode != EVAS_OBJECT_POINTER_MODE_NOGRAB) | 1191 | if (obj->pointer_mode != EVAS_OBJECT_POINTER_MODE_NOGRAB) |
938 | { | 1192 | { |
939 | obj->mouse_grabbed++; | 1193 | obj->mouse_grabbed += addgrab + 1; |
940 | e->pointer.mouse_grabbed++; | 1194 | e->pointer.mouse_grabbed += addgrab + 1; |
941 | } | 1195 | } |
942 | } | 1196 | } |
943 | EINA_LIST_FOREACH(copy, l, obj) | 1197 | EINA_LIST_FOREACH(copy, l, obj) |
@@ -952,7 +1206,7 @@ evas_event_feed_multi_down(Evas *e, | |||
952 | if (y != ev.canvas.y) | 1206 | if (y != ev.canvas.y) |
953 | ev.canvas.ysub = ev.canvas.y; // fixme - lost precision | 1207 | ev.canvas.ysub = ev.canvas.y; // fixme - lost precision |
954 | if (e->events_frozen <= 0) | 1208 | if (e->events_frozen <= 0) |
955 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_DOWN, &ev); | 1209 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_DOWN, &ev, event_id); |
956 | if (e->delete_me) break; | 1210 | if (e->delete_me) break; |
957 | } | 1211 | } |
958 | if (copy) eina_list_free(copy); | 1212 | if (copy) eina_list_free(copy); |
@@ -974,16 +1228,19 @@ evas_event_feed_multi_up(Evas *e, | |||
974 | Eina_List *l, *copy; | 1228 | Eina_List *l, *copy; |
975 | Evas_Event_Multi_Up ev; | 1229 | Evas_Event_Multi_Up ev; |
976 | Evas_Object *obj; | 1230 | Evas_Object *obj; |
1231 | int event_id = 0; | ||
977 | 1232 | ||
978 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 1233 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
979 | return; | 1234 | return; |
980 | MAGIC_CHECK_END(); | 1235 | MAGIC_CHECK_END(); |
981 | 1236 | ||
1237 | e->pointer.downs--; | ||
982 | if (e->events_frozen > 0) return; | 1238 | if (e->events_frozen > 0) return; |
983 | e->last_timestamp = timestamp; | 1239 | e->last_timestamp = timestamp; |
984 | 1240 | ||
985 | _evas_object_event_new(); | 1241 | _evas_object_event_new(); |
986 | 1242 | ||
1243 | event_id = _evas_event_counter; | ||
987 | ev.device = d; | 1244 | ev.device = d; |
988 | ev.output.x = x; | 1245 | ev.output.x = x; |
989 | ev.output.y = y; | 1246 | ev.output.y = y; |
@@ -1001,7 +1258,7 @@ evas_event_feed_multi_up(Evas *e, | |||
1001 | ev.locks = &(e->locks); | 1258 | ev.locks = &(e->locks); |
1002 | ev.flags = flags; | 1259 | ev.flags = flags; |
1003 | ev.timestamp = timestamp; | 1260 | ev.timestamp = timestamp; |
1004 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1261 | ev.event_flags = e->default_event_flags; |
1005 | 1262 | ||
1006 | _evas_walk(e); | 1263 | _evas_walk(e); |
1007 | /* update released touch point */ | 1264 | /* update released touch point */ |
@@ -1025,7 +1282,7 @@ evas_event_feed_multi_up(Evas *e, | |||
1025 | e->pointer.mouse_grabbed--; | 1282 | e->pointer.mouse_grabbed--; |
1026 | } | 1283 | } |
1027 | if (e->events_frozen <= 0) | 1284 | if (e->events_frozen <= 0) |
1028 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_UP, &ev); | 1285 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_UP, &ev, event_id); |
1029 | if (e->delete_me) break; | 1286 | if (e->delete_me) break; |
1030 | } | 1287 | } |
1031 | if (copy) copy = eina_list_free(copy); | 1288 | if (copy) copy = eina_list_free(copy); |
@@ -1051,7 +1308,7 @@ evas_event_feed_multi_move(Evas *e, | |||
1051 | if (e->events_frozen > 0) return; | 1308 | if (e->events_frozen > 0) return; |
1052 | e->last_timestamp = timestamp; | 1309 | e->last_timestamp = timestamp; |
1053 | 1310 | ||
1054 | if (!e->pointer.inside) return; | 1311 | if ((!e->pointer.inside) && (e->pointer.mouse_grabbed == 0)) return; |
1055 | 1312 | ||
1056 | _evas_walk(e); | 1313 | _evas_walk(e); |
1057 | /* update moved touch point */ | 1314 | /* update moved touch point */ |
@@ -1063,9 +1320,11 @@ evas_event_feed_multi_move(Evas *e, | |||
1063 | Eina_List *l, *copy; | 1320 | Eina_List *l, *copy; |
1064 | Evas_Event_Multi_Move ev; | 1321 | Evas_Event_Multi_Move ev; |
1065 | Evas_Object *obj; | 1322 | Evas_Object *obj; |
1323 | int event_id = 0; | ||
1066 | 1324 | ||
1067 | _evas_object_event_new(); | 1325 | _evas_object_event_new(); |
1068 | 1326 | ||
1327 | event_id = _evas_event_counter; | ||
1069 | ev.device = d; | 1328 | ev.device = d; |
1070 | ev.cur.output.x = x; | 1329 | ev.cur.output.x = x; |
1071 | ev.cur.output.y = y; | 1330 | ev.cur.output.y = y; |
@@ -1082,7 +1341,7 @@ evas_event_feed_multi_move(Evas *e, | |||
1082 | ev.modifiers = &(e->modifiers); | 1341 | ev.modifiers = &(e->modifiers); |
1083 | ev.locks = &(e->locks); | 1342 | ev.locks = &(e->locks); |
1084 | ev.timestamp = timestamp; | 1343 | ev.timestamp = timestamp; |
1085 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1344 | ev.event_flags = e->default_event_flags; |
1086 | 1345 | ||
1087 | copy = evas_event_list_copy(e->pointer.object.in); | 1346 | copy = evas_event_list_copy(e->pointer.object.in); |
1088 | EINA_LIST_FOREACH(copy, l, obj) | 1347 | EINA_LIST_FOREACH(copy, l, obj) |
@@ -1102,7 +1361,7 @@ evas_event_feed_multi_move(Evas *e, | |||
1102 | ev.cur.canvas.xsub = ev.cur.canvas.x; // fixme - lost precision | 1361 | ev.cur.canvas.xsub = ev.cur.canvas.x; // fixme - lost precision |
1103 | if (y != ev.cur.canvas.y) | 1362 | if (y != ev.cur.canvas.y) |
1104 | ev.cur.canvas.ysub = ev.cur.canvas.y; // fixme - lost precision | 1363 | ev.cur.canvas.ysub = ev.cur.canvas.y; // fixme - lost precision |
1105 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_MOVE, &ev); | 1364 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_MOVE, &ev, event_id); |
1106 | } | 1365 | } |
1107 | if (e->delete_me) break; | 1366 | if (e->delete_me) break; |
1108 | } | 1367 | } |
@@ -1114,9 +1373,11 @@ evas_event_feed_multi_move(Evas *e, | |||
1114 | Eina_List *l, *copy; | 1373 | Eina_List *l, *copy; |
1115 | Evas_Event_Multi_Move ev; | 1374 | Evas_Event_Multi_Move ev; |
1116 | Evas_Object *obj; | 1375 | Evas_Object *obj; |
1376 | int event_id = 0; | ||
1117 | 1377 | ||
1118 | _evas_object_event_new(); | 1378 | _evas_object_event_new(); |
1119 | 1379 | ||
1380 | event_id = _evas_event_counter; | ||
1120 | ev.device = d; | 1381 | ev.device = d; |
1121 | ev.cur.output.x = x; | 1382 | ev.cur.output.x = x; |
1122 | ev.cur.output.y = y; | 1383 | ev.cur.output.y = y; |
@@ -1133,7 +1394,7 @@ evas_event_feed_multi_move(Evas *e, | |||
1133 | ev.modifiers = &(e->modifiers); | 1394 | ev.modifiers = &(e->modifiers); |
1134 | ev.locks = &(e->locks); | 1395 | ev.locks = &(e->locks); |
1135 | ev.timestamp = timestamp; | 1396 | ev.timestamp = timestamp; |
1136 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1397 | ev.event_flags = e->default_event_flags; |
1137 | 1398 | ||
1138 | /* get all new in objects */ | 1399 | /* get all new in objects */ |
1139 | ins = evas_event_objects_event_list(e, NULL, x, y); | 1400 | ins = evas_event_objects_event_list(e, NULL, x, y); |
@@ -1165,7 +1426,7 @@ evas_event_feed_multi_move(Evas *e, | |||
1165 | ev.cur.canvas.xsub = ev.cur.canvas.x; // fixme - lost precision | 1426 | ev.cur.canvas.xsub = ev.cur.canvas.x; // fixme - lost precision |
1166 | if (y != ev.cur.canvas.y) | 1427 | if (y != ev.cur.canvas.y) |
1167 | ev.cur.canvas.ysub = ev.cur.canvas.y; // fixme - lost precision | 1428 | ev.cur.canvas.ysub = ev.cur.canvas.y; // fixme - lost precision |
1168 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_MOVE, &ev); | 1429 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MULTI_MOVE, &ev, event_id); |
1169 | } | 1430 | } |
1170 | if (e->delete_me) break; | 1431 | if (e->delete_me) break; |
1171 | } | 1432 | } |
@@ -1190,6 +1451,7 @@ evas_event_feed_multi_move(Evas *e, | |||
1190 | EAPI void | 1451 | EAPI void |
1191 | evas_event_feed_key_down(Evas *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) | 1452 | evas_event_feed_key_down(Evas *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) |
1192 | { | 1453 | { |
1454 | int event_id = 0; | ||
1193 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 1455 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
1194 | return; | 1456 | return; |
1195 | MAGIC_CHECK_END(); | 1457 | MAGIC_CHECK_END(); |
@@ -1204,6 +1466,7 @@ evas_event_feed_key_down(Evas *e, const char *keyname, const char *key, const ch | |||
1204 | 1466 | ||
1205 | _evas_object_event_new(); | 1467 | _evas_object_event_new(); |
1206 | 1468 | ||
1469 | event_id = _evas_event_counter; | ||
1207 | exclusive = EINA_FALSE; | 1470 | exclusive = EINA_FALSE; |
1208 | ev.keyname = (char *)keyname; | 1471 | ev.keyname = (char *)keyname; |
1209 | ev.data = (void *)data; | 1472 | ev.data = (void *)data; |
@@ -1213,7 +1476,7 @@ evas_event_feed_key_down(Evas *e, const char *keyname, const char *key, const ch | |||
1213 | ev.string = string; | 1476 | ev.string = string; |
1214 | ev.compose = compose; | 1477 | ev.compose = compose; |
1215 | ev.timestamp = timestamp; | 1478 | ev.timestamp = timestamp; |
1216 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1479 | ev.event_flags = e->default_event_flags; |
1217 | 1480 | ||
1218 | if (e->grabs) | 1481 | if (e->grabs) |
1219 | { | 1482 | { |
@@ -1239,7 +1502,7 @@ evas_event_feed_key_down(Evas *e, const char *keyname, const char *key, const ch | |||
1239 | !evas_event_freezes_through(g->object)) | 1502 | !evas_event_freezes_through(g->object)) |
1240 | evas_object_event_callback_call(g->object, | 1503 | evas_object_event_callback_call(g->object, |
1241 | EVAS_CALLBACK_KEY_DOWN, | 1504 | EVAS_CALLBACK_KEY_DOWN, |
1242 | &ev); | 1505 | &ev, event_id); |
1243 | if (g->exclusive) exclusive = EINA_TRUE; | 1506 | if (g->exclusive) exclusive = EINA_TRUE; |
1244 | } | 1507 | } |
1245 | } | 1508 | } |
@@ -1266,7 +1529,7 @@ evas_event_feed_key_down(Evas *e, const char *keyname, const char *key, const ch | |||
1266 | { | 1529 | { |
1267 | if (e->events_frozen <= 0 && !evas_event_freezes_through(e->focused)) | 1530 | if (e->events_frozen <= 0 && !evas_event_freezes_through(e->focused)) |
1268 | evas_object_event_callback_call(e->focused, EVAS_CALLBACK_KEY_DOWN, | 1531 | evas_object_event_callback_call(e->focused, EVAS_CALLBACK_KEY_DOWN, |
1269 | &ev); | 1532 | &ev, event_id); |
1270 | } | 1533 | } |
1271 | _evas_post_event_callback_call(e); | 1534 | _evas_post_event_callback_call(e); |
1272 | _evas_unwalk(e); | 1535 | _evas_unwalk(e); |
@@ -1275,6 +1538,7 @@ evas_event_feed_key_down(Evas *e, const char *keyname, const char *key, const ch | |||
1275 | EAPI void | 1538 | EAPI void |
1276 | evas_event_feed_key_up(Evas *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) | 1539 | evas_event_feed_key_up(Evas *e, const char *keyname, const char *key, const char *string, const char *compose, unsigned int timestamp, const void *data) |
1277 | { | 1540 | { |
1541 | int event_id = 0; | ||
1278 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 1542 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
1279 | return; | 1543 | return; |
1280 | MAGIC_CHECK_END(); | 1544 | MAGIC_CHECK_END(); |
@@ -1288,6 +1552,7 @@ evas_event_feed_key_up(Evas *e, const char *keyname, const char *key, const char | |||
1288 | 1552 | ||
1289 | _evas_object_event_new(); | 1553 | _evas_object_event_new(); |
1290 | 1554 | ||
1555 | event_id = _evas_event_counter; | ||
1291 | exclusive = EINA_FALSE; | 1556 | exclusive = EINA_FALSE; |
1292 | ev.keyname = (char *)keyname; | 1557 | ev.keyname = (char *)keyname; |
1293 | ev.data = (void *)data; | 1558 | ev.data = (void *)data; |
@@ -1297,7 +1562,7 @@ evas_event_feed_key_up(Evas *e, const char *keyname, const char *key, const char | |||
1297 | ev.string = string; | 1562 | ev.string = string; |
1298 | ev.compose = compose; | 1563 | ev.compose = compose; |
1299 | ev.timestamp = timestamp; | 1564 | ev.timestamp = timestamp; |
1300 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1565 | ev.event_flags = e->default_event_flags; |
1301 | 1566 | ||
1302 | if (e->grabs) | 1567 | if (e->grabs) |
1303 | { | 1568 | { |
@@ -1322,7 +1587,7 @@ evas_event_feed_key_up(Evas *e, const char *keyname, const char *key, const char | |||
1322 | if (e->events_frozen <= 0 && | 1587 | if (e->events_frozen <= 0 && |
1323 | !evas_event_freezes_through(g->object)) | 1588 | !evas_event_freezes_through(g->object)) |
1324 | evas_object_event_callback_call(g->object, | 1589 | evas_object_event_callback_call(g->object, |
1325 | EVAS_CALLBACK_KEY_UP, &ev); | 1590 | EVAS_CALLBACK_KEY_UP, &ev, event_id); |
1326 | if (g->exclusive) exclusive = EINA_TRUE; | 1591 | if (g->exclusive) exclusive = EINA_TRUE; |
1327 | } | 1592 | } |
1328 | if (e->delete_me) break; | 1593 | if (e->delete_me) break; |
@@ -1349,7 +1614,7 @@ evas_event_feed_key_up(Evas *e, const char *keyname, const char *key, const char | |||
1349 | { | 1614 | { |
1350 | if (e->events_frozen <= 0 && !evas_event_freezes_through(e->focused)) | 1615 | if (e->events_frozen <= 0 && !evas_event_freezes_through(e->focused)) |
1351 | evas_object_event_callback_call(e->focused, EVAS_CALLBACK_KEY_UP, | 1616 | evas_object_event_callback_call(e->focused, EVAS_CALLBACK_KEY_UP, |
1352 | &ev); | 1617 | &ev, event_id); |
1353 | } | 1618 | } |
1354 | _evas_post_event_callback_call(e); | 1619 | _evas_post_event_callback_call(e); |
1355 | _evas_unwalk(e); | 1620 | _evas_unwalk(e); |
@@ -1361,6 +1626,7 @@ evas_event_feed_hold(Evas *e, int hold, unsigned int timestamp, const void *data | |||
1361 | Eina_List *l, *copy; | 1626 | Eina_List *l, *copy; |
1362 | Evas_Event_Hold ev; | 1627 | Evas_Event_Hold ev; |
1363 | Evas_Object *obj; | 1628 | Evas_Object *obj; |
1629 | int event_id = 0; | ||
1364 | 1630 | ||
1365 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | 1631 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); |
1366 | return; | 1632 | return; |
@@ -1371,17 +1637,18 @@ evas_event_feed_hold(Evas *e, int hold, unsigned int timestamp, const void *data | |||
1371 | 1637 | ||
1372 | _evas_object_event_new(); | 1638 | _evas_object_event_new(); |
1373 | 1639 | ||
1640 | event_id = _evas_event_counter; | ||
1374 | ev.hold = hold; | 1641 | ev.hold = hold; |
1375 | ev.data = (void *)data; | 1642 | ev.data = (void *)data; |
1376 | ev.timestamp = timestamp; | 1643 | ev.timestamp = timestamp; |
1377 | ev.event_flags = EVAS_EVENT_FLAG_NONE; | 1644 | ev.event_flags = e->default_event_flags; |
1378 | 1645 | ||
1379 | _evas_walk(e); | 1646 | _evas_walk(e); |
1380 | copy = evas_event_list_copy(e->pointer.object.in); | 1647 | copy = evas_event_list_copy(e->pointer.object.in); |
1381 | EINA_LIST_FOREACH(copy, l, obj) | 1648 | EINA_LIST_FOREACH(copy, l, obj) |
1382 | { | 1649 | { |
1383 | if ((e->events_frozen <= 0) && !evas_event_freezes_through(obj)) | 1650 | if ((e->events_frozen <= 0) && !evas_event_freezes_through(obj)) |
1384 | evas_object_event_callback_call(obj, EVAS_CALLBACK_HOLD, &ev); | 1651 | evas_object_event_callback_call(obj, EVAS_CALLBACK_HOLD, &ev, event_id); |
1385 | if (e->delete_me) break; | 1652 | if (e->delete_me) break; |
1386 | } | 1653 | } |
1387 | if (copy) copy = eina_list_free(copy); | 1654 | if (copy) copy = eina_list_free(copy); |
@@ -1528,75 +1795,84 @@ evas_object_pointer_mode_get(const Evas_Object *obj) | |||
1528 | EAPI void | 1795 | EAPI void |
1529 | evas_event_refeed_event(Evas *e, void *event_copy, Evas_Callback_Type event_type) | 1796 | evas_event_refeed_event(Evas *e, void *event_copy, Evas_Callback_Type event_type) |
1530 | { | 1797 | { |
1531 | switch(event_type) | 1798 | switch (event_type) |
1532 | { | 1799 | { |
1533 | case EVAS_CALLBACK_MOUSE_IN: | 1800 | case EVAS_CALLBACK_MOUSE_IN: |
1534 | { | 1801 | { |
1535 | Evas_Event_Mouse_In *ev = event_copy; | 1802 | Evas_Event_Mouse_In *ev = event_copy; |
1536 | evas_event_feed_mouse_in(e, ev->timestamp, ev->data); | 1803 | evas_event_feed_mouse_in(e, ev->timestamp, ev->data); |
1537 | break; | 1804 | break; |
1538 | } | 1805 | } |
1539 | case EVAS_CALLBACK_MOUSE_OUT: | 1806 | case EVAS_CALLBACK_MOUSE_OUT: |
1540 | { | 1807 | { |
1541 | Evas_Event_Mouse_Out *ev = event_copy; | 1808 | Evas_Event_Mouse_Out *ev = event_copy; |
1542 | evas_event_feed_mouse_out(e, ev->timestamp, ev->data); | 1809 | evas_event_feed_mouse_out(e, ev->timestamp, ev->data); |
1543 | break; | 1810 | break; |
1544 | } | 1811 | } |
1545 | case EVAS_CALLBACK_MOUSE_DOWN: | 1812 | case EVAS_CALLBACK_MOUSE_DOWN: |
1546 | { | 1813 | { |
1547 | Evas_Event_Mouse_Down *ev = event_copy; | 1814 | Evas_Event_Mouse_Down *ev = event_copy; |
1548 | evas_event_feed_mouse_down(e, ev->button, ev->flags, ev-> timestamp, ev->data); | 1815 | evas_event_feed_mouse_down(e, ev->button, ev->flags, ev-> timestamp, ev->data); |
1549 | break; | 1816 | break; |
1550 | } | 1817 | } |
1551 | case EVAS_CALLBACK_MOUSE_UP: | 1818 | case EVAS_CALLBACK_MOUSE_UP: |
1552 | { | 1819 | { |
1553 | Evas_Event_Mouse_Up *ev = event_copy; | 1820 | Evas_Event_Mouse_Up *ev = event_copy; |
1554 | evas_event_feed_mouse_up(e, ev->button, ev->flags, ev-> timestamp, ev->data); | 1821 | evas_event_feed_mouse_up(e, ev->button, ev->flags, ev-> timestamp, ev->data); |
1555 | break; | 1822 | break; |
1556 | } | 1823 | } |
1557 | case EVAS_CALLBACK_MOUSE_MOVE: | 1824 | case EVAS_CALLBACK_MOUSE_MOVE: |
1558 | { | 1825 | { |
1559 | Evas_Event_Mouse_Move *ev = event_copy; | 1826 | Evas_Event_Mouse_Move *ev = event_copy; |
1560 | evas_event_feed_mouse_move(e, ev->cur.canvas.x, ev->cur.canvas.y, ev->timestamp, ev->data); | 1827 | evas_event_feed_mouse_move(e, ev->cur.canvas.x, ev->cur.canvas.y, ev->timestamp, ev->data); |
1561 | break; | 1828 | break; |
1562 | } | 1829 | } |
1563 | case EVAS_CALLBACK_MOUSE_WHEEL: | 1830 | case EVAS_CALLBACK_MOUSE_WHEEL: |
1564 | { | 1831 | { |
1565 | Evas_Event_Mouse_Wheel *ev = event_copy; | 1832 | Evas_Event_Mouse_Wheel *ev = event_copy; |
1566 | evas_event_feed_mouse_wheel(e, ev->direction, ev-> z, ev->timestamp, ev->data); | 1833 | evas_event_feed_mouse_wheel(e, ev->direction, ev-> z, ev->timestamp, ev->data); |
1567 | break; | 1834 | break; |
1568 | } | 1835 | } |
1569 | case EVAS_CALLBACK_MULTI_DOWN: | 1836 | case EVAS_CALLBACK_MULTI_DOWN: |
1570 | { | 1837 | { |
1571 | Evas_Event_Multi_Down *ev = event_copy; | 1838 | Evas_Event_Multi_Down *ev = event_copy; |
1572 | evas_event_feed_multi_down(e, ev->device, ev->canvas.x, ev->canvas.y, ev->radius, ev->radius_x, ev->radius_y, ev->pressure, ev->angle, ev->canvas.xsub, ev->canvas.ysub, ev->flags, ev->timestamp, ev->data); | 1839 | evas_event_feed_multi_down(e, ev->device, ev->canvas.x, ev->canvas.y, ev->radius, ev->radius_x, ev->radius_y, ev->pressure, ev->angle, ev->canvas.xsub, ev->canvas.ysub, ev->flags, ev->timestamp, ev->data); |
1573 | break; | 1840 | break; |
1574 | } | 1841 | } |
1575 | case EVAS_CALLBACK_MULTI_UP: | 1842 | case EVAS_CALLBACK_MULTI_UP: |
1576 | { | 1843 | { |
1577 | Evas_Event_Multi_Up *ev = event_copy; | 1844 | Evas_Event_Multi_Up *ev = event_copy; |
1578 | evas_event_feed_multi_up(e, ev->device, ev->canvas.x, ev->canvas.y, ev->radius, ev->radius_x, ev->radius_y, ev->pressure, ev->angle, ev->canvas.xsub, ev->canvas.ysub, ev->flags, ev->timestamp, ev->data); | 1845 | evas_event_feed_multi_up(e, ev->device, ev->canvas.x, ev->canvas.y, ev->radius, ev->radius_x, ev->radius_y, ev->pressure, ev->angle, ev->canvas.xsub, ev->canvas.ysub, ev->flags, ev->timestamp, ev->data); |
1579 | break; | 1846 | break; |
1580 | } | 1847 | } |
1581 | case EVAS_CALLBACK_MULTI_MOVE: | 1848 | case EVAS_CALLBACK_MULTI_MOVE: |
1582 | { | 1849 | { |
1583 | Evas_Event_Multi_Move *ev = event_copy; | 1850 | Evas_Event_Multi_Move *ev = event_copy; |
1584 | evas_event_feed_multi_move(e, ev->device, ev->cur.canvas.x, ev->cur.canvas.y, ev->radius, ev->radius_x, ev->radius_y, ev->pressure, ev->angle, ev->cur.canvas.xsub, ev->cur.canvas.ysub, ev->timestamp, ev->data); | 1851 | evas_event_feed_multi_move(e, ev->device, ev->cur.canvas.x, ev->cur.canvas.y, ev->radius, ev->radius_x, ev->radius_y, ev->pressure, ev->angle, ev->cur.canvas.xsub, ev->cur.canvas.ysub, ev->timestamp, ev->data); |
1585 | break; | 1852 | break; |
1586 | } | 1853 | } |
1587 | case EVAS_CALLBACK_KEY_DOWN: | 1854 | case EVAS_CALLBACK_KEY_DOWN: |
1588 | { | 1855 | { |
1589 | Evas_Event_Key_Down *ev = event_copy; | 1856 | Evas_Event_Key_Down *ev = event_copy; |
1590 | evas_event_feed_key_down(e, ev->keyname, ev->key, ev->string, ev->compose, ev->timestamp, ev->data); | 1857 | evas_event_feed_key_down(e, ev->keyname, ev->key, ev->string, ev->compose, ev->timestamp, ev->data); |
1591 | break; | 1858 | break; |
1592 | } | 1859 | } |
1593 | case EVAS_CALLBACK_KEY_UP: | 1860 | case EVAS_CALLBACK_KEY_UP: |
1594 | { | 1861 | { |
1595 | Evas_Event_Key_Up *ev = event_copy; | 1862 | Evas_Event_Key_Up *ev = event_copy; |
1596 | evas_event_feed_key_up(e, ev->keyname, ev->key, ev->string, ev->compose, ev->timestamp, ev->data); | 1863 | evas_event_feed_key_up(e, ev->keyname, ev->key, ev->string, ev->compose, ev->timestamp, ev->data); |
1597 | break; | 1864 | break; |
1598 | } | 1865 | } |
1599 | default: /* All non-input events are not handeled */ | 1866 | default: /* All non-input events are not handeled */ |
1600 | break; | 1867 | break; |
1601 | } | 1868 | } |
1602 | } | 1869 | } |
1870 | |||
1871 | EAPI int | ||
1872 | evas_event_down_count_get(const Evas *e) | ||
1873 | { | ||
1874 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | ||
1875 | return 0; | ||
1876 | MAGIC_CHECK_END(); | ||
1877 | return e->pointer.downs; | ||
1878 | } | ||
diff --git a/libraries/evas/src/lib/canvas/evas_focus.c b/libraries/evas/src/lib/canvas/evas_focus.c index a1a3bca..29da7e7 100644 --- a/libraries/evas/src/lib/canvas/evas_focus.c +++ b/libraries/evas/src/lib/canvas/evas_focus.c | |||
@@ -10,29 +10,31 @@ | |||
10 | EAPI void | 10 | EAPI void |
11 | evas_object_focus_set(Evas_Object *obj, Eina_Bool focus) | 11 | evas_object_focus_set(Evas_Object *obj, Eina_Bool focus) |
12 | { | 12 | { |
13 | int event_id = 0; | ||
13 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 14 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
14 | return; | 15 | return; |
15 | MAGIC_CHECK_END(); | 16 | MAGIC_CHECK_END(); |
16 | 17 | ||
17 | _evas_object_event_new(); | 18 | _evas_object_event_new(); |
18 | 19 | ||
20 | event_id = _evas_event_counter; | ||
19 | if (focus) | 21 | if (focus) |
20 | { | 22 | { |
21 | if (obj->focused) goto end; | 23 | if (obj->focused) goto end; |
22 | if (obj->layer->evas->focused) | 24 | if (obj->layer->evas->focused) |
23 | evas_object_focus_set(obj->layer->evas->focused, 0); | 25 | evas_object_focus_set(obj->layer->evas->focused, 0); |
24 | obj->focused = 1; | 26 | obj->focused = 1; |
25 | obj->layer->evas->focused = obj; | 27 | obj->layer->evas->focused = obj; |
26 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FOCUS_IN, NULL); | 28 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FOCUS_IN, NULL, event_id); |
27 | evas_event_callback_call(obj->layer->evas, | 29 | evas_event_callback_call(obj->layer->evas, |
28 | EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_IN, obj); | 30 | EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_IN, obj); |
29 | } | 31 | } |
30 | else | 32 | else |
31 | { | 33 | { |
32 | if (!obj->focused) goto end; | 34 | if (!obj->focused) goto end; |
33 | obj->focused = 0; | 35 | obj->focused = 0; |
34 | obj->layer->evas->focused = NULL; | 36 | obj->layer->evas->focused = NULL; |
35 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FOCUS_OUT, NULL); | 37 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FOCUS_OUT, NULL, event_id); |
36 | evas_event_callback_call(obj->layer->evas, | 38 | evas_event_callback_call(obj->layer->evas, |
37 | EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_OUT, obj); | 39 | EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_OUT, obj); |
38 | } | 40 | } |
diff --git a/libraries/evas/src/lib/canvas/evas_gl.c b/libraries/evas/src/lib/canvas/evas_gl.c index 47bb583..85ed851 100644 --- a/libraries/evas/src/lib/canvas/evas_gl.c +++ b/libraries/evas/src/lib/canvas/evas_gl.c | |||
@@ -37,6 +37,13 @@ evas_gl_new(Evas *e) | |||
37 | evas_gl->magic = MAGIC_EVAS_GL; | 37 | evas_gl->magic = MAGIC_EVAS_GL; |
38 | evas_gl->evas = e; | 38 | evas_gl->evas = e; |
39 | 39 | ||
40 | if (!evas_gl->evas->engine.func->gl_context_create) | ||
41 | { | ||
42 | ERR("GL engine not available\n"); | ||
43 | free(evas_gl); | ||
44 | return NULL; | ||
45 | } | ||
46 | |||
40 | return evas_gl; | 47 | return evas_gl; |
41 | } | 48 | } |
42 | 49 | ||
@@ -60,6 +67,24 @@ evas_gl_free(Evas_GL *evas_gl) | |||
60 | free(evas_gl); | 67 | free(evas_gl); |
61 | } | 68 | } |
62 | 69 | ||
70 | EAPI Evas_GL_Config * | ||
71 | evas_gl_config_new() | ||
72 | { | ||
73 | Evas_GL_Config *cfg; | ||
74 | |||
75 | cfg = calloc(1, sizeof(Evas_GL_Config)); | ||
76 | |||
77 | if (!cfg) return NULL; | ||
78 | |||
79 | return cfg; | ||
80 | } | ||
81 | |||
82 | EAPI void | ||
83 | evas_gl_config_free(Evas_GL_Config *cfg) | ||
84 | { | ||
85 | if (cfg) free(cfg); | ||
86 | } | ||
87 | |||
63 | EAPI Evas_GL_Surface * | 88 | EAPI Evas_GL_Surface * |
64 | evas_gl_surface_create(Evas_GL *evas_gl, Evas_GL_Config *config, int width, int height) | 89 | evas_gl_surface_create(Evas_GL *evas_gl, Evas_GL_Config *config, int width, int height) |
65 | { | 90 | { |
@@ -77,6 +102,8 @@ evas_gl_surface_create(Evas_GL *evas_gl, Evas_GL_Config *config, int width, int | |||
77 | 102 | ||
78 | surf = calloc(1, sizeof(Evas_GL_Surface)); | 103 | surf = calloc(1, sizeof(Evas_GL_Surface)); |
79 | 104 | ||
105 | if (!surf) return NULL; | ||
106 | |||
80 | surf->data = evas_gl->evas->engine.func->gl_surface_create(evas_gl->evas->engine.data.output, config, width, height); | 107 | surf->data = evas_gl->evas->engine.func->gl_surface_create(evas_gl->evas->engine.data.output, config, width, height); |
81 | 108 | ||
82 | if (!surf->data) | 109 | if (!surf->data) |
diff --git a/libraries/evas/src/lib/canvas/evas_main.c b/libraries/evas/src/lib/canvas/evas_main.c index 0a37b2c..687744f 100644 --- a/libraries/evas/src/lib/canvas/evas_main.c +++ b/libraries/evas/src/lib/canvas/evas_main.c | |||
@@ -118,12 +118,16 @@ evas_new(void) | |||
118 | e->output.render_method = RENDER_METHOD_INVALID; | 118 | e->output.render_method = RENDER_METHOD_INVALID; |
119 | e->viewport.w = 1; | 119 | e->viewport.w = 1; |
120 | e->viewport.h = 1; | 120 | e->viewport.h = 1; |
121 | e->framespace.x = 0; | ||
122 | e->framespace.y = 0; | ||
123 | e->framespace.w = 0; | ||
124 | e->framespace.h = 0; | ||
121 | e->hinting = EVAS_FONT_HINTING_BYTECODE; | 125 | e->hinting = EVAS_FONT_HINTING_BYTECODE; |
122 | e->name_hash = eina_hash_string_superfast_new(NULL); | 126 | e->name_hash = eina_hash_string_superfast_new(NULL); |
123 | eina_clist_init(&e->calc_list); | 127 | eina_clist_init(&e->calc_list); |
124 | eina_clist_init(&e->calc_done); | 128 | eina_clist_init(&e->calc_done); |
125 | 129 | ||
126 | #define EVAS_ARRAY_SET(E, Array) \ | 130 | #define EVAS_ARRAY_SET(E, Array) \ |
127 | eina_array_step_set(&E->Array, sizeof (E->Array), 4096); | 131 | eina_array_step_set(&E->Array, sizeof (E->Array), 4096); |
128 | 132 | ||
129 | EVAS_ARRAY_SET(e, delete_objects); | 133 | EVAS_ARRAY_SET(e, delete_objects); |
@@ -408,6 +412,41 @@ evas_output_viewport_get(const Evas *e, Evas_Coord *x, Evas_Coord *y, Evas_Coord | |||
408 | if (h) *h = e->viewport.h; | 412 | if (h) *h = e->viewport.h; |
409 | } | 413 | } |
410 | 414 | ||
415 | EAPI void | ||
416 | evas_output_framespace_set(Evas *e, Evas_Coord x, Evas_Coord y, Evas_Coord w, Evas_Coord h) | ||
417 | { | ||
418 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | ||
419 | return; | ||
420 | MAGIC_CHECK_END(); | ||
421 | |||
422 | if ((x == e->framespace.x) && (y == e->framespace.y) && | ||
423 | (w == e->framespace.w) && (h == e->framespace.h)) return; | ||
424 | e->framespace.x = x; | ||
425 | e->framespace.y = y; | ||
426 | e->framespace.w = w; | ||
427 | e->framespace.h = h; | ||
428 | e->framespace.changed = 1; | ||
429 | e->output_validity++; | ||
430 | e->changed = 1; | ||
431 | } | ||
432 | |||
433 | EAPI void | ||
434 | evas_output_framespace_get(const Evas *e, Evas_Coord *x, Evas_Coord *y, Evas_Coord *w, Evas_Coord *h) | ||
435 | { | ||
436 | MAGIC_CHECK(e, Evas, MAGIC_EVAS); | ||
437 | if (x) *x = 0; | ||
438 | if (y) *y = 0; | ||
439 | if (w) *w = 0; | ||
440 | if (h) *h = 0; | ||
441 | return; | ||
442 | MAGIC_CHECK_END(); | ||
443 | |||
444 | if (x) *x = e->framespace.x; | ||
445 | if (y) *y = e->framespace.y; | ||
446 | if (w) *w = e->framespace.w; | ||
447 | if (h) *h = e->framespace.h; | ||
448 | } | ||
449 | |||
411 | EAPI Evas_Coord | 450 | EAPI Evas_Coord |
412 | evas_coord_screen_x_to_world(const Evas *e, int x) | 451 | evas_coord_screen_x_to_world(const Evas *e, int x) |
413 | { | 452 | { |
diff --git a/libraries/evas/src/lib/canvas/evas_map.c b/libraries/evas/src/lib/canvas/evas_map.c index fca8b3a..2359d5a 100644 --- a/libraries/evas/src/lib/canvas/evas_map.c +++ b/libraries/evas/src/lib/canvas/evas_map.c | |||
@@ -81,17 +81,19 @@ _evas_map_calc_map_geometry(Evas_Object *obj) | |||
81 | 81 | ||
82 | p = obj->cur.map->points; | 82 | p = obj->cur.map->points; |
83 | p_end = p + obj->cur.map->count; | 83 | p_end = p + obj->cur.map->count; |
84 | x1 = lround(p->x); | 84 | x1 = x2 = lround(p->x); |
85 | x2 = lround(p->x); | 85 | y1 = y2 = lround(p->y); |
86 | y1 = lround(p->y); | ||
87 | y2 = lround(p->y); | ||
88 | p++; | 86 | p++; |
89 | for (; p < p_end; p++) | 87 | for (; p < p_end; p++) |
90 | { | 88 | { |
91 | if (p->x < x1) x1 = p->x; | 89 | Evas_Coord x, y; |
92 | if (p->x > x2) x2 = p->x; | 90 | |
93 | if (p->y < y1) y1 = p->y; | 91 | x = lround(p->x); |
94 | if (p->y > y2) y2 = p->y; | 92 | y = lround(p->y); |
93 | if (x < x1) x1 = x; | ||
94 | if (x > x2) x2 = x; | ||
95 | if (y < y1) y1 = y; | ||
96 | if (y > y2) y2 = y; | ||
95 | } | 97 | } |
96 | // this causes clip-out bugs now mapped objs canbe opaque!!! | 98 | // this causes clip-out bugs now mapped objs canbe opaque!!! |
97 | // // add 1 pixel of fuzz around the map region to ensure updates are correct | 99 | // // add 1 pixel of fuzz around the map region to ensure updates are correct |
diff --git a/libraries/evas/src/lib/canvas/evas_name.c b/libraries/evas/src/lib/canvas/evas_name.c index c42f941..1a9d20f 100644 --- a/libraries/evas/src/lib/canvas/evas_name.c +++ b/libraries/evas/src/lib/canvas/evas_name.c | |||
@@ -38,3 +38,35 @@ evas_object_name_find(const Evas *e, const char *name) | |||
38 | if (!name) return NULL; | 38 | if (!name) return NULL; |
39 | return (Evas_Object *)eina_hash_find(e->name_hash, name); | 39 | return (Evas_Object *)eina_hash_find(e->name_hash, name); |
40 | } | 40 | } |
41 | |||
42 | static Evas_Object * | ||
43 | _evas_object_name_child_find(const Evas_Object *obj, const char *name, int recurse) | ||
44 | { | ||
45 | const Eina_Inlist *lst; | ||
46 | Evas_Object *child; | ||
47 | |||
48 | if (!obj->smart.smart) return NULL; | ||
49 | lst = evas_object_smart_members_get_direct(obj); | ||
50 | EINA_INLIST_FOREACH(lst, child) | ||
51 | { | ||
52 | if (child->delete_me) continue; | ||
53 | if (!child->name) continue; | ||
54 | if (!strcmp(name, child->name)) return child; | ||
55 | if (recurse != 0) | ||
56 | { | ||
57 | if ((obj = _evas_object_name_child_find(child, name, recurse - 1))) | ||
58 | return (Evas_Object *)obj; | ||
59 | } | ||
60 | } | ||
61 | return NULL; | ||
62 | } | ||
63 | |||
64 | EAPI Evas_Object * | ||
65 | evas_object_name_child_find(const Evas_Object *obj, const char *name, int recurse) | ||
66 | { | ||
67 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | ||
68 | return NULL; | ||
69 | MAGIC_CHECK_END(); | ||
70 | if (!name) return NULL; | ||
71 | return _evas_object_name_child_find(obj, name, recurse); | ||
72 | } | ||
diff --git a/libraries/evas/src/lib/canvas/evas_object_box.c b/libraries/evas/src/lib/canvas/evas_object_box.c index ab2f222..228d37c 100644 --- a/libraries/evas/src/lib/canvas/evas_object_box.c +++ b/libraries/evas/src/lib/canvas/evas_object_box.c | |||
@@ -1363,7 +1363,7 @@ _evas_object_box_layout_flow_horizontal_row_info_collect(Evas_Object_Box_Data *p | |||
1363 | EAPI void | 1363 | EAPI void |
1364 | evas_object_box_layout_flow_horizontal(Evas_Object *o, Evas_Object_Box_Data *priv, void *data __UNUSED__) | 1364 | evas_object_box_layout_flow_horizontal(Evas_Object *o, Evas_Object_Box_Data *priv, void *data __UNUSED__) |
1365 | { | 1365 | { |
1366 | int n_children, v_justify; | 1366 | int n_children; |
1367 | int r, row_count = 0; | 1367 | int r, row_count = 0; |
1368 | int min_w = 0, min_h = 0; | 1368 | int min_w = 0, min_h = 0; |
1369 | int max_h, inc_y; | 1369 | int max_h, inc_y; |
@@ -1398,7 +1398,6 @@ evas_object_box_layout_flow_horizontal(Evas_Object *o, Evas_Object_Box_Data *pri | |||
1398 | (priv, w, &row_count, row_max_h, row_break, row_width, &offset_y, &max_h); | 1398 | (priv, w, &row_count, row_max_h, row_break, row_width, &offset_y, &max_h); |
1399 | 1399 | ||
1400 | inc_y = 0; | 1400 | inc_y = 0; |
1401 | v_justify = 0; | ||
1402 | remain_y = h - (offset_y + max_h); | 1401 | remain_y = h - (offset_y + max_h); |
1403 | 1402 | ||
1404 | if (remain_y > 0) | 1403 | if (remain_y > 0) |
diff --git a/libraries/evas/src/lib/canvas/evas_object_grid.c b/libraries/evas/src/lib/canvas/evas_object_grid.c index ac96f04..db0f43d 100644 --- a/libraries/evas/src/lib/canvas/evas_object_grid.c +++ b/libraries/evas/src/lib/canvas/evas_object_grid.c | |||
@@ -1,5 +1,5 @@ | |||
1 | #include <errno.h> | ||
2 | #include "evas_common.h" | 1 | #include "evas_common.h" |
2 | #include <errno.h> | ||
3 | 3 | ||
4 | typedef struct _Evas_Object_Grid_Data Evas_Object_Grid_Data; | 4 | typedef struct _Evas_Object_Grid_Data Evas_Object_Grid_Data; |
5 | typedef struct _Evas_Object_Grid_Option Evas_Object_Grid_Option; | 5 | typedef struct _Evas_Object_Grid_Option Evas_Object_Grid_Option; |
diff --git a/libraries/evas/src/lib/canvas/evas_object_image.c b/libraries/evas/src/lib/canvas/evas_object_image.c index 7f757a6..d9f6378 100644 --- a/libraries/evas/src/lib/canvas/evas_object_image.c +++ b/libraries/evas/src/lib/canvas/evas_object_image.c | |||
@@ -1,7 +1,13 @@ | |||
1 | #ifdef HAVE_CONFIG_H | ||
2 | # include "config.h" /* so that EAPI in Evas.h is correctly defined */ | ||
3 | #endif | ||
4 | |||
1 | #include <sys/types.h> | 5 | #include <sys/types.h> |
2 | #include <unistd.h> | 6 | #include <unistd.h> |
3 | #include <stdlib.h> | 7 | #include <stdlib.h> |
4 | #include <sys/mman.h> | 8 | #ifdef HAVE_SYS_MMAN_H |
9 | # include <sys/mman.h> | ||
10 | #endif | ||
5 | #include <math.h> | 11 | #include <math.h> |
6 | 12 | ||
7 | #include "evas_common.h" | 13 | #include "evas_common.h" |
@@ -192,8 +198,9 @@ evas_object_image_filled_add(Evas *e) | |||
192 | static void | 198 | static void |
193 | _cleanup_tmpf(Evas_Object *obj) | 199 | _cleanup_tmpf(Evas_Object *obj) |
194 | { | 200 | { |
201 | #ifdef HAVE_SYS_MMAN_H | ||
195 | Evas_Object_Image *o; | 202 | Evas_Object_Image *o; |
196 | 203 | ||
197 | o = (Evas_Object_Image *)(obj->object_data); | 204 | o = (Evas_Object_Image *)(obj->object_data); |
198 | if (!o->tmpf) return; | 205 | if (!o->tmpf) return; |
199 | #ifdef __linux__ | 206 | #ifdef __linux__ |
@@ -204,11 +211,15 @@ _cleanup_tmpf(Evas_Object *obj) | |||
204 | eina_stringshare_del(o->tmpf); | 211 | eina_stringshare_del(o->tmpf); |
205 | o->tmpf_fd = -1; | 212 | o->tmpf_fd = -1; |
206 | o->tmpf = NULL; | 213 | o->tmpf = NULL; |
214 | #else | ||
215 | (void) obj; | ||
216 | #endif | ||
207 | } | 217 | } |
208 | 218 | ||
209 | static void | 219 | static void |
210 | _create_tmpf(Evas_Object *obj, void *data, int size, char *format __UNUSED__) | 220 | _create_tmpf(Evas_Object *obj, void *data, int size, char *format __UNUSED__) |
211 | { | 221 | { |
222 | #ifdef HAVE_SYS_MMAN_H | ||
212 | Evas_Object_Image *o; | 223 | Evas_Object_Image *o; |
213 | char buf[4096]; | 224 | char buf[4096]; |
214 | void *dst; | 225 | void *dst; |
@@ -253,6 +264,12 @@ _create_tmpf(Evas_Object *obj, void *data, int size, char *format __UNUSED__) | |||
253 | o->tmpf = eina_stringshare_add(buf); | 264 | o->tmpf = eina_stringshare_add(buf); |
254 | memcpy(dst, data, size); | 265 | memcpy(dst, data, size); |
255 | munmap(dst, size); | 266 | munmap(dst, size); |
267 | #else | ||
268 | (void) obj; | ||
269 | (void) data; | ||
270 | (void) size; | ||
271 | (void) format; | ||
272 | #endif | ||
256 | } | 273 | } |
257 | 274 | ||
258 | EAPI void | 275 | EAPI void |
@@ -1917,6 +1934,24 @@ evas_object_image_content_hint_get(const Evas_Object *obj) | |||
1917 | return o->content_hint; | 1934 | return o->content_hint; |
1918 | } | 1935 | } |
1919 | 1936 | ||
1937 | EAPI Eina_Bool | ||
1938 | evas_object_image_region_support_get(const Evas_Object *obj) | ||
1939 | { | ||
1940 | Evas_Object_Image *o; | ||
1941 | |||
1942 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | ||
1943 | return EINA_FALSE; | ||
1944 | MAGIC_CHECK_END(); | ||
1945 | o = (Evas_Object_Image *) (obj->object_data); | ||
1946 | MAGIC_CHECK(o, Evas_Object_Image, MAGIC_OBJ_IMAGE); | ||
1947 | return EINA_FALSE; | ||
1948 | MAGIC_CHECK_END(); | ||
1949 | |||
1950 | return obj->layer->evas->engine.func->image_can_region_get( | ||
1951 | obj->layer->evas->engine.data.output, | ||
1952 | o->engine_data); | ||
1953 | } | ||
1954 | |||
1920 | /* animated feature */ | 1955 | /* animated feature */ |
1921 | EAPI Eina_Bool | 1956 | EAPI Eina_Bool |
1922 | evas_object_image_animated_get(const Evas_Object *obj) | 1957 | evas_object_image_animated_get(const Evas_Object *obj) |
@@ -3770,8 +3805,7 @@ evas_object_image_data_convert_internal(Evas_Object_Image *o, void *data, Evas_C | |||
3770 | to_cspace); | 3805 | to_cspace); |
3771 | break; | 3806 | break; |
3772 | case EVAS_COLORSPACE_YCBCR422601_PL: | 3807 | case EVAS_COLORSPACE_YCBCR422601_PL: |
3773 | fprintf(stderr, "EVAS_COLORSPACE_YCBCR422601_PL:\n"); | 3808 | out = evas_common_convert_yuv_422_601_to(data, |
3774 | out = evas_common_convert_yuv_422_601_to(data, | ||
3775 | o->cur.image.w, | 3809 | o->cur.image.w, |
3776 | o->cur.image.h, | 3810 | o->cur.image.h, |
3777 | to_cspace); | 3811 | to_cspace); |
@@ -3795,7 +3829,7 @@ evas_object_image_data_convert_internal(Evas_Object_Image *o, void *data, Evas_C | |||
3795 | to_cspace); | 3829 | to_cspace); |
3796 | break; | 3830 | break; |
3797 | default: | 3831 | default: |
3798 | fprintf(stderr, "unknow colorspace: %i\n", o->cur.cspace); | 3832 | WRN("unknow colorspace: %i\n", o->cur.cspace); |
3799 | break; | 3833 | break; |
3800 | } | 3834 | } |
3801 | 3835 | ||
@@ -3806,9 +3840,7 @@ static void | |||
3806 | evas_object_image_filled_resize_listener(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *einfo __UNUSED__) | 3840 | evas_object_image_filled_resize_listener(void *data __UNUSED__, Evas *e __UNUSED__, Evas_Object *obj, void *einfo __UNUSED__) |
3807 | { | 3841 | { |
3808 | Evas_Coord w, h; | 3842 | Evas_Coord w, h; |
3809 | Evas_Object_Image *o; | ||
3810 | 3843 | ||
3811 | o = obj->object_data; | ||
3812 | evas_object_geometry_get(obj, NULL, NULL, &w, &h); | 3844 | evas_object_geometry_get(obj, NULL, NULL, &w, &h); |
3813 | evas_object_image_fill_set(obj, 0, 0, w, h); | 3845 | evas_object_image_fill_set(obj, 0, 0, w, h); |
3814 | } | 3846 | } |
diff --git a/libraries/evas/src/lib/canvas/evas_object_inform.c b/libraries/evas/src/lib/canvas/evas_object_inform.c index bc09eb9..302da42 100644 --- a/libraries/evas/src/lib/canvas/evas_object_inform.c +++ b/libraries/evas/src/lib/canvas/evas_object_inform.c | |||
@@ -8,7 +8,7 @@ evas_object_inform_call_show(Evas_Object *obj) | |||
8 | { | 8 | { |
9 | _evas_object_event_new(); | 9 | _evas_object_event_new(); |
10 | 10 | ||
11 | evas_object_event_callback_call(obj, EVAS_CALLBACK_SHOW, NULL); | 11 | evas_object_event_callback_call(obj, EVAS_CALLBACK_SHOW, NULL, _evas_event_counter); |
12 | _evas_post_event_callback_call(obj->layer->evas); | 12 | _evas_post_event_callback_call(obj->layer->evas); |
13 | } | 13 | } |
14 | 14 | ||
@@ -17,7 +17,7 @@ evas_object_inform_call_hide(Evas_Object *obj) | |||
17 | { | 17 | { |
18 | _evas_object_event_new(); | 18 | _evas_object_event_new(); |
19 | 19 | ||
20 | evas_object_event_callback_call(obj, EVAS_CALLBACK_HIDE, NULL); | 20 | evas_object_event_callback_call(obj, EVAS_CALLBACK_HIDE, NULL, _evas_event_counter); |
21 | _evas_post_event_callback_call(obj->layer->evas); | 21 | _evas_post_event_callback_call(obj->layer->evas); |
22 | } | 22 | } |
23 | 23 | ||
@@ -26,7 +26,7 @@ evas_object_inform_call_move(Evas_Object *obj) | |||
26 | { | 26 | { |
27 | _evas_object_event_new(); | 27 | _evas_object_event_new(); |
28 | 28 | ||
29 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOVE, NULL); | 29 | evas_object_event_callback_call(obj, EVAS_CALLBACK_MOVE, NULL, _evas_event_counter); |
30 | _evas_post_event_callback_call(obj->layer->evas); | 30 | _evas_post_event_callback_call(obj->layer->evas); |
31 | } | 31 | } |
32 | 32 | ||
@@ -35,7 +35,7 @@ evas_object_inform_call_resize(Evas_Object *obj) | |||
35 | { | 35 | { |
36 | _evas_object_event_new(); | 36 | _evas_object_event_new(); |
37 | 37 | ||
38 | evas_object_event_callback_call(obj, EVAS_CALLBACK_RESIZE, NULL); | 38 | evas_object_event_callback_call(obj, EVAS_CALLBACK_RESIZE, NULL, _evas_event_counter); |
39 | _evas_post_event_callback_call(obj->layer->evas); | 39 | _evas_post_event_callback_call(obj->layer->evas); |
40 | } | 40 | } |
41 | 41 | ||
@@ -44,7 +44,7 @@ evas_object_inform_call_restack(Evas_Object *obj) | |||
44 | { | 44 | { |
45 | _evas_object_event_new(); | 45 | _evas_object_event_new(); |
46 | 46 | ||
47 | evas_object_event_callback_call(obj, EVAS_CALLBACK_RESTACK, NULL); | 47 | evas_object_event_callback_call(obj, EVAS_CALLBACK_RESTACK, NULL, _evas_event_counter); |
48 | _evas_post_event_callback_call(obj->layer->evas); | 48 | _evas_post_event_callback_call(obj->layer->evas); |
49 | } | 49 | } |
50 | 50 | ||
@@ -53,7 +53,7 @@ evas_object_inform_call_changed_size_hints(Evas_Object *obj) | |||
53 | { | 53 | { |
54 | _evas_object_event_new(); | 54 | _evas_object_event_new(); |
55 | 55 | ||
56 | evas_object_event_callback_call(obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS, NULL); | 56 | evas_object_event_callback_call(obj, EVAS_CALLBACK_CHANGED_SIZE_HINTS, NULL, _evas_event_counter); |
57 | _evas_post_event_callback_call(obj->layer->evas); | 57 | _evas_post_event_callback_call(obj->layer->evas); |
58 | } | 58 | } |
59 | 59 | ||
@@ -65,7 +65,7 @@ evas_object_inform_call_image_preloaded(Evas_Object *obj) | |||
65 | _evas_object_image_preloading_set(obj, 0); | 65 | _evas_object_image_preloading_set(obj, 0); |
66 | _evas_object_event_new(); | 66 | _evas_object_event_new(); |
67 | 67 | ||
68 | evas_object_event_callback_call(obj, EVAS_CALLBACK_IMAGE_PRELOADED, NULL); | 68 | evas_object_event_callback_call(obj, EVAS_CALLBACK_IMAGE_PRELOADED, NULL, _evas_event_counter); |
69 | _evas_post_event_callback_call(obj->layer->evas); | 69 | _evas_post_event_callback_call(obj->layer->evas); |
70 | } | 70 | } |
71 | 71 | ||
@@ -74,6 +74,6 @@ evas_object_inform_call_image_unloaded(Evas_Object *obj) | |||
74 | { | 74 | { |
75 | _evas_object_event_new(); | 75 | _evas_object_event_new(); |
76 | 76 | ||
77 | evas_object_event_callback_call(obj, EVAS_CALLBACK_IMAGE_UNLOADED, NULL); | 77 | evas_object_event_callback_call(obj, EVAS_CALLBACK_IMAGE_UNLOADED, NULL, _evas_event_counter); |
78 | _evas_post_event_callback_call(obj->layer->evas); | 78 | _evas_post_event_callback_call(obj->layer->evas); |
79 | } | 79 | } |
diff --git a/libraries/evas/src/lib/canvas/evas_object_intercept.c b/libraries/evas/src/lib/canvas/evas_object_intercept.c index c3e5e24..54f7265 100644 --- a/libraries/evas/src/lib/canvas/evas_object_intercept.c +++ b/libraries/evas/src/lib/canvas/evas_object_intercept.c | |||
@@ -9,7 +9,6 @@ static void evas_object_intercept_deinit(Evas_Object *obj); | |||
9 | static void | 9 | static void |
10 | evas_object_intercept_init(Evas_Object *obj) | 10 | evas_object_intercept_init(Evas_Object *obj) |
11 | { | 11 | { |
12 | /* MEM OK */ | ||
13 | if (!obj->interceptors) | 12 | if (!obj->interceptors) |
14 | obj->interceptors = evas_mem_calloc(sizeof(Evas_Intercept_Func)); | 13 | obj->interceptors = evas_mem_calloc(sizeof(Evas_Intercept_Func)); |
15 | } | 14 | } |
@@ -17,7 +16,6 @@ evas_object_intercept_init(Evas_Object *obj) | |||
17 | static void | 16 | static void |
18 | evas_object_intercept_deinit(Evas_Object *obj) | 17 | evas_object_intercept_deinit(Evas_Object *obj) |
19 | { | 18 | { |
20 | /* MEM OK */ | ||
21 | if (!obj->interceptors) return; | 19 | if (!obj->interceptors) return; |
22 | if ((obj->interceptors->show.func) || | 20 | if ((obj->interceptors->show.func) || |
23 | (obj->interceptors->hide.func) || | 21 | (obj->interceptors->hide.func) || |
@@ -41,199 +39,186 @@ evas_object_intercept_deinit(Evas_Object *obj) | |||
41 | void | 39 | void |
42 | evas_object_intercept_cleanup(Evas_Object *obj) | 40 | evas_object_intercept_cleanup(Evas_Object *obj) |
43 | { | 41 | { |
44 | /* MEM OK */ | ||
45 | if (obj->interceptors) free(obj->interceptors); | 42 | if (obj->interceptors) free(obj->interceptors); |
46 | } | 43 | } |
47 | 44 | ||
48 | int | 45 | int |
49 | evas_object_intercept_call_show(Evas_Object *obj) | 46 | evas_object_intercept_call_show(Evas_Object *obj) |
50 | { | 47 | { |
51 | /* MEM OK */ | ||
52 | int ret; | 48 | int ret; |
53 | 49 | ||
54 | if (!obj->interceptors) return 0; | 50 | if (!obj->interceptors) return 0; |
55 | if (obj->intercepted) return 0; | 51 | if (obj->intercepted) return 0; |
56 | obj->intercepted = 1; | 52 | obj->intercepted = EINA_TRUE; |
57 | ret = !!(obj->interceptors->show.func); | 53 | ret = !!(obj->interceptors->show.func); |
58 | if (obj->interceptors->show.func) | 54 | if (ret) |
59 | obj->interceptors->show.func(obj->interceptors->show.data, obj); | 55 | obj->interceptors->show.func(obj->interceptors->show.data, obj); |
60 | obj->intercepted = 0; | 56 | obj->intercepted = EINA_FALSE; |
61 | return ret; | 57 | return ret; |
62 | } | 58 | } |
63 | 59 | ||
64 | int | 60 | int |
65 | evas_object_intercept_call_hide(Evas_Object *obj) | 61 | evas_object_intercept_call_hide(Evas_Object *obj) |
66 | { | 62 | { |
67 | /* MEM OK */ | ||
68 | int ret; | 63 | int ret; |
69 | 64 | ||
70 | if (!obj->interceptors) return 0; | 65 | if (!obj->interceptors) return 0; |
71 | if (obj->intercepted) return 0; | 66 | if (obj->intercepted) return 0; |
72 | obj->intercepted = 1; | 67 | obj->intercepted = EINA_TRUE; |
73 | ret = !!(obj->interceptors->hide.func); | 68 | ret = !!(obj->interceptors->hide.func); |
74 | if (obj->interceptors->hide.func) | 69 | if (ret) |
75 | obj->interceptors->hide.func(obj->interceptors->hide.data, obj); | 70 | obj->interceptors->hide.func(obj->interceptors->hide.data, obj); |
76 | obj->intercepted = 0; | 71 | obj->intercepted = EINA_FALSE; |
77 | return ret; | 72 | return ret; |
78 | } | 73 | } |
79 | 74 | ||
80 | int | 75 | int |
81 | evas_object_intercept_call_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y) | 76 | evas_object_intercept_call_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y) |
82 | { | 77 | { |
83 | /* MEM OK */ | ||
84 | int ret; | 78 | int ret; |
85 | 79 | ||
86 | if (!obj->interceptors) return 0; | 80 | if (!obj->interceptors) return 0; |
87 | if (obj->intercepted) return 0; | 81 | if (obj->intercepted) return 0; |
88 | obj->intercepted = 1; | 82 | obj->intercepted = EINA_TRUE; |
89 | ret = !!(obj->interceptors->move.func); | 83 | ret = !!(obj->interceptors->move.func); |
90 | if (obj->interceptors->move.func) | 84 | if (ret) |
91 | obj->interceptors->move.func(obj->interceptors->move.data, obj, x, y); | 85 | obj->interceptors->move.func(obj->interceptors->move.data, obj, x, y); |
92 | obj->intercepted = 0; | 86 | obj->intercepted = EINA_FALSE; |
93 | return ret; | 87 | return ret; |
94 | } | 88 | } |
95 | 89 | ||
96 | int | 90 | int |
97 | evas_object_intercept_call_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h) | 91 | evas_object_intercept_call_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h) |
98 | { | 92 | { |
99 | /* MEM OK */ | ||
100 | int ret; | 93 | int ret; |
101 | 94 | ||
102 | if (!obj->interceptors) return 0; | 95 | if (!obj->interceptors) return 0; |
103 | if (obj->intercepted) return 0; | 96 | if (obj->intercepted) return 0; |
104 | obj->intercepted = 1; | 97 | obj->intercepted = EINA_TRUE; |
105 | ret = !!(obj->interceptors->resize.func); | 98 | ret = !!(obj->interceptors->resize.func); |
106 | if (obj->interceptors->resize.func) | 99 | if (ret) |
107 | obj->interceptors->resize.func(obj->interceptors->resize.data, obj, w, h); | 100 | obj->interceptors->resize.func(obj->interceptors->resize.data, obj, w, h); |
108 | obj->intercepted = 0; | 101 | obj->intercepted = EINA_FALSE; |
109 | return ret; | 102 | return ret; |
110 | } | 103 | } |
111 | 104 | ||
112 | int | 105 | int |
113 | evas_object_intercept_call_raise(Evas_Object *obj) | 106 | evas_object_intercept_call_raise(Evas_Object *obj) |
114 | { | 107 | { |
115 | /* MEM OK */ | ||
116 | int ret; | 108 | int ret; |
117 | 109 | ||
118 | if (!obj->interceptors) return 0; | 110 | if (!obj->interceptors) return 0; |
119 | if (obj->intercepted) return 0; | 111 | if (obj->intercepted) return 0; |
120 | obj->intercepted = 1; | 112 | obj->intercepted = EINA_TRUE; |
121 | ret = !!(obj->interceptors->raise.func); | 113 | ret = !!(obj->interceptors->raise.func); |
122 | if (obj->interceptors->raise.func) | 114 | if (ret) |
123 | obj->interceptors->raise.func(obj->interceptors->raise.data, obj); | 115 | obj->interceptors->raise.func(obj->interceptors->raise.data, obj); |
124 | obj->intercepted = 0; | 116 | obj->intercepted = EINA_FALSE; |
125 | return ret; | 117 | return ret; |
126 | } | 118 | } |
127 | 119 | ||
128 | int | 120 | int |
129 | evas_object_intercept_call_lower(Evas_Object *obj) | 121 | evas_object_intercept_call_lower(Evas_Object *obj) |
130 | { | 122 | { |
131 | /* MEM OK */ | ||
132 | int ret; | 123 | int ret; |
133 | 124 | ||
134 | if (!obj->interceptors) return 0; | 125 | if (!obj->interceptors) return 0; |
135 | if (obj->intercepted) return 0; | 126 | if (obj->intercepted) return 0; |
136 | obj->intercepted = 1; | 127 | obj->intercepted = EINA_TRUE; |
137 | ret = !!(obj->interceptors->lower.func); | 128 | ret = !!(obj->interceptors->lower.func); |
138 | if (obj->interceptors->lower.func) | 129 | if (ret) |
139 | obj->interceptors->lower.func(obj->interceptors->lower.data, obj); | 130 | obj->interceptors->lower.func(obj->interceptors->lower.data, obj); |
140 | obj->intercepted = 0; | 131 | obj->intercepted = EINA_FALSE; |
141 | return ret; | 132 | return ret; |
142 | } | 133 | } |
143 | 134 | ||
144 | int | 135 | int |
145 | evas_object_intercept_call_stack_above(Evas_Object *obj, Evas_Object *above) | 136 | evas_object_intercept_call_stack_above(Evas_Object *obj, Evas_Object *above) |
146 | { | 137 | { |
147 | /* MEM OK */ | ||
148 | int ret; | 138 | int ret; |
149 | 139 | ||
150 | if (!obj->interceptors) return 0; | 140 | if (!obj->interceptors) return 0; |
151 | if (obj->intercepted) return 0; | 141 | if (obj->intercepted) return 0; |
152 | obj->intercepted = 1; | 142 | obj->intercepted = EINA_TRUE; |
153 | ret = !!(obj->interceptors->stack_above.func); | 143 | ret = !!(obj->interceptors->stack_above.func); |
154 | if (obj->interceptors->stack_above.func) | 144 | if (ret) |
155 | obj->interceptors->stack_above.func(obj->interceptors->stack_above.data, obj, above); | 145 | obj->interceptors->stack_above.func(obj->interceptors->stack_above.data, obj, above); |
156 | obj->intercepted = 0; | 146 | obj->intercepted = EINA_FALSE; |
157 | return ret; | 147 | return ret; |
158 | } | 148 | } |
159 | 149 | ||
160 | int | 150 | int |
161 | evas_object_intercept_call_stack_below(Evas_Object *obj, Evas_Object *below) | 151 | evas_object_intercept_call_stack_below(Evas_Object *obj, Evas_Object *below) |
162 | { | 152 | { |
163 | /* MEM OK */ | ||
164 | int ret; | 153 | int ret; |
165 | 154 | ||
166 | if (!obj->interceptors) return 0; | 155 | if (!obj->interceptors) return 0; |
167 | if (obj->intercepted) return 0; | 156 | if (obj->intercepted) return 0; |
168 | obj->intercepted = 1; | 157 | obj->intercepted = EINA_TRUE; |
169 | ret = !!(obj->interceptors->stack_below.func); | 158 | ret = !!(obj->interceptors->stack_below.func); |
170 | if (obj->interceptors->stack_below.func) | 159 | if (ret) |
171 | obj->interceptors->stack_below.func(obj->interceptors->stack_below.data, obj, below); | 160 | obj->interceptors->stack_below.func(obj->interceptors->stack_below.data, obj, below); |
172 | obj->intercepted = 0; | 161 | obj->intercepted = EINA_FALSE; |
173 | return ret; | 162 | return ret; |
174 | } | 163 | } |
175 | 164 | ||
176 | int | 165 | int |
177 | evas_object_intercept_call_layer_set(Evas_Object *obj, int l) | 166 | evas_object_intercept_call_layer_set(Evas_Object *obj, int l) |
178 | { | 167 | { |
179 | /* MEM OK */ | ||
180 | int ret; | 168 | int ret; |
181 | 169 | ||
182 | if (!obj->interceptors) return 0; | 170 | if (!obj->interceptors) return 0; |
183 | if (obj->intercepted) return 0; | 171 | if (obj->intercepted) return 0; |
184 | obj->intercepted = 1; | 172 | obj->intercepted = EINA_TRUE; |
185 | ret = !!(obj->interceptors->layer_set.func); | 173 | ret = !!(obj->interceptors->layer_set.func); |
186 | if (obj->interceptors->layer_set.func) | 174 | if (ret) |
187 | obj->interceptors->layer_set.func(obj->interceptors->layer_set.data, obj, l); | 175 | obj->interceptors->layer_set.func(obj->interceptors->layer_set.data, obj, l); |
188 | obj->intercepted = 0; | 176 | obj->intercepted = EINA_FALSE; |
189 | return ret; | 177 | return ret; |
190 | } | 178 | } |
191 | 179 | ||
192 | int | 180 | int |
193 | evas_object_intercept_call_color_set(Evas_Object *obj, int r, int g, int b, int a) | 181 | evas_object_intercept_call_color_set(Evas_Object *obj, int r, int g, int b, int a) |
194 | { | 182 | { |
195 | /* MEM OK */ | ||
196 | int ret; | 183 | int ret; |
197 | 184 | ||
198 | if (!obj->interceptors) return 0; | 185 | if (!obj->interceptors) return 0; |
199 | if (obj->intercepted) return 0; | 186 | if (obj->intercepted) return 0; |
200 | obj->intercepted = 1; | 187 | obj->intercepted = EINA_TRUE; |
201 | ret = !!(obj->interceptors->color_set.func); | 188 | ret = !!(obj->interceptors->color_set.func); |
202 | if (obj->interceptors->color_set.func) | 189 | if (ret) |
203 | obj->interceptors->color_set.func(obj->interceptors->color_set.data, obj, r, g, b, a); | 190 | obj->interceptors->color_set.func(obj->interceptors->color_set.data, obj, r, g, b, a); |
204 | obj->intercepted = 0; | 191 | obj->intercepted = EINA_FALSE; |
205 | return ret; | 192 | return ret; |
206 | } | 193 | } |
207 | 194 | ||
208 | int | 195 | int |
209 | evas_object_intercept_call_clip_set(Evas_Object *obj, Evas_Object *clip) | 196 | evas_object_intercept_call_clip_set(Evas_Object *obj, Evas_Object *clip) |
210 | { | 197 | { |
211 | /* MEM OK */ | ||
212 | int ret; | 198 | int ret; |
213 | 199 | ||
214 | if (!obj->interceptors) return 0; | 200 | if (!obj->interceptors) return 0; |
215 | if (obj->intercepted) return 0; | 201 | if (obj->intercepted) return 0; |
216 | obj->intercepted = 1; | 202 | obj->intercepted = EINA_TRUE; |
217 | ret = !!(obj->interceptors->clip_set.func); | 203 | ret = !!(obj->interceptors->clip_set.func); |
218 | if (obj->interceptors->clip_set.func) | 204 | if (ret) |
219 | obj->interceptors->clip_set.func(obj->interceptors->clip_set.data, obj, clip); | 205 | obj->interceptors->clip_set.func(obj->interceptors->clip_set.data, obj, clip); |
220 | obj->intercepted = 0; | 206 | obj->intercepted = EINA_FALSE; |
221 | return ret; | 207 | return ret; |
222 | } | 208 | } |
223 | 209 | ||
224 | int | 210 | int |
225 | evas_object_intercept_call_clip_unset(Evas_Object *obj) | 211 | evas_object_intercept_call_clip_unset(Evas_Object *obj) |
226 | { | 212 | { |
227 | /* MEM OK */ | ||
228 | int ret; | 213 | int ret; |
229 | 214 | ||
230 | if (!obj->interceptors) return 0; | 215 | if (!obj->interceptors) return 0; |
231 | if (obj->intercepted) return 0; | 216 | if (obj->intercepted) return 0; |
232 | obj->intercepted = 1; | 217 | obj->intercepted = EINA_TRUE; |
233 | ret = !!(obj->interceptors->clip_unset.func); | 218 | ret = !!(obj->interceptors->clip_unset.func); |
234 | if (obj->interceptors->clip_unset.func) | 219 | if (ret) |
235 | obj->interceptors->clip_unset.func(obj->interceptors->clip_unset.data, obj); | 220 | obj->interceptors->clip_unset.func(obj->interceptors->clip_unset.data, obj); |
236 | obj->intercepted = 0; | 221 | obj->intercepted = EINA_FALSE; |
237 | return ret; | 222 | return ret; |
238 | } | 223 | } |
239 | 224 | ||
@@ -242,8 +227,6 @@ evas_object_intercept_call_clip_unset(Evas_Object *obj) | |||
242 | EAPI void | 227 | EAPI void |
243 | evas_object_intercept_show_callback_add(Evas_Object *obj, Evas_Object_Intercept_Show_Cb func, const void *data) | 228 | evas_object_intercept_show_callback_add(Evas_Object *obj, Evas_Object_Intercept_Show_Cb func, const void *data) |
244 | { | 229 | { |
245 | /* MEM OK */ | ||
246 | |||
247 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 230 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
248 | return; | 231 | return; |
249 | MAGIC_CHECK_END(); | 232 | MAGIC_CHECK_END(); |
@@ -257,7 +240,6 @@ evas_object_intercept_show_callback_add(Evas_Object *obj, Evas_Object_Intercept_ | |||
257 | EAPI void * | 240 | EAPI void * |
258 | evas_object_intercept_show_callback_del(Evas_Object *obj, Evas_Object_Intercept_Show_Cb func) | 241 | evas_object_intercept_show_callback_del(Evas_Object *obj, Evas_Object_Intercept_Show_Cb func) |
259 | { | 242 | { |
260 | /* MEM OK */ | ||
261 | void *data; | 243 | void *data; |
262 | 244 | ||
263 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 245 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -275,7 +257,6 @@ evas_object_intercept_show_callback_del(Evas_Object *obj, Evas_Object_Intercept_ | |||
275 | EAPI void | 257 | EAPI void |
276 | evas_object_intercept_hide_callback_add(Evas_Object *obj, Evas_Object_Intercept_Hide_Cb func, const void *data) | 258 | evas_object_intercept_hide_callback_add(Evas_Object *obj, Evas_Object_Intercept_Hide_Cb func, const void *data) |
277 | { | 259 | { |
278 | /* MEM OK */ | ||
279 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 260 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
280 | return; | 261 | return; |
281 | MAGIC_CHECK_END(); | 262 | MAGIC_CHECK_END(); |
@@ -289,7 +270,6 @@ evas_object_intercept_hide_callback_add(Evas_Object *obj, Evas_Object_Intercept_ | |||
289 | EAPI void * | 270 | EAPI void * |
290 | evas_object_intercept_hide_callback_del(Evas_Object *obj, Evas_Object_Intercept_Hide_Cb func) | 271 | evas_object_intercept_hide_callback_del(Evas_Object *obj, Evas_Object_Intercept_Hide_Cb func) |
291 | { | 272 | { |
292 | /* MEM OK */ | ||
293 | void *data; | 273 | void *data; |
294 | 274 | ||
295 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 275 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -307,7 +287,6 @@ evas_object_intercept_hide_callback_del(Evas_Object *obj, Evas_Object_Intercept_ | |||
307 | EAPI void | 287 | EAPI void |
308 | evas_object_intercept_move_callback_add(Evas_Object *obj, Evas_Object_Intercept_Move_Cb func, const void *data) | 288 | evas_object_intercept_move_callback_add(Evas_Object *obj, Evas_Object_Intercept_Move_Cb func, const void *data) |
309 | { | 289 | { |
310 | /* MEM OK */ | ||
311 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 290 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
312 | return; | 291 | return; |
313 | MAGIC_CHECK_END(); | 292 | MAGIC_CHECK_END(); |
@@ -321,7 +300,6 @@ evas_object_intercept_move_callback_add(Evas_Object *obj, Evas_Object_Intercept_ | |||
321 | EAPI void * | 300 | EAPI void * |
322 | evas_object_intercept_move_callback_del(Evas_Object *obj, Evas_Object_Intercept_Move_Cb func) | 301 | evas_object_intercept_move_callback_del(Evas_Object *obj, Evas_Object_Intercept_Move_Cb func) |
323 | { | 302 | { |
324 | /* MEM OK */ | ||
325 | void *data; | 303 | void *data; |
326 | 304 | ||
327 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 305 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -339,7 +317,6 @@ evas_object_intercept_move_callback_del(Evas_Object *obj, Evas_Object_Intercept_ | |||
339 | EAPI void | 317 | EAPI void |
340 | evas_object_intercept_resize_callback_add(Evas_Object *obj, Evas_Object_Intercept_Resize_Cb func, const void *data) | 318 | evas_object_intercept_resize_callback_add(Evas_Object *obj, Evas_Object_Intercept_Resize_Cb func, const void *data) |
341 | { | 319 | { |
342 | /* MEM OK */ | ||
343 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 320 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
344 | return; | 321 | return; |
345 | MAGIC_CHECK_END(); | 322 | MAGIC_CHECK_END(); |
@@ -353,7 +330,6 @@ evas_object_intercept_resize_callback_add(Evas_Object *obj, Evas_Object_Intercep | |||
353 | EAPI void * | 330 | EAPI void * |
354 | evas_object_intercept_resize_callback_del(Evas_Object *obj, Evas_Object_Intercept_Resize_Cb func) | 331 | evas_object_intercept_resize_callback_del(Evas_Object *obj, Evas_Object_Intercept_Resize_Cb func) |
355 | { | 332 | { |
356 | /* MEM OK */ | ||
357 | void *data; | 333 | void *data; |
358 | 334 | ||
359 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 335 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -371,7 +347,6 @@ evas_object_intercept_resize_callback_del(Evas_Object *obj, Evas_Object_Intercep | |||
371 | EAPI void | 347 | EAPI void |
372 | evas_object_intercept_raise_callback_add(Evas_Object *obj, Evas_Object_Intercept_Raise_Cb func, const void *data) | 348 | evas_object_intercept_raise_callback_add(Evas_Object *obj, Evas_Object_Intercept_Raise_Cb func, const void *data) |
373 | { | 349 | { |
374 | /* MEM OK */ | ||
375 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 350 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
376 | return; | 351 | return; |
377 | MAGIC_CHECK_END(); | 352 | MAGIC_CHECK_END(); |
@@ -385,7 +360,6 @@ evas_object_intercept_raise_callback_add(Evas_Object *obj, Evas_Object_Intercept | |||
385 | EAPI void * | 360 | EAPI void * |
386 | evas_object_intercept_raise_callback_del(Evas_Object *obj, Evas_Object_Intercept_Raise_Cb func) | 361 | evas_object_intercept_raise_callback_del(Evas_Object *obj, Evas_Object_Intercept_Raise_Cb func) |
387 | { | 362 | { |
388 | /* MEM OK */ | ||
389 | void *data; | 363 | void *data; |
390 | 364 | ||
391 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 365 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -403,7 +377,6 @@ evas_object_intercept_raise_callback_del(Evas_Object *obj, Evas_Object_Intercept | |||
403 | EAPI void | 377 | EAPI void |
404 | evas_object_intercept_lower_callback_add(Evas_Object *obj, Evas_Object_Intercept_Lower_Cb func, const void *data) | 378 | evas_object_intercept_lower_callback_add(Evas_Object *obj, Evas_Object_Intercept_Lower_Cb func, const void *data) |
405 | { | 379 | { |
406 | /* MEM OK */ | ||
407 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 380 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
408 | return; | 381 | return; |
409 | MAGIC_CHECK_END(); | 382 | MAGIC_CHECK_END(); |
@@ -417,7 +390,6 @@ evas_object_intercept_lower_callback_add(Evas_Object *obj, Evas_Object_Intercept | |||
417 | EAPI void * | 390 | EAPI void * |
418 | evas_object_intercept_lower_callback_del(Evas_Object *obj, Evas_Object_Intercept_Lower_Cb func) | 391 | evas_object_intercept_lower_callback_del(Evas_Object *obj, Evas_Object_Intercept_Lower_Cb func) |
419 | { | 392 | { |
420 | /* MEM OK */ | ||
421 | void *data; | 393 | void *data; |
422 | 394 | ||
423 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 395 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -435,7 +407,6 @@ evas_object_intercept_lower_callback_del(Evas_Object *obj, Evas_Object_Intercept | |||
435 | EAPI void | 407 | EAPI void |
436 | evas_object_intercept_stack_above_callback_add(Evas_Object *obj, Evas_Object_Intercept_Stack_Above_Cb func, const void *data) | 408 | evas_object_intercept_stack_above_callback_add(Evas_Object *obj, Evas_Object_Intercept_Stack_Above_Cb func, const void *data) |
437 | { | 409 | { |
438 | /* MEM OK */ | ||
439 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 410 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
440 | return; | 411 | return; |
441 | MAGIC_CHECK_END(); | 412 | MAGIC_CHECK_END(); |
@@ -449,7 +420,6 @@ evas_object_intercept_stack_above_callback_add(Evas_Object *obj, Evas_Object_Int | |||
449 | EAPI void * | 420 | EAPI void * |
450 | evas_object_intercept_stack_above_callback_del(Evas_Object *obj, Evas_Object_Intercept_Stack_Above_Cb func) | 421 | evas_object_intercept_stack_above_callback_del(Evas_Object *obj, Evas_Object_Intercept_Stack_Above_Cb func) |
451 | { | 422 | { |
452 | /* MEM OK */ | ||
453 | void *data; | 423 | void *data; |
454 | 424 | ||
455 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 425 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -467,7 +437,6 @@ evas_object_intercept_stack_above_callback_del(Evas_Object *obj, Evas_Object_Int | |||
467 | EAPI void | 437 | EAPI void |
468 | evas_object_intercept_stack_below_callback_add(Evas_Object *obj, Evas_Object_Intercept_Stack_Below_Cb func, const void *data) | 438 | evas_object_intercept_stack_below_callback_add(Evas_Object *obj, Evas_Object_Intercept_Stack_Below_Cb func, const void *data) |
469 | { | 439 | { |
470 | /* MEM OK */ | ||
471 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 440 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
472 | return; | 441 | return; |
473 | MAGIC_CHECK_END(); | 442 | MAGIC_CHECK_END(); |
@@ -481,7 +450,6 @@ evas_object_intercept_stack_below_callback_add(Evas_Object *obj, Evas_Object_Int | |||
481 | EAPI void * | 450 | EAPI void * |
482 | evas_object_intercept_stack_below_callback_del(Evas_Object *obj, Evas_Object_Intercept_Stack_Below_Cb func) | 451 | evas_object_intercept_stack_below_callback_del(Evas_Object *obj, Evas_Object_Intercept_Stack_Below_Cb func) |
483 | { | 452 | { |
484 | /* MEM OK */ | ||
485 | void *data; | 453 | void *data; |
486 | 454 | ||
487 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 455 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -499,7 +467,6 @@ evas_object_intercept_stack_below_callback_del(Evas_Object *obj, Evas_Object_Int | |||
499 | EAPI void | 467 | EAPI void |
500 | evas_object_intercept_layer_set_callback_add(Evas_Object *obj, Evas_Object_Intercept_Layer_Set_Cb func, const void *data) | 468 | evas_object_intercept_layer_set_callback_add(Evas_Object *obj, Evas_Object_Intercept_Layer_Set_Cb func, const void *data) |
501 | { | 469 | { |
502 | /* MEM OK */ | ||
503 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 470 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
504 | return; | 471 | return; |
505 | MAGIC_CHECK_END(); | 472 | MAGIC_CHECK_END(); |
@@ -513,7 +480,6 @@ evas_object_intercept_layer_set_callback_add(Evas_Object *obj, Evas_Object_Inter | |||
513 | EAPI void * | 480 | EAPI void * |
514 | evas_object_intercept_layer_set_callback_del(Evas_Object *obj, Evas_Object_Intercept_Layer_Set_Cb func) | 481 | evas_object_intercept_layer_set_callback_del(Evas_Object *obj, Evas_Object_Intercept_Layer_Set_Cb func) |
515 | { | 482 | { |
516 | /* MEM OK */ | ||
517 | void *data; | 483 | void *data; |
518 | 484 | ||
519 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 485 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -531,7 +497,6 @@ evas_object_intercept_layer_set_callback_del(Evas_Object *obj, Evas_Object_Inter | |||
531 | EAPI void | 497 | EAPI void |
532 | evas_object_intercept_color_set_callback_add(Evas_Object *obj, Evas_Object_Intercept_Color_Set_Cb func, const void *data) | 498 | evas_object_intercept_color_set_callback_add(Evas_Object *obj, Evas_Object_Intercept_Color_Set_Cb func, const void *data) |
533 | { | 499 | { |
534 | /* MEM OK */ | ||
535 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 500 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
536 | return; | 501 | return; |
537 | MAGIC_CHECK_END(); | 502 | MAGIC_CHECK_END(); |
@@ -545,7 +510,6 @@ evas_object_intercept_color_set_callback_add(Evas_Object *obj, Evas_Object_Inter | |||
545 | EAPI void * | 510 | EAPI void * |
546 | evas_object_intercept_color_set_callback_del(Evas_Object *obj, Evas_Object_Intercept_Color_Set_Cb func) | 511 | evas_object_intercept_color_set_callback_del(Evas_Object *obj, Evas_Object_Intercept_Color_Set_Cb func) |
547 | { | 512 | { |
548 | /* MEM OK */ | ||
549 | void *data; | 513 | void *data; |
550 | 514 | ||
551 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 515 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -563,7 +527,6 @@ evas_object_intercept_color_set_callback_del(Evas_Object *obj, Evas_Object_Inter | |||
563 | EAPI void | 527 | EAPI void |
564 | evas_object_intercept_clip_set_callback_add(Evas_Object *obj, Evas_Object_Intercept_Clip_Set_Cb func, const void *data) | 528 | evas_object_intercept_clip_set_callback_add(Evas_Object *obj, Evas_Object_Intercept_Clip_Set_Cb func, const void *data) |
565 | { | 529 | { |
566 | /* MEM OK */ | ||
567 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 530 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
568 | return; | 531 | return; |
569 | MAGIC_CHECK_END(); | 532 | MAGIC_CHECK_END(); |
@@ -577,7 +540,6 @@ evas_object_intercept_clip_set_callback_add(Evas_Object *obj, Evas_Object_Interc | |||
577 | EAPI void * | 540 | EAPI void * |
578 | evas_object_intercept_clip_set_callback_del(Evas_Object *obj, Evas_Object_Intercept_Clip_Set_Cb func) | 541 | evas_object_intercept_clip_set_callback_del(Evas_Object *obj, Evas_Object_Intercept_Clip_Set_Cb func) |
579 | { | 542 | { |
580 | /* MEM OK */ | ||
581 | void *data; | 543 | void *data; |
582 | 544 | ||
583 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 545 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
@@ -595,7 +557,6 @@ evas_object_intercept_clip_set_callback_del(Evas_Object *obj, Evas_Object_Interc | |||
595 | EAPI void | 557 | EAPI void |
596 | evas_object_intercept_clip_unset_callback_add(Evas_Object *obj, Evas_Object_Intercept_Clip_Unset_Cb func, const void *data) | 558 | evas_object_intercept_clip_unset_callback_add(Evas_Object *obj, Evas_Object_Intercept_Clip_Unset_Cb func, const void *data) |
597 | { | 559 | { |
598 | /* MEM OK */ | ||
599 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 560 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
600 | return; | 561 | return; |
601 | MAGIC_CHECK_END(); | 562 | MAGIC_CHECK_END(); |
@@ -609,7 +570,6 @@ evas_object_intercept_clip_unset_callback_add(Evas_Object *obj, Evas_Object_Inte | |||
609 | EAPI void * | 570 | EAPI void * |
610 | evas_object_intercept_clip_unset_callback_del(Evas_Object *obj, Evas_Object_Intercept_Clip_Unset_Cb func) | 571 | evas_object_intercept_clip_unset_callback_del(Evas_Object *obj, Evas_Object_Intercept_Clip_Unset_Cb func) |
611 | { | 572 | { |
612 | /* MEM OK */ | ||
613 | void *data; | 573 | void *data; |
614 | 574 | ||
615 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 575 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
diff --git a/libraries/evas/src/lib/canvas/evas_object_main.c b/libraries/evas/src/lib/canvas/evas_object_main.c index 3eaded9..86ab498 100644 --- a/libraries/evas/src/lib/canvas/evas_object_main.c +++ b/libraries/evas/src/lib/canvas/evas_object_main.c | |||
@@ -25,6 +25,7 @@ evas_object_new(Evas *e __UNUSED__) | |||
25 | obj->magic = MAGIC_OBJ; | 25 | obj->magic = MAGIC_OBJ; |
26 | obj->cur.scale = 1.0; | 26 | obj->cur.scale = 1.0; |
27 | obj->prev.scale = 1.0; | 27 | obj->prev.scale = 1.0; |
28 | obj->is_frame = EINA_FALSE; | ||
28 | 29 | ||
29 | return obj; | 30 | return obj; |
30 | } | 31 | } |
@@ -99,7 +100,8 @@ evas_object_change(Evas_Object *obj) | |||
99 | /* set changed flag on all objects this one clips too */ | 100 | /* set changed flag on all objects this one clips too */ |
100 | if (!((movch) && (obj->is_static_clip))) | 101 | if (!((movch) && (obj->is_static_clip))) |
101 | { | 102 | { |
102 | EINA_LIST_FOREACH(obj->clip.clipees, l, obj2) evas_object_change(obj2); | 103 | EINA_LIST_FOREACH(obj->clip.clipees, l, obj2) |
104 | evas_object_change(obj2); | ||
103 | } | 105 | } |
104 | EINA_LIST_FOREACH(obj->proxy.proxies, l, obj2) | 106 | EINA_LIST_FOREACH(obj->proxy.proxies, l, obj2) |
105 | { | 107 | { |
@@ -111,8 +113,8 @@ evas_object_change(Evas_Object *obj) | |||
111 | void | 113 | void |
112 | evas_object_render_pre_visible_change(Eina_Array *rects, Evas_Object *obj, int is_v, int was_v) | 114 | evas_object_render_pre_visible_change(Eina_Array *rects, Evas_Object *obj, int is_v, int was_v) |
113 | { | 115 | { |
114 | if (obj->smart.smart) return ; | 116 | if (obj->smart.smart) return; |
115 | if (is_v == was_v) return ; | 117 | if (is_v == was_v) return; |
116 | if (is_v) | 118 | if (is_v) |
117 | { | 119 | { |
118 | evas_add_rect(rects, | 120 | evas_add_rect(rects, |
@@ -134,8 +136,8 @@ evas_object_render_pre_visible_change(Eina_Array *rects, Evas_Object *obj, int i | |||
134 | void | 136 | void |
135 | evas_object_render_pre_clipper_change(Eina_Array *rects, Evas_Object *obj) | 137 | evas_object_render_pre_clipper_change(Eina_Array *rects, Evas_Object *obj) |
136 | { | 138 | { |
137 | if (obj->smart.smart) return ; | 139 | if (obj->smart.smart) return; |
138 | if (obj->cur.clipper == obj->prev.clipper) return ; | 140 | if (obj->cur.clipper == obj->prev.clipper) return; |
139 | if ((obj->cur.clipper) && (obj->prev.clipper)) | 141 | if ((obj->cur.clipper) && (obj->prev.clipper)) |
140 | { | 142 | { |
141 | /* get difference rects between clippers */ | 143 | /* get difference rects between clippers */ |
@@ -223,7 +225,8 @@ evas_object_clip_changes_clean(Evas_Object *obj) | |||
223 | { | 225 | { |
224 | Eina_Rectangle *r; | 226 | Eina_Rectangle *r; |
225 | 227 | ||
226 | EINA_LIST_FREE(obj->clip.changes, r) eina_rectangle_free(r); | 228 | EINA_LIST_FREE(obj->clip.changes, r) |
229 | eina_rectangle_free(r); | ||
227 | } | 230 | } |
228 | 231 | ||
229 | void | 232 | void |
@@ -408,11 +411,11 @@ evas_object_del(Evas_Object *obj) | |||
408 | obj->focused = 0; | 411 | obj->focused = 0; |
409 | obj->layer->evas->focused = NULL; | 412 | obj->layer->evas->focused = NULL; |
410 | _evas_object_event_new(); | 413 | _evas_object_event_new(); |
411 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FOCUS_OUT, NULL); | 414 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FOCUS_OUT, NULL, _evas_event_counter); |
412 | _evas_post_event_callback_call(obj->layer->evas); | 415 | _evas_post_event_callback_call(obj->layer->evas); |
413 | } | 416 | } |
414 | _evas_object_event_new(); | 417 | _evas_object_event_new(); |
415 | evas_object_event_callback_call(obj, EVAS_CALLBACK_DEL, NULL); | 418 | evas_object_event_callback_call(obj, EVAS_CALLBACK_DEL, NULL, _evas_event_counter); |
416 | _evas_post_event_callback_call(obj->layer->evas); | 419 | _evas_post_event_callback_call(obj->layer->evas); |
417 | if (obj->mouse_grabbed > 0) | 420 | if (obj->mouse_grabbed > 0) |
418 | obj->layer->evas->pointer.mouse_grabbed -= obj->mouse_grabbed; | 421 | obj->layer->evas->pointer.mouse_grabbed -= obj->mouse_grabbed; |
@@ -426,9 +429,6 @@ evas_object_del(Evas_Object *obj) | |||
426 | evas_object_free(obj, 1); | 429 | evas_object_free(obj, 1); |
427 | return; | 430 | return; |
428 | } | 431 | } |
429 | obj->layer->evas->pointer.mouse_grabbed -= obj->mouse_grabbed; | ||
430 | obj->mouse_grabbed = 0; | ||
431 | obj->mouse_in = 0; | ||
432 | evas_object_grabs_cleanup(obj); | 432 | evas_object_grabs_cleanup(obj); |
433 | while (obj->clip.clipees) | 433 | while (obj->clip.clipees) |
434 | evas_object_clip_unset(obj->clip.clipees->data); | 434 | evas_object_clip_unset(obj->clip.clipees->data); |
@@ -438,7 +438,7 @@ evas_object_del(Evas_Object *obj) | |||
438 | if (obj->smart.smart) evas_object_smart_del(obj); | 438 | if (obj->smart.smart) evas_object_smart_del(obj); |
439 | evas_object_map_set(obj, NULL); | 439 | evas_object_map_set(obj, NULL); |
440 | _evas_object_event_new(); | 440 | _evas_object_event_new(); |
441 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FREE, NULL); | 441 | evas_object_event_callback_call(obj, EVAS_CALLBACK_FREE, NULL, _evas_event_counter); |
442 | _evas_post_event_callback_call(obj->layer->evas); | 442 | _evas_post_event_callback_call(obj->layer->evas); |
443 | evas_object_smart_cleanup(obj); | 443 | evas_object_smart_cleanup(obj); |
444 | obj->delete_me = 1; | 444 | obj->delete_me = 1; |
@@ -449,18 +449,38 @@ EAPI void | |||
449 | evas_object_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y) | 449 | evas_object_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y) |
450 | { | 450 | { |
451 | int is, was = 0, pass = 0, freeze = 0; | 451 | int is, was = 0, pass = 0, freeze = 0; |
452 | int nx = 0, ny = 0; | ||
452 | 453 | ||
453 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 454 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
454 | return; | 455 | return; |
455 | MAGIC_CHECK_END(); | 456 | MAGIC_CHECK_END(); |
456 | if (obj->delete_me) return; | 457 | if (obj->delete_me) return; |
457 | if (evas_object_intercept_call_move(obj, x, y)) return; | 458 | |
459 | nx = x; | ||
460 | ny = y; | ||
461 | |||
462 | if (!obj->is_frame) | ||
463 | { | ||
464 | int fx, fy; | ||
465 | |||
466 | evas_output_framespace_get(obj->layer->evas, &fx, &fy, NULL, NULL); | ||
467 | if (!obj->smart.parent) | ||
468 | { | ||
469 | nx += fx; | ||
470 | ny += fy; | ||
471 | } | ||
472 | } | ||
473 | |||
474 | if (evas_object_intercept_call_move(obj, nx, ny)) return; | ||
475 | |||
458 | if (obj->doing.in_move > 0) | 476 | if (obj->doing.in_move > 0) |
459 | { | 477 | { |
460 | WRN("evas_object_move() called on object %p when in the middle of moving the same object", obj); | 478 | WRN("evas_object_move() called on object %p when in the middle of moving the same object", obj); |
461 | return; | 479 | return; |
462 | } | 480 | } |
463 | if ((obj->cur.geometry.x == x) && (obj->cur.geometry.y == y)) return; | 481 | |
482 | if ((obj->cur.geometry.x == nx) && (obj->cur.geometry.y == ny)) return; | ||
483 | |||
464 | if (obj->layer->evas->events_frozen <= 0) | 484 | if (obj->layer->evas->events_frozen <= 0) |
465 | { | 485 | { |
466 | pass = evas_event_passes_through(obj); | 486 | pass = evas_event_passes_through(obj); |
@@ -471,13 +491,16 @@ evas_object_move(Evas_Object *obj, Evas_Coord x, Evas_Coord y) | |||
471 | obj->layer->evas->pointer.y, 1, 1); | 491 | obj->layer->evas->pointer.y, 1, 1); |
472 | } | 492 | } |
473 | obj->doing.in_move++; | 493 | obj->doing.in_move++; |
494 | |||
474 | if (obj->smart.smart) | 495 | if (obj->smart.smart) |
475 | { | 496 | { |
476 | if (obj->smart.smart->smart_class->move) | 497 | if (obj->smart.smart->smart_class->move) |
477 | obj->smart.smart->smart_class->move(obj, x, y); | 498 | obj->smart.smart->smart_class->move(obj, nx, ny); |
478 | } | 499 | } |
479 | obj->cur.geometry.x = x; | 500 | |
480 | obj->cur.geometry.y = y; | 501 | obj->cur.geometry.x = nx; |
502 | obj->cur.geometry.y = ny; | ||
503 | |||
481 | //// obj->cur.cache.geometry.validity = 0; | 504 | //// obj->cur.cache.geometry.validity = 0; |
482 | obj->changed_move = 1; | 505 | obj->changed_move = 1; |
483 | evas_object_change(obj); | 506 | evas_object_change(obj); |
@@ -509,19 +532,40 @@ EAPI void | |||
509 | evas_object_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h) | 532 | evas_object_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h) |
510 | { | 533 | { |
511 | int is, was = 0, pass = 0, freeze =0; | 534 | int is, was = 0, pass = 0, freeze =0; |
535 | int nw = 0, nh = 0; | ||
512 | 536 | ||
513 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | 537 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); |
514 | return; | 538 | return; |
515 | MAGIC_CHECK_END(); | 539 | MAGIC_CHECK_END(); |
516 | if (obj->delete_me) return; | 540 | if (obj->delete_me) return; |
517 | if (w < 0) w = 0; if (h < 0) h = 0; | 541 | if (w < 0) w = 0; if (h < 0) h = 0; |
518 | if (evas_object_intercept_call_resize(obj, w, h)) return; | 542 | |
543 | nw = w; | ||
544 | nh = h; | ||
545 | if (!obj->is_frame) | ||
546 | { | ||
547 | int fw, fh; | ||
548 | |||
549 | evas_output_framespace_get(obj->layer->evas, NULL, NULL, &fw, &fh); | ||
550 | if (!obj->smart.parent) | ||
551 | { | ||
552 | nw = w - fw; | ||
553 | nh = h - fh; | ||
554 | if (nw < 0) nw = 0; | ||
555 | if (nh < 0) nh = 0; | ||
556 | } | ||
557 | } | ||
558 | |||
559 | if (evas_object_intercept_call_resize(obj, nw, nh)) return; | ||
560 | |||
519 | if (obj->doing.in_resize > 0) | 561 | if (obj->doing.in_resize > 0) |
520 | { | 562 | { |
521 | WRN("evas_object_resize() called on object %p when in the middle of resizing the same object", obj); | 563 | WRN("evas_object_resize() called on object %p when in the middle of resizing the same object", obj); |
522 | return; | 564 | return; |
523 | } | 565 | } |
524 | if ((obj->cur.geometry.w == w) && (obj->cur.geometry.h == h)) return; | 566 | |
567 | if ((obj->cur.geometry.w == nw) && (obj->cur.geometry.h == nh)) return; | ||
568 | |||
525 | if (obj->layer->evas->events_frozen <= 0) | 569 | if (obj->layer->evas->events_frozen <= 0) |
526 | { | 570 | { |
527 | pass = evas_event_passes_through(obj); | 571 | pass = evas_event_passes_through(obj); |
@@ -532,13 +576,16 @@ evas_object_resize(Evas_Object *obj, Evas_Coord w, Evas_Coord h) | |||
532 | obj->layer->evas->pointer.y, 1, 1); | 576 | obj->layer->evas->pointer.y, 1, 1); |
533 | } | 577 | } |
534 | obj->doing.in_resize++; | 578 | obj->doing.in_resize++; |
579 | |||
535 | if (obj->smart.smart) | 580 | if (obj->smart.smart) |
536 | { | 581 | { |
537 | if (obj->smart.smart->smart_class->resize) | 582 | if (obj->smart.smart->smart_class->resize) |
538 | obj->smart.smart->smart_class->resize(obj, w, h); | 583 | obj->smart.smart->smart_class->resize(obj, nw, nh); |
539 | } | 584 | } |
540 | obj->cur.geometry.w = w; | 585 | |
541 | obj->cur.geometry.h = h; | 586 | obj->cur.geometry.w = nw; |
587 | obj->cur.geometry.h = nh; | ||
588 | |||
542 | //// obj->cur.cache.geometry.validity = 0; | 589 | //// obj->cur.cache.geometry.validity = 0; |
543 | evas_object_change(obj); | 590 | evas_object_change(obj); |
544 | evas_object_clip_dirty(obj); | 591 | evas_object_clip_dirty(obj); |
@@ -581,6 +628,7 @@ evas_object_geometry_get(const Evas_Object *obj, Evas_Coord *x, Evas_Coord *y, E | |||
581 | if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0; | 628 | if (x) *x = 0; if (y) *y = 0; if (w) *w = 0; if (h) *h = 0; |
582 | return; | 629 | return; |
583 | } | 630 | } |
631 | |||
584 | if (x) *x = obj->cur.geometry.x; | 632 | if (x) *x = obj->cur.geometry.x; |
585 | if (y) *y = obj->cur.geometry.y; | 633 | if (y) *y = obj->cur.geometry.y; |
586 | if (w) *w = obj->cur.geometry.w; | 634 | if (w) *w = obj->cur.geometry.w; |
@@ -1084,8 +1132,7 @@ evas_object_render_op_set(Evas_Object *obj, Evas_Render_Op render_op) | |||
1084 | return; | 1132 | return; |
1085 | MAGIC_CHECK_END(); | 1133 | MAGIC_CHECK_END(); |
1086 | if (obj->delete_me) return; | 1134 | if (obj->delete_me) return; |
1087 | if ((Evas_Render_Op)obj->cur.render_op == render_op) | 1135 | if (obj->cur.render_op == render_op) return; |
1088 | return; | ||
1089 | obj->cur.render_op = render_op; | 1136 | obj->cur.render_op = render_op; |
1090 | evas_object_change(obj); | 1137 | evas_object_change(obj); |
1091 | } | 1138 | } |
@@ -1317,3 +1364,20 @@ evas_object_static_clip_get(const Evas_Object *obj) | |||
1317 | return obj->is_static_clip; | 1364 | return obj->is_static_clip; |
1318 | } | 1365 | } |
1319 | 1366 | ||
1367 | EAPI void | ||
1368 | evas_object_is_frame_object_set(Evas_Object *obj, Eina_Bool is_frame) | ||
1369 | { | ||
1370 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | ||
1371 | return; | ||
1372 | MAGIC_CHECK_END(); | ||
1373 | obj->is_frame = is_frame; | ||
1374 | } | ||
1375 | |||
1376 | EAPI Eina_Bool | ||
1377 | evas_object_is_frame_object_get(Evas_Object *obj) | ||
1378 | { | ||
1379 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | ||
1380 | return EINA_FALSE; | ||
1381 | MAGIC_CHECK_END(); | ||
1382 | return obj->is_frame; | ||
1383 | } | ||
diff --git a/libraries/evas/src/lib/canvas/evas_object_smart.c b/libraries/evas/src/lib/canvas/evas_object_smart.c index a7dfcdf..69d7f3b 100644 --- a/libraries/evas/src/lib/canvas/evas_object_smart.c +++ b/libraries/evas/src/lib/canvas/evas_object_smart.c | |||
@@ -402,6 +402,37 @@ evas_object_smart_callback_del(Evas_Object *obj, const char *event, Evas_Smart_C | |||
402 | return NULL; | 402 | return NULL; |
403 | } | 403 | } |
404 | 404 | ||
405 | EAPI void * | ||
406 | evas_object_smart_callback_del_full(Evas_Object *obj, const char *event, Evas_Smart_Cb func, const void *data) | ||
407 | { | ||
408 | Evas_Object_Smart *o; | ||
409 | Eina_List *l; | ||
410 | Evas_Smart_Callback *cb; | ||
411 | |||
412 | MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ); | ||
413 | return NULL; | ||
414 | MAGIC_CHECK_END(); | ||
415 | o = (Evas_Object_Smart *)(obj->object_data); | ||
416 | MAGIC_CHECK(o, Evas_Object_Smart, MAGIC_OBJ_SMART); | ||
417 | return NULL; | ||
418 | MAGIC_CHECK_END(); | ||
419 | if (!event) return NULL; | ||
420 | EINA_LIST_FOREACH(o->callbacks, l, cb) | ||
421 | { | ||
422 | if ((!strcmp(cb->event, event)) && (cb->func == func) && (cb->func_data == data)) | ||
423 | { | ||
424 | void *ret; | ||
425 | |||
426 | ret = cb->func_data; | ||
427 | cb->delete_me = 1; | ||
428 | o->deletions_waiting = 1; | ||
429 | evas_object_smart_callbacks_clear(obj); | ||
430 | return ret; | ||
431 | } | ||
432 | } | ||
433 | return NULL; | ||
434 | } | ||
435 | |||
405 | EAPI void | 436 | EAPI void |
406 | evas_object_smart_callback_call(Evas_Object *obj, const char *event, void *event_info) | 437 | evas_object_smart_callback_call(Evas_Object *obj, const char *event, void *event_info) |
407 | { | 438 | { |
diff --git a/libraries/evas/src/lib/canvas/evas_object_table.c b/libraries/evas/src/lib/canvas/evas_object_table.c index 6e28fce..cdfa07f 100644 --- a/libraries/evas/src/lib/canvas/evas_object_table.c +++ b/libraries/evas/src/lib/canvas/evas_object_table.c | |||
@@ -1,5 +1,5 @@ | |||
1 | #include <errno.h> | ||
2 | #include "evas_common.h" | 1 | #include "evas_common.h" |
2 | #include <errno.h> | ||
3 | 3 | ||
4 | typedef struct _Evas_Object_Table_Data Evas_Object_Table_Data; | 4 | typedef struct _Evas_Object_Table_Data Evas_Object_Table_Data; |
5 | typedef struct _Evas_Object_Table_Option Evas_Object_Table_Option; | 5 | typedef struct _Evas_Object_Table_Option Evas_Object_Table_Option; |
diff --git a/libraries/evas/src/lib/canvas/evas_object_text.c b/libraries/evas/src/lib/canvas/evas_object_text.c index 6c30fcc..dbe5e08 100644 --- a/libraries/evas/src/lib/canvas/evas_object_text.c +++ b/libraries/evas/src/lib/canvas/evas_object_text.c | |||
@@ -531,8 +531,9 @@ _evas_object_text_layout(Evas_Object *obj, Evas_Object_Text *o, const Eina_Unico | |||
531 | { | 531 | { |
532 | EvasBiDiStrIndex *v_to_l = NULL; | 532 | EvasBiDiStrIndex *v_to_l = NULL; |
533 | size_t pos, visual_pos; | 533 | size_t pos, visual_pos; |
534 | int len = eina_unicode_strlen(text), par_len; | 534 | int len = eina_unicode_strlen(text); |
535 | #ifdef BIDI_SUPPORT | 535 | #ifdef BIDI_SUPPORT |
536 | int par_len = len; | ||
536 | int *segment_idxs = NULL; | 537 | int *segment_idxs = NULL; |
537 | if (o->bidi_delimiters) | 538 | if (o->bidi_delimiters) |
538 | segment_idxs = evas_bidi_segment_idxs_get(text, o->bidi_delimiters); | 539 | segment_idxs = evas_bidi_segment_idxs_get(text, o->bidi_delimiters); |
@@ -543,7 +544,6 @@ _evas_object_text_layout(Evas_Object *obj, Evas_Object_Text *o, const Eina_Unico | |||
543 | #endif | 544 | #endif |
544 | visual_pos = pos = 0; | 545 | visual_pos = pos = 0; |
545 | 546 | ||
546 | par_len = len; | ||
547 | while (len > 0) | 547 | while (len > 0) |
548 | { | 548 | { |
549 | Evas_Font_Instance *script_fi = NULL; | 549 | Evas_Font_Instance *script_fi = NULL; |
diff --git a/libraries/evas/src/lib/canvas/evas_object_textblock.c b/libraries/evas/src/lib/canvas/evas_object_textblock.c index 7941a45..568911c 100644 --- a/libraries/evas/src/lib/canvas/evas_object_textblock.c +++ b/libraries/evas/src/lib/canvas/evas_object_textblock.c | |||
@@ -61,13 +61,13 @@ | |||
61 | * @subsection textblock_layout The layout system | 61 | * @subsection textblock_layout The layout system |
62 | * @todo write @ref textblock_layout | 62 | * @todo write @ref textblock_layout |
63 | */ | 63 | */ |
64 | #include <stdlib.h> | ||
65 | |||
66 | #include "evas_common.h" | 64 | #include "evas_common.h" |
67 | #include "evas_private.h" | 65 | #include "evas_private.h" |
66 | #include <stdlib.h> | ||
68 | 67 | ||
69 | #ifdef HAVE_LINEBREAK | 68 | #ifdef HAVE_LINEBREAK |
70 | #include "linebreak.h" | 69 | #include "linebreak.h" |
70 | #include "wordbreak.h" | ||
71 | #endif | 71 | #endif |
72 | 72 | ||
73 | /* save typing */ | 73 | /* save typing */ |
@@ -78,12 +78,19 @@ | |||
78 | static const char o_type[] = "textblock"; | 78 | static const char o_type[] = "textblock"; |
79 | 79 | ||
80 | /* The char to be inserted instead of visible formats */ | 80 | /* The char to be inserted instead of visible formats */ |
81 | #define EVAS_TEXTBLOCK_REPLACEMENT_CHAR 0xFFFC | 81 | #define _REPLACEMENT_CHAR 0xFFFC |
82 | #define _PARAGRAPH_SEPARATOR 0x2029 | 82 | #define _PARAGRAPH_SEPARATOR 0x2029 |
83 | #define _NEWLINE '\n' | ||
84 | #define _TAB '\t' | ||
85 | |||
86 | #define _REPLACEMENT_CHAR_UTF8 "\xEF\xBF\xBC" | ||
87 | #define _PARAGRAPH_SEPARATOR_UTF8 "\xE2\x80\xA9" | ||
88 | #define _NEWLINE_UTF8 "\n" | ||
89 | #define _TAB_UTF8 "\t" | ||
83 | #define EVAS_TEXTBLOCK_IS_VISIBLE_FORMAT_CHAR(ch) \ | 90 | #define EVAS_TEXTBLOCK_IS_VISIBLE_FORMAT_CHAR(ch) \ |
84 | (((ch) == EVAS_TEXTBLOCK_REPLACEMENT_CHAR) || \ | 91 | (((ch) == _REPLACEMENT_CHAR) || \ |
85 | ((ch) == '\n') || \ | 92 | ((ch) == _NEWLINE) || \ |
86 | ((ch) == '\t') || \ | 93 | ((ch) == _TAB) || \ |
87 | ((ch) == _PARAGRAPH_SEPARATOR)) | 94 | ((ch) == _PARAGRAPH_SEPARATOR)) |
88 | 95 | ||
89 | /* private struct for textblock object internal data */ | 96 | /* private struct for textblock object internal data */ |
@@ -101,6 +108,12 @@ typedef struct _Evas_Object_Textblock Evas_Object_Textblock; | |||
101 | typedef struct _Evas_Object_Style_Tag Evas_Object_Style_Tag; | 108 | typedef struct _Evas_Object_Style_Tag Evas_Object_Style_Tag; |
102 | /** | 109 | /** |
103 | * @internal | 110 | * @internal |
111 | * @typedef Evas_Object_Style_Tag | ||
112 | * The structure used for finding style tags. | ||
113 | */ | ||
114 | typedef struct _Evas_Object_Style_Tag_Base Evas_Object_Style_Tag_Base; | ||
115 | /** | ||
116 | * @internal | ||
104 | * @typedef Evas_Object_Textblock_Node_Text | 117 | * @typedef Evas_Object_Textblock_Node_Text |
105 | * A text node. | 118 | * A text node. |
106 | */ | 119 | */ |
@@ -195,21 +208,26 @@ typedef struct _Evas_Object_Textblock_Format Evas_Object_Textblock_Format; | |||
195 | * Returns true if closer is the closer of base. | 208 | * Returns true if closer is the closer of base. |
196 | */ | 209 | */ |
197 | #define _FORMAT_IS_CLOSER_OF(base, closer, closer_len) \ | 210 | #define _FORMAT_IS_CLOSER_OF(base, closer, closer_len) \ |
198 | (!strncmp(base + 1, closer, closer_len) && \ | 211 | (!strncmp(base, closer, closer_len) && \ |
199 | (!base[closer_len + 1] || \ | 212 | (!base[closer_len] || \ |
200 | (base[closer_len + 1] == '=') || \ | 213 | (base[closer_len] == '=') || \ |
201 | _is_white(base[closer_len + 1]))) | 214 | _is_white(base[closer_len]))) |
202 | 215 | ||
203 | /*FIXME: document the structs and struct items. */ | 216 | /*FIXME: document the structs and struct items. */ |
204 | struct _Evas_Object_Style_Tag | 217 | struct _Evas_Object_Style_Tag_Base |
205 | { | 218 | { |
206 | EINA_INLIST; | ||
207 | char *tag; | 219 | char *tag; |
208 | char *replace; | 220 | char *replace; |
209 | size_t tag_len; | 221 | size_t tag_len; |
210 | size_t replace_len; | 222 | size_t replace_len; |
211 | }; | 223 | }; |
212 | 224 | ||
225 | struct _Evas_Object_Style_Tag | ||
226 | { | ||
227 | EINA_INLIST; | ||
228 | Evas_Object_Style_Tag_Base tag; | ||
229 | }; | ||
230 | |||
213 | struct _Evas_Object_Textblock_Node_Text | 231 | struct _Evas_Object_Textblock_Node_Text |
214 | { | 232 | { |
215 | EINA_INLIST; | 233 | EINA_INLIST; |
@@ -229,11 +247,18 @@ struct _Evas_Object_Textblock_Node_Format | |||
229 | Evas_Object_Textblock_Node_Text *text_node; | 247 | Evas_Object_Textblock_Node_Text *text_node; |
230 | size_t offset; | 248 | size_t offset; |
231 | unsigned char anchor : 2; | 249 | unsigned char anchor : 2; |
250 | Eina_Bool opener : 1; | ||
251 | Eina_Bool own_closer : 1; | ||
232 | Eina_Bool visible : 1; | 252 | Eina_Bool visible : 1; |
233 | Eina_Bool format_change : 1; | 253 | Eina_Bool format_change : 1; |
234 | Eina_Bool is_new : 1; | 254 | Eina_Bool is_new : 1; |
235 | }; | 255 | }; |
236 | 256 | ||
257 | /* The default tags to use */ | ||
258 | static const Evas_Object_Style_Tag_Base default_tags[] = { | ||
259 | { "b", "+ font_weight=Bold", 1, 18 }, | ||
260 | { "i", "+ font_style=Italic", 1, 19 }}; | ||
261 | |||
237 | #define ANCHOR_NONE 0 | 262 | #define ANCHOR_NONE 0 |
238 | #define ANCHOR_A 1 | 263 | #define ANCHOR_A 1 |
239 | #define ANCHOR_ITEM 2 | 264 | #define ANCHOR_ITEM 2 |
@@ -538,8 +563,8 @@ _style_replace(Evas_Textblock_Style *ts, const char *style_text) | |||
538 | 563 | ||
539 | tag = (Evas_Object_Style_Tag *)ts->tags; | 564 | tag = (Evas_Object_Style_Tag *)ts->tags; |
540 | ts->tags = (Evas_Object_Style_Tag *)eina_inlist_remove(EINA_INLIST_GET(ts->tags), EINA_INLIST_GET(tag)); | 565 | ts->tags = (Evas_Object_Style_Tag *)eina_inlist_remove(EINA_INLIST_GET(ts->tags), EINA_INLIST_GET(tag)); |
541 | free(tag->tag); | 566 | free(tag->tag.tag); |
542 | free(tag->replace); | 567 | free(tag->tag.replace); |
543 | free(tag); | 568 | free(tag); |
544 | } | 569 | } |
545 | ts->default_tag = NULL; | 570 | ts->default_tag = NULL; |
@@ -567,19 +592,38 @@ _style_clear(Evas_Textblock_Style *ts) | |||
567 | * @return The replacement string found. | 592 | * @return The replacement string found. |
568 | */ | 593 | */ |
569 | static inline const char * | 594 | static inline const char * |
570 | _style_match_tag(Evas_Textblock_Style *ts, const char *s, size_t tag_len, size_t *replace_len) | 595 | _style_match_tag(const Evas_Textblock_Style *ts, const char *s, size_t tag_len, size_t *replace_len) |
571 | { | 596 | { |
572 | Evas_Object_Style_Tag *tag; | 597 | Evas_Object_Style_Tag *tag; |
573 | 598 | ||
599 | /* Try the style tags */ | ||
574 | EINA_INLIST_FOREACH(ts->tags, tag) | 600 | EINA_INLIST_FOREACH(ts->tags, tag) |
575 | { | 601 | { |
576 | if (tag->tag_len != tag_len) continue; | 602 | if (tag->tag.tag_len != tag_len) continue; |
577 | if (!strncmp(tag->tag, s, tag_len)) | 603 | if (!strncmp(tag->tag.tag, s, tag_len)) |
578 | { | 604 | { |
579 | *replace_len = tag->replace_len; | 605 | *replace_len = tag->tag.replace_len; |
580 | return tag->replace; | 606 | return tag->tag.replace; |
581 | } | 607 | } |
582 | } | 608 | } |
609 | |||
610 | /* Try the default tags */ | ||
611 | { | ||
612 | size_t i; | ||
613 | const Evas_Object_Style_Tag_Base *btag; | ||
614 | for (btag = default_tags, i = 0 ; | ||
615 | i < (sizeof(default_tags) / sizeof(default_tags[0])) ; | ||
616 | btag++, i++) | ||
617 | { | ||
618 | if (btag->tag_len != tag_len) continue; | ||
619 | if (!strncmp(btag->tag, s, tag_len)) | ||
620 | { | ||
621 | *replace_len = btag->replace_len; | ||
622 | return btag->replace; | ||
623 | } | ||
624 | } | ||
625 | } | ||
626 | |||
583 | *replace_len = 0; | 627 | *replace_len = 0; |
584 | return NULL; | 628 | return NULL; |
585 | } | 629 | } |
@@ -1689,8 +1733,8 @@ _format_fill(Evas_Object *obj, Evas_Object_Textblock_Format *fmt, const char *st | |||
1689 | 1733 | ||
1690 | s = str; | 1734 | s = str; |
1691 | 1735 | ||
1692 | /* get rid of anything +s or -s off the start of the string */ | 1736 | /* get rid of any spaces at the start of the string */ |
1693 | while ((*s == ' ') || (*s == '+') || (*s == '-')) s++; | 1737 | while (*s == ' ') s++; |
1694 | 1738 | ||
1695 | while ((item = _format_parse(&s))) | 1739 | while ((item = _format_parse(&s))) |
1696 | { | 1740 | { |
@@ -2131,7 +2175,6 @@ _layout_format_pop(Ctxt *c, const char *format) | |||
2131 | if ((c->format_stack) && (c->format_stack->next)) | 2175 | if ((c->format_stack) && (c->format_stack->next)) |
2132 | { | 2176 | { |
2133 | Eina_List *redo_nodes = NULL; | 2177 | Eina_List *redo_nodes = NULL; |
2134 | format++; /* Skip the '-' */ | ||
2135 | 2178 | ||
2136 | /* Generic pop, should just pop. */ | 2179 | /* Generic pop, should just pop. */ |
2137 | if (((format[0] == ' ') && !format[1]) || | 2180 | if (((format[0] == ' ') && !format[1]) || |
@@ -2994,21 +3037,29 @@ _format_finalize(Evas_Object *obj, Evas_Object_Textblock_Format *fmt) | |||
2994 | * @def _IS_TAB(item) | 3037 | * @def _IS_TAB(item) |
2995 | */ | 3038 | */ |
2996 | #define _IS_TAB(item) \ | 3039 | #define _IS_TAB(item) \ |
2997 | (!strcmp(item, "\t") || !strcmp(item, "\\t")) | 3040 | (!strcmp(item, "tab") || !strcmp(item, "\t") || !strcmp(item, "\\t")) |
2998 | /** | 3041 | /** |
2999 | * @internal | 3042 | * @internal |
3000 | * Returns true if the item is a line spearator, false otherwise | 3043 | * Returns true if the item is a line spearator, false otherwise |
3001 | * @def _IS_LINE_SEPARATOR(item) | 3044 | * @def _IS_LINE_SEPARATOR(item) |
3002 | */ | 3045 | */ |
3003 | #define _IS_LINE_SEPARATOR(item) \ | 3046 | #define _IS_LINE_SEPARATOR(item) \ |
3004 | (!strcmp(item, "\n") || !strcmp(item, "\\n")) | 3047 | (!strcmp(item, "br") || !strcmp(item, "\n") || !strcmp(item, "\\n")) |
3005 | /** | 3048 | /** |
3006 | * @internal | 3049 | * @internal |
3007 | * Returns true if the item is a paragraph separator, false otherwise | 3050 | * Returns true if the item is a paragraph separator, false otherwise |
3008 | * @def _IS_PARAGRAPH_SEPARATOR(item) | 3051 | * @def _IS_PARAGRAPH_SEPARATOR(item) |
3009 | */ | 3052 | */ |
3053 | #define _IS_PARAGRAPH_SEPARATOR_SIMPLE(item) \ | ||
3054 | (!strcmp(item, "ps")) | ||
3055 | /** | ||
3056 | * @internal | ||
3057 | * Returns true if the item is a paragraph separator, false otherwise | ||
3058 | * takes legacy mode into account. | ||
3059 | * @def _IS_PARAGRAPH_SEPARATOR(item) | ||
3060 | */ | ||
3010 | #define _IS_PARAGRAPH_SEPARATOR(o, item) \ | 3061 | #define _IS_PARAGRAPH_SEPARATOR(o, item) \ |
3011 | (!strcmp(item, "ps") || \ | 3062 | (_IS_PARAGRAPH_SEPARATOR_SIMPLE(item) || \ |
3012 | (o->legacy_newline && _IS_LINE_SEPARATOR(item))) /* Paragraph separator */ | 3063 | (o->legacy_newline && _IS_LINE_SEPARATOR(item))) /* Paragraph separator */ |
3013 | 3064 | ||
3014 | /** | 3065 | /** |
@@ -3041,7 +3092,7 @@ _layout_do_format(const Evas_Object *obj __UNUSED__, Ctxt *c, | |||
3041 | int handled = 0; | 3092 | int handled = 0; |
3042 | 3093 | ||
3043 | s = n->format; | 3094 | s = n->format; |
3044 | if (!strncmp(s, "+ item ", 7)) | 3095 | if (!strncmp(s, "item ", 5)) |
3045 | { | 3096 | { |
3046 | // one of: | 3097 | // one of: |
3047 | // item size=20x10 href=name | 3098 | // item size=20x10 href=name |
@@ -3133,16 +3184,14 @@ _layout_do_format(const Evas_Object *obj __UNUSED__, Ctxt *c, | |||
3133 | if (!handled) | 3184 | if (!handled) |
3134 | { | 3185 | { |
3135 | Eina_Bool push_fmt = EINA_FALSE; | 3186 | Eina_Bool push_fmt = EINA_FALSE; |
3136 | if (s[0] == '+') | 3187 | if (n->opener && !n->own_closer) |
3137 | { | 3188 | { |
3138 | fmt = _layout_format_push(c, fmt, n); | 3189 | fmt = _layout_format_push(c, fmt, n); |
3139 | s++; | ||
3140 | push_fmt = EINA_TRUE; | 3190 | push_fmt = EINA_TRUE; |
3141 | } | 3191 | } |
3142 | else if (s[0] == '-') | 3192 | else if (!n->opener) |
3143 | { | 3193 | { |
3144 | fmt = _layout_format_pop(c, n->orig_format); | 3194 | fmt = _layout_format_pop(c, n->orig_format); |
3145 | s++; | ||
3146 | } | 3195 | } |
3147 | while ((item = _format_parse(&s))) | 3196 | while ((item = _format_parse(&s))) |
3148 | { | 3197 | { |
@@ -3166,7 +3215,7 @@ _layout_do_format(const Evas_Object *obj __UNUSED__, Ctxt *c, | |||
3166 | 3215 | ||
3167 | fi->parent.w = fi->parent.adv = 0; | 3216 | fi->parent.w = fi->parent.adv = 0; |
3168 | } | 3217 | } |
3169 | else if ((!strcmp(item, "\t")) || (!strcmp(item, "\\t"))) | 3218 | else if (_IS_TAB(item)) |
3170 | { | 3219 | { |
3171 | Evas_Object_Textblock_Format_Item *fi; | 3220 | Evas_Object_Textblock_Format_Item *fi; |
3172 | 3221 | ||
@@ -3215,28 +3264,33 @@ _layout_update_par(Ctxt *c) | |||
3215 | /* -1 means no wrap */ | 3264 | /* -1 means no wrap */ |
3216 | static int | 3265 | static int |
3217 | _layout_get_charwrap(Ctxt *c, Evas_Object_Textblock_Format *fmt, | 3266 | _layout_get_charwrap(Ctxt *c, Evas_Object_Textblock_Format *fmt, |
3218 | const Evas_Object_Textblock_Text_Item *ti, size_t line_start, | 3267 | const Evas_Object_Textblock_Item *it, size_t line_start, |
3219 | const char *breaks) | 3268 | const char *breaks) |
3220 | { | 3269 | { |
3221 | int wrap; | 3270 | int wrap; |
3222 | size_t uwrap; | 3271 | size_t uwrap; |
3223 | size_t len = eina_ustrbuf_length_get(ti->parent.text_node->unicode); | 3272 | size_t len = eina_ustrbuf_length_get(it->text_node->unicode); |
3224 | /* Currently not being used, because it doesn't contain relevant | 3273 | /* Currently not being used, because it doesn't contain relevant |
3225 | * information */ | 3274 | * information */ |
3226 | (void) breaks; | 3275 | (void) breaks; |
3227 | 3276 | ||
3228 | { | 3277 | { |
3229 | wrap = _layout_text_cutoff_get(c, fmt, ti); | 3278 | if (it->type == EVAS_TEXTBLOCK_ITEM_FORMAT) |
3279 | wrap = 0; | ||
3280 | else | ||
3281 | wrap = _layout_text_cutoff_get(c, fmt, _ITEM_TEXT(it)); | ||
3282 | |||
3230 | if (wrap < 0) | 3283 | if (wrap < 0) |
3231 | return -1; | 3284 | return -1; |
3232 | uwrap = (size_t) wrap + ti->parent.text_pos; | 3285 | uwrap = (size_t) wrap + it->text_pos; |
3233 | } | 3286 | } |
3234 | 3287 | ||
3235 | 3288 | ||
3236 | if (uwrap == line_start) | 3289 | if ((uwrap == line_start) && (it->type == EVAS_TEXTBLOCK_ITEM_TEXT)) |
3237 | { | 3290 | { |
3238 | uwrap = ti->parent.text_pos + | 3291 | uwrap = it->text_pos + |
3239 | (size_t) evas_common_text_props_cluster_next(&ti->text_props, wrap); | 3292 | (size_t) evas_common_text_props_cluster_next( |
3293 | &_ITEM_TEXT(it)->text_props, wrap); | ||
3240 | } | 3294 | } |
3241 | if ((uwrap <= line_start) || (uwrap > len)) | 3295 | if ((uwrap <= line_start) || (uwrap > len)) |
3242 | return -1; | 3296 | return -1; |
@@ -3259,16 +3313,16 @@ _layout_get_charwrap(Ctxt *c, Evas_Object_Textblock_Format *fmt, | |||
3259 | #endif | 3313 | #endif |
3260 | static int | 3314 | static int |
3261 | _layout_get_word_mixwrap_common(Ctxt *c, Evas_Object_Textblock_Format *fmt, | 3315 | _layout_get_word_mixwrap_common(Ctxt *c, Evas_Object_Textblock_Format *fmt, |
3262 | const Evas_Object_Textblock_Text_Item *ti, Eina_Bool mixed_wrap, | 3316 | const Evas_Object_Textblock_Item *it, Eina_Bool mixed_wrap, |
3263 | size_t line_start, const char *breaks) | 3317 | size_t line_start, const char *breaks) |
3264 | { | 3318 | { |
3265 | Eina_Bool wrap_after = EINA_FALSE; | 3319 | Eina_Bool wrap_after = EINA_FALSE; |
3266 | size_t wrap; | 3320 | size_t wrap; |
3267 | size_t orig_wrap; | 3321 | size_t orig_wrap; |
3268 | const Eina_Unicode *str = eina_ustrbuf_string_get( | 3322 | const Eina_Unicode *str = eina_ustrbuf_string_get( |
3269 | ti->parent.text_node->unicode); | 3323 | it->text_node->unicode); |
3270 | int item_start = ti->parent.text_pos; | 3324 | int item_start = it->text_pos; |
3271 | size_t len = eina_ustrbuf_length_get(ti->parent.text_node->unicode); | 3325 | size_t len = eina_ustrbuf_length_get(it->text_node->unicode); |
3272 | #ifndef HAVE_LINEBREAK | 3326 | #ifndef HAVE_LINEBREAK |
3273 | /* Not used without liblinebreak ATM. */ | 3327 | /* Not used without liblinebreak ATM. */ |
3274 | (void) breaks; | 3328 | (void) breaks; |
@@ -3276,7 +3330,10 @@ _layout_get_word_mixwrap_common(Ctxt *c, Evas_Object_Textblock_Format *fmt, | |||
3276 | 3330 | ||
3277 | { | 3331 | { |
3278 | int swrap = -1; | 3332 | int swrap = -1; |
3279 | swrap = _layout_text_cutoff_get(c, fmt, ti); | 3333 | if (it->type == EVAS_TEXTBLOCK_ITEM_FORMAT) |
3334 | swrap = 0; | ||
3335 | else | ||
3336 | swrap = _layout_text_cutoff_get(c, fmt, _ITEM_TEXT(it)); | ||
3280 | /* Avoiding too small textblocks to even contain one char. | 3337 | /* Avoiding too small textblocks to even contain one char. |
3281 | * FIXME: This can cause breaking inside ligatures. */ | 3338 | * FIXME: This can cause breaking inside ligatures. */ |
3282 | 3339 | ||
@@ -3331,7 +3388,7 @@ _layout_get_word_mixwrap_common(Ctxt *c, Evas_Object_Textblock_Format *fmt, | |||
3331 | { | 3388 | { |
3332 | if (mixed_wrap) | 3389 | if (mixed_wrap) |
3333 | { | 3390 | { |
3334 | return _layout_get_charwrap(c, fmt, ti, | 3391 | return _layout_get_charwrap(c, fmt, it, |
3335 | line_start, breaks); | 3392 | line_start, breaks); |
3336 | } | 3393 | } |
3337 | else | 3394 | else |
@@ -3362,20 +3419,20 @@ _layout_get_word_mixwrap_common(Ctxt *c, Evas_Object_Textblock_Format *fmt, | |||
3362 | /* -1 means no wrap */ | 3419 | /* -1 means no wrap */ |
3363 | static int | 3420 | static int |
3364 | _layout_get_wordwrap(Ctxt *c, Evas_Object_Textblock_Format *fmt, | 3421 | _layout_get_wordwrap(Ctxt *c, Evas_Object_Textblock_Format *fmt, |
3365 | const Evas_Object_Textblock_Text_Item *ti, size_t line_start, | 3422 | const Evas_Object_Textblock_Item *it, size_t line_start, |
3366 | const char *breaks) | 3423 | const char *breaks) |
3367 | { | 3424 | { |
3368 | return _layout_get_word_mixwrap_common(c, fmt, ti, EINA_FALSE, line_start, | 3425 | return _layout_get_word_mixwrap_common(c, fmt, it, EINA_FALSE, line_start, |
3369 | breaks); | 3426 | breaks); |
3370 | } | 3427 | } |
3371 | 3428 | ||
3372 | /* -1 means no wrap */ | 3429 | /* -1 means no wrap */ |
3373 | static int | 3430 | static int |
3374 | _layout_get_mixedwrap(Ctxt *c, Evas_Object_Textblock_Format *fmt, | 3431 | _layout_get_mixedwrap(Ctxt *c, Evas_Object_Textblock_Format *fmt, |
3375 | const Evas_Object_Textblock_Text_Item *ti, size_t line_start, | 3432 | const Evas_Object_Textblock_Item *it, size_t line_start, |
3376 | const char *breaks) | 3433 | const char *breaks) |
3377 | { | 3434 | { |
3378 | return _layout_get_word_mixwrap_common(c, fmt, ti, EINA_TRUE, line_start, | 3435 | return _layout_get_word_mixwrap_common(c, fmt, it, EINA_TRUE, line_start, |
3379 | breaks); | 3436 | breaks); |
3380 | } | 3437 | } |
3381 | 3438 | ||
@@ -3503,7 +3560,7 @@ _layout_paragraph_reorder_lines(Evas_Object_Textblock_Paragraph *par) | |||
3503 | 3560 | ||
3504 | static void | 3561 | static void |
3505 | _layout_paragraph_render(Evas_Object_Textblock *o, | 3562 | _layout_paragraph_render(Evas_Object_Textblock *o, |
3506 | Evas_Object_Textblock_Paragraph *par) | 3563 | Evas_Object_Textblock_Paragraph *par) |
3507 | { | 3564 | { |
3508 | if (par->rendered) | 3565 | if (par->rendered) |
3509 | return; | 3566 | return; |
@@ -3521,6 +3578,8 @@ _layout_paragraph_render(Evas_Object_Textblock *o, | |||
3521 | par->bidi_props = NULL; | 3578 | par->bidi_props = NULL; |
3522 | } | 3579 | } |
3523 | } | 3580 | } |
3581 | #else | ||
3582 | (void) o; | ||
3524 | #endif | 3583 | #endif |
3525 | } | 3584 | } |
3526 | 3585 | ||
@@ -3656,120 +3715,127 @@ _layout_par(Ctxt *c) | |||
3656 | else if ((it->format->wrap_word || it->format->wrap_char || | 3715 | else if ((it->format->wrap_word || it->format->wrap_char || |
3657 | it->format->wrap_mixed) && it->text_node) | 3716 | it->format->wrap_mixed) && it->text_node) |
3658 | { | 3717 | { |
3659 | if (it->type == EVAS_TEXTBLOCK_ITEM_FORMAT) | 3718 | size_t line_start; |
3719 | size_t it_len; | ||
3720 | |||
3721 | it_len = (it->type == EVAS_TEXTBLOCK_ITEM_FORMAT) ? | ||
3722 | 1 : _ITEM_TEXT(it)->text_props.text_len; | ||
3723 | |||
3724 | |||
3725 | #ifdef HAVE_LINEBREAK | ||
3726 | /* If we haven't calculated the linebreaks yet, | ||
3727 | * do */ | ||
3728 | if (!line_breaks) | ||
3660 | { | 3729 | { |
3661 | /* Don't wrap if it's the only item */ | 3730 | /* Only relevant in those cases */ |
3662 | if (c->ln->items) | 3731 | if (it->format->wrap_word || it->format->wrap_mixed) |
3663 | { | 3732 | { |
3664 | /*FIXME: I should handle format correctly, | 3733 | const char *lang; |
3665 | i.e verify we are allowed to break here */ | 3734 | lang = (it->format->font.fdesc) ? |
3666 | _layout_line_advance(c, it->format); | 3735 | it->format->font.fdesc->lang : ""; |
3667 | wrap = -1; | 3736 | size_t len = |
3737 | eina_ustrbuf_length_get( | ||
3738 | it->text_node->unicode); | ||
3739 | line_breaks = malloc(len); | ||
3740 | set_linebreaks_utf32((const utf32_t *) | ||
3741 | eina_ustrbuf_string_get( | ||
3742 | it->text_node->unicode), | ||
3743 | len, lang, line_breaks); | ||
3668 | } | 3744 | } |
3669 | } | 3745 | } |
3746 | #endif | ||
3747 | if (c->ln->items) | ||
3748 | line_start = c->ln->items->text_pos; | ||
3670 | else | 3749 | else |
3671 | { | 3750 | line_start = it->text_pos; |
3672 | Evas_Object_Textblock_Text_Item *ti = _ITEM_TEXT(it); | ||
3673 | size_t line_start; | ||
3674 | 3751 | ||
3675 | #ifdef HAVE_LINEBREAK | 3752 | adv_line = 1; |
3676 | /* If we haven't calculated the linebreaks yet, | 3753 | /* If we don't already have a wrap point from before */ |
3677 | * do */ | 3754 | if (wrap < 0) |
3678 | if (!line_breaks) | 3755 | { |
3679 | { | 3756 | if (it->format->wrap_word) |
3680 | /* Only relevant in those cases */ | 3757 | wrap = _layout_get_wordwrap(c, it->format, it, |
3681 | if (it->format->wrap_word || it->format->wrap_mixed) | 3758 | line_start, line_breaks); |
3682 | { | 3759 | else if (it->format->wrap_char) |
3683 | const char *lang; | 3760 | wrap = _layout_get_charwrap(c, it->format, it, |
3684 | lang = (it->format->font.fdesc) ? | 3761 | line_start, line_breaks); |
3685 | it->format->font.fdesc->lang : ""; | 3762 | else if (it->format->wrap_mixed) |
3686 | size_t len = | 3763 | wrap = _layout_get_mixedwrap(c, it->format, it, |
3687 | eina_ustrbuf_length_get( | 3764 | line_start, line_breaks); |
3688 | it->text_node->unicode); | ||
3689 | line_breaks = malloc(len); | ||
3690 | set_linebreaks_utf32((const utf32_t *) | ||
3691 | eina_ustrbuf_string_get( | ||
3692 | it->text_node->unicode), | ||
3693 | len, lang, line_breaks); | ||
3694 | } | ||
3695 | } | ||
3696 | #endif | ||
3697 | if (c->ln->items) | ||
3698 | line_start = c->ln->items->text_pos; | ||
3699 | else | 3765 | else |
3700 | line_start = ti->parent.text_pos; | 3766 | wrap = -1; |
3701 | 3767 | } | |
3702 | adv_line = 1; | ||
3703 | /* If we don't already have a wrap point from before */ | ||
3704 | if (wrap < 0) | ||
3705 | { | ||
3706 | if (it->format->wrap_word) | ||
3707 | wrap = _layout_get_wordwrap(c, it->format, ti, | ||
3708 | line_start, line_breaks); | ||
3709 | else if (it->format->wrap_char) | ||
3710 | wrap = _layout_get_charwrap(c, it->format, ti, | ||
3711 | line_start, line_breaks); | ||
3712 | else if (it->format->wrap_mixed) | ||
3713 | wrap = _layout_get_mixedwrap(c, it->format, ti, | ||
3714 | line_start, line_breaks); | ||
3715 | else | ||
3716 | wrap = -1; | ||
3717 | } | ||
3718 | 3768 | ||
3719 | /* If it's before the item, rollback and apply. | 3769 | /* If it's before the item, rollback and apply. |
3720 | if it's in the item, cut. | 3770 | if it's in the item, cut. |
3721 | If it's after the item, delay the cut */ | 3771 | If it's after the item, delay the cut */ |
3722 | if (wrap > 0) | 3772 | if (wrap > 0) |
3773 | { | ||
3774 | size_t uwrap = (size_t) wrap; | ||
3775 | if (uwrap < it->text_pos) | ||
3723 | { | 3776 | { |
3724 | size_t uwrap = (size_t) wrap; | 3777 | /* Rollback latest additions, and cut that |
3725 | if (uwrap < ti->parent.text_pos) | 3778 | item */ |
3779 | i = eina_list_prev(i); | ||
3780 | it = eina_list_data_get(i); | ||
3781 | while (uwrap < it->text_pos) | ||
3726 | { | 3782 | { |
3727 | /* Rollback latest additions, and cut that | ||
3728 | item */ | ||
3729 | i = eina_list_prev(i); | ||
3730 | it = eina_list_data_get(i); | ||
3731 | while (uwrap < it->text_pos) | ||
3732 | { | ||
3733 | c->ln->items = _ITEM( | ||
3734 | eina_inlist_remove( | ||
3735 | EINA_INLIST_GET(c->ln->items), | ||
3736 | EINA_INLIST_GET(it))); | ||
3737 | i = eina_list_prev(i); | ||
3738 | it = eina_list_data_get(i); | ||
3739 | } | ||
3740 | c->x = it->x; | ||
3741 | c->ln->items = _ITEM( | 3783 | c->ln->items = _ITEM( |
3742 | eina_inlist_remove( | 3784 | eina_inlist_remove( |
3743 | EINA_INLIST_GET(c->ln->items), | 3785 | EINA_INLIST_GET(c->ln->items), |
3744 | EINA_INLIST_GET(it))); | 3786 | EINA_INLIST_GET(it))); |
3745 | continue; | 3787 | i = eina_list_prev(i); |
3788 | it = eina_list_data_get(i); | ||
3746 | } | 3789 | } |
3747 | /* If it points to the end, it means the previous | 3790 | c->x = it->x; |
3748 | * char is a whitespace we should remove, so this | 3791 | c->ln->items = _ITEM( |
3749 | * is a wanted cutting point. */ | 3792 | eina_inlist_remove( |
3750 | else if (uwrap > ti->parent.text_pos + | 3793 | EINA_INLIST_GET(c->ln->items), |
3751 | ti->text_props.text_len) | 3794 | EINA_INLIST_GET(it))); |
3752 | wrap = -1; /* Delay the cut in a smart way | 3795 | continue; |
3753 | i.e use the item_pos as the line_start, because | ||
3754 | there's already no cut before*/ | ||
3755 | else | ||
3756 | wrap -= ti->parent.text_pos; /* Cut here */ | ||
3757 | } | 3796 | } |
3758 | 3797 | /* If it points to the end, it means the previous | |
3759 | if (wrap > 0) | 3798 | * char is a whitespace we should remove, so this |
3799 | * is a wanted cutting point. */ | ||
3800 | else if (uwrap > it->text_pos + it_len) | ||
3760 | { | 3801 | { |
3761 | _layout_item_text_split_strip_white(c, ti, i, wrap); | 3802 | /* FIXME: Should redo the ellipsis handling. |
3762 | } | 3803 | * If we can do ellipsis, just cut here. */ |
3763 | else if (wrap == 0) | 3804 | if (it->format->ellipsis == 1.0) |
3805 | { | ||
3806 | _layout_handle_ellipsis(c, it, i); | ||
3807 | ret = 1; | ||
3808 | goto end; | ||
3809 | } | ||
3810 | else | ||
3811 | { | ||
3812 | /* Delay the cut in a smart way i.e use the | ||
3813 | item_pos as the line_start, because | ||
3814 | there's already no cut before*/ | ||
3815 | wrap = -1; | ||
3816 | } | ||
3817 | } | ||
3818 | else | ||
3819 | wrap -= it->text_pos; /* Cut here */ | ||
3820 | } | ||
3821 | |||
3822 | if (wrap > 0) | ||
3823 | { | ||
3824 | if (it->type == EVAS_TEXTBLOCK_ITEM_TEXT) | ||
3764 | { | 3825 | { |
3765 | /* Should wrap before the item */ | 3826 | _layout_item_text_split_strip_white(c, |
3766 | adv_line = 0; | 3827 | _ITEM_TEXT(it), i, wrap); |
3767 | redo_item = 1; | ||
3768 | _layout_line_advance(c, it->format); | ||
3769 | } | 3828 | } |
3770 | /* Reset wrap */ | ||
3771 | wrap = -1; | ||
3772 | } | 3829 | } |
3830 | else if (wrap == 0) | ||
3831 | { | ||
3832 | /* Should wrap before the item */ | ||
3833 | adv_line = 0; | ||
3834 | redo_item = 1; | ||
3835 | _layout_line_advance(c, it->format); | ||
3836 | } | ||
3837 | /* Reset wrap */ | ||
3838 | wrap = -1; | ||
3773 | } | 3839 | } |
3774 | } | 3840 | } |
3775 | 3841 | ||
@@ -3844,18 +3910,16 @@ _format_changes_invalidate_text_nodes(Ctxt *c) | |||
3844 | const char *fstr = fnode->orig_format; | 3910 | const char *fstr = fnode->orig_format; |
3845 | /* balance < 0 means we gave up and everything should be | 3911 | /* balance < 0 means we gave up and everything should be |
3846 | * invalidated */ | 3912 | * invalidated */ |
3847 | if (*fstr == '+') | 3913 | if (fnode->opener && !fnode->own_closer) |
3848 | { | 3914 | { |
3849 | balance++; | 3915 | balance++; |
3850 | if (!fstack) | 3916 | if (!fstack) |
3851 | start_n = fnode->text_node; | 3917 | start_n = fnode->text_node; |
3852 | fstack = eina_list_prepend(fstack, fnode); | 3918 | fstack = eina_list_prepend(fstack, fnode); |
3853 | } | 3919 | } |
3854 | else if (*fstr == '-') | 3920 | else if (!fnode->opener) |
3855 | { | 3921 | { |
3856 | size_t fstr_len; | 3922 | size_t fstr_len; |
3857 | /* Skip the '-' */ | ||
3858 | fstr++; | ||
3859 | fstr_len = strlen(fstr); | 3923 | fstr_len = strlen(fstr); |
3860 | /* Generic popper, just pop */ | 3924 | /* Generic popper, just pop */ |
3861 | if (((fstr[0] == ' ') && !fstr[1]) || !fstr[0]) | 3925 | if (((fstr[0] == ' ') && !fstr[1]) || !fstr[0]) |
@@ -4429,12 +4493,12 @@ evas_textblock_style_set(Evas_Textblock_Style *ts, const char *text) | |||
4429 | { | 4493 | { |
4430 | if (!key_start) | 4494 | if (!key_start) |
4431 | { | 4495 | { |
4432 | if (!isspace(*p)) | 4496 | if (!isspace((unsigned char)(*p))) |
4433 | key_start = p; | 4497 | key_start = p; |
4434 | } | 4498 | } |
4435 | else if (!key_stop) | 4499 | else if (!key_stop) |
4436 | { | 4500 | { |
4437 | if ((*p == '=') || (isspace(*p))) | 4501 | if ((*p == '=') || (isspace((unsigned char)(*p)))) |
4438 | key_stop = p; | 4502 | key_stop = p; |
4439 | } | 4503 | } |
4440 | else if (!val_start) | 4504 | else if (!val_start) |
@@ -4479,10 +4543,10 @@ evas_textblock_style_set(Evas_Textblock_Style *ts, const char *text) | |||
4479 | tag = calloc(1, sizeof(Evas_Object_Style_Tag)); | 4543 | tag = calloc(1, sizeof(Evas_Object_Style_Tag)); |
4480 | if (tag) | 4544 | if (tag) |
4481 | { | 4545 | { |
4482 | tag->tag = tags; | 4546 | tag->tag.tag = tags; |
4483 | tag->replace = replaces; | 4547 | tag->tag.replace = replaces; |
4484 | tag->tag_len = tag_len; | 4548 | tag->tag.tag_len = tag_len; |
4485 | tag->replace_len = replace_len; | 4549 | tag->tag.replace_len = replace_len; |
4486 | ts->tags = (Evas_Object_Style_Tag *)eina_inlist_append(EINA_INLIST_GET(ts->tags), EINA_INLIST_GET(tag)); | 4550 | ts->tags = (Evas_Object_Style_Tag *)eina_inlist_append(EINA_INLIST_GET(ts->tags), EINA_INLIST_GET(tag)); |
4487 | } | 4551 | } |
4488 | else | 4552 | else |
@@ -4689,7 +4753,11 @@ _escaped_char_match(const char *s, int *adv) | |||
4689 | while ((*mc) && (*sc)) | 4753 | while ((*mc) && (*sc)) |
4690 | { | 4754 | { |
4691 | if ((unsigned char)*sc < (unsigned char)*mc) return NULL; | 4755 | if ((unsigned char)*sc < (unsigned char)*mc) return NULL; |
4692 | if (*sc != *mc) match = 0; | 4756 | if (*sc != *mc) |
4757 | { | ||
4758 | match = 0; | ||
4759 | break; | ||
4760 | } | ||
4693 | mc++; | 4761 | mc++; |
4694 | sc++; | 4762 | sc++; |
4695 | } | 4763 | } |
@@ -4723,7 +4791,7 @@ _escaped_char_get(const char *s, const char *s_end) | |||
4723 | int base = 10; | 4791 | int base = 10; |
4724 | s += 2; /* Skip "&#" */ | 4792 | s += 2; /* Skip "&#" */ |
4725 | 4793 | ||
4726 | if (tolower(*s) == 'x') | 4794 | if (tolower((unsigned char)(*s)) == 'x') |
4727 | { | 4795 | { |
4728 | s++; | 4796 | s++; |
4729 | base = 16; | 4797 | base = 16; |
@@ -4876,6 +4944,7 @@ evas_object_textblock_text_markup_prepend(Evas_Textblock_Cursor *cur, const char | |||
4876 | * NULL is reached. */ | 4944 | * NULL is reached. */ |
4877 | for (;;) | 4945 | for (;;) |
4878 | { | 4946 | { |
4947 | size_t text_len; | ||
4879 | /* If we got to the end of string or just finished/started tag | 4948 | /* If we got to the end of string or just finished/started tag |
4880 | * or escape sequence handling. */ | 4949 | * or escape sequence handling. */ |
4881 | if ((*p == 0) || | 4950 | if ((*p == 0) || |
@@ -4953,14 +5022,22 @@ evas_object_textblock_text_markup_prepend(Evas_Textblock_Cursor *cur, const char | |||
4953 | } | 5022 | } |
4954 | } | 5023 | } |
4955 | /* Unicode object replcament char */ | 5024 | /* Unicode object replcament char */ |
4956 | else if (!strncmp("\xEF\xBF\xBC", p, 3)) | 5025 | else if (!strncmp(_REPLACEMENT_CHAR_UTF8, p, |
5026 | text_len = strlen(_REPLACEMENT_CHAR_UTF8)) || | ||
5027 | !strncmp(_NEWLINE_UTF8, p, | ||
5028 | text_len = strlen(_NEWLINE_UTF8)) || | ||
5029 | !strncmp(_TAB_UTF8, p, | ||
5030 | text_len = strlen(_TAB_UTF8)) || | ||
5031 | !strncmp(_PARAGRAPH_SEPARATOR_UTF8, p, | ||
5032 | text_len = strlen(_PARAGRAPH_SEPARATOR_UTF8))) | ||
4957 | { | 5033 | { |
4958 | /*FIXME: currently just remove them, maybe do something | 5034 | /*FIXME: currently just remove them, maybe do something |
4959 | * fancier in the future, atm it breaks if this char | 5035 | * fancier in the future, atm it breaks if this char |
4960 | * is inside <> */ | 5036 | * is inside <> */ |
4961 | _prepend_text_run(cur, s, p); | 5037 | _prepend_text_run(cur, s, p); |
4962 | p += 2; /* it's also advanced later in this loop need +3 | 5038 | /* it's also advanced later in this loop need +text_len |
4963 | * in total*/ | 5039 | in total*/ |
5040 | p += text_len - 1; | ||
4964 | s = p + 1; /* One after the end of the replacement char */ | 5041 | s = p + 1; /* One after the end of the replacement char */ |
4965 | } | 5042 | } |
4966 | p++; | 5043 | p++; |
@@ -4979,19 +5056,19 @@ evas_object_textblock_text_markup_prepend(Evas_Textblock_Cursor *cur, const char | |||
4979 | * @param fnode the format node to process. | 5056 | * @param fnode the format node to process. |
4980 | */ | 5057 | */ |
4981 | static void | 5058 | static void |
4982 | _markup_get_format_append(Evas_Object_Textblock *o __UNUSED__, Eina_Strbuf *txt, Evas_Object_Textblock_Node_Format *fnode) | 5059 | _markup_get_format_append(Eina_Strbuf *txt, Evas_Object_Textblock_Node_Format *fnode) |
4983 | { | 5060 | { |
4984 | eina_strbuf_append_char(txt, '<'); | 5061 | eina_strbuf_append_char(txt, '<'); |
4985 | { | 5062 | { |
4986 | const char *s; | 5063 | const char *s; |
4987 | int pop = 0; | ||
4988 | 5064 | ||
4989 | // FIXME: need to escape | 5065 | // FIXME: need to escape |
4990 | s = fnode->orig_format; | 5066 | s = fnode->orig_format; |
4991 | if (*s == '-') pop = 1; | 5067 | if (!fnode->opener && !fnode->own_closer) |
4992 | while ((*s == ' ') || (*s == '+') || (*s == '-')) s++; | 5068 | eina_strbuf_append_char(txt, '/'); |
4993 | if (pop) eina_strbuf_append_char(txt, '/'); | ||
4994 | eina_strbuf_append(txt, s); | 5069 | eina_strbuf_append(txt, s); |
5070 | if (fnode->own_closer) | ||
5071 | eina_strbuf_append_char(txt, '/'); | ||
4995 | } | 5072 | } |
4996 | eina_strbuf_append_char(txt, '>'); | 5073 | eina_strbuf_append_char(txt, '>'); |
4997 | } | 5074 | } |
@@ -5061,7 +5138,7 @@ evas_object_textblock_text_markup_get(const Evas_Object *obj) | |||
5061 | tmp_ch = text[off]; | 5138 | tmp_ch = text[off]; |
5062 | text[off] = 0; /* Null terminate the part of the string */ | 5139 | text[off] = 0; /* Null terminate the part of the string */ |
5063 | _markup_get_text_append(txt, text); | 5140 | _markup_get_text_append(txt, text); |
5064 | _markup_get_format_append(o, txt, fnode); | 5141 | _markup_get_format_append(txt, fnode); |
5065 | text[off] = tmp_ch; /* Restore the char */ | 5142 | text[off] = tmp_ch; /* Restore the char */ |
5066 | text += off; | 5143 | text += off; |
5067 | if (fnode->visible) | 5144 | if (fnode->visible) |
@@ -5086,6 +5163,190 @@ evas_object_textblock_text_markup_get(const Evas_Object *obj) | |||
5086 | return o->markup_text; | 5163 | return o->markup_text; |
5087 | } | 5164 | } |
5088 | 5165 | ||
5166 | EAPI char * | ||
5167 | evas_textblock_text_markup_to_utf8(const Evas_Object *obj, const char *text) | ||
5168 | { | ||
5169 | /* FIXME: Redundant and awful, should be merged with markup_prepend */ | ||
5170 | Eina_Strbuf *sbuf; | ||
5171 | char *s, *p, *ret; | ||
5172 | char *tag_start, *tag_end, *esc_start, *esc_end; | ||
5173 | |||
5174 | if (!text) return NULL; | ||
5175 | |||
5176 | |||
5177 | tag_start = tag_end = esc_start = esc_end = NULL; | ||
5178 | sbuf = eina_strbuf_new(); | ||
5179 | p = (char *)text; | ||
5180 | s = p; | ||
5181 | /* This loop goes through all of the mark up text until it finds format | ||
5182 | * tags, escape sequences or the terminating NULL. When it finds either | ||
5183 | * of those, it appends the text found up until that point to the textblock | ||
5184 | * proccesses whatever found. It repeats itself until the termainating | ||
5185 | * NULL is reached. */ | ||
5186 | for (;;) | ||
5187 | { | ||
5188 | /* If we got to the end of string or just finished/started tag | ||
5189 | * or escape sequence handling. */ | ||
5190 | if ((*p == 0) || | ||
5191 | (tag_end) || (esc_end) || | ||
5192 | (tag_start) || (esc_start)) | ||
5193 | { | ||
5194 | if (tag_end) | ||
5195 | { | ||
5196 | /* If we reached to a tag ending, analyze the tag */ | ||
5197 | char *ttag; | ||
5198 | size_t ttag_len; | ||
5199 | |||
5200 | tag_start++; /* Skip the < */ | ||
5201 | tag_end--; /* Skip the > */ | ||
5202 | if ((tag_end > tag_start) && (*(tag_end - 1) == '/')) | ||
5203 | { | ||
5204 | tag_end --; /* Skip the terminating '/' */ | ||
5205 | while (*(tag_end - 1) == ' ') | ||
5206 | tag_end--; /* skip trailing ' ' */ | ||
5207 | } | ||
5208 | |||
5209 | ttag_len = tag_end - tag_start; | ||
5210 | |||
5211 | ttag = malloc(ttag_len + 1); | ||
5212 | if (ttag) | ||
5213 | { | ||
5214 | const char *match = NULL; | ||
5215 | size_t replace_len; | ||
5216 | memcpy(ttag, tag_start, ttag_len); | ||
5217 | ttag[ttag_len] = 0; | ||
5218 | |||
5219 | |||
5220 | if (obj) | ||
5221 | { | ||
5222 | match = _style_match_tag( | ||
5223 | evas_object_textblock_style_get(obj), | ||
5224 | ttag, ttag_len, &replace_len); | ||
5225 | } | ||
5226 | |||
5227 | if (!match) match = ttag; | ||
5228 | |||
5229 | if (_IS_PARAGRAPH_SEPARATOR_SIMPLE(match)) | ||
5230 | eina_strbuf_append(sbuf, _PARAGRAPH_SEPARATOR_UTF8); | ||
5231 | else if (_IS_LINE_SEPARATOR(match)) | ||
5232 | eina_strbuf_append(sbuf, _NEWLINE_UTF8); | ||
5233 | else if (_IS_TAB(match)) | ||
5234 | eina_strbuf_append(sbuf, _TAB_UTF8); | ||
5235 | else if (!strncmp(match, "item", 4)) | ||
5236 | eina_strbuf_append(sbuf, _REPLACEMENT_CHAR_UTF8); | ||
5237 | |||
5238 | free(ttag); | ||
5239 | } | ||
5240 | tag_start = tag_end = NULL; | ||
5241 | } | ||
5242 | else if (esc_end) | ||
5243 | { | ||
5244 | const char *escape; | ||
5245 | |||
5246 | escape = _escaped_char_get(esc_start, esc_end + 1); | ||
5247 | eina_strbuf_append(sbuf, escape); | ||
5248 | esc_start = esc_end = NULL; | ||
5249 | } | ||
5250 | else if (*p == 0) | ||
5251 | { | ||
5252 | eina_strbuf_append_length(sbuf, s, p - s); | ||
5253 | s = NULL; | ||
5254 | } | ||
5255 | if (*p == 0) | ||
5256 | break; | ||
5257 | } | ||
5258 | if (*p == '<') | ||
5259 | { | ||
5260 | if (!esc_start) | ||
5261 | { | ||
5262 | /* Append the text prior to this to the textblock and | ||
5263 | * mark the start of the tag */ | ||
5264 | tag_start = p; | ||
5265 | tag_end = NULL; | ||
5266 | eina_strbuf_append_length(sbuf, s, p - s); | ||
5267 | s = NULL; | ||
5268 | } | ||
5269 | } | ||
5270 | else if (*p == '>') | ||
5271 | { | ||
5272 | if (tag_start) | ||
5273 | { | ||
5274 | tag_end = p + 1; | ||
5275 | s = p + 1; | ||
5276 | } | ||
5277 | } | ||
5278 | else if (*p == '&') | ||
5279 | { | ||
5280 | if (!tag_start) | ||
5281 | { | ||
5282 | /* Append the text prior to this to the textblock and mark | ||
5283 | * the start of the escape sequence */ | ||
5284 | esc_start = p; | ||
5285 | esc_end = NULL; | ||
5286 | eina_strbuf_append_length(sbuf, s, p - s); | ||
5287 | s = NULL; | ||
5288 | } | ||
5289 | } | ||
5290 | else if (*p == ';') | ||
5291 | { | ||
5292 | if (esc_start) | ||
5293 | { | ||
5294 | esc_end = p; | ||
5295 | s = p + 1; | ||
5296 | } | ||
5297 | } | ||
5298 | p++; | ||
5299 | } | ||
5300 | |||
5301 | ret = eina_strbuf_string_steal(sbuf); | ||
5302 | eina_strbuf_free(sbuf); | ||
5303 | return ret; | ||
5304 | } | ||
5305 | |||
5306 | EAPI char * | ||
5307 | evas_textblock_text_utf8_to_markup(const Evas_Object *obj, const char *text) | ||
5308 | { | ||
5309 | Eina_Strbuf *sbuf; | ||
5310 | char *str = NULL; | ||
5311 | int ch, pos = 0, pos2 = 0; | ||
5312 | |||
5313 | (void) obj; | ||
5314 | |||
5315 | if (!text) return NULL; | ||
5316 | |||
5317 | sbuf = eina_strbuf_new(); | ||
5318 | |||
5319 | for (;;) | ||
5320 | { | ||
5321 | pos = pos2; | ||
5322 | pos2 = evas_string_char_next_get(text, pos2, &ch); | ||
5323 | if ((ch <= 0) || (pos2 <= 0)) break; | ||
5324 | |||
5325 | if (ch == _NEWLINE) | ||
5326 | eina_strbuf_append(sbuf, "<br/>"); | ||
5327 | else if (ch == _TAB) | ||
5328 | eina_strbuf_append(sbuf, "<tab/>"); | ||
5329 | else if (ch == '<') | ||
5330 | eina_strbuf_append(sbuf, "<"); | ||
5331 | else if (ch == '>') | ||
5332 | eina_strbuf_append(sbuf, ">"); | ||
5333 | else if (ch == '&') | ||
5334 | eina_strbuf_append(sbuf, "&"); | ||
5335 | else if (ch == _PARAGRAPH_SEPARATOR) | ||
5336 | eina_strbuf_append(sbuf, "<ps/>"); | ||
5337 | else if (ch == _REPLACEMENT_CHAR) | ||
5338 | eina_strbuf_append(sbuf, ""); | ||
5339 | else | ||
5340 | { | ||
5341 | eina_strbuf_append_length(sbuf, text + pos, pos2 - pos); | ||
5342 | } | ||
5343 | } | ||
5344 | str = eina_strbuf_string_steal(sbuf); | ||
5345 | eina_strbuf_free(sbuf); | ||
5346 | return str; | ||
5347 | |||
5348 | } | ||
5349 | |||
5089 | /* cursors */ | 5350 | /* cursors */ |
5090 | 5351 | ||
5091 | /** | 5352 | /** |
@@ -5453,15 +5714,13 @@ evas_textblock_node_format_remove_pair(Evas_Object *obj, | |||
5453 | { | 5714 | { |
5454 | const char *fstr = fmt->orig_format; | 5715 | const char *fstr = fmt->orig_format; |
5455 | 5716 | ||
5456 | if (fstr && (*fstr == '+')) | 5717 | if (fmt->opener && !fmt->own_closer) |
5457 | { | 5718 | { |
5458 | fstack = eina_list_prepend(fstack, fmt); | 5719 | fstack = eina_list_prepend(fstack, fmt); |
5459 | } | 5720 | } |
5460 | else if (fstr && (*fstr == '-')) | 5721 | else if (fstr && !fmt->opener) |
5461 | { | 5722 | { |
5462 | size_t fstr_len; | 5723 | size_t fstr_len; |
5463 | /* Skip the '-' */ | ||
5464 | fstr++; | ||
5465 | fstr_len = strlen(fstr); | 5724 | fstr_len = strlen(fstr); |
5466 | /* Generic popper, just pop */ | 5725 | /* Generic popper, just pop */ |
5467 | if (((fstr[0] == ' ') && !fstr[1]) || !fstr[0]) | 5726 | if (((fstr[0] == ' ') && !fstr[1]) || !fstr[0]) |
@@ -5708,6 +5967,111 @@ evas_textblock_cursor_format_prev(Evas_Textblock_Cursor *cur) | |||
5708 | return EINA_FALSE; | 5967 | return EINA_FALSE; |
5709 | } | 5968 | } |
5710 | 5969 | ||
5970 | #ifdef HAVE_LINEBREAK | ||
5971 | |||
5972 | /* BREAK_AFTER: true if we can break after the current char. | ||
5973 | * Both macros assume str[i] is not the terminating nul */ | ||
5974 | #define BREAK_AFTER(i) \ | ||
5975 | (breaks[i] == WORDBREAK_BREAK) | ||
5976 | |||
5977 | #else | ||
5978 | |||
5979 | #define BREAK_AFTER(i) \ | ||
5980 | ((!str[i + 1]) || \ | ||
5981 | (_is_white(str[i]) && !_is_white(str[i + 1])) || \ | ||
5982 | (!_is_white(str[i]) && _is_white(str[i + 1]))) | ||
5983 | |||
5984 | #endif | ||
5985 | |||
5986 | EAPI Eina_Bool | ||
5987 | evas_textblock_cursor_word_start(Evas_Textblock_Cursor *cur) | ||
5988 | { | ||
5989 | const Eina_Unicode *text; | ||
5990 | size_t i; | ||
5991 | #ifdef HAVE_LINEBREAK | ||
5992 | char *breaks; | ||
5993 | #endif | ||
5994 | |||
5995 | if (!cur) return EINA_FALSE; | ||
5996 | if (!cur->node) return EINA_FALSE; | ||
5997 | |||
5998 | text = eina_ustrbuf_string_get(cur->node->unicode); | ||
5999 | |||
6000 | #ifdef HAVE_LINEBREAK | ||
6001 | { | ||
6002 | const char *lang = ""; /* FIXME: get lang */ | ||
6003 | size_t len = eina_ustrbuf_length_get(cur->node->unicode); | ||
6004 | breaks = malloc(len); | ||
6005 | set_wordbreaks_utf32((const utf32_t *) text, len, lang, breaks); | ||
6006 | } | ||
6007 | #endif | ||
6008 | |||
6009 | i = cur->pos; | ||
6010 | |||
6011 | /* Skip the first one. This ensures we don't point to the nul, and also | ||
6012 | * we just don't care about it anyway. */ | ||
6013 | if (i > 0) i--; | ||
6014 | |||
6015 | for ( ; i > 0 ; i--) | ||
6016 | { | ||
6017 | if (BREAK_AFTER(i)) | ||
6018 | { | ||
6019 | /* Advance to the current char */ | ||
6020 | i++; | ||
6021 | break; | ||
6022 | } | ||
6023 | } | ||
6024 | |||
6025 | cur->pos = i; | ||
6026 | |||
6027 | #ifdef HAVE_LINEBREAK | ||
6028 | free(breaks); | ||
6029 | #endif | ||
6030 | return EINA_TRUE; | ||
6031 | } | ||
6032 | |||
6033 | EAPI Eina_Bool | ||
6034 | evas_textblock_cursor_word_end(Evas_Textblock_Cursor *cur) | ||
6035 | { | ||
6036 | const Eina_Unicode *text; | ||
6037 | size_t i; | ||
6038 | #ifdef HAVE_LINEBREAK | ||
6039 | char *breaks; | ||
6040 | #endif | ||
6041 | |||
6042 | if (!cur) return EINA_FALSE; | ||
6043 | if (!cur->node) return EINA_FALSE; | ||
6044 | |||
6045 | text = eina_ustrbuf_string_get(cur->node->unicode); | ||
6046 | |||
6047 | #ifdef HAVE_LINEBREAK | ||
6048 | { | ||
6049 | const char *lang = ""; /* FIXME: get lang */ | ||
6050 | size_t len = eina_ustrbuf_length_get(cur->node->unicode); | ||
6051 | breaks = malloc(len); | ||
6052 | set_wordbreaks_utf32((const utf32_t *) text, len, lang, breaks); | ||
6053 | } | ||
6054 | #endif | ||
6055 | |||
6056 | i = cur->pos; | ||
6057 | |||
6058 | for ( ; text[i] ; i++) | ||
6059 | { | ||
6060 | if (BREAK_AFTER(i)) | ||
6061 | { | ||
6062 | /* This is the one to break after. */ | ||
6063 | break; | ||
6064 | } | ||
6065 | } | ||
6066 | |||
6067 | cur->pos = i; | ||
6068 | |||
6069 | #ifdef HAVE_LINEBREAK | ||
6070 | free(breaks); | ||
6071 | #endif | ||
6072 | return EINA_TRUE;; | ||
6073 | } | ||
6074 | |||
5711 | EAPI Eina_Bool | 6075 | EAPI Eina_Bool |
5712 | evas_textblock_cursor_char_next(Evas_Textblock_Cursor *cur) | 6076 | evas_textblock_cursor_char_next(Evas_Textblock_Cursor *cur) |
5713 | { | 6077 | { |
@@ -5887,10 +6251,9 @@ _evas_textblock_format_is_visible(Evas_Object_Textblock_Node_Format *fnode, | |||
5887 | fnode->anchor = ANCHOR_NONE; | 6251 | fnode->anchor = ANCHOR_NONE; |
5888 | if (!s) return; | 6252 | if (!s) return; |
5889 | 6253 | ||
5890 | if (s[0] == '+' || s[0] == '-') | 6254 | if (!fnode->own_closer) |
5891 | { | 6255 | { |
5892 | is_opener = (s[0] == '+'); | 6256 | is_opener = fnode->opener; |
5893 | s++; | ||
5894 | fnode->format_change = EINA_TRUE; | 6257 | fnode->format_change = EINA_TRUE; |
5895 | } | 6258 | } |
5896 | 6259 | ||
@@ -5902,6 +6265,8 @@ _evas_textblock_format_is_visible(Evas_Object_Textblock_Node_Format *fnode, | |||
5902 | * closing */ | 6265 | * closing */ |
5903 | if ((!strncmp(item, "\n", itlen) || !strncmp(item, "\\n", itlen)) || | 6266 | if ((!strncmp(item, "\n", itlen) || !strncmp(item, "\\n", itlen)) || |
5904 | (!strncmp(item, "\t", itlen) || !strncmp(item, "\\t", itlen)) || | 6267 | (!strncmp(item, "\t", itlen) || !strncmp(item, "\\t", itlen)) || |
6268 | (!strncmp(item, "br", itlen) && (itlen >= 2)) || | ||
6269 | (!strncmp(item, "tab", itlen) && (itlen >= 3)) || | ||
5905 | (!strncmp(item, "ps", itlen) && (itlen >= 2)) || | 6270 | (!strncmp(item, "ps", itlen) && (itlen >= 2)) || |
5906 | (!strncmp(item, "item", itlen) && (itlen >= 4) && is_opener)) | 6271 | (!strncmp(item, "item", itlen) && (itlen >= 4) && is_opener)) |
5907 | { | 6272 | { |
@@ -5986,19 +6351,17 @@ _evas_textblock_node_format_remove_matching(Evas_Object_Textblock *o, | |||
5986 | } | 6351 | } |
5987 | 6352 | ||
5988 | 6353 | ||
5989 | if (fstr && (*fstr == '+')) | 6354 | if (fmt->opener && !fmt->own_closer) |
5990 | { | 6355 | { |
5991 | formats = eina_list_prepend(formats, fmt); | 6356 | formats = eina_list_prepend(formats, fmt); |
5992 | } | 6357 | } |
5993 | else if (fstr && (*fstr == '-')) | 6358 | else if (fstr && !fmt->opener) |
5994 | { | 6359 | { |
5995 | Evas_Object_Textblock_Node_Format *fnode; | 6360 | Evas_Object_Textblock_Node_Format *fnode; |
5996 | size_t fstr_len; | 6361 | size_t fstr_len; |
5997 | /* Skip the '-' */ | ||
5998 | fstr++; | ||
5999 | fstr_len = strlen(fstr); | 6362 | fstr_len = strlen(fstr); |
6000 | /* Generic popper, just pop */ | 6363 | /* Generic popper, just pop (if there's anything to pop). */ |
6001 | if (((fstr[0] == ' ') && !fstr[1]) || !fstr[0]) | 6364 | if (formats && (((fstr[0] == ' ') && !fstr[1]) || !fstr[0])) |
6002 | { | 6365 | { |
6003 | fnode = eina_list_data_get(formats); | 6366 | fnode = eina_list_data_get(formats); |
6004 | formats = eina_list_remove_list(formats, formats); | 6367 | formats = eina_list_remove_list(formats, formats); |
@@ -6855,6 +7218,7 @@ _evas_textblock_node_format_new(Evas_Object_Textblock *o, const char *_format) | |||
6855 | { | 7218 | { |
6856 | Evas_Object_Textblock_Node_Format *n; | 7219 | Evas_Object_Textblock_Node_Format *n; |
6857 | const char *format = _format; | 7220 | const char *format = _format; |
7221 | const char *pre_stripped_format = NULL; | ||
6858 | 7222 | ||
6859 | n = calloc(1, sizeof(Evas_Object_Textblock_Node_Format)); | 7223 | n = calloc(1, sizeof(Evas_Object_Textblock_Node_Format)); |
6860 | /* Create orig_format and format */ | 7224 | /* Create orig_format and format */ |
@@ -6866,62 +7230,80 @@ _evas_textblock_node_format_new(Evas_Object_Textblock *o, const char *_format) | |||
6866 | 7230 | ||
6867 | format++; /* Advance after '<' */ | 7231 | format++; /* Advance after '<' */ |
6868 | format_len = strlen(format); | 7232 | format_len = strlen(format); |
6869 | if (format[format_len - 1] == '>') | 7233 | if ((format_len > 0) && format[format_len - 1] == '>') |
6870 | format_len--; /* We don't care about '>' */ | 7234 | { |
7235 | format_len--; /* We don't care about '>' */ | ||
7236 | /* Check if it closes itself. Skip the </> case. */ | ||
7237 | if ((format_len > 1) && format[format_len - 1] == '/') | ||
7238 | { | ||
7239 | format_len--; /* We don't care about '/' */ | ||
7240 | n->own_closer = EINA_TRUE; | ||
7241 | } | ||
7242 | } | ||
6871 | 7243 | ||
6872 | match = _style_match_tag(o->style, format, format_len, &replace_len); | 7244 | match = _style_match_tag(o->style, format, format_len, &replace_len); |
6873 | if (match) | 7245 | if (match) |
6874 | { | 7246 | { |
6875 | if ((match[0] == '+') || (match[0] == '-')) | 7247 | if (match[0] != '-') |
6876 | { | ||
6877 | char *norm_format; | ||
6878 | norm_format = malloc(format_len + 2 + 1); | ||
6879 | memcpy(norm_format, match, 2); | ||
6880 | memcpy(norm_format + 2, format, format_len); | ||
6881 | norm_format[format_len + 2] = '\0'; | ||
6882 | n->orig_format = | ||
6883 | eina_stringshare_add_length(norm_format, format_len + 2); | ||
6884 | free(norm_format); | ||
6885 | } | ||
6886 | else | ||
6887 | { | 7248 | { |
6888 | n->orig_format = | 7249 | n->opener = EINA_TRUE; |
6889 | eina_stringshare_add_length(format, format_len); | 7250 | if (match[0] != '+') |
7251 | { | ||
7252 | n->own_closer = EINA_TRUE; | ||
7253 | } | ||
6890 | } | 7254 | } |
6891 | n->format = eina_stringshare_add(match); | 7255 | |
7256 | pre_stripped_format = match; | ||
6892 | } | 7257 | } |
6893 | else | 7258 | else |
6894 | { | 7259 | { |
6895 | char *norm_format; | 7260 | if (format[0] == '/') |
6896 | |||
6897 | norm_format = malloc(format_len + 2 + 1); | ||
6898 | if (norm_format) | ||
6899 | { | 7261 | { |
6900 | if (format[0] == '/') | 7262 | format++; |
6901 | { | 7263 | format_len--; |
6902 | memcpy(norm_format, "- ", 2); | 7264 | } |
6903 | memcpy(norm_format + 2, format + 1, format_len - 1); | 7265 | else |
6904 | norm_format[format_len + 2 - 1] = '\0'; | 7266 | { |
6905 | } | 7267 | n->opener = EINA_TRUE; |
6906 | else | ||
6907 | { | ||
6908 | memcpy(norm_format, "+ ", 2); | ||
6909 | memcpy(norm_format + 2, format, format_len); | ||
6910 | norm_format[format_len + 2] = '\0'; | ||
6911 | } | ||
6912 | n->orig_format = eina_stringshare_add(norm_format); | ||
6913 | free(norm_format); | ||
6914 | } | 7268 | } |
6915 | n->format = eina_stringshare_ref(n->orig_format); | ||
6916 | } | 7269 | } |
7270 | |||
7271 | n->orig_format = eina_stringshare_add_length(format, format_len); | ||
7272 | |||
7273 | if (!pre_stripped_format) | ||
7274 | pre_stripped_format = n->orig_format; | ||
6917 | } | 7275 | } |
6918 | /* Just use as is, it's a special format. */ | 7276 | /* Just use as is, it's a special format. */ |
6919 | else | 7277 | else |
6920 | { | 7278 | { |
6921 | n->orig_format = eina_stringshare_add(format); | 7279 | const char *tmp = format; |
6922 | n->format = eina_stringshare_ref(n->orig_format); | 7280 | if (format[0] != '-') |
7281 | { | ||
7282 | n->opener = EINA_TRUE; | ||
7283 | if (format[0] != '+') | ||
7284 | { | ||
7285 | n->own_closer = EINA_TRUE; | ||
7286 | } | ||
7287 | } | ||
7288 | if ((*tmp == '+') || (*tmp == '-')) | ||
7289 | { | ||
7290 | tmp++; | ||
7291 | while (*tmp == ' ') tmp++; | ||
7292 | } | ||
7293 | n->orig_format = eina_stringshare_add(tmp); | ||
7294 | pre_stripped_format = n->orig_format; | ||
6923 | } | 7295 | } |
6924 | 7296 | ||
7297 | /* Strip format */ | ||
7298 | { | ||
7299 | const char *tmp = pre_stripped_format; | ||
7300 | if ((*tmp == '+') || (*tmp == '-')) | ||
7301 | { | ||
7302 | tmp++; | ||
7303 | while (*tmp == ' ') tmp++; | ||
7304 | } | ||
7305 | n->format = eina_stringshare_add(tmp); | ||
7306 | } | ||
6925 | format = n->format; | 7307 | format = n->format; |
6926 | 7308 | ||
6927 | _evas_textblock_format_is_visible(n, format); | 7309 | _evas_textblock_format_is_visible(n, format); |
@@ -7051,11 +7433,11 @@ evas_textblock_cursor_format_append(Evas_Textblock_Cursor *cur, const char *form | |||
7051 | if (_IS_PARAGRAPH_SEPARATOR(o, format)) | 7433 | if (_IS_PARAGRAPH_SEPARATOR(o, format)) |
7052 | insert_char = _PARAGRAPH_SEPARATOR; | 7434 | insert_char = _PARAGRAPH_SEPARATOR; |
7053 | else if (_IS_LINE_SEPARATOR(format)) | 7435 | else if (_IS_LINE_SEPARATOR(format)) |
7054 | insert_char = '\n'; | 7436 | insert_char = _NEWLINE; |
7055 | else if (_IS_TAB(format)) | 7437 | else if (_IS_TAB(format)) |
7056 | insert_char = '\t'; | 7438 | insert_char = _TAB; |
7057 | else | 7439 | else |
7058 | insert_char = EVAS_TEXTBLOCK_REPLACEMENT_CHAR; | 7440 | insert_char = _REPLACEMENT_CHAR; |
7059 | 7441 | ||
7060 | eina_ustrbuf_insert_char(cur->node->unicode, insert_char, cur->pos); | 7442 | eina_ustrbuf_insert_char(cur->node->unicode, insert_char, cur->pos); |
7061 | 7443 | ||
@@ -7142,7 +7524,7 @@ evas_textblock_cursor_char_delete(Evas_Textblock_Cursor *cur) | |||
7142 | should_merge = EINA_TRUE; | 7524 | should_merge = EINA_TRUE; |
7143 | } | 7525 | } |
7144 | /* If a singnular, mark as invisible, so we'll delete it. */ | 7526 | /* If a singnular, mark as invisible, so we'll delete it. */ |
7145 | if (!format || ((*format != '+') && (*format != '-'))) | 7527 | if (!format || last_fmt->own_closer) |
7146 | { | 7528 | { |
7147 | last_fmt->visible = EINA_FALSE; | 7529 | last_fmt->visible = EINA_FALSE; |
7148 | } | 7530 | } |
@@ -7271,60 +7653,40 @@ evas_textblock_cursor_range_delete(Evas_Textblock_Cursor *cur1, Evas_Textblock_C | |||
7271 | EAPI char * | 7653 | EAPI char * |
7272 | evas_textblock_cursor_content_get(const Evas_Textblock_Cursor *cur) | 7654 | evas_textblock_cursor_content_get(const Evas_Textblock_Cursor *cur) |
7273 | { | 7655 | { |
7274 | const Eina_Unicode *ustr; | ||
7275 | Eina_Unicode buf[2]; | ||
7276 | char *s; | ||
7277 | if (!cur || !cur->node) return NULL; | 7656 | if (!cur || !cur->node) return NULL; |
7278 | if (evas_textblock_cursor_format_is_visible_get(cur)) | 7657 | if (evas_textblock_cursor_format_is_visible_get(cur)) |
7279 | { | 7658 | { |
7280 | size_t len; | 7659 | Eina_Strbuf *buf; |
7281 | const char *fstr; | 7660 | Evas_Object_Textblock_Node_Format *fnode; |
7282 | char *ret; | 7661 | char *ret; |
7283 | int pop = 0; | 7662 | fnode = _evas_textblock_node_visible_at_pos_get( |
7284 | fstr = evas_textblock_node_format_text_get( | 7663 | evas_textblock_cursor_format_get(cur)); |
7285 | _evas_textblock_node_visible_at_pos_get( | ||
7286 | evas_textblock_cursor_format_get(cur))); | ||
7287 | |||
7288 | if (!fstr) | ||
7289 | return NULL; | ||
7290 | 7664 | ||
7291 | if (*fstr == '-') pop = 1; | 7665 | buf = eina_strbuf_new(); |
7292 | while ((*fstr == ' ') || (*fstr == '+') || (*fstr == '-')) fstr++; | 7666 | _markup_get_format_append(buf, fnode); |
7293 | len = strlen(fstr); | 7667 | ret = eina_strbuf_string_steal(buf); |
7294 | 7668 | eina_strbuf_free(buf); | |
7295 | { | ||
7296 | char *tmp; | ||
7297 | if (pop) | ||
7298 | { | ||
7299 | ret = tmp = malloc(len + 3 + 1); /* </> and the null */ | ||
7300 | memcpy(tmp, "</", 2); | ||
7301 | tmp += 2; | ||
7302 | } | ||
7303 | else | ||
7304 | { | ||
7305 | ret = tmp = malloc(len + 2 + 1); /* <> and the null */ | ||
7306 | *tmp = '<'; | ||
7307 | tmp++; | ||
7308 | } | ||
7309 | memcpy(tmp, fstr, len); | ||
7310 | memcpy(tmp + len, ">", 2); /* Including the null */ | ||
7311 | } | ||
7312 | 7669 | ||
7313 | return ret; | 7670 | return ret; |
7314 | } | 7671 | } |
7672 | else | ||
7673 | { | ||
7674 | const Eina_Unicode *ustr; | ||
7675 | Eina_Unicode buf[2]; | ||
7676 | char *s; | ||
7315 | 7677 | ||
7316 | ustr = eina_ustrbuf_string_get(cur->node->unicode); | 7678 | ustr = eina_ustrbuf_string_get(cur->node->unicode); |
7317 | buf[0] = ustr[cur->pos]; | 7679 | buf[0] = ustr[cur->pos]; |
7318 | buf[1] = 0; | 7680 | buf[1] = 0; |
7319 | s = eina_unicode_unicode_to_utf8(buf, NULL); | 7681 | s = eina_unicode_unicode_to_utf8(buf, NULL); |
7320 | 7682 | ||
7321 | return s; | 7683 | return s; |
7684 | } | ||
7322 | } | 7685 | } |
7323 | 7686 | ||
7324 | static char * | 7687 | static char * |
7325 | _evas_textblock_cursor_range_text_markup_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *_cur2) | 7688 | _evas_textblock_cursor_range_text_markup_get(const Evas_Textblock_Cursor *cur1, const Evas_Textblock_Cursor *_cur2) |
7326 | { | 7689 | { |
7327 | Evas_Object_Textblock *o; | ||
7328 | Evas_Object_Textblock_Node_Text *tnode; | 7690 | Evas_Object_Textblock_Node_Text *tnode; |
7329 | Eina_Strbuf *buf; | 7691 | Eina_Strbuf *buf; |
7330 | Evas_Textblock_Cursor *cur2; | 7692 | Evas_Textblock_Cursor *cur2; |
@@ -7333,7 +7695,6 @@ _evas_textblock_cursor_range_text_markup_get(const Evas_Textblock_Cursor *cur1, | |||
7333 | if (!cur1 || !cur1->node) return NULL; | 7695 | if (!cur1 || !cur1->node) return NULL; |
7334 | if (!_cur2 || !_cur2->node) return NULL; | 7696 | if (!_cur2 || !_cur2->node) return NULL; |
7335 | if (cur1->obj != _cur2->obj) return NULL; | 7697 | if (cur1->obj != _cur2->obj) return NULL; |
7336 | o = (Evas_Object_Textblock *)(cur1->obj->object_data); | ||
7337 | if (evas_textblock_cursor_compare(cur1, _cur2) > 0) | 7698 | if (evas_textblock_cursor_compare(cur1, _cur2) > 0) |
7338 | { | 7699 | { |
7339 | const Evas_Textblock_Cursor *tc; | 7700 | const Evas_Textblock_Cursor *tc; |
@@ -7401,7 +7762,7 @@ _evas_textblock_cursor_range_text_markup_get(const Evas_Textblock_Cursor *cur1, | |||
7401 | tmp_ch = text[off]; | 7762 | tmp_ch = text[off]; |
7402 | text[off] = 0; /* Null terminate the part of the string */ | 7763 | text[off] = 0; /* Null terminate the part of the string */ |
7403 | _markup_get_text_append(buf, text); | 7764 | _markup_get_text_append(buf, text); |
7404 | _markup_get_format_append(o, buf, fnode); | 7765 | _markup_get_format_append(buf, fnode); |
7405 | text[off] = tmp_ch; /* Restore the char */ | 7766 | text[off] = tmp_ch; /* Restore the char */ |
7406 | text += off; | 7767 | text += off; |
7407 | if (fnode->visible) | 7768 | if (fnode->visible) |
@@ -7623,8 +7984,27 @@ evas_textblock_cursor_format_get(const Evas_Textblock_Cursor *cur) | |||
7623 | EAPI const char * | 7984 | EAPI const char * |
7624 | evas_textblock_node_format_text_get(const Evas_Object_Textblock_Node_Format *fmt) | 7985 | evas_textblock_node_format_text_get(const Evas_Object_Textblock_Node_Format *fmt) |
7625 | { | 7986 | { |
7987 | static char *ret = NULL; | ||
7988 | char *tmp; | ||
7989 | |||
7626 | if (!fmt) return NULL; | 7990 | if (!fmt) return NULL; |
7627 | return fmt->orig_format; | 7991 | |
7992 | if (ret) free(ret); | ||
7993 | ret = malloc(strlen(fmt->orig_format) + 2 + 1); | ||
7994 | tmp = ret; | ||
7995 | |||
7996 | if (fmt->opener && !fmt->own_closer) | ||
7997 | { | ||
7998 | *(tmp++) = '+'; | ||
7999 | *(tmp++) = ' '; | ||
8000 | } | ||
8001 | else if (!fmt->opener) | ||
8002 | { | ||
8003 | *(tmp++) = '-'; | ||
8004 | *(tmp++) = ' '; | ||
8005 | } | ||
8006 | strcpy(tmp, fmt->orig_format); | ||
8007 | return ret; | ||
7628 | } | 8008 | } |
7629 | 8009 | ||
7630 | EAPI void | 8010 | EAPI void |
@@ -7673,7 +8053,9 @@ evas_textblock_cursor_geometry_get(const Evas_Textblock_Cursor *cur, Evas_Coord | |||
7673 | * the position of the previous */ | 8053 | * the position of the previous */ |
7674 | if ((cur->pos > 0) && !_evas_textblock_cursor_is_at_the_end(cur)) | 8054 | if ((cur->pos > 0) && !_evas_textblock_cursor_is_at_the_end(cur)) |
7675 | { | 8055 | { |
8056 | #ifdef BIDI_SUPPORT | ||
7676 | Eina_Bool before_char = EINA_FALSE; | 8057 | Eina_Bool before_char = EINA_FALSE; |
8058 | #endif | ||
7677 | cur2.obj = cur->obj; | 8059 | cur2.obj = cur->obj; |
7678 | evas_textblock_cursor_copy(cur, &cur2); | 8060 | evas_textblock_cursor_copy(cur, &cur2); |
7679 | evas_textblock_cursor_char_prev(&cur2); | 8061 | evas_textblock_cursor_char_prev(&cur2); |
@@ -7683,12 +8065,16 @@ evas_textblock_cursor_geometry_get(const Evas_Textblock_Cursor *cur, Evas_Coord | |||
7683 | if (!fmt || !_IS_LINE_SEPARATOR(fmt->format)) | 8065 | if (!fmt || !_IS_LINE_SEPARATOR(fmt->format)) |
7684 | { | 8066 | { |
7685 | dir_cur = &cur2; | 8067 | dir_cur = &cur2; |
8068 | #ifdef BIDI_SUPPORT | ||
7686 | before_char = EINA_FALSE; | 8069 | before_char = EINA_FALSE; |
8070 | #endif | ||
7687 | } | 8071 | } |
8072 | #ifdef BIDI_SUPPORT | ||
7688 | else | 8073 | else |
7689 | { | 8074 | { |
7690 | before_char = EINA_TRUE; | 8075 | before_char = EINA_TRUE; |
7691 | } | 8076 | } |
8077 | #endif | ||
7692 | ret = evas_textblock_cursor_pen_geometry_get( | 8078 | ret = evas_textblock_cursor_pen_geometry_get( |
7693 | dir_cur, &x, &y, &w, &h); | 8079 | dir_cur, &x, &y, &w, &h); |
7694 | #ifdef BIDI_SUPPORT | 8080 | #ifdef BIDI_SUPPORT |
@@ -8788,6 +9174,7 @@ evas_object_textblock_init(Evas_Object *obj) | |||
8788 | { | 9174 | { |
8789 | linebreak_init = EINA_TRUE; | 9175 | linebreak_init = EINA_TRUE; |
8790 | init_linebreak(); | 9176 | init_linebreak(); |
9177 | init_wordbreak(); | ||
8791 | } | 9178 | } |
8792 | #endif | 9179 | #endif |
8793 | 9180 | ||
diff --git a/libraries/evas/src/lib/canvas/evas_render.c b/libraries/evas/src/lib/canvas/evas_render.c index 0abee97..cdedaec 100644 --- a/libraries/evas/src/lib/canvas/evas_render.c +++ b/libraries/evas/src/lib/canvas/evas_render.c | |||
@@ -1139,7 +1139,7 @@ evas_render_mapped(Evas *e, Evas_Object *obj, void *context, void *surface, | |||
1139 | } | 1139 | } |
1140 | } | 1140 | } |
1141 | } | 1141 | } |
1142 | if (surface == e->engine.data.output) | 1142 | // if (surface == e->engine.data.output) |
1143 | e->engine.func->context_clip_clip(e->engine.data.output, | 1143 | e->engine.func->context_clip_clip(e->engine.data.output, |
1144 | e->engine.data.context, | 1144 | e->engine.data.context, |
1145 | ecx, ecy, ecw, ech); | 1145 | ecx, ecy, ecw, ech); |
@@ -1360,6 +1360,8 @@ evas_render_updates_internal(Evas *e, | |||
1360 | 1360 | ||
1361 | RD("[--- RENDER EVAS (size: %ix%i)\n", e->viewport.w, e->viewport.h); | 1361 | RD("[--- RENDER EVAS (size: %ix%i)\n", e->viewport.w, e->viewport.h); |
1362 | 1362 | ||
1363 | evas_event_callback_call(e, EVAS_CALLBACK_RENDER_PRE, NULL); | ||
1364 | |||
1363 | /* Check if the modified object mean recalculating every thing */ | 1365 | /* Check if the modified object mean recalculating every thing */ |
1364 | if (!e->invalidate) | 1366 | if (!e->invalidate) |
1365 | _evas_render_check_pending_objects(&e->pending_objects, e); | 1367 | _evas_render_check_pending_objects(&e->pending_objects, e); |
@@ -1399,6 +1401,7 @@ evas_render_updates_internal(Evas *e, | |||
1399 | _evas_render_prev_cur_clip_cache_add(e, obj); | 1401 | _evas_render_prev_cur_clip_cache_add(e, obj); |
1400 | } | 1402 | } |
1401 | eina_array_clean(&e->restack_objects); | 1403 | eina_array_clean(&e->restack_objects); |
1404 | |||
1402 | /* phase 3. add exposes */ | 1405 | /* phase 3. add exposes */ |
1403 | EINA_LIST_FREE(e->damages, r) | 1406 | EINA_LIST_FREE(e->damages, r) |
1404 | { | 1407 | { |
@@ -1406,7 +1409,20 @@ evas_render_updates_internal(Evas *e, | |||
1406 | r->x, r->y, r->w, r->h); | 1409 | r->x, r->y, r->w, r->h); |
1407 | eina_rectangle_free(r); | 1410 | eina_rectangle_free(r); |
1408 | } | 1411 | } |
1409 | /* phase 4. output & viewport changes */ | 1412 | |
1413 | /* phase 4. framespace, output & viewport changes */ | ||
1414 | if (e->framespace.changed) | ||
1415 | { | ||
1416 | int fx, fy, fw, fh; | ||
1417 | |||
1418 | fx = e->viewport.x - e->framespace.x; | ||
1419 | fy = e->viewport.y - e->framespace.y; | ||
1420 | fw = e->viewport.w + e->framespace.w; | ||
1421 | fh = e->viewport.h + e->framespace.h; | ||
1422 | e->engine.func->output_redraws_rect_add(e->engine.data.output, | ||
1423 | fx, fy, fw, fh); | ||
1424 | } | ||
1425 | |||
1410 | if (e->viewport.changed) | 1426 | if (e->viewport.changed) |
1411 | { | 1427 | { |
1412 | e->engine.func->output_redraws_rect_add(e->engine.data.output, | 1428 | e->engine.func->output_redraws_rect_add(e->engine.data.output, |
@@ -1431,6 +1447,7 @@ evas_render_updates_internal(Evas *e, | |||
1431 | 0, 0, | 1447 | 0, 0, |
1432 | e->output.w, e->output.h); | 1448 | e->output.w, e->output.h); |
1433 | } | 1449 | } |
1450 | |||
1434 | /* phase 5. add obscures */ | 1451 | /* phase 5. add obscures */ |
1435 | EINA_LIST_FOREACH(e->obscures, ll, r) | 1452 | EINA_LIST_FOREACH(e->obscures, ll, r) |
1436 | { | 1453 | { |
@@ -1562,13 +1579,6 @@ evas_render_updates_internal(Evas *e, | |||
1562 | else | 1579 | else |
1563 | e->engine.func->context_mask_unset(e->engine.data.output, | 1580 | e->engine.func->context_mask_unset(e->engine.data.output, |
1564 | e->engine.data.context); | 1581 | e->engine.data.context); |
1565 | if (obj->cur.clipper) | ||
1566 | e->engine.func->context_clip_set(e->engine.data.output, | ||
1567 | e->engine.data.context, | ||
1568 | x, y, w, h); | ||
1569 | else | ||
1570 | e->engine.func->context_clip_unset(e->engine.data.output, | ||
1571 | e->engine.data.context); | ||
1572 | #if 1 /* FIXME: this can slow things down... figure out optimum... coverage */ | 1582 | #if 1 /* FIXME: this can slow things down... figure out optimum... coverage */ |
1573 | for (j = offset; j < e->temporary_objects.count; ++j) | 1583 | for (j = offset; j < e->temporary_objects.count; ++j) |
1574 | { | 1584 | { |
@@ -1671,6 +1681,7 @@ evas_render_updates_internal(Evas *e, | |||
1671 | e->changed = 0; | 1681 | e->changed = 0; |
1672 | e->viewport.changed = 0; | 1682 | e->viewport.changed = 0; |
1673 | e->output.changed = 0; | 1683 | e->output.changed = 0; |
1684 | e->framespace.changed = 0; | ||
1674 | e->invalidate = 0; | 1685 | e->invalidate = 0; |
1675 | 1686 | ||
1676 | /* If their are some object to restack or some object to delete, | 1687 | /* If their are some object to restack or some object to delete, |
@@ -1686,6 +1697,8 @@ evas_render_updates_internal(Evas *e, | |||
1686 | } | 1697 | } |
1687 | 1698 | ||
1688 | evas_module_clean(); | 1699 | evas_module_clean(); |
1700 | |||
1701 | evas_event_callback_call(e, EVAS_CALLBACK_RENDER_POST, NULL); | ||
1689 | 1702 | ||
1690 | RD("---]\n"); | 1703 | RD("---]\n"); |
1691 | 1704 | ||
diff --git a/libraries/evas/src/lib/cserve/Makefile.in b/libraries/evas/src/lib/cserve/Makefile.in index 74b5ff9..7599ca2 100644 --- a/libraries/evas/src/lib/cserve/Makefile.in +++ b/libraries/evas/src/lib/cserve/Makefile.in | |||
@@ -198,8 +198,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
198 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 198 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
199 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 199 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
200 | PKG_CONFIG = @PKG_CONFIG@ | 200 | PKG_CONFIG = @PKG_CONFIG@ |
201 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
202 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
203 | PNG_CFLAGS = @PNG_CFLAGS@ | 201 | PNG_CFLAGS = @PNG_CFLAGS@ |
204 | PNG_LIBS = @PNG_LIBS@ | 202 | PNG_LIBS = @PNG_LIBS@ |
205 | RANLIB = @RANLIB@ | 203 | RANLIB = @RANLIB@ |
@@ -216,6 +214,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
216 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 214 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
217 | VERSION = @VERSION@ | 215 | VERSION = @VERSION@ |
218 | VMAJ = @VMAJ@ | 216 | VMAJ = @VMAJ@ |
217 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
218 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
219 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 219 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
220 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 220 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
221 | XCB_CFLAGS = @XCB_CFLAGS@ | 221 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -297,6 +297,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
297 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 297 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
298 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 298 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
299 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 299 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
300 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
301 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
302 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
303 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
300 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 304 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
301 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 305 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
302 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 306 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/Makefile.in b/libraries/evas/src/lib/engines/Makefile.in index 12e28c1..4c3c1da 100644 --- a/libraries/evas/src/lib/engines/Makefile.in +++ b/libraries/evas/src/lib/engines/Makefile.in | |||
@@ -208,8 +208,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
208 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 208 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
209 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 209 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
210 | PKG_CONFIG = @PKG_CONFIG@ | 210 | PKG_CONFIG = @PKG_CONFIG@ |
211 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
212 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
213 | PNG_CFLAGS = @PNG_CFLAGS@ | 211 | PNG_CFLAGS = @PNG_CFLAGS@ |
214 | PNG_LIBS = @PNG_LIBS@ | 212 | PNG_LIBS = @PNG_LIBS@ |
215 | RANLIB = @RANLIB@ | 213 | RANLIB = @RANLIB@ |
@@ -226,6 +224,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
226 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 224 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
227 | VERSION = @VERSION@ | 225 | VERSION = @VERSION@ |
228 | VMAJ = @VMAJ@ | 226 | VMAJ = @VMAJ@ |
227 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
228 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
229 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 229 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
230 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 230 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
231 | XCB_CFLAGS = @XCB_CFLAGS@ | 231 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -307,6 +307,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
307 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 307 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
308 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 308 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
309 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 309 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
310 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
311 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
312 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
313 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
310 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 314 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
311 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 315 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
312 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 316 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/Makefile.in b/libraries/evas/src/lib/engines/common/Makefile.in index b0162df..7d1f20a 100644 --- a/libraries/evas/src/lib/engines/common/Makefile.in +++ b/libraries/evas/src/lib/engines/common/Makefile.in | |||
@@ -252,8 +252,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
252 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 252 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
253 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 253 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
254 | PKG_CONFIG = @PKG_CONFIG@ | 254 | PKG_CONFIG = @PKG_CONFIG@ |
255 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
256 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
257 | PNG_CFLAGS = @PNG_CFLAGS@ | 255 | PNG_CFLAGS = @PNG_CFLAGS@ |
258 | PNG_LIBS = @PNG_LIBS@ | 256 | PNG_LIBS = @PNG_LIBS@ |
259 | RANLIB = @RANLIB@ | 257 | RANLIB = @RANLIB@ |
@@ -270,6 +268,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
270 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 268 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
271 | VERSION = @VERSION@ | 269 | VERSION = @VERSION@ |
272 | VMAJ = @VMAJ@ | 270 | VMAJ = @VMAJ@ |
271 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
272 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
273 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 273 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
274 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 274 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
275 | XCB_CFLAGS = @XCB_CFLAGS@ | 275 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -351,6 +351,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
351 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 351 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
352 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 352 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
353 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 353 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
354 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
355 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
356 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
357 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
354 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 358 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
355 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 359 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
356 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 360 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/evas_convert_rgb_16.c b/libraries/evas/src/lib/engines/common/evas_convert_rgb_16.c index b30ec1e..796ff17 100644 --- a/libraries/evas/src/lib/engines/common/evas_convert_rgb_16.c +++ b/libraries/evas/src/lib/engines/common/evas_convert_rgb_16.c | |||
@@ -117,7 +117,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_565_dith (DATA32 *src, DATA8 *dst, int sr | |||
117 | } | 117 | } |
118 | #endif | 118 | #endif |
119 | return; | 119 | return; |
120 | pal = 0; | 120 | (void)pal; |
121 | #else | 121 | #else |
122 | DATA16 *d = (DATA16 *)dst; | 122 | DATA16 *d = (DATA16 *)dst; |
123 | int w0 = w; | 123 | int w0 = w; |
@@ -144,7 +144,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_565_dith (DATA32 *src, DATA8 *dst, int sr | |||
144 | d += dst_jump; | 144 | d += dst_jump; |
145 | } | 145 | } |
146 | return; | 146 | return; |
147 | pal = 0; | 147 | (void)pal; |
148 | #endif | 148 | #endif |
149 | } | 149 | } |
150 | #endif | 150 | #endif |
@@ -216,7 +216,7 @@ evas_common_convert_rgba_to_16bpp_rgb_565_dith (DATA32 *src, DATA8 *dst, int src | |||
216 | } | 216 | } |
217 | #endif | 217 | #endif |
218 | return; | 218 | return; |
219 | pal = 0; | 219 | (void)pal; |
220 | #else | 220 | #else |
221 | DATA16 *d = (DATA16 *)dst; | 221 | DATA16 *d = (DATA16 *)dst; |
222 | int w0 = w; | 222 | int w0 = w; |
@@ -233,7 +233,7 @@ evas_common_convert_rgba_to_16bpp_rgb_565_dith (DATA32 *src, DATA8 *dst, int src | |||
233 | d += dst_jump; | 233 | d += dst_jump; |
234 | } | 234 | } |
235 | return; | 235 | return; |
236 | pal = 0; | 236 | (void)pal; |
237 | #endif | 237 | #endif |
238 | } | 238 | } |
239 | #endif | 239 | #endif |
@@ -295,7 +295,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_565_dith_rot_180 (DATA32 *src, DATA8 *dst | |||
295 | 295 | ||
296 | CONVERT_LOOP2_END_ROT_180(); | 296 | CONVERT_LOOP2_END_ROT_180(); |
297 | return; | 297 | return; |
298 | pal = 0; | 298 | (void)pal; |
299 | } | 299 | } |
300 | #endif | 300 | #endif |
301 | #endif | 301 | #endif |
@@ -333,7 +333,7 @@ evas_common_convert_rgba_to_16bpp_rgb_565_dith_rot_180 (DATA32 *src, DATA8 *dst, | |||
333 | 333 | ||
334 | CONVERT_LOOP_END_ROT_180(); | 334 | CONVERT_LOOP_END_ROT_180(); |
335 | return; | 335 | return; |
336 | pal = 0; | 336 | (void)pal; |
337 | } | 337 | } |
338 | #endif | 338 | #endif |
339 | #endif | 339 | #endif |
@@ -394,7 +394,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_565_dith_rot_270 (DATA32 *src, DATA8 *dst | |||
394 | 394 | ||
395 | CONVERT_LOOP2_END_ROT_270(); | 395 | CONVERT_LOOP2_END_ROT_270(); |
396 | return; | 396 | return; |
397 | pal = 0; | 397 | (void)pal; |
398 | } | 398 | } |
399 | #endif | 399 | #endif |
400 | #endif | 400 | #endif |
@@ -432,7 +432,7 @@ evas_common_convert_rgba_to_16bpp_rgb_565_dith_rot_270 (DATA32 *src, DATA8 *dst, | |||
432 | 432 | ||
433 | CONVERT_LOOP_END_ROT_270(); | 433 | CONVERT_LOOP_END_ROT_270(); |
434 | return; | 434 | return; |
435 | pal = 0; | 435 | (void)pal; |
436 | } | 436 | } |
437 | #endif | 437 | #endif |
438 | #endif | 438 | #endif |
@@ -493,7 +493,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_565_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
493 | 493 | ||
494 | CONVERT_LOOP2_END_ROT_90(); | 494 | CONVERT_LOOP2_END_ROT_90(); |
495 | return; | 495 | return; |
496 | pal = 0; | 496 | (void)pal; |
497 | } | 497 | } |
498 | #endif | 498 | #endif |
499 | #endif | 499 | #endif |
@@ -531,7 +531,7 @@ evas_common_convert_rgba_to_16bpp_rgb_565_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
531 | 531 | ||
532 | CONVERT_LOOP_END_ROT_90(); | 532 | CONVERT_LOOP_END_ROT_90(); |
533 | return; | 533 | return; |
534 | pal = 0; | 534 | (void)pal; |
535 | } | 535 | } |
536 | #endif | 536 | #endif |
537 | #endif | 537 | #endif |
@@ -592,7 +592,7 @@ evas_common_convert_rgba2_to_16bpp_bgr_565_dith (DATA32 *src, DATA8 *dst, int sr | |||
592 | 592 | ||
593 | CONVERT_LOOP2_END_ROT_0(); | 593 | CONVERT_LOOP2_END_ROT_0(); |
594 | return; | 594 | return; |
595 | pal = 0; | 595 | (void)pal; |
596 | } | 596 | } |
597 | #endif | 597 | #endif |
598 | #endif | 598 | #endif |
@@ -630,7 +630,7 @@ evas_common_convert_rgba_to_16bpp_bgr_565_dith (DATA32 *src, DATA8 *dst, int src | |||
630 | 630 | ||
631 | CONVERT_LOOP_END_ROT_0(); | 631 | CONVERT_LOOP_END_ROT_0(); |
632 | return; | 632 | return; |
633 | pal = 0; | 633 | (void)pal; |
634 | } | 634 | } |
635 | #endif | 635 | #endif |
636 | #endif | 636 | #endif |
@@ -691,7 +691,7 @@ evas_common_convert_rgba2_to_16bpp_bgr_565_dith_rot_180 (DATA32 *src, DATA8 *dst | |||
691 | 691 | ||
692 | CONVERT_LOOP2_END_ROT_180(); | 692 | CONVERT_LOOP2_END_ROT_180(); |
693 | return; | 693 | return; |
694 | pal = 0; | 694 | (void)pal; |
695 | } | 695 | } |
696 | #endif | 696 | #endif |
697 | #endif | 697 | #endif |
@@ -731,7 +731,7 @@ evas_common_convert_rgba_to_16bpp_bgr_565_dith_rot_180 (DATA32 *src, DATA8 *dst, | |||
731 | 731 | ||
732 | CONVERT_LOOP_END_ROT_180(); | 732 | CONVERT_LOOP_END_ROT_180(); |
733 | return; | 733 | return; |
734 | pal = 0; | 734 | (void)pal; |
735 | } | 735 | } |
736 | #endif | 736 | #endif |
737 | #endif | 737 | #endif |
@@ -792,7 +792,7 @@ evas_common_convert_rgba2_to_16bpp_bgr_565_dith_rot_270 (DATA32 *src, DATA8 *dst | |||
792 | 792 | ||
793 | CONVERT_LOOP2_END_ROT_270(); | 793 | CONVERT_LOOP2_END_ROT_270(); |
794 | return; | 794 | return; |
795 | pal = 0; | 795 | (void)pal; |
796 | } | 796 | } |
797 | #endif | 797 | #endif |
798 | #endif | 798 | #endif |
@@ -830,7 +830,7 @@ evas_common_convert_rgba_to_16bpp_bgr_565_dith_rot_270 (DATA32 *src, DATA8 *dst, | |||
830 | 830 | ||
831 | CONVERT_LOOP_END_ROT_270(); | 831 | CONVERT_LOOP_END_ROT_270(); |
832 | return; | 832 | return; |
833 | pal = 0; | 833 | (void)pal; |
834 | } | 834 | } |
835 | #endif | 835 | #endif |
836 | #endif | 836 | #endif |
@@ -891,7 +891,7 @@ evas_common_convert_rgba2_to_16bpp_bgr_565_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
891 | 891 | ||
892 | CONVERT_LOOP2_END_ROT_90(); | 892 | CONVERT_LOOP2_END_ROT_90(); |
893 | return; | 893 | return; |
894 | pal = 0; | 894 | (void)pal; |
895 | } | 895 | } |
896 | #endif | 896 | #endif |
897 | #endif | 897 | #endif |
@@ -929,7 +929,7 @@ evas_common_convert_rgba_to_16bpp_bgr_565_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
929 | 929 | ||
930 | CONVERT_LOOP_END_ROT_90(); | 930 | CONVERT_LOOP_END_ROT_90(); |
931 | return; | 931 | return; |
932 | pal = 0; | 932 | (void)pal; |
933 | } | 933 | } |
934 | #endif | 934 | #endif |
935 | #endif | 935 | #endif |
@@ -988,7 +988,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_444_dith (DATA32 *src, DATA8 *dst, int sr | |||
988 | 988 | ||
989 | CONVERT_LOOP2_END_ROT_0(); | 989 | CONVERT_LOOP2_END_ROT_0(); |
990 | return; | 990 | return; |
991 | pal = 0; | 991 | (void)pal; |
992 | } | 992 | } |
993 | #endif | 993 | #endif |
994 | #endif | 994 | #endif |
@@ -1025,7 +1025,7 @@ evas_common_convert_rgba_to_16bpp_rgb_444_dith (DATA32 *src, DATA8 *dst, int src | |||
1025 | 1025 | ||
1026 | CONVERT_LOOP_END_ROT_0(); | 1026 | CONVERT_LOOP_END_ROT_0(); |
1027 | return; | 1027 | return; |
1028 | pal = 0; | 1028 | (void)pal; |
1029 | } | 1029 | } |
1030 | #endif | 1030 | #endif |
1031 | #endif | 1031 | #endif |
@@ -1084,7 +1084,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_444_dith_rot_180 (DATA32 *src, DATA8 *dst | |||
1084 | 1084 | ||
1085 | CONVERT_LOOP2_END_ROT_180(); | 1085 | CONVERT_LOOP2_END_ROT_180(); |
1086 | return; | 1086 | return; |
1087 | pal = 0; | 1087 | (void)pal; |
1088 | } | 1088 | } |
1089 | #endif | 1089 | #endif |
1090 | #endif | 1090 | #endif |
@@ -1121,7 +1121,7 @@ evas_common_convert_rgba_to_16bpp_rgb_444_dith_rot_180 (DATA32 *src, DATA8 *dst, | |||
1121 | 1121 | ||
1122 | CONVERT_LOOP_END_ROT_180(); | 1122 | CONVERT_LOOP_END_ROT_180(); |
1123 | return; | 1123 | return; |
1124 | pal = 0; | 1124 | (void)pal; |
1125 | } | 1125 | } |
1126 | #endif | 1126 | #endif |
1127 | #endif | 1127 | #endif |
@@ -1180,7 +1180,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_444_dith_rot_270 (DATA32 *src, DATA8 *dst | |||
1180 | 1180 | ||
1181 | CONVERT_LOOP2_END_ROT_270(); | 1181 | CONVERT_LOOP2_END_ROT_270(); |
1182 | return; | 1182 | return; |
1183 | pal = 0; | 1183 | (void)pal; |
1184 | } | 1184 | } |
1185 | #endif | 1185 | #endif |
1186 | #endif | 1186 | #endif |
@@ -1217,7 +1217,7 @@ evas_common_convert_rgba_to_16bpp_rgb_444_dith_rot_270 (DATA32 *src, DATA8 *dst, | |||
1217 | 1217 | ||
1218 | CONVERT_LOOP_END_ROT_270(); | 1218 | CONVERT_LOOP_END_ROT_270(); |
1219 | return; | 1219 | return; |
1220 | pal = 0; | 1220 | (void)pal; |
1221 | } | 1221 | } |
1222 | #endif | 1222 | #endif |
1223 | #endif | 1223 | #endif |
@@ -1276,7 +1276,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_444_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
1276 | 1276 | ||
1277 | CONVERT_LOOP2_END_ROT_90(); | 1277 | CONVERT_LOOP2_END_ROT_90(); |
1278 | return; | 1278 | return; |
1279 | pal = 0; | 1279 | (void)pal; |
1280 | } | 1280 | } |
1281 | #endif | 1281 | #endif |
1282 | #endif | 1282 | #endif |
@@ -1313,7 +1313,7 @@ evas_common_convert_rgba_to_16bpp_rgb_444_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
1313 | 1313 | ||
1314 | CONVERT_LOOP_END_ROT_90(); | 1314 | CONVERT_LOOP_END_ROT_90(); |
1315 | return; | 1315 | return; |
1316 | pal = 0; | 1316 | (void)pal; |
1317 | } | 1317 | } |
1318 | #endif | 1318 | #endif |
1319 | #endif | 1319 | #endif |
@@ -1372,7 +1372,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_454645_dith (DATA32 *src, DATA8 *dst, int | |||
1372 | 1372 | ||
1373 | CONVERT_LOOP2_END_ROT_0(); | 1373 | CONVERT_LOOP2_END_ROT_0(); |
1374 | return; | 1374 | return; |
1375 | pal = 0; | 1375 | (void)pal; |
1376 | } | 1376 | } |
1377 | #endif | 1377 | #endif |
1378 | #endif | 1378 | #endif |
@@ -1409,7 +1409,7 @@ evas_common_convert_rgba_to_16bpp_rgb_454645_dith (DATA32 *src, DATA8 *dst, int | |||
1409 | 1409 | ||
1410 | CONVERT_LOOP_END_ROT_0(); | 1410 | CONVERT_LOOP_END_ROT_0(); |
1411 | return; | 1411 | return; |
1412 | pal = 0; | 1412 | (void)pal; |
1413 | } | 1413 | } |
1414 | #endif | 1414 | #endif |
1415 | #endif | 1415 | #endif |
@@ -1468,7 +1468,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_454645_dith_rot_180 (DATA32 *src, DATA8 * | |||
1468 | 1468 | ||
1469 | CONVERT_LOOP2_END_ROT_180(); | 1469 | CONVERT_LOOP2_END_ROT_180(); |
1470 | return; | 1470 | return; |
1471 | pal = 0; | 1471 | (void)pal; |
1472 | } | 1472 | } |
1473 | #endif | 1473 | #endif |
1474 | #endif | 1474 | #endif |
@@ -1505,7 +1505,7 @@ evas_common_convert_rgba_to_16bpp_rgb_454645_dith_rot_180 (DATA32 *src, DATA8 *d | |||
1505 | 1505 | ||
1506 | CONVERT_LOOP_END_ROT_180(); | 1506 | CONVERT_LOOP_END_ROT_180(); |
1507 | return; | 1507 | return; |
1508 | pal = 0; | 1508 | (void)pal; |
1509 | } | 1509 | } |
1510 | #endif | 1510 | #endif |
1511 | #endif | 1511 | #endif |
@@ -1565,7 +1565,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_454645_dith_rot_270 (DATA32 *src, DATA8 * | |||
1565 | 1565 | ||
1566 | CONVERT_LOOP2_END_ROT_270(); | 1566 | CONVERT_LOOP2_END_ROT_270(); |
1567 | return; | 1567 | return; |
1568 | pal = 0; | 1568 | (void)pal; |
1569 | } | 1569 | } |
1570 | #endif | 1570 | #endif |
1571 | #endif | 1571 | #endif |
@@ -1602,7 +1602,7 @@ evas_common_convert_rgba_to_16bpp_rgb_454645_dith_rot_270 (DATA32 *src, DATA8 *d | |||
1602 | 1602 | ||
1603 | CONVERT_LOOP_END_ROT_270(); | 1603 | CONVERT_LOOP_END_ROT_270(); |
1604 | return; | 1604 | return; |
1605 | pal = 0; | 1605 | (void)pal; |
1606 | } | 1606 | } |
1607 | #endif | 1607 | #endif |
1608 | #endif | 1608 | #endif |
@@ -1661,7 +1661,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_454645_dith_rot_90 (DATA32 *src, DATA8 *d | |||
1661 | 1661 | ||
1662 | CONVERT_LOOP2_END_ROT_90(); | 1662 | CONVERT_LOOP2_END_ROT_90(); |
1663 | return; | 1663 | return; |
1664 | pal = 0; | 1664 | (void)pal; |
1665 | } | 1665 | } |
1666 | #endif | 1666 | #endif |
1667 | #endif | 1667 | #endif |
@@ -1698,7 +1698,7 @@ evas_common_convert_rgba_to_16bpp_rgb_454645_dith_rot_90 (DATA32 *src, DATA8 *ds | |||
1698 | 1698 | ||
1699 | CONVERT_LOOP_END_ROT_90(); | 1699 | CONVERT_LOOP_END_ROT_90(); |
1700 | return; | 1700 | return; |
1701 | pal = 0; | 1701 | (void)pal; |
1702 | } | 1702 | } |
1703 | #endif | 1703 | #endif |
1704 | #endif | 1704 | #endif |
@@ -1757,7 +1757,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_555_dith (DATA32 *src, DATA8 *dst, int sr | |||
1757 | 1757 | ||
1758 | CONVERT_LOOP2_END_ROT_0(); | 1758 | CONVERT_LOOP2_END_ROT_0(); |
1759 | return; | 1759 | return; |
1760 | pal = 0; | 1760 | (void)pal; |
1761 | } | 1761 | } |
1762 | #endif | 1762 | #endif |
1763 | #endif | 1763 | #endif |
@@ -1794,7 +1794,7 @@ evas_common_convert_rgba_to_16bpp_rgb_555_dith (DATA32 *src, DATA8 *dst, int src | |||
1794 | 1794 | ||
1795 | CONVERT_LOOP_END_ROT_0(); | 1795 | CONVERT_LOOP_END_ROT_0(); |
1796 | return; | 1796 | return; |
1797 | pal = 0; | 1797 | (void)pal; |
1798 | } | 1798 | } |
1799 | #endif | 1799 | #endif |
1800 | #endif | 1800 | #endif |
@@ -1853,7 +1853,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_555_dith_rot_180 (DATA32 *src, DATA8 *dst | |||
1853 | 1853 | ||
1854 | CONVERT_LOOP2_END_ROT_180(); | 1854 | CONVERT_LOOP2_END_ROT_180(); |
1855 | return; | 1855 | return; |
1856 | pal = 0; | 1856 | (void)pal; |
1857 | } | 1857 | } |
1858 | #endif | 1858 | #endif |
1859 | #endif | 1859 | #endif |
@@ -1890,7 +1890,7 @@ evas_common_convert_rgba_to_16bpp_rgb_555_dith_rot_180 (DATA32 *src, DATA8 *dst, | |||
1890 | 1890 | ||
1891 | CONVERT_LOOP_END_ROT_180(); | 1891 | CONVERT_LOOP_END_ROT_180(); |
1892 | return; | 1892 | return; |
1893 | pal = 0; | 1893 | (void)pal; |
1894 | } | 1894 | } |
1895 | #endif | 1895 | #endif |
1896 | #endif | 1896 | #endif |
@@ -1949,7 +1949,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_555_dith_rot_270 (DATA32 *src, DATA8 *dst | |||
1949 | 1949 | ||
1950 | CONVERT_LOOP2_END_ROT_270(); | 1950 | CONVERT_LOOP2_END_ROT_270(); |
1951 | return; | 1951 | return; |
1952 | pal = 0; | 1952 | (void)pal; |
1953 | } | 1953 | } |
1954 | #endif | 1954 | #endif |
1955 | #endif | 1955 | #endif |
@@ -1986,7 +1986,7 @@ evas_common_convert_rgba_to_16bpp_rgb_555_dith_rot_270 (DATA32 *src, DATA8 *dst, | |||
1986 | 1986 | ||
1987 | CONVERT_LOOP_END_ROT_270(); | 1987 | CONVERT_LOOP_END_ROT_270(); |
1988 | return; | 1988 | return; |
1989 | pal = 0; | 1989 | (void)pal; |
1990 | } | 1990 | } |
1991 | #endif | 1991 | #endif |
1992 | #endif | 1992 | #endif |
@@ -2045,7 +2045,7 @@ evas_common_convert_rgba2_to_16bpp_rgb_555_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
2045 | 2045 | ||
2046 | CONVERT_LOOP2_END_ROT_90(); | 2046 | CONVERT_LOOP2_END_ROT_90(); |
2047 | return; | 2047 | return; |
2048 | pal = 0; | 2048 | (void)pal; |
2049 | } | 2049 | } |
2050 | #endif | 2050 | #endif |
2051 | #endif | 2051 | #endif |
@@ -2082,7 +2082,7 @@ evas_common_convert_rgba_to_16bpp_rgb_555_dith_rot_90 (DATA32 *src, DATA8 *dst, | |||
2082 | 2082 | ||
2083 | CONVERT_LOOP_END_ROT_90(); | 2083 | CONVERT_LOOP_END_ROT_90(); |
2084 | return; | 2084 | return; |
2085 | pal = 0; | 2085 | (void)pal; |
2086 | } | 2086 | } |
2087 | #endif | 2087 | #endif |
2088 | #endif | 2088 | #endif |
diff --git a/libraries/evas/src/lib/engines/common/evas_convert_rgb_32.c b/libraries/evas/src/lib/engines/common/evas_convert_rgb_32.c index 41dac6f..0401a4a 100644 --- a/libraries/evas/src/lib/engines/common/evas_convert_rgb_32.c +++ b/libraries/evas/src/lib/engines/common/evas_convert_rgb_32.c | |||
@@ -48,15 +48,167 @@ evas_common_convert_rgba_to_32bpp_rgb_8888_rot_180 (DATA32 *src, DATA8 *dst, int | |||
48 | #endif | 48 | #endif |
49 | #endif | 49 | #endif |
50 | 50 | ||
51 | #ifdef TILE_ROTATE | ||
52 | #define FAST_SIMPLE_ROTATE(suffix, pix_type) \ | ||
53 | static void \ | ||
54 | blt_rotated_90_trivial_##suffix(pix_type *dst, \ | ||
55 | int dst_stride, \ | ||
56 | const pix_type *src, \ | ||
57 | int src_stride, \ | ||
58 | int w, \ | ||
59 | int h) \ | ||
60 | { \ | ||
61 | int x, y; \ | ||
62 | for (y = 0; y < h; y++) \ | ||
63 | { \ | ||
64 | const pix_type *s = src + (h - y - 1); \ | ||
65 | pix_type *d = dst + (dst_stride * y); \ | ||
66 | for (x = 0; x < w; x++) \ | ||
67 | { \ | ||
68 | *d++ = *s; \ | ||
69 | s += src_stride; \ | ||
70 | } \ | ||
71 | } \ | ||
72 | } \ | ||
73 | static void \ | ||
74 | blt_rotated_270_trivial_##suffix(pix_type *dst, \ | ||
75 | int dst_stride, \ | ||
76 | const pix_type *src, \ | ||
77 | int src_stride, \ | ||
78 | int w, \ | ||
79 | int h) \ | ||
80 | { \ | ||
81 | int x, y; \ | ||
82 | for (y = 0; y < h; y++) \ | ||
83 | { \ | ||
84 | const pix_type *s = src + (src_stride * (w - 1)) + y; \ | ||
85 | pix_type *d = dst + (dst_stride * y); \ | ||
86 | for (x = 0; x < w; x++) \ | ||
87 | { \ | ||
88 | *d++ = *s; \ | ||
89 | s -= src_stride; \ | ||
90 | } \ | ||
91 | } \ | ||
92 | } \ | ||
93 | static void \ | ||
94 | blt_rotated_90_##suffix(pix_type *dst, \ | ||
95 | int dst_stride, \ | ||
96 | const pix_type *src, \ | ||
97 | int src_stride, \ | ||
98 | int w, \ | ||
99 | int h) \ | ||
100 | { \ | ||
101 | int x, leading_pixels = 0, trailing_pixels = 0; \ | ||
102 | const int TILE_SIZE = TILE_CACHE_LINE_SIZE / sizeof(pix_type); \ | ||
103 | if ((uintptr_t)dst & (TILE_CACHE_LINE_SIZE - 1)) \ | ||
104 | { \ | ||
105 | leading_pixels = TILE_SIZE - \ | ||
106 | (((uintptr_t)dst & (TILE_CACHE_LINE_SIZE - 1)) / sizeof(pix_type)); \ | ||
107 | if (leading_pixels > w) \ | ||
108 | leading_pixels = w; \ | ||
109 | blt_rotated_90_trivial_##suffix(dst, \ | ||
110 | dst_stride, \ | ||
111 | src, \ | ||
112 | src_stride, \ | ||
113 | leading_pixels, \ | ||
114 | h); \ | ||
115 | dst += leading_pixels; \ | ||
116 | src += leading_pixels * src_stride; \ | ||
117 | w -= leading_pixels; \ | ||
118 | } \ | ||
119 | if ((uintptr_t)(dst + w) & (TILE_CACHE_LINE_SIZE - 1)) \ | ||
120 | { \ | ||
121 | trailing_pixels = (((uintptr_t)(dst + w) & \ | ||
122 | (TILE_CACHE_LINE_SIZE - 1)) / sizeof(pix_type)); \ | ||
123 | if (trailing_pixels > w) \ | ||
124 | trailing_pixels = w; \ | ||
125 | w -= trailing_pixels; \ | ||
126 | } \ | ||
127 | for (x = 0; x < w; x += TILE_SIZE) \ | ||
128 | { \ | ||
129 | blt_rotated_90_trivial_##suffix(dst + x, \ | ||
130 | dst_stride, \ | ||
131 | src + (src_stride * x), \ | ||
132 | src_stride, \ | ||
133 | TILE_SIZE, \ | ||
134 | h); \ | ||
135 | } \ | ||
136 | if (trailing_pixels) \ | ||
137 | blt_rotated_90_trivial_##suffix(dst + w, \ | ||
138 | dst_stride, \ | ||
139 | src + (w * src_stride), \ | ||
140 | src_stride, \ | ||
141 | trailing_pixels, \ | ||
142 | h); \ | ||
143 | } \ | ||
144 | static void \ | ||
145 | blt_rotated_270_##suffix(pix_type *dst, \ | ||
146 | int dst_stride, \ | ||
147 | const pix_type *src, \ | ||
148 | int src_stride, \ | ||
149 | int w, \ | ||
150 | int h) \ | ||
151 | { \ | ||
152 | int x, leading_pixels = 0, trailing_pixels = 0; \ | ||
153 | const int TILE_SIZE = TILE_CACHE_LINE_SIZE / sizeof(pix_type); \ | ||
154 | if ((uintptr_t)dst & (TILE_CACHE_LINE_SIZE - 1)) \ | ||
155 | { \ | ||
156 | leading_pixels = TILE_SIZE - \ | ||
157 | (((uintptr_t)dst & (TILE_CACHE_LINE_SIZE - 1)) / sizeof(pix_type)); \ | ||
158 | if (leading_pixels > w) \ | ||
159 | leading_pixels = w; \ | ||
160 | blt_rotated_270_trivial_##suffix(dst, \ | ||
161 | dst_stride, \ | ||
162 | src + (src_stride * (w - leading_pixels)), \ | ||
163 | src_stride, \ | ||
164 | leading_pixels, \ | ||
165 | h); \ | ||
166 | dst += leading_pixels; \ | ||
167 | w -= leading_pixels; \ | ||
168 | } \ | ||
169 | if ((uintptr_t)(dst + w) & (TILE_CACHE_LINE_SIZE - 1)) \ | ||
170 | { \ | ||
171 | trailing_pixels = (((uintptr_t)(dst + w) & \ | ||
172 | (TILE_CACHE_LINE_SIZE - 1)) / sizeof(pix_type)); \ | ||
173 | if (trailing_pixels > w) \ | ||
174 | trailing_pixels = w; \ | ||
175 | w -= trailing_pixels; \ | ||
176 | src += trailing_pixels * src_stride; \ | ||
177 | } \ | ||
178 | for (x = 0; x < w; x += TILE_SIZE) \ | ||
179 | { \ | ||
180 | blt_rotated_270_trivial_##suffix(dst + x, \ | ||
181 | dst_stride, \ | ||
182 | src + (src_stride * (w - x - TILE_SIZE)), \ | ||
183 | src_stride, \ | ||
184 | TILE_SIZE, \ | ||
185 | h); \ | ||
186 | } \ | ||
187 | if (trailing_pixels) \ | ||
188 | blt_rotated_270_trivial_##suffix(dst + w, \ | ||
189 | dst_stride, \ | ||
190 | src - (trailing_pixels * src_stride), \ | ||
191 | src_stride, \ | ||
192 | trailing_pixels, \ | ||
193 | h); \ | ||
194 | } | ||
195 | |||
196 | FAST_SIMPLE_ROTATE(8888, DATA8) | ||
197 | #endif | ||
198 | |||
199 | |||
51 | #ifdef BUILD_CONVERT_32_RGB_8888 | 200 | #ifdef BUILD_CONVERT_32_RGB_8888 |
52 | #ifdef BUILD_CONVERT_32_RGB_ROT270 | 201 | #ifdef BUILD_CONVERT_32_RGB_ROT270 |
53 | void | 202 | void |
54 | evas_common_convert_rgba_to_32bpp_rgb_8888_rot_270 (DATA32 *src, DATA8 *dst, int src_jump, int dst_jump, int w, int h, int dith_x __UNUSED__, int dith_y __UNUSED__, DATA8 *pal __UNUSED__) | 203 | evas_common_convert_rgba_to_32bpp_rgb_8888_rot_270 (DATA32 *src, DATA8 *dst, int src_jump, int dst_jump, int w, int h, int dith_x __UNUSED__, int dith_y __UNUSED__, DATA8 *pal __UNUSED__) |
55 | { | 204 | { |
205 | #ifdef TILE_ROTATE | ||
206 | blt_rotated_270_8888((DATA8 *)dst, dst_jump+w, (const DATA8 *)src, src_jump+h, w, h) ; | ||
207 | #else | ||
56 | DATA32 *src_ptr; | 208 | DATA32 *src_ptr; |
57 | DATA32 *dst_ptr; | 209 | DATA32 *dst_ptr; |
58 | int x, y; | 210 | int x, y; |
59 | 211 | ||
60 | dst_ptr = (DATA32 *)dst; | 212 | dst_ptr = (DATA32 *)dst; |
61 | 213 | ||
62 | CONVERT_LOOP_START_ROT_270(); | 214 | CONVERT_LOOP_START_ROT_270(); |
@@ -64,6 +216,7 @@ evas_common_convert_rgba_to_32bpp_rgb_8888_rot_270 (DATA32 *src, DATA8 *dst, int | |||
64 | *dst_ptr = *src_ptr; | 216 | *dst_ptr = *src_ptr; |
65 | 217 | ||
66 | CONVERT_LOOP_END_ROT_270(); | 218 | CONVERT_LOOP_END_ROT_270(); |
219 | #endif | ||
67 | return; | 220 | return; |
68 | } | 221 | } |
69 | #endif | 222 | #endif |
@@ -74,106 +227,118 @@ evas_common_convert_rgba_to_32bpp_rgb_8888_rot_270 (DATA32 *src, DATA8 *dst, int | |||
74 | void | 227 | void |
75 | evas_common_convert_rgba_to_32bpp_rgb_8888_rot_90 (DATA32 *src, DATA8 *dst, int src_jump, int dst_jump, int w, int h, int dith_x __UNUSED__, int dith_y __UNUSED__, DATA8 *pal __UNUSED__) | 228 | evas_common_convert_rgba_to_32bpp_rgb_8888_rot_90 (DATA32 *src, DATA8 *dst, int src_jump, int dst_jump, int w, int h, int dith_x __UNUSED__, int dith_y __UNUSED__, DATA8 *pal __UNUSED__) |
76 | { | 229 | { |
77 | #ifndef BUILD_NEON | 230 | # ifndef BUILD_NEON |
231 | # ifdef TILE_ROTATE | ||
232 | blt_rotated_90_8888((DATA8 *)dst, dst_jump+w, (const DATA8 *)src, src_jump+h, w, h) ; | ||
233 | # else | ||
78 | DATA32 *src_ptr; | 234 | DATA32 *src_ptr; |
79 | DATA32 *dst_ptr; | 235 | DATA32 *dst_ptr; |
80 | int x, y; | 236 | int x, y; |
81 | 237 | ||
82 | dst_ptr = (DATA32 *)dst; | 238 | dst_ptr = (DATA32 *)dst; |
83 | CONVERT_LOOP_START_ROT_90(); | 239 | CONVERT_LOOP_START_ROT_90(); |
84 | 240 | ||
85 | *dst_ptr = *src_ptr; | 241 | *dst_ptr = *src_ptr; |
86 | 242 | ||
87 | CONVERT_LOOP_END_ROT_90(); | 243 | CONVERT_LOOP_END_ROT_90(); |
88 | #else | 244 | # endif |
245 | |||
246 | # else | ||
247 | |||
248 | # ifdef TILE_ROTATE | ||
249 | blt_rotated_90_8888((DATA8 *)dst, dst_jump+w, (const DATA8 *)src, src_jump+h, w, h) ; | ||
250 | # else | ||
89 | if ((w & 1) || (h & 1)) | 251 | if ((w & 1) || (h & 1)) |
90 | { | 252 | { |
91 | /* Rarely (if ever) if ever: so slow path is fine */ | 253 | /* Rarely (if ever) if ever: so slow path is fine */ |
92 | DATA32 *src_ptr; | 254 | DATA32 *src_ptr; |
93 | DATA32 *dst_ptr; | 255 | DATA32 *dst_ptr; |
94 | int x, y; | 256 | int x, y; |
95 | 257 | ||
96 | dst_ptr = (DATA32 *)dst; | 258 | dst_ptr = (DATA32 *)dst; |
97 | CONVERT_LOOP_START_ROT_90(); | 259 | CONVERT_LOOP_START_ROT_90(); |
98 | 260 | ||
99 | *dst_ptr = *src_ptr; | 261 | *dst_ptr = *src_ptr; |
100 | 262 | ||
101 | CONVERT_LOOP_END_ROT_90(); | 263 | CONVERT_LOOP_END_ROT_90(); |
102 | } else { | 264 | } |
103 | #define AP "convert_rgba32_rot_90_" | 265 | else |
104 | asm volatile ( | 266 | { |
105 | ".fpu neon \n\t" | 267 | # define AP "convert_rgba32_rot_90_" |
106 | " mov %[s1], %[src] \n\t" | 268 | asm volatile ( |
107 | " add %[s1], %[h],lsl #2 \n\t" | 269 | ".fpu neon \n\t" |
108 | " sub %[s1], #8 \n\t" | 270 | " mov %[s1], %[src] \n\t" |
109 | 271 | " add %[s1], %[s1], %[h],lsl #2 \n\t" | |
110 | " mov %[s2], %[src] \n\t" | 272 | " sub %[s1], #8 \n\t" |
111 | " add %[s2], %[h], lsl #3 \n\t" | 273 | |
112 | " add %[s2], %[sjmp], lsr #1 \n\t" | 274 | " mov %[s2], %[src] \n\t" |
113 | " sub %[s2], #8 \n\t" | 275 | " add %[s2], %[s2], %[h], lsl #3 \n\t" |
114 | 276 | " add %[s2], %[s2], %[sjmp], lsr #1 \n\t" | |
115 | " mov %[d1], %[dst] \n\t" | 277 | " sub %[s2], #8 \n\t" |
116 | 278 | ||
117 | " add %[d2], %[d1], %[djmp] \n\t" | 279 | " mov %[d1], %[dst] \n\t" |
118 | " add %[d2], %[w], lsl #2 \n\t" | 280 | |
119 | 281 | " add %[d2], %[d1], %[djmp] \n\t" | |
120 | " mov %[sadv], %[h], lsl #3 \n\t" | 282 | " add %[d2], %[d2], %[w], lsl #2 \n\t" |
121 | " add %[sadv], %[sjmp], lsl #1 \n\t" | 283 | |
122 | 284 | " mov %[sadv], %[h], lsl #3 \n\t" | |
123 | " mov %[y], #0 \n\t" | 285 | " add %[sadv], %[sadv], %[sjmp], lsl #1\n\t" |
124 | " mov %[x], #0 \n\t" | 286 | |
125 | AP"loop: \n\t" | 287 | " mov %[y], #0 \n\t" |
126 | " vld1.u32 d0, [%[s1]] \n\t" | 288 | " mov %[x], #0 \n\t" |
127 | " vld1.u32 d1, [%[s2]] \n\t" | 289 | AP"loop: \n\t" |
128 | " add %[x], #2 \n\t" | 290 | " vld1.u32 d0, [%[s1]] \n\t" |
129 | " add %[s1], %[sadv] \n\t" | 291 | " vld1.u32 d1, [%[s2]] \n\t" |
130 | " add %[s2], %[sadv] \n\t" | 292 | " add %[x], #2 \n\t" |
131 | " vtrn.u32 d0, d1 \n\t" | 293 | " add %[s1], %[sadv] \n\t" |
132 | " cmp %[x], %[w] \n\t" | 294 | " add %[s2], %[sadv] \n\t" |
133 | " vst1.u32 d1, [%[d1]]! \n\t" | 295 | " vtrn.u32 d0, d1 \n\t" |
134 | " vst1.u32 d0, [%[d2]]! \n\t" | 296 | " cmp %[x], %[w] \n\t" |
135 | " blt "AP"loop \n\t" | 297 | " vst1.u32 d1, [%[d1]]! \n\t" |
136 | 298 | " vst1.u32 d0, [%[d2]]! \n\t" | |
137 | " mov %[x], #0 \n\t" | 299 | " blt "AP"loop \n\t" |
138 | " add %[d1], %[djmp] \n\t" | 300 | |
139 | " add %[d1], %[w], lsl #2 \n\t" | 301 | " mov %[x], #0 \n\t" |
140 | " add %[d2], %[djmp] \n\t" | 302 | " add %[d1], %[djmp] \n\t" |
141 | " add %[d2], %[w], lsl #2 \n\t" | 303 | " add %[d1], %[d1], %[w], lsl #2 \n\t" |
142 | 304 | " add %[d2], %[djmp] \n\t" | |
143 | " mov %[s1], %[src] \n\t" | 305 | " add %[d2], %[d2], %[w], lsl #2 \n\t" |
144 | " add %[s1], %[h], lsl #2 \n\t" | 306 | |
145 | " sub %[s1], %[y], lsl #2 \n\t" | 307 | " mov %[s1], %[src] \n\t" |
146 | " sub %[s1], #16 \n\t" | 308 | " add %[s1], %[s1], %[h], lsl #2 \n\t" |
147 | 309 | " sub %[s1], %[s1], %[y], lsl #2 \n\t" | |
148 | " add %[s2], %[s1], %[h], lsl #2 \n\t" | 310 | " sub %[s1], #16 \n\t" |
149 | " add %[s2], %[sjmp], lsl #2 \n\t" | 311 | |
150 | 312 | " add %[s2], %[s1], %[h], lsl #2 \n\t" | |
151 | " add %[y], #2 \n\t" | 313 | " add %[s2], %[s2], %[sjmp], lsl #2 \n\t" |
152 | 314 | ||
153 | " cmp %[y], %[h] \n\t" | 315 | " add %[y], #2 \n\t" |
154 | " blt "AP"loop \n\t" | 316 | |
155 | 317 | " cmp %[y], %[h] \n\t" | |
156 | : // Out | 318 | " blt "AP"loop \n\t" |
157 | : [s1] "r" (1), | 319 | |
158 | [s2] "r" (11), | 320 | : // Out |
159 | [d1] "r" (2), | 321 | : [s1] "r" (1), |
160 | [d2] "r" (12), | 322 | [s2] "r" (11), |
161 | [src] "r" (src), | 323 | [d1] "r" (2), |
162 | [dst] "r" (dst), | 324 | [d2] "r" (12), |
163 | [x] "r" (3), | 325 | [src] "r" (src), |
164 | [y] "r" (4), | 326 | [dst] "r" (dst), |
165 | [w] "r" (w), | 327 | [x] "r" (3), |
166 | [h] "r" (h), | 328 | [y] "r" (4), |
167 | [sadv] "r" (5), | 329 | [w] "r" (w), |
168 | [sjmp] "r" (src_jump * 4), | 330 | [h] "r" (h), |
169 | [djmp] "r" (dst_jump * 4 * 2) | 331 | [sadv] "r" (5), |
170 | : "d0", "d1", "memory", "cc"// Clober | 332 | [sjmp] "r" (src_jump * 4), |
171 | 333 | [djmp] "r" (dst_jump * 4 * 2) | |
172 | 334 | : "d0", "d1", "memory", "cc"// Clober | |
173 | ); | 335 | |
174 | } | 336 | |
175 | #undef AP | 337 | ); |
176 | #endif | 338 | } |
339 | # undef AP | ||
340 | # endif | ||
341 | # endif | ||
177 | return; | 342 | return; |
178 | } | 343 | } |
179 | #endif | 344 | #endif |
@@ -448,7 +613,7 @@ evas_common_convert_rgba_to_32bpp_rgb_666(DATA32 *src, DATA8 *dst, int src_jump, | |||
448 | 613 | ||
449 | CONVERT_LOOP_START_ROT_0(); | 614 | CONVERT_LOOP_START_ROT_0(); |
450 | 615 | ||
451 | *dst_ptr = | 616 | *dst_ptr = |
452 | (((R_VAL(src_ptr) << 12) | (B_VAL(src_ptr) >> 2)) & 0x03f03f) | | 617 | (((R_VAL(src_ptr) << 12) | (B_VAL(src_ptr) >> 2)) & 0x03f03f) | |
453 | ((G_VAL(src_ptr) << 4) & 0x000fc0); | 618 | ((G_VAL(src_ptr) << 4) & 0x000fc0); |
454 | 619 | ||
diff --git a/libraries/evas/src/lib/engines/common/evas_convert_yuv.c b/libraries/evas/src/lib/engines/common/evas_convert_yuv.c index a0d155c..000cb01 100644 --- a/libraries/evas/src/lib/engines/common/evas_convert_yuv.c +++ b/libraries/evas/src/lib/engines/common/evas_convert_yuv.c | |||
@@ -1091,7 +1091,7 @@ _evas_nv12tiledtorgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int | |||
1091 | const int offset_value[2] = { 0, 64 * 16 }; | 1091 | const int offset_value[2] = { 0, 64 * 16 }; |
1092 | int mb_x, mb_y, mb_w, mb_h; | 1092 | int mb_x, mb_y, mb_w, mb_h; |
1093 | int base_h; | 1093 | int base_h; |
1094 | int uv_x, uv_y, uv_step; | 1094 | int uv_x, uv_step; |
1095 | int stride; | 1095 | int stride; |
1096 | 1096 | ||
1097 | /* Idea iterate over each macroblock and convert each of them using _evas_nv12torgb_raster */ | 1097 | /* Idea iterate over each macroblock and convert each of them using _evas_nv12torgb_raster */ |
@@ -1128,7 +1128,7 @@ _evas_nv12tiledtorgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int | |||
1128 | base_h = (mb_h >> 1) + (mb_h & 0x1); | 1128 | base_h = (mb_h >> 1) + (mb_h & 0x1); |
1129 | stride = w * sizeof (int); | 1129 | stride = w * sizeof (int); |
1130 | 1130 | ||
1131 | uv_x = 0; uv_y = 0; | 1131 | uv_x = 0; |
1132 | 1132 | ||
1133 | /* In this format we linearize macroblock on two line to form a Z and it's invert */ | 1133 | /* In this format we linearize macroblock on two line to form a Z and it's invert */ |
1134 | for (mb_y = 0; mb_y < (mb_h >> 1); mb_y++) | 1134 | for (mb_y = 0; mb_y < (mb_h >> 1); mb_y++) |
diff --git a/libraries/evas/src/lib/engines/common/evas_cpu.c b/libraries/evas/src/lib/engines/common/evas_cpu.c index cff8b2b..fe90c5b 100644 --- a/libraries/evas/src/lib/engines/common/evas_cpu.c +++ b/libraries/evas/src/lib/engines/common/evas_cpu.c | |||
@@ -74,6 +74,7 @@ evas_common_cpu_sse3_test(void) | |||
74 | #endif | 74 | #endif |
75 | } | 75 | } |
76 | 76 | ||
77 | #ifdef BUILD_ALTIVEC | ||
77 | void | 78 | void |
78 | evas_common_cpu_altivec_test(void) | 79 | evas_common_cpu_altivec_test(void) |
79 | { | 80 | { |
@@ -85,6 +86,7 @@ evas_common_cpu_altivec_test(void) | |||
85 | #endif /* __VEC__ */ | 86 | #endif /* __VEC__ */ |
86 | #endif /* __POWERPC__ */ | 87 | #endif /* __POWERPC__ */ |
87 | } | 88 | } |
89 | #endif /* BUILD_ALTIVEC */ | ||
88 | 90 | ||
89 | void | 91 | void |
90 | evas_common_cpu_neon_test(void) | 92 | evas_common_cpu_neon_test(void) |
@@ -177,6 +179,7 @@ evas_common_cpu_init(void) | |||
177 | #endif /* BUILD_SSE3 */ | 179 | #endif /* BUILD_SSE3 */ |
178 | #endif /* BUILD_SSE */ | 180 | #endif /* BUILD_SSE */ |
179 | #endif /* BUILD_MMX */ | 181 | #endif /* BUILD_MMX */ |
182 | #ifdef BUILD_ALTIVEC | ||
180 | #ifdef __POWERPC__ | 183 | #ifdef __POWERPC__ |
181 | #ifdef __VEC__ | 184 | #ifdef __VEC__ |
182 | cpu_feature_mask |= CPU_FEATURE_ALTIVEC * | 185 | cpu_feature_mask |= CPU_FEATURE_ALTIVEC * |
@@ -186,6 +189,7 @@ evas_common_cpu_init(void) | |||
186 | cpu_feature_mask &= ~CPU_FEATURE_ALTIVEC; | 189 | cpu_feature_mask &= ~CPU_FEATURE_ALTIVEC; |
187 | #endif /* __VEC__ */ | 190 | #endif /* __VEC__ */ |
188 | #endif /* __POWERPC__ */ | 191 | #endif /* __POWERPC__ */ |
192 | #endif /* BUILD_ALTIVEC */ | ||
189 | #ifdef __SPARC__ | 193 | #ifdef __SPARC__ |
190 | cpu_feature_mask |= CPU_FEATURE_VIS * | 194 | cpu_feature_mask |= CPU_FEATURE_VIS * |
191 | evas_common_cpu_feature_test(evas_common_cpu_vis_test); | 195 | evas_common_cpu_feature_test(evas_common_cpu_vis_test); |
diff --git a/libraries/evas/src/lib/engines/common/evas_draw_main.c b/libraries/evas/src/lib/engines/common/evas_draw_main.c index 7652708..def19a8 100644 --- a/libraries/evas/src/lib/engines/common/evas_draw_main.c +++ b/libraries/evas/src/lib/engines/common/evas_draw_main.c | |||
@@ -75,6 +75,14 @@ evas_common_draw_context_free(RGBA_Draw_Context *dc) | |||
75 | { | 75 | { |
76 | if (!dc) return; | 76 | if (!dc) return; |
77 | 77 | ||
78 | #ifdef HAVE_PIXMAN | ||
79 | if (dc->col.pixman_color_image) | ||
80 | { | ||
81 | pixman_image_unref(dc->col.pixman_color_image); | ||
82 | dc->col.pixman_color_image = NULL; | ||
83 | } | ||
84 | #endif | ||
85 | |||
78 | evas_common_draw_context_apply_clean_cutouts(&dc->cutout); | 86 | evas_common_draw_context_apply_clean_cutouts(&dc->cutout); |
79 | free(dc); | 87 | free(dc); |
80 | } | 88 | } |
@@ -133,6 +141,20 @@ evas_common_draw_context_set_color(RGBA_Draw_Context *dc, int r, int g, int b, i | |||
133 | G_VAL(&(dc->col.col)) = (DATA8)g; | 141 | G_VAL(&(dc->col.col)) = (DATA8)g; |
134 | B_VAL(&(dc->col.col)) = (DATA8)b; | 142 | B_VAL(&(dc->col.col)) = (DATA8)b; |
135 | A_VAL(&(dc->col.col)) = (DATA8)a; | 143 | A_VAL(&(dc->col.col)) = (DATA8)a; |
144 | #ifdef HAVE_PIXMAN | ||
145 | if (dc && dc->col.pixman_color_image) | ||
146 | pixman_image_unref(dc->col.pixman_color_image); | ||
147 | |||
148 | pixman_color_t pixman_color; | ||
149 | |||
150 | pixman_color.alpha = (dc->col.col & 0xff000000) >> 16; | ||
151 | pixman_color.red = (dc->col.col & 0x00ff0000) >> 8; | ||
152 | pixman_color.green = (dc->col.col & 0x0000ff00); | ||
153 | pixman_color.blue = (dc->col.col & 0x000000ff) << 8; | ||
154 | |||
155 | dc->col.pixman_color_image = pixman_image_create_solid_fill(&pixman_color); | ||
156 | #endif | ||
157 | |||
136 | } | 158 | } |
137 | 159 | ||
138 | EAPI void | 160 | EAPI void |
@@ -159,12 +181,42 @@ evas_common_draw_context_set_mask(RGBA_Draw_Context *dc, RGBA_Image *mask, int x | |||
159 | dc->mask.y = y; | 181 | dc->mask.y = y; |
160 | dc->mask.w = w; | 182 | dc->mask.w = w; |
161 | dc->mask.h = h; | 183 | dc->mask.h = h; |
184 | |||
185 | #ifdef HAVE_PIXMAN | ||
186 | if (mask->pixman.im) | ||
187 | pixman_image_unref(mask->pixman.im); | ||
188 | |||
189 | if (mask->cache_entry.flags.alpha) | ||
190 | { | ||
191 | mask->pixman.im = pixman_image_create_bits(PIXMAN_a8r8g8b8, w, h, | ||
192 | (uint32_t *)mask->mask.mask, | ||
193 | w * 4); | ||
194 | } | ||
195 | else | ||
196 | { | ||
197 | mask->pixman.im = pixman_image_create_bits(PIXMAN_x8r8g8b8, w, h, | ||
198 | (uint32_t *)mask->mask.mask, | ||
199 | w * 4); | ||
200 | } | ||
201 | #endif | ||
202 | |||
162 | } | 203 | } |
163 | 204 | ||
164 | EAPI void | 205 | EAPI void |
165 | evas_common_draw_context_unset_mask(RGBA_Draw_Context *dc) | 206 | evas_common_draw_context_unset_mask(RGBA_Draw_Context *dc) |
166 | { | 207 | { |
167 | dc->mask.mask = NULL; | 208 | dc->mask.mask = NULL; |
209 | |||
210 | #ifdef HAVE_PIXMAN | ||
211 | RGBA_Image *mask; | ||
212 | mask = (RGBA_Image *)dc->mask.mask; | ||
213 | |||
214 | if (mask && mask->pixman.im) | ||
215 | { | ||
216 | pixman_image_unref(mask->pixman.im); | ||
217 | mask->pixman.im = NULL; | ||
218 | } | ||
219 | #endif | ||
168 | } | 220 | } |
169 | 221 | ||
170 | 222 | ||
@@ -179,32 +231,32 @@ evas_common_draw_context_add_cutout(RGBA_Draw_Context *dc, int x, int y, int w, | |||
179 | { | 231 | { |
180 | #if 1 // this is a bit faster | 232 | #if 1 // this is a bit faster |
181 | int xa1, xa2, xb1, xb2; | 233 | int xa1, xa2, xb1, xb2; |
182 | 234 | ||
183 | xa1 = x; | 235 | xa1 = x; |
184 | xa2 = xa1 + w - 1; | 236 | xa2 = xa1 + w - 1; |
185 | xb1 = dc->clip.x; | 237 | xb1 = dc->clip.x; |
186 | if (xa2 < xb1) return; | 238 | if (xa2 < xb1) return; |
187 | xb2 = xb1 + dc->clip.w - 1; | 239 | xb2 = xb1 + dc->clip.w - 1; |
188 | if (xa1 >= xb2) return; | 240 | if (xa1 >= xb2) return; |
189 | if (xa2 > xb2) xa2 = xb2; | 241 | if (xa2 > xb2) xa2 = xb2; |
190 | if (xb1 > xa1) xa1 = xb1; | 242 | if (xb1 > xa1) xa1 = xb1; |
191 | x = xa1; | 243 | x = xa1; |
192 | w = xa2 - xa1 + 1; | 244 | w = xa2 - xa1 + 1; |
193 | 245 | ||
194 | xa1 = y; | 246 | xa1 = y; |
195 | xa2 = xa1 + h - 1; | 247 | xa2 = xa1 + h - 1; |
196 | xb1 = dc->clip.y; | 248 | xb1 = dc->clip.y; |
197 | if (xa2 < xb1) return; | 249 | if (xa2 < xb1) return; |
198 | xb2 = xb1 + dc->clip.h - 1; | 250 | xb2 = xb1 + dc->clip.h - 1; |
199 | if (xa1 >= xb2) return; | 251 | if (xa1 >= xb2) return; |
200 | if (xa2 > xb2) xa2 = xb2; | 252 | if (xa2 > xb2) xa2 = xb2; |
201 | if (xb1 > xa1) xa1 = xb1; | 253 | if (xb1 > xa1) xa1 = xb1; |
202 | y = xa1; | 254 | y = xa1; |
203 | h = xa2 - xa1 + 1; | 255 | h = xa2 - xa1 + 1; |
204 | #else | 256 | #else |
205 | RECTS_CLIP_TO_RECT(x, y, w, h, | 257 | RECTS_CLIP_TO_RECT(x, y, w, h, |
206 | dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h); | 258 | dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h); |
207 | #endif | 259 | #endif |
208 | if ((w < 1) || (h < 1)) return; | 260 | if ((w < 1) || (h < 1)) return; |
209 | } | 261 | } |
210 | evas_common_draw_context_cutouts_add(&dc->cutout, x, y, w, h); | 262 | evas_common_draw_context_cutouts_add(&dc->cutout, x, y, w, h); |
@@ -513,7 +565,7 @@ evas_common_draw_context_apply_cutouts(RGBA_Draw_Context *dc) | |||
513 | 565 | ||
514 | if (!dc->clip.use) return NULL; | 566 | if (!dc->clip.use) return NULL; |
515 | if ((dc->clip.w <= 0) || (dc->clip.h <= 0)) return NULL; | 567 | if ((dc->clip.w <= 0) || (dc->clip.h <= 0)) return NULL; |
516 | 568 | ||
517 | 569 | ||
518 | res = evas_common_draw_context_cutouts_new(); | 570 | res = evas_common_draw_context_cutouts_new(); |
519 | evas_common_draw_context_cutouts_add(res, dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h); | 571 | evas_common_draw_context_cutouts_add(res, dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h); |
diff --git a/libraries/evas/src/lib/engines/common/evas_font_draw.c b/libraries/evas/src/lib/engines/common/evas_font_draw.c index 94aa085..638cdfe 100644 --- a/libraries/evas/src/lib/engines/common/evas_font_draw.c +++ b/libraries/evas/src/lib/engines/common/evas_font_draw.c | |||
@@ -22,7 +22,7 @@ | |||
22 | 22 | ||
23 | static int max_cached_words = WORD_CACHE_NWORDS; | 23 | static int max_cached_words = WORD_CACHE_NWORDS; |
24 | 24 | ||
25 | struct prword | 25 | struct prword |
26 | { | 26 | { |
27 | EINA_INLIST; | 27 | EINA_INLIST; |
28 | struct cinfo *cinfo; | 28 | struct cinfo *cinfo; |
@@ -34,16 +34,16 @@ struct prword | |||
34 | int baseline; | 34 | int baseline; |
35 | }; | 35 | }; |
36 | 36 | ||
37 | struct cinfo | 37 | struct cinfo |
38 | { | 38 | { |
39 | FT_UInt index; | 39 | FT_UInt index; |
40 | struct | 40 | struct |
41 | { | 41 | { |
42 | int x, y; | 42 | int x, y; |
43 | } pos; | 43 | } pos; |
44 | int posx; | 44 | int posx; |
45 | RGBA_Font_Glyph *fg; | 45 | RGBA_Font_Glyph *fg; |
46 | struct | 46 | struct |
47 | { | 47 | { |
48 | int w,h; | 48 | int w,h; |
49 | int rows; | 49 | int rows; |
@@ -77,11 +77,11 @@ evas_common_font_draw_init(void) | |||
77 | #ifdef EVAS_FRAME_QUEUING | 77 | #ifdef EVAS_FRAME_QUEUING |
78 | EAPI void | 78 | EAPI void |
79 | evas_common_font_draw_finish(void) | 79 | evas_common_font_draw_finish(void) |
80 | { | 80 | { |
81 | } | 81 | } |
82 | #endif | 82 | #endif |
83 | 83 | ||
84 | /* | 84 | /* |
85 | * BiDi handling: We receive the shaped string + other props from text_props, | 85 | * BiDi handling: We receive the shaped string + other props from text_props, |
86 | * we need to reorder it so we'll have the visual string (the way we draw) | 86 | * we need to reorder it so we'll have the visual string (the way we draw) |
87 | * and then for kerning we have to switch the order of the kerning query (as the prev | 87 | * and then for kerning we have to switch the order of the kerning query (as the prev |
@@ -89,7 +89,7 @@ evas_common_font_draw_finish(void) | |||
89 | */ | 89 | */ |
90 | static void | 90 | static void |
91 | evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font *fn __UNUSED__, int x, int y, | 91 | evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font *fn __UNUSED__, int x, int y, |
92 | const Evas_Text_Props *text_props, RGBA_Gfx_Func func, int ext_x, int ext_y, int ext_w, | 92 | const Evas_Text_Props *text_props, RGBA_Gfx_Func func, int ext_x, int ext_y, int ext_w, |
93 | int ext_h, int im_w, int im_h __UNUSED__) | 93 | int ext_h, int im_w, int im_h __UNUSED__) |
94 | { | 94 | { |
95 | DATA32 *im; | 95 | DATA32 *im; |
@@ -136,7 +136,7 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font | |||
136 | { | 136 | { |
137 | xrun -= x + xrun - ext_x - ext_w; | 137 | xrun -= x + xrun - ext_x - ext_w; |
138 | } | 138 | } |
139 | if (x < ext_x) | 139 | if (x < ext_x) |
140 | { | 140 | { |
141 | int excess = ext_x - x; | 141 | int excess = ext_x - x; |
142 | xstart = excess - 1; | 142 | xstart = excess - 1; |
@@ -244,10 +244,29 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font | |||
244 | if (j < w) j = w; | 244 | if (j < w) j = w; |
245 | h = fg->glyph_out->bitmap.rows; | 245 | h = fg->glyph_out->bitmap.rows; |
246 | /* | 246 | /* |
247 | if ((fg->glyph_out->bitmap.pixel_mode == ft_pixel_mode_grays) | 247 | if ((fg->glyph_out->bitmap.pixel_mode == ft_pixel_mode_grays) |
248 | && (fg->glyph_out->bitmap.num_grays == 256) | 248 | && (fg->glyph_out->bitmap.num_grays == 256) |
249 | ) | 249 | ) |
250 | */ | 250 | */ |
251 | |||
252 | #ifdef HAVE_PIXMAN | ||
253 | # ifdef PIXMAN_FONT | ||
254 | int index; | ||
255 | DATA32 *font_alpha_buffer; | ||
256 | pixman_image_t *font_mask_image; | ||
257 | |||
258 | font_alpha_buffer = alloca(w * h * sizeof(DATA32)); | ||
259 | for (index = 0; index < (w * h); index++) | ||
260 | font_alpha_buffer[index] = data[index] << 24; | ||
261 | |||
262 | font_mask_image = pixman_image_create_bits(PIXMAN_a8r8g8b8, w, h, | ||
263 | font_alpha_buffer, | ||
264 | w * sizeof(DATA32)); | ||
265 | |||
266 | if (!font_mask_image) return; | ||
267 | # endif | ||
268 | #endif | ||
269 | |||
251 | { | 270 | { |
252 | if ((j > 0) && (chr_x + w > ext_x)) | 271 | if ((j > 0) && (chr_x + w > ext_x)) |
253 | { | 272 | { |
@@ -255,44 +274,63 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font | |||
255 | { | 274 | { |
256 | /* ext glyph draw */ | 275 | /* ext glyph draw */ |
257 | dc->font_ext.func.gl_draw(dc->font_ext.data, | 276 | dc->font_ext.func.gl_draw(dc->font_ext.data, |
258 | (void *)dst, | 277 | (void *)dst, |
259 | dc, fg, chr_x, | 278 | dc, fg, chr_x, |
260 | y - (chr_y - y)); | 279 | y - (chr_y - y)); |
261 | } | 280 | } |
262 | else | 281 | else |
263 | { | 282 | { |
264 | if ((fg->glyph_out->bitmap.num_grays == 256) && | 283 | if ((fg->glyph_out->bitmap.num_grays == 256) && |
265 | (fg->glyph_out->bitmap.pixel_mode == FT_PIXEL_MODE_GRAY)) | 284 | (fg->glyph_out->bitmap.pixel_mode == FT_PIXEL_MODE_GRAY)) |
266 | { | 285 | { |
267 | for (i = 0; i < h; i++) | 286 | #ifdef HAVE_PIXMAN |
287 | # ifdef PIXMAN_FONT | ||
288 | if ((dst->pixman.im) && | ||
289 | (dc->col.pixman_color_image)) | ||
290 | pixman_image_composite(PIXMAN_OP_OVER, | ||
291 | dc->col.pixman_color_image, | ||
292 | font_mask_image, | ||
293 | dst->pixman.im, | ||
294 | chr_x, | ||
295 | y - (chr_y - y), | ||
296 | 0, 0, | ||
297 | chr_x, | ||
298 | y - (chr_y - y), | ||
299 | w, h); | ||
300 | else | ||
301 | # endif | ||
302 | #endif | ||
268 | { | 303 | { |
269 | int dx, dy; | 304 | for (i = 0; i < h; i++) |
270 | int in_x, in_w; | 305 | { |
271 | 306 | int dx, dy; | |
272 | in_x = 0; | 307 | int in_x, in_w; |
273 | in_w = 0; | 308 | |
274 | dx = chr_x; | 309 | in_x = 0; |
275 | dy = y - (chr_y - i - y); | 310 | in_w = 0; |
311 | dx = chr_x; | ||
312 | dy = y - (chr_y - i - y); | ||
276 | #ifdef EVAS_SLI | 313 | #ifdef EVAS_SLI |
277 | if (((dy) % dc->sli.h) == dc->sli.y) | 314 | if (((dy) % dc->sli.h) == dc->sli.y) |
278 | #endif | 315 | #endif |
279 | { | ||
280 | if ((dx < (ext_x + ext_w)) && | ||
281 | (dy >= (ext_y)) && | ||
282 | (dy < (ext_y + ext_h))) | ||
283 | { | 316 | { |
284 | if (dx + w > (ext_x + ext_w)) | 317 | if ((dx < (ext_x + ext_w)) && |
285 | in_w += (dx + w) - (ext_x + ext_w); | 318 | (dy >= (ext_y)) && |
286 | if (dx < ext_x) | 319 | (dy < (ext_y + ext_h))) |
287 | { | 320 | { |
288 | in_w += ext_x - dx; | 321 | if (dx + w > (ext_x + ext_w)) |
289 | in_x = ext_x - dx; | 322 | in_w += (dx + w) - (ext_x + ext_w); |
290 | dx = ext_x; | 323 | if (dx < ext_x) |
291 | } | 324 | { |
292 | if (in_w < w) | 325 | in_w += ext_x - dx; |
293 | { | 326 | in_x = ext_x - dx; |
294 | func(NULL, data + (i * j) + in_x, dc->col.col, | 327 | dx = ext_x; |
295 | im + (dy * im_w) + dx, w - in_w); | 328 | } |
329 | if (in_w < w) | ||
330 | { | ||
331 | func(NULL, data + (i * j) + in_x, dc->col.col, | ||
332 | im + (dy * im_w) + dx, w - in_w); | ||
333 | } | ||
296 | } | 334 | } |
297 | } | 335 | } |
298 | } | 336 | } |
@@ -309,7 +347,7 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font | |||
309 | { | 347 | { |
310 | int dx, dy; | 348 | int dx, dy; |
311 | int in_x, in_w, end; | 349 | int in_x, in_w, end; |
312 | 350 | ||
313 | in_x = 0; | 351 | in_x = 0; |
314 | in_w = 0; | 352 | in_w = 0; |
315 | dx = chr_x; | 353 | dx = chr_x; |
@@ -333,8 +371,8 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font | |||
333 | dp++; | 371 | dp++; |
334 | } | 372 | } |
335 | if ((dx < (ext_x + ext_w)) && | 373 | if ((dx < (ext_x + ext_w)) && |
336 | (dy >= (ext_y)) && | 374 | (dy >= (ext_y)) && |
337 | (dy < (ext_y + ext_h))) | 375 | (dy < (ext_y + ext_h))) |
338 | { | 376 | { |
339 | if (dx + w > (ext_x + ext_w)) | 377 | if (dx + w > (ext_x + ext_w)) |
340 | in_w += (dx + w) - (ext_x + ext_w); | 378 | in_w += (dx + w) - (ext_x + ext_w); |
@@ -347,7 +385,7 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font | |||
347 | if (in_w < w) | 385 | if (in_w < w) |
348 | { | 386 | { |
349 | func(NULL, tmpbuf + in_x, dc->col.col, | 387 | func(NULL, tmpbuf + in_x, dc->col.col, |
350 | im + (dy * im_w) + dx, w - in_w); | 388 | im + (dy * im_w) + dx, w - in_w); |
351 | } | 389 | } |
352 | } | 390 | } |
353 | } | 391 | } |
@@ -356,6 +394,11 @@ evas_common_font_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Font | |||
356 | } | 394 | } |
357 | } | 395 | } |
358 | } | 396 | } |
397 | #ifdef HAVE_PIXMAN | ||
398 | # ifdef PIXMAN_FONT | ||
399 | pixman_image_unref(font_mask_image); | ||
400 | # endif | ||
401 | #endif | ||
359 | } | 402 | } |
360 | else | 403 | else |
361 | break; | 404 | break; |
@@ -573,7 +616,7 @@ evas_font_word_prerender(RGBA_Draw_Context *dc, const Evas_Text_Props *text_prop | |||
573 | } | 616 | } |
574 | } | 617 | } |
575 | } | 618 | } |
576 | else | 619 | else |
577 | { | 620 | { |
578 | im = NULL; | 621 | im = NULL; |
579 | } | 622 | } |
@@ -599,7 +642,7 @@ evas_font_word_prerender(RGBA_Draw_Context *dc, const Evas_Text_Props *text_prop | |||
599 | { | 642 | { |
600 | struct prword *last = (struct prword *)(words->last); | 643 | struct prword *last = (struct prword *)(words->last); |
601 | 644 | ||
602 | if (last) | 645 | if (last) |
603 | { | 646 | { |
604 | if (last->im) free(last->im); | 647 | if (last->im) free(last->im); |
605 | if (last->cinfo) free(last->cinfo); | 648 | if (last->cinfo) free(last->cinfo); |
diff --git a/libraries/evas/src/lib/engines/common/evas_font_main.c b/libraries/evas/src/lib/engines/common/evas_font_main.c index 64b1d5e..7b3dabe 100644 --- a/libraries/evas/src/lib/engines/common/evas_font_main.c +++ b/libraries/evas/src/lib/engines/common/evas_font_main.c | |||
@@ -39,8 +39,6 @@ evas_common_font_init(void) | |||
39 | EAPI void | 39 | EAPI void |
40 | evas_common_font_shutdown(void) | 40 | evas_common_font_shutdown(void) |
41 | { | 41 | { |
42 | int error; | ||
43 | |||
44 | if (initialised < 1) return; | 42 | if (initialised < 1) return; |
45 | initialised--; | 43 | initialised--; |
46 | if (initialised != 0) return; | 44 | if (initialised != 0) return; |
@@ -53,7 +51,7 @@ evas_common_font_shutdown(void) | |||
53 | evas_common_font_cache_set(0); | 51 | evas_common_font_cache_set(0); |
54 | evas_common_font_flush(); | 52 | evas_common_font_flush(); |
55 | 53 | ||
56 | error = FT_Done_FreeType(evas_ft_lib); | 54 | FT_Done_FreeType(evas_ft_lib); |
57 | #ifdef EVAS_FRAME_QUEUING | 55 | #ifdef EVAS_FRAME_QUEUING |
58 | evas_common_font_draw_finish(); | 56 | evas_common_font_draw_finish(); |
59 | #endif | 57 | #endif |
diff --git a/libraries/evas/src/lib/engines/common/evas_image_data.c b/libraries/evas/src/lib/engines/common/evas_image_data.c index 10b3988..2815ff8 100644 --- a/libraries/evas/src/lib/engines/common/evas_image_data.c +++ b/libraries/evas/src/lib/engines/common/evas_image_data.c | |||
@@ -1,3 +1,7 @@ | |||
1 | #ifdef HAVE_CONFIG_H | ||
2 | # include <config.h> | ||
3 | #endif | ||
4 | |||
1 | #include <assert.h> | 5 | #include <assert.h> |
2 | 6 | ||
3 | #include "evas_common.h" | 7 | #include "evas_common.h" |
diff --git a/libraries/evas/src/lib/engines/common/evas_image_load.c b/libraries/evas/src/lib/engines/common/evas_image_load.c index c7eff3f..21ac5d4 100644 --- a/libraries/evas/src/lib/engines/common/evas_image_load.c +++ b/libraries/evas/src/lib/engines/common/evas_image_load.c | |||
@@ -1,3 +1,7 @@ | |||
1 | #ifdef HAVE_CONFIG_H | ||
2 | # include <config.h> | ||
3 | #endif | ||
4 | |||
1 | #include <sys/types.h> | 5 | #include <sys/types.h> |
2 | #include <sys/stat.h> | 6 | #include <sys/stat.h> |
3 | #include <unistd.h> | 7 | #include <unistd.h> |
diff --git a/libraries/evas/src/lib/engines/common/evas_image_main.c b/libraries/evas/src/lib/engines/common/evas_image_main.c index d4d847c..d2f8c0b 100644 --- a/libraries/evas/src/lib/engines/common/evas_image_main.c +++ b/libraries/evas/src/lib/engines/common/evas_image_main.c | |||
@@ -145,7 +145,7 @@ _evas_common_rgba_image_new(void) | |||
145 | #endif | 145 | #endif |
146 | 146 | ||
147 | evas_common_rgba_image_scalecache_init(&im->cache_entry); | 147 | evas_common_rgba_image_scalecache_init(&im->cache_entry); |
148 | 148 | ||
149 | return &im->cache_entry; | 149 | return &im->cache_entry; |
150 | } | 150 | } |
151 | 151 | ||
@@ -161,7 +161,7 @@ _evas_common_rgba_image_delete(Image_Entry *ie) | |||
161 | LKD(im->cache_entry.ref_fq_del); | 161 | LKD(im->cache_entry.ref_fq_del); |
162 | eina_condition_free(&(im->cache_entry.cond_fq_del)); | 162 | eina_condition_free(&(im->cache_entry.cond_fq_del)); |
163 | # endif | 163 | # endif |
164 | #endif | 164 | #endif |
165 | evas_common_rgba_image_scalecache_shutdown(&im->cache_entry); | 165 | evas_common_rgba_image_scalecache_shutdown(&im->cache_entry); |
166 | if (ie->info.module) evas_module_unref((Evas_Module *)ie->info.module); | 166 | if (ie->info.module) evas_module_unref((Evas_Module *)ie->info.module); |
167 | /* memset the image to 0x99 because i recently saw a segv where an | 167 | /* memset the image to 0x99 because i recently saw a segv where an |
@@ -173,13 +173,13 @@ _evas_common_rgba_image_delete(Image_Entry *ie) | |||
173 | // memset(im, 0x99, sizeof(im)); | 173 | // memset(im, 0x99, sizeof(im)); |
174 | #ifdef EVAS_CSERVE | 174 | #ifdef EVAS_CSERVE |
175 | if (ie->data1) evas_cserve_image_free(ie); | 175 | if (ie->data1) evas_cserve_image_free(ie); |
176 | #endif | 176 | #endif |
177 | /* | 177 | /* |
178 | * FIXME: This doesn't seem to be needed... But I'm not sure why. | 178 | * FIXME: This doesn't seem to be needed... But I'm not sure why. |
179 | * -- nash | 179 | * -- nash |
180 | { | 180 | { |
181 | Filtered_Image *fi; | 181 | Filtered_Image *fi; |
182 | 182 | ||
183 | EINA_LIST_FREE(im->filtered, fi) | 183 | EINA_LIST_FREE(im->filtered, fi) |
184 | { | 184 | { |
185 | free(fi->key); | 185 | free(fi->key); |
@@ -249,8 +249,8 @@ evas_common_rgba_image_unload(Image_Entry *ie) | |||
249 | #endif | 249 | #endif |
250 | return; | 250 | return; |
251 | } | 251 | } |
252 | #endif | 252 | #endif |
253 | 253 | ||
254 | if (im->image.data && !im->image.no_free) | 254 | if (im->image.data && !im->image.no_free) |
255 | free(im->image.data); | 255 | free(im->image.data); |
256 | im->image.data = NULL; | 256 | im->image.data = NULL; |
@@ -266,18 +266,19 @@ void | |||
266 | _evas_common_rgba_image_post_surface(Image_Entry *ie) | 266 | _evas_common_rgba_image_post_surface(Image_Entry *ie) |
267 | { | 267 | { |
268 | #ifdef HAVE_PIXMAN | 268 | #ifdef HAVE_PIXMAN |
269 | RGBA_Image *im = (RGBA_Image *) ie; | 269 | # ifdef PIXMAN_IMAGE |
270 | 270 | RGBA_Image *im = (RGBA_Image *)ie; | |
271 | |||
271 | if (im->pixman.im) pixman_image_unref(im->pixman.im); | 272 | if (im->pixman.im) pixman_image_unref(im->pixman.im); |
272 | if (im->cache_entry.flags.alpha) | 273 | if (im->cache_entry.flags.alpha) |
273 | { | 274 | { |
274 | im->pixman.im = pixman_image_create_bits | 275 | im->pixman.im = pixman_image_create_bits |
275 | ( | 276 | ( |
276 | // FIXME: endianess determines this | 277 | // FIXME: endianess determines this |
277 | PIXMAN_a8r8g8b8, | 278 | PIXMAN_a8r8g8b8, |
278 | // PIXMAN_b8g8r8a8, | 279 | // PIXMAN_b8g8r8a8, |
279 | im->cache_entry.w, im->cache_entry.h, | 280 | im->cache_entry.w, im->cache_entry.h, |
280 | im->image.data, | 281 | im->image.data, |
281 | im->cache_entry.w * 4 | 282 | im->cache_entry.w * 4 |
282 | ); | 283 | ); |
283 | } | 284 | } |
@@ -285,16 +286,19 @@ _evas_common_rgba_image_post_surface(Image_Entry *ie) | |||
285 | { | 286 | { |
286 | im->pixman.im = pixman_image_create_bits | 287 | im->pixman.im = pixman_image_create_bits |
287 | ( | 288 | ( |
288 | // FIXME: endianess determines this | 289 | // FIXME: endianess determines this |
289 | PIXMAN_x8r8g8b8, | 290 | PIXMAN_x8r8g8b8, |
290 | // PIXMAN_b8g8r8x8, | 291 | // PIXMAN_b8g8r8x8, |
291 | im->cache_entry.w, im->cache_entry.h, | 292 | im->cache_entry.w, im->cache_entry.h, |
292 | im->image.data, | 293 | im->image.data, |
293 | im->cache_entry.w * 4 | 294 | im->cache_entry.w * 4 |
294 | ); | 295 | ); |
295 | } | 296 | } |
297 | # else | ||
298 | (void)ie; | ||
299 | # endif | ||
296 | #else | 300 | #else |
297 | ie = NULL; | 301 | (void)ie; |
298 | #endif | 302 | #endif |
299 | } | 303 | } |
300 | 304 | ||
@@ -306,7 +310,7 @@ _evas_common_rgba_image_surface_alloc(Image_Entry *ie, unsigned int w, unsigned | |||
306 | 310 | ||
307 | #ifdef EVAS_CSERVE | 311 | #ifdef EVAS_CSERVE |
308 | if (ie->data1) return 0; | 312 | if (ie->data1) return 0; |
309 | #endif | 313 | #endif |
310 | if (im->image.no_free) return 0; | 314 | if (im->image.no_free) return 0; |
311 | 315 | ||
312 | if (im->flags & RGBA_IMAGE_ALPHA_ONLY) | 316 | if (im->flags & RGBA_IMAGE_ALPHA_ONLY) |
@@ -328,7 +332,7 @@ _evas_common_rgba_image_surface_alloc(Image_Entry *ie, unsigned int w, unsigned | |||
328 | # endif | 332 | # endif |
329 | #endif | 333 | #endif |
330 | _evas_common_rgba_image_post_surface(ie); | 334 | _evas_common_rgba_image_post_surface(ie); |
331 | 335 | ||
332 | return 0; | 336 | return 0; |
333 | } | 337 | } |
334 | 338 | ||
@@ -338,12 +342,14 @@ _evas_common_rgba_image_surface_delete(Image_Entry *ie) | |||
338 | RGBA_Image *im = (RGBA_Image *) ie; | 342 | RGBA_Image *im = (RGBA_Image *) ie; |
339 | 343 | ||
340 | #ifdef HAVE_PIXMAN | 344 | #ifdef HAVE_PIXMAN |
345 | # ifdef PIXMAN_IMAGE | ||
341 | if (im->pixman.im) | 346 | if (im->pixman.im) |
342 | { | 347 | { |
343 | pixman_image_unref(im->pixman.im); | 348 | pixman_image_unref(im->pixman.im); |
344 | im->pixman.im = NULL; | 349 | im->pixman.im = NULL; |
345 | } | 350 | } |
346 | #endif | 351 | # endif |
352 | #endif | ||
347 | if (ie->file) | 353 | if (ie->file) |
348 | DBG("unload: [%p] %s %s", ie, ie->file, ie->key); | 354 | DBG("unload: [%p] %s %s", ie, ie->file, ie->key); |
349 | if ((im->cs.data) && (im->image.data)) | 355 | if ((im->cs.data) && (im->image.data)) |
@@ -364,7 +370,7 @@ _evas_common_rgba_image_surface_delete(Image_Entry *ie) | |||
364 | #ifdef EVAS_CSERVE | 370 | #ifdef EVAS_CSERVE |
365 | else if (ie->data1) | 371 | else if (ie->data1) |
366 | evas_cserve_image_free(ie); | 372 | evas_cserve_image_free(ie); |
367 | #endif | 373 | #endif |
368 | 374 | ||
369 | im->image.data = NULL; | 375 | im->image.data = NULL; |
370 | ie->allocated.w = 0; | 376 | ie->allocated.w = 0; |
@@ -391,7 +397,7 @@ _evas_common_rgba_image_dirty_region(Image_Entry* ie, unsigned int x __UNUSED__, | |||
391 | 397 | ||
392 | #ifdef EVAS_CSERVE | 398 | #ifdef EVAS_CSERVE |
393 | if (ie->data1) evas_cserve_image_free(ie); | 399 | if (ie->data1) evas_cserve_image_free(ie); |
394 | #endif | 400 | #endif |
395 | im->flags |= RGBA_IMAGE_IS_DIRTY; | 401 | im->flags |= RGBA_IMAGE_IS_DIRTY; |
396 | evas_common_rgba_image_scalecache_dirty(&im->cache_entry); | 402 | evas_common_rgba_image_scalecache_dirty(&im->cache_entry); |
397 | } | 403 | } |
@@ -411,13 +417,13 @@ _evas_common_rgba_image_dirty(Image_Entry *ie_dst, const Image_Entry *ie_src) | |||
411 | { | 417 | { |
412 | #ifdef EVAS_CSERVE | 418 | #ifdef EVAS_CSERVE |
413 | if (ie_src->data1) evas_cserve_image_free((Image_Entry*) ie_src); | 419 | if (ie_src->data1) evas_cserve_image_free((Image_Entry*) ie_src); |
414 | #endif | 420 | #endif |
415 | return 1; | 421 | return 1; |
416 | } | 422 | } |
417 | 423 | ||
418 | #ifdef EVAS_CSERVE | 424 | #ifdef EVAS_CSERVE |
419 | if (ie_src->data1) evas_cserve_image_free((Image_Entry*) ie_src); | 425 | if (ie_src->data1) evas_cserve_image_free((Image_Entry*) ie_src); |
420 | #endif | 426 | #endif |
421 | evas_common_image_colorspace_normalize(src); | 427 | evas_common_image_colorspace_normalize(src); |
422 | evas_common_image_colorspace_normalize(dst); | 428 | evas_common_image_colorspace_normalize(dst); |
423 | /* evas_common_blit_rectangle(src, dst, 0, 0, src->cache_entry.w, src->cache_entry.h, 0, 0); */ | 429 | /* evas_common_blit_rectangle(src, dst, 0, 0, src->cache_entry.w, src->cache_entry.h, 0, 0); */ |
@@ -431,18 +437,18 @@ _evas_common_rgba_image_ram_usage(Image_Entry *ie) | |||
431 | { | 437 | { |
432 | RGBA_Image *im = (RGBA_Image *)ie; | 438 | RGBA_Image *im = (RGBA_Image *)ie; |
433 | int size = sizeof(struct _RGBA_Image); | 439 | int size = sizeof(struct _RGBA_Image); |
434 | 440 | ||
435 | if (ie->cache_key) size += strlen(ie->cache_key); | 441 | if (ie->cache_key) size += strlen(ie->cache_key); |
436 | if (ie->file) size += strlen(ie->file); | 442 | if (ie->file) size += strlen(ie->file); |
437 | if (ie->key) size += strlen(ie->key); | 443 | if (ie->key) size += strlen(ie->key); |
438 | 444 | ||
439 | if (im->image.data) | 445 | if (im->image.data) |
440 | { | 446 | { |
441 | #ifdef EVAS_CSERVE | 447 | #ifdef EVAS_CSERVE |
442 | if ((!im->image.no_free) || (ie->data1)) | 448 | if ((!im->image.no_free) || (ie->data1)) |
443 | #else | 449 | #else |
444 | if ((!im->image.no_free)) | 450 | if ((!im->image.no_free)) |
445 | #endif | 451 | #endif |
446 | size += im->cache_entry.w * im->cache_entry.h * sizeof(DATA32); | 452 | size += im->cache_entry.w * im->cache_entry.h * sizeof(DATA32); |
447 | } | 453 | } |
448 | size += evas_common_rgba_image_scalecache_usage_get(&im->cache_entry); | 454 | size += evas_common_rgba_image_scalecache_usage_get(&im->cache_entry); |
@@ -590,7 +596,7 @@ evas_common_image_colorspace_normalize(RGBA_Image *im) | |||
590 | { | 596 | { |
591 | #ifdef EVAS_CSERVE | 597 | #ifdef EVAS_CSERVE |
592 | if (((Image_Entry *)im)->data1) evas_cserve_image_free(&im->cache_entry); | 598 | if (((Image_Entry *)im)->data1) evas_cserve_image_free(&im->cache_entry); |
593 | #endif | 599 | #endif |
594 | if (!im->image.no_free) free(im->image.data); | 600 | if (!im->image.no_free) free(im->image.data); |
595 | im->image.data = im->cs.data; | 601 | im->image.data = im->cs.data; |
596 | im->cs.no_free = im->image.no_free; | 602 | im->cs.no_free = im->image.no_free; |
diff --git a/libraries/evas/src/lib/engines/common/evas_image_scalecache.c b/libraries/evas/src/lib/engines/common/evas_image_scalecache.c index 24a4f2d..e4e4790 100644 --- a/libraries/evas/src/lib/engines/common/evas_image_scalecache.c +++ b/libraries/evas/src/lib/engines/common/evas_image_scalecache.c | |||
@@ -48,9 +48,7 @@ struct _Scaleitem | |||
48 | #ifdef SCALECACHE | 48 | #ifdef SCALECACHE |
49 | static unsigned long long use_counter = 0; | 49 | static unsigned long long use_counter = 0; |
50 | 50 | ||
51 | #ifdef BUILD_PTHREAD | ||
52 | static LK(cache_lock); | 51 | static LK(cache_lock); |
53 | #endif | ||
54 | static Eina_Inlist *cache_list = NULL; | 52 | static Eina_Inlist *cache_list = NULL; |
55 | static unsigned int cache_size = 0; | 53 | static unsigned int cache_size = 0; |
56 | static int init = 0; | 54 | static int init = 0; |
diff --git a/libraries/evas/src/lib/engines/common/evas_line_main.c b/libraries/evas/src/lib/engines/common/evas_line_main.c index 04401cb..aacf805 100644 --- a/libraries/evas/src/lib/engines/common/evas_line_main.c +++ b/libraries/evas/src/lib/engines/common/evas_line_main.c | |||
@@ -109,9 +109,24 @@ _evas_draw_point(RGBA_Image *dst, RGBA_Draw_Context *dc, int x, int y) | |||
109 | return; | 109 | return; |
110 | if ((dc->clip.use) && (!IN_RECT(x, y, dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h))) | 110 | if ((dc->clip.use) && (!IN_RECT(x, y, dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h))) |
111 | return; | 111 | return; |
112 | pfunc = evas_common_gfx_func_composite_color_pt_get(dc->col.col, dst, dc->render_op); | 112 | #ifdef HAVE_PIXMAN |
113 | if (pfunc) | 113 | # ifdef PIXMAN_LINE |
114 | pfunc(0, 255, dc->col.col, dst->image.data + (dst->cache_entry.w * y) + x); | 114 | pixman_op_t op = PIXMAN_OP_SRC; |
115 | |||
116 | if (dc->render_op == _EVAS_RENDER_BLEND) | ||
117 | op = PIXMAN_OP_OVER; | ||
118 | |||
119 | if ((dst->pixman.im) && (dc->col.pixman_color_image)) | ||
120 | pixman_image_composite(op, dc->col.pixman_color_image, NULL, | ||
121 | dst->pixman.im, x, y, 0, 0, x, y, 1, 1); | ||
122 | else | ||
123 | # endif | ||
124 | #endif | ||
125 | { | ||
126 | pfunc = evas_common_gfx_func_composite_color_pt_get(dc->col.col, dst, dc->render_op); | ||
127 | if (pfunc) | ||
128 | pfunc(0, 255, dc->col.col, dst->image.data + (dst->cache_entry.w * y) + x); | ||
129 | } | ||
115 | } | 130 | } |
116 | 131 | ||
117 | /* | 132 | /* |
@@ -130,6 +145,14 @@ _evas_draw_simple_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, i | |||
130 | RGBA_Gfx_Pt_Func pfunc; | 145 | RGBA_Gfx_Pt_Func pfunc; |
131 | RGBA_Gfx_Func sfunc; | 146 | RGBA_Gfx_Func sfunc; |
132 | 147 | ||
148 | #ifdef HAVE_PIXMAN | ||
149 | # ifdef PIXMAN_LINE | ||
150 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY | ||
151 | if (dc->render_op == _EVAS_RENDER_BLEND) | ||
152 | op = PIXMAN_OP_OVER; | ||
153 | # endif | ||
154 | #endif | ||
155 | |||
133 | dstw = dst->cache_entry.w; | 156 | dstw = dst->cache_entry.w; |
134 | color = dc->col.col; | 157 | color = dc->col.col; |
135 | 158 | ||
@@ -172,12 +195,30 @@ _evas_draw_simple_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, i | |||
172 | 195 | ||
173 | len = x1 - x0 + 1; | 196 | len = x1 - x0 + 1; |
174 | p = dst->image.data + (dstw * y0) + x0; | 197 | p = dst->image.data + (dstw * y0) + x0; |
175 | sfunc = evas_common_gfx_func_composite_color_span_get(color, dst, len, dc->render_op); | 198 | #ifdef HAVE_PIXMAN |
176 | if (sfunc) | 199 | # ifdef PIXMAN_LINE |
177 | sfunc(NULL, NULL, color, p, len); | 200 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && |
178 | } | 201 | (!dc->mask.mask)) |
179 | } | 202 | pixman_image_composite(op, dc->col.pixman_color_image, |
180 | return; | 203 | NULL, dst->pixman.im, |
204 | x0, y0, 0, 0, x0, y0, len, 1); | ||
205 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
206 | (dc->mask.mask)) | ||
207 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
208 | dc->mask.mask->pixman.im, | ||
209 | dst->pixman.im, | ||
210 | x0, y0, 0, 0, x0, y0, len, 1); | ||
211 | else | ||
212 | # endif | ||
213 | #endif | ||
214 | { | ||
215 | sfunc = evas_common_gfx_func_composite_color_span_get(color, dst, len, dc->render_op); | ||
216 | if (sfunc) | ||
217 | sfunc(NULL, NULL, color, p, len); | ||
218 | } | ||
219 | } | ||
220 | } | ||
221 | return; | ||
181 | } | 222 | } |
182 | 223 | ||
183 | pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst, dc->render_op); | 224 | pfunc = evas_common_gfx_func_composite_color_pt_get(color, dst, dc->render_op); |
@@ -192,17 +233,34 @@ _evas_draw_simple_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, i | |||
192 | 233 | ||
193 | len = y1 - y0 + 1; | 234 | len = y1 - y0 + 1; |
194 | p = dst->image.data + (dstw * y0) + x0; | 235 | p = dst->image.data + (dstw * y0) + x0; |
195 | while (len--) | 236 | #ifdef HAVE_PIXMAN |
196 | { | 237 | # ifdef PIXMAN_LINE |
238 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
239 | (!dc->mask.mask)) | ||
240 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
241 | NULL, dst->pixman.im, | ||
242 | x0, y0, 0, 0, x0, y0, 1, len); | ||
243 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
244 | (dc->mask.mask)) | ||
245 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
246 | dc->mask.mask->pixman.im, dst->pixman.im, | ||
247 | x0, y0, 0, 0, x0, y0, 1, len); | ||
248 | else | ||
249 | # endif | ||
250 | #endif | ||
251 | { | ||
252 | while (len--) | ||
253 | { | ||
197 | #ifdef EVAS_SLI | 254 | #ifdef EVAS_SLI |
198 | if (((y1 + 1 - len) % dc->sli.h) == dc->sli.y) | 255 | if (((y1 + 1 - len) % dc->sli.h) == dc->sli.y) |
199 | #endif | 256 | #endif |
200 | { | 257 | { |
201 | pfunc(0, 255, color, p); | 258 | pfunc(0, 255, color, p); |
202 | } | 259 | } |
203 | p += dstw; | 260 | p += dstw; |
204 | } | 261 | } |
205 | } | 262 | } |
263 | } | ||
206 | return; | 264 | return; |
207 | } | 265 | } |
208 | 266 | ||
@@ -281,16 +339,52 @@ _evas_draw_simple_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, i | |||
281 | if (dx > 0) dstw--; | 339 | if (dx > 0) dstw--; |
282 | else dstw++; | 340 | else dstw++; |
283 | } | 341 | } |
284 | 342 | #ifdef HAVE_PIXMAN | |
343 | # ifdef PIXMAN_LINE | ||
344 | int pixman_x_position = x0; | ||
345 | int pixman_y_position = y0; | ||
346 | int x_unit = dstw - dst->cache_entry.w; | ||
347 | # endif | ||
348 | #endif | ||
349 | |||
350 | |||
285 | while (len--) | 351 | while (len--) |
286 | { | 352 | { |
287 | #ifdef EVAS_SLI | 353 | #ifdef EVAS_SLI |
288 | if (((y1 + 1 - len) % dc->sli.h) == dc->sli.y) | 354 | if (((y1 + 1 - len) % dc->sli.h) == dc->sli.y) |
289 | #endif | 355 | #endif |
290 | { | 356 | { |
291 | pfunc(0, 255, color, p); | 357 | #ifdef HAVE_PIXMAN |
292 | } | 358 | # ifdef PIXMAN_LINE |
293 | p += dstw; | 359 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && |
360 | (!dc->mask.mask)) | ||
361 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
362 | NULL, dst->pixman.im, | ||
363 | pixman_x_position, | ||
364 | pixman_y_position, | ||
365 | 0, 0, pixman_x_position, | ||
366 | pixman_y_position, 1, 1); | ||
367 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
368 | (dc->mask.mask)) | ||
369 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
370 | dc->mask.mask->pixman.im, | ||
371 | dst->pixman.im, | ||
372 | pixman_x_position, | ||
373 | pixman_y_position, 0, 0, | ||
374 | pixman_x_position, | ||
375 | pixman_y_position, 1, 1); | ||
376 | else | ||
377 | # endif | ||
378 | #endif | ||
379 | pfunc(0, 255, color, p); | ||
380 | } | ||
381 | #ifdef HAVE_PIXMAN | ||
382 | # ifdef PIXMAN_LINE | ||
383 | pixman_x_position += x_unit; | ||
384 | pixman_y_position += 1; | ||
385 | # endif | ||
386 | #endif | ||
387 | p += dstw; | ||
294 | } | 388 | } |
295 | } | 389 | } |
296 | } | 390 | } |
@@ -456,6 +550,31 @@ _evas_draw_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x1, | |||
456 | dx = x1 - x0; | 550 | dx = x1 - x0; |
457 | dy = y1 - y0; | 551 | dy = y1 - y0; |
458 | 552 | ||
553 | #ifdef HAVE_PIXMAN | ||
554 | # ifdef PIXMAN_LINE | ||
555 | int pix_x; | ||
556 | int pix_y; | ||
557 | int pix_x_unit; | ||
558 | int pix_y_unit; | ||
559 | |||
560 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY | ||
561 | if (dc->render_op == _EVAS_RENDER_BLEND) | ||
562 | op = PIXMAN_OP_OVER; | ||
563 | pix_x = x0; | ||
564 | pix_y = y0; | ||
565 | |||
566 | if (dx < 0) | ||
567 | pix_x_unit = -1; | ||
568 | else | ||
569 | pix_x_unit = 1; | ||
570 | |||
571 | if (dy < 0) | ||
572 | pix_y_unit = -1; | ||
573 | else | ||
574 | pix_y_unit = 1; | ||
575 | # endif | ||
576 | #endif | ||
577 | |||
459 | if ( (dx == 0) || (dy == 0) || (dx == dy) || (dx == -dy) ) | 578 | if ( (dx == 0) || (dy == 0) || (dx == dy) || (dx == -dy) ) |
460 | { | 579 | { |
461 | _evas_draw_simple_line(dst, dc, x0, y0, x1, y1); | 580 | _evas_draw_simple_line(dst, dc, x0, y0, x1, y1); |
@@ -494,6 +613,11 @@ _evas_draw_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x1, | |||
494 | prev_y = y; | 613 | prev_y = y; |
495 | p += dh; | 614 | p += dh; |
496 | py += dely; | 615 | py += dely; |
616 | #ifdef HAVE_PIXMAN | ||
617 | # ifdef PIXMAN_LINE | ||
618 | pix_y += pix_y_unit; | ||
619 | # endif | ||
620 | #endif | ||
497 | } | 621 | } |
498 | if (!p1_in) | 622 | if (!p1_in) |
499 | { | 623 | { |
@@ -509,12 +633,37 @@ _evas_draw_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x1, | |||
509 | #endif | 633 | #endif |
510 | { | 634 | { |
511 | if (IN_RANGE(px, py, clw, clh)) | 635 | if (IN_RANGE(px, py, clw, clh)) |
512 | pfunc(0, 255, color, p); | 636 | { |
513 | } | 637 | #ifdef HAVE_PIXMAN |
514 | next_x: | 638 | # ifdef PIXMAN_LINE |
515 | yy += dyy; | 639 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && |
516 | px++; | 640 | (!dc->mask.mask)) |
517 | p++; | 641 | pixman_image_composite(op, dc->col.pixman_color_image, |
642 | NULL, dst->pixman.im, | ||
643 | pix_x, pix_y, 0, 0, | ||
644 | pix_x, pix_y, 1, 1); | ||
645 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
646 | (dc->mask.mask)) | ||
647 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
648 | dc->mask.mask->pixman.im, | ||
649 | dst->pixman.im, | ||
650 | pix_x, pix_y, 0, 0, | ||
651 | pix_x, pix_y, 1, 1); | ||
652 | else | ||
653 | # endif | ||
654 | #endif | ||
655 | pfunc(0, 255, color, p); | ||
656 | } | ||
657 | } | ||
658 | next_x: | ||
659 | yy += dyy; | ||
660 | px++; | ||
661 | p++; | ||
662 | #ifdef HAVE_PIXMAN | ||
663 | # ifdef PIXMAN_LINE | ||
664 | pix_x += pix_x_unit; | ||
665 | # endif | ||
666 | #endif | ||
518 | } | 667 | } |
519 | return; | 668 | return; |
520 | } | 669 | } |
@@ -529,9 +678,14 @@ _evas_draw_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x1, | |||
529 | x += ((xx - (x << 16)) >> 15); | 678 | x += ((xx - (x << 16)) >> 15); |
530 | if (prev_x != x) | 679 | if (prev_x != x) |
531 | { | 680 | { |
532 | prev_x = x; | 681 | prev_x = x; |
533 | px += delx; | 682 | px += delx; |
534 | p += delx; | 683 | p += delx; |
684 | #ifdef HAVE_PIXMAN | ||
685 | # ifdef PIXMAN_LINE | ||
686 | pix_x += pix_x_unit; | ||
687 | # endif | ||
688 | #endif | ||
535 | } | 689 | } |
536 | if (!p1_in) | 690 | if (!p1_in) |
537 | { | 691 | { |
@@ -547,12 +701,38 @@ _evas_draw_line(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x1, | |||
547 | #endif | 701 | #endif |
548 | { | 702 | { |
549 | if (IN_RANGE(px, py, clw, clh)) | 703 | if (IN_RANGE(px, py, clw, clh)) |
550 | pfunc(0, 255, color, p); | 704 | { |
551 | } | 705 | #ifdef HAVE_PIXMAN |
552 | next_y: | 706 | # ifdef PIXMAN_LINE |
707 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
708 | (!dc->mask.mask)) | ||
709 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
710 | NULL, dst->pixman.im, | ||
711 | pix_x, pix_y, 0, 0, | ||
712 | pix_x, pix_y, 1, 1); | ||
713 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
714 | (dc->mask.mask)) | ||
715 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
716 | dc->mask.mask->pixman.im, | ||
717 | dst->pixman.im, | ||
718 | pix_x, pix_y, 0, 0, | ||
719 | pix_x, pix_y, 1, 1); | ||
720 | else | ||
721 | # endif | ||
722 | #endif | ||
723 | pfunc(0, 255, color, p); | ||
724 | } | ||
725 | } | ||
726 | next_y: | ||
553 | xx += dxx; | 727 | xx += dxx; |
554 | py++; | 728 | py++; |
555 | p += dstw; | 729 | p += dstw; |
730 | #ifdef HAVE_PIXMAN | ||
731 | # ifdef PIXMAN_LINE | ||
732 | pix_y += pix_y_unit; | ||
733 | # endif | ||
734 | #endif | ||
735 | |||
556 | } | 736 | } |
557 | } | 737 | } |
558 | 738 | ||
@@ -568,12 +748,43 @@ _evas_draw_line_aa(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x | |||
568 | DATA32 *p, *data, color; | 748 | DATA32 *p, *data, color; |
569 | RGBA_Gfx_Pt_Func pfunc; | 749 | RGBA_Gfx_Pt_Func pfunc; |
570 | 750 | ||
751 | dx = x1 - x0; | ||
752 | dy = y1 - y0; | ||
753 | |||
754 | #ifdef HAVE_PIXMAN | ||
755 | # ifdef PIXMAN_LINE | ||
756 | int pix_x; | ||
757 | int pix_y; | ||
758 | int pix_x_unit; | ||
759 | int pix_y_unit; | ||
760 | |||
761 | pixman_image_t *aa_mask_image; | ||
762 | int alpha_data_buffer; | ||
763 | |||
764 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY | ||
765 | if (dc->render_op == _EVAS_RENDER_BLEND) | ||
766 | op = PIXMAN_OP_OVER; | ||
767 | pix_x = x0; | ||
768 | pix_y = y0; | ||
769 | |||
770 | if (dx < 0) | ||
771 | pix_x_unit = -1; | ||
772 | else | ||
773 | pix_x_unit = 1; | ||
774 | |||
775 | if (dy < 0) | ||
776 | pix_y_unit = -1; | ||
777 | else | ||
778 | pix_y_unit = 1; | ||
779 | # endif | ||
780 | #endif | ||
571 | if (y0 > y1) | 781 | if (y0 > y1) |
572 | EXCHANGE_POINTS(x0, y0, x1, y1); | 782 | EXCHANGE_POINTS(x0, y0, x1, y1); |
783 | |||
573 | dx = x1 - x0; | 784 | dx = x1 - x0; |
574 | dy = y1 - y0; | 785 | dy = y1 - y0; |
575 | 786 | ||
576 | if ( (dx == 0) || (dy == 0) || (dx == dy) || (dx == -dy) ) | 787 | if ((dx == 0) || (dy == 0) || (dx == dy) || (dx == -dy)) |
577 | { | 788 | { |
578 | _evas_draw_simple_line(dst, dc, x0, y0, x1, y1); | 789 | _evas_draw_simple_line(dst, dc, x0, y0, x1, y1); |
579 | return; | 790 | return; |
@@ -609,9 +820,14 @@ _evas_draw_line_aa(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x | |||
609 | y = (yy >> 16); | 820 | y = (yy >> 16); |
610 | if (prev_y != y) | 821 | if (prev_y != y) |
611 | { | 822 | { |
612 | prev_y = y; | 823 | prev_y = y; |
613 | p += dh; | 824 | p += dh; |
614 | py += dely; | 825 | py += dely; |
826 | #ifdef HAVE_PIXMAN | ||
827 | # ifdef PIXMAN_LINE | ||
828 | pix_y += pix_y_unit; | ||
829 | # endif | ||
830 | #endif | ||
615 | } | 831 | } |
616 | if (!p1_in) | 832 | if (!p1_in) |
617 | { | 833 | { |
@@ -624,39 +840,109 @@ _evas_draw_line_aa(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x | |||
624 | } | 840 | } |
625 | if (px < clw) | 841 | if (px < clw) |
626 | { | 842 | { |
627 | aa = ((yy - (y << 16)) >> 8); | 843 | aa = ((yy - (y << 16)) >> 8); |
628 | if ((py) < clh) | 844 | if ((py) < clh) |
629 | pfunc(0, 255 - aa, color, p); | 845 | { |
630 | if ((py + 1) < clh) | 846 | #ifdef HAVE_PIXMAN |
631 | pfunc(0, aa, color, p + dstw); | 847 | # ifdef PIXMAN_LINE |
632 | } | 848 | alpha_data_buffer = 255 - aa; |
633 | 849 | aa_mask_image = pixman_image_create_bits(PIXMAN_a8, 1, 1, | |
634 | next_x: | 850 | (uint32_t *)&alpha_data_buffer, 4); |
635 | yy += dyy; | 851 | |
636 | px++; | 852 | if ((dst->pixman.im) && (dc->col.pixman_color_image ) && |
637 | p++; | 853 | (!dc->mask.mask)) |
854 | pixman_image_composite(PIXMAN_OP_OVER, | ||
855 | dc->col.pixman_color_image, | ||
856 | aa_mask_image, dst->pixman.im, | ||
857 | pix_x, pix_y, 0, 0, | ||
858 | pix_x, pix_y, 1, 1); | ||
859 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
860 | (dc->mask.mask) ) | ||
861 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
862 | dc->mask.mask->pixman.im, | ||
863 | dst->pixman.im, | ||
864 | pix_x, pix_y, 0, 0, | ||
865 | pix_x, pix_y, 1, 1); | ||
866 | else | ||
867 | # endif | ||
868 | #endif | ||
869 | pfunc(0, 255 - aa, color, p); | ||
870 | #ifdef HAVE_PIXMAN | ||
871 | # ifdef PIXMAN_LINE | ||
872 | pixman_image_unref(aa_mask_image); | ||
873 | # endif | ||
874 | #endif | ||
875 | } | ||
876 | if ((py + 1) < clh) | ||
877 | { | ||
878 | #ifdef HAVE_PIXMAN | ||
879 | # ifdef PIXMAN_LINE | ||
880 | alpha_data_buffer = aa; | ||
881 | aa_mask_image = pixman_image_create_bits(PIXMAN_a8, 1, 1, | ||
882 | (uint32_t *)&alpha_data_buffer, 4); | ||
883 | |||
884 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
885 | (!dc->mask.mask)) | ||
886 | pixman_image_composite(PIXMAN_OP_OVER, | ||
887 | dc->col.pixman_color_image, | ||
888 | aa_mask_image, dst->pixman.im, | ||
889 | pix_x, pix_y + 1, 0, 0, | ||
890 | pix_x, pix_y + 1, 1, 1); | ||
891 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
892 | (dc->mask.mask)) | ||
893 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
894 | dc->mask.mask->pixman.im, | ||
895 | dst->pixman.im, | ||
896 | pix_x, pix_y + 1, 0, 0, | ||
897 | pix_x, pix_y + 1, 1, 1); | ||
898 | else | ||
899 | # endif | ||
900 | #endif | ||
901 | pfunc(0, aa, color, p + dstw); | ||
902 | #ifdef HAVE_PIXMAN | ||
903 | # ifdef PIXMAN_LINE | ||
904 | pixman_image_unref(aa_mask_image); | ||
905 | # endif | ||
906 | #endif | ||
907 | } | ||
908 | } | ||
909 | |||
910 | next_x: | ||
911 | yy += dyy; | ||
912 | px++; | ||
913 | p++; | ||
914 | #ifdef HAVE_PIXMAN | ||
915 | # ifdef PIXMAN_LINE | ||
916 | pix_x += pix_x_unit; | ||
917 | # endif | ||
918 | #endif | ||
638 | } | 919 | } |
639 | return; | 920 | return; |
640 | } | 921 | } |
641 | 922 | ||
642 | /* steep: y-parametric */ | 923 | /* steep: y-parametric */ |
643 | SETUP_LINE_STEEP; | 924 | SETUP_LINE_STEEP; |
644 | 925 | ||
645 | while (py < by) | 926 | while (py < by) |
646 | { | 927 | { |
647 | DATA8 aa; | 928 | DATA8 aa; |
648 | 929 | ||
649 | x = (xx >> 16); | 930 | x = (xx >> 16); |
650 | if (prev_x != x) | 931 | if (prev_x != x) |
651 | { | 932 | { |
652 | prev_x = x; | 933 | prev_x = x; |
653 | px += delx; | 934 | px += delx; |
654 | p += delx; | 935 | p += delx; |
936 | #ifdef HAVE_PIXMAN | ||
937 | # ifdef PIXMAN_LINE | ||
938 | pix_x += pix_x_unit; | ||
939 | # endif | ||
940 | #endif | ||
655 | } | 941 | } |
656 | if (!p1_in) | 942 | if (!p1_in) |
657 | { | 943 | { |
658 | if ((px < 0) && (delx < 0)) return; | 944 | if ((px < 0) && (delx < 0)) return; |
659 | if ((px > rx) && (delx > 0)) return; | 945 | if ((px > rx) && (delx > 0)) return; |
660 | } | 946 | } |
661 | if (!p0_in) | 947 | if (!p0_in) |
662 | { | 948 | { |
@@ -664,15 +950,80 @@ _evas_draw_line_aa(RGBA_Image *dst, RGBA_Draw_Context *dc, int x0, int y0, int x | |||
664 | } | 950 | } |
665 | if (py < clh) | 951 | if (py < clh) |
666 | { | 952 | { |
667 | aa = ((xx - (x << 16)) >> 8); | 953 | aa = ((xx - (x << 16)) >> 8); |
668 | if ((px) < clw) | 954 | if ((px) < clw) |
669 | pfunc(0, 255 - aa, color, p); | 955 | { |
670 | if ((px + 1) < clw) | 956 | #ifdef HAVE_PIXMAN |
671 | pfunc(0, aa, color, p + 1); | 957 | # ifdef PIXMAN_LINE |
672 | } | 958 | alpha_data_buffer = 255 - aa; |
959 | aa_mask_image = pixman_image_create_bits(PIXMAN_a8, 1, 1, (uint32_t *)&alpha_data_buffer, 4); | ||
960 | |||
961 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
962 | (!dc->mask.mask)) | ||
963 | pixman_image_composite(PIXMAN_OP_OVER, | ||
964 | dc->col.pixman_color_image, | ||
965 | aa_mask_image, dst->pixman.im, | ||
966 | pix_x, pix_y, 0, 0, | ||
967 | pix_x, pix_y, 1, 1); | ||
968 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
969 | (dc->mask.mask)) | ||
970 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
971 | dc->mask.mask->pixman.im, | ||
972 | dst->pixman.im, | ||
973 | pix_x, pix_y, 0, 0, | ||
974 | pix_x, pix_y, 1, 1); | ||
975 | else | ||
976 | # endif | ||
977 | #endif | ||
978 | pfunc(0, 255 - aa, color, p); | ||
979 | #ifdef HAVE_PIXMAN | ||
980 | # ifdef PIXMAN_LINE | ||
981 | pixman_image_unref(aa_mask_image); | ||
982 | # endif | ||
983 | #endif | ||
984 | |||
985 | } | ||
986 | if ((px + 1) < clw) | ||
987 | { | ||
988 | #ifdef HAVE_PIXMAN | ||
989 | # ifdef PIXMAN_LINE | ||
990 | alpha_data_buffer = aa; | ||
991 | aa_mask_image = pixman_image_create_bits(PIXMAN_a8, 1, 1, | ||
992 | (uint32_t *)&alpha_data_buffer, 4); | ||
993 | |||
994 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
995 | (!dc->mask.mask)) | ||
996 | pixman_image_composite(PIXMAN_OP_OVER, | ||
997 | dc->col.pixman_color_image, | ||
998 | aa_mask_image, dst->pixman.im, | ||
999 | pix_x + 1, pix_y, 0, 0, | ||
1000 | pix_x + 1, pix_y, 1, 1); | ||
1001 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
1002 | (dc->mask.mask)) | ||
1003 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
1004 | dc->mask.mask->pixman.im, | ||
1005 | dst->pixman.im, | ||
1006 | pix_x + 1, pix_y, 0, 0, | ||
1007 | pix_x + 1, pix_y, 1, 1); | ||
1008 | else | ||
1009 | # endif | ||
1010 | #endif | ||
1011 | pfunc(0, aa, color, p + 1); | ||
1012 | #ifdef HAVE_PIXMAN | ||
1013 | # ifdef PIXMAN_LINE | ||
1014 | pixman_image_unref(aa_mask_image); | ||
1015 | # endif | ||
1016 | #endif | ||
1017 | } | ||
1018 | } | ||
673 | next_y: | 1019 | next_y: |
674 | xx += dxx; | 1020 | xx += dxx; |
675 | py++; | 1021 | py++; |
676 | p += dstw; | 1022 | p += dstw; |
1023 | #ifdef HAVE_PIXMAN | ||
1024 | # ifdef PIXMAN_LINE | ||
1025 | pix_y += pix_y_unit; | ||
1026 | # endif | ||
1027 | #endif | ||
677 | } | 1028 | } |
678 | } | 1029 | } |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in index 4c721f9..78e893d 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_add/Makefile.in | |||
@@ -166,8 +166,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
167 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 167 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
168 | PKG_CONFIG = @PKG_CONFIG@ | 168 | PKG_CONFIG = @PKG_CONFIG@ |
169 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
170 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
171 | PNG_CFLAGS = @PNG_CFLAGS@ | 169 | PNG_CFLAGS = @PNG_CFLAGS@ |
172 | PNG_LIBS = @PNG_LIBS@ | 170 | PNG_LIBS = @PNG_LIBS@ |
173 | RANLIB = @RANLIB@ | 171 | RANLIB = @RANLIB@ |
@@ -184,6 +182,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
184 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 182 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
185 | VERSION = @VERSION@ | 183 | VERSION = @VERSION@ |
186 | VMAJ = @VMAJ@ | 184 | VMAJ = @VMAJ@ |
185 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
186 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
187 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 187 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
189 | XCB_CFLAGS = @XCB_CFLAGS@ | 189 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -265,6 +265,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
268 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
269 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
270 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
271 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
268 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 272 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
269 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 273 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
270 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 274 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in index e796ef2..e00dac8 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_blend/Makefile.in | |||
@@ -203,8 +203,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
203 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 203 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
204 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 204 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
205 | PKG_CONFIG = @PKG_CONFIG@ | 205 | PKG_CONFIG = @PKG_CONFIG@ |
206 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
207 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
208 | PNG_CFLAGS = @PNG_CFLAGS@ | 206 | PNG_CFLAGS = @PNG_CFLAGS@ |
209 | PNG_LIBS = @PNG_LIBS@ | 207 | PNG_LIBS = @PNG_LIBS@ |
210 | RANLIB = @RANLIB@ | 208 | RANLIB = @RANLIB@ |
@@ -221,6 +219,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
221 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 219 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
222 | VERSION = @VERSION@ | 220 | VERSION = @VERSION@ |
223 | VMAJ = @VMAJ@ | 221 | VMAJ = @VMAJ@ |
222 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
223 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
224 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 224 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
225 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 225 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
226 | XCB_CFLAGS = @XCB_CFLAGS@ | 226 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -302,6 +302,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
302 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 302 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
303 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 303 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
304 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 304 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
305 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
306 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
307 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
308 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
305 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 309 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
306 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 310 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
307 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 311 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_color_sse3.c b/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_color_sse3.c index 64d5a86..1843265 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_color_sse3.c +++ b/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_color_sse3.c | |||
@@ -53,7 +53,8 @@ _op_blend_c_dp_sse3(DATA32 *s __UNUSED__, DATA8 *m __UNUSED__, DATA32 c, DATA32 | |||
53 | static void | 53 | static void |
54 | init_blend_color_span_funcs_sse3(void) | 54 | init_blend_color_span_funcs_sse3(void) |
55 | { | 55 | { |
56 | op_blend_span_funcs[SP_N][SM_N][SC][DP][CPU_SSE3] = _op_blend_c_dp_sse3; | 56 | // FIXME: BUGGY BUGGY Core i5 750 (32bit), 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4), ello (text and rectangle) |
57 | // op_blend_span_funcs[SP_N][SM_N][SC][DP][CPU_SSE3] = _op_blend_c_dp_sse3; | ||
57 | op_blend_span_funcs[SP_N][SM_N][SC_AA][DP][CPU_SSE3] = _op_blend_caa_dp_sse3; | 58 | op_blend_span_funcs[SP_N][SM_N][SC_AA][DP][CPU_SSE3] = _op_blend_caa_dp_sse3; |
58 | 59 | ||
59 | // FIXME: BUGGY BUGGY Core i5 750 (32bit), 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4), ello (text and rectangle) | 60 | // FIXME: BUGGY BUGGY Core i5 750 (32bit), 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4), ello (text and rectangle) |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_mask_color_sse3.c b/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_mask_color_sse3.c index 83230e5..5883d15 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_mask_color_sse3.c +++ b/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_mask_color_sse3.c | |||
@@ -168,7 +168,8 @@ _op_blend_mas_can_dp_sse3(DATA32 *s __UNUSED__, DATA8 *m, DATA32 c, DATA32 *d, i | |||
168 | static void | 168 | static void |
169 | init_blend_mask_color_span_funcs_sse3(void) | 169 | init_blend_mask_color_span_funcs_sse3(void) |
170 | { | 170 | { |
171 | op_blend_span_funcs[SP_N][SM_AS][SC][DP][CPU_SSE3] = _op_blend_mas_c_dp_sse3; | 171 | // FIXME: BUGGY BUGGY Core i5 750 (32bit), 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4), ello (text and rectangle) |
172 | // op_blend_span_funcs[SP_N][SM_AS][SC][DP][CPU_SSE3] = _op_blend_mas_c_dp_sse3; | ||
172 | op_blend_span_funcs[SP_N][SM_AS][SC_N][DP][CPU_SSE3] = _op_blend_mas_cn_dp_sse3; | 173 | op_blend_span_funcs[SP_N][SM_AS][SC_N][DP][CPU_SSE3] = _op_blend_mas_cn_dp_sse3; |
173 | op_blend_span_funcs[SP_N][SM_AS][SC_AN][DP][CPU_SSE3] = _op_blend_mas_can_dp_sse3; | 174 | op_blend_span_funcs[SP_N][SM_AS][SC_AN][DP][CPU_SSE3] = _op_blend_mas_can_dp_sse3; |
174 | op_blend_span_funcs[SP_N][SM_AS][SC_AA][DP][CPU_SSE3] = _op_blend_mas_caa_dp_sse3; | 175 | op_blend_span_funcs[SP_N][SM_AS][SC_AA][DP][CPU_SSE3] = _op_blend_mas_caa_dp_sse3; |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_pixel_sse3.c b/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_pixel_sse3.c index 2e72fec..69c597c 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_pixel_sse3.c +++ b/libraries/evas/src/lib/engines/common/evas_op_blend/op_blend_pixel_sse3.c | |||
@@ -146,7 +146,6 @@ init_blend_pixel_span_funcs_sse3(void) | |||
146 | op_blend_span_funcs[SP_AS][SM_N][SC_N][DP][CPU_SSE3] = _op_blend_pas_dp_sse3; | 146 | op_blend_span_funcs[SP_AS][SM_N][SC_N][DP][CPU_SSE3] = _op_blend_pas_dp_sse3; |
147 | op_blend_span_funcs[SP_AN][SM_N][SC_N][DP][CPU_SSE3] = _op_blend_pan_dp_sse3; | 147 | op_blend_span_funcs[SP_AN][SM_N][SC_N][DP][CPU_SSE3] = _op_blend_pan_dp_sse3; |
148 | 148 | ||
149 | |||
150 | // FIXME: BUGGY BUGGY Core i5 750 (32bit), 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4), ello (text and rectangle) | 149 | // FIXME: BUGGY BUGGY Core i5 750 (32bit), 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4), ello (text and rectangle) |
151 | // op_blend_span_funcs[SP][SM_N][SC_N][DP_AN][CPU_SSE3] = _op_blend_p_dpan_sse3; | 150 | // op_blend_span_funcs[SP][SM_N][SC_N][DP_AN][CPU_SSE3] = _op_blend_p_dpan_sse3; |
152 | op_blend_span_funcs[SP_AS][SM_N][SC_N][DP_AN][CPU_SSE3] = _op_blend_pas_dpan_sse3; | 151 | op_blend_span_funcs[SP_AS][SM_N][SC_N][DP_AN][CPU_SSE3] = _op_blend_pas_dpan_sse3; |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in index 52658a4..40536c0 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_copy/Makefile.in | |||
@@ -166,8 +166,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
167 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 167 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
168 | PKG_CONFIG = @PKG_CONFIG@ | 168 | PKG_CONFIG = @PKG_CONFIG@ |
169 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
170 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
171 | PNG_CFLAGS = @PNG_CFLAGS@ | 169 | PNG_CFLAGS = @PNG_CFLAGS@ |
172 | PNG_LIBS = @PNG_LIBS@ | 170 | PNG_LIBS = @PNG_LIBS@ |
173 | RANLIB = @RANLIB@ | 171 | RANLIB = @RANLIB@ |
@@ -184,6 +182,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
184 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 182 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
185 | VERSION = @VERSION@ | 183 | VERSION = @VERSION@ |
186 | VMAJ = @VMAJ@ | 184 | VMAJ = @VMAJ@ |
185 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
186 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
187 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 187 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
189 | XCB_CFLAGS = @XCB_CFLAGS@ | 189 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -265,6 +265,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
268 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
269 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
270 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
271 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
268 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 272 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
269 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 273 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
270 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 274 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in index 0ccd7f3..d5764b1 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_mask/Makefile.in | |||
@@ -166,8 +166,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
167 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 167 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
168 | PKG_CONFIG = @PKG_CONFIG@ | 168 | PKG_CONFIG = @PKG_CONFIG@ |
169 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
170 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
171 | PNG_CFLAGS = @PNG_CFLAGS@ | 169 | PNG_CFLAGS = @PNG_CFLAGS@ |
172 | PNG_LIBS = @PNG_LIBS@ | 170 | PNG_LIBS = @PNG_LIBS@ |
173 | RANLIB = @RANLIB@ | 171 | RANLIB = @RANLIB@ |
@@ -184,6 +182,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
184 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 182 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
185 | VERSION = @VERSION@ | 183 | VERSION = @VERSION@ |
186 | VMAJ = @VMAJ@ | 184 | VMAJ = @VMAJ@ |
185 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
186 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
187 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 187 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
189 | XCB_CFLAGS = @XCB_CFLAGS@ | 189 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -265,6 +265,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
268 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
269 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
270 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
271 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
268 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 272 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
269 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 273 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
270 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 274 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in index f239cf7..d5452fe 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_mul/Makefile.in | |||
@@ -166,8 +166,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
167 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 167 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
168 | PKG_CONFIG = @PKG_CONFIG@ | 168 | PKG_CONFIG = @PKG_CONFIG@ |
169 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
170 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
171 | PNG_CFLAGS = @PNG_CFLAGS@ | 169 | PNG_CFLAGS = @PNG_CFLAGS@ |
172 | PNG_LIBS = @PNG_LIBS@ | 170 | PNG_LIBS = @PNG_LIBS@ |
173 | RANLIB = @RANLIB@ | 171 | RANLIB = @RANLIB@ |
@@ -184,6 +182,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
184 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 182 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
185 | VERSION = @VERSION@ | 183 | VERSION = @VERSION@ |
186 | VMAJ = @VMAJ@ | 184 | VMAJ = @VMAJ@ |
185 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
186 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
187 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 187 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
189 | XCB_CFLAGS = @XCB_CFLAGS@ | 189 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -265,6 +265,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
268 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
269 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
270 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
271 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
268 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 272 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
269 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 273 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
270 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 274 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in b/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in index b68ed3b..4b93b1b 100644 --- a/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in +++ b/libraries/evas/src/lib/engines/common/evas_op_sub/Makefile.in | |||
@@ -166,8 +166,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
167 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 167 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
168 | PKG_CONFIG = @PKG_CONFIG@ | 168 | PKG_CONFIG = @PKG_CONFIG@ |
169 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
170 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
171 | PNG_CFLAGS = @PNG_CFLAGS@ | 169 | PNG_CFLAGS = @PNG_CFLAGS@ |
172 | PNG_LIBS = @PNG_LIBS@ | 170 | PNG_LIBS = @PNG_LIBS@ |
173 | RANLIB = @RANLIB@ | 171 | RANLIB = @RANLIB@ |
@@ -184,6 +182,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
184 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 182 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
185 | VERSION = @VERSION@ | 183 | VERSION = @VERSION@ |
186 | VMAJ = @VMAJ@ | 184 | VMAJ = @VMAJ@ |
185 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
186 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
187 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 187 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
189 | XCB_CFLAGS = @XCB_CFLAGS@ | 189 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -265,6 +265,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
268 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
269 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
270 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
271 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
268 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 272 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
269 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 273 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
270 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 274 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common/evas_polygon_main.c b/libraries/evas/src/lib/engines/common/evas_polygon_main.c index bca3f83..ea0bf13 100644 --- a/libraries/evas/src/lib/engines/common/evas_polygon_main.c +++ b/libraries/evas/src/lib/engines/common/evas_polygon_main.c | |||
@@ -1,3 +1,7 @@ | |||
1 | #ifdef HAVE_CONFIG_H | ||
2 | # include <config.h> | ||
3 | #endif | ||
4 | |||
1 | #include <math.h> | 5 | #include <math.h> |
2 | 6 | ||
3 | #include "evas_common.h" | 7 | #include "evas_common.h" |
@@ -133,6 +137,14 @@ evas_common_polygon_draw(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Polygon_Po | |||
133 | int ext_x, ext_y, ext_w, ext_h; | 137 | int ext_x, ext_y, ext_w, ext_h; |
134 | int *sorted_index; | 138 | int *sorted_index; |
135 | 139 | ||
140 | #ifdef HAVE_PIXMAN | ||
141 | # ifdef PIXMAN_POLY | ||
142 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY | ||
143 | if (dc->render_op == _EVAS_RENDER_BLEND) | ||
144 | op = PIXMAN_OP_OVER; | ||
145 | # endif | ||
146 | #endif | ||
147 | |||
136 | ext_x = 0; | 148 | ext_x = 0; |
137 | ext_y = 0; | 149 | ext_y = 0; |
138 | ext_w = dst->cache_entry.w; | 150 | ext_w = dst->cache_entry.w; |
@@ -279,10 +291,30 @@ evas_common_polygon_draw(RGBA_Image *dst, RGBA_Draw_Context *dc, RGBA_Polygon_Po | |||
279 | if (((span->y) % dc->sli.h) == dc->sli.y) | 291 | if (((span->y) % dc->sli.h) == dc->sli.y) |
280 | #endif | 292 | #endif |
281 | { | 293 | { |
282 | ptr = dst->image.data + (span->y * (dst->cache_entry.w)) + span->x; | 294 | #ifdef HAVE_PIXMAN |
283 | func(NULL, NULL, dc->col.col, ptr, span->w); | 295 | # ifdef PIXMAN_POLY |
284 | } | 296 | if ((dst->pixman.im) && (dc->col.pixman_color_image) && |
285 | } | 297 | (!dc->mask.mask)) |
298 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
299 | NULL, dst->pixman.im, | ||
300 | span->x, span->y, 0, 0, | ||
301 | span->x, span->y, span->w, 1); | ||
302 | else if ((dst->pixman.im) && (dc->col.pixman_color_image) && | ||
303 | (dc->mask.mask)) | ||
304 | pixman_image_composite(op, dc->col.pixman_color_image, | ||
305 | dc->mask.mask->pixman.im, | ||
306 | dst->pixman.im, | ||
307 | span->x, span->y, 0, 0, | ||
308 | span->x, span->y, span->w, 1); | ||
309 | else | ||
310 | # endif | ||
311 | #endif | ||
312 | { | ||
313 | ptr = dst->image.data + (span->y * (dst->cache_entry.w)) + span->x; | ||
314 | func(NULL, NULL, dc->col.col, ptr, span->w); | ||
315 | } | ||
316 | } | ||
317 | } | ||
286 | while (spans) | 318 | while (spans) |
287 | { | 319 | { |
288 | span = (RGBA_Span *)spans; | 320 | span = (RGBA_Span *)spans; |
diff --git a/libraries/evas/src/lib/engines/common/evas_rectangle_main.c b/libraries/evas/src/lib/engines/common/evas_rectangle_main.c index 28aaf16..fc25fd0 100644 --- a/libraries/evas/src/lib/engines/common/evas_rectangle_main.c +++ b/libraries/evas/src/lib/engines/common/evas_rectangle_main.c | |||
@@ -58,16 +58,34 @@ rectangle_draw_internal(RGBA_Image *dst, RGBA_Draw_Context *dc, int x, int y, in | |||
58 | RECTS_CLIP_TO_RECT(x, y, w, h, dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h); | 58 | RECTS_CLIP_TO_RECT(x, y, w, h, dc->clip.x, dc->clip.y, dc->clip.w, dc->clip.h); |
59 | if ((w <= 0) || (h <= 0)) return; | 59 | if ((w <= 0) || (h <= 0)) return; |
60 | 60 | ||
61 | func = evas_common_gfx_func_composite_color_span_get(dc->col.col, dst, w, dc->render_op); | 61 | #ifdef HAVE_PIXMAN |
62 | ptr = dst->image.data + (y * dst->cache_entry.w) + x; | 62 | # ifdef PIXMAN_RECT |
63 | for (yy = 0; yy < h; yy++) | 63 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY |
64 | |||
65 | if (dc->render_op == _EVAS_RENDER_BLEND) | ||
66 | op = PIXMAN_OP_OVER; | ||
67 | |||
68 | if ((dst->pixman.im) && (dc->col.pixman_color_image)) | ||
64 | { | 69 | { |
70 | pixman_image_composite(op, dc->col.pixman_color_image, NULL, | ||
71 | dst->pixman.im, x, y, 0, 0, | ||
72 | x, y, w, h); | ||
73 | } | ||
74 | else | ||
75 | # endif | ||
76 | #endif | ||
77 | { | ||
78 | func = evas_common_gfx_func_composite_color_span_get(dc->col.col, dst, w, dc->render_op); | ||
79 | ptr = dst->image.data + (y * dst->cache_entry.w) + x; | ||
80 | for (yy = 0; yy < h; yy++) | ||
81 | { | ||
65 | #ifdef EVAS_SLI | 82 | #ifdef EVAS_SLI |
66 | if (((yy + y) % dc->sli.h) == dc->sli.y) | 83 | if (((yy + y) % dc->sli.h) == dc->sli.y) |
67 | #endif | 84 | #endif |
68 | { | 85 | { |
69 | func(NULL, NULL, dc->col.col, ptr, w); | 86 | func(NULL, NULL, dc->col.col, ptr, w); |
70 | } | 87 | } |
71 | ptr += dst->cache_entry.w; | 88 | ptr += dst->cache_entry.w; |
89 | } | ||
72 | } | 90 | } |
73 | } | 91 | } |
diff --git a/libraries/evas/src/lib/engines/common/evas_scale_sample.c b/libraries/evas/src/lib/engines/common/evas_scale_sample.c index 54b8e92..a8951b8 100644 --- a/libraries/evas/src/lib/engines/common/evas_scale_sample.c +++ b/libraries/evas/src/lib/engines/common/evas_scale_sample.c | |||
@@ -154,7 +154,7 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, | |||
154 | dst_clip_w = m_clip_w; | 154 | dst_clip_w = m_clip_w; |
155 | dst_clip_h = m_clip_h; | 155 | dst_clip_h = m_clip_h; |
156 | } | 156 | } |
157 | 157 | ||
158 | if (dst_clip_x < dst_region_x) | 158 | if (dst_clip_x < dst_region_x) |
159 | { | 159 | { |
160 | dst_clip_w += dst_clip_x - dst_region_x; | 160 | dst_clip_w += dst_clip_x - dst_region_x; |
@@ -258,7 +258,7 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, | |||
258 | func = evas_common_gfx_func_composite_pixel_mask_span_get(src, dst, dst_clip_w, dc->render_op); | 258 | func = evas_common_gfx_func_composite_pixel_mask_span_get(src, dst, dst_clip_w, dc->render_op); |
259 | maskobj = dc->mask.mask; | 259 | maskobj = dc->mask.mask; |
260 | mask = maskobj->mask.mask; | 260 | mask = maskobj->mask.mask; |
261 | /* | 261 | /* |
262 | if (1 || dst_region_w > src_region_w || dst_region_h > src_region_h){ | 262 | if (1 || dst_region_w > src_region_w || dst_region_h > src_region_h){ |
263 | printf("Mask w/h: %d/%d\n",maskobj->cache_entry.w, | 263 | printf("Mask w/h: %d/%d\n",maskobj->cache_entry.w, |
264 | maskobj->cache_entry.h); | 264 | maskobj->cache_entry.h); |
@@ -276,26 +276,47 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, | |||
276 | if ((dst_region_w == src_region_w) && (dst_region_h == src_region_h)) | 276 | if ((dst_region_w == src_region_w) && (dst_region_h == src_region_h)) |
277 | { | 277 | { |
278 | #ifdef HAVE_PIXMAN | 278 | #ifdef HAVE_PIXMAN |
279 | if ((1) && | 279 | # ifdef PIXMAN_IMAGE_SCALE_SAMPLE |
280 | (src->pixman.im) && (dst->pixman.im) && | 280 | if ((src->pixman.im) && (dst->pixman.im) && (!dc->mask.mask) && |
281 | ((!dc->mul.use) || | 281 | ((!dc->mul.use) || |
282 | ((dc->mul.use) && (dc->mul.col == 0xffffffff))) && | 282 | ((dc->mul.use) && (dc->mul.col == 0xffffffff))) && |
283 | ((dc->render_op == _EVAS_RENDER_COPY) || | 283 | ((dc->render_op == _EVAS_RENDER_COPY) || |
284 | (dc->render_op == _EVAS_RENDER_BLEND)) | 284 | (dc->render_op == _EVAS_RENDER_BLEND))) |
285 | ) | ||
286 | { | 285 | { |
287 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY | 286 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY |
288 | if (dc->render_op == _EVAS_RENDER_BLEND) op = PIXMAN_OP_OVER; | 287 | if (dc->render_op == _EVAS_RENDER_BLEND) |
288 | op = PIXMAN_OP_OVER; | ||
289 | |||
289 | pixman_image_composite(op, | 290 | pixman_image_composite(op, |
290 | src->pixman.im, NULL, | 291 | src->pixman.im, NULL, |
291 | dst->pixman.im, | 292 | dst->pixman.im, |
292 | (dst_clip_x - dst_region_x) + src_region_x, | 293 | (dst_clip_x - dst_region_x) + src_region_x, |
293 | (dst_clip_y - dst_region_y) + src_region_y, | 294 | (dst_clip_y - dst_region_y) + src_region_y, |
294 | 0, 0, | 295 | 0, 0, |
295 | dst_clip_x, dst_clip_y, | 296 | dst_clip_x, dst_clip_y, |
297 | dst_clip_w, dst_clip_h); | ||
298 | } | ||
299 | else if ((src->pixman.im) && (dst->pixman.im) && | ||
300 | (dc->mask.mask) && (dc->mask.mask->pixman.im) && | ||
301 | ((dc->render_op == _EVAS_RENDER_COPY) || | ||
302 | (dc->render_op == _EVAS_RENDER_BLEND))) | ||
303 | { | ||
304 | // In case of pixel and color operation. | ||
305 | pixman_op_t op = PIXMAN_OP_SRC; // _EVAS_RENDER_COPY | ||
306 | if (dc->render_op == _EVAS_RENDER_BLEND) | ||
307 | op = PIXMAN_OP_OVER; | ||
308 | |||
309 | pixman_image_composite(op, | ||
310 | src->pixman.im, dc->mask.mask->pixman.im, | ||
311 | dst->pixman.im, | ||
312 | (dst_clip_x - dst_region_x) + src_region_x, | ||
313 | (dst_clip_y - dst_region_y) + src_region_y, | ||
314 | 0, 0, | ||
315 | dst_clip_x, dst_clip_y, | ||
296 | dst_clip_w, dst_clip_h); | 316 | dst_clip_w, dst_clip_h); |
297 | } | 317 | } |
298 | else | 318 | else |
319 | # endif | ||
299 | #endif | 320 | #endif |
300 | { | 321 | { |
301 | ptr = src_data + ((dst_clip_y - dst_region_y + src_region_y) * src_w) + (dst_clip_x - dst_region_x) + src_region_x; | 322 | ptr = src_data + ((dst_clip_y - dst_region_y + src_region_y) * src_w) + (dst_clip_x - dst_region_x) + src_region_x; |
@@ -322,59 +343,59 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, | |||
322 | } | 343 | } |
323 | else | 344 | else |
324 | { | 345 | { |
325 | /* fill scale tables */ | 346 | /* fill scale tables */ |
326 | for (x = 0; x < dst_clip_w; x++) | 347 | for (x = 0; x < dst_clip_w; x++) |
327 | lin_ptr[x] = (((x + dst_clip_x - dst_region_x) * src_region_w) / dst_region_w) + src_region_x; | 348 | lin_ptr[x] = (((x + dst_clip_x - dst_region_x) * src_region_w) / dst_region_w) + src_region_x; |
328 | for (y = 0; y < dst_clip_h; y++) | 349 | for (y = 0; y < dst_clip_h; y++) |
329 | row_ptr[y] = src_data + (((((y + dst_clip_y - dst_region_y) * src_region_h) / dst_region_h) | 350 | row_ptr[y] = src_data + (((((y + dst_clip_y - dst_region_y) * src_region_h) / dst_region_h) |
330 | + src_region_y) * src_w); | 351 | + src_region_y) * src_w); |
331 | /* scale to dst */ | 352 | /* scale to dst */ |
332 | dptr = dst_ptr; | 353 | dptr = dst_ptr; |
333 | #ifdef DIRECT_SCALE | 354 | #ifdef DIRECT_SCALE |
334 | if ((!src->cache_entry.flags.alpha) && | 355 | if ((!src->cache_entry.flags.alpha) && |
335 | (!dst->cache_entry.flags.alpha) && | 356 | (!dst->cache_entry.flags.alpha) && |
336 | (!dc->mul.use)) | 357 | (!dc->mul.use)) |
337 | { | 358 | { |
338 | for (y = 0; y < dst_clip_h; y++) | 359 | for (y = 0; y < dst_clip_h; y++) |
339 | { | 360 | { |
340 | #ifdef EVAS_SLI | 361 | # ifdef EVAS_SLI |
341 | if (((y + dst_clip_y) % dc->sli.h) == dc->sli.y) | 362 | if (((y + dst_clip_y) % dc->sli.h) == dc->sli.y) |
342 | #endif | 363 | # endif |
343 | { | 364 | { |
344 | dst_ptr = dptr; | 365 | dst_ptr = dptr; |
345 | for (x = 0; x < dst_clip_w; x++) | 366 | for (x = 0; x < dst_clip_w; x++) |
346 | { | 367 | { |
347 | ptr = row_ptr[y] + lin_ptr[x]; | 368 | ptr = row_ptr[y] + lin_ptr[x]; |
348 | *dst_ptr = *ptr; | 369 | *dst_ptr = *ptr; |
349 | dst_ptr++; | 370 | dst_ptr++; |
350 | } | 371 | } |
351 | } | 372 | } |
352 | dptr += dst_w; | 373 | dptr += dst_w; |
353 | } | 374 | } |
354 | } | 375 | } |
355 | else | 376 | else |
356 | #endif | 377 | #endif |
357 | { | 378 | { |
358 | /* a scanline buffer */ | 379 | /* a scanline buffer */ |
359 | buf = alloca(dst_clip_w * sizeof(DATA32)); | 380 | buf = alloca(dst_clip_w * sizeof(DATA32)); |
360 | for (y = 0; y < dst_clip_h; y++) | 381 | for (y = 0; y < dst_clip_h; y++) |
361 | { | 382 | { |
362 | #ifdef EVAS_SLI | 383 | #ifdef EVAS_SLI |
363 | if (((y + dst_clip_y) % dc->sli.h) == dc->sli.y) | 384 | if (((y + dst_clip_y) % dc->sli.h) == dc->sli.y) |
364 | #endif | 385 | #endif |
365 | { | 386 | { |
366 | dst_ptr = buf; | 387 | dst_ptr = buf; |
367 | for (x = 0; x < dst_clip_w; x++) | 388 | for (x = 0; x < dst_clip_w; x++) |
368 | { | 389 | { |
369 | ptr = row_ptr[y] + lin_ptr[x]; | 390 | ptr = row_ptr[y] + lin_ptr[x]; |
370 | *dst_ptr = *ptr; | 391 | *dst_ptr = *ptr; |
371 | dst_ptr++; | 392 | dst_ptr++; |
372 | } | 393 | } |
373 | /* * blend here [clip_w *] buf -> dptr * */ | 394 | /* * blend here [clip_w *] buf -> dptr * */ |
374 | func(buf, NULL, dc->mul.col, dptr, dst_clip_w); | 395 | func(buf, NULL, dc->mul.col, dptr, dst_clip_w); |
375 | } | 396 | } |
376 | dptr += dst_w; | 397 | dptr += dst_w; |
377 | } | 398 | } |
378 | } | 399 | } |
379 | } | 400 | } |
380 | } | 401 | } |
diff --git a/libraries/evas/src/lib/engines/common/evas_tiler.c b/libraries/evas/src/lib/engines/common/evas_tiler.c index 0bbe811..ff359a4 100644 --- a/libraries/evas/src/lib/engines/common/evas_tiler.c +++ b/libraries/evas/src/lib/engines/common/evas_tiler.c | |||
@@ -19,7 +19,9 @@ static inline list_node_t *rect_list_add_split_fuzzy(list_t *rects, list_node_t | |||
19 | static inline void rect_list_merge_rects(list_t *rects, list_t *to_merge, int accepted_error); | 19 | static inline void rect_list_merge_rects(list_t *rects, list_t *to_merge, int accepted_error); |
20 | static inline void rect_list_add_split_fuzzy_and_merge(list_t *rects, list_node_t *node, int split_accepted_error, int merge_accepted_error); | 20 | static inline void rect_list_add_split_fuzzy_and_merge(list_t *rects, list_node_t *node, int split_accepted_error, int merge_accepted_error); |
21 | static inline void rect_print(const rect_t r); | 21 | static inline void rect_print(const rect_t r); |
22 | #if 0 | ||
22 | static inline void rect_list_print(const list_t rects); | 23 | static inline void rect_list_print(const list_t rects); |
24 | #endif | ||
23 | 25 | ||
24 | static const list_node_t list_node_zeroed = { NULL }; | 26 | static const list_node_t list_node_zeroed = { NULL }; |
25 | static const list_t list_zeroed = { NULL, NULL }; | 27 | static const list_t list_zeroed = { NULL, NULL }; |
@@ -117,6 +119,7 @@ rect_print(const rect_t r) | |||
117 | INF("<rect(%d, %d, %d, %d)>", r.left, r.top, r.width, r.height); | 119 | INF("<rect(%d, %d, %d, %d)>", r.left, r.top, r.width, r.height); |
118 | } | 120 | } |
119 | 121 | ||
122 | #if 0 | ||
120 | static inline void | 123 | static inline void |
121 | rect_list_print(const list_t rects) | 124 | rect_list_print(const list_t rects) |
122 | { | 125 | { |
@@ -143,6 +146,7 @@ rect_list_print(const list_t rects) | |||
143 | } | 146 | } |
144 | putchar(']'); | 147 | putchar(']'); |
145 | } | 148 | } |
149 | #endif | ||
146 | 150 | ||
147 | static inline void | 151 | static inline void |
148 | rect_list_append_node(list_t *rects, list_node_t *node) | 152 | rect_list_append_node(list_t *rects, list_node_t *node) |
diff --git a/libraries/evas/src/lib/engines/common/language/evas_bidi_utils.c b/libraries/evas/src/lib/engines/common/language/evas_bidi_utils.c index 9f7859b..002cfbe 100644 --- a/libraries/evas/src/lib/engines/common/language/evas_bidi_utils.c +++ b/libraries/evas/src/lib/engines/common/language/evas_bidi_utils.c | |||
@@ -1,3 +1,7 @@ | |||
1 | #ifdef HAVE_CONFIG_H | ||
2 | # include <config.h> | ||
3 | #endif | ||
4 | |||
1 | #include <string.h> | 5 | #include <string.h> |
2 | #include <stdlib.h> | 6 | #include <stdlib.h> |
3 | 7 | ||
diff --git a/libraries/evas/src/lib/engines/common/language/evas_language_utils.c b/libraries/evas/src/lib/engines/common/language/evas_language_utils.c index 9c9b3e3..b362f10 100644 --- a/libraries/evas/src/lib/engines/common/language/evas_language_utils.c +++ b/libraries/evas/src/lib/engines/common/language/evas_language_utils.c | |||
@@ -13,6 +13,12 @@ | |||
13 | * | 13 | * |
14 | * @{ | 14 | * @{ |
15 | */ | 15 | */ |
16 | #ifdef HAVE_CONFIG_H | ||
17 | # include <config.h> | ||
18 | #endif | ||
19 | |||
20 | #include <stdlib.h> | ||
21 | |||
16 | #include <Eina.h> | 22 | #include <Eina.h> |
17 | 23 | ||
18 | #include "evas_language_utils.h" | 24 | #include "evas_language_utils.h" |
diff --git a/libraries/evas/src/lib/engines/common_16/Makefile.in b/libraries/evas/src/lib/engines/common_16/Makefile.in index 9097a8d..313cbda 100644 --- a/libraries/evas/src/lib/engines/common_16/Makefile.in +++ b/libraries/evas/src/lib/engines/common_16/Makefile.in | |||
@@ -201,8 +201,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
201 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 201 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
202 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 202 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
203 | PKG_CONFIG = @PKG_CONFIG@ | 203 | PKG_CONFIG = @PKG_CONFIG@ |
204 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
205 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
206 | PNG_CFLAGS = @PNG_CFLAGS@ | 204 | PNG_CFLAGS = @PNG_CFLAGS@ |
207 | PNG_LIBS = @PNG_LIBS@ | 205 | PNG_LIBS = @PNG_LIBS@ |
208 | RANLIB = @RANLIB@ | 206 | RANLIB = @RANLIB@ |
@@ -219,6 +217,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
219 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 217 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
220 | VERSION = @VERSION@ | 218 | VERSION = @VERSION@ |
221 | VMAJ = @VMAJ@ | 219 | VMAJ = @VMAJ@ |
220 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
221 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
222 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 222 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
223 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 223 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
224 | XCB_CFLAGS = @XCB_CFLAGS@ | 224 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -300,6 +300,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
300 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 300 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
301 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 301 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
302 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 302 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
303 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
304 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
305 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
306 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
303 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 307 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
304 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 308 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
305 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 309 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/engines/common_8/Makefile.in b/libraries/evas/src/lib/engines/common_8/Makefile.in index 06c13de..7fa4fbb 100644 --- a/libraries/evas/src/lib/engines/common_8/Makefile.in +++ b/libraries/evas/src/lib/engines/common_8/Makefile.in | |||
@@ -200,8 +200,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
200 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 200 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
201 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 201 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
202 | PKG_CONFIG = @PKG_CONFIG@ | 202 | PKG_CONFIG = @PKG_CONFIG@ |
203 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
204 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
205 | PNG_CFLAGS = @PNG_CFLAGS@ | 203 | PNG_CFLAGS = @PNG_CFLAGS@ |
206 | PNG_LIBS = @PNG_LIBS@ | 204 | PNG_LIBS = @PNG_LIBS@ |
207 | RANLIB = @RANLIB@ | 205 | RANLIB = @RANLIB@ |
@@ -218,6 +216,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
218 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 216 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
219 | VERSION = @VERSION@ | 217 | VERSION = @VERSION@ |
220 | VMAJ = @VMAJ@ | 218 | VMAJ = @VMAJ@ |
219 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
220 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
221 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 221 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
222 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 222 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
223 | XCB_CFLAGS = @XCB_CFLAGS@ | 223 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -299,6 +299,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
299 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 299 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
300 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 300 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
301 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 301 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
302 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
303 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
304 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
305 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
302 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 306 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
303 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 307 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
304 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 308 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/file/Makefile.in b/libraries/evas/src/lib/file/Makefile.in index 599d980..2ac89b1 100644 --- a/libraries/evas/src/lib/file/Makefile.in +++ b/libraries/evas/src/lib/file/Makefile.in | |||
@@ -196,8 +196,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
196 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 196 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
197 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 197 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
198 | PKG_CONFIG = @PKG_CONFIG@ | 198 | PKG_CONFIG = @PKG_CONFIG@ |
199 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
200 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
201 | PNG_CFLAGS = @PNG_CFLAGS@ | 199 | PNG_CFLAGS = @PNG_CFLAGS@ |
202 | PNG_LIBS = @PNG_LIBS@ | 200 | PNG_LIBS = @PNG_LIBS@ |
203 | RANLIB = @RANLIB@ | 201 | RANLIB = @RANLIB@ |
@@ -214,6 +212,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
214 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 212 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
215 | VERSION = @VERSION@ | 213 | VERSION = @VERSION@ |
216 | VMAJ = @VMAJ@ | 214 | VMAJ = @VMAJ@ |
215 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
216 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
217 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 217 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
218 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 218 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
219 | XCB_CFLAGS = @XCB_CFLAGS@ | 219 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -295,6 +295,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
295 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 295 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
296 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 296 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
297 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 297 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
298 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
299 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
300 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
301 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
298 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 302 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
299 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 303 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
300 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 304 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/file/evas_module.c b/libraries/evas/src/lib/file/evas_module.c index 6b4d4f6..21d5cd0 100644 --- a/libraries/evas/src/lib/file/evas_module.c +++ b/libraries/evas/src/lib/file/evas_module.c | |||
@@ -285,7 +285,7 @@ evas_module_register(const Evas_Module_Api *module, Evas_Module_Type type) | |||
285 | if (type == EVAS_MODULE_TYPE_ENGINE) | 285 | if (type == EVAS_MODULE_TYPE_ENGINE) |
286 | { | 286 | { |
287 | eina_array_push(evas_engines, em); | 287 | eina_array_push(evas_engines, em); |
288 | em->id_engine = eina_array_count_get(evas_engines); | 288 | em->id_engine = eina_array_count(evas_engines); |
289 | } | 289 | } |
290 | 290 | ||
291 | eina_hash_direct_add(evas_modules[type], module->name, em); | 291 | eina_hash_direct_add(evas_modules[type], module->name, em); |
@@ -398,7 +398,7 @@ Evas_Module * | |||
398 | evas_module_engine_get(int render_method) | 398 | evas_module_engine_get(int render_method) |
399 | { | 399 | { |
400 | if ((render_method <= 0) || | 400 | if ((render_method <= 0) || |
401 | ((unsigned int)render_method > eina_array_count_get(evas_engines))) | 401 | ((unsigned int)render_method > eina_array_count(evas_engines))) |
402 | return NULL; | 402 | return NULL; |
403 | return eina_array_data_get(evas_engines, render_method - 1); | 403 | return eina_array_data_get(evas_engines, render_method - 1); |
404 | } | 404 | } |
diff --git a/libraries/evas/src/lib/file/evas_path.c b/libraries/evas/src/lib/file/evas_path.c index ff13e20..c663c16 100644 --- a/libraries/evas/src/lib/file/evas_path.c +++ b/libraries/evas/src/lib/file/evas_path.c | |||
@@ -123,7 +123,7 @@ evas_file_path_list(char *path, const char *match, int match_case) | |||
123 | else | 123 | else |
124 | files = eina_list_append(files, strdup(info->path + info->name_start)); | 124 | files = eina_list_append(files, strdup(info->path + info->name_start)); |
125 | } | 125 | } |
126 | eina_iterator_free(it); | 126 | if (it) eina_iterator_free(it); |
127 | return files; | 127 | return files; |
128 | } | 128 | } |
129 | 129 | ||
diff --git a/libraries/evas/src/lib/include/Makefile.in b/libraries/evas/src/lib/include/Makefile.in index 9d5c371..21f0099 100644 --- a/libraries/evas/src/lib/include/Makefile.in +++ b/libraries/evas/src/lib/include/Makefile.in | |||
@@ -166,8 +166,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 166 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
167 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 167 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
168 | PKG_CONFIG = @PKG_CONFIG@ | 168 | PKG_CONFIG = @PKG_CONFIG@ |
169 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
170 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
171 | PNG_CFLAGS = @PNG_CFLAGS@ | 169 | PNG_CFLAGS = @PNG_CFLAGS@ |
172 | PNG_LIBS = @PNG_LIBS@ | 170 | PNG_LIBS = @PNG_LIBS@ |
173 | RANLIB = @RANLIB@ | 171 | RANLIB = @RANLIB@ |
@@ -184,6 +182,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
184 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 182 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
185 | VERSION = @VERSION@ | 183 | VERSION = @VERSION@ |
186 | VMAJ = @VMAJ@ | 184 | VMAJ = @VMAJ@ |
185 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
186 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
187 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 187 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 188 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
189 | XCB_CFLAGS = @XCB_CFLAGS@ | 189 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -265,6 +265,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 265 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 266 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 267 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
268 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
269 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
270 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
271 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
268 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 272 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
269 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 273 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
270 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 274 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/lib/include/evas_common.h b/libraries/evas/src/lib/include/evas_common.h index f817202..a9063e6 100644 --- a/libraries/evas/src/lib/include/evas_common.h +++ b/libraries/evas/src/lib/include/evas_common.h | |||
@@ -1,9 +1,9 @@ | |||
1 | #ifndef EVAS_COMMON_H | 1 | #ifndef EVAS_COMMON_H |
2 | #define EVAS_COMMON_H | 2 | #define EVAS_COMMON_H |
3 | 3 | ||
4 | #ifdef HAVE_CONFIG_H | 4 | //#ifdef HAVE_CONFIG_H |
5 | # include "config.h" /* so that EAPI in Evas.h is correctly defined */ | 5 | #include "config.h" /* so that EAPI in Evas.h is correctly defined */ |
6 | #endif | 6 | //#endif |
7 | 7 | ||
8 | #ifdef HAVE_EVIL | 8 | #ifdef HAVE_EVIL |
9 | # include <Evil.h> | 9 | # include <Evil.h> |
@@ -138,8 +138,6 @@ extern EAPI int _evas_log_dom_global; | |||
138 | # define BUILD_PTHREAD | 138 | # define BUILD_PTHREAD |
139 | #endif | 139 | #endif |
140 | 140 | ||
141 | #ifdef BUILD_PTHREAD | ||
142 | |||
143 | #define LK(x) Eina_Lock x | 141 | #define LK(x) Eina_Lock x |
144 | #define LKI(x) eina_lock_new(&(x)) | 142 | #define LKI(x) eina_lock_new(&(x)) |
145 | #define LKD(x) eina_lock_free(&(x)) | 143 | #define LKD(x) eina_lock_free(&(x)) |
@@ -148,42 +146,28 @@ extern EAPI int _evas_log_dom_global; | |||
148 | #define LKU(x) eina_lock_release(&(x)) | 146 | #define LKU(x) eina_lock_release(&(x)) |
149 | #define LKDBG(x) eina_lock_debug(&(x)) | 147 | #define LKDBG(x) eina_lock_debug(&(x)) |
150 | 148 | ||
149 | /* for rwlocks */ | ||
150 | #define RWLK(x) Eina_RWLock x | ||
151 | #define RWLKI(x) eina_rwlock_new(&(x)) | ||
152 | #define RWLKD(x) eina_rwlock_free(&(x)) | ||
153 | #define RDLKL(x) eina_rwlock_take_read(&(x)) | ||
154 | #define WRLKL(x) eina_rwlock_take_write(&(x)) | ||
155 | #define RWLKU(x) eina_rwlock_release(&(x)) | ||
156 | |||
157 | #ifdef BUILD_PTHREAD | ||
158 | |||
151 | # define TH(x) pthread_t x | 159 | # define TH(x) pthread_t x |
152 | # define THI(x) int x | 160 | # define THI(x) int x |
153 | # define TH_MAX 8 | 161 | # define TH_MAX 8 |
154 | 162 | ||
155 | /* for rwlocks */ | ||
156 | #define RWLK(x) pthread_rwlock_t x | ||
157 | #define RWLKI(x) pthread_rwlock_init(&(x), NULL) | ||
158 | #define RWLKD(x) pthread_rwlock_destroy(&(x)) | ||
159 | #define RDLKL(x) pthread_rwlock_rdlock(&(x)) | ||
160 | #define WRLKL(x) pthread_rwlock_wrlock(&(x)) | ||
161 | #define RWLKU(x) pthread_rwlock_unlock(&(x)) | ||
162 | |||
163 | |||
164 | // even though in theory having every Nth rendered line done by a different | 163 | // even though in theory having every Nth rendered line done by a different |
165 | // thread might even out load across threads - it actually slows things down. | 164 | // thread might even out load across threads - it actually slows things down. |
166 | //#define EVAS_SLI 1 | 165 | //#define EVAS_SLI 1 |
167 | 166 | ||
168 | #else | 167 | #else |
169 | # define LK(x) | ||
170 | # define LKI(x) | ||
171 | # define LKD(x) | ||
172 | # define LKL(x) | ||
173 | # define LKT(x) 1 | ||
174 | # define LKU(x) | ||
175 | # define TH(x) | 168 | # define TH(x) |
176 | # define THI(x) | 169 | # define THI(x) |
177 | # define TH_MAX 0 | 170 | # define TH_MAX 0 |
178 | # define LKDBG(x) | ||
179 | |||
180 | /* for rwlocks */ | ||
181 | #define RWLK(x) | ||
182 | #define RWLKI(x) | ||
183 | #define RWLKD(x) | ||
184 | #define RDLKL(x) | ||
185 | #define WRLKL(x) | ||
186 | #define RWLKU(x) | ||
187 | 171 | ||
188 | #endif | 172 | #endif |
189 | 173 | ||
@@ -338,6 +322,21 @@ void *alloca (size_t); | |||
338 | #define pld(addr, off) | 322 | #define pld(addr, off) |
339 | #endif /* __ARMEL__ */ | 323 | #endif /* __ARMEL__ */ |
340 | 324 | ||
325 | // these here are in config.h - just here for documentation | ||
326 | //#ifdef __ARM_ARCH__ | ||
327 | // *IF* you enable pixman, this determines which things pixman will do | ||
328 | ////#define PIXMAN_FONT 1 | ||
329 | ////#define PIXMAN_RECT 1 | ||
330 | ////#define PIXMAN_LINE 1 | ||
331 | ////#define PIXMAN_POLY 1 | ||
332 | //#define PIXMAN_IMAGE 1 | ||
333 | //#define PIXMAN_IMAGE_SCALE_SAMPLE 1 | ||
334 | //#endif | ||
335 | // not related to pixman but an alternate rotate code | ||
336 | //#define TILE_ROTATE 1 | ||
337 | |||
338 | #define TILE_CACHE_LINE_SIZE 64 | ||
339 | |||
341 | /*****************************************************************************/ | 340 | /*****************************************************************************/ |
342 | 341 | ||
343 | #define UNROLL2(op...) op op | 342 | #define UNROLL2(op...) op op |
@@ -678,6 +677,9 @@ struct _RGBA_Draw_Context | |||
678 | DATA32 col; | 677 | DATA32 col; |
679 | } mul; | 678 | } mul; |
680 | struct { | 679 | struct { |
680 | #ifdef HAVE_PIXMAN | ||
681 | pixman_image_t *pixman_color_image; | ||
682 | #endif | ||
681 | DATA32 col; | 683 | DATA32 col; |
682 | } col; | 684 | } col; |
683 | struct RGBA_Draw_Context_clip { | 685 | struct RGBA_Draw_Context_clip { |
@@ -1032,14 +1034,14 @@ struct _Tilebuf | |||
1032 | int x, y, w, h; | 1034 | int x, y, w, h; |
1033 | } prev_add, prev_del; | 1035 | } prev_add, prev_del; |
1034 | #ifdef RECTUPDATE | 1036 | #ifdef RECTUPDATE |
1035 | /* | 1037 | /* |
1036 | Regionbuf *rb; | 1038 | Regionbuf *rb; |
1037 | */ | 1039 | */ |
1038 | #elif defined(EVAS_RECT_SPLIT) | 1040 | #elif defined(EVAS_RECT_SPLIT) |
1039 | int need_merge; | 1041 | int need_merge; |
1040 | list_t rects; | 1042 | list_t rects; |
1041 | #else | 1043 | #else |
1042 | /* | 1044 | /* |
1043 | struct { | 1045 | struct { |
1044 | int w, h; | 1046 | int w, h; |
1045 | Tilebuf_Tile *tiles; | 1047 | Tilebuf_Tile *tiles; |
diff --git a/libraries/evas/src/lib/include/evas_private.h b/libraries/evas/src/lib/include/evas_private.h index 90498d0..84c1d36 100644 --- a/libraries/evas/src/lib/include/evas_private.h +++ b/libraries/evas/src/lib/include/evas_private.h | |||
@@ -301,12 +301,13 @@ struct _Evas | |||
301 | struct { | 301 | struct { |
302 | unsigned char inside : 1; | 302 | unsigned char inside : 1; |
303 | int mouse_grabbed; | 303 | int mouse_grabbed; |
304 | int downs; | ||
304 | DATA32 button; | 305 | DATA32 button; |
305 | Evas_Coord x, y; | 306 | Evas_Coord x, y; |
307 | int nogrep; | ||
306 | struct { | 308 | struct { |
307 | Eina_List *in; | 309 | Eina_List *in; |
308 | } object; | 310 | } object; |
309 | |||
310 | } pointer; | 311 | } pointer; |
311 | 312 | ||
312 | struct { | 313 | struct { |
@@ -320,6 +321,12 @@ struct _Evas | |||
320 | unsigned char changed : 1; | 321 | unsigned char changed : 1; |
321 | } output; | 322 | } output; |
322 | 323 | ||
324 | struct | ||
325 | { | ||
326 | Evas_Coord x, y, w, h; | ||
327 | Eina_Bool changed : 1; | ||
328 | } framespace; | ||
329 | |||
323 | Eina_List *damages; | 330 | Eina_List *damages; |
324 | Eina_List *obscures; | 331 | Eina_List *obscures; |
325 | 332 | ||
@@ -331,6 +338,7 @@ struct _Evas | |||
331 | 338 | ||
332 | int walking_list; | 339 | int walking_list; |
333 | int events_frozen; | 340 | int events_frozen; |
341 | Evas_Event_Flags default_event_flags; | ||
334 | 342 | ||
335 | struct { | 343 | struct { |
336 | Evas_Module *module; | 344 | Evas_Module *module; |
@@ -577,7 +585,7 @@ struct _Evas_Object | |||
577 | unsigned char recalculate_cycle; | 585 | unsigned char recalculate_cycle; |
578 | Eina_Clist calc_entry; | 586 | Eina_Clist calc_entry; |
579 | 587 | ||
580 | Evas_Object_Pointer_Mode pointer_mode : 1; | 588 | Evas_Object_Pointer_Mode pointer_mode : 2; |
581 | 589 | ||
582 | Eina_Bool store : 1; | 590 | Eina_Bool store : 1; |
583 | Eina_Bool pass_events : 1; | 591 | Eina_Bool pass_events : 1; |
@@ -608,6 +616,8 @@ struct _Evas_Object | |||
608 | Eina_Bool changed_move_only : 1; | 616 | Eina_Bool changed_move_only : 1; |
609 | Eina_Bool changed_nomove : 1; | 617 | Eina_Bool changed_nomove : 1; |
610 | Eina_Bool del_ref : 1; | 618 | Eina_Bool del_ref : 1; |
619 | |||
620 | Eina_Bool is_frame : 1; | ||
611 | }; | 621 | }; |
612 | 622 | ||
613 | struct _Evas_Func_Node | 623 | struct _Evas_Func_Node |
@@ -772,6 +782,7 @@ struct _Evas_Func | |||
772 | char *(*image_format_get) (void *data, void *image); | 782 | char *(*image_format_get) (void *data, void *image); |
773 | void (*image_colorspace_set) (void *data, void *image, int cspace); | 783 | void (*image_colorspace_set) (void *data, void *image, int cspace); |
774 | int (*image_colorspace_get) (void *data, void *image); | 784 | int (*image_colorspace_get) (void *data, void *image); |
785 | Eina_Bool (*image_can_region_get) (void *data, void *image); | ||
775 | void (*image_mask_create) (void *data, void *image); | 786 | void (*image_mask_create) (void *data, void *image); |
776 | void *(*image_native_set) (void *data, void *image, void *native); | 787 | void *(*image_native_set) (void *data, void *image, void *native); |
777 | void *(*image_native_get) (void *data, void *image); | 788 | void *(*image_native_get) (void *data, void *image); |
@@ -861,6 +872,7 @@ struct _Evas_Image_Load_Func | |||
861 | Eina_Bool (*file_head) (Image_Entry *ie, const char *file, const char *key, int *error); | 872 | Eina_Bool (*file_head) (Image_Entry *ie, const char *file, const char *key, int *error); |
862 | Eina_Bool (*file_data) (Image_Entry *ie, const char *file, const char *key, int *error); | 873 | Eina_Bool (*file_data) (Image_Entry *ie, const char *file, const char *key, int *error); |
863 | double (*frame_duration) (Image_Entry *ie, const char *file, const int start, const int frame_num); | 874 | double (*frame_duration) (Image_Entry *ie, const char *file, const int start, const int frame_num); |
875 | Eina_Bool do_region; | ||
864 | }; | 876 | }; |
865 | 877 | ||
866 | struct _Evas_Image_Save_Func | 878 | struct _Evas_Image_Save_Func |
@@ -904,7 +916,7 @@ void evas_object_clip_across_check(Evas_Object *obj); | |||
904 | void evas_object_clip_across_clippees_check(Evas_Object *obj); | 916 | void evas_object_clip_across_clippees_check(Evas_Object *obj); |
905 | void evas_object_mapped_clip_across_mark(Evas_Object *obj); | 917 | void evas_object_mapped_clip_across_mark(Evas_Object *obj); |
906 | void evas_event_callback_call(Evas *e, Evas_Callback_Type type, void *event_info); | 918 | void evas_event_callback_call(Evas *e, Evas_Callback_Type type, void *event_info); |
907 | void evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void *event_info); | 919 | void evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void *event_info, int event_id); |
908 | Eina_List *evas_event_objects_event_list(Evas *e, Evas_Object *stop, int x, int y); | 920 | Eina_List *evas_event_objects_event_list(Evas *e, Evas_Object *stop, int x, int y); |
909 | int evas_mem_free(int mem_required); | 921 | int evas_mem_free(int mem_required); |
910 | int evas_mem_degrade(int mem_required); | 922 | int evas_mem_degrade(int mem_required); |
diff --git a/libraries/evas/src/modules/Makefile.in b/libraries/evas/src/modules/Makefile.in index 9cd0201..e4f1cbc 100644 --- a/libraries/evas/src/modules/Makefile.in +++ b/libraries/evas/src/modules/Makefile.in | |||
@@ -206,8 +206,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
206 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 206 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
207 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 207 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
208 | PKG_CONFIG = @PKG_CONFIG@ | 208 | PKG_CONFIG = @PKG_CONFIG@ |
209 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
210 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
211 | PNG_CFLAGS = @PNG_CFLAGS@ | 209 | PNG_CFLAGS = @PNG_CFLAGS@ |
212 | PNG_LIBS = @PNG_LIBS@ | 210 | PNG_LIBS = @PNG_LIBS@ |
213 | RANLIB = @RANLIB@ | 211 | RANLIB = @RANLIB@ |
@@ -224,6 +222,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
224 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 222 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
225 | VERSION = @VERSION@ | 223 | VERSION = @VERSION@ |
226 | VMAJ = @VMAJ@ | 224 | VMAJ = @VMAJ@ |
225 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
226 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
227 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 227 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
228 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 228 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
229 | XCB_CFLAGS = @XCB_CFLAGS@ | 229 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -305,6 +305,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
305 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 305 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
306 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 306 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
307 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 307 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
308 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
309 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
310 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
311 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
308 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 312 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
309 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 313 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
310 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 314 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/Makefile.am b/libraries/evas/src/modules/engines/Makefile.am index 7d870a1..42585cc 100644 --- a/libraries/evas/src/modules/engines/Makefile.am +++ b/libraries/evas/src/modules/engines/Makefile.am | |||
@@ -68,4 +68,9 @@ endif | |||
68 | if !EVAS_STATIC_BUILD_SOFTWARE_X11 | 68 | if !EVAS_STATIC_BUILD_SOFTWARE_X11 |
69 | SUBDIRS += software_x11 | 69 | SUBDIRS += software_x11 |
70 | endif | 70 | endif |
71 | 71 | if !EVAS_STATIC_BUILD_WAYLAND_SHM | |
72 | SUBDIRS += wayland_shm | ||
73 | endif | ||
74 | if !EVAS_STATIC_BUILD_WAYLAND_EGL | ||
75 | SUBDIRS += wayland_egl | ||
76 | endif | ||
diff --git a/libraries/evas/src/modules/engines/Makefile.in b/libraries/evas/src/modules/engines/Makefile.in index 3994fca..5820026 100644 --- a/libraries/evas/src/modules/engines/Makefile.in +++ b/libraries/evas/src/modules/engines/Makefile.in | |||
@@ -54,6 +54,8 @@ host_triplet = @host@ | |||
54 | @EVAS_STATIC_BUILD_SOFTWARE_DDRAW_FALSE@am__append_19 = software_ddraw | 54 | @EVAS_STATIC_BUILD_SOFTWARE_DDRAW_FALSE@am__append_19 = software_ddraw |
55 | @EVAS_STATIC_BUILD_SOFTWARE_GDI_FALSE@am__append_20 = software_gdi | 55 | @EVAS_STATIC_BUILD_SOFTWARE_GDI_FALSE@am__append_20 = software_gdi |
56 | @EVAS_STATIC_BUILD_SOFTWARE_X11_FALSE@am__append_21 = software_x11 | 56 | @EVAS_STATIC_BUILD_SOFTWARE_X11_FALSE@am__append_21 = software_x11 |
57 | @EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@am__append_22 = wayland_shm | ||
58 | @EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@am__append_23 = wayland_egl | ||
57 | subdir = src/modules/engines | 59 | subdir = src/modules/engines |
58 | DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in | 60 | DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in |
59 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | 61 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
@@ -102,7 +104,7 @@ DIST_SUBDIRS = software_generic buffer direct3d directfb fb psl1ght \ | |||
102 | gl_common gl_x11 gl_sdl gl_cocoa software_8 software_8_x11 \ | 104 | gl_common gl_x11 gl_sdl gl_cocoa software_8 software_8_x11 \ |
103 | software_16 software_16_ddraw software_16_wince \ | 105 | software_16 software_16_ddraw software_16_wince \ |
104 | software_16_x11 software_sdl software_16_sdl software_ddraw \ | 106 | software_16_x11 software_sdl software_16_sdl software_ddraw \ |
105 | software_gdi software_x11 | 107 | software_gdi software_x11 wayland_shm wayland_egl |
106 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | 108 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) |
107 | am__relativize = \ | 109 | am__relativize = \ |
108 | dir0=`pwd`; \ | 110 | dir0=`pwd`; \ |
@@ -231,8 +233,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 233 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 234 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 235 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 236 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 237 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 238 | RANLIB = @RANLIB@ |
@@ -249,6 +249,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 249 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 250 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 251 | VMAJ = @VMAJ@ |
252 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
253 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 254 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 255 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 256 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +332,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 332 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 333 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 334 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
335 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
336 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
337 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
338 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 339 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 340 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 341 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
@@ -411,7 +417,8 @@ SUBDIRS = $(am__append_1) $(am__append_2) $(am__append_3) \ | |||
411 | $(am__append_10) $(am__append_11) $(am__append_12) \ | 417 | $(am__append_10) $(am__append_11) $(am__append_12) \ |
412 | $(am__append_13) $(am__append_14) $(am__append_15) \ | 418 | $(am__append_13) $(am__append_14) $(am__append_15) \ |
413 | $(am__append_16) $(am__append_17) $(am__append_18) \ | 419 | $(am__append_16) $(am__append_17) $(am__append_18) \ |
414 | $(am__append_19) $(am__append_20) $(am__append_21) | 420 | $(am__append_19) $(am__append_20) $(am__append_21) \ |
421 | $(am__append_22) $(am__append_23) | ||
415 | all: all-recursive | 422 | all: all-recursive |
416 | 423 | ||
417 | .SUFFIXES: | 424 | .SUFFIXES: |
diff --git a/libraries/evas/src/modules/engines/buffer/Makefile.in b/libraries/evas/src/modules/engines/buffer/Makefile.in index 2311344..ec9c0b8 100644 --- a/libraries/evas/src/modules/engines/buffer/Makefile.in +++ b/libraries/evas/src/modules/engines/buffer/Makefile.in | |||
@@ -240,8 +240,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
240 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 240 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
241 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 241 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
242 | PKG_CONFIG = @PKG_CONFIG@ | 242 | PKG_CONFIG = @PKG_CONFIG@ |
243 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
244 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
245 | PNG_CFLAGS = @PNG_CFLAGS@ | 243 | PNG_CFLAGS = @PNG_CFLAGS@ |
246 | PNG_LIBS = @PNG_LIBS@ | 244 | PNG_LIBS = @PNG_LIBS@ |
247 | RANLIB = @RANLIB@ | 245 | RANLIB = @RANLIB@ |
@@ -258,6 +256,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
258 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 256 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
259 | VERSION = @VERSION@ | 257 | VERSION = @VERSION@ |
260 | VMAJ = @VMAJ@ | 258 | VMAJ = @VMAJ@ |
259 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
260 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
261 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 261 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
262 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 262 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
263 | XCB_CFLAGS = @XCB_CFLAGS@ | 263 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -339,6 +339,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
339 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 339 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
340 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 340 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
341 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 341 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
342 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
343 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
344 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
345 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
342 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 346 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
343 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 347 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
344 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 348 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/direct3d/Makefile.in b/libraries/evas/src/modules/engines/direct3d/Makefile.in index 03d892e..85baff8 100644 --- a/libraries/evas/src/modules/engines/direct3d/Makefile.in +++ b/libraries/evas/src/modules/engines/direct3d/Makefile.in | |||
@@ -293,8 +293,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
293 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 293 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
294 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 294 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
295 | PKG_CONFIG = @PKG_CONFIG@ | 295 | PKG_CONFIG = @PKG_CONFIG@ |
296 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
297 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
298 | PNG_CFLAGS = @PNG_CFLAGS@ | 296 | PNG_CFLAGS = @PNG_CFLAGS@ |
299 | PNG_LIBS = @PNG_LIBS@ | 297 | PNG_LIBS = @PNG_LIBS@ |
300 | RANLIB = @RANLIB@ | 298 | RANLIB = @RANLIB@ |
@@ -311,6 +309,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
311 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 309 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
312 | VERSION = @VERSION@ | 310 | VERSION = @VERSION@ |
313 | VMAJ = @VMAJ@ | 311 | VMAJ = @VMAJ@ |
312 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
313 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
314 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 314 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
315 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 315 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
316 | XCB_CFLAGS = @XCB_CFLAGS@ | 316 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -392,6 +392,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
392 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 392 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
393 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 393 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
394 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 394 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
395 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
396 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
397 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
398 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
395 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 399 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
396 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 400 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
397 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 401 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/directfb/Makefile.in b/libraries/evas/src/modules/engines/directfb/Makefile.in index cd5651a..df2f63b 100644 --- a/libraries/evas/src/modules/engines/directfb/Makefile.in +++ b/libraries/evas/src/modules/engines/directfb/Makefile.in | |||
@@ -240,8 +240,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
240 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 240 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
241 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 241 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
242 | PKG_CONFIG = @PKG_CONFIG@ | 242 | PKG_CONFIG = @PKG_CONFIG@ |
243 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
244 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
245 | PNG_CFLAGS = @PNG_CFLAGS@ | 243 | PNG_CFLAGS = @PNG_CFLAGS@ |
246 | PNG_LIBS = @PNG_LIBS@ | 244 | PNG_LIBS = @PNG_LIBS@ |
247 | RANLIB = @RANLIB@ | 245 | RANLIB = @RANLIB@ |
@@ -258,6 +256,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
258 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 256 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
259 | VERSION = @VERSION@ | 257 | VERSION = @VERSION@ |
260 | VMAJ = @VMAJ@ | 258 | VMAJ = @VMAJ@ |
259 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
260 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
261 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 261 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
262 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 262 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
263 | XCB_CFLAGS = @XCB_CFLAGS@ | 263 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -339,6 +339,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
339 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 339 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
340 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 340 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
341 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 341 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
342 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
343 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
344 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
345 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
342 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 346 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
343 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 347 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
344 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 348 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/fb/Makefile.in b/libraries/evas/src/modules/engines/fb/Makefile.in index aec24ff..1e82b34 100644 --- a/libraries/evas/src/modules/engines/fb/Makefile.in +++ b/libraries/evas/src/modules/engines/fb/Makefile.in | |||
@@ -244,8 +244,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
245 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 245 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
246 | PKG_CONFIG = @PKG_CONFIG@ | 246 | PKG_CONFIG = @PKG_CONFIG@ |
247 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
248 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
249 | PNG_CFLAGS = @PNG_CFLAGS@ | 247 | PNG_CFLAGS = @PNG_CFLAGS@ |
250 | PNG_LIBS = @PNG_LIBS@ | 248 | PNG_LIBS = @PNG_LIBS@ |
251 | RANLIB = @RANLIB@ | 249 | RANLIB = @RANLIB@ |
@@ -262,6 +260,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
262 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 260 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
263 | VERSION = @VERSION@ | 261 | VERSION = @VERSION@ |
264 | VMAJ = @VMAJ@ | 262 | VMAJ = @VMAJ@ |
263 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
264 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
265 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 265 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
267 | XCB_CFLAGS = @XCB_CFLAGS@ | 267 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -343,6 +343,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
346 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
347 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
348 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
349 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
346 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 350 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
347 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 351 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
348 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 352 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in b/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in index ceea03d..6e616f4 100644 --- a/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_cocoa/Makefile.in | |||
@@ -258,8 +258,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
258 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 258 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
259 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 259 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
260 | PKG_CONFIG = @PKG_CONFIG@ | 260 | PKG_CONFIG = @PKG_CONFIG@ |
261 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
262 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
263 | PNG_CFLAGS = @PNG_CFLAGS@ | 261 | PNG_CFLAGS = @PNG_CFLAGS@ |
264 | PNG_LIBS = @PNG_LIBS@ | 262 | PNG_LIBS = @PNG_LIBS@ |
265 | RANLIB = @RANLIB@ | 263 | RANLIB = @RANLIB@ |
@@ -276,6 +274,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
276 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 274 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
277 | VERSION = @VERSION@ | 275 | VERSION = @VERSION@ |
278 | VMAJ = @VMAJ@ | 276 | VMAJ = @VMAJ@ |
277 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
278 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
279 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 279 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
280 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 280 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
281 | XCB_CFLAGS = @XCB_CFLAGS@ | 281 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -357,6 +357,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
357 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 357 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
358 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 358 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
359 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 359 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
360 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
361 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
362 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
363 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
360 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 364 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
361 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 365 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
362 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 366 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/gl_common/Makefile.in b/libraries/evas/src/modules/engines/gl_common/Makefile.in index 61ed478..27284f9 100644 --- a/libraries/evas/src/modules/engines/gl_common/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_common/Makefile.in | |||
@@ -245,8 +245,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
245 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 245 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
246 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 246 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
247 | PKG_CONFIG = @PKG_CONFIG@ | 247 | PKG_CONFIG = @PKG_CONFIG@ |
248 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
249 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
250 | PNG_CFLAGS = @PNG_CFLAGS@ | 248 | PNG_CFLAGS = @PNG_CFLAGS@ |
251 | PNG_LIBS = @PNG_LIBS@ | 249 | PNG_LIBS = @PNG_LIBS@ |
252 | RANLIB = @RANLIB@ | 250 | RANLIB = @RANLIB@ |
@@ -263,6 +261,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
263 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 261 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
264 | VERSION = @VERSION@ | 262 | VERSION = @VERSION@ |
265 | VMAJ = @VMAJ@ | 263 | VMAJ = @VMAJ@ |
264 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
265 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
266 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 266 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
267 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 267 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
268 | XCB_CFLAGS = @XCB_CFLAGS@ | 268 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -344,6 +344,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
344 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 344 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
345 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 345 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
346 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 346 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
347 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
348 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
349 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
350 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
347 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 351 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
348 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 352 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
349 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 353 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/gl_common/evas_gl_common.h b/libraries/evas/src/modules/engines/gl_common/evas_gl_common.h index a088748..051fb3b 100644 --- a/libraries/evas/src/modules/engines/gl_common/evas_gl_common.h +++ b/libraries/evas/src/modules/engines/gl_common/evas_gl_common.h | |||
@@ -15,7 +15,7 @@ | |||
15 | 15 | ||
16 | #define GL_GLEXT_PROTOTYPES | 16 | #define GL_GLEXT_PROTOTYPES |
17 | 17 | ||
18 | #ifdef BUILD_ENGINE_GL_QUARTZ | 18 | #ifdef BUILD_ENGINE_GL_COCOA |
19 | # include <OpenGL/gl.h> | 19 | # include <OpenGL/gl.h> |
20 | # include <OpenGL/glext.h> | 20 | # include <OpenGL/glext.h> |
21 | #else | 21 | #else |
diff --git a/libraries/evas/src/modules/engines/gl_common/evas_gl_texture.c b/libraries/evas/src/modules/engines/gl_common/evas_gl_texture.c index c99f4bd..8162cd1 100644 --- a/libraries/evas/src/modules/engines/gl_common/evas_gl_texture.c +++ b/libraries/evas/src/modules/engines/gl_common/evas_gl_texture.c | |||
@@ -109,7 +109,9 @@ _tex_format_index(GLuint format) | |||
109 | static void | 109 | static void |
110 | _tex_2d(int intfmt, int w, int h, int fmt, int type) | 110 | _tex_2d(int intfmt, int w, int h, int fmt, int type) |
111 | { | 111 | { |
112 | #ifdef GL_TEXTURE_INTERNAL_FORMAT | ||
112 | int intfmtret = -1; | 113 | int intfmtret = -1; |
114 | #endif | ||
113 | glTexImage2D(GL_TEXTURE_2D, 0, intfmt, w, h, 0, fmt, type, NULL); | 115 | glTexImage2D(GL_TEXTURE_2D, 0, intfmt, w, h, 0, fmt, type, NULL); |
114 | GLERR(__FUNCTION__, __FILE__, __LINE__, ""); | 116 | GLERR(__FUNCTION__, __FILE__, __LINE__, ""); |
115 | #ifdef GL_TEXTURE_INTERNAL_FORMAT | 117 | #ifdef GL_TEXTURE_INTERNAL_FORMAT |
@@ -479,7 +481,6 @@ _pool_tex_dynamic_new(Evas_Engine_GL_Context *gc, int w, int h, int intformat, i | |||
479 | #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) | 481 | #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) |
480 | int fmt; // EGL_MAP_GL_TEXTURE_RGBA_SEC or EGL_MAP_GL_TEXTURE_RGB_SEC or bust | 482 | int fmt; // EGL_MAP_GL_TEXTURE_RGBA_SEC or EGL_MAP_GL_TEXTURE_RGB_SEC or bust |
481 | int pixtype; // EGL_MAP_GL_TEXTURE_UNSIGNED_BYTE_SEC or bust | 483 | int pixtype; // EGL_MAP_GL_TEXTURE_UNSIGNED_BYTE_SEC or bust |
482 | int glformat; | ||
483 | int attr[] = | 484 | int attr[] = |
484 | { | 485 | { |
485 | EGL_MAP_GL_TEXTURE_WIDTH_SEC, 32, | 486 | EGL_MAP_GL_TEXTURE_WIDTH_SEC, 32, |
@@ -914,7 +915,7 @@ evas_gl_common_texture_update(Evas_GL_Texture *tex, RGBA_Image *im) | |||
914 | tpix = alloca(im->cache_entry.h * sizeof(DATA32)); | 915 | tpix = alloca(im->cache_entry.h * sizeof(DATA32)); |
915 | pd = tpix; | 916 | pd = tpix; |
916 | ps = im->image.data; | 917 | ps = im->image.data; |
917 | for (i = 0; i < im->cache_entry.h; i++) | 918 | for (i = 0; i < (int)im->cache_entry.h; i++) |
918 | { | 919 | { |
919 | *pd = *ps; | 920 | *pd = *ps; |
920 | pd++; | 921 | pd++; |
@@ -929,7 +930,7 @@ evas_gl_common_texture_update(Evas_GL_Texture *tex, RGBA_Image *im) | |||
929 | tpix); | 930 | tpix); |
930 | pd = tpix; | 931 | pd = tpix; |
931 | ps = im->image.data + (im->cache_entry.w - 1); | 932 | ps = im->image.data + (im->cache_entry.w - 1); |
932 | for (i = 0; i < im->cache_entry.h; i++) | 933 | for (i = 0; i < (int)im->cache_entry.h; i++) |
933 | { | 934 | { |
934 | *pd = *ps; | 935 | *pd = *ps; |
935 | pd++; | 936 | pd++; |
diff --git a/libraries/evas/src/modules/engines/gl_sdl/Makefile.in b/libraries/evas/src/modules/engines/gl_sdl/Makefile.in index 5d4135d..bfb29ac 100644 --- a/libraries/evas/src/modules/engines/gl_sdl/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_sdl/Makefile.in | |||
@@ -239,8 +239,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
239 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 239 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
240 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 240 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
241 | PKG_CONFIG = @PKG_CONFIG@ | 241 | PKG_CONFIG = @PKG_CONFIG@ |
242 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
243 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
244 | PNG_CFLAGS = @PNG_CFLAGS@ | 242 | PNG_CFLAGS = @PNG_CFLAGS@ |
245 | PNG_LIBS = @PNG_LIBS@ | 243 | PNG_LIBS = @PNG_LIBS@ |
246 | RANLIB = @RANLIB@ | 244 | RANLIB = @RANLIB@ |
@@ -257,6 +255,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
257 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 255 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
258 | VERSION = @VERSION@ | 256 | VERSION = @VERSION@ |
259 | VMAJ = @VMAJ@ | 257 | VMAJ = @VMAJ@ |
258 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
259 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
260 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 260 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
261 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 261 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
262 | XCB_CFLAGS = @XCB_CFLAGS@ | 262 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -338,6 +338,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
338 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 338 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
339 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 339 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
340 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 340 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
341 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
342 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
343 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
344 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
341 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 345 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
342 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 346 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
343 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 347 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/gl_x11/Makefile.in b/libraries/evas/src/modules/engines/gl_x11/Makefile.in index f589e61..ad4944e 100644 --- a/libraries/evas/src/modules/engines/gl_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/gl_x11/Makefile.in | |||
@@ -242,8 +242,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
242 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 242 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
243 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 243 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
244 | PKG_CONFIG = @PKG_CONFIG@ | 244 | PKG_CONFIG = @PKG_CONFIG@ |
245 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
246 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
247 | PNG_CFLAGS = @PNG_CFLAGS@ | 245 | PNG_CFLAGS = @PNG_CFLAGS@ |
248 | PNG_LIBS = @PNG_LIBS@ | 246 | PNG_LIBS = @PNG_LIBS@ |
249 | RANLIB = @RANLIB@ | 247 | RANLIB = @RANLIB@ |
@@ -260,6 +258,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
260 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 258 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
261 | VERSION = @VERSION@ | 259 | VERSION = @VERSION@ |
262 | VMAJ = @VMAJ@ | 260 | VMAJ = @VMAJ@ |
261 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
262 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
263 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 263 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
264 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 264 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
265 | XCB_CFLAGS = @XCB_CFLAGS@ | 265 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -341,6 +341,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
341 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 341 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
342 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 342 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
343 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 343 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
344 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
345 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
346 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
347 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
344 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 348 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
345 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 349 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
346 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 350 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/gl_x11/evas_engine.c b/libraries/evas/src/modules/engines/gl_x11/evas_engine.c index 38e0c13..fbbd1a2 100644 --- a/libraries/evas/src/modules/engines/gl_x11/evas_engine.c +++ b/libraries/evas/src/modules/engines/gl_x11/evas_engine.c | |||
@@ -584,25 +584,30 @@ _extensions_init(Render_Engine *re) | |||
584 | 584 | ||
585 | #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) | 585 | #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) |
586 | // EGL Extensions | 586 | // EGL Extensions |
587 | evasglexts = glsym_eglQueryString(re->win->egl_disp, EGL_EXTENSIONS); | 587 | if (glsym_eglQueryString) |
588 | { | ||
589 | evasglexts = glsym_eglQueryString(re->win->egl_disp, EGL_EXTENSIONS); | ||
588 | #else | 590 | #else |
589 | evasglexts = glXQueryExtensionsString(re->info->info.display, | 591 | if (glsym_glXQueryExtensionsString) |
590 | re->info->info.screen); | 592 | { |
593 | evasglexts = glXQueryExtensionsString(re->info->info.display, | ||
594 | re->info->info.screen); | ||
591 | #endif | 595 | #endif |
592 | 596 | ||
593 | DBG("--------EvasGL Extensions----------"); | 597 | DBG("--------EvasGL Extensions----------"); |
594 | for (i = 0; _evasgl_ext_entries[i].name != NULL; i++) | 598 | for (i = 0; _evasgl_ext_entries[i].name != NULL; i++) |
595 | { | ||
596 | if ( (strstr(evasglexts, _evasgl_ext_entries[i].name) != NULL) || | ||
597 | (strstr(evasglexts, _evasgl_ext_entries[i].real_name) != NULL) ) | ||
598 | { | 599 | { |
599 | _evasgl_ext_entries[i].supported = 1; | 600 | if ( (strstr(evasglexts, _evasgl_ext_entries[i].name) != NULL) || |
600 | strcat(_evasgl_ext_string, _evasgl_ext_entries[i].name); | 601 | (strstr(evasglexts, _evasgl_ext_entries[i].real_name) != NULL) ) |
601 | strcat(_evasgl_ext_string, " "); | 602 | { |
602 | DBG("\t%s", _evasgl_ext_entries[i].name); | 603 | _evasgl_ext_entries[i].supported = 1; |
604 | strcat(_evasgl_ext_string, _evasgl_ext_entries[i].name); | ||
605 | strcat(_evasgl_ext_string, " "); | ||
606 | DBG("\t%s", _evasgl_ext_entries[i].name); | ||
607 | } | ||
603 | } | 608 | } |
609 | DBG(" "); | ||
604 | } | 610 | } |
605 | DBG(" "); | ||
606 | } | 611 | } |
607 | 612 | ||
608 | int _evas_engine_GL_X11_log_dom = -1; | 613 | int _evas_engine_GL_X11_log_dom = -1; |
@@ -1125,12 +1130,12 @@ eng_output_redraws_rect_add(void *data, int x, int y, int w, int h) | |||
1125 | eng_window_use(re->win); | 1130 | eng_window_use(re->win); |
1126 | evas_gl_common_context_resize(re->win->gl_context, re->win->w, re->win->h, re->win->rot); | 1131 | evas_gl_common_context_resize(re->win->gl_context, re->win->w, re->win->h, re->win->rot); |
1127 | evas_common_tilebuf_add_redraw(re->tb, x, y, w, h); | 1132 | evas_common_tilebuf_add_redraw(re->tb, x, y, w, h); |
1128 | /* | 1133 | |
1129 | RECTS_CLIP_TO_RECT(x, y, w, h, 0, 0, re->win->w, re->win->h); | 1134 | RECTS_CLIP_TO_RECT(x, y, w, h, 0, 0, re->win->w, re->win->h); |
1130 | if ((w <= 0) || (h <= 0)) return; | 1135 | if ((w <= 0) || (h <= 0)) return; |
1131 | if (!re->win->draw.redraw) | 1136 | if (!re->win->draw.redraw) |
1132 | { | 1137 | { |
1133 | #if 0 | 1138 | #if 1 |
1134 | re->win->draw.x1 = x; | 1139 | re->win->draw.x1 = x; |
1135 | re->win->draw.y1 = y; | 1140 | re->win->draw.y1 = y; |
1136 | re->win->draw.x2 = x + w - 1; | 1141 | re->win->draw.x2 = x + w - 1; |
@@ -1150,11 +1155,10 @@ eng_output_redraws_rect_add(void *data, int x, int y, int w, int h) | |||
1150 | if ((y + h - 1) > re->win->draw.y2) re->win->draw.y2 = y + h - 1; | 1155 | if ((y + h - 1) > re->win->draw.y2) re->win->draw.y2 = y + h - 1; |
1151 | } | 1156 | } |
1152 | re->win->draw.redraw = 1; | 1157 | re->win->draw.redraw = 1; |
1153 | */ | ||
1154 | } | 1158 | } |
1155 | 1159 | ||
1156 | static void | 1160 | static void |
1157 | eng_output_redraws_rect_del(void *data __UNUSED__, int x __UNUSED__, int y __UNUSED__, int w __UNUSED__, int h __UNUSED__) | 1161 | eng_output_redraws_rect_del(void *data, int x, int y, int w, int h) |
1158 | { | 1162 | { |
1159 | Render_Engine *re; | 1163 | Render_Engine *re; |
1160 | 1164 | ||
@@ -1244,10 +1248,10 @@ eng_output_redraws_next_update_get(void *data, int *x, int *y, int *w, int *h, i | |||
1244 | //#define FRAMECOUNT 1 | 1248 | //#define FRAMECOUNT 1 |
1245 | 1249 | ||
1246 | #ifdef FRAMECOUNT | 1250 | #ifdef FRAMECOUNT |
1247 | double | 1251 | static double |
1248 | get_time(void) | 1252 | get_time(void) |
1249 | { | 1253 | { |
1250 | struct timeval timev; | 1254 | struct timeval timev; |
1251 | 1255 | ||
1252 | gettimeofday(&timev, NULL); | 1256 | gettimeofday(&timev, NULL); |
1253 | return (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000); | 1257 | return (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000); |
@@ -1391,44 +1395,46 @@ eng_output_flush(void *data) | |||
1391 | { | 1395 | { |
1392 | re->info->callback.pre_swap(re->info->callback.data, re->evas); | 1396 | re->info->callback.pre_swap(re->info->callback.data, re->evas); |
1393 | } | 1397 | } |
1394 | /* | 1398 | #if 1 |
1395 | if ((1) | 1399 | if (1) |
1396 | // (re->win->draw.x1 == 0) && | 1400 | #else |
1397 | // (re->win->draw.y1 == 0) && | 1401 | if ((re->win->draw.x1 == 0) && (re->win->draw.y1 == 0) && (re->win->draw.x2 == (re->win->w - 1)) && (re->win->draw.y2 == (re->win->h - 1))) |
1398 | // (re->win->draw.x2 == (re->win->w - 1)) && | 1402 | #endif |
1399 | // (re->win->draw.y2 == (re->win->h - 1)) | ||
1400 | ) | ||
1401 | */ | ||
1402 | { | 1403 | { |
1404 | // double t, t2 = 0.0; | ||
1405 | // t = get_time(); | ||
1403 | glXSwapBuffers(re->win->disp, re->win->win); | 1406 | glXSwapBuffers(re->win->disp, re->win->win); |
1404 | if (!safe_native) glXWaitGL(); | 1407 | // t = get_time() - t; |
1408 | // if (!safe_native) | ||
1409 | // { | ||
1410 | // t2 = get_time(); | ||
1411 | // glXWaitGL(); | ||
1412 | // t2 = get_time() - t2; | ||
1413 | // } | ||
1414 | // printf("swap: %3.5f (%3.5fms), x wait gl: %3.5f (%3.5fms)\n", | ||
1415 | // t, t * 1000.0, t2, t2 * 1000.0); | ||
1405 | } | 1416 | } |
1406 | /* | ||
1407 | else | 1417 | else |
1408 | { | 1418 | { |
1409 | // FIXME: this doesn't work.. why oh why? | 1419 | // FIXME: this doesn't work.. why oh why? |
1410 | int sx, sy, sw, sh; | 1420 | int sx, sy, sw, sh; |
1411 | 1421 | ||
1412 | // fimxe - reset when done | ||
1413 | // glEnable(GL_SCISSOR_TEST); | ||
1414 | glDrawBuffer(GL_FRONT); | ||
1415 | |||
1416 | sx = re->win->draw.x1; | 1422 | sx = re->win->draw.x1; |
1417 | sy = re->win->draw.y1; | 1423 | sy = re->win->draw.y1; |
1418 | sw = (re->win->draw.x2 - re->win->draw.x1) + 1; | 1424 | sw = (re->win->draw.x2 - re->win->draw.x1) + 1; |
1419 | sh = (re->win->draw.y2 - re->win->draw.y1) + 1; | 1425 | sh = (re->win->draw.y2 - re->win->draw.y1) + 1; |
1420 | sy = re->win->h - sy - sh; | 1426 | sy = re->win->h - sy - sh; |
1421 | 1427 | ||
1422 | // glScissor(sx, sy, sw, sh); | 1428 | glBitmap(0, 0, 0, 0, sx, re->win->h - sy, NULL); |
1423 | glRasterPos2i(sx, re->win->h - sy); | 1429 | glEnable(GL_SCISSOR_TEST); |
1430 | glScissor(sx, sy, sw, sh); | ||
1431 | glDrawBuffer(GL_FRONT); | ||
1424 | glCopyPixels(sx, sy, sw, sh, GL_COLOR); | 1432 | glCopyPixels(sx, sy, sw, sh, GL_COLOR); |
1425 | glRasterPos2i(0, 0); | ||
1426 | |||
1427 | // glDisable(GL_SCISSOR_TEST); | ||
1428 | glDrawBuffer(GL_BACK); | 1433 | glDrawBuffer(GL_BACK); |
1434 | glDisable(GL_SCISSOR_TEST); | ||
1435 | glBitmap(0, 0, 0, 0, 0, 0, NULL); | ||
1429 | glFlush(); | 1436 | glFlush(); |
1430 | } | 1437 | } |
1431 | */ | ||
1432 | if (re->info->callback.post_swap) | 1438 | if (re->info->callback.post_swap) |
1433 | { | 1439 | { |
1434 | re->info->callback.post_swap(re->info->callback.data, re->evas); | 1440 | re->info->callback.post_swap(re->info->callback.data, re->evas); |
@@ -3469,7 +3475,10 @@ evgl_evasglCreateImage(int target, void* buffer, int *attrib_list) | |||
3469 | attrib_list); | 3475 | attrib_list); |
3470 | } | 3476 | } |
3471 | else | 3477 | else |
3472 | ERR("Invalid Engine... (Can't acccess EGL Display)\n"); | 3478 | { |
3479 | ERR("Invalid Engine... (Can't acccess EGL Display)\n"); | ||
3480 | return NULL; | ||
3481 | } | ||
3473 | } | 3482 | } |
3474 | 3483 | ||
3475 | static void | 3484 | static void |
@@ -3826,6 +3835,18 @@ eng_image_animated_frame_set(void *data __UNUSED__, void *image, int frame_index | |||
3826 | return EINA_TRUE; | 3835 | return EINA_TRUE; |
3827 | } | 3836 | } |
3828 | 3837 | ||
3838 | static Eina_Bool | ||
3839 | eng_image_can_region_get(void *data __UNUSED__, void *image) | ||
3840 | { | ||
3841 | Evas_GL_Image *gim = image; | ||
3842 | Image_Entry *im; | ||
3843 | if (!gim) return EINA_FALSE; | ||
3844 | im = (Image_Entry *)gim->im; | ||
3845 | if (!im) return EINA_FALSE; | ||
3846 | return ((Evas_Image_Load_Func*) im->info.loader)->do_region; | ||
3847 | } | ||
3848 | |||
3849 | |||
3829 | static void | 3850 | static void |
3830 | eng_image_max_size_get(void *data, int *maxw, int *maxh) | 3851 | eng_image_max_size_get(void *data, int *maxw, int *maxh) |
3831 | { | 3852 | { |
@@ -3903,6 +3924,7 @@ module_open(Evas_Module *em) | |||
3903 | ORD(image_format_get); | 3924 | ORD(image_format_get); |
3904 | ORD(image_colorspace_set); | 3925 | ORD(image_colorspace_set); |
3905 | ORD(image_colorspace_get); | 3926 | ORD(image_colorspace_get); |
3927 | ORD(image_can_region_get); | ||
3906 | ORD(image_mask_create); | 3928 | ORD(image_mask_create); |
3907 | ORD(image_native_set); | 3929 | ORD(image_native_set); |
3908 | ORD(image_native_get); | 3930 | ORD(image_native_get); |
diff --git a/libraries/evas/src/modules/engines/gl_x11/evas_x_main.c b/libraries/evas/src/modules/engines/gl_x11/evas_x_main.c index 323c976..c29ab67 100644 --- a/libraries/evas/src/modules/engines/gl_x11/evas_x_main.c +++ b/libraries/evas/src/modules/engines/gl_x11/evas_x_main.c | |||
@@ -531,13 +531,13 @@ eng_window_free(Evas_GL_X11_Window *gw) | |||
531 | #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) | 531 | #if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) |
532 | if (gw->egl_surface[0] != EGL_NO_SURFACE) | 532 | if (gw->egl_surface[0] != EGL_NO_SURFACE) |
533 | eglDestroySurface(gw->egl_disp, gw->egl_surface[0]); | 533 | eglDestroySurface(gw->egl_disp, gw->egl_surface[0]); |
534 | eglMakeCurrent(gw->egl_disp, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
534 | if (ref == 0) | 535 | if (ref == 0) |
535 | { | 536 | { |
536 | if (context) eglDestroyContext(gw->egl_disp, context); | 537 | if (context) eglDestroyContext(gw->egl_disp, context); |
537 | eglTerminate(gw->egl_disp); | 538 | eglTerminate(gw->egl_disp); |
538 | context = EGL_NO_CONTEXT; | 539 | context = EGL_NO_CONTEXT; |
539 | } | 540 | } |
540 | eglMakeCurrent(gw->egl_disp, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
541 | #else | 541 | #else |
542 | if (gw->glxwin) glXDestroyWindow(gw->disp, gw->glxwin); | 542 | if (gw->glxwin) glXDestroyWindow(gw->disp, gw->glxwin); |
543 | if (ref == 0) | 543 | if (ref == 0) |
diff --git a/libraries/evas/src/modules/engines/psl1ght/Makefile.in b/libraries/evas/src/modules/engines/psl1ght/Makefile.in index 6b553ac..f8524a4 100644 --- a/libraries/evas/src/modules/engines/psl1ght/Makefile.in +++ b/libraries/evas/src/modules/engines/psl1ght/Makefile.in | |||
@@ -240,8 +240,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
240 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 240 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
241 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 241 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
242 | PKG_CONFIG = @PKG_CONFIG@ | 242 | PKG_CONFIG = @PKG_CONFIG@ |
243 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
244 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
245 | PNG_CFLAGS = @PNG_CFLAGS@ | 243 | PNG_CFLAGS = @PNG_CFLAGS@ |
246 | PNG_LIBS = @PNG_LIBS@ | 244 | PNG_LIBS = @PNG_LIBS@ |
247 | RANLIB = @RANLIB@ | 245 | RANLIB = @RANLIB@ |
@@ -258,6 +256,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
258 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 256 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
259 | VERSION = @VERSION@ | 257 | VERSION = @VERSION@ |
260 | VMAJ = @VMAJ@ | 258 | VMAJ = @VMAJ@ |
259 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
260 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
261 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 261 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
262 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 262 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
263 | XCB_CFLAGS = @XCB_CFLAGS@ | 263 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -339,6 +339,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
339 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 339 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
340 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 340 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
341 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 341 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
342 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
343 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
344 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
345 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
342 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 346 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
343 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 347 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
344 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 348 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_16/Makefile.in b/libraries/evas/src/modules/engines/software_16/Makefile.in index 1fc95cf..88164e1 100644 --- a/libraries/evas/src/modules/engines/software_16/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16/Makefile.in | |||
@@ -235,8 +235,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
235 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 235 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
236 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 236 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
237 | PKG_CONFIG = @PKG_CONFIG@ | 237 | PKG_CONFIG = @PKG_CONFIG@ |
238 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
239 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
240 | PNG_CFLAGS = @PNG_CFLAGS@ | 238 | PNG_CFLAGS = @PNG_CFLAGS@ |
241 | PNG_LIBS = @PNG_LIBS@ | 239 | PNG_LIBS = @PNG_LIBS@ |
242 | RANLIB = @RANLIB@ | 240 | RANLIB = @RANLIB@ |
@@ -253,6 +251,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
253 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 251 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
254 | VERSION = @VERSION@ | 252 | VERSION = @VERSION@ |
255 | VMAJ = @VMAJ@ | 253 | VMAJ = @VMAJ@ |
254 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
255 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
256 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 256 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
257 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 257 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
258 | XCB_CFLAGS = @XCB_CFLAGS@ | 258 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -334,6 +334,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
334 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 334 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
335 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 335 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
336 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 336 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
337 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
338 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
339 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
340 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 341 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 342 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 343 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in b/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in index f588c4f..0039410 100644 --- a/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_ddraw/Makefile.in | |||
@@ -265,8 +265,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
265 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 265 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
266 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 266 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
267 | PKG_CONFIG = @PKG_CONFIG@ | 267 | PKG_CONFIG = @PKG_CONFIG@ |
268 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
269 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
270 | PNG_CFLAGS = @PNG_CFLAGS@ | 268 | PNG_CFLAGS = @PNG_CFLAGS@ |
271 | PNG_LIBS = @PNG_LIBS@ | 269 | PNG_LIBS = @PNG_LIBS@ |
272 | RANLIB = @RANLIB@ | 270 | RANLIB = @RANLIB@ |
@@ -283,6 +281,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
283 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 281 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
284 | VERSION = @VERSION@ | 282 | VERSION = @VERSION@ |
285 | VMAJ = @VMAJ@ | 283 | VMAJ = @VMAJ@ |
284 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
285 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
286 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 286 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
287 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 287 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
288 | XCB_CFLAGS = @XCB_CFLAGS@ | 288 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -364,6 +364,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
364 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 364 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
365 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 365 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
366 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 366 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
367 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
368 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
369 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
370 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
367 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 371 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
368 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 372 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
369 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 373 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in b/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in index 219e392..6ebf0db 100644 --- a/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_sdl/Makefile.in | |||
@@ -238,8 +238,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
238 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 238 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
239 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 239 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
240 | PKG_CONFIG = @PKG_CONFIG@ | 240 | PKG_CONFIG = @PKG_CONFIG@ |
241 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
242 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
243 | PNG_CFLAGS = @PNG_CFLAGS@ | 241 | PNG_CFLAGS = @PNG_CFLAGS@ |
244 | PNG_LIBS = @PNG_LIBS@ | 242 | PNG_LIBS = @PNG_LIBS@ |
245 | RANLIB = @RANLIB@ | 243 | RANLIB = @RANLIB@ |
@@ -256,6 +254,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
256 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 254 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
257 | VERSION = @VERSION@ | 255 | VERSION = @VERSION@ |
258 | VMAJ = @VMAJ@ | 256 | VMAJ = @VMAJ@ |
257 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
258 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
259 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 259 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
260 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 260 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
261 | XCB_CFLAGS = @XCB_CFLAGS@ | 261 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -337,6 +337,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
337 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 337 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
338 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 338 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
339 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 339 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
340 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
341 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
342 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
343 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
340 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 344 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
341 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 345 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
342 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 346 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_16_wince/Makefile.in b/libraries/evas/src/modules/engines/software_16_wince/Makefile.in index 571891e..95c484e 100644 --- a/libraries/evas/src/modules/engines/software_16_wince/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_wince/Makefile.in | |||
@@ -271,8 +271,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
271 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 271 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
272 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 272 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
273 | PKG_CONFIG = @PKG_CONFIG@ | 273 | PKG_CONFIG = @PKG_CONFIG@ |
274 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
275 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
276 | PNG_CFLAGS = @PNG_CFLAGS@ | 274 | PNG_CFLAGS = @PNG_CFLAGS@ |
277 | PNG_LIBS = @PNG_LIBS@ | 275 | PNG_LIBS = @PNG_LIBS@ |
278 | RANLIB = @RANLIB@ | 276 | RANLIB = @RANLIB@ |
@@ -289,6 +287,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
289 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 287 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
290 | VERSION = @VERSION@ | 288 | VERSION = @VERSION@ |
291 | VMAJ = @VMAJ@ | 289 | VMAJ = @VMAJ@ |
290 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
291 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
292 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 292 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
293 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 293 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
294 | XCB_CFLAGS = @XCB_CFLAGS@ | 294 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -370,6 +370,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
370 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 370 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
371 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 371 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
372 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 372 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
373 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
374 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
375 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
376 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
373 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 377 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
374 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 378 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
375 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 379 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_16_x11/Makefile.in b/libraries/evas/src/modules/engines/software_16_x11/Makefile.in index be43dad..3232681 100644 --- a/libraries/evas/src/modules/engines/software_16_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/software_16_x11/Makefile.in | |||
@@ -244,8 +244,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
245 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 245 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
246 | PKG_CONFIG = @PKG_CONFIG@ | 246 | PKG_CONFIG = @PKG_CONFIG@ |
247 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
248 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
249 | PNG_CFLAGS = @PNG_CFLAGS@ | 247 | PNG_CFLAGS = @PNG_CFLAGS@ |
250 | PNG_LIBS = @PNG_LIBS@ | 248 | PNG_LIBS = @PNG_LIBS@ |
251 | RANLIB = @RANLIB@ | 249 | RANLIB = @RANLIB@ |
@@ -262,6 +260,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
262 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 260 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
263 | VERSION = @VERSION@ | 261 | VERSION = @VERSION@ |
264 | VMAJ = @VMAJ@ | 262 | VMAJ = @VMAJ@ |
263 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
264 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
265 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 265 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
267 | XCB_CFLAGS = @XCB_CFLAGS@ | 267 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -343,6 +343,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
346 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
347 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
348 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
349 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
346 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 350 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
347 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 351 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
348 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 352 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_8/Makefile.in b/libraries/evas/src/modules/engines/software_8/Makefile.in index bf16fcf..3ee42fd 100644 --- a/libraries/evas/src/modules/engines/software_8/Makefile.in +++ b/libraries/evas/src/modules/engines/software_8/Makefile.in | |||
@@ -234,8 +234,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
234 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 234 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
235 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 235 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
236 | PKG_CONFIG = @PKG_CONFIG@ | 236 | PKG_CONFIG = @PKG_CONFIG@ |
237 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
238 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
239 | PNG_CFLAGS = @PNG_CFLAGS@ | 237 | PNG_CFLAGS = @PNG_CFLAGS@ |
240 | PNG_LIBS = @PNG_LIBS@ | 238 | PNG_LIBS = @PNG_LIBS@ |
241 | RANLIB = @RANLIB@ | 239 | RANLIB = @RANLIB@ |
@@ -252,6 +250,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
252 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 250 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
253 | VERSION = @VERSION@ | 251 | VERSION = @VERSION@ |
254 | VMAJ = @VMAJ@ | 252 | VMAJ = @VMAJ@ |
253 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
254 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
255 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 255 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
256 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 256 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
257 | XCB_CFLAGS = @XCB_CFLAGS@ | 257 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -333,6 +333,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
333 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 333 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
334 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 334 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
335 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 335 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
336 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
337 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
338 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
339 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
336 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 340 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
337 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 341 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
338 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 342 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_8_x11/Makefile.in b/libraries/evas/src/modules/engines/software_8_x11/Makefile.in index fa88a4d..22577af 100644 --- a/libraries/evas/src/modules/engines/software_8_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/software_8_x11/Makefile.in | |||
@@ -244,8 +244,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
245 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 245 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
246 | PKG_CONFIG = @PKG_CONFIG@ | 246 | PKG_CONFIG = @PKG_CONFIG@ |
247 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
248 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
249 | PNG_CFLAGS = @PNG_CFLAGS@ | 247 | PNG_CFLAGS = @PNG_CFLAGS@ |
250 | PNG_LIBS = @PNG_LIBS@ | 248 | PNG_LIBS = @PNG_LIBS@ |
251 | RANLIB = @RANLIB@ | 249 | RANLIB = @RANLIB@ |
@@ -262,6 +260,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
262 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 260 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
263 | VERSION = @VERSION@ | 261 | VERSION = @VERSION@ |
264 | VMAJ = @VMAJ@ | 262 | VMAJ = @VMAJ@ |
263 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
264 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
265 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 265 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
267 | XCB_CFLAGS = @XCB_CFLAGS@ | 267 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -343,6 +343,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
346 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
347 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
348 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
349 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
346 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 350 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
347 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 351 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
348 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 352 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_ddraw/Makefile.in b/libraries/evas/src/modules/engines/software_ddraw/Makefile.in index be4c977..da65f92 100644 --- a/libraries/evas/src/modules/engines/software_ddraw/Makefile.in +++ b/libraries/evas/src/modules/engines/software_ddraw/Makefile.in | |||
@@ -266,8 +266,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
266 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 266 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
267 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 267 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
268 | PKG_CONFIG = @PKG_CONFIG@ | 268 | PKG_CONFIG = @PKG_CONFIG@ |
269 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
270 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
271 | PNG_CFLAGS = @PNG_CFLAGS@ | 269 | PNG_CFLAGS = @PNG_CFLAGS@ |
272 | PNG_LIBS = @PNG_LIBS@ | 270 | PNG_LIBS = @PNG_LIBS@ |
273 | RANLIB = @RANLIB@ | 271 | RANLIB = @RANLIB@ |
@@ -284,6 +282,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
284 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 282 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
285 | VERSION = @VERSION@ | 283 | VERSION = @VERSION@ |
286 | VMAJ = @VMAJ@ | 284 | VMAJ = @VMAJ@ |
285 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
286 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
287 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 287 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
288 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 288 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
289 | XCB_CFLAGS = @XCB_CFLAGS@ | 289 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -365,6 +365,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
365 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 365 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
366 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 366 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
367 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 367 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
368 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
369 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
370 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
371 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
368 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 372 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
369 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 373 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
370 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 374 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_gdi/Makefile.in b/libraries/evas/src/modules/engines/software_gdi/Makefile.in index 5dea632..a2421ef 100644 --- a/libraries/evas/src/modules/engines/software_gdi/Makefile.in +++ b/libraries/evas/src/modules/engines/software_gdi/Makefile.in | |||
@@ -249,8 +249,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
249 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 249 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
250 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 250 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
251 | PKG_CONFIG = @PKG_CONFIG@ | 251 | PKG_CONFIG = @PKG_CONFIG@ |
252 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
253 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
254 | PNG_CFLAGS = @PNG_CFLAGS@ | 252 | PNG_CFLAGS = @PNG_CFLAGS@ |
255 | PNG_LIBS = @PNG_LIBS@ | 253 | PNG_LIBS = @PNG_LIBS@ |
256 | RANLIB = @RANLIB@ | 254 | RANLIB = @RANLIB@ |
@@ -267,6 +265,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
267 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 265 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
268 | VERSION = @VERSION@ | 266 | VERSION = @VERSION@ |
269 | VMAJ = @VMAJ@ | 267 | VMAJ = @VMAJ@ |
268 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
269 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
270 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 270 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
271 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 271 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
272 | XCB_CFLAGS = @XCB_CFLAGS@ | 272 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -348,6 +348,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
348 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 348 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
349 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 349 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
350 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 350 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
351 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
352 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
353 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
354 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
351 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 355 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
352 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 356 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
353 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 357 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_generic/Makefile.in b/libraries/evas/src/modules/engines/software_generic/Makefile.in index 6d75f23..4f66536 100644 --- a/libraries/evas/src/modules/engines/software_generic/Makefile.in +++ b/libraries/evas/src/modules/engines/software_generic/Makefile.in | |||
@@ -236,8 +236,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
236 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 236 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
237 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 237 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
238 | PKG_CONFIG = @PKG_CONFIG@ | 238 | PKG_CONFIG = @PKG_CONFIG@ |
239 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
240 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
241 | PNG_CFLAGS = @PNG_CFLAGS@ | 239 | PNG_CFLAGS = @PNG_CFLAGS@ |
242 | PNG_LIBS = @PNG_LIBS@ | 240 | PNG_LIBS = @PNG_LIBS@ |
243 | RANLIB = @RANLIB@ | 241 | RANLIB = @RANLIB@ |
@@ -254,6 +252,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
254 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 252 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
255 | VERSION = @VERSION@ | 253 | VERSION = @VERSION@ |
256 | VMAJ = @VMAJ@ | 254 | VMAJ = @VMAJ@ |
255 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
256 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
257 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 257 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
258 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 258 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
259 | XCB_CFLAGS = @XCB_CFLAGS@ | 259 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -335,6 +335,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
335 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 335 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
336 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 336 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
337 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 337 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
338 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
339 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
340 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
341 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
338 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 342 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
339 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 343 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
340 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 344 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_generic/evas_engine.c b/libraries/evas/src/modules/engines/software_generic/evas_engine.c index b2c53c5..48944dd 100644 --- a/libraries/evas/src/modules/engines/software_generic/evas_engine.c +++ b/libraries/evas/src/modules/engines/software_generic/evas_engine.c | |||
@@ -1,6 +1,275 @@ | |||
1 | #include "evas_common.h" /* Also includes international specific stuff */ | 1 | #include "evas_common.h" /* Also includes international specific stuff */ |
2 | #include "evas_private.h" | 2 | #include "evas_private.h" |
3 | 3 | ||
4 | #ifdef HAVE_DLSYM | ||
5 | # include <dlfcn.h> /* dlopen,dlclose,etc */ | ||
6 | |||
7 | # define EVAS_GL 1 | ||
8 | # define EVAS_GL_NO_GL_H_CHECK 1 | ||
9 | # include "Evas_GL.h" | ||
10 | |||
11 | #else | ||
12 | # warning software_generic will not be able to have Evas_GL API. | ||
13 | #endif | ||
14 | |||
15 | #ifdef EVAS_GL | ||
16 | //----------------------------------// | ||
17 | // OSMesa... | ||
18 | |||
19 | #define OSMESA_MAJOR_VERSION 6 | ||
20 | #define OSMESA_MINOR_VERSION 5 | ||
21 | #define OSMESA_PATCH_VERSION 0 | ||
22 | |||
23 | /* | ||
24 | * Values for the format parameter of OSMesaCreateContext() | ||
25 | * New in version 2.0. | ||
26 | */ | ||
27 | #define OSMESA_COLOR_INDEX GL_COLOR_INDEX | ||
28 | #define OSMESA_RGBA GL_RGBA | ||
29 | #define OSMESA_BGRA 0x1 | ||
30 | #define OSMESA_ARGB 0x2 | ||
31 | #define OSMESA_RGB GL_RGB | ||
32 | #define OSMESA_BGR 0x4 | ||
33 | #define OSMESA_RGB_565 0x5 | ||
34 | |||
35 | |||
36 | /* | ||
37 | * OSMesaPixelStore() parameters: | ||
38 | * New in version 2.0. | ||
39 | */ | ||
40 | #define OSMESA_ROW_LENGTH 0x10 | ||
41 | #define OSMESA_Y_UP 0x11 | ||
42 | |||
43 | |||
44 | /* | ||
45 | * Accepted by OSMesaGetIntegerv: | ||
46 | */ | ||
47 | #define OSMESA_WIDTH 0x20 | ||
48 | #define OSMESA_HEIGHT 0x21 | ||
49 | #define OSMESA_FORMAT 0x22 | ||
50 | #define OSMESA_TYPE 0x23 | ||
51 | #define OSMESA_MAX_WIDTH 0x24 /* new in 4.0 */ | ||
52 | #define OSMESA_MAX_HEIGHT 0x25 /* new in 4.0 */ | ||
53 | |||
54 | |||
55 | typedef void (*OSMESAproc)(); | ||
56 | typedef struct osmesa_context *OSMesaContext; | ||
57 | #endif | ||
58 | |||
59 | typedef struct _Render_Engine_GL_Surface Render_Engine_GL_Surface; | ||
60 | typedef struct _Render_Engine_GL_Context Render_Engine_GL_Context; | ||
61 | |||
62 | struct _Render_Engine_GL_Surface | ||
63 | { | ||
64 | int initialized; | ||
65 | int w, h; | ||
66 | |||
67 | #ifdef EVAS_GL | ||
68 | GLenum internal_fmt; | ||
69 | #endif | ||
70 | int internal_cpp; // Component per pixel. ie. RGB = 3 | ||
71 | |||
72 | int depth_bits; | ||
73 | int stencil_bits; | ||
74 | |||
75 | // Data | ||
76 | void *buffer; | ||
77 | |||
78 | Render_Engine_GL_Context *current_ctx; | ||
79 | }; | ||
80 | |||
81 | #ifdef EVAS_GL | ||
82 | struct _Render_Engine_GL_Context | ||
83 | { | ||
84 | int initialized; | ||
85 | |||
86 | OSMesaContext context; | ||
87 | |||
88 | Render_Engine_GL_Context *share_ctx; | ||
89 | |||
90 | Render_Engine_GL_Surface *current_sfc; | ||
91 | }; | ||
92 | |||
93 | //------------------------------------------------------// | ||
94 | typedef void (*_eng_fn) (void ); | ||
95 | typedef _eng_fn (*glsym_func_eng_fn) (); | ||
96 | typedef void (*glsym_func_void) (); | ||
97 | typedef unsigned int (*glsym_func_uint) (); | ||
98 | typedef int (*glsym_func_int) (); | ||
99 | typedef unsigned char (*glsym_func_uchar) (); | ||
100 | typedef unsigned char *(*glsym_func_uchar_ptr) (); | ||
101 | typedef const unsigned char *(*glsym_func_const_uchar_ptr) (); | ||
102 | typedef char const *(*glsym_func_char_const_ptr) (); | ||
103 | typedef GLboolean (*glsym_func_bool) (); | ||
104 | typedef OSMesaContext (*glsym_func_osm_ctx) (); | ||
105 | //------------------------------------------------------// | ||
106 | |||
107 | /* Function table for GL APIs */ | ||
108 | static Evas_GL_API gl_funcs; | ||
109 | static void *gl_lib_handle; | ||
110 | static int gl_lib_is_gles = 0; | ||
111 | static Evas_GL_API gl_funcs; | ||
112 | |||
113 | //------------------------------------------------------// | ||
114 | // OSMesa APIS... | ||
115 | static OSMesaContext (*_sym_OSMesaCreateContextExt) (GLenum format, GLint depthBits, GLint stencilBits, GLint accumBits, OSMesaContext sharelist) = NULL; | ||
116 | static void (*_sym_OSMesaDestroyContext) (OSMesaContext ctx) = NULL; | ||
117 | static GLboolean (*_sym_OSMesaMakeCurrent) (OSMesaContext ctx, void *buffer, GLenum type, GLsizei width, GLsizei height) = NULL; | ||
118 | static void (*_sym_OSMesaPixelStore) (GLint pname, GLint value) = NULL; | ||
119 | static OSMESAproc (*_sym_OSMesaGetProcAddress) (const char *funcName); | ||
120 | |||
121 | |||
122 | //------------------------------------------------------// | ||
123 | // GLES 2.0 APIs... | ||
124 | static void (*_sym_glActiveTexture) (GLenum texture) = NULL; | ||
125 | static void (*_sym_glAttachShader) (GLuint program, GLuint shader) = NULL; | ||
126 | static void (*_sym_glBindAttribLocation) (GLuint program, GLuint index, const char* name) = NULL; | ||
127 | static void (*_sym_glBindBuffer) (GLenum target, GLuint buffer) = NULL; | ||
128 | static void (*_sym_glBindFramebuffer) (GLenum target, GLuint framebuffer) = NULL; | ||
129 | static void (*_sym_glBindRenderbuffer) (GLenum target, GLuint renderbuffer) = NULL; | ||
130 | static void (*_sym_glBindTexture) (GLenum target, GLuint texture) = NULL; | ||
131 | static void (*_sym_glBlendColor) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) = NULL; | ||
132 | static void (*_sym_glBlendEquation) (GLenum mode) = NULL; | ||
133 | static void (*_sym_glBlendEquationSeparate) (GLenum modeRGB, GLenum modeAlpha) = NULL; | ||
134 | static void (*_sym_glBlendFunc) (GLenum sfactor, GLenum dfactor) = NULL; | ||
135 | static void (*_sym_glBlendFuncSeparate) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha) = NULL; | ||
136 | static void (*_sym_glBufferData) (GLenum target, GLsizeiptr size, const void* data, GLenum usage) = NULL; | ||
137 | static void (*_sym_glBufferSubData) (GLenum target, GLintptr offset, GLsizeiptr size, const void* data) = NULL; | ||
138 | static GLenum (*_sym_glCheckFramebufferStatus) (GLenum target) = NULL; | ||
139 | static void (*_sym_glClear) (GLbitfield mask) = NULL; | ||
140 | static void (*_sym_glClearColor) (GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha) = NULL; | ||
141 | static void (*_sym_glClearDepthf) (GLclampf depth) = NULL; | ||
142 | static void (*_sym_glClearStencil) (GLint s) = NULL; | ||
143 | static void (*_sym_glColorMask) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha) = NULL; | ||
144 | static void (*_sym_glCompileShader) (GLuint shader) = NULL; | ||
145 | static void (*_sym_glCompressedTexImage2D) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void* data) = NULL; | ||
146 | static void (*_sym_glCompressedTexSubImage2D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void* data) = NULL; | ||
147 | static void (*_sym_glCopyTexImage2D) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border) = NULL; | ||
148 | static void (*_sym_glCopyTexSubImage2D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height) = NULL; | ||
149 | static GLuint (*_sym_glCreateProgram) (void) = NULL; | ||
150 | static GLuint (*_sym_glCreateShader) (GLenum type) = NULL; | ||
151 | static void (*_sym_glCullFace) (GLenum mode) = NULL; | ||
152 | static void (*_sym_glDeleteBuffers) (GLsizei n, const GLuint* buffers) = NULL; | ||
153 | static void (*_sym_glDeleteFramebuffers) (GLsizei n, const GLuint* framebuffers) = NULL; | ||
154 | static void (*_sym_glDeleteProgram) (GLuint program) = NULL; | ||
155 | static void (*_sym_glDeleteRenderbuffers) (GLsizei n, const GLuint* renderbuffers) = NULL; | ||
156 | static void (*_sym_glDeleteShader) (GLuint shader) = NULL; | ||
157 | static void (*_sym_glDeleteTextures) (GLsizei n, const GLuint* textures) = NULL; | ||
158 | static void (*_sym_glDepthFunc) (GLenum func) = NULL; | ||
159 | static void (*_sym_glDepthMask) (GLboolean flag) = NULL; | ||
160 | static void (*_sym_glDepthRangef) (GLclampf zNear, GLclampf zFar) = NULL; | ||
161 | static void (*_sym_glDetachShader) (GLuint program, GLuint shader) = NULL; | ||
162 | static void (*_sym_glDisable) (GLenum cap) = NULL; | ||
163 | static void (*_sym_glDisableVertexAttribArray) (GLuint index) = NULL; | ||
164 | static void (*_sym_glDrawArrays) (GLenum mode, GLint first, GLsizei count) = NULL; | ||
165 | static void (*_sym_glDrawElements) (GLenum mode, GLsizei count, GLenum type, const void* indices) = NULL; | ||
166 | static void (*_sym_glEnable) (GLenum cap) = NULL; | ||
167 | static void (*_sym_glEnableVertexAttribArray) (GLuint index) = NULL; | ||
168 | static void (*_sym_glFinish) (void) = NULL; | ||
169 | static void (*_sym_glFlush) (void) = NULL; | ||
170 | static void (*_sym_glFramebufferRenderbuffer) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer) = NULL; | ||
171 | static void (*_sym_glFramebufferTexture2D) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level) = NULL; | ||
172 | static void (*_sym_glFrontFace) (GLenum mode) = NULL; | ||
173 | static void (*_sym_glGenBuffers) (GLsizei n, GLuint* buffers) = NULL; | ||
174 | static void (*_sym_glGenerateMipmap) (GLenum target) = NULL; | ||
175 | static void (*_sym_glGenFramebuffers) (GLsizei n, GLuint* framebuffers) = NULL; | ||
176 | static void (*_sym_glGenRenderbuffers) (GLsizei n, GLuint* renderbuffers) = NULL; | ||
177 | static void (*_sym_glGenTextures) (GLsizei n, GLuint* textures) = NULL; | ||
178 | static void (*_sym_glGetActiveAttrib) (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) = NULL; | ||
179 | static void (*_sym_glGetActiveUniform) (GLuint program, GLuint index, GLsizei bufsize, GLsizei* length, GLint* size, GLenum* type, char* name) = NULL; | ||
180 | static void (*_sym_glGetAttachedShaders) (GLuint program, GLsizei maxcount, GLsizei* count, GLuint* shaders) = NULL; | ||
181 | static int (*_sym_glGetAttribLocation) (GLuint program, const char* name) = NULL; | ||
182 | static void (*_sym_glGetBooleanv) (GLenum pname, GLboolean* params) = NULL; | ||
183 | static void (*_sym_glGetBufferParameteriv) (GLenum target, GLenum pname, GLint* params) = NULL; | ||
184 | static GLenum (*_sym_glGetError) (void) = NULL; | ||
185 | static void (*_sym_glGetFloatv) (GLenum pname, GLfloat* params) = NULL; | ||
186 | static void (*_sym_glGetFramebufferAttachmentParameteriv) (GLenum target, GLenum attachment, GLenum pname, GLint* params) = NULL; | ||
187 | static void (*_sym_glGetIntegerv) (GLenum pname, GLint* params) = NULL; | ||
188 | static void (*_sym_glGetProgramiv) (GLuint program, GLenum pname, GLint* params) = NULL; | ||
189 | static void (*_sym_glGetProgramInfoLog) (GLuint program, GLsizei bufsize, GLsizei* length, char* infolog) = NULL; | ||
190 | static void (*_sym_glGetRenderbufferParameteriv) (GLenum target, GLenum pname, GLint* params) = NULL; | ||
191 | static void (*_sym_glGetShaderiv) (GLuint shader, GLenum pname, GLint* params) = NULL; | ||
192 | static void (*_sym_glGetShaderInfoLog) (GLuint shader, GLsizei bufsize, GLsizei* length, char* infolog) = NULL; | ||
193 | static void (*_sym_glGetShaderPrecisionFormat) (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) = NULL; | ||
194 | static void (*_sym_glGetShaderSource) (GLuint shader, GLsizei bufsize, GLsizei* length, char* source) = NULL; | ||
195 | static const GLubyte *(*_sym_glGetString) (GLenum name) = NULL; | ||
196 | static void (*_sym_glGetTexParameterfv) (GLenum target, GLenum pname, GLfloat* params) = NULL; | ||
197 | static void (*_sym_glGetTexParameteriv) (GLenum target, GLenum pname, GLint* params) = NULL; | ||
198 | static void (*_sym_glGetUniformfv) (GLuint program, GLint location, GLfloat* params) = NULL; | ||
199 | static void (*_sym_glGetUniformiv) (GLuint program, GLint location, GLint* params) = NULL; | ||
200 | static int (*_sym_glGetUniformLocation) (GLuint program, const char* name) = NULL; | ||
201 | static void (*_sym_glGetVertexAttribfv) (GLuint index, GLenum pname, GLfloat* params) = NULL; | ||
202 | static void (*_sym_glGetVertexAttribiv) (GLuint index, GLenum pname, GLint* params) = NULL; | ||
203 | static void (*_sym_glGetVertexAttribPointerv) (GLuint index, GLenum pname, void** pointer) = NULL; | ||
204 | static void (*_sym_glHint) (GLenum target, GLenum mode) = NULL; | ||
205 | static GLboolean (*_sym_glIsBuffer) (GLuint buffer) = NULL; | ||
206 | static GLboolean (*_sym_glIsEnabled) (GLenum cap) = NULL; | ||
207 | static GLboolean (*_sym_glIsFramebuffer) (GLuint framebuffer) = NULL; | ||
208 | static GLboolean (*_sym_glIsProgram) (GLuint program) = NULL; | ||
209 | static GLboolean (*_sym_glIsRenderbuffer) (GLuint renderbuffer) = NULL; | ||
210 | static GLboolean (*_sym_glIsShader) (GLuint shader) = NULL; | ||
211 | static GLboolean (*_sym_glIsTexture) (GLuint texture) = NULL; | ||
212 | static void (*_sym_glLineWidth) (GLfloat width) = NULL; | ||
213 | static void (*_sym_glLinkProgram) (GLuint program) = NULL; | ||
214 | static void (*_sym_glPixelStorei) (GLenum pname, GLint param) = NULL; | ||
215 | static void (*_sym_glPolygonOffset) (GLfloat factor, GLfloat units) = NULL; | ||
216 | static void (*_sym_glReadPixels) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels) = NULL; | ||
217 | static void (*_sym_glReleaseShaderCompiler) (void) = NULL; | ||
218 | static void (*_sym_glRenderbufferStorage) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height) = NULL; | ||
219 | static void (*_sym_glSampleCoverage) (GLclampf value, GLboolean invert) = NULL; | ||
220 | static void (*_sym_glScissor) (GLint x, GLint y, GLsizei width, GLsizei height) = NULL; | ||
221 | static void (*_sym_glShaderBinary) (GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLsizei length) = NULL; | ||
222 | static void (*_sym_glShaderSource) (GLuint shader, GLsizei count, const char** string, const GLint* length) = NULL; | ||
223 | static void (*_sym_glStencilFunc) (GLenum func, GLint ref, GLuint mask) = NULL; | ||
224 | static void (*_sym_glStencilFuncSeparate) (GLenum face, GLenum func, GLint ref, GLuint mask) = NULL; | ||
225 | static void (*_sym_glStencilMask) (GLuint mask) = NULL; | ||
226 | static void (*_sym_glStencilMaskSeparate) (GLenum face, GLuint mask) = NULL; | ||
227 | static void (*_sym_glStencilOp) (GLenum fail, GLenum zfail, GLenum zpass) = NULL; | ||
228 | static void (*_sym_glStencilOpSeparate) (GLenum face, GLenum fail, GLenum zfail, GLenum zpass) = NULL; | ||
229 | static void (*_sym_glTexImage2D) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void* pixels) = NULL; | ||
230 | static void (*_sym_glTexParameterf) (GLenum target, GLenum pname, GLfloat param) = NULL; | ||
231 | static void (*_sym_glTexParameterfv) (GLenum target, GLenum pname, const GLfloat* params) = NULL; | ||
232 | static void (*_sym_glTexParameteri) (GLenum target, GLenum pname, GLint param) = NULL; | ||
233 | static void (*_sym_glTexParameteriv) (GLenum target, GLenum pname, const GLint* params) = NULL; | ||
234 | static void (*_sym_glTexSubImage2D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void* pixels) = NULL; | ||
235 | static void (*_sym_glUniform1f) (GLint location, GLfloat x) = NULL; | ||
236 | static void (*_sym_glUniform1fv) (GLint location, GLsizei count, const GLfloat* v) = NULL; | ||
237 | static void (*_sym_glUniform1i) (GLint location, GLint x) = NULL; | ||
238 | static void (*_sym_glUniform1iv) (GLint location, GLsizei count, const GLint* v) = NULL; | ||
239 | static void (*_sym_glUniform2f) (GLint location, GLfloat x, GLfloat y) = NULL; | ||
240 | static void (*_sym_glUniform2fv) (GLint location, GLsizei count, const GLfloat* v) = NULL; | ||
241 | static void (*_sym_glUniform2i) (GLint location, GLint x, GLint y) = NULL; | ||
242 | static void (*_sym_glUniform2iv) (GLint location, GLsizei count, const GLint* v) = NULL; | ||
243 | static void (*_sym_glUniform3f) (GLint location, GLfloat x, GLfloat y, GLfloat z) = NULL; | ||
244 | static void (*_sym_glUniform3fv) (GLint location, GLsizei count, const GLfloat* v) = NULL; | ||
245 | static void (*_sym_glUniform3i) (GLint location, GLint x, GLint y, GLint z) = NULL; | ||
246 | static void (*_sym_glUniform3iv) (GLint location, GLsizei count, const GLint* v) = NULL; | ||
247 | static void (*_sym_glUniform4f) (GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w) = NULL; | ||
248 | static void (*_sym_glUniform4fv) (GLint location, GLsizei count, const GLfloat* v) = NULL; | ||
249 | static void (*_sym_glUniform4i) (GLint location, GLint x, GLint y, GLint z, GLint w) = NULL; | ||
250 | static void (*_sym_glUniform4iv) (GLint location, GLsizei count, const GLint* v) = NULL; | ||
251 | static void (*_sym_glUniformMatrix2fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = NULL; | ||
252 | static void (*_sym_glUniformMatrix3fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = NULL; | ||
253 | static void (*_sym_glUniformMatrix4fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat* value) = NULL; | ||
254 | static void (*_sym_glUseProgram) (GLuint program) = NULL; | ||
255 | static void (*_sym_glValidateProgram) (GLuint program) = NULL; | ||
256 | static void (*_sym_glVertexAttrib1f) (GLuint indx, GLfloat x) = NULL; | ||
257 | static void (*_sym_glVertexAttrib1fv) (GLuint indx, const GLfloat* values) = NULL; | ||
258 | static void (*_sym_glVertexAttrib2f) (GLuint indx, GLfloat x, GLfloat y) = NULL; | ||
259 | static void (*_sym_glVertexAttrib2fv) (GLuint indx, const GLfloat* values) = NULL; | ||
260 | static void (*_sym_glVertexAttrib3f) (GLuint indx, GLfloat x, GLfloat y, GLfloat z) = NULL; | ||
261 | static void (*_sym_glVertexAttrib3fv) (GLuint indx, const GLfloat* values) = NULL; | ||
262 | static void (*_sym_glVertexAttrib4f) (GLuint indx, GLfloat x, GLfloat y, GLfloat z, GLfloat w) = NULL; | ||
263 | static void (*_sym_glVertexAttrib4fv) (GLuint indx, const GLfloat* values) = NULL; | ||
264 | static void (*_sym_glVertexAttribPointer) (GLuint indx, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void* ptr) = NULL; | ||
265 | static void (*_sym_glViewport) (GLint x, GLint y, GLsizei width, GLsizei height) = NULL; | ||
266 | |||
267 | // GLES Extensions... | ||
268 | /* static void (*_sym_glGetProgramBinary) (GLuint a, GLsizei b, GLsizei* c, GLenum* d, void* e) = NULL; */ | ||
269 | /* static void (*_sym_glProgramBinary) (GLuint a, GLenum b, const void* c, GLint d) = NULL; */ | ||
270 | /* static void (*_sym_glProgramParameteri) (GLuint a, GLuint b, GLint d) = NULL; */ | ||
271 | #endif | ||
272 | |||
4 | /* | 273 | /* |
5 | ***** | 274 | ***** |
6 | ** | 275 | ** |
@@ -258,6 +527,15 @@ eng_image_colorspace_get(void *data __UNUSED__, void *image) | |||
258 | return im->space; | 527 | return im->space; |
259 | } | 528 | } |
260 | 529 | ||
530 | static Eina_Bool | ||
531 | eng_image_can_region_get(void *data __UNUSED__, void *image) | ||
532 | { | ||
533 | Image_Entry *im; | ||
534 | if (!image) return EINA_FALSE; | ||
535 | im = image; | ||
536 | return ((Evas_Image_Load_Func*) im->info.loader)->do_region; | ||
537 | } | ||
538 | |||
261 | static void | 539 | static void |
262 | eng_image_mask_create(void *data __UNUSED__, void *image) | 540 | eng_image_mask_create(void *data __UNUSED__, void *image) |
263 | { | 541 | { |
@@ -349,7 +627,37 @@ eng_image_colorspace_set(void *data __UNUSED__, void *image, int cspace) | |||
349 | static void * | 627 | static void * |
350 | eng_image_native_set(void *data __UNUSED__, void *image, void *native __UNUSED__) | 628 | eng_image_native_set(void *data __UNUSED__, void *image, void *native __UNUSED__) |
351 | { | 629 | { |
352 | return image; | 630 | //return image; |
631 | Evas_Native_Surface *ns = native; | ||
632 | Image_Entry *im = image, *im2 = NULL; | ||
633 | |||
634 | if (!im) | ||
635 | { | ||
636 | if ((!ns) && (ns->data.x11.visual)) | ||
637 | { | ||
638 | im = evas_cache_image_data(evas_common_image_cache_get(), | ||
639 | im->w, im->h, | ||
640 | ns->data.x11.visual, 1, | ||
641 | EVAS_COLORSPACE_ARGB8888); | ||
642 | return im; | ||
643 | } | ||
644 | else | ||
645 | return NULL; | ||
646 | } | ||
647 | |||
648 | if ((!ns) && (!im)) return im; | ||
649 | |||
650 | if (!ns) return im; | ||
651 | |||
652 | im2 = evas_cache_image_data(evas_common_image_cache_get(), | ||
653 | im->w, im->h, | ||
654 | ns->data.x11.visual, 1, | ||
655 | EVAS_COLORSPACE_ARGB8888); | ||
656 | evas_cache_image_drop(im); | ||
657 | im = im2; | ||
658 | |||
659 | return im; | ||
660 | |||
353 | } | 661 | } |
354 | 662 | ||
355 | static void * | 663 | static void * |
@@ -1035,6 +1343,311 @@ eng_image_load_error_get(void *data __UNUSED__, void *image) | |||
1035 | return im->cache_entry.load_error; | 1343 | return im->cache_entry.load_error; |
1036 | } | 1344 | } |
1037 | 1345 | ||
1346 | //------------ Evas GL engine code ---------------// | ||
1347 | static void * | ||
1348 | eng_gl_surface_create(void *data __UNUSED__, void *config, int w, int h) | ||
1349 | { | ||
1350 | #ifdef EVAS_GL | ||
1351 | Render_Engine_GL_Surface *sfc; | ||
1352 | Evas_GL_Config *cfg; | ||
1353 | |||
1354 | sfc = calloc(1, sizeof(Render_Engine_GL_Surface)); | ||
1355 | if (!sfc) return NULL; | ||
1356 | |||
1357 | cfg = (Evas_GL_Config *)config; | ||
1358 | |||
1359 | sfc->initialized = 0; | ||
1360 | sfc->w = w; | ||
1361 | sfc->h = h; | ||
1362 | |||
1363 | // Color Format | ||
1364 | switch (cfg->color_format) | ||
1365 | { | ||
1366 | |||
1367 | case EVAS_GL_RGB_888: | ||
1368 | sfc->internal_fmt = OSMESA_RGB; | ||
1369 | sfc->internal_cpp = 3; | ||
1370 | break; | ||
1371 | case EVAS_GL_RGBA_8888: | ||
1372 | sfc->internal_fmt = OSMESA_BGRA; | ||
1373 | sfc->internal_cpp = 4; | ||
1374 | break; | ||
1375 | default: | ||
1376 | sfc->internal_fmt = OSMESA_RGBA; | ||
1377 | sfc->internal_cpp = 4; | ||
1378 | break; | ||
1379 | } | ||
1380 | |||
1381 | // Depth Bits | ||
1382 | switch (cfg->depth_bits) | ||
1383 | { | ||
1384 | case EVAS_GL_DEPTH_BIT_8: | ||
1385 | sfc->depth_bits = 8; | ||
1386 | break; | ||
1387 | case EVAS_GL_DEPTH_BIT_16: | ||
1388 | sfc->depth_bits = 16; | ||
1389 | break; | ||
1390 | case EVAS_GL_DEPTH_BIT_24: | ||
1391 | sfc->depth_bits = 24; | ||
1392 | break; | ||
1393 | case EVAS_GL_DEPTH_BIT_32: | ||
1394 | sfc->depth_bits = 32; | ||
1395 | break; | ||
1396 | case EVAS_GL_DEPTH_NONE: | ||
1397 | default: | ||
1398 | sfc->depth_bits = 0; | ||
1399 | break; | ||
1400 | } | ||
1401 | |||
1402 | // Stencil Bits | ||
1403 | switch (cfg->stencil_bits) | ||
1404 | { | ||
1405 | case EVAS_GL_STENCIL_BIT_1: | ||
1406 | sfc->stencil_bits = 1; | ||
1407 | break; | ||
1408 | case EVAS_GL_STENCIL_BIT_2: | ||
1409 | sfc->stencil_bits = 2; | ||
1410 | break; | ||
1411 | case EVAS_GL_STENCIL_BIT_4: | ||
1412 | sfc->stencil_bits = 4; | ||
1413 | break; | ||
1414 | case EVAS_GL_STENCIL_BIT_8: | ||
1415 | sfc->stencil_bits = 8; | ||
1416 | break; | ||
1417 | case EVAS_GL_STENCIL_BIT_16: | ||
1418 | sfc->stencil_bits = 16; | ||
1419 | break; | ||
1420 | case EVAS_GL_STENCIL_NONE: | ||
1421 | default: | ||
1422 | sfc->stencil_bits = 0; | ||
1423 | break; | ||
1424 | } | ||
1425 | |||
1426 | sfc->buffer = malloc(sizeof(unsigned char)*sfc->internal_cpp*w*h); | ||
1427 | |||
1428 | if (!sfc->buffer) | ||
1429 | { | ||
1430 | free(sfc); | ||
1431 | return NULL; | ||
1432 | } | ||
1433 | |||
1434 | return sfc; | ||
1435 | #else | ||
1436 | (void) config; | ||
1437 | (void) w; | ||
1438 | (void) h; | ||
1439 | return NULL; | ||
1440 | #endif | ||
1441 | } | ||
1442 | |||
1443 | static int | ||
1444 | eng_gl_surface_destroy(void *data __UNUSED__, void *surface) | ||
1445 | { | ||
1446 | #ifdef EVAS_GL | ||
1447 | Render_Engine_GL_Surface *sfc; | ||
1448 | |||
1449 | sfc = (Render_Engine_GL_Surface*)surface; | ||
1450 | |||
1451 | if (!sfc) return 0; | ||
1452 | |||
1453 | if (sfc->buffer) free(sfc->buffer); | ||
1454 | |||
1455 | free(sfc); | ||
1456 | |||
1457 | surface = NULL; | ||
1458 | |||
1459 | return 1; | ||
1460 | #else | ||
1461 | (void) surface; | ||
1462 | return 1; | ||
1463 | #endif | ||
1464 | } | ||
1465 | |||
1466 | static void * | ||
1467 | eng_gl_context_create(void *data __UNUSED__, void *share_context) | ||
1468 | { | ||
1469 | #ifdef EVAS_GL | ||
1470 | Render_Engine_GL_Context *ctx; | ||
1471 | Render_Engine_GL_Context *share_ctx; | ||
1472 | |||
1473 | ctx = calloc(1, sizeof(Render_Engine_GL_Context)); | ||
1474 | |||
1475 | if (!ctx) return NULL; | ||
1476 | |||
1477 | share_ctx = (Render_Engine_GL_Context *)share_context; | ||
1478 | |||
1479 | ctx->share_ctx = share_ctx; | ||
1480 | |||
1481 | /* | ||
1482 | if (share_ctx) | ||
1483 | ctx->context = OSMesaCreateContextExt( OSMESA_RGBA, 8, 0, 0, share_ctx->context ); | ||
1484 | else | ||
1485 | ctx->context = OSMesaCreateContextExt( OSMESA_RGBA, 8, 0, 0, NULL ); | ||
1486 | |||
1487 | |||
1488 | if (!ctx->context) | ||
1489 | { | ||
1490 | ERR("Error creating OSMesa Context."); | ||
1491 | free(ctx); | ||
1492 | return NULL; | ||
1493 | } | ||
1494 | */ | ||
1495 | |||
1496 | ctx->initialized = 0; | ||
1497 | |||
1498 | return ctx; | ||
1499 | #else | ||
1500 | (void) share_context; | ||
1501 | return NULL; | ||
1502 | #endif | ||
1503 | } | ||
1504 | |||
1505 | static int | ||
1506 | eng_gl_context_destroy(void *data __UNUSED__, void *context) | ||
1507 | { | ||
1508 | #ifdef EVAS_GL | ||
1509 | Render_Engine_GL_Context *ctx; | ||
1510 | |||
1511 | ctx = (Render_Engine_GL_Context*)context; | ||
1512 | |||
1513 | if (!ctx) return 0; | ||
1514 | |||
1515 | _sym_OSMesaDestroyContext(ctx->context); | ||
1516 | |||
1517 | free(ctx); | ||
1518 | context = NULL; | ||
1519 | |||
1520 | return 1; | ||
1521 | #else | ||
1522 | (void) context; | ||
1523 | return 0; | ||
1524 | #endif | ||
1525 | } | ||
1526 | |||
1527 | static int | ||
1528 | eng_gl_make_current(void *data __UNUSED__, void *surface, void *context) | ||
1529 | { | ||
1530 | #ifdef EVAS_GL | ||
1531 | Render_Engine_GL_Surface *sfc; | ||
1532 | Render_Engine_GL_Context *ctx; | ||
1533 | OSMesaContext share_ctx; | ||
1534 | GLboolean ret; | ||
1535 | |||
1536 | sfc = (Render_Engine_GL_Surface*)surface; | ||
1537 | ctx = (Render_Engine_GL_Context*)context; | ||
1538 | |||
1539 | // Unset surface/context | ||
1540 | if ((!sfc) || (!ctx)) | ||
1541 | { | ||
1542 | if (ctx) ctx->current_sfc = NULL; | ||
1543 | if (sfc) sfc->current_ctx = NULL; | ||
1544 | return 1; | ||
1545 | } | ||
1546 | |||
1547 | // Initialize Context if it hasn't been. | ||
1548 | if (!ctx->initialized) | ||
1549 | { | ||
1550 | if (ctx->share_ctx) | ||
1551 | share_ctx = ctx->share_ctx->context; | ||
1552 | else | ||
1553 | share_ctx = NULL; | ||
1554 | |||
1555 | ctx->context = _sym_OSMesaCreateContextExt(sfc->internal_fmt, | ||
1556 | sfc->depth_bits, | ||
1557 | sfc->stencil_bits, | ||
1558 | 0, | ||
1559 | share_ctx); | ||
1560 | if (!ctx->context) | ||
1561 | { | ||
1562 | ERR("Error initializing context."); | ||
1563 | return 0; | ||
1564 | } | ||
1565 | |||
1566 | ctx->initialized = 1; | ||
1567 | } | ||
1568 | |||
1569 | |||
1570 | // Call MakeCurrent | ||
1571 | ret = _sym_OSMesaMakeCurrent(ctx->context, sfc->buffer, GL_UNSIGNED_BYTE, | ||
1572 | sfc->w, sfc->h); | ||
1573 | |||
1574 | if (ret == GL_FALSE) | ||
1575 | { | ||
1576 | ERR("Error doing MakeCurrent."); | ||
1577 | return 0; | ||
1578 | } | ||
1579 | |||
1580 | _sym_OSMesaPixelStore(OSMESA_Y_UP, 0); | ||
1581 | |||
1582 | // Set the current surface/context | ||
1583 | ctx->current_sfc = sfc; | ||
1584 | sfc->current_ctx = ctx; | ||
1585 | |||
1586 | return 1; | ||
1587 | #else | ||
1588 | (void) surface; | ||
1589 | (void) context; | ||
1590 | return 1; | ||
1591 | #endif | ||
1592 | } | ||
1593 | |||
1594 | // FIXME!!! Implement later | ||
1595 | static void * | ||
1596 | eng_gl_string_query(void *data __UNUSED__, int name __UNUSED__) | ||
1597 | { | ||
1598 | return NULL; | ||
1599 | } | ||
1600 | |||
1601 | static void * | ||
1602 | eng_gl_proc_address_get(void *data __UNUSED__, const char *name) | ||
1603 | { | ||
1604 | #ifdef EVAS_GL | ||
1605 | if (_sym_OSMesaGetProcAddress) return _sym_OSMesaGetProcAddress(name); | ||
1606 | return dlsym(RTLD_DEFAULT, name); | ||
1607 | #else | ||
1608 | (void) name; | ||
1609 | return NULL; | ||
1610 | #endif | ||
1611 | } | ||
1612 | |||
1613 | static int | ||
1614 | eng_gl_native_surface_get(void *data __UNUSED__, void *surface, void *native_surface) | ||
1615 | { | ||
1616 | #ifdef EVAS_GL | ||
1617 | Render_Engine_GL_Surface *sfc; | ||
1618 | Evas_Native_Surface *ns; | ||
1619 | |||
1620 | sfc = (Render_Engine_GL_Surface*)surface; | ||
1621 | ns = (Evas_Native_Surface*)native_surface; | ||
1622 | |||
1623 | if (!sfc) return 0; | ||
1624 | |||
1625 | ns->type = EVAS_NATIVE_SURFACE_OPENGL; | ||
1626 | ns->version = EVAS_NATIVE_SURFACE_VERSION; | ||
1627 | ns->data.x11.visual = sfc->buffer; | ||
1628 | |||
1629 | return 1; | ||
1630 | #else | ||
1631 | (void) surface; | ||
1632 | (void) native_surface; | ||
1633 | return 1; | ||
1634 | #endif | ||
1635 | } | ||
1636 | |||
1637 | |||
1638 | static void * | ||
1639 | eng_gl_api_get(void *data __UNUSED__) | ||
1640 | { | ||
1641 | #ifdef EVAS_GL | ||
1642 | return &gl_funcs; | ||
1643 | #else | ||
1644 | return NULL; | ||
1645 | #endif | ||
1646 | } | ||
1647 | |||
1648 | //------------------------------------------------// | ||
1649 | |||
1650 | |||
1038 | /* | 1651 | /* |
1039 | ***** | 1652 | ***** |
1040 | ** | 1653 | ** |
@@ -1112,6 +1725,7 @@ static Evas_Func func = | |||
1112 | eng_image_format_get, | 1725 | eng_image_format_get, |
1113 | eng_image_colorspace_set, | 1726 | eng_image_colorspace_set, |
1114 | eng_image_colorspace_get, | 1727 | eng_image_colorspace_get, |
1728 | eng_image_can_region_get, | ||
1115 | eng_image_mask_create, | 1729 | eng_image_mask_create, |
1116 | eng_image_native_set, | 1730 | eng_image_native_set, |
1117 | eng_image_native_get, | 1731 | eng_image_native_get, |
@@ -1161,15 +1775,15 @@ static Evas_Func func = | |||
1161 | eng_image_filtered_save, | 1775 | eng_image_filtered_save, |
1162 | eng_image_filtered_free, | 1776 | eng_image_filtered_free, |
1163 | #endif | 1777 | #endif |
1164 | NULL, // FIXME: need software mesa for gl rendering <- gl_surface_create | 1778 | NULL, // need software mesa for gl rendering <- gl_surface_create |
1165 | NULL, // FIXME: need software mesa for gl rendering <- gl_surface_destroy | 1779 | NULL, // need software mesa for gl rendering <- gl_surface_destroy |
1166 | NULL, // FIXME: need software mesa for gl rendering <- gl_context_create | 1780 | NULL, // need software mesa for gl rendering <- gl_context_create |
1167 | NULL, // FIXME: need software mesa for gl rendering <- gl_context_destroy | 1781 | NULL, // need software mesa for gl rendering <- gl_context_destroy |
1168 | NULL, // FIXME: need software mesa for gl rendering <- gl_make_current | 1782 | NULL, // need software mesa for gl rendering <- gl_make_current |
1169 | NULL, // FIXME: need software mesa for gl rendering <- gl_string_query | 1783 | NULL, // need software mesa for gl rendering <- gl_string_query |
1170 | NULL, // FIXME: need software mesa for gl rendering <- gl_proc_address_get | 1784 | NULL, // need software mesa for gl rendering <- gl_proc_address_get |
1171 | NULL, // FIXME: need software mesa for gl rendering <- gl_native_surface_get | 1785 | NULL, // need software mesa for gl rendering <- gl_native_surface_get |
1172 | NULL, // FIXME: need software mesa for gl rendering <- gl_api_get | 1786 | NULL, // need software mesa for gl rendering <- gl_api_get |
1173 | eng_image_load_error_get, | 1787 | eng_image_load_error_get, |
1174 | eng_font_run_font_end_get, | 1788 | eng_font_run_font_end_get, |
1175 | eng_image_animated_get, | 1789 | eng_image_animated_get, |
@@ -1182,6 +1796,981 @@ static Evas_Func func = | |||
1182 | /* FUTURE software generic calls go here */ | 1796 | /* FUTURE software generic calls go here */ |
1183 | }; | 1797 | }; |
1184 | 1798 | ||
1799 | |||
1800 | //----------------------------------------------------------------// | ||
1801 | // // | ||
1802 | // Load Symbols // | ||
1803 | // // | ||
1804 | //----------------------------------------------------------------// | ||
1805 | #ifdef EVAS_GL | ||
1806 | static void | ||
1807 | sym_missing(void) | ||
1808 | { | ||
1809 | ERR("GL symbols missing!\n"); | ||
1810 | } | ||
1811 | |||
1812 | static int | ||
1813 | glue_sym_init(void) | ||
1814 | { | ||
1815 | //------------------------------------------------// | ||
1816 | // Use eglGetProcAddress | ||
1817 | #define FINDSYM(dst, sym, typ) \ | ||
1818 | if (!dst) dst = (typeof(dst))dlsym(gl_lib_handle, sym); \ | ||
1819 | if (!dst) \ | ||
1820 | { \ | ||
1821 | ERR("Symbol not found %s\n", sym); \ | ||
1822 | return 0; \ | ||
1823 | } | ||
1824 | #define FALLBAK(dst, typ) if (!dst) dst = (typeof(dst))sym_missing; | ||
1825 | |||
1826 | //------------------------------------------------------// | ||
1827 | // OSMesa APIs... | ||
1828 | FINDSYM(_sym_OSMesaCreateContextExt, "OSMesaCreateContextExt", glsym_func_osm_ctx); | ||
1829 | FALLBAK(_sym_OSMesaCreateContextExt, glsym_func_void); | ||
1830 | |||
1831 | FINDSYM(_sym_OSMesaDestroyContext, "OSMesaDestroyContext", glsym_func_void); | ||
1832 | FALLBAK(_sym_OSMesaDestroyContext, glsym_func_void); | ||
1833 | |||
1834 | FINDSYM(_sym_OSMesaMakeCurrent, "OSMesaMakeCurrent", glsym_func_bool); | ||
1835 | FALLBAK(_sym_OSMesaMakeCurrent, glsym_func_void); | ||
1836 | |||
1837 | FINDSYM(_sym_OSMesaPixelStore, "OSMesaPixelStore", glsym_func_void); | ||
1838 | FALLBAK(_sym_OSMesaPixelStore, glsym_func_void); | ||
1839 | |||
1840 | FINDSYM(_sym_OSMesaGetProcAddress, "OSMesaGetProcAddress", glsym_func_eng_fn); | ||
1841 | FALLBAK(_sym_OSMesaGetProcAddress, glsym_func_void); | ||
1842 | |||
1843 | #undef FINDSYM | ||
1844 | #undef FALLBAK | ||
1845 | |||
1846 | return 1; | ||
1847 | } | ||
1848 | |||
1849 | static int | ||
1850 | gl_sym_init(void) | ||
1851 | { | ||
1852 | //------------------------------------------------// | ||
1853 | #define FINDSYM(dst, sym, typ) \ | ||
1854 | if (!dst) dst = (typeof(dst))dlsym(gl_lib_handle, sym); \ | ||
1855 | if (!dst) DBG("Symbol not found %s\n", sym); | ||
1856 | #define FALLBAK(dst, typ) if (!dst) dst = (typeof(dst))sym_missing; | ||
1857 | |||
1858 | |||
1859 | //------------------------------------------------------// | ||
1860 | // GLES 2.0 APIs... | ||
1861 | FINDSYM(_sym_glActiveTexture, "glActiveTexture", glsym_func_void); | ||
1862 | FALLBAK(_sym_glActiveTexture, glsym_func_void); | ||
1863 | |||
1864 | FINDSYM(_sym_glAttachShader, "glAttachShader", glsym_func_void); | ||
1865 | FALLBAK(_sym_glAttachShader, glsym_func_void); | ||
1866 | |||
1867 | FINDSYM(_sym_glBindAttribLocation, "glBindAttribLocation", glsym_func_void); | ||
1868 | FALLBAK(_sym_glBindAttribLocation, glsym_func_void); | ||
1869 | |||
1870 | FINDSYM(_sym_glBindBuffer, "glBindBuffer", glsym_func_void); | ||
1871 | FALLBAK(_sym_glBindBuffer, glsym_func_void); | ||
1872 | |||
1873 | FINDSYM(_sym_glBindFramebuffer, "glBindFramebuffer", glsym_func_void); | ||
1874 | FALLBAK(_sym_glBindFramebuffer, glsym_func_void); | ||
1875 | |||
1876 | FINDSYM(_sym_glBindRenderbuffer, "glBindRenderbuffer", glsym_func_void); | ||
1877 | FALLBAK(_sym_glBindRenderbuffer, glsym_func_void); | ||
1878 | |||
1879 | FINDSYM(_sym_glBindTexture, "glBindTexture", glsym_func_void); | ||
1880 | FALLBAK(_sym_glBindTexture, glsym_func_void); | ||
1881 | |||
1882 | FINDSYM(_sym_glBlendColor, "glBlendColor", glsym_func_void); | ||
1883 | FALLBAK(_sym_glBlendColor, glsym_func_void); | ||
1884 | |||
1885 | FINDSYM(_sym_glBlendEquation, "glBlendEquation", glsym_func_void); | ||
1886 | FALLBAK(_sym_glBlendEquation, glsym_func_void); | ||
1887 | |||
1888 | FINDSYM(_sym_glBlendEquationSeparate, "glBlendEquationSeparate", glsym_func_void); | ||
1889 | FALLBAK(_sym_glBlendEquationSeparate, glsym_func_void); | ||
1890 | |||
1891 | FINDSYM(_sym_glBlendFunc, "glBlendFunc", glsym_func_void); | ||
1892 | FALLBAK(_sym_glBlendFunc, glsym_func_void); | ||
1893 | |||
1894 | FINDSYM(_sym_glBlendFuncSeparate, "glBlendFuncSeparate", glsym_func_void); | ||
1895 | FALLBAK(_sym_glBlendFuncSeparate, glsym_func_void); | ||
1896 | |||
1897 | FINDSYM(_sym_glBufferData, "glBufferData", glsym_func_void); | ||
1898 | FALLBAK(_sym_glBufferData, glsym_func_void); | ||
1899 | |||
1900 | FINDSYM(_sym_glBufferSubData, "glBufferSubData", glsym_func_void); | ||
1901 | FALLBAK(_sym_glBufferSubData, glsym_func_void); | ||
1902 | |||
1903 | FINDSYM(_sym_glCheckFramebufferStatus, "glCheckFramebufferStatus", glsym_func_uint); | ||
1904 | FALLBAK(_sym_glCheckFramebufferStatus, glsym_func_uint); | ||
1905 | |||
1906 | FINDSYM(_sym_glClear, "glClear", glsym_func_void); | ||
1907 | FALLBAK(_sym_glClear, glsym_func_void); | ||
1908 | |||
1909 | FINDSYM(_sym_glClearColor, "glClearColor", glsym_func_void); | ||
1910 | FALLBAK(_sym_glClearColor, glsym_func_void); | ||
1911 | |||
1912 | FINDSYM(_sym_glClearDepthf, "glClearDepthf", glsym_func_void); | ||
1913 | FINDSYM(_sym_glClearDepthf, "glClearDepth", glsym_func_void); | ||
1914 | FALLBAK(_sym_glClearDepthf, glsym_func_void); | ||
1915 | |||
1916 | FINDSYM(_sym_glClearStencil, "glClearStencil", glsym_func_void); | ||
1917 | FALLBAK(_sym_glClearStencil, glsym_func_void); | ||
1918 | |||
1919 | FINDSYM(_sym_glColorMask, "glColorMask", glsym_func_void); | ||
1920 | FALLBAK(_sym_glColorMask, glsym_func_void); | ||
1921 | |||
1922 | FINDSYM(_sym_glCompileShader, "glCompileShader", glsym_func_void); | ||
1923 | FALLBAK(_sym_glCompileShader, glsym_func_void); | ||
1924 | |||
1925 | FINDSYM(_sym_glCompressedTexImage2D, "glCompressedTexImage2D", glsym_func_void); | ||
1926 | FALLBAK(_sym_glCompressedTexImage2D, glsym_func_void); | ||
1927 | |||
1928 | FINDSYM(_sym_glCompressedTexSubImage2D, "glCompressedTexSubImage2D", glsym_func_void); | ||
1929 | FALLBAK(_sym_glCompressedTexSubImage2D, glsym_func_void); | ||
1930 | |||
1931 | FINDSYM(_sym_glCopyTexImage2D, "glCopyTexImage2D", glsym_func_void); | ||
1932 | FALLBAK(_sym_glCopyTexImage2D, glsym_func_void); | ||
1933 | |||
1934 | FINDSYM(_sym_glCopyTexSubImage2D, "glCopyTexSubImage2D", glsym_func_void); | ||
1935 | FALLBAK(_sym_glCopyTexSubImage2D, glsym_func_void); | ||
1936 | |||
1937 | FINDSYM(_sym_glCreateProgram, "glCreateProgram", glsym_func_uint); | ||
1938 | FALLBAK(_sym_glCreateProgram, glsym_func_uint); | ||
1939 | |||
1940 | FINDSYM(_sym_glCreateShader, "glCreateShader", glsym_func_uint); | ||
1941 | FALLBAK(_sym_glCreateShader, glsym_func_uint); | ||
1942 | |||
1943 | FINDSYM(_sym_glCullFace, "glCullFace", glsym_func_void); | ||
1944 | FALLBAK(_sym_glCullFace, glsym_func_void); | ||
1945 | |||
1946 | FINDSYM(_sym_glDeleteBuffers, "glDeleteBuffers", glsym_func_void); | ||
1947 | FALLBAK(_sym_glDeleteBuffers, glsym_func_void); | ||
1948 | |||
1949 | FINDSYM(_sym_glDeleteFramebuffers, "glDeleteFramebuffers", glsym_func_void); | ||
1950 | FALLBAK(_sym_glDeleteFramebuffers, glsym_func_void); | ||
1951 | |||
1952 | FINDSYM(_sym_glDeleteProgram, "glDeleteProgram", glsym_func_void); | ||
1953 | FALLBAK(_sym_glDeleteProgram, glsym_func_void); | ||
1954 | |||
1955 | FINDSYM(_sym_glDeleteRenderbuffers, "glDeleteRenderbuffers", glsym_func_void); | ||
1956 | FALLBAK(_sym_glDeleteRenderbuffers, glsym_func_void); | ||
1957 | |||
1958 | FINDSYM(_sym_glDeleteShader, "glDeleteShader", glsym_func_void); | ||
1959 | FALLBAK(_sym_glDeleteShader, glsym_func_void); | ||
1960 | |||
1961 | FINDSYM(_sym_glDeleteTextures, "glDeleteTextures", glsym_func_void); | ||
1962 | FALLBAK(_sym_glDeleteTextures, glsym_func_void); | ||
1963 | |||
1964 | FINDSYM(_sym_glDepthFunc, "glDepthFunc", glsym_func_void); | ||
1965 | FALLBAK(_sym_glDepthFunc, glsym_func_void); | ||
1966 | |||
1967 | FINDSYM(_sym_glDepthMask, "glDepthMask", glsym_func_void); | ||
1968 | FALLBAK(_sym_glDepthMask, glsym_func_void); | ||
1969 | |||
1970 | FINDSYM(_sym_glDepthRangef, "glDepthRangef", glsym_func_void); | ||
1971 | FINDSYM(_sym_glDepthRangef, "glDepthRange", glsym_func_void); | ||
1972 | FALLBAK(_sym_glDepthRangef, glsym_func_void); | ||
1973 | |||
1974 | FINDSYM(_sym_glDetachShader, "glDetachShader", glsym_func_void); | ||
1975 | FALLBAK(_sym_glDetachShader, glsym_func_void); | ||
1976 | |||
1977 | FINDSYM(_sym_glDisable, "glDisable", glsym_func_void); | ||
1978 | FALLBAK(_sym_glDisable, glsym_func_void); | ||
1979 | |||
1980 | FINDSYM(_sym_glDisableVertexAttribArray, "glDisableVertexAttribArray", glsym_func_void); | ||
1981 | FALLBAK(_sym_glDisableVertexAttribArray, glsym_func_void); | ||
1982 | |||
1983 | FINDSYM(_sym_glDrawArrays, "glDrawArrays", glsym_func_void); | ||
1984 | FALLBAK(_sym_glDrawArrays, glsym_func_void); | ||
1985 | |||
1986 | FINDSYM(_sym_glDrawElements, "glDrawElements", glsym_func_void); | ||
1987 | FALLBAK(_sym_glDrawElements, glsym_func_void); | ||
1988 | |||
1989 | FINDSYM(_sym_glEnable, "glEnable", glsym_func_void); | ||
1990 | FALLBAK(_sym_glEnable, glsym_func_void); | ||
1991 | |||
1992 | FINDSYM(_sym_glEnableVertexAttribArray, "glEnableVertexAttribArray", glsym_func_void); | ||
1993 | FALLBAK(_sym_glEnableVertexAttribArray, glsym_func_void); | ||
1994 | |||
1995 | FINDSYM(_sym_glFinish, "glFinish", glsym_func_void); | ||
1996 | FALLBAK(_sym_glFinish, glsym_func_void); | ||
1997 | |||
1998 | FINDSYM(_sym_glFlush, "glFlush", glsym_func_void); | ||
1999 | FALLBAK(_sym_glFlush, glsym_func_void); | ||
2000 | |||
2001 | FINDSYM(_sym_glFramebufferRenderbuffer, "glFramebufferRenderbuffer", glsym_func_void); | ||
2002 | FALLBAK(_sym_glFramebufferRenderbuffer, glsym_func_void); | ||
2003 | |||
2004 | FINDSYM(_sym_glFramebufferTexture2D, "glFramebufferTexture2D", glsym_func_void); | ||
2005 | FALLBAK(_sym_glFramebufferTexture2D, glsym_func_void); | ||
2006 | |||
2007 | FINDSYM(_sym_glFrontFace, "glFrontFace", glsym_func_void); | ||
2008 | FALLBAK(_sym_glFrontFace, glsym_func_void); | ||
2009 | |||
2010 | FINDSYM(_sym_glGenBuffers, "glGenBuffers", glsym_func_void); | ||
2011 | FALLBAK(_sym_glGenBuffers, glsym_func_void); | ||
2012 | |||
2013 | FINDSYM(_sym_glGenerateMipmap, "glGenerateMipmap", glsym_func_void); | ||
2014 | FALLBAK(_sym_glGenerateMipmap, glsym_func_void); | ||
2015 | |||
2016 | FINDSYM(_sym_glGenFramebuffers, "glGenFramebuffers", glsym_func_void); | ||
2017 | FALLBAK(_sym_glGenFramebuffers, glsym_func_void); | ||
2018 | |||
2019 | FINDSYM(_sym_glGenRenderbuffers, "glGenRenderbuffers", glsym_func_void); | ||
2020 | FALLBAK(_sym_glGenRenderbuffers, glsym_func_void); | ||
2021 | |||
2022 | FINDSYM(_sym_glGenTextures, "glGenTextures", glsym_func_void); | ||
2023 | FALLBAK(_sym_glGenTextures, glsym_func_void); | ||
2024 | |||
2025 | FINDSYM(_sym_glGetActiveAttrib, "glGetActiveAttrib", glsym_func_void); | ||
2026 | FALLBAK(_sym_glGetActiveAttrib, glsym_func_void); | ||
2027 | |||
2028 | FINDSYM(_sym_glGetActiveUniform, "glGetActiveUniform", glsym_func_void); | ||
2029 | FALLBAK(_sym_glGetActiveUniform, glsym_func_void); | ||
2030 | |||
2031 | FINDSYM(_sym_glGetAttachedShaders, "glGetAttachedShaders", glsym_func_void); | ||
2032 | FALLBAK(_sym_glGetAttachedShaders, glsym_func_void); | ||
2033 | |||
2034 | FINDSYM(_sym_glGetAttribLocation, "glGetAttribLocation", glsym_func_int); | ||
2035 | FALLBAK(_sym_glGetAttribLocation, glsym_func_int); | ||
2036 | |||
2037 | FINDSYM(_sym_glGetBooleanv, "glGetBooleanv", glsym_func_void); | ||
2038 | FALLBAK(_sym_glGetBooleanv, glsym_func_void); | ||
2039 | |||
2040 | FINDSYM(_sym_glGetBufferParameteriv, "glGetBufferParameteriv", glsym_func_void); | ||
2041 | FALLBAK(_sym_glGetBufferParameteriv, glsym_func_void); | ||
2042 | |||
2043 | FINDSYM(_sym_glGetError, "glGetError", glsym_func_uint); | ||
2044 | FALLBAK(_sym_glGetError, glsym_func_uint); | ||
2045 | |||
2046 | FINDSYM(_sym_glGetFloatv, "glGetFloatv", glsym_func_void); | ||
2047 | FALLBAK(_sym_glGetFloatv, glsym_func_void); | ||
2048 | |||
2049 | FINDSYM(_sym_glGetFramebufferAttachmentParameteriv, "glGetFramebufferAttachmentParameteriv", glsym_func_void); | ||
2050 | FALLBAK(_sym_glGetFramebufferAttachmentParameteriv, glsym_func_void); | ||
2051 | |||
2052 | FINDSYM(_sym_glGetIntegerv, "glGetIntegerv", glsym_func_void); | ||
2053 | FALLBAK(_sym_glGetIntegerv, glsym_func_void); | ||
2054 | |||
2055 | FINDSYM(_sym_glGetProgramiv, "glGetProgramiv", glsym_func_void); | ||
2056 | FALLBAK(_sym_glGetProgramiv, glsym_func_void); | ||
2057 | |||
2058 | FINDSYM(_sym_glGetProgramInfoLog, "glGetProgramInfoLog", glsym_func_void); | ||
2059 | FALLBAK(_sym_glGetProgramInfoLog, glsym_func_void); | ||
2060 | |||
2061 | FINDSYM(_sym_glGetRenderbufferParameteriv, "glGetRenderbufferParameteriv", glsym_func_void); | ||
2062 | FALLBAK(_sym_glGetRenderbufferParameteriv, glsym_func_void); | ||
2063 | |||
2064 | FINDSYM(_sym_glGetShaderiv, "glGetShaderiv", glsym_func_void); | ||
2065 | FALLBAK(_sym_glGetShaderiv, glsym_func_void); | ||
2066 | |||
2067 | FINDSYM(_sym_glGetShaderInfoLog, "glGetShaderInfoLog", glsym_func_void); | ||
2068 | FALLBAK(_sym_glGetShaderInfoLog, glsym_func_void); | ||
2069 | |||
2070 | FINDSYM(_sym_glGetShaderPrecisionFormat, "glGetShaderPrecisionFormat", glsym_func_void); | ||
2071 | FALLBAK(_sym_glGetShaderPrecisionFormat, glsym_func_void); | ||
2072 | |||
2073 | FINDSYM(_sym_glGetShaderSource, "glGetShaderSource", glsym_func_void); | ||
2074 | FALLBAK(_sym_glGetShaderSource, glsym_func_void); | ||
2075 | |||
2076 | FINDSYM(_sym_glGetString, "glGetString", glsym_func_uchar_ptr); | ||
2077 | FALLBAK(_sym_glGetString, glsym_func_const_uchar_ptr); | ||
2078 | |||
2079 | FINDSYM(_sym_glGetTexParameterfv, "glGetTexParameterfv", glsym_func_void); | ||
2080 | FALLBAK(_sym_glGetTexParameterfv, glsym_func_void); | ||
2081 | |||
2082 | FINDSYM(_sym_glGetTexParameteriv, "glGetTexParameteriv", glsym_func_void); | ||
2083 | FALLBAK(_sym_glGetTexParameteriv, glsym_func_void); | ||
2084 | |||
2085 | FINDSYM(_sym_glGetUniformfv, "glGetUniformfv", glsym_func_void); | ||
2086 | FALLBAK(_sym_glGetUniformfv, glsym_func_void); | ||
2087 | |||
2088 | FINDSYM(_sym_glGetUniformiv, "glGetUniformiv", glsym_func_void); | ||
2089 | FALLBAK(_sym_glGetUniformiv, glsym_func_void); | ||
2090 | |||
2091 | FINDSYM(_sym_glGetUniformLocation, "glGetUniformLocation", glsym_func_int); | ||
2092 | FALLBAK(_sym_glGetUniformLocation, glsym_func_int); | ||
2093 | |||
2094 | FINDSYM(_sym_glGetVertexAttribfv, "glGetVertexAttribfv", glsym_func_void); | ||
2095 | FALLBAK(_sym_glGetVertexAttribfv, glsym_func_void); | ||
2096 | |||
2097 | FINDSYM(_sym_glGetVertexAttribiv, "glGetVertexAttribiv", glsym_func_void); | ||
2098 | FALLBAK(_sym_glGetVertexAttribiv, glsym_func_void); | ||
2099 | |||
2100 | FINDSYM(_sym_glGetVertexAttribPointerv, "glGetVertexAttribPointerv", glsym_func_void); | ||
2101 | FALLBAK(_sym_glGetVertexAttribPointerv, glsym_func_void); | ||
2102 | |||
2103 | FINDSYM(_sym_glHint, "glHint", glsym_func_void); | ||
2104 | FALLBAK(_sym_glHint, glsym_func_void); | ||
2105 | |||
2106 | FINDSYM(_sym_glIsBuffer, "glIsBuffer", glsym_func_uchar); | ||
2107 | FALLBAK(_sym_glIsBuffer, glsym_func_uchar); | ||
2108 | |||
2109 | FINDSYM(_sym_glIsEnabled, "glIsEnabled", glsym_func_uchar); | ||
2110 | FALLBAK(_sym_glIsEnabled, glsym_func_uchar); | ||
2111 | |||
2112 | FINDSYM(_sym_glIsFramebuffer, "glIsFramebuffer", glsym_func_uchar); | ||
2113 | FALLBAK(_sym_glIsFramebuffer, glsym_func_uchar); | ||
2114 | |||
2115 | FINDSYM(_sym_glIsProgram, "glIsProgram", glsym_func_uchar); | ||
2116 | FALLBAK(_sym_glIsProgram, glsym_func_uchar); | ||
2117 | |||
2118 | FINDSYM(_sym_glIsRenderbuffer, "glIsRenderbuffer", glsym_func_uchar); | ||
2119 | FALLBAK(_sym_glIsRenderbuffer, glsym_func_uchar); | ||
2120 | |||
2121 | FINDSYM(_sym_glIsShader, "glIsShader", glsym_func_uchar); | ||
2122 | FALLBAK(_sym_glIsShader, glsym_func_uchar); | ||
2123 | |||
2124 | FINDSYM(_sym_glIsTexture, "glIsTexture", glsym_func_uchar); | ||
2125 | FALLBAK(_sym_glIsTexture, glsym_func_uchar); | ||
2126 | |||
2127 | FINDSYM(_sym_glLineWidth, "glLineWidth", glsym_func_void); | ||
2128 | FALLBAK(_sym_glLineWidth, glsym_func_void); | ||
2129 | |||
2130 | FINDSYM(_sym_glLinkProgram, "glLinkProgram", glsym_func_void); | ||
2131 | FALLBAK(_sym_glLinkProgram, glsym_func_void); | ||
2132 | |||
2133 | FINDSYM(_sym_glPixelStorei, "glPixelStorei", glsym_func_void); | ||
2134 | FALLBAK(_sym_glPixelStorei, glsym_func_void); | ||
2135 | |||
2136 | FINDSYM(_sym_glPolygonOffset, "glPolygonOffset", glsym_func_void); | ||
2137 | FALLBAK(_sym_glPolygonOffset, glsym_func_void); | ||
2138 | |||
2139 | FINDSYM(_sym_glReadPixels, "glReadPixels", glsym_func_void); | ||
2140 | FALLBAK(_sym_glReadPixels, glsym_func_void); | ||
2141 | |||
2142 | FINDSYM(_sym_glReleaseShaderCompiler, "glReleaseShaderCompiler", glsym_func_void); | ||
2143 | FALLBAK(_sym_glReleaseShaderCompiler, glsym_func_void); | ||
2144 | |||
2145 | FINDSYM(_sym_glRenderbufferStorage, "glRenderbufferStorage", glsym_func_void); | ||
2146 | FALLBAK(_sym_glRenderbufferStorage, glsym_func_void); | ||
2147 | |||
2148 | FINDSYM(_sym_glSampleCoverage, "glSampleCoverage", glsym_func_void); | ||
2149 | FALLBAK(_sym_glSampleCoverage, glsym_func_void); | ||
2150 | |||
2151 | FINDSYM(_sym_glScissor, "glScissor", glsym_func_void); | ||
2152 | FALLBAK(_sym_glScissor, glsym_func_void); | ||
2153 | |||
2154 | FINDSYM(_sym_glShaderBinary, "glShaderBinary", glsym_func_void); | ||
2155 | FALLBAK(_sym_glShaderBinary, glsym_func_void); | ||
2156 | |||
2157 | FINDSYM(_sym_glShaderSource, "glShaderSource", glsym_func_void); | ||
2158 | FALLBAK(_sym_glShaderSource, glsym_func_void); | ||
2159 | |||
2160 | FINDSYM(_sym_glStencilFunc, "glStencilFunc", glsym_func_void); | ||
2161 | FALLBAK(_sym_glStencilFunc, glsym_func_void); | ||
2162 | |||
2163 | FINDSYM(_sym_glStencilFuncSeparate, "glStencilFuncSeparate", glsym_func_void); | ||
2164 | FALLBAK(_sym_glStencilFuncSeparate, glsym_func_void); | ||
2165 | |||
2166 | FINDSYM(_sym_glStencilMask, "glStencilMask", glsym_func_void); | ||
2167 | FALLBAK(_sym_glStencilMask, glsym_func_void); | ||
2168 | |||
2169 | FINDSYM(_sym_glStencilMaskSeparate, "glStencilMaskSeparate", glsym_func_void); | ||
2170 | FALLBAK(_sym_glStencilMaskSeparate, glsym_func_void); | ||
2171 | |||
2172 | FINDSYM(_sym_glStencilOp, "glStencilOp", glsym_func_void); | ||
2173 | FALLBAK(_sym_glStencilOp, glsym_func_void); | ||
2174 | |||
2175 | FINDSYM(_sym_glStencilOpSeparate, "glStencilOpSeparate", glsym_func_void); | ||
2176 | FALLBAK(_sym_glStencilOpSeparate, glsym_func_void); | ||
2177 | |||
2178 | FINDSYM(_sym_glTexImage2D, "glTexImage2D", glsym_func_void); | ||
2179 | FALLBAK(_sym_glTexImage2D, glsym_func_void); | ||
2180 | |||
2181 | FINDSYM(_sym_glTexParameterf, "glTexParameterf", glsym_func_void); | ||
2182 | FALLBAK(_sym_glTexParameterf, glsym_func_void); | ||
2183 | |||
2184 | FINDSYM(_sym_glTexParameterfv, "glTexParameterfv", glsym_func_void); | ||
2185 | FALLBAK(_sym_glTexParameterfv, glsym_func_void); | ||
2186 | |||
2187 | FINDSYM(_sym_glTexParameteri, "glTexParameteri", glsym_func_void); | ||
2188 | FALLBAK(_sym_glTexParameteri, glsym_func_void); | ||
2189 | |||
2190 | FINDSYM(_sym_glTexParameteriv, "glTexParameteriv", glsym_func_void); | ||
2191 | FALLBAK(_sym_glTexParameteriv, glsym_func_void); | ||
2192 | |||
2193 | FINDSYM(_sym_glTexSubImage2D, "glTexSubImage2D", glsym_func_void); | ||
2194 | FALLBAK(_sym_glTexSubImage2D, glsym_func_void); | ||
2195 | |||
2196 | FINDSYM(_sym_glUniform1f, "glUniform1f", glsym_func_void); | ||
2197 | FALLBAK(_sym_glUniform1f, glsym_func_void); | ||
2198 | |||
2199 | FINDSYM(_sym_glUniform1fv, "glUniform1fv", glsym_func_void); | ||
2200 | FALLBAK(_sym_glUniform1fv, glsym_func_void); | ||
2201 | |||
2202 | FINDSYM(_sym_glUniform1i, "glUniform1i", glsym_func_void); | ||
2203 | FALLBAK(_sym_glUniform1i, glsym_func_void); | ||
2204 | |||
2205 | FINDSYM(_sym_glUniform1iv, "glUniform1iv", glsym_func_void); | ||
2206 | FALLBAK(_sym_glUniform1iv, glsym_func_void); | ||
2207 | |||
2208 | FINDSYM(_sym_glUniform2f, "glUniform2f", glsym_func_void); | ||
2209 | FALLBAK(_sym_glUniform2f, glsym_func_void); | ||
2210 | |||
2211 | FINDSYM(_sym_glUniform2fv, "glUniform2fv", glsym_func_void); | ||
2212 | FALLBAK(_sym_glUniform2fv, glsym_func_void); | ||
2213 | |||
2214 | FINDSYM(_sym_glUniform2i, "glUniform2i", glsym_func_void); | ||
2215 | FALLBAK(_sym_glUniform2i, glsym_func_void); | ||
2216 | |||
2217 | FINDSYM(_sym_glUniform2iv, "glUniform2iv", glsym_func_void); | ||
2218 | FALLBAK(_sym_glUniform2iv, glsym_func_void); | ||
2219 | |||
2220 | FINDSYM(_sym_glUniform3f, "glUniform3f", glsym_func_void); | ||
2221 | FALLBAK(_sym_glUniform3f, glsym_func_void); | ||
2222 | |||
2223 | FINDSYM(_sym_glUniform3fv, "glUniform3fv", glsym_func_void); | ||
2224 | FALLBAK(_sym_glUniform3fv, glsym_func_void); | ||
2225 | |||
2226 | FINDSYM(_sym_glUniform3i, "glUniform3i", glsym_func_void); | ||
2227 | FALLBAK(_sym_glUniform3i, glsym_func_void); | ||
2228 | |||
2229 | FINDSYM(_sym_glUniform3iv, "glUniform3iv", glsym_func_void); | ||
2230 | FALLBAK(_sym_glUniform3iv, glsym_func_void); | ||
2231 | |||
2232 | FINDSYM(_sym_glUniform4f, "glUniform4f", glsym_func_void); | ||
2233 | FALLBAK(_sym_glUniform4f, glsym_func_void); | ||
2234 | |||
2235 | FINDSYM(_sym_glUniform4fv, "glUniform4fv", glsym_func_void); | ||
2236 | FALLBAK(_sym_glUniform4fv, glsym_func_void); | ||
2237 | |||
2238 | FINDSYM(_sym_glUniform4i, "glUniform4i", glsym_func_void); | ||
2239 | FALLBAK(_sym_glUniform4i, glsym_func_void); | ||
2240 | |||
2241 | FINDSYM(_sym_glUniform4iv, "glUniform4iv", glsym_func_void); | ||
2242 | FALLBAK(_sym_glUniform4iv, glsym_func_void); | ||
2243 | |||
2244 | FINDSYM(_sym_glUniformMatrix2fv, "glUniformMatrix2fv", glsym_func_void); | ||
2245 | FALLBAK(_sym_glUniformMatrix2fv, glsym_func_void); | ||
2246 | |||
2247 | FINDSYM(_sym_glUniformMatrix3fv, "glUniformMatrix3fv", glsym_func_void); | ||
2248 | FALLBAK(_sym_glUniformMatrix3fv, glsym_func_void); | ||
2249 | |||
2250 | FINDSYM(_sym_glUniformMatrix4fv, "glUniformMatrix4fv", glsym_func_void); | ||
2251 | FALLBAK(_sym_glUniformMatrix4fv, glsym_func_void); | ||
2252 | |||
2253 | FINDSYM(_sym_glUseProgram, "glUseProgram", glsym_func_void); | ||
2254 | FALLBAK(_sym_glUseProgram, glsym_func_void); | ||
2255 | |||
2256 | FINDSYM(_sym_glValidateProgram, "glValidateProgram", glsym_func_void); | ||
2257 | FALLBAK(_sym_glValidateProgram, glsym_func_void); | ||
2258 | |||
2259 | FINDSYM(_sym_glVertexAttrib1f, "glVertexAttrib1f", glsym_func_void); | ||
2260 | FALLBAK(_sym_glVertexAttrib1f, glsym_func_void); | ||
2261 | |||
2262 | FINDSYM(_sym_glVertexAttrib1fv, "glVertexAttrib1fv", glsym_func_void); | ||
2263 | FALLBAK(_sym_glVertexAttrib1fv, glsym_func_void); | ||
2264 | |||
2265 | FINDSYM(_sym_glVertexAttrib2f, "glVertexAttrib2f", glsym_func_void); | ||
2266 | FALLBAK(_sym_glVertexAttrib2f, glsym_func_void); | ||
2267 | |||
2268 | FINDSYM(_sym_glVertexAttrib2fv, "glVertexAttrib2fv", glsym_func_void); | ||
2269 | FALLBAK(_sym_glVertexAttrib2fv, glsym_func_void); | ||
2270 | |||
2271 | FINDSYM(_sym_glVertexAttrib3f, "glVertexAttrib3f", glsym_func_void); | ||
2272 | FALLBAK(_sym_glVertexAttrib3f, glsym_func_void); | ||
2273 | |||
2274 | FINDSYM(_sym_glVertexAttrib3fv, "glVertexAttrib3fv", glsym_func_void); | ||
2275 | FALLBAK(_sym_glVertexAttrib3fv, glsym_func_void); | ||
2276 | |||
2277 | FINDSYM(_sym_glVertexAttrib4f, "glVertexAttrib4f", glsym_func_void); | ||
2278 | FALLBAK(_sym_glVertexAttrib4f, glsym_func_void); | ||
2279 | |||
2280 | FINDSYM(_sym_glVertexAttrib4fv, "glVertexAttrib4fv", glsym_func_void); | ||
2281 | FALLBAK(_sym_glVertexAttrib4fv, glsym_func_void); | ||
2282 | |||
2283 | FINDSYM(_sym_glVertexAttribPointer, "glVertexAttribPointer", glsym_func_void); | ||
2284 | FALLBAK(_sym_glVertexAttribPointer, glsym_func_void); | ||
2285 | |||
2286 | FINDSYM(_sym_glViewport, "glViewport", glsym_func_void); | ||
2287 | FALLBAK(_sym_glViewport, glsym_func_void); | ||
2288 | |||
2289 | #undef FINDSYM | ||
2290 | #undef FALLBAK | ||
2291 | |||
2292 | // Checking to see if this function exists is a poor but reasonable way to | ||
2293 | // check if it's gles but it works for now | ||
2294 | if (_sym_glGetShaderPrecisionFormat != (typeof(_sym_glGetShaderPrecisionFormat))sym_missing ) | ||
2295 | { | ||
2296 | DBG("GL Library is GLES."); | ||
2297 | gl_lib_is_gles = 1; | ||
2298 | } | ||
2299 | |||
2300 | return 1; | ||
2301 | } | ||
2302 | |||
2303 | //--------------------------------------------------------------// | ||
2304 | // Wrapped GL APIs to handle desktop compatibility | ||
2305 | |||
2306 | // Stripping precision code from GLES shader for desktop compatibility | ||
2307 | // Code adopted from Meego GL code. Temporary Fix. | ||
2308 | static const char * | ||
2309 | opengl_strtok(const char *s, int *n, char **saveptr, char *prevbuf) | ||
2310 | { | ||
2311 | char *start; | ||
2312 | char *ret; | ||
2313 | char *p; | ||
2314 | int retlen; | ||
2315 | static const char *delim = " \t\n\r/"; | ||
2316 | |||
2317 | if (prevbuf) free(prevbuf); | ||
2318 | |||
2319 | if (s) | ||
2320 | *saveptr = (char *)s; | ||
2321 | else | ||
2322 | { | ||
2323 | if (!(*saveptr) || !(*n)) | ||
2324 | return NULL; | ||
2325 | s = *saveptr; | ||
2326 | } | ||
2327 | |||
2328 | for (; *n && strchr(delim, *s); s++, (*n)--) | ||
2329 | { | ||
2330 | if (*s == '/' && *n > 1) | ||
2331 | { | ||
2332 | if (s[1] == '/') | ||
2333 | { | ||
2334 | do | ||
2335 | { | ||
2336 | s++, (*n)--; | ||
2337 | } | ||
2338 | while (*n > 1 && s[1] != '\n' && s[1] != '\r'); | ||
2339 | } | ||
2340 | else if (s[1] == '*') | ||
2341 | { | ||
2342 | do | ||
2343 | { | ||
2344 | s++, (*n)--; | ||
2345 | } | ||
2346 | while (*n > 2 && (s[1] != '*' || s[2] != '/')); | ||
2347 | s++, (*n)--; | ||
2348 | } | ||
2349 | } | ||
2350 | } | ||
2351 | |||
2352 | start = (char *)s; | ||
2353 | for (; *n && *s && !strchr(delim, *s); s++, (*n)--); | ||
2354 | if (*n > 0) s++, (*n)--; | ||
2355 | |||
2356 | *saveptr = (char *)s; | ||
2357 | |||
2358 | retlen = s - start; | ||
2359 | ret = malloc(retlen + 1); | ||
2360 | p = ret; | ||
2361 | |||
2362 | while (retlen > 0) | ||
2363 | { | ||
2364 | if (*start == '/' && retlen > 1) | ||
2365 | { | ||
2366 | if (start[1] == '/') | ||
2367 | { | ||
2368 | do | ||
2369 | { | ||
2370 | start++, retlen--; | ||
2371 | } | ||
2372 | while (retlen > 1 && start[1] != '\n' && start[1] != '\r'); | ||
2373 | start++, retlen--; | ||
2374 | continue; | ||
2375 | } | ||
2376 | else if (start[1] == '*') | ||
2377 | { | ||
2378 | do | ||
2379 | { | ||
2380 | start++, retlen--; | ||
2381 | } | ||
2382 | while (retlen > 2 && (start[1] != '*' || start[2] != '/')); | ||
2383 | start += 3, retlen -= 3; | ||
2384 | continue; | ||
2385 | } | ||
2386 | } | ||
2387 | *(p++) = *(start++), retlen--; | ||
2388 | } | ||
2389 | |||
2390 | *p = 0; | ||
2391 | return ret; | ||
2392 | } | ||
2393 | |||
2394 | static char * | ||
2395 | patch_gles_shader(const char *source, int length, int *patched_len) | ||
2396 | { | ||
2397 | char *saveptr = NULL; | ||
2398 | char *sp; | ||
2399 | char *p = NULL; | ||
2400 | |||
2401 | if (!length) length = strlen(source); | ||
2402 | |||
2403 | *patched_len = 0; | ||
2404 | int patched_size = length; | ||
2405 | char *patched = malloc(patched_size + 1); | ||
2406 | |||
2407 | if (!patched) return NULL; | ||
2408 | |||
2409 | p = (char *)opengl_strtok(source, &length, &saveptr, NULL); | ||
2410 | for (; p; p = (char *)opengl_strtok(0, &length, &saveptr, p)) | ||
2411 | { | ||
2412 | if (!strncmp(p, "lowp", 4) || !strncmp(p, "mediump", 7) || !strncmp(p, "highp", 5)) | ||
2413 | { | ||
2414 | continue; | ||
2415 | } | ||
2416 | else if (!strncmp(p, "precision", 9)) | ||
2417 | { | ||
2418 | while ((p = (char *)opengl_strtok(0, &length, &saveptr, p)) && !strchr(p, ';')); | ||
2419 | } | ||
2420 | else | ||
2421 | { | ||
2422 | if (!strncmp(p, "gl_MaxVertexUniformVectors", 26)) | ||
2423 | { | ||
2424 | p = "(gl_MaxVertexUniformComponents / 4)"; | ||
2425 | } | ||
2426 | else if (!strncmp(p, "gl_MaxFragmentUniformVectors", 28)) | ||
2427 | { | ||
2428 | p = "(gl_MaxFragmentUniformComponents / 4)"; | ||
2429 | } | ||
2430 | else if (!strncmp(p, "gl_MaxVaryingVectors", 20)) | ||
2431 | { | ||
2432 | p = "(gl_MaxVaryingFloats / 4)"; | ||
2433 | } | ||
2434 | |||
2435 | int new_len = strlen(p); | ||
2436 | if (*patched_len + new_len > patched_size) | ||
2437 | { | ||
2438 | patched_size *= 2; | ||
2439 | patched = realloc(patched, patched_size + 1); | ||
2440 | |||
2441 | if (!patched) | ||
2442 | return NULL; | ||
2443 | } | ||
2444 | |||
2445 | memcpy(patched + *patched_len, p, new_len); | ||
2446 | *patched_len += new_len; | ||
2447 | } | ||
2448 | } | ||
2449 | |||
2450 | patched[*patched_len] = 0; | ||
2451 | /* check that we don't leave dummy preprocessor lines */ | ||
2452 | for (sp = patched; *sp;) | ||
2453 | { | ||
2454 | for (; *sp == ' ' || *sp == '\t'; sp++); | ||
2455 | if (!strncmp(sp, "#define", 7)) | ||
2456 | { | ||
2457 | for (p = sp + 7; *p == ' ' || *p == '\t'; p++); | ||
2458 | if (*p == '\n' || *p == '\r' || *p == '/') | ||
2459 | { | ||
2460 | memset(sp, 0x20, 7); | ||
2461 | } | ||
2462 | } | ||
2463 | for (; *sp && *sp != '\n' && *sp != '\r'; sp++); | ||
2464 | for (; *sp == '\n' || *sp == '\r'; sp++); | ||
2465 | } | ||
2466 | return patched; | ||
2467 | } | ||
2468 | |||
2469 | static void | ||
2470 | evgl_glShaderSource(GLuint shader, GLsizei count, const char** string, const GLint* length) | ||
2471 | { | ||
2472 | int i = 0, len = 0; | ||
2473 | |||
2474 | char **s = malloc(count * sizeof(char*)); | ||
2475 | GLint *l = malloc(count * sizeof(GLint)); | ||
2476 | |||
2477 | memset(s, 0, count * sizeof(char*)); | ||
2478 | memset(l, 0, count * sizeof(GLint)); | ||
2479 | |||
2480 | for (i = 0; i < count; ++i) | ||
2481 | { | ||
2482 | if (length) | ||
2483 | { | ||
2484 | len = length[i]; | ||
2485 | if (len < 0) | ||
2486 | len = string[i] ? strlen(string[i]) : 0; | ||
2487 | } | ||
2488 | else | ||
2489 | len = string[i] ? strlen(string[i]) : 0; | ||
2490 | |||
2491 | if (string[i]) | ||
2492 | { | ||
2493 | s[i] = patch_gles_shader(string[i], len, &l[i]); | ||
2494 | if (!s[i]) | ||
2495 | { | ||
2496 | while(i) | ||
2497 | free(s[--i]); | ||
2498 | free(l); | ||
2499 | free(s); | ||
2500 | |||
2501 | DBG("Patching Shader Failed."); | ||
2502 | return; | ||
2503 | } | ||
2504 | } | ||
2505 | else | ||
2506 | { | ||
2507 | s[i] = NULL; | ||
2508 | l[i] = 0; | ||
2509 | } | ||
2510 | } | ||
2511 | |||
2512 | _sym_glShaderSource(shader, count, (const char **)s, l); | ||
2513 | |||
2514 | while(i) | ||
2515 | free(s[--i]); | ||
2516 | free(l); | ||
2517 | free(s); | ||
2518 | } | ||
2519 | |||
2520 | |||
2521 | static void | ||
2522 | evgl_glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) | ||
2523 | { | ||
2524 | if (range) | ||
2525 | { | ||
2526 | range[0] = -126; // floor(log2(FLT_MIN)) | ||
2527 | range[1] = 127; // floor(log2(FLT_MAX)) | ||
2528 | } | ||
2529 | if (precision) | ||
2530 | { | ||
2531 | precision[0] = 24; // floor(-log2((1.0/16777218.0))); | ||
2532 | } | ||
2533 | return; | ||
2534 | shadertype = precisiontype = 0; | ||
2535 | } | ||
2536 | |||
2537 | static void | ||
2538 | evgl_glReleaseShaderCompiler(void) | ||
2539 | { | ||
2540 | DBG("Not supported in Desktop GL"); | ||
2541 | return; | ||
2542 | } | ||
2543 | |||
2544 | static void | ||
2545 | evgl_glShaderBinary(GLsizei n __UNUSED__, const GLuint* shaders __UNUSED__, GLenum binaryformat __UNUSED__, const void* binary __UNUSED__, GLsizei length __UNUSED__) | ||
2546 | { | ||
2547 | // FIXME: need to dlsym/getprocaddress for this | ||
2548 | DBG("Not supported in Desktop GL"); | ||
2549 | return; | ||
2550 | //n = binaryformat = length = 0; | ||
2551 | //shaders = binary = 0; | ||
2552 | } | ||
2553 | #endif | ||
2554 | //--------------------------------------------------------------// | ||
2555 | |||
2556 | |||
2557 | #ifdef EVAS_GL | ||
2558 | static void | ||
2559 | override_gl_apis(Evas_GL_API *api) | ||
2560 | { | ||
2561 | |||
2562 | api->version = EVAS_GL_API_VERSION; | ||
2563 | |||
2564 | #define ORD(f) EVAS_API_OVERRIDE(f, api, _sym_) | ||
2565 | // GLES 2.0 | ||
2566 | ORD(glActiveTexture); | ||
2567 | ORD(glAttachShader); | ||
2568 | ORD(glBindAttribLocation); | ||
2569 | ORD(glBindBuffer); | ||
2570 | ORD(glBindTexture); | ||
2571 | ORD(glBlendColor); | ||
2572 | ORD(glBlendEquation); | ||
2573 | ORD(glBlendEquationSeparate); | ||
2574 | ORD(glBlendFunc); | ||
2575 | ORD(glBlendFuncSeparate); | ||
2576 | ORD(glBufferData); | ||
2577 | ORD(glBufferSubData); | ||
2578 | ORD(glCheckFramebufferStatus); | ||
2579 | ORD(glClear); | ||
2580 | ORD(glClearColor); | ||
2581 | ORD(glClearDepthf); | ||
2582 | ORD(glClearStencil); | ||
2583 | ORD(glColorMask); | ||
2584 | ORD(glCompileShader); | ||
2585 | ORD(glCompressedTexImage2D); | ||
2586 | ORD(glCompressedTexSubImage2D); | ||
2587 | ORD(glCopyTexImage2D); | ||
2588 | ORD(glCopyTexSubImage2D); | ||
2589 | ORD(glCreateProgram); | ||
2590 | ORD(glCreateShader); | ||
2591 | ORD(glCullFace); | ||
2592 | ORD(glDeleteBuffers); | ||
2593 | ORD(glDeleteFramebuffers); | ||
2594 | ORD(glDeleteProgram); | ||
2595 | ORD(glDeleteRenderbuffers); | ||
2596 | ORD(glDeleteShader); | ||
2597 | ORD(glDeleteTextures); | ||
2598 | ORD(glDepthFunc); | ||
2599 | ORD(glDepthMask); | ||
2600 | ORD(glDepthRangef); | ||
2601 | ORD(glDetachShader); | ||
2602 | ORD(glDisable); | ||
2603 | ORD(glDisableVertexAttribArray); | ||
2604 | ORD(glDrawArrays); | ||
2605 | ORD(glDrawElements); | ||
2606 | ORD(glEnable); | ||
2607 | ORD(glEnableVertexAttribArray); | ||
2608 | ORD(glFinish); | ||
2609 | ORD(glFlush); | ||
2610 | ORD(glFramebufferRenderbuffer); | ||
2611 | ORD(glFramebufferTexture2D); | ||
2612 | ORD(glFrontFace); | ||
2613 | ORD(glGenBuffers); | ||
2614 | ORD(glGenerateMipmap); | ||
2615 | ORD(glGenFramebuffers); | ||
2616 | ORD(glGenRenderbuffers); | ||
2617 | ORD(glGenTextures); | ||
2618 | ORD(glGetActiveAttrib); | ||
2619 | ORD(glGetActiveUniform); | ||
2620 | ORD(glGetAttachedShaders); | ||
2621 | ORD(glGetAttribLocation); | ||
2622 | ORD(glGetBooleanv); | ||
2623 | ORD(glGetBufferParameteriv); | ||
2624 | ORD(glGetError); | ||
2625 | ORD(glGetFloatv); | ||
2626 | ORD(glGetFramebufferAttachmentParameteriv); | ||
2627 | ORD(glGetIntegerv); | ||
2628 | ORD(glGetProgramiv); | ||
2629 | ORD(glGetProgramInfoLog); | ||
2630 | ORD(glGetRenderbufferParameteriv); | ||
2631 | ORD(glGetShaderiv); | ||
2632 | ORD(glGetShaderInfoLog); | ||
2633 | ORD(glGetShaderPrecisionFormat); | ||
2634 | ORD(glGetShaderSource); | ||
2635 | ORD(glGetString); // FIXME | ||
2636 | ORD(glGetTexParameterfv); | ||
2637 | ORD(glGetTexParameteriv); | ||
2638 | ORD(glGetUniformfv); | ||
2639 | ORD(glGetUniformiv); | ||
2640 | ORD(glGetUniformLocation); | ||
2641 | ORD(glGetVertexAttribfv); | ||
2642 | ORD(glGetVertexAttribiv); | ||
2643 | ORD(glGetVertexAttribPointerv); | ||
2644 | ORD(glHint); | ||
2645 | ORD(glIsBuffer); | ||
2646 | ORD(glIsEnabled); | ||
2647 | ORD(glIsFramebuffer); | ||
2648 | ORD(glIsProgram); | ||
2649 | ORD(glIsRenderbuffer); | ||
2650 | ORD(glIsShader); | ||
2651 | ORD(glIsTexture); | ||
2652 | ORD(glLineWidth); | ||
2653 | ORD(glLinkProgram); | ||
2654 | ORD(glPixelStorei); | ||
2655 | ORD(glPolygonOffset); | ||
2656 | ORD(glReadPixels); | ||
2657 | ORD(glReleaseShaderCompiler); | ||
2658 | ORD(glRenderbufferStorage); | ||
2659 | ORD(glSampleCoverage); | ||
2660 | ORD(glScissor); | ||
2661 | ORD(glShaderBinary); | ||
2662 | ORD(glShaderSource); | ||
2663 | ORD(glStencilFunc); | ||
2664 | ORD(glStencilFuncSeparate); | ||
2665 | ORD(glStencilMask); | ||
2666 | ORD(glStencilMaskSeparate); | ||
2667 | ORD(glStencilOp); | ||
2668 | ORD(glStencilOpSeparate); | ||
2669 | ORD(glTexImage2D); | ||
2670 | ORD(glTexParameterf); | ||
2671 | ORD(glTexParameterfv); | ||
2672 | ORD(glTexParameteri); | ||
2673 | ORD(glTexParameteriv); | ||
2674 | ORD(glTexSubImage2D); | ||
2675 | ORD(glUniform1f); | ||
2676 | ORD(glUniform1fv); | ||
2677 | ORD(glUniform1i); | ||
2678 | ORD(glUniform1iv); | ||
2679 | ORD(glUniform2f); | ||
2680 | ORD(glUniform2fv); | ||
2681 | ORD(glUniform2i); | ||
2682 | ORD(glUniform2iv); | ||
2683 | ORD(glUniform3f); | ||
2684 | ORD(glUniform3fv); | ||
2685 | ORD(glUniform3i); | ||
2686 | ORD(glUniform3iv); | ||
2687 | ORD(glUniform4f); | ||
2688 | ORD(glUniform4fv); | ||
2689 | ORD(glUniform4i); | ||
2690 | ORD(glUniform4iv); | ||
2691 | ORD(glUniformMatrix2fv); | ||
2692 | ORD(glUniformMatrix3fv); | ||
2693 | ORD(glUniformMatrix4fv); | ||
2694 | ORD(glUseProgram); | ||
2695 | ORD(glValidateProgram); | ||
2696 | ORD(glVertexAttrib1f); | ||
2697 | ORD(glVertexAttrib1fv); | ||
2698 | ORD(glVertexAttrib2f); | ||
2699 | ORD(glVertexAttrib2fv); | ||
2700 | ORD(glVertexAttrib3f); | ||
2701 | ORD(glVertexAttrib3fv); | ||
2702 | ORD(glVertexAttrib4f); | ||
2703 | ORD(glVertexAttrib4fv); | ||
2704 | ORD(glVertexAttribPointer); | ||
2705 | ORD(glViewport); | ||
2706 | #undef ORD | ||
2707 | |||
2708 | #define ORD(f) EVAS_API_OVERRIDE(f, &gl_funcs, evgl_) | ||
2709 | if (!gl_lib_is_gles) | ||
2710 | { | ||
2711 | // Override functions wrapped by Evas_GL | ||
2712 | // GLES2.0 API compat on top of desktop gl | ||
2713 | ORD(glGetShaderPrecisionFormat); | ||
2714 | ORD(glReleaseShaderCompiler); | ||
2715 | ORD(glShaderBinary); | ||
2716 | } | ||
2717 | |||
2718 | ORD(glShaderSource); // Do precision stripping in both cases | ||
2719 | #undef ORD | ||
2720 | } | ||
2721 | #endif | ||
2722 | |||
2723 | //-------------------------------------------// | ||
2724 | static int | ||
2725 | gl_lib_init(void) | ||
2726 | { | ||
2727 | #ifdef EVAS_GL | ||
2728 | // dlopen OSMesa | ||
2729 | gl_lib_handle = dlopen("libOSMesa.so.1", RTLD_NOW); | ||
2730 | if (!gl_lib_handle) gl_lib_handle = dlopen("libOSMesa.so", RTLD_NOW); | ||
2731 | if (!gl_lib_handle) | ||
2732 | { | ||
2733 | DBG("Unable to open libOSMesa: %s", dlerror()); | ||
2734 | return 0; | ||
2735 | } | ||
2736 | |||
2737 | //------------------------------------------------// | ||
2738 | if (!glue_sym_init()) return 0; | ||
2739 | if (!gl_sym_init()) return 0; | ||
2740 | |||
2741 | override_gl_apis(&gl_funcs); | ||
2742 | |||
2743 | return 1; | ||
2744 | #else | ||
2745 | return 0; | ||
2746 | #endif | ||
2747 | } | ||
2748 | |||
2749 | |||
2750 | static void | ||
2751 | init_gl(void) | ||
2752 | { | ||
2753 | DBG("Initializing Software OpenGL APIs...\n"); | ||
2754 | |||
2755 | if (!gl_lib_init()) | ||
2756 | DBG("Unable to support EvasGL in this engine module. Install OSMesa to get it running"); | ||
2757 | else | ||
2758 | { | ||
2759 | #define ORD(f) EVAS_API_OVERRIDE(f, &func, eng_) | ||
2760 | ORD(gl_surface_create); | ||
2761 | ORD(gl_surface_destroy); | ||
2762 | ORD(gl_context_create); | ||
2763 | ORD(gl_context_destroy); | ||
2764 | ORD(gl_make_current); | ||
2765 | ORD(gl_string_query); // FIXME: Need to implement | ||
2766 | ORD(gl_proc_address_get); // FIXME: Need to implement | ||
2767 | ORD(gl_native_surface_get); | ||
2768 | ORD(gl_api_get); | ||
2769 | #undef ORD | ||
2770 | } | ||
2771 | } | ||
2772 | |||
2773 | |||
1185 | /* | 2774 | /* |
1186 | ***** | 2775 | ***** |
1187 | ** | 2776 | ** |
@@ -1201,6 +2790,9 @@ module_open(Evas_Module *em) | |||
1201 | EINA_LOG_ERR("Can not create a module log domain."); | 2790 | EINA_LOG_ERR("Can not create a module log domain."); |
1202 | return 0; | 2791 | return 0; |
1203 | } | 2792 | } |
2793 | |||
2794 | init_gl(); | ||
2795 | |||
1204 | em->functions = (void *)(&func); | 2796 | em->functions = (void *)(&func); |
1205 | cpunum = eina_cpu_count(); | 2797 | cpunum = eina_cpu_count(); |
1206 | return 1; | 2798 | return 1; |
diff --git a/libraries/evas/src/modules/engines/software_sdl/Makefile.in b/libraries/evas/src/modules/engines/software_sdl/Makefile.in index d1052c1..f63f3eb 100644 --- a/libraries/evas/src/modules/engines/software_sdl/Makefile.in +++ b/libraries/evas/src/modules/engines/software_sdl/Makefile.in | |||
@@ -241,8 +241,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
241 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 241 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
242 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 242 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
243 | PKG_CONFIG = @PKG_CONFIG@ | 243 | PKG_CONFIG = @PKG_CONFIG@ |
244 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
245 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
246 | PNG_CFLAGS = @PNG_CFLAGS@ | 244 | PNG_CFLAGS = @PNG_CFLAGS@ |
247 | PNG_LIBS = @PNG_LIBS@ | 245 | PNG_LIBS = @PNG_LIBS@ |
248 | RANLIB = @RANLIB@ | 246 | RANLIB = @RANLIB@ |
@@ -259,6 +257,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
259 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 257 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
260 | VERSION = @VERSION@ | 258 | VERSION = @VERSION@ |
261 | VMAJ = @VMAJ@ | 259 | VMAJ = @VMAJ@ |
260 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
261 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
262 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 262 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
263 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 263 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
264 | XCB_CFLAGS = @XCB_CFLAGS@ | 264 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -340,6 +340,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
340 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 340 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
341 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 341 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
342 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 342 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
343 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
344 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
345 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
346 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
343 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 347 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
344 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 348 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
345 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 349 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_x11/Makefile.in b/libraries/evas/src/modules/engines/software_x11/Makefile.in index f5c73af..5fd2971 100644 --- a/libraries/evas/src/modules/engines/software_x11/Makefile.in +++ b/libraries/evas/src/modules/engines/software_x11/Makefile.in | |||
@@ -282,8 +282,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
282 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 282 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
283 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 283 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
284 | PKG_CONFIG = @PKG_CONFIG@ | 284 | PKG_CONFIG = @PKG_CONFIG@ |
285 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
286 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
287 | PNG_CFLAGS = @PNG_CFLAGS@ | 285 | PNG_CFLAGS = @PNG_CFLAGS@ |
288 | PNG_LIBS = @PNG_LIBS@ | 286 | PNG_LIBS = @PNG_LIBS@ |
289 | RANLIB = @RANLIB@ | 287 | RANLIB = @RANLIB@ |
@@ -300,6 +298,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
300 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 298 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
301 | VERSION = @VERSION@ | 299 | VERSION = @VERSION@ |
302 | VMAJ = @VMAJ@ | 300 | VMAJ = @VMAJ@ |
301 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
302 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
303 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 303 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
304 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 304 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
305 | XCB_CFLAGS = @XCB_CFLAGS@ | 305 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -381,6 +381,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
381 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 381 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
382 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 382 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
383 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 383 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
384 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
385 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
386 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
387 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
384 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 388 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
385 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 389 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
386 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 390 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c b/libraries/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c index 1b1d3d9..24c45df 100644 --- a/libraries/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c +++ b/libraries/evas/src/modules/engines/software_x11/evas_xlib_outbuf.c | |||
@@ -579,6 +579,8 @@ evas_software_xlib_outbuf_new_region_for_update(Outbuf *buf, int x, int y, int w | |||
579 | free(obr); | 579 | free(obr); |
580 | return NULL; | 580 | return NULL; |
581 | } | 581 | } |
582 | im->cache_entry.w = w; | ||
583 | im->cache_entry.h = h; | ||
582 | im->cache_entry.flags.alpha |= alpha ? 1 : 0; | 584 | im->cache_entry.flags.alpha |= alpha ? 1 : 0; |
583 | evas_cache_image_surface_alloc(&im->cache_entry, w, h); | 585 | evas_cache_image_surface_alloc(&im->cache_entry, w, h); |
584 | im->extended_info = obr; | 586 | im->extended_info = obr; |
diff --git a/libraries/evas/src/modules/engines/wayland_egl/Evas_Engine_Wayland_Egl.h b/libraries/evas/src/modules/engines/wayland_egl/Evas_Engine_Wayland_Egl.h new file mode 100644 index 0000000..92ffe25 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_egl/Evas_Engine_Wayland_Egl.h | |||
@@ -0,0 +1,42 @@ | |||
1 | #ifndef _EVAS_ENGINE_WAYLAND_EGL_H | ||
2 | #define _EVAS_ENGINE_WAYLAND_EGL_H | ||
3 | |||
4 | #include <wayland-client.h> | ||
5 | |||
6 | typedef struct _Evas_Engine_Info_Wayland_Egl Evas_Engine_Info_Wayland_Egl; | ||
7 | |||
8 | struct _Evas_Engine_Info_Wayland_Egl | ||
9 | { | ||
10 | /* PRIVATE - don't mess with this baby or evas will poke its tongue out */ | ||
11 | /* at you and make nasty noises */ | ||
12 | Evas_Engine_Info magic; | ||
13 | |||
14 | /* engine specific data & parameters it needs to set up */ | ||
15 | struct { | ||
16 | struct wl_display *display; | ||
17 | struct wl_surface *surface; | ||
18 | int depth; | ||
19 | int screen; | ||
20 | int rotation; | ||
21 | unsigned int destination_alpha : 1; | ||
22 | } info; | ||
23 | /* engine specific function calls to query stuff about the destination */ | ||
24 | /* engine (what visual & colormap & depth to use, performance info etc. */ | ||
25 | struct { | ||
26 | int (*best_depth_get) (Evas_Engine_Info_Wayland_Egl *einfo); | ||
27 | } func; | ||
28 | |||
29 | struct { | ||
30 | void (*pre_swap) (void *data, Evas *e); | ||
31 | void (*post_swap) (void *data, Evas *e); | ||
32 | |||
33 | void *data; // data for callback calls | ||
34 | } callback; | ||
35 | |||
36 | /* non-blocking or blocking mode */ | ||
37 | Evas_Engine_Render_Mode render_mode; | ||
38 | |||
39 | unsigned char vsync : 1; // does nothing right now | ||
40 | unsigned char indirect : 1; // use indirect rendering | ||
41 | }; | ||
42 | #endif | ||
diff --git a/libraries/evas/src/modules/engines/wayland_egl/Makefile.am b/libraries/evas/src/modules/engines/wayland_egl/Makefile.am new file mode 100644 index 0000000..100614f --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_egl/Makefile.am | |||
@@ -0,0 +1,47 @@ | |||
1 | |||
2 | MAINTAINERCLEANFILES = Makefile.in | ||
3 | |||
4 | AM_CPPFLAGS = \ | ||
5 | -I. \ | ||
6 | -I$(top_srcdir)/src/lib \ | ||
7 | -I$(top_srcdir)/src/lib/include \ | ||
8 | -I$(top_srcdir)/src/modules/engines/gl_common \ | ||
9 | @FREETYPE_CFLAGS@ \ | ||
10 | @PIXMAN_CFLAGS@ \ | ||
11 | @EINA_CFLAGS@ \ | ||
12 | @GL_EET_CFLAGS@ \ | ||
13 | @evas_engine_wayland_egl_cflags@ | ||
14 | |||
15 | if BUILD_ENGINE_WAYLAND_EGL | ||
16 | |||
17 | WAYLAND_EGL_SOURCES = \ | ||
18 | evas_engine.c \ | ||
19 | evas_wl_main.c | ||
20 | |||
21 | WAYLAND_EGL_LIBADD = @FREETYPE_LIBS@ @GL_EET_LIBS@ @EINA_LIBS@ @evas_engine_wayland_egl_libs@ $(top_builddir)/src/modules/engines/gl_common/libevas_engine_gl_common.la | ||
22 | |||
23 | includes_HEADERS = Evas_Engine_Wayland_Egl.h | ||
24 | includesdir = $(includedir)/evas-@VMAJ@ | ||
25 | |||
26 | if !EVAS_STATIC_BUILD_WAYLAND_EGL | ||
27 | |||
28 | pkgdir = $(libdir)/evas/modules/engines/wayland_egl/$(MODULE_ARCH) | ||
29 | pkg_LTLIBRARIES = module.la | ||
30 | |||
31 | module_la_SOURCES = $(WAYLAND_EGL_SOURCES) | ||
32 | module_la_LIBADD = $(WAYLAND_EGL_LIBADD) $(top_builddir)/src/lib/libevas.la | ||
33 | module_la_LDFLAGS = -no-undefined -module -avoid-version | ||
34 | module_la_LIBTOOLFLAGS = --tag=disable-static | ||
35 | |||
36 | |||
37 | else | ||
38 | |||
39 | noinst_LTLIBRARIES = libevas_engine_wayland_egl.la | ||
40 | |||
41 | libevas_engine_wayland_egl_la_SOURCES = $(WAYLAND_EGL_SOURCES) | ||
42 | libevas_engine_wayland_egl_la_LIBADD = $(WAYLAND_EGL_LIBADD) | ||
43 | |||
44 | endif | ||
45 | endif | ||
46 | |||
47 | EXTRA_DIST = evas_engine.h | ||
diff --git a/libraries/evas/src/modules/engines/wayland_egl/Makefile.in b/libraries/evas/src/modules/engines/wayland_egl/Makefile.in new file mode 100644 index 0000000..0df0c63 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_egl/Makefile.in | |||
@@ -0,0 +1,816 @@ | |||
1 | # Makefile.in generated by automake 1.11.1 from Makefile.am. | ||
2 | # @configure_input@ | ||
3 | |||
4 | # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, | ||
5 | # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, | ||
6 | # Inc. | ||
7 | # This Makefile.in is free software; the Free Software Foundation | ||
8 | # gives unlimited permission to copy and/or distribute it, | ||
9 | # with or without modifications, as long as this notice is preserved. | ||
10 | |||
11 | # This program is distributed in the hope that it will be useful, | ||
12 | # but WITHOUT ANY WARRANTY, to the extent permitted by law; without | ||
13 | # even the implied warranty of MERCHANTABILITY or FITNESS FOR A | ||
14 | # PARTICULAR PURPOSE. | ||
15 | |||
16 | @SET_MAKE@ | ||
17 | |||
18 | |||
19 | VPATH = @srcdir@ | ||
20 | pkgdatadir = $(datadir)/@PACKAGE@ | ||
21 | pkgincludedir = $(includedir)/@PACKAGE@ | ||
22 | pkglibdir = $(libdir)/@PACKAGE@ | ||
23 | pkglibexecdir = $(libexecdir)/@PACKAGE@ | ||
24 | am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd | ||
25 | install_sh_DATA = $(install_sh) -c -m 644 | ||
26 | install_sh_PROGRAM = $(install_sh) -c | ||
27 | install_sh_SCRIPT = $(install_sh) -c | ||
28 | INSTALL_HEADER = $(INSTALL_DATA) | ||
29 | transform = $(program_transform_name) | ||
30 | NORMAL_INSTALL = : | ||
31 | PRE_INSTALL = : | ||
32 | POST_INSTALL = : | ||
33 | NORMAL_UNINSTALL = : | ||
34 | PRE_UNINSTALL = : | ||
35 | POST_UNINSTALL = : | ||
36 | build_triplet = @build@ | ||
37 | host_triplet = @host@ | ||
38 | subdir = src/modules/engines/wayland_egl | ||
39 | DIST_COMMON = $(am__includes_HEADERS_DIST) $(srcdir)/Makefile.am \ | ||
40 | $(srcdir)/Makefile.in | ||
41 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | ||
42 | am__aclocal_m4_deps = $(top_srcdir)/m4/efl_attribute.m4 \ | ||
43 | $(top_srcdir)/m4/efl_coverage.m4 \ | ||
44 | $(top_srcdir)/m4/efl_doxygen.m4 \ | ||
45 | $(top_srcdir)/m4/efl_fnmatch.m4 \ | ||
46 | $(top_srcdir)/m4/efl_path_max.m4 $(top_srcdir)/m4/efl_tests.m4 \ | ||
47 | $(top_srcdir)/m4/evas_check_engine.m4 \ | ||
48 | $(top_srcdir)/m4/evas_check_loader.m4 \ | ||
49 | $(top_srcdir)/m4/evas_converter.m4 \ | ||
50 | $(top_srcdir)/m4/evas_dither.m4 \ | ||
51 | $(top_srcdir)/m4/evas_scaler.m4 $(top_srcdir)/m4/libtool.m4 \ | ||
52 | $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ | ||
53 | $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ | ||
54 | $(top_srcdir)/configure.ac | ||
55 | am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ | ||
56 | $(ACLOCAL_M4) | ||
57 | mkinstalldirs = $(install_sh) -d | ||
58 | CONFIG_HEADER = $(top_builddir)/config.h | ||
59 | CONFIG_CLEAN_FILES = | ||
60 | CONFIG_CLEAN_VPATH_FILES = | ||
61 | am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; | ||
62 | am__vpath_adj = case $$p in \ | ||
63 | $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ | ||
64 | *) f=$$p;; \ | ||
65 | esac; | ||
66 | am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; | ||
67 | am__install_max = 40 | ||
68 | am__nobase_strip_setup = \ | ||
69 | srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` | ||
70 | am__nobase_strip = \ | ||
71 | for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" | ||
72 | am__nobase_list = $(am__nobase_strip_setup); \ | ||
73 | for p in $$list; do echo "$$p $$p"; done | \ | ||
74 | sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ | ||
75 | $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ | ||
76 | if (++n[$$2] == $(am__install_max)) \ | ||
77 | { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ | ||
78 | END { for (dir in files) print dir, files[dir] }' | ||
79 | am__base_list = \ | ||
80 | sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ | ||
81 | sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | ||
82 | am__installdirs = "$(DESTDIR)$(pkgdir)" "$(DESTDIR)$(includesdir)" | ||
83 | LTLIBRARIES = $(noinst_LTLIBRARIES) $(pkg_LTLIBRARIES) | ||
84 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@am__DEPENDENCIES_1 = $(top_builddir)/src/modules/engines/gl_common/libevas_engine_gl_common.la | ||
85 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE@libevas_engine_wayland_egl_la_DEPENDENCIES = $(am__DEPENDENCIES_1) | ||
86 | am__libevas_engine_wayland_egl_la_SOURCES_DIST = evas_engine.c \ | ||
87 | evas_wl_main.c | ||
88 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@am__objects_1 = evas_engine.lo \ | ||
89 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@ evas_wl_main.lo | ||
90 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE@am_libevas_engine_wayland_egl_la_OBJECTS = $(am__objects_1) | ||
91 | libevas_engine_wayland_egl_la_OBJECTS = \ | ||
92 | $(am_libevas_engine_wayland_egl_la_OBJECTS) | ||
93 | AM_V_lt = $(am__v_lt_$(V)) | ||
94 | am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) | ||
95 | am__v_lt_0 = --silent | ||
96 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE@am_libevas_engine_wayland_egl_la_rpath = | ||
97 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@module_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ | ||
98 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@ $(top_builddir)/src/lib/libevas.la | ||
99 | am__module_la_SOURCES_DIST = evas_engine.c evas_wl_main.c | ||
100 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@am__objects_2 = \ | ||
101 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@ module_la-evas_engine.lo \ | ||
102 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@ module_la-evas_wl_main.lo | ||
103 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@am_module_la_OBJECTS = $(am__objects_2) | ||
104 | module_la_OBJECTS = $(am_module_la_OBJECTS) | ||
105 | module_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ | ||
106 | $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ | ||
107 | $(AM_CFLAGS) $(CFLAGS) $(module_la_LDFLAGS) $(LDFLAGS) -o $@ | ||
108 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@am_module_la_rpath = -rpath \ | ||
109 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@ $(pkgdir) | ||
110 | DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) | ||
111 | depcomp = $(SHELL) $(top_srcdir)/depcomp | ||
112 | am__depfiles_maybe = depfiles | ||
113 | am__mv = mv -f | ||
114 | COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ | ||
115 | $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) | ||
116 | LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ | ||
117 | $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ | ||
118 | $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ | ||
119 | $(AM_CFLAGS) $(CFLAGS) | ||
120 | AM_V_CC = $(am__v_CC_$(V)) | ||
121 | am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) | ||
122 | am__v_CC_0 = @echo " CC " $@; | ||
123 | AM_V_at = $(am__v_at_$(V)) | ||
124 | am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) | ||
125 | am__v_at_0 = @ | ||
126 | CCLD = $(CC) | ||
127 | LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ | ||
128 | $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ | ||
129 | $(AM_LDFLAGS) $(LDFLAGS) -o $@ | ||
130 | AM_V_CCLD = $(am__v_CCLD_$(V)) | ||
131 | am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) | ||
132 | am__v_CCLD_0 = @echo " CCLD " $@; | ||
133 | AM_V_GEN = $(am__v_GEN_$(V)) | ||
134 | am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) | ||
135 | am__v_GEN_0 = @echo " GEN " $@; | ||
136 | SOURCES = $(libevas_engine_wayland_egl_la_SOURCES) \ | ||
137 | $(module_la_SOURCES) | ||
138 | DIST_SOURCES = $(am__libevas_engine_wayland_egl_la_SOURCES_DIST) \ | ||
139 | $(am__module_la_SOURCES_DIST) | ||
140 | am__includes_HEADERS_DIST = Evas_Engine_Wayland_Egl.h | ||
141 | HEADERS = $(includes_HEADERS) | ||
142 | ETAGS = etags | ||
143 | CTAGS = ctags | ||
144 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | ||
145 | ACLOCAL = @ACLOCAL@ | ||
146 | ALLOCA = @ALLOCA@ | ||
147 | AMTAR = @AMTAR@ | ||
148 | AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ | ||
149 | AR = @AR@ | ||
150 | AS = @AS@ | ||
151 | AUTOCONF = @AUTOCONF@ | ||
152 | AUTOHEADER = @AUTOHEADER@ | ||
153 | AUTOMAKE = @AUTOMAKE@ | ||
154 | AWK = @AWK@ | ||
155 | CC = @CC@ | ||
156 | CCDEPMODE = @CCDEPMODE@ | ||
157 | CFLAGS = @CFLAGS@ | ||
158 | CHECK_CFLAGS = @CHECK_CFLAGS@ | ||
159 | CHECK_LIBS = @CHECK_LIBS@ | ||
160 | CPP = @CPP@ | ||
161 | CPPFLAGS = @CPPFLAGS@ | ||
162 | CXX = @CXX@ | ||
163 | CXXCPP = @CXXCPP@ | ||
164 | CXXDEPMODE = @CXXDEPMODE@ | ||
165 | CXXFLAGS = @CXXFLAGS@ | ||
166 | CYGPATH_W = @CYGPATH_W@ | ||
167 | DEFS = @DEFS@ | ||
168 | DEPDIR = @DEPDIR@ | ||
169 | DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ | ||
170 | DIRECTFB_LIBS = @DIRECTFB_LIBS@ | ||
171 | DLLTOOL = @DLLTOOL@ | ||
172 | DSYMUTIL = @DSYMUTIL@ | ||
173 | DUMPBIN = @DUMPBIN@ | ||
174 | ECHO_C = @ECHO_C@ | ||
175 | ECHO_N = @ECHO_N@ | ||
176 | ECHO_T = @ECHO_T@ | ||
177 | ECORE_EVAS_CFLAGS = @ECORE_EVAS_CFLAGS@ | ||
178 | ECORE_EVAS_LIBS = @ECORE_EVAS_LIBS@ | ||
179 | EDB_CFLAGS = @EDB_CFLAGS@ | ||
180 | EDB_LIBS = @EDB_LIBS@ | ||
181 | EDJE_CFLAGS = @EDJE_CFLAGS@ | ||
182 | EDJE_LIBS = @EDJE_LIBS@ | ||
183 | EET_CFLAGS = @EET_CFLAGS@ | ||
184 | EET_LIBS = @EET_LIBS@ | ||
185 | EFL_COVERAGE_CFLAGS = @EFL_COVERAGE_CFLAGS@ | ||
186 | EFL_COVERAGE_LIBS = @EFL_COVERAGE_LIBS@ | ||
187 | EFL_FNMATCH_LIBS = @EFL_FNMATCH_LIBS@ | ||
188 | EGREP = @EGREP@ | ||
189 | EINA_CFLAGS = @EINA_CFLAGS@ | ||
190 | EINA_LIBS = @EINA_LIBS@ | ||
191 | EVAS_CFLAGS = @EVAS_CFLAGS@ | ||
192 | EVAS_LIBS = @EVAS_LIBS@ | ||
193 | EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ | ||
194 | EVIL_CFLAGS = @EVIL_CFLAGS@ | ||
195 | EVIL_LIBS = @EVIL_LIBS@ | ||
196 | EXEEXT = @EXEEXT@ | ||
197 | FGREP = @FGREP@ | ||
198 | FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ | ||
199 | FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ | ||
200 | FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ | ||
201 | FREETYPE_LIBS = @FREETYPE_LIBS@ | ||
202 | FRIBIDI_CFLAGS = @FRIBIDI_CFLAGS@ | ||
203 | FRIBIDI_LIBS = @FRIBIDI_LIBS@ | ||
204 | GL_EET_CFLAGS = @GL_EET_CFLAGS@ | ||
205 | GL_EET_LIBS = @GL_EET_LIBS@ | ||
206 | GREP = @GREP@ | ||
207 | HARFBUZZ_CFLAGS = @HARFBUZZ_CFLAGS@ | ||
208 | HARFBUZZ_LIBS = @HARFBUZZ_LIBS@ | ||
209 | INSTALL = @INSTALL@ | ||
210 | INSTALL_DATA = @INSTALL_DATA@ | ||
211 | INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||
212 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ | ||
213 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ | ||
214 | LD = @LD@ | ||
215 | LDFLAGS = @LDFLAGS@ | ||
216 | LIBOBJS = @LIBOBJS@ | ||
217 | LIBS = @LIBS@ | ||
218 | LIBTOOL = @LIBTOOL@ | ||
219 | LINEBREAK_CFLAGS = @LINEBREAK_CFLAGS@ | ||
220 | LINEBREAK_LIBS = @LINEBREAK_LIBS@ | ||
221 | LIPO = @LIPO@ | ||
222 | LN_S = @LN_S@ | ||
223 | LTLIBOBJS = @LTLIBOBJS@ | ||
224 | MAKEINFO = @MAKEINFO@ | ||
225 | MKDIR_P = @MKDIR_P@ | ||
226 | MODULE_ARCH = @MODULE_ARCH@ | ||
227 | NM = @NM@ | ||
228 | NMEDIT = @NMEDIT@ | ||
229 | OBJC = @OBJC@ | ||
230 | OBJCDEPMODE = @OBJCDEPMODE@ | ||
231 | OBJCFLAGS = @OBJCFLAGS@ | ||
232 | OBJDUMP = @OBJDUMP@ | ||
233 | OBJEXT = @OBJEXT@ | ||
234 | OTOOL = @OTOOL@ | ||
235 | OTOOL64 = @OTOOL64@ | ||
236 | PACKAGE = @PACKAGE@ | ||
237 | PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ | ||
238 | PACKAGE_NAME = @PACKAGE_NAME@ | ||
239 | PACKAGE_STRING = @PACKAGE_STRING@ | ||
240 | PACKAGE_TARNAME = @PACKAGE_TARNAME@ | ||
241 | PACKAGE_URL = @PACKAGE_URL@ | ||
242 | PACKAGE_VERSION = @PACKAGE_VERSION@ | ||
243 | PATH_SEPARATOR = @PATH_SEPARATOR@ | ||
244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | ||
245 | PIXMAN_LIBS = @PIXMAN_LIBS@ | ||
246 | PKG_CONFIG = @PKG_CONFIG@ | ||
247 | PNG_CFLAGS = @PNG_CFLAGS@ | ||
248 | PNG_LIBS = @PNG_LIBS@ | ||
249 | RANLIB = @RANLIB@ | ||
250 | SDL_CFLAGS = @SDL_CFLAGS@ | ||
251 | SDL_LIBS = @SDL_LIBS@ | ||
252 | SED = @SED@ | ||
253 | SET_MAKE = @SET_MAKE@ | ||
254 | SHELL = @SHELL@ | ||
255 | SHM_OPEN_LINK = @SHM_OPEN_LINK@ | ||
256 | STRIP = @STRIP@ | ||
257 | SVG_CFLAGS = @SVG_CFLAGS@ | ||
258 | SVG_LIBS = @SVG_LIBS@ | ||
259 | VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | ||
260 | VALGRIND_LIBS = @VALGRIND_LIBS@ | ||
261 | VERSION = @VERSION@ | ||
262 | VMAJ = @VMAJ@ | ||
263 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
264 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
265 | WIN32_CFLAGS = @WIN32_CFLAGS@ | ||
266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | ||
267 | XCB_CFLAGS = @XCB_CFLAGS@ | ||
268 | XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ | ||
269 | XCB_GL_LIBS = @XCB_GL_LIBS@ | ||
270 | XCB_LIBS = @XCB_LIBS@ | ||
271 | XEXT_CFLAGS = @XEXT_CFLAGS@ | ||
272 | XEXT_LIBS = @XEXT_LIBS@ | ||
273 | XMKMF = @XMKMF@ | ||
274 | X_CFLAGS = @X_CFLAGS@ | ||
275 | X_EXTRA_LIBS = @X_EXTRA_LIBS@ | ||
276 | X_LIBS = @X_LIBS@ | ||
277 | X_PRE_LIBS = @X_PRE_LIBS@ | ||
278 | abs_builddir = @abs_builddir@ | ||
279 | abs_srcdir = @abs_srcdir@ | ||
280 | abs_top_builddir = @abs_top_builddir@ | ||
281 | abs_top_srcdir = @abs_top_srcdir@ | ||
282 | ac_ct_CC = @ac_ct_CC@ | ||
283 | ac_ct_CXX = @ac_ct_CXX@ | ||
284 | ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ | ||
285 | ac_ct_OBJC = @ac_ct_OBJC@ | ||
286 | altivec_cflags = @altivec_cflags@ | ||
287 | am__include = @am__include@ | ||
288 | am__leading_dot = @am__leading_dot@ | ||
289 | am__quote = @am__quote@ | ||
290 | am__tar = @am__tar@ | ||
291 | am__untar = @am__untar@ | ||
292 | bindir = @bindir@ | ||
293 | build = @build@ | ||
294 | build_alias = @build_alias@ | ||
295 | build_cpu = @build_cpu@ | ||
296 | build_os = @build_os@ | ||
297 | build_vendor = @build_vendor@ | ||
298 | builddir = @builddir@ | ||
299 | datadir = @datadir@ | ||
300 | datarootdir = @datarootdir@ | ||
301 | dlopen_libs = @dlopen_libs@ | ||
302 | docdir = @docdir@ | ||
303 | dvidir = @dvidir@ | ||
304 | edje_cc = @edje_cc@ | ||
305 | efl_doxygen = @efl_doxygen@ | ||
306 | efl_have_doxygen = @efl_have_doxygen@ | ||
307 | evas_engine_buffer_cflags = @evas_engine_buffer_cflags@ | ||
308 | evas_engine_buffer_libs = @evas_engine_buffer_libs@ | ||
309 | evas_engine_direct3d_cflags = @evas_engine_direct3d_cflags@ | ||
310 | evas_engine_direct3d_libs = @evas_engine_direct3d_libs@ | ||
311 | evas_engine_directfb_cflags = @evas_engine_directfb_cflags@ | ||
312 | evas_engine_directfb_libs = @evas_engine_directfb_libs@ | ||
313 | evas_engine_fb_cflags = @evas_engine_fb_cflags@ | ||
314 | evas_engine_fb_libs = @evas_engine_fb_libs@ | ||
315 | evas_engine_gl_cocoa_cflags = @evas_engine_gl_cocoa_cflags@ | ||
316 | evas_engine_gl_cocoa_libs = @evas_engine_gl_cocoa_libs@ | ||
317 | evas_engine_gl_common_libs = @evas_engine_gl_common_libs@ | ||
318 | evas_engine_gl_sdl_cflags = @evas_engine_gl_sdl_cflags@ | ||
319 | evas_engine_gl_sdl_libs = @evas_engine_gl_sdl_libs@ | ||
320 | evas_engine_gl_xcb_cflags = @evas_engine_gl_xcb_cflags@ | ||
321 | evas_engine_gl_xcb_libs = @evas_engine_gl_xcb_libs@ | ||
322 | evas_engine_gl_xlib_cflags = @evas_engine_gl_xlib_cflags@ | ||
323 | evas_engine_gl_xlib_libs = @evas_engine_gl_xlib_libs@ | ||
324 | evas_engine_psl1ght_cflags = @evas_engine_psl1ght_cflags@ | ||
325 | evas_engine_psl1ght_libs = @evas_engine_psl1ght_libs@ | ||
326 | evas_engine_software_16_ddraw_cflags = @evas_engine_software_16_ddraw_cflags@ | ||
327 | evas_engine_software_16_ddraw_libs = @evas_engine_software_16_ddraw_libs@ | ||
328 | evas_engine_software_16_sdl_cflags = @evas_engine_software_16_sdl_cflags@ | ||
329 | evas_engine_software_16_sdl_libs = @evas_engine_software_16_sdl_libs@ | ||
330 | evas_engine_software_16_wince_cflags = @evas_engine_software_16_wince_cflags@ | ||
331 | evas_engine_software_16_wince_libs = @evas_engine_software_16_wince_libs@ | ||
332 | evas_engine_software_16_x11_cflags = @evas_engine_software_16_x11_cflags@ | ||
333 | evas_engine_software_16_x11_libs = @evas_engine_software_16_x11_libs@ | ||
334 | evas_engine_software_8_x11_cflags = @evas_engine_software_8_x11_cflags@ | ||
335 | evas_engine_software_8_x11_libs = @evas_engine_software_8_x11_libs@ | ||
336 | evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ | ||
337 | evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ | ||
338 | evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ | ||
339 | evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ | ||
340 | evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ | ||
341 | evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ | ||
342 | evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | ||
343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | ||
344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | ||
345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | ||
346 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
347 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
348 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
349 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
350 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | ||
351 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | ||
352 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | ||
353 | evas_image_loader_edb_libs = @evas_image_loader_edb_libs@ | ||
354 | evas_image_loader_eet_cflags = @evas_image_loader_eet_cflags@ | ||
355 | evas_image_loader_eet_libs = @evas_image_loader_eet_libs@ | ||
356 | evas_image_loader_generic_cflags = @evas_image_loader_generic_cflags@ | ||
357 | evas_image_loader_generic_libs = @evas_image_loader_generic_libs@ | ||
358 | evas_image_loader_gif_cflags = @evas_image_loader_gif_cflags@ | ||
359 | evas_image_loader_gif_libs = @evas_image_loader_gif_libs@ | ||
360 | evas_image_loader_ico_cflags = @evas_image_loader_ico_cflags@ | ||
361 | evas_image_loader_ico_libs = @evas_image_loader_ico_libs@ | ||
362 | evas_image_loader_jpeg_cflags = @evas_image_loader_jpeg_cflags@ | ||
363 | evas_image_loader_jpeg_libs = @evas_image_loader_jpeg_libs@ | ||
364 | evas_image_loader_pmaps_cflags = @evas_image_loader_pmaps_cflags@ | ||
365 | evas_image_loader_pmaps_libs = @evas_image_loader_pmaps_libs@ | ||
366 | evas_image_loader_png_cflags = @evas_image_loader_png_cflags@ | ||
367 | evas_image_loader_png_libs = @evas_image_loader_png_libs@ | ||
368 | evas_image_loader_psd_cflags = @evas_image_loader_psd_cflags@ | ||
369 | evas_image_loader_psd_libs = @evas_image_loader_psd_libs@ | ||
370 | evas_image_loader_svg_cflags = @evas_image_loader_svg_cflags@ | ||
371 | evas_image_loader_svg_libs = @evas_image_loader_svg_libs@ | ||
372 | evas_image_loader_tga_cflags = @evas_image_loader_tga_cflags@ | ||
373 | evas_image_loader_tga_libs = @evas_image_loader_tga_libs@ | ||
374 | evas_image_loader_tiff_cflags = @evas_image_loader_tiff_cflags@ | ||
375 | evas_image_loader_tiff_libs = @evas_image_loader_tiff_libs@ | ||
376 | evas_image_loader_wbmp_cflags = @evas_image_loader_wbmp_cflags@ | ||
377 | evas_image_loader_wbmp_libs = @evas_image_loader_wbmp_libs@ | ||
378 | evas_image_loader_xpm_cflags = @evas_image_loader_xpm_cflags@ | ||
379 | evas_image_loader_xpm_libs = @evas_image_loader_xpm_libs@ | ||
380 | exec_prefix = @exec_prefix@ | ||
381 | have_evas_engine_gl_x11 = @have_evas_engine_gl_x11@ | ||
382 | have_evas_engine_gl_xcb = @have_evas_engine_gl_xcb@ | ||
383 | have_evas_engine_gl_xlib = @have_evas_engine_gl_xlib@ | ||
384 | have_evas_engine_software_x11 = @have_evas_engine_software_x11@ | ||
385 | have_evas_engine_software_xcb = @have_evas_engine_software_xcb@ | ||
386 | have_evas_engine_software_xlib = @have_evas_engine_software_xlib@ | ||
387 | have_lcov = @have_lcov@ | ||
388 | host = @host@ | ||
389 | host_alias = @host_alias@ | ||
390 | host_cpu = @host_cpu@ | ||
391 | host_os = @host_os@ | ||
392 | host_vendor = @host_vendor@ | ||
393 | htmldir = @htmldir@ | ||
394 | includedir = @includedir@ | ||
395 | infodir = @infodir@ | ||
396 | install_sh = @install_sh@ | ||
397 | libdir = @libdir@ | ||
398 | libexecdir = @libexecdir@ | ||
399 | localedir = @localedir@ | ||
400 | localstatedir = @localstatedir@ | ||
401 | lt_ECHO = @lt_ECHO@ | ||
402 | lt_enable_auto_import = @lt_enable_auto_import@ | ||
403 | mandir = @mandir@ | ||
404 | mkdir_p = @mkdir_p@ | ||
405 | oldincludedir = @oldincludedir@ | ||
406 | pdfdir = @pdfdir@ | ||
407 | pkgconfig_requires_private = @pkgconfig_requires_private@ | ||
408 | prefix = @prefix@ | ||
409 | program_transform_name = @program_transform_name@ | ||
410 | psdir = @psdir@ | ||
411 | pthread_cflags = @pthread_cflags@ | ||
412 | pthread_libs = @pthread_libs@ | ||
413 | release_info = @release_info@ | ||
414 | requirement_evas = @requirement_evas@ | ||
415 | sbindir = @sbindir@ | ||
416 | sharedstatedir = @sharedstatedir@ | ||
417 | srcdir = @srcdir@ | ||
418 | sysconfdir = @sysconfdir@ | ||
419 | target_alias = @target_alias@ | ||
420 | top_build_prefix = @top_build_prefix@ | ||
421 | top_builddir = @top_builddir@ | ||
422 | top_srcdir = @top_srcdir@ | ||
423 | version_info = @version_info@ | ||
424 | MAINTAINERCLEANFILES = Makefile.in | ||
425 | AM_CPPFLAGS = \ | ||
426 | -I. \ | ||
427 | -I$(top_srcdir)/src/lib \ | ||
428 | -I$(top_srcdir)/src/lib/include \ | ||
429 | -I$(top_srcdir)/src/modules/engines/gl_common \ | ||
430 | @FREETYPE_CFLAGS@ \ | ||
431 | @PIXMAN_CFLAGS@ \ | ||
432 | @EINA_CFLAGS@ \ | ||
433 | @GL_EET_CFLAGS@ \ | ||
434 | @evas_engine_wayland_egl_cflags@ | ||
435 | |||
436 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@WAYLAND_EGL_SOURCES = \ | ||
437 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@evas_engine.c \ | ||
438 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@evas_wl_main.c | ||
439 | |||
440 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@WAYLAND_EGL_LIBADD = @FREETYPE_LIBS@ @GL_EET_LIBS@ @EINA_LIBS@ @evas_engine_wayland_egl_libs@ $(top_builddir)/src/modules/engines/gl_common/libevas_engine_gl_common.la | ||
441 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@includes_HEADERS = Evas_Engine_Wayland_Egl.h | ||
442 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@includesdir = $(includedir)/evas-@VMAJ@ | ||
443 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@pkgdir = $(libdir)/evas/modules/engines/wayland_egl/$(MODULE_ARCH) | ||
444 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@pkg_LTLIBRARIES = module.la | ||
445 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@module_la_SOURCES = $(WAYLAND_EGL_SOURCES) | ||
446 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@module_la_LIBADD = $(WAYLAND_EGL_LIBADD) $(top_builddir)/src/lib/libevas.la | ||
447 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@module_la_LDFLAGS = -no-undefined -module -avoid-version | ||
448 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_FALSE@module_la_LIBTOOLFLAGS = --tag=disable-static | ||
449 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE@noinst_LTLIBRARIES = libevas_engine_wayland_egl.la | ||
450 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE@libevas_engine_wayland_egl_la_SOURCES = $(WAYLAND_EGL_SOURCES) | ||
451 | @BUILD_ENGINE_WAYLAND_EGL_TRUE@@EVAS_STATIC_BUILD_WAYLAND_EGL_TRUE@libevas_engine_wayland_egl_la_LIBADD = $(WAYLAND_EGL_LIBADD) | ||
452 | EXTRA_DIST = evas_engine.h | ||
453 | all: all-am | ||
454 | |||
455 | .SUFFIXES: | ||
456 | .SUFFIXES: .c .lo .o .obj | ||
457 | $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) | ||
458 | @for dep in $?; do \ | ||
459 | case '$(am__configure_deps)' in \ | ||
460 | *$$dep*) \ | ||
461 | ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ | ||
462 | && { if test -f $@; then exit 0; else break; fi; }; \ | ||
463 | exit 1;; \ | ||
464 | esac; \ | ||
465 | done; \ | ||
466 | echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/modules/engines/wayland_egl/Makefile'; \ | ||
467 | $(am__cd) $(top_srcdir) && \ | ||
468 | $(AUTOMAKE) --gnu src/modules/engines/wayland_egl/Makefile | ||
469 | .PRECIOUS: Makefile | ||
470 | Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status | ||
471 | @case '$?' in \ | ||
472 | *config.status*) \ | ||
473 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ | ||
474 | *) \ | ||
475 | echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ | ||
476 | cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ | ||
477 | esac; | ||
478 | |||
479 | $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) | ||
480 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
481 | |||
482 | $(top_srcdir)/configure: $(am__configure_deps) | ||
483 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
484 | $(ACLOCAL_M4): $(am__aclocal_m4_deps) | ||
485 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
486 | $(am__aclocal_m4_deps): | ||
487 | |||
488 | clean-noinstLTLIBRARIES: | ||
489 | -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) | ||
490 | @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ | ||
491 | dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ | ||
492 | test "$$dir" != "$$p" || dir=.; \ | ||
493 | echo "rm -f \"$${dir}/so_locations\""; \ | ||
494 | rm -f "$${dir}/so_locations"; \ | ||
495 | done | ||
496 | install-pkgLTLIBRARIES: $(pkg_LTLIBRARIES) | ||
497 | @$(NORMAL_INSTALL) | ||
498 | test -z "$(pkgdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgdir)" | ||
499 | @list='$(pkg_LTLIBRARIES)'; test -n "$(pkgdir)" || list=; \ | ||
500 | list2=; for p in $$list; do \ | ||
501 | if test -f $$p; then \ | ||
502 | list2="$$list2 $$p"; \ | ||
503 | else :; fi; \ | ||
504 | done; \ | ||
505 | test -z "$$list2" || { \ | ||
506 | echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkgdir)'"; \ | ||
507 | $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkgdir)"; \ | ||
508 | } | ||
509 | |||
510 | uninstall-pkgLTLIBRARIES: | ||
511 | @$(NORMAL_UNINSTALL) | ||
512 | @list='$(pkg_LTLIBRARIES)'; test -n "$(pkgdir)" || list=; \ | ||
513 | for p in $$list; do \ | ||
514 | $(am__strip_dir) \ | ||
515 | echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkgdir)/$$f'"; \ | ||
516 | $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkgdir)/$$f"; \ | ||
517 | done | ||
518 | |||
519 | clean-pkgLTLIBRARIES: | ||
520 | -test -z "$(pkg_LTLIBRARIES)" || rm -f $(pkg_LTLIBRARIES) | ||
521 | @list='$(pkg_LTLIBRARIES)'; for p in $$list; do \ | ||
522 | dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ | ||
523 | test "$$dir" != "$$p" || dir=.; \ | ||
524 | echo "rm -f \"$${dir}/so_locations\""; \ | ||
525 | rm -f "$${dir}/so_locations"; \ | ||
526 | done | ||
527 | libevas_engine_wayland_egl.la: $(libevas_engine_wayland_egl_la_OBJECTS) $(libevas_engine_wayland_egl_la_DEPENDENCIES) | ||
528 | $(AM_V_CCLD)$(LINK) $(am_libevas_engine_wayland_egl_la_rpath) $(libevas_engine_wayland_egl_la_OBJECTS) $(libevas_engine_wayland_egl_la_LIBADD) $(LIBS) | ||
529 | module.la: $(module_la_OBJECTS) $(module_la_DEPENDENCIES) | ||
530 | $(AM_V_CCLD)$(module_la_LINK) $(am_module_la_rpath) $(module_la_OBJECTS) $(module_la_LIBADD) $(LIBS) | ||
531 | |||
532 | mostlyclean-compile: | ||
533 | -rm -f *.$(OBJEXT) | ||
534 | |||
535 | distclean-compile: | ||
536 | -rm -f *.tab.c | ||
537 | |||
538 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evas_engine.Plo@am__quote@ | ||
539 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evas_wl_main.Plo@am__quote@ | ||
540 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/module_la-evas_engine.Plo@am__quote@ | ||
541 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/module_la-evas_wl_main.Plo@am__quote@ | ||
542 | |||
543 | .c.o: | ||
544 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< | ||
545 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po | ||
546 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
547 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | ||
548 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
549 | @am__fastdepCC_FALSE@ $(COMPILE) -c $< | ||
550 | |||
551 | .c.obj: | ||
552 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` | ||
553 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po | ||
554 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
555 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | ||
556 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
557 | @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` | ||
558 | |||
559 | .c.lo: | ||
560 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< | ||
561 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo | ||
562 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
563 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ | ||
564 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
565 | @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< | ||
566 | |||
567 | module_la-evas_engine.lo: evas_engine.c | ||
568 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_engine.lo -MD -MP -MF $(DEPDIR)/module_la-evas_engine.Tpo -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c | ||
569 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_engine.Tpo $(DEPDIR)/module_la-evas_engine.Plo | ||
570 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
571 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_engine.c' object='module_la-evas_engine.lo' libtool=yes @AMDEPBACKSLASH@ | ||
572 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
573 | @am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c | ||
574 | |||
575 | module_la-evas_wl_main.lo: evas_wl_main.c | ||
576 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_wl_main.lo -MD -MP -MF $(DEPDIR)/module_la-evas_wl_main.Tpo -c -o module_la-evas_wl_main.lo `test -f 'evas_wl_main.c' || echo '$(srcdir)/'`evas_wl_main.c | ||
577 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_wl_main.Tpo $(DEPDIR)/module_la-evas_wl_main.Plo | ||
578 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
579 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_wl_main.c' object='module_la-evas_wl_main.lo' libtool=yes @AMDEPBACKSLASH@ | ||
580 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
581 | @am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_wl_main.lo `test -f 'evas_wl_main.c' || echo '$(srcdir)/'`evas_wl_main.c | ||
582 | |||
583 | mostlyclean-libtool: | ||
584 | -rm -f *.lo | ||
585 | |||
586 | clean-libtool: | ||
587 | -rm -rf .libs _libs | ||
588 | install-includesHEADERS: $(includes_HEADERS) | ||
589 | @$(NORMAL_INSTALL) | ||
590 | test -z "$(includesdir)" || $(MKDIR_P) "$(DESTDIR)$(includesdir)" | ||
591 | @list='$(includes_HEADERS)'; test -n "$(includesdir)" || list=; \ | ||
592 | for p in $$list; do \ | ||
593 | if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ | ||
594 | echo "$$d$$p"; \ | ||
595 | done | $(am__base_list) | \ | ||
596 | while read files; do \ | ||
597 | echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includesdir)'"; \ | ||
598 | $(INSTALL_HEADER) $$files "$(DESTDIR)$(includesdir)" || exit $$?; \ | ||
599 | done | ||
600 | |||
601 | uninstall-includesHEADERS: | ||
602 | @$(NORMAL_UNINSTALL) | ||
603 | @list='$(includes_HEADERS)'; test -n "$(includesdir)" || list=; \ | ||
604 | files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ | ||
605 | test -n "$$files" || exit 0; \ | ||
606 | echo " ( cd '$(DESTDIR)$(includesdir)' && rm -f" $$files ")"; \ | ||
607 | cd "$(DESTDIR)$(includesdir)" && rm -f $$files | ||
608 | |||
609 | ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) | ||
610 | list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | ||
611 | unique=`for i in $$list; do \ | ||
612 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | ||
613 | done | \ | ||
614 | $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ | ||
615 | END { if (nonempty) { for (i in files) print i; }; }'`; \ | ||
616 | mkid -fID $$unique | ||
617 | tags: TAGS | ||
618 | |||
619 | TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ | ||
620 | $(TAGS_FILES) $(LISP) | ||
621 | set x; \ | ||
622 | here=`pwd`; \ | ||
623 | list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | ||
624 | unique=`for i in $$list; do \ | ||
625 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | ||
626 | done | \ | ||
627 | $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ | ||
628 | END { if (nonempty) { for (i in files) print i; }; }'`; \ | ||
629 | shift; \ | ||
630 | if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ | ||
631 | test -n "$$unique" || unique=$$empty_fix; \ | ||
632 | if test $$# -gt 0; then \ | ||
633 | $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ | ||
634 | "$$@" $$unique; \ | ||
635 | else \ | ||
636 | $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ | ||
637 | $$unique; \ | ||
638 | fi; \ | ||
639 | fi | ||
640 | ctags: CTAGS | ||
641 | CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ | ||
642 | $(TAGS_FILES) $(LISP) | ||
643 | list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | ||
644 | unique=`for i in $$list; do \ | ||
645 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | ||
646 | done | \ | ||
647 | $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ | ||
648 | END { if (nonempty) { for (i in files) print i; }; }'`; \ | ||
649 | test -z "$(CTAGS_ARGS)$$unique" \ | ||
650 | || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ | ||
651 | $$unique | ||
652 | |||
653 | GTAGS: | ||
654 | here=`$(am__cd) $(top_builddir) && pwd` \ | ||
655 | && $(am__cd) $(top_srcdir) \ | ||
656 | && gtags -i $(GTAGS_ARGS) "$$here" | ||
657 | |||
658 | distclean-tags: | ||
659 | -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags | ||
660 | |||
661 | distdir: $(DISTFILES) | ||
662 | @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
663 | topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
664 | list='$(DISTFILES)'; \ | ||
665 | dist_files=`for file in $$list; do echo $$file; done | \ | ||
666 | sed -e "s|^$$srcdirstrip/||;t" \ | ||
667 | -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ | ||
668 | case $$dist_files in \ | ||
669 | */*) $(MKDIR_P) `echo "$$dist_files" | \ | ||
670 | sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ | ||
671 | sort -u` ;; \ | ||
672 | esac; \ | ||
673 | for file in $$dist_files; do \ | ||
674 | if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ | ||
675 | if test -d $$d/$$file; then \ | ||
676 | dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ | ||
677 | if test -d "$(distdir)/$$file"; then \ | ||
678 | find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
679 | fi; \ | ||
680 | if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ | ||
681 | cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ | ||
682 | find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
683 | fi; \ | ||
684 | cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ | ||
685 | else \ | ||
686 | test -f "$(distdir)/$$file" \ | ||
687 | || cp -p $$d/$$file "$(distdir)/$$file" \ | ||
688 | || exit 1; \ | ||
689 | fi; \ | ||
690 | done | ||
691 | check-am: all-am | ||
692 | check: check-am | ||
693 | all-am: Makefile $(LTLIBRARIES) $(HEADERS) | ||
694 | installdirs: | ||
695 | for dir in "$(DESTDIR)$(pkgdir)" "$(DESTDIR)$(includesdir)"; do \ | ||
696 | test -z "$$dir" || $(MKDIR_P) "$$dir"; \ | ||
697 | done | ||
698 | install: install-am | ||
699 | install-exec: install-exec-am | ||
700 | install-data: install-data-am | ||
701 | uninstall: uninstall-am | ||
702 | |||
703 | install-am: all-am | ||
704 | @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am | ||
705 | |||
706 | installcheck: installcheck-am | ||
707 | install-strip: | ||
708 | $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ | ||
709 | install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ | ||
710 | `test -z '$(STRIP)' || \ | ||
711 | echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install | ||
712 | mostlyclean-generic: | ||
713 | |||
714 | clean-generic: | ||
715 | |||
716 | distclean-generic: | ||
717 | -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) | ||
718 | -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) | ||
719 | |||
720 | maintainer-clean-generic: | ||
721 | @echo "This command is intended for maintainers to use" | ||
722 | @echo "it deletes files that may require special tools to rebuild." | ||
723 | -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) | ||
724 | clean: clean-am | ||
725 | |||
726 | clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ | ||
727 | clean-pkgLTLIBRARIES mostlyclean-am | ||
728 | |||
729 | distclean: distclean-am | ||
730 | -rm -rf ./$(DEPDIR) | ||
731 | -rm -f Makefile | ||
732 | distclean-am: clean-am distclean-compile distclean-generic \ | ||
733 | distclean-tags | ||
734 | |||
735 | dvi: dvi-am | ||
736 | |||
737 | dvi-am: | ||
738 | |||
739 | html: html-am | ||
740 | |||
741 | html-am: | ||
742 | |||
743 | info: info-am | ||
744 | |||
745 | info-am: | ||
746 | |||
747 | install-data-am: install-includesHEADERS install-pkgLTLIBRARIES | ||
748 | |||
749 | install-dvi: install-dvi-am | ||
750 | |||
751 | install-dvi-am: | ||
752 | |||
753 | install-exec-am: | ||
754 | |||
755 | install-html: install-html-am | ||
756 | |||
757 | install-html-am: | ||
758 | |||
759 | install-info: install-info-am | ||
760 | |||
761 | install-info-am: | ||
762 | |||
763 | install-man: | ||
764 | |||
765 | install-pdf: install-pdf-am | ||
766 | |||
767 | install-pdf-am: | ||
768 | |||
769 | install-ps: install-ps-am | ||
770 | |||
771 | install-ps-am: | ||
772 | |||
773 | installcheck-am: | ||
774 | |||
775 | maintainer-clean: maintainer-clean-am | ||
776 | -rm -rf ./$(DEPDIR) | ||
777 | -rm -f Makefile | ||
778 | maintainer-clean-am: distclean-am maintainer-clean-generic | ||
779 | |||
780 | mostlyclean: mostlyclean-am | ||
781 | |||
782 | mostlyclean-am: mostlyclean-compile mostlyclean-generic \ | ||
783 | mostlyclean-libtool | ||
784 | |||
785 | pdf: pdf-am | ||
786 | |||
787 | pdf-am: | ||
788 | |||
789 | ps: ps-am | ||
790 | |||
791 | ps-am: | ||
792 | |||
793 | uninstall-am: uninstall-includesHEADERS uninstall-pkgLTLIBRARIES | ||
794 | |||
795 | .MAKE: install-am install-strip | ||
796 | |||
797 | .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ | ||
798 | clean-libtool clean-noinstLTLIBRARIES clean-pkgLTLIBRARIES \ | ||
799 | ctags distclean distclean-compile distclean-generic \ | ||
800 | distclean-libtool distclean-tags distdir dvi dvi-am html \ | ||
801 | html-am info info-am install install-am install-data \ | ||
802 | install-data-am install-dvi install-dvi-am install-exec \ | ||
803 | install-exec-am install-html install-html-am \ | ||
804 | install-includesHEADERS install-info install-info-am \ | ||
805 | install-man install-pdf install-pdf-am install-pkgLTLIBRARIES \ | ||
806 | install-ps install-ps-am install-strip installcheck \ | ||
807 | installcheck-am installdirs maintainer-clean \ | ||
808 | maintainer-clean-generic mostlyclean mostlyclean-compile \ | ||
809 | mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ | ||
810 | tags uninstall uninstall-am uninstall-includesHEADERS \ | ||
811 | uninstall-pkgLTLIBRARIES | ||
812 | |||
813 | |||
814 | # Tell versions [3.59,3.63) of GNU make to not export all variables. | ||
815 | # Otherwise a system limit (for SysV at least) may be exceeded. | ||
816 | .NOEXPORT: | ||
diff --git a/libraries/evas/src/modules/engines/wayland_egl/evas_engine.c b/libraries/evas/src/modules/engines/wayland_egl/evas_engine.c new file mode 100644 index 0000000..d2a6a0d --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_egl/evas_engine.c | |||
@@ -0,0 +1,3174 @@ | |||
1 | #include "evas_common.h" /* Also includes international specific stuff */ | ||
2 | #include "evas_engine.h" | ||
3 | |||
4 | #ifdef HAVE_DLSYM | ||
5 | # include <dlfcn.h> /* dlopen,dlclose,etc */ | ||
6 | #else | ||
7 | # error gl_x11 should not get compiled if dlsym is not found on the system! | ||
8 | #endif | ||
9 | |||
10 | #define EVAS_GL_NO_GL_H_CHECK 1 | ||
11 | #include "Evas_GL.h" | ||
12 | |||
13 | typedef struct _Render_Engine Render_Engine; | ||
14 | typedef struct _Render_Engine_GL_Surface Render_Engine_GL_Surface; | ||
15 | typedef struct _Render_Engine_GL_Context Render_Engine_GL_Context; | ||
16 | typedef struct _Render_Engine_GL_Resource Render_Engine_GL_Resource; | ||
17 | typedef struct _Extension_Entry Extension_Entry; | ||
18 | |||
19 | struct _Render_Engine | ||
20 | { | ||
21 | Evas_GL_Wl_Window *win; | ||
22 | Evas_Engine_Info_Wayland_Egl *info; | ||
23 | Evas *evas; | ||
24 | Tilebuf *tb; | ||
25 | int end; | ||
26 | int w, h; | ||
27 | int vsync; | ||
28 | |||
29 | }; | ||
30 | |||
31 | struct _Render_Engine_GL_Surface | ||
32 | { | ||
33 | int initialized; | ||
34 | int fbo_attached; | ||
35 | int w, h; | ||
36 | int depth_bits; | ||
37 | int stencil_bits; | ||
38 | |||
39 | // Render target texture/buffers | ||
40 | GLuint rt_tex; | ||
41 | GLint rt_internal_fmt; | ||
42 | GLenum rt_fmt; | ||
43 | GLuint rb_depth; | ||
44 | GLenum rb_depth_fmt; | ||
45 | GLuint rb_stencil; | ||
46 | GLenum rb_stencil_fmt; | ||
47 | |||
48 | Render_Engine_GL_Context *current_ctx; | ||
49 | }; | ||
50 | |||
51 | struct _Render_Engine_GL_Context | ||
52 | { | ||
53 | int initialized; | ||
54 | EGLContext context; | ||
55 | GLuint context_fbo; | ||
56 | GLuint current_fbo; | ||
57 | |||
58 | Render_Engine_GL_Surface *current_sfc; | ||
59 | }; | ||
60 | |||
61 | // Resources used per thread | ||
62 | struct _Render_Engine_GL_Resource | ||
63 | { | ||
64 | // Resource context/surface per Thread in TLS for evasgl use | ||
65 | EGLContext context; | ||
66 | EGLSurface surface; | ||
67 | }; | ||
68 | |||
69 | // Extension Handling | ||
70 | struct _Extension_Entry | ||
71 | { | ||
72 | const char *name; | ||
73 | const char *real_name; | ||
74 | int supported; | ||
75 | }; | ||
76 | |||
77 | static int initted = 0; | ||
78 | static int gl_wins = 0; | ||
79 | static Render_Engine_GL_Context *current_evgl_ctx; | ||
80 | static Render_Engine *current_engine; | ||
81 | |||
82 | static char _gl_ext_string[1024]; | ||
83 | static char _evasgl_ext_string[1024]; | ||
84 | |||
85 | // Resource context/surface per Thread in TLS for evasgl use | ||
86 | static Eina_TLS resource_key; | ||
87 | static Eina_List *resource_list; | ||
88 | LK(resource_lock); | ||
89 | |||
90 | typedef void (*_eng_fn) (void); | ||
91 | typedef _eng_fn (*glsym_func_eng_fn) (); | ||
92 | typedef void (*glsym_func_void) (); | ||
93 | typedef void *(*glsym_func_void_ptr) (); | ||
94 | typedef int (*glsym_func_int) (); | ||
95 | typedef unsigned int (*glsym_func_uint) (); | ||
96 | typedef unsigned char (*glsym_func_uchar) (); | ||
97 | typedef unsigned char *(*glsym_func_uchar_ptr) (); | ||
98 | typedef const char *(*glsym_func_const_char_ptr) (); | ||
99 | |||
100 | #ifndef EGL_NATIVE_PIXMAP_KHR | ||
101 | # define EGL_NATIVE_PIXMAP_KHR 0x30b0 | ||
102 | #endif | ||
103 | _eng_fn (*glsym_eglGetProcAddress) (const char *a) = NULL; | ||
104 | void (*glsym_eglBindTexImage) (EGLDisplay a, EGLSurface b, int c) = NULL; | ||
105 | void (*glsym_eglReleaseTexImage) (EGLDisplay a, EGLSurface b, int c) = NULL; | ||
106 | void *(*glsym_eglCreateImage) (EGLDisplay a, EGLContext b, EGLenum c, EGLClientBuffer d, const int *e) = NULL; | ||
107 | void (*glsym_eglDestroyImage) (EGLDisplay a, void *b) = NULL; | ||
108 | void (*glsym_glEGLImageTargetTexture2DOES) (int a, void *b) = NULL; | ||
109 | void (*glsym_glEGLImageTargetRenderbufferStorageOES) (int a, void *b) = NULL; | ||
110 | void *(*glsym_eglMapImageSEC) (void *a, void *b) = NULL; | ||
111 | unsigned int (*glsym_eglUnmapImageSEC) (void *a, void *b) = NULL; | ||
112 | const char *(*glsym_eglQueryString) (EGLDisplay a, int name) = NULL; | ||
113 | |||
114 | unsigned int (*glsym_eglLockSurface) (EGLDisplay a, EGLSurface b, const int *attrib_list) = NULL; | ||
115 | unsigned int (*glsym_eglUnlockSurface) (EGLDisplay a, EGLSurface b) = NULL; | ||
116 | |||
117 | // GLES2 Extensions | ||
118 | void (*glsym_glGetProgramBinaryOES) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary) = NULL; | ||
119 | void (*glsym_glProgramBinaryOES) (GLuint program, GLenum binaryFormat, const void *binary, GLint length) = NULL; | ||
120 | void* (*glsym_glMapBufferOES) (GLenum target, GLenum access) = NULL; | ||
121 | unsigned char (*glsym_glUnmapBufferOES) (GLenum target) = NULL; | ||
122 | void (*glsym_glGetBufferPointervOES) (GLenum target, GLenum pname, void** params) = NULL; | ||
123 | void (*glsym_glTexImage3DOES) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void* pixels) = NULL; | ||
124 | void (*glsym_glTexSubImage3DOES) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void* pixels) = NULL; | ||
125 | void (*glsym_glCopyTexSubImage3DOES) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height) = NULL; | ||
126 | void (*glsym_glCompressedTexImage3DOES) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void* data) = NULL; | ||
127 | void (*glsym_glCompressedTexSubImage3DOES) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void* data) = NULL; | ||
128 | void (*glsym_glFramebufferTexture3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset) = NULL; | ||
129 | void (*glsym_glGetPerfMonitorGroupsAMD) (GLint* numGroups, GLsizei groupsSize, GLuint* groups) = NULL; | ||
130 | void (*glsym_glGetPerfMonitorCountersAMD) (GLuint group, GLint* numCounters, GLint* maxActiveCounters, GLsizei counterSize, GLuint* counters) = NULL; | ||
131 | void (*glsym_glGetPerfMonitorGroupStringAMD) (GLuint group, GLsizei bufSize, GLsizei* length, char* groupString) = NULL; | ||
132 | void (*glsym_glGetPerfMonitorCounterStringAMD) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei* length, char* counterString) = NULL; | ||
133 | void (*glsym_glGetPerfMonitorCounterInfoAMD) (GLuint group, GLuint counter, GLenum pname, void* data) = NULL; | ||
134 | void (*glsym_glGenPerfMonitorsAMD) (GLsizei n, GLuint* monitors) = NULL; | ||
135 | void (*glsym_glDeletePerfMonitorsAMD) (GLsizei n, GLuint* monitors) = NULL; | ||
136 | void (*glsym_glSelectPerfMonitorCountersAMD) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint* countersList) = NULL; | ||
137 | void (*glsym_glBeginPerfMonitorAMD) (GLuint monitor) = NULL; | ||
138 | void (*glsym_glEndPerfMonitorAMD) (GLuint monitor) = NULL; | ||
139 | void (*glsym_glGetPerfMonitorCounterDataAMD) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint* data, GLint* bytesWritten) = NULL; | ||
140 | void (*glsym_glDiscardFramebufferEXT) (GLenum target, GLsizei numAttachments, const GLenum* attachments) = NULL; | ||
141 | void (*glsym_glMultiDrawArraysEXT) (GLenum mode, GLint* first, GLsizei* count, GLsizei primcount) = NULL; | ||
142 | void (*glsym_glMultiDrawElementsEXT) (GLenum mode, const GLsizei* count, GLenum type, const GLvoid** indices, GLsizei primcount) = NULL; | ||
143 | void (*glsym_glDeleteFencesNV) (GLsizei n, const GLuint* fences) = NULL; | ||
144 | void (*glsym_glGenFencesNV) (GLsizei n, GLuint* fences) = NULL; | ||
145 | unsigned char (*glsym_glIsFenceNV) (GLuint fence) = NULL; | ||
146 | unsigned char (*glsym_glTestFenceNV) (GLuint fence) = NULL; | ||
147 | void (*glsym_glGetFenceivNV) (GLuint fence, GLenum pname, GLint* params) = NULL; | ||
148 | void (*glsym_glFinishFenceNV) (GLuint fence) = NULL; | ||
149 | void (*glsym_glSetFenceNV) (GLuint, GLenum) = NULL; | ||
150 | void (*glsym_glGetDriverControlsQCOM) (GLint* num, GLsizei size, GLuint* driverControls) = NULL; | ||
151 | void (*glsym_glGetDriverControlStringQCOM) (GLuint driverControl, GLsizei bufSize, GLsizei* length, char* driverControlString) = NULL; | ||
152 | void (*glsym_glEnableDriverControlQCOM) (GLuint driverControl) = NULL; | ||
153 | void (*glsym_glDisableDriverControlQCOM) (GLuint driverControl) = NULL; | ||
154 | void (*glsym_glExtGetTexturesQCOM) (GLuint* textures, GLint maxTextures, GLint* numTextures) = NULL; | ||
155 | void (*glsym_glExtGetBuffersQCOM) (GLuint* buffers, GLint maxBuffers, GLint* numBuffers) = NULL; | ||
156 | void (*glsym_glExtGetRenderbuffersQCOM) (GLuint* renderbuffers, GLint maxRenderbuffers, GLint* numRenderbuffers) = NULL; | ||
157 | void (*glsym_glExtGetFramebuffersQCOM) (GLuint* framebuffers, GLint maxFramebuffers, GLint* numFramebuffers) = NULL; | ||
158 | void (*glsym_glExtGetTexLevelParameterivQCOM) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint* params) = NULL; | ||
159 | void (*glsym_glExtTexObjectStateOverrideiQCOM) (GLenum target, GLenum pname, GLint param) = NULL; | ||
160 | void (*glsym_glExtGetTexSubImageQCOM) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, void* texels) = NULL; | ||
161 | void (*glsym_glExtGetBufferPointervQCOM) (GLenum target, void** params) = NULL; | ||
162 | void (*glsym_glExtGetShadersQCOM) (GLuint* shaders, GLint maxShaders, GLint* numShaders) = NULL; | ||
163 | void (*glsym_glExtGetProgramsQCOM) (GLuint* programs, GLint maxPrograms, GLint* numPrograms) = NULL; | ||
164 | unsigned char (*glsym_glExtIsProgramBinaryQCOM) (GLuint program) = NULL; | ||
165 | void (*glsym_glExtGetProgramBinarySourceQCOM) (GLuint program, GLenum shadertype, char* source, GLint* length) = NULL; | ||
166 | |||
167 | |||
168 | //------ GLES 2.0 Extensions supported in EvasGL -----// | ||
169 | static Extension_Entry _gl_ext_entries[] = { | ||
170 | //--- Function Extensions ---// | ||
171 | { "GL_OES_get_program_binary", "get_program_binary", 0 }, | ||
172 | { "GL_OES_mapbuffer", "mapbuffer", 0 }, | ||
173 | { "GL_OES_texture_3D", "texture_3D", 0 }, | ||
174 | { "AMD_performance_monitor", "AMD_performance_monitor", 0 }, | ||
175 | { "GL_EXT_discard_framebuffer", "discard_framebuffer", 0 }, | ||
176 | { "GL_EXT_multi_draw_arrays", "multi_draw_arrays", 0 }, | ||
177 | { "GL_NV_fence", "NV_fence", 0 }, | ||
178 | { "GL_QCOM_driver_control", "QCOM_driver_control", 0 }, | ||
179 | { "GL_QCOM_extended_get", "QCOM_extended_get", 0 }, | ||
180 | { "GL_QCOM_extended_get2", "QCOM_extended_get2", 0 }, | ||
181 | |||
182 | //--- Define Extensions ---// | ||
183 | { "GL_OES_compressed_ETC1_RGB8_texture", "compressed_ETC1_RGB8_texture", 0 }, | ||
184 | { "GL_OES_compressed_paletted_texture", "compressed_paletted_texture", 0 }, | ||
185 | { "GL_OES_depth24", "depth24", 0 }, | ||
186 | { "GL_OES_depth32", "depth32", 0 }, | ||
187 | { "GL_OES_EvasGL_image", "EGL_image", 0 }, | ||
188 | { "GL_OES_packed_depth_stencil", "packed_depth_stencil", 0 }, | ||
189 | { "GL_OES_rgb8_rgba8", "rgb8_rgba8", 0 }, | ||
190 | { "GL_OES_standard_derivatives", "standard_derivatives", 0 }, | ||
191 | { "GL_OES_stencil1", "stencil1", 0 }, | ||
192 | { "GL_OES_stencil4", "stencil4", 0 }, | ||
193 | { "GL_OES_texture_float", "texture_float", 0 }, | ||
194 | { "GL_OES_texture_half_float", "texture_half_float", 0 }, | ||
195 | { "GL_OES_texture_half_float_linear", "texture_half_float_linear", 0 }, | ||
196 | { "GL_OES_texture_npot", "texture_npot", 0 }, | ||
197 | { "GL_OES_vertex_half_float", "vertex_half_float", 0 }, | ||
198 | { "GL_OES_vertex_type_10_10_10_2", "vertex_type_10_10_10_2", 0 }, | ||
199 | { "GL_AMD_compressed_3DC_texture", "compressed_3DC_texture", 0 }, | ||
200 | { "GL_AMD_compressed_ATC_texture", "compressed_ATC_texture", 0 }, | ||
201 | { "GL_AMD_program_binary_Z400", "program_binary_Z400", 0 }, | ||
202 | { "GL_EXT_blend_minmax", "blend_minmax", 0 }, | ||
203 | { "GL_EXT_read_format_bgra", "read_format_bgra", 0 }, | ||
204 | { "GL_EXT_texture_filter_anisotropic", "texture_filter_anisotrophic", 0 }, | ||
205 | { "GL_EXT_texture_format_BGRA8888", "texture_format_BGRA8888", 0 }, | ||
206 | { "GL_EXT_texture_type_2_10_10_10_REV", "texture_type_2_10_10_10_rev", 0 }, | ||
207 | { "GL_IMG_program_binary", "IMG_program_binary", 0 }, | ||
208 | { "GL_IMG_read_format", "IMG_read_format", 0 }, | ||
209 | { "GL_IMG_shader_binary", "IMG_shader_binary", 0 }, | ||
210 | { "GL_IMG_texture_compression_pvrtc", "IMG_texture_compression_pvrtc", 0 }, | ||
211 | { "GL_QCOM_perfmon_global_mode", "QCOM_perfmon_global_mode", 0 }, | ||
212 | { "GL_QCOM_writeonly_rendering", "QCOM_writeonly_rendering", 0 }, | ||
213 | { NULL, NULL, 0} | ||
214 | }; | ||
215 | |||
216 | //------ Extensions supported in EvasGL -----// | ||
217 | static Extension_Entry _evasgl_ext_entries[] = { | ||
218 | { "EvasGL_KHR_image", "EGL_KHR_image", 0 }, | ||
219 | { "EvasGL_KHR_vg_parent_image", "EGL_KHR_vg_parent_image", 0 }, | ||
220 | { "EvasGL_KHR_gl_texture_2D_image", "EGL_KHR_gl_texture_2D_image", 0 }, | ||
221 | { "EvasGL_KHR_gl_texture_cubemap_image", "EGL_KHR_gl_texture_cubemap_image", 0 }, | ||
222 | { "EvasGL_KHR_gl_texture_3D_image", "EGL_KHR_gl_texture_3D_image", 0 }, | ||
223 | { "EvasGL_KHR_gl_renderbuffer_image", "EGL_KHR_gl_renderbuffer_image", 0 }, | ||
224 | { NULL, NULL, 0 } | ||
225 | }; | ||
226 | |||
227 | static void | ||
228 | _sym_init(void) | ||
229 | { | ||
230 | static int done = 0; | ||
231 | |||
232 | if (done) return; | ||
233 | |||
234 | #define FINDSYM(dst, sym, typ) \ | ||
235 | if ((!dst) && (glsym_eglGetProcAddress)) dst = (typ)glsym_eglGetProcAddress(sym); \ | ||
236 | if (!dst) dst = (typ)dlsym(RTLD_DEFAULT, sym) | ||
237 | |||
238 | FINDSYM(glsym_eglGetProcAddress, "eglGetProcAddress", glsym_func_eng_fn); | ||
239 | FINDSYM(glsym_eglGetProcAddress, "eglGetProcAddressEXT", glsym_func_eng_fn); | ||
240 | FINDSYM(glsym_eglGetProcAddress, "eglGetProcAddressARB", glsym_func_eng_fn); | ||
241 | FINDSYM(glsym_eglGetProcAddress, "eglGetProcAddressKHR", glsym_func_eng_fn); | ||
242 | |||
243 | FINDSYM(glsym_eglBindTexImage, "eglBindTexImage", glsym_func_void); | ||
244 | FINDSYM(glsym_eglBindTexImage, "eglBindTexImageEXT", glsym_func_void); | ||
245 | FINDSYM(glsym_eglBindTexImage, "eglBindTexImageARB", glsym_func_void); | ||
246 | FINDSYM(glsym_eglBindTexImage, "eglBindTexImageKHR", glsym_func_void); | ||
247 | |||
248 | FINDSYM(glsym_eglReleaseTexImage, "eglReleaseTexImage", glsym_func_void); | ||
249 | FINDSYM(glsym_eglReleaseTexImage, "eglReleaseTexImageEXT", glsym_func_void); | ||
250 | FINDSYM(glsym_eglReleaseTexImage, "eglReleaseTexImageARB", glsym_func_void); | ||
251 | FINDSYM(glsym_eglReleaseTexImage, "eglReleaseTexImageKHR", glsym_func_void); | ||
252 | |||
253 | FINDSYM(glsym_eglCreateImage, "eglCreateImage", glsym_func_void_ptr); | ||
254 | FINDSYM(glsym_eglCreateImage, "eglCreateImageEXT", glsym_func_void_ptr); | ||
255 | FINDSYM(glsym_eglCreateImage, "eglCreateImageARB", glsym_func_void_ptr); | ||
256 | FINDSYM(glsym_eglCreateImage, "eglCreateImageKHR", glsym_func_void_ptr); | ||
257 | |||
258 | FINDSYM(glsym_eglDestroyImage, "eglDestroyImage", glsym_func_void); | ||
259 | FINDSYM(glsym_eglDestroyImage, "eglDestroyImageEXT", glsym_func_void); | ||
260 | FINDSYM(glsym_eglDestroyImage, "eglDestroyImageARB", glsym_func_void); | ||
261 | FINDSYM(glsym_eglDestroyImage, "eglDestroyImageKHR", glsym_func_void); | ||
262 | |||
263 | FINDSYM(glsym_glEGLImageTargetTexture2DOES, "glEGLImageTargetTexture2DOES", glsym_func_void); | ||
264 | |||
265 | FINDSYM(glsym_glEGLImageTargetRenderbufferStorageOES, "glEGLImageTargetRenderbufferStorageOES", glsym_func_void); | ||
266 | |||
267 | FINDSYM(glsym_eglMapImageSEC, "eglMapImageSEC", glsym_func_void_ptr); | ||
268 | FINDSYM(glsym_eglUnmapImageSEC, "eglUnmapImageSEC", glsym_func_uint); | ||
269 | |||
270 | FINDSYM(glsym_eglQueryString, "eglQueryString", glsym_func_const_char_ptr); | ||
271 | |||
272 | FINDSYM(glsym_eglLockSurface, "eglLockSurface", glsym_func_uint); | ||
273 | FINDSYM(glsym_eglLockSurface, "eglLockSurfaceEXT", glsym_func_uint); | ||
274 | FINDSYM(glsym_eglLockSurface, "eglLockSurfaceARB", glsym_func_uint); | ||
275 | FINDSYM(glsym_eglLockSurface, "eglLockSurfaceKHR", glsym_func_uint); | ||
276 | |||
277 | FINDSYM(glsym_eglUnlockSurface, "eglUnlockSurface", glsym_func_uint); | ||
278 | FINDSYM(glsym_eglUnlockSurface, "eglUnlockSurfaceEXT", glsym_func_uint); | ||
279 | FINDSYM(glsym_eglUnlockSurface, "eglUnlockSurfaceARB", glsym_func_uint); | ||
280 | FINDSYM(glsym_eglUnlockSurface, "eglUnlockSurfaceKHR", glsym_func_uint); | ||
281 | |||
282 | //----------- GLES 2.0 Extensions ------------// | ||
283 | // If the symbol's not found, they get set to NULL | ||
284 | // If one of the functions in the extension exists, the extension in supported | ||
285 | /* GL_OES_get_program_binary */ | ||
286 | FINDSYM(glsym_glGetProgramBinaryOES, "glGetProgramBinary", glsym_func_void); | ||
287 | FINDSYM(glsym_glGetProgramBinaryOES, "glGetProgramBinaryEXT", glsym_func_void); | ||
288 | FINDSYM(glsym_glGetProgramBinaryOES, "glGetProgramBinaryARB", glsym_func_void); | ||
289 | FINDSYM(glsym_glGetProgramBinaryOES, "glGetProgramBinaryOES", glsym_func_void); | ||
290 | |||
291 | FINDSYM(glsym_glProgramBinaryOES, "glProgramBinary", glsym_func_void); | ||
292 | FINDSYM(glsym_glProgramBinaryOES, "glProgramBinaryEXT", glsym_func_void); | ||
293 | FINDSYM(glsym_glProgramBinaryOES, "glProgramBinaryARB", glsym_func_void); | ||
294 | FINDSYM(glsym_glProgramBinaryOES, "glProgramBinaryOES", glsym_func_void); | ||
295 | |||
296 | // Check the first function to see if the extension is supported... | ||
297 | if (glsym_glGetProgramBinaryOES) _gl_ext_entries[0].supported = 1; | ||
298 | |||
299 | /* GL_OES_mapbuffer */ | ||
300 | FINDSYM(glsym_glMapBufferOES, "glMapBuffer", glsym_func_void_ptr); | ||
301 | FINDSYM(glsym_glMapBufferOES, "glMapBufferEXT", glsym_func_void_ptr); | ||
302 | FINDSYM(glsym_glMapBufferOES, "glMapBufferARB", glsym_func_void_ptr); | ||
303 | FINDSYM(glsym_glMapBufferOES, "glMapBufferOES", glsym_func_void_ptr); | ||
304 | |||
305 | FINDSYM(glsym_glUnmapBufferOES, "glUnmapBuffer", glsym_func_uchar); | ||
306 | FINDSYM(glsym_glUnmapBufferOES, "glUnmapBufferEXT", glsym_func_uchar); | ||
307 | FINDSYM(glsym_glUnmapBufferOES, "glUnmapBufferARB", glsym_func_uchar); | ||
308 | FINDSYM(glsym_glUnmapBufferOES, "glUnmapBufferOES", glsym_func_uchar); | ||
309 | |||
310 | FINDSYM(glsym_glGetBufferPointervOES, "glGetBufferPointerv", glsym_func_void); | ||
311 | FINDSYM(glsym_glGetBufferPointervOES, "glGetBufferPointervEXT", glsym_func_void); | ||
312 | FINDSYM(glsym_glGetBufferPointervOES, "glGetBufferPointervARB", glsym_func_void); | ||
313 | FINDSYM(glsym_glGetBufferPointervOES, "glGetBufferPointervOES", glsym_func_void); | ||
314 | |||
315 | if (glsym_glMapBufferOES) _gl_ext_entries[1].supported = 1; | ||
316 | |||
317 | /* GL_OES_texture_3D */ | ||
318 | FINDSYM(glsym_glTexImage3DOES, "glTexImage3D", glsym_func_void); | ||
319 | FINDSYM(glsym_glTexImage3DOES, "glTexImage3DEXT", glsym_func_void); | ||
320 | FINDSYM(glsym_glTexImage3DOES, "glTexImage3DARB", glsym_func_void); | ||
321 | FINDSYM(glsym_glTexImage3DOES, "glTexImage3DOES", glsym_func_void); | ||
322 | |||
323 | FINDSYM(glsym_glTexSubImage3DOES, "glTexSubImage3D", glsym_func_void); | ||
324 | FINDSYM(glsym_glTexSubImage3DOES, "glTexSubImage3DEXT", glsym_func_void); | ||
325 | FINDSYM(glsym_glTexSubImage3DOES, "glTexSubImage3DARB", glsym_func_void); | ||
326 | FINDSYM(glsym_glTexSubImage3DOES, "glTexSubImage3DOES", glsym_func_void); | ||
327 | |||
328 | FINDSYM(glsym_glCopyTexSubImage3DOES, "glCopyTexSubImage3D", glsym_func_void); | ||
329 | FINDSYM(glsym_glCopyTexSubImage3DOES, "glCopyTexSubImage3DARB", glsym_func_void); | ||
330 | FINDSYM(glsym_glCopyTexSubImage3DOES, "glCopyTexSubImage3DEXT", glsym_func_void); | ||
331 | FINDSYM(glsym_glCopyTexSubImage3DOES, "glCopyTexSubImage3DOES", glsym_func_void); | ||
332 | |||
333 | FINDSYM(glsym_glCompressedTexImage3DOES, "glCompressedTexImage3D", glsym_func_void); | ||
334 | FINDSYM(glsym_glCompressedTexImage3DOES, "glCompressedTexImage3DARB", glsym_func_void); | ||
335 | FINDSYM(glsym_glCompressedTexImage3DOES, "glCompressedTexImage3DEXT", glsym_func_void); | ||
336 | FINDSYM(glsym_glCompressedTexImage3DOES, "glCompressedTexImage3DOES", glsym_func_void); | ||
337 | |||
338 | FINDSYM(glsym_glCompressedTexSubImage3DOES, "glCompressedTexSubImage3D", glsym_func_void); | ||
339 | FINDSYM(glsym_glCompressedTexSubImage3DOES, "glCompressedTexSubImage3DARB", glsym_func_void); | ||
340 | FINDSYM(glsym_glCompressedTexSubImage3DOES, "glCompressedTexSubImage3DEXT", glsym_func_void); | ||
341 | FINDSYM(glsym_glCompressedTexSubImage3DOES, "glCompressedTexSubImage3DOES", glsym_func_void); | ||
342 | |||
343 | FINDSYM(glsym_glFramebufferTexture3DOES, "glFramebufferTexture3D", glsym_func_void); | ||
344 | FINDSYM(glsym_glFramebufferTexture3DOES, "glFramebufferTexture3DARB", glsym_func_void); | ||
345 | FINDSYM(glsym_glFramebufferTexture3DOES, "glFramebufferTexture3DEXT", glsym_func_void); | ||
346 | FINDSYM(glsym_glFramebufferTexture3DOES, "glFramebufferTexture3DOES", glsym_func_void); | ||
347 | |||
348 | if (glsym_glTexSubImage3DOES) _gl_ext_entries[2].supported = 1; | ||
349 | |||
350 | /* AMD_performance_monitor */ | ||
351 | FINDSYM(glsym_glGetPerfMonitorGroupsAMD, "glGetPerfMonitorGroupsAMD", glsym_func_void); | ||
352 | FINDSYM(glsym_glGetPerfMonitorCountersAMD, "glGetPerfMonitorCountersAMD", glsym_func_void); | ||
353 | FINDSYM(glsym_glGetPerfMonitorGroupStringAMD, "glGetPerfMonitorGroupStringAMD", glsym_func_void); | ||
354 | FINDSYM(glsym_glGetPerfMonitorCounterStringAMD, "glGetPerfMonitorCounterStringAMD", glsym_func_void); | ||
355 | FINDSYM(glsym_glGetPerfMonitorCounterInfoAMD, "glGetPerfMonitorCounterInfoAMD", glsym_func_void); | ||
356 | FINDSYM(glsym_glGenPerfMonitorsAMD, "glGenPerfMonitorsAMD", glsym_func_void); | ||
357 | FINDSYM(glsym_glDeletePerfMonitorsAMD, "glDeletePerfMonitorsAMD", glsym_func_void); | ||
358 | FINDSYM(glsym_glSelectPerfMonitorCountersAMD, "glSelectPerfMonitorCountersAMD", glsym_func_void); | ||
359 | FINDSYM(glsym_glBeginPerfMonitorAMD, "glBeginPerfMonitorAMD", glsym_func_void); | ||
360 | FINDSYM(glsym_glEndPerfMonitorAMD, "glEndPerfMonitorAMD", glsym_func_void); | ||
361 | FINDSYM(glsym_glGetPerfMonitorCounterDataAMD, "glGetPerfMonitorCounterDataAMD", glsym_func_void); | ||
362 | |||
363 | if (glsym_glGetPerfMonitorGroupsAMD) _gl_ext_entries[3].supported = 1; | ||
364 | |||
365 | /* GL_EXT_discard_framebuffer */ | ||
366 | FINDSYM(glsym_glDiscardFramebufferEXT, "glDiscardFramebuffer", glsym_func_void); | ||
367 | FINDSYM(glsym_glDiscardFramebufferEXT, "glDiscardFramebufferARB", glsym_func_void); | ||
368 | FINDSYM(glsym_glDiscardFramebufferEXT, "glDiscardFramebufferEXT", glsym_func_void); | ||
369 | |||
370 | if (glsym_glDiscardFramebufferEXT) _gl_ext_entries[4].supported = 1; | ||
371 | |||
372 | /* GL_EXT_multi_draw_arrays */ | ||
373 | FINDSYM(glsym_glMultiDrawArraysEXT, "glMultiDrawArrays", glsym_func_void); | ||
374 | FINDSYM(glsym_glMultiDrawArraysEXT, "glMultiDrawArraysARB", glsym_func_void); | ||
375 | FINDSYM(glsym_glMultiDrawArraysEXT, "glMultiDrawArraysEXT", glsym_func_void); | ||
376 | |||
377 | FINDSYM(glsym_glMultiDrawElementsEXT, "glMultiDrawElements", glsym_func_void); | ||
378 | FINDSYM(glsym_glMultiDrawElementsEXT, "glMultiDrawElementsARB", glsym_func_void); | ||
379 | FINDSYM(glsym_glMultiDrawElementsEXT, "glMultiDrawElementsEXT", glsym_func_void); | ||
380 | |||
381 | if (glsym_glMultiDrawArraysEXT) _gl_ext_entries[5].supported = 1; | ||
382 | |||
383 | /* GL_NV_fence */ | ||
384 | FINDSYM(glsym_glDeleteFencesNV, "glDeleteFencesNV", glsym_func_void); | ||
385 | FINDSYM(glsym_glGenFencesNV, "glGenFencesNV", glsym_func_void); | ||
386 | FINDSYM(glsym_glIsFenceNV, "glIsFenceNV", glsym_func_uchar); | ||
387 | FINDSYM(glsym_glTestFenceNV, "glTestFenceNV", glsym_func_uchar); | ||
388 | FINDSYM(glsym_glGetFenceivNV, "glGetFenceivNV", glsym_func_void); | ||
389 | FINDSYM(glsym_glFinishFenceNV, "glFinishFenceNV", glsym_func_void); | ||
390 | FINDSYM(glsym_glSetFenceNV, "glSetFenceNV", glsym_func_void); | ||
391 | |||
392 | if (glsym_glDeleteFencesNV) _gl_ext_entries[6].supported = 1; | ||
393 | |||
394 | /* GL_QCOM_driver_control */ | ||
395 | FINDSYM(glsym_glGetDriverControlsQCOM, "glGetDriverControlsQCOM", glsym_func_void); | ||
396 | FINDSYM(glsym_glGetDriverControlStringQCOM, "glGetDriverControlStringQCOM", glsym_func_void); | ||
397 | FINDSYM(glsym_glEnableDriverControlQCOM, "glEnableDriverControlQCOM", glsym_func_void); | ||
398 | FINDSYM(glsym_glDisableDriverControlQCOM, "glDisableDriverControlQCOM", glsym_func_void); | ||
399 | |||
400 | if (glsym_glGetDriverControlsQCOM) _gl_ext_entries[7].supported = 1; | ||
401 | |||
402 | /* GL_QCOM_extended_get */ | ||
403 | FINDSYM(glsym_glExtGetTexturesQCOM, "glExtGetTexturesQCOM", glsym_func_void); | ||
404 | FINDSYM(glsym_glExtGetBuffersQCOM, "glExtGetBuffersQCOM", glsym_func_void); | ||
405 | FINDSYM(glsym_glExtGetRenderbuffersQCOM, "glExtGetRenderbuffersQCOM", glsym_func_void); | ||
406 | FINDSYM(glsym_glExtGetFramebuffersQCOM, "glExtGetFramebuffersQCOM", glsym_func_void); | ||
407 | FINDSYM(glsym_glExtGetTexLevelParameterivQCOM, "glExtGetTexLevelParameterivQCOM", glsym_func_void); | ||
408 | FINDSYM(glsym_glExtTexObjectStateOverrideiQCOM, "glExtTexObjectStateOverrideiQCOM", glsym_func_void); | ||
409 | FINDSYM(glsym_glExtGetTexSubImageQCOM, "glExtGetTexSubImageQCOM", glsym_func_void); | ||
410 | FINDSYM(glsym_glExtGetBufferPointervQCOM, "glExtGetBufferPointervQCOM", glsym_func_void); | ||
411 | |||
412 | if (glsym_glExtGetTexturesQCOM) _gl_ext_entries[8].supported = 1; | ||
413 | |||
414 | /* GL_QCOM_extended_get2 */ | ||
415 | FINDSYM(glsym_glExtGetShadersQCOM, "glExtGetShadersQCOM", glsym_func_void); | ||
416 | FINDSYM(glsym_glExtGetProgramsQCOM, "glExtGetProgramsQCOM", glsym_func_void); | ||
417 | FINDSYM(glsym_glExtIsProgramBinaryQCOM, "glExtIsProgramBinaryQCOM", glsym_func_uchar); | ||
418 | FINDSYM(glsym_glExtGetProgramBinarySourceQCOM, "glExtGetProgramBinarySourceQCOM", glsym_func_void); | ||
419 | |||
420 | if (glsym_glExtGetShadersQCOM) _gl_ext_entries[9].supported = 1; | ||
421 | } | ||
422 | |||
423 | static void | ||
424 | _extensions_init(Render_Engine *re) | ||
425 | { | ||
426 | int i; | ||
427 | const char *glexts, *evasglexts; | ||
428 | |||
429 | memset(_gl_ext_string, 0, 1024); | ||
430 | memset(_evasgl_ext_string, 0, 1024); | ||
431 | |||
432 | // GLES 2.0 Extensions | ||
433 | glexts = (const char*)glGetString(GL_EXTENSIONS); | ||
434 | |||
435 | DBG("--------GLES 2.0 Extensions--------"); | ||
436 | for (i = 0; _gl_ext_entries[i].name != NULL; i++) | ||
437 | { | ||
438 | if ( (strstr(glexts, _gl_ext_entries[i].name) != NULL) || | ||
439 | (strstr(glexts, _gl_ext_entries[i].real_name) != NULL) ) | ||
440 | { | ||
441 | _gl_ext_entries[i].supported = 1; | ||
442 | strcat(_gl_ext_string, _gl_ext_entries[i].name); | ||
443 | strcat(_gl_ext_string, " "); | ||
444 | DBG("\t%s", _gl_ext_entries[i].name); | ||
445 | } | ||
446 | |||
447 | } | ||
448 | DBG(" "); | ||
449 | |||
450 | // EGL Extensions | ||
451 | evasglexts = glsym_eglQueryString(re->win->egl_disp, EGL_EXTENSIONS); | ||
452 | |||
453 | DBG("--------EvasGL Extensions----------"); | ||
454 | for (i = 0; _evasgl_ext_entries[i].name != NULL; i++) | ||
455 | { | ||
456 | if ( (strstr(evasglexts, _evasgl_ext_entries[i].name) != NULL) || | ||
457 | (strstr(evasglexts, _evasgl_ext_entries[i].real_name) != NULL) ) | ||
458 | { | ||
459 | _evasgl_ext_entries[i].supported = 1; | ||
460 | strcat(_evasgl_ext_string, _evasgl_ext_entries[i].name); | ||
461 | strcat(_evasgl_ext_string, " "); | ||
462 | DBG("\t%s", _evasgl_ext_entries[i].name); | ||
463 | } | ||
464 | } | ||
465 | DBG(" "); | ||
466 | } | ||
467 | |||
468 | int _evas_engine_wl_egl_log_dom = -1; | ||
469 | |||
470 | /* function tables - filled in later (func and parent func) */ | ||
471 | static Evas_Func func, pfunc; | ||
472 | |||
473 | /* Function table for GL APIs */ | ||
474 | static Evas_GL_API gl_funcs; | ||
475 | |||
476 | static void * | ||
477 | eng_info(Evas *e) | ||
478 | { | ||
479 | Evas_Engine_Info_Wayland_Egl *info; | ||
480 | |||
481 | info = calloc(1, sizeof(Evas_Engine_Info_Wayland_Egl)); | ||
482 | info->magic.magic = rand(); | ||
483 | info->func.best_depth_get = eng_best_depth_get; | ||
484 | info->render_mode = EVAS_RENDER_MODE_BLOCKING; | ||
485 | return info; | ||
486 | e = NULL; | ||
487 | } | ||
488 | |||
489 | static void | ||
490 | eng_info_free(Evas *e __UNUSED__, void *info) | ||
491 | { | ||
492 | Evas_Engine_Info_Wayland_Egl *in; | ||
493 | // dont free! why bother? its not worth it | ||
494 | // eina_log_domain_unregister(_evas_engine_GL_X11_log_dom); | ||
495 | in = (Evas_Engine_Info_Wayland_Egl *)info; | ||
496 | free(in); | ||
497 | } | ||
498 | |||
499 | static int | ||
500 | _re_wincheck(Render_Engine *re) | ||
501 | { | ||
502 | if (!re) return 0; | ||
503 | if (re->win->surf) return 1; | ||
504 | eng_window_resurf(re->win); | ||
505 | if (!re->win->surf) | ||
506 | { | ||
507 | ERR("GL engine can't re-create window surface!"); | ||
508 | } | ||
509 | return 0; | ||
510 | } | ||
511 | |||
512 | static void | ||
513 | _re_winfree(Render_Engine *re) | ||
514 | { | ||
515 | if (!re->win->surf) return; | ||
516 | eng_window_unsurf(re->win); | ||
517 | } | ||
518 | |||
519 | static Render_Engine_GL_Resource * | ||
520 | _create_internal_glue_resources(void *data) | ||
521 | { | ||
522 | Render_Engine *re; | ||
523 | Render_Engine_GL_Resource *rsc; | ||
524 | |||
525 | if (!(re = (Render_Engine *)data)) return NULL; | ||
526 | |||
527 | rsc = calloc(1, sizeof(Render_Engine_GL_Resource)); | ||
528 | if (!rsc) return NULL; | ||
529 | |||
530 | // EGL | ||
531 | int context_attrs[3]; | ||
532 | context_attrs[0] = EGL_CONTEXT_CLIENT_VERSION; | ||
533 | context_attrs[1] = 2; | ||
534 | context_attrs[2] = EGL_NONE; | ||
535 | |||
536 | // Create resource surface for EGL | ||
537 | rsc->surface = | ||
538 | eglCreateWindowSurface(re->win->egl_disp, re->win->egl_config, | ||
539 | (EGLNativeWindowType)re->win->win, NULL); | ||
540 | if (!rsc->surface) | ||
541 | { | ||
542 | ERR("Creating internal resource surface failed."); | ||
543 | free(rsc); | ||
544 | return NULL; | ||
545 | } | ||
546 | |||
547 | // Create a resource context for EGL | ||
548 | rsc->context = | ||
549 | eglCreateContext(re->win->egl_disp, re->win->egl_config, | ||
550 | re->win->egl_context[0], context_attrs); | ||
551 | if (!rsc->context) | ||
552 | { | ||
553 | ERR("Internal Resource Context Creations Failed."); | ||
554 | free(rsc); | ||
555 | return NULL; | ||
556 | } | ||
557 | |||
558 | // Add to the resource resource list for cleanup | ||
559 | LKL(resource_lock); | ||
560 | resource_list = eina_list_prepend(resource_list, rsc); | ||
561 | LKU(resource_lock); | ||
562 | |||
563 | // Set the resource in TLS | ||
564 | if (eina_tls_set(resource_key, (void*)rsc) == EINA_FALSE) | ||
565 | { | ||
566 | ERR("Failed setting TLS Resource"); | ||
567 | free(rsc); | ||
568 | return NULL; | ||
569 | } | ||
570 | |||
571 | return rsc; | ||
572 | } | ||
573 | |||
574 | static int | ||
575 | _destroy_internal_glue_resources(void *data) | ||
576 | { | ||
577 | Render_Engine *re = (Render_Engine *)data; | ||
578 | Eina_List *l; | ||
579 | Render_Engine_GL_Resource *rsc; | ||
580 | |||
581 | // EGL | ||
582 | // Delete the Resources | ||
583 | LKL(resource_lock); | ||
584 | EINA_LIST_FOREACH(resource_list, l, rsc) | ||
585 | { | ||
586 | if (rsc->surface) eglDestroySurface(re->win->egl_disp, rsc->surface); | ||
587 | if (rsc->context) eglDestroyContext(re->win->egl_disp, rsc->context); | ||
588 | free(rsc); | ||
589 | } | ||
590 | eina_list_free(resource_list); | ||
591 | LKU(resource_lock); | ||
592 | |||
593 | // Destroy TLS | ||
594 | eina_tls_free(resource_key); | ||
595 | |||
596 | return 1; | ||
597 | } | ||
598 | |||
599 | static int | ||
600 | eng_setup(Evas *e, void *in) | ||
601 | { | ||
602 | Render_Engine *re; | ||
603 | Evas_Engine_Info_Wayland_Egl *info; | ||
604 | |||
605 | info = (Evas_Engine_Info_Wayland_Egl *)in; | ||
606 | if (!e->engine.data.output) | ||
607 | { | ||
608 | re = calloc(1, sizeof(Render_Engine)); | ||
609 | if (!re) return 0; | ||
610 | re->info = info; | ||
611 | re->evas = e; | ||
612 | e->engine.data.output = re; | ||
613 | re->w = e->output.w; | ||
614 | re->h = e->output.h; | ||
615 | |||
616 | re->win = eng_window_new(re->info->info.display, | ||
617 | re->info->info.surface, | ||
618 | re->info->info.screen, | ||
619 | re->info->info.depth, re->w, re->h, | ||
620 | re->info->indirect, | ||
621 | re->info->info.destination_alpha, | ||
622 | re->info->info.rotation); | ||
623 | if (!re->win) | ||
624 | { | ||
625 | free(re); | ||
626 | e->engine.data.output = NULL; | ||
627 | return 0; | ||
628 | } | ||
629 | |||
630 | gl_wins++; | ||
631 | if (!initted) | ||
632 | { | ||
633 | evas_common_cpu_init(); | ||
634 | evas_common_blend_init(); | ||
635 | evas_common_image_init(); | ||
636 | evas_common_convert_init(); | ||
637 | evas_common_scale_init(); | ||
638 | evas_common_rectangle_init(); | ||
639 | evas_common_polygon_init(); | ||
640 | evas_common_line_init(); | ||
641 | evas_common_font_init(); | ||
642 | evas_common_draw_init(); | ||
643 | evas_common_tilebuf_init(); | ||
644 | |||
645 | // Initialize TLS | ||
646 | if (eina_tls_new(&resource_key) == EINA_FALSE) | ||
647 | ERR("Error creating tls key"); | ||
648 | |||
649 | DBG("TLS KEY create... %d", resource_key); | ||
650 | |||
651 | initted = 1; | ||
652 | } | ||
653 | } | ||
654 | else | ||
655 | { | ||
656 | if (!(re = e->engine.data.output)) return 0; | ||
657 | if (_re_wincheck(re)) | ||
658 | { | ||
659 | if ((re->info->info.display != re->win->disp) || | ||
660 | (re->info->info.surface != re->win->surface) || | ||
661 | (re->info->info.screen != re->win->screen) || | ||
662 | (re->info->info.depth != re->win->depth) || | ||
663 | (re->info->info.destination_alpha != re->win->alpha) || | ||
664 | (re->info->info.rotation != re->win->rot)) | ||
665 | { | ||
666 | int inc = 0; | ||
667 | |||
668 | /* if we already have a window surface, check for NULL input surface. | ||
669 | * this will mean we are hiding the window and should destroy | ||
670 | * things properly */ | ||
671 | if ((re->win->surface) && (re->info->info.surface = NULL)) | ||
672 | { | ||
673 | if (re->win) | ||
674 | { | ||
675 | eng_window_free(re->win); | ||
676 | gl_wins--; | ||
677 | } | ||
678 | free(re); | ||
679 | e->engine.data.output = NULL; | ||
680 | return 0; | ||
681 | } | ||
682 | |||
683 | if (re->win) | ||
684 | { | ||
685 | re->win->gl_context->references++; | ||
686 | eng_window_free(re->win); | ||
687 | inc = 1; | ||
688 | gl_wins--; | ||
689 | } | ||
690 | re->w = e->output.w; | ||
691 | re->h = e->output.h; | ||
692 | re->win = eng_window_new(re->info->info.display, | ||
693 | re->info->info.surface, | ||
694 | re->info->info.screen, | ||
695 | re->info->info.depth, | ||
696 | re->w, re->h, | ||
697 | re->info->indirect, | ||
698 | re->info->info.destination_alpha, | ||
699 | re->info->info.rotation); | ||
700 | eng_window_use(re->win); | ||
701 | if (re->win) gl_wins++; | ||
702 | if ((re->win) && (inc)) | ||
703 | re->win->gl_context->references--; | ||
704 | } | ||
705 | else if ((re->win->w != e->output.w) || | ||
706 | (re->win->h != e->output.h)) | ||
707 | { | ||
708 | re->w = e->output.w; | ||
709 | re->h = e->output.h; | ||
710 | re->win->w = e->output.w; | ||
711 | re->win->h = e->output.h; | ||
712 | eng_window_use(re->win); | ||
713 | evas_gl_common_context_resize(re->win->gl_context, | ||
714 | re->win->w, re->win->h, | ||
715 | re->win->rot); | ||
716 | } | ||
717 | } | ||
718 | } | ||
719 | |||
720 | if (!re->win) | ||
721 | { | ||
722 | free(re); | ||
723 | e->engine.data.output = NULL; | ||
724 | return 0; | ||
725 | } | ||
726 | |||
727 | if (!e->engine.data.output) | ||
728 | { | ||
729 | if (re->win) | ||
730 | { | ||
731 | eng_window_free(re->win); | ||
732 | gl_wins--; | ||
733 | } | ||
734 | free(re); | ||
735 | e->engine.data.output = NULL; | ||
736 | return 0; | ||
737 | } | ||
738 | re->tb = evas_common_tilebuf_new(re->win->w, re->win->h); | ||
739 | if (!re->tb) | ||
740 | { | ||
741 | if (re->win) | ||
742 | { | ||
743 | eng_window_free(re->win); | ||
744 | gl_wins--; | ||
745 | } | ||
746 | free(re); | ||
747 | e->engine.data.output = NULL; | ||
748 | return 0; | ||
749 | } | ||
750 | evas_common_tilebuf_set_tile_size(re->tb, TILESIZE, TILESIZE); | ||
751 | |||
752 | if (!e->engine.data.context) | ||
753 | { | ||
754 | e->engine.data.context = | ||
755 | e->engine.func->context_new(e->engine.data.output); | ||
756 | } | ||
757 | |||
758 | eng_window_use(re->win); | ||
759 | |||
760 | re->vsync = 0; | ||
761 | _sym_init(); | ||
762 | _extensions_init(re); | ||
763 | |||
764 | // This is used in extensions. Not pretty but can't get display otherwise. | ||
765 | current_engine = re; | ||
766 | |||
767 | return 1; | ||
768 | } | ||
769 | |||
770 | static void | ||
771 | eng_output_free(void *data) | ||
772 | { | ||
773 | Render_Engine *re; | ||
774 | |||
775 | re = (Render_Engine *)data; | ||
776 | |||
777 | if (re) | ||
778 | { | ||
779 | #if 0 | ||
780 | // Destroy the resource surface | ||
781 | // Only required for EGL case | ||
782 | if (re->surface) | ||
783 | eglDestroySurface(re->win->egl_disp, re->surface); | ||
784 | |||
785 | // Destroy the resource context | ||
786 | _destroy_internal_context(re, context); | ||
787 | #endif | ||
788 | if (re->win) | ||
789 | { | ||
790 | if ((initted == 1) && (gl_wins == 1)) | ||
791 | _destroy_internal_glue_resources(re); | ||
792 | eng_window_free(re->win); | ||
793 | gl_wins--; | ||
794 | } | ||
795 | evas_common_tilebuf_free(re->tb); | ||
796 | free(re); | ||
797 | } | ||
798 | if ((initted == 1) && (gl_wins == 0)) | ||
799 | { | ||
800 | evas_common_image_shutdown(); | ||
801 | evas_common_font_shutdown(); | ||
802 | initted = 0; | ||
803 | } | ||
804 | } | ||
805 | |||
806 | static void | ||
807 | eng_output_resize(void *data, int w, int h) | ||
808 | { | ||
809 | Render_Engine *re; | ||
810 | |||
811 | re = (Render_Engine *)data; | ||
812 | re->win->w = w; | ||
813 | re->win->h = h; | ||
814 | eng_window_use(re->win); | ||
815 | |||
816 | if (re->win->win) | ||
817 | wl_egl_window_resize(re->win->win, w, h, 0, 0); | ||
818 | |||
819 | evas_gl_common_context_resize(re->win->gl_context, w, h, re->win->rot); | ||
820 | evas_common_tilebuf_free(re->tb); | ||
821 | re->tb = evas_common_tilebuf_new(w, h); | ||
822 | if (re->tb) | ||
823 | evas_common_tilebuf_set_tile_size(re->tb, TILESIZE, TILESIZE); | ||
824 | } | ||
825 | |||
826 | static void | ||
827 | eng_output_tile_size_set(void *data, int w, int h) | ||
828 | { | ||
829 | Render_Engine *re; | ||
830 | |||
831 | re = (Render_Engine *)data; | ||
832 | evas_common_tilebuf_set_tile_size(re->tb, w, h); | ||
833 | } | ||
834 | |||
835 | static void | ||
836 | eng_output_redraws_rect_add(void *data, int x, int y, int w, int h) | ||
837 | { | ||
838 | Render_Engine *re; | ||
839 | |||
840 | re = (Render_Engine *)data; | ||
841 | eng_window_use(re->win); | ||
842 | evas_gl_common_context_resize(re->win->gl_context, re->win->w, re->win->h, re->win->rot); | ||
843 | evas_common_tilebuf_add_redraw(re->tb, x, y, w, h); | ||
844 | |||
845 | RECTS_CLIP_TO_RECT(x, y, w, h, 0, 0, re->win->w, re->win->h); | ||
846 | if ((w <= 0) || (h <= 0)) return; | ||
847 | if (!re->win->draw.redraw) | ||
848 | { | ||
849 | #if 1 | ||
850 | re->win->draw.x1 = x; | ||
851 | re->win->draw.y1 = y; | ||
852 | re->win->draw.x2 = x + w - 1; | ||
853 | re->win->draw.y2 = y + h - 1; | ||
854 | #else | ||
855 | re->win->draw.x1 = 0; | ||
856 | re->win->draw.y1 = 0; | ||
857 | re->win->draw.x2 = re->win->w - 1; | ||
858 | re->win->draw.y2 = re->win->h - 1; | ||
859 | #endif | ||
860 | } | ||
861 | else | ||
862 | { | ||
863 | if (x < re->win->draw.x1) re->win->draw.x1 = x; | ||
864 | if (y < re->win->draw.y1) re->win->draw.y1 = y; | ||
865 | if ((x + w - 1) > re->win->draw.x2) re->win->draw.x2 = x + w - 1; | ||
866 | if ((y + h - 1) > re->win->draw.y2) re->win->draw.y2 = y + h - 1; | ||
867 | } | ||
868 | re->win->draw.redraw = 1; | ||
869 | } | ||
870 | |||
871 | static void | ||
872 | eng_output_redraws_rect_del(void *data, int x, int y, int w, int h) | ||
873 | { | ||
874 | Render_Engine *re; | ||
875 | |||
876 | re = (Render_Engine *)data; | ||
877 | evas_common_tilebuf_del_redraw(re->tb, x, y, w, h); | ||
878 | } | ||
879 | |||
880 | static void | ||
881 | eng_output_redraws_clear(void *data) | ||
882 | { | ||
883 | Render_Engine *re; | ||
884 | |||
885 | re = (Render_Engine *)data; | ||
886 | evas_common_tilebuf_clear(re->tb); | ||
887 | /* re->win->draw.redraw = 0;*/ | ||
888 | // INF("GL: finish update cycle!"); | ||
889 | } | ||
890 | |||
891 | /* vsync games - not for now though */ | ||
892 | #define VSYNC_TO_SCREEN 1 | ||
893 | |||
894 | static void * | ||
895 | eng_output_redraws_next_update_get(void *data, int *x, int *y, int *w, int *h, int *cx, int *cy, int *cw, int *ch) | ||
896 | { | ||
897 | Render_Engine *re; | ||
898 | Tilebuf_Rect *rects; | ||
899 | |||
900 | re = (Render_Engine *)data; | ||
901 | /* get the upate rect surface - return engine data as dummy */ | ||
902 | rects = evas_common_tilebuf_get_render_rects(re->tb); | ||
903 | if (rects) | ||
904 | { | ||
905 | evas_common_tilebuf_free_render_rects(rects); | ||
906 | evas_common_tilebuf_clear(re->tb); | ||
907 | eng_window_use(re->win); | ||
908 | if (!_re_wincheck(re)) return NULL; | ||
909 | evas_gl_common_context_flush(re->win->gl_context); | ||
910 | evas_gl_common_context_newframe(re->win->gl_context); | ||
911 | if (x) *x = 0; | ||
912 | if (y) *y = 0; | ||
913 | if (w) *w = re->win->w; | ||
914 | if (h) *h = re->win->h; | ||
915 | if (cx) *cx = 0; | ||
916 | if (cy) *cy = 0; | ||
917 | if (cw) *cw = re->win->w; | ||
918 | if (ch) *ch = re->win->h; | ||
919 | return re->win->gl_context->def_surface; | ||
920 | } | ||
921 | return NULL; | ||
922 | } | ||
923 | |||
924 | //#define FRAMECOUNT 1 | ||
925 | |||
926 | #ifdef FRAMECOUNT | ||
927 | static double | ||
928 | get_time(void) | ||
929 | { | ||
930 | struct timeval timev; | ||
931 | |||
932 | gettimeofday(&timev, NULL); | ||
933 | return (double)timev.tv_sec + (((double)timev.tv_usec) / 1000000); | ||
934 | } | ||
935 | #endif | ||
936 | |||
937 | static int safe_native = -1; | ||
938 | |||
939 | static void | ||
940 | eng_output_redraws_next_update_push(void *data, void *surface __UNUSED__, int x __UNUSED__, int y __UNUSED__, int w __UNUSED__, int h __UNUSED__) | ||
941 | { | ||
942 | Render_Engine *re; | ||
943 | #ifdef FRAMECOUNT | ||
944 | static double pt = 0.0; | ||
945 | double ta, tb; | ||
946 | #endif | ||
947 | |||
948 | re = (Render_Engine *)data; | ||
949 | /* put back update surface.. in this case just unflag redraw */ | ||
950 | if (!_re_wincheck(re)) return; | ||
951 | re->win->draw.redraw = 0; | ||
952 | re->win->draw.drew = 1; | ||
953 | evas_gl_common_context_flush(re->win->gl_context); | ||
954 | if (safe_native == -1) | ||
955 | { | ||
956 | const char *s; | ||
957 | |||
958 | s = getenv("EVAS_GL_SAFE_NATIVE"); | ||
959 | safe_native = 0; | ||
960 | if (s) | ||
961 | safe_native = atoi(s); | ||
962 | else | ||
963 | { | ||
964 | s = (const char *)glGetString(GL_RENDERER); | ||
965 | if (s) | ||
966 | { | ||
967 | if (strstr(s, "PowerVR SGX 540") || strstr(s, "Mali-400 MP")) | ||
968 | safe_native = 1; | ||
969 | } | ||
970 | } | ||
971 | } | ||
972 | // this is needed to make sure all previous rendering is flushed to | ||
973 | // buffers/surfaces | ||
974 | # ifdef FRAMECOUNT | ||
975 | double t0 = get_time(); | ||
976 | ta = t0 - pt; | ||
977 | pt = t0; | ||
978 | # endif | ||
979 | // previous rendering should be done and swapped | ||
980 | if (!safe_native) eglWaitNative(EGL_CORE_NATIVE_ENGINE); | ||
981 | # ifdef FRAMECOUNT | ||
982 | double t1 = get_time(); | ||
983 | tb = t1 - t0; | ||
984 | printf("... %1.5f -> %1.5f | ", ta, tb); | ||
985 | # endif | ||
986 | if (eglGetError() != EGL_SUCCESS) | ||
987 | { | ||
988 | printf("Error: eglWaitNative(EGL_CORE_NATIVE_ENGINE) fail.\n"); | ||
989 | } | ||
990 | } | ||
991 | |||
992 | static void | ||
993 | eng_output_flush(void *data) | ||
994 | { | ||
995 | Render_Engine *re; | ||
996 | |||
997 | re = (Render_Engine *)data; | ||
998 | if (!_re_wincheck(re)) return; | ||
999 | if (!re->win->draw.drew) return; | ||
1000 | //x// printf("frame -> flush\n"); | ||
1001 | re->win->draw.drew = 0; | ||
1002 | eng_window_use(re->win); | ||
1003 | |||
1004 | # ifdef FRAMECOUNT | ||
1005 | double t0 = get_time(); | ||
1006 | # endif | ||
1007 | |||
1008 | if (!re->vsync) | ||
1009 | { | ||
1010 | if (re->info->vsync) eglSwapInterval(re->win->egl_disp, 1); | ||
1011 | else eglSwapInterval(re->win->egl_disp, 0); | ||
1012 | re->vsync = 1; | ||
1013 | } | ||
1014 | |||
1015 | if (re->info->callback.pre_swap) | ||
1016 | re->info->callback.pre_swap(re->info->callback.data, re->evas); | ||
1017 | |||
1018 | eglSwapBuffers(re->win->egl_disp, re->win->egl_surface[0]); | ||
1019 | if (!safe_native) eglWaitGL(); | ||
1020 | |||
1021 | if (re->info->callback.post_swap) | ||
1022 | re->info->callback.post_swap(re->info->callback.data, re->evas); | ||
1023 | |||
1024 | if (eglGetError() != EGL_SUCCESS) | ||
1025 | printf("Error: eglSwapBuffers() fail.\n"); | ||
1026 | |||
1027 | # ifdef FRAMECOUNT | ||
1028 | double t1 = get_time(); | ||
1029 | printf("%1.5f\n", t1 - t0); | ||
1030 | # endif | ||
1031 | } | ||
1032 | |||
1033 | static void | ||
1034 | eng_output_idle_flush(void *data) | ||
1035 | { | ||
1036 | Render_Engine *re; | ||
1037 | |||
1038 | re = (Render_Engine *)data; | ||
1039 | } | ||
1040 | |||
1041 | static void | ||
1042 | eng_output_dump(void *data) | ||
1043 | { | ||
1044 | Render_Engine *re; | ||
1045 | |||
1046 | re = (Render_Engine *)data; | ||
1047 | evas_common_image_image_all_unload(); | ||
1048 | evas_common_font_font_all_unload(); | ||
1049 | evas_gl_common_image_all_unload(re->win->gl_context); | ||
1050 | _re_winfree(re); | ||
1051 | } | ||
1052 | |||
1053 | static void | ||
1054 | eng_context_cutout_add(void *data __UNUSED__, void *context, int x, int y, int w, int h) | ||
1055 | { | ||
1056 | // Render_Engine *re; | ||
1057 | // | ||
1058 | // re = (Render_Engine *)data; | ||
1059 | // re->win->gl_context->dc = context; | ||
1060 | evas_common_draw_context_add_cutout(context, x, y, w, h); | ||
1061 | } | ||
1062 | |||
1063 | static void | ||
1064 | eng_context_cutout_clear(void *data __UNUSED__, void *context) | ||
1065 | { | ||
1066 | // Render_Engine *re; | ||
1067 | // | ||
1068 | // re = (Render_Engine *)data; | ||
1069 | // re->win->gl_context->dc = context; | ||
1070 | evas_common_draw_context_clear_cutouts(context); | ||
1071 | } | ||
1072 | |||
1073 | static void | ||
1074 | eng_rectangle_draw(void *data, void *context, void *surface, int x, int y, int w, int h) | ||
1075 | { | ||
1076 | Render_Engine *re; | ||
1077 | |||
1078 | re = (Render_Engine *)data; | ||
1079 | eng_window_use(re->win); | ||
1080 | evas_gl_common_context_target_surface_set(re->win->gl_context, surface); | ||
1081 | re->win->gl_context->dc = context; | ||
1082 | evas_gl_common_rect_draw(re->win->gl_context, x, y, w, h); | ||
1083 | } | ||
1084 | |||
1085 | static void | ||
1086 | eng_line_draw(void *data, void *context, void *surface, int x1, int y1, int x2, int y2) | ||
1087 | { | ||
1088 | Render_Engine *re; | ||
1089 | |||
1090 | re = (Render_Engine *)data; | ||
1091 | eng_window_use(re->win); | ||
1092 | evas_gl_common_context_target_surface_set(re->win->gl_context, surface); | ||
1093 | re->win->gl_context->dc = context; | ||
1094 | evas_gl_common_line_draw(re->win->gl_context, x1, y1, x2, y2); | ||
1095 | } | ||
1096 | |||
1097 | static void * | ||
1098 | eng_polygon_point_add(void *data, void *context __UNUSED__, void *polygon, int x, int y) | ||
1099 | { | ||
1100 | Render_Engine *re; | ||
1101 | |||
1102 | re = (Render_Engine *)data; | ||
1103 | return evas_gl_common_poly_point_add(polygon, x, y); | ||
1104 | } | ||
1105 | |||
1106 | static void * | ||
1107 | eng_polygon_points_clear(void *data, void *context __UNUSED__, void *polygon) | ||
1108 | { | ||
1109 | Render_Engine *re; | ||
1110 | |||
1111 | re = (Render_Engine *)data; | ||
1112 | return evas_gl_common_poly_points_clear(polygon); | ||
1113 | } | ||
1114 | |||
1115 | static void | ||
1116 | eng_polygon_draw(void *data, void *context, void *surface __UNUSED__, void *polygon, int x, int y) | ||
1117 | { | ||
1118 | Render_Engine *re; | ||
1119 | |||
1120 | re = (Render_Engine *)data; | ||
1121 | eng_window_use(re->win); | ||
1122 | evas_gl_common_context_target_surface_set(re->win->gl_context, surface); | ||
1123 | re->win->gl_context->dc = context; | ||
1124 | evas_gl_common_poly_draw(re->win->gl_context, polygon, x, y); | ||
1125 | } | ||
1126 | |||
1127 | static int | ||
1128 | eng_image_alpha_get(void *data __UNUSED__, void *image) | ||
1129 | { | ||
1130 | // Render_Engine *re; | ||
1131 | Evas_GL_Image *im; | ||
1132 | |||
1133 | // re = (Render_Engine *)data; | ||
1134 | if (!image) return 1; | ||
1135 | im = image; | ||
1136 | return im->alpha; | ||
1137 | } | ||
1138 | |||
1139 | static int | ||
1140 | eng_image_colorspace_get(void *data __UNUSED__, void *image) | ||
1141 | { | ||
1142 | // Render_Engine *re; | ||
1143 | Evas_GL_Image *im; | ||
1144 | |||
1145 | // re = (Render_Engine *)data; | ||
1146 | if (!image) return EVAS_COLORSPACE_ARGB8888; | ||
1147 | im = image; | ||
1148 | return im->cs.space; | ||
1149 | } | ||
1150 | |||
1151 | static void | ||
1152 | eng_image_mask_create(void *data __UNUSED__, void *image) | ||
1153 | { | ||
1154 | Evas_GL_Image *im; | ||
1155 | |||
1156 | if (!image) return; | ||
1157 | im = image; | ||
1158 | if (!im->im->image.data) | ||
1159 | evas_cache_image_load_data(&im->im->cache_entry); | ||
1160 | if (!im->tex) | ||
1161 | im->tex = evas_gl_common_texture_new(im->gc, im->im); | ||
1162 | } | ||
1163 | |||
1164 | |||
1165 | static void * | ||
1166 | eng_image_alpha_set(void *data, void *image, int has_alpha) | ||
1167 | { | ||
1168 | Render_Engine *re; | ||
1169 | Evas_GL_Image *im; | ||
1170 | |||
1171 | re = (Render_Engine *)data; | ||
1172 | if (!image) return NULL; | ||
1173 | im = image; | ||
1174 | if (im->alpha == has_alpha) return image; | ||
1175 | if (im->native.data) | ||
1176 | { | ||
1177 | im->alpha = has_alpha; | ||
1178 | return image; | ||
1179 | } | ||
1180 | eng_window_use(re->win); | ||
1181 | if ((im->tex) && (im->tex->pt->dyn.img)) | ||
1182 | { | ||
1183 | im->alpha = has_alpha; | ||
1184 | im->tex->alpha = im->alpha; | ||
1185 | return image; | ||
1186 | } | ||
1187 | /* FIXME: can move to gl_common */ | ||
1188 | if (im->cs.space != EVAS_COLORSPACE_ARGB8888) return im; | ||
1189 | if ((has_alpha) && (im->im->cache_entry.flags.alpha)) return image; | ||
1190 | else if ((!has_alpha) && (!im->im->cache_entry.flags.alpha)) return image; | ||
1191 | if (im->references > 1) | ||
1192 | { | ||
1193 | Evas_GL_Image *im_new; | ||
1194 | |||
1195 | im_new = evas_gl_common_image_new_from_copied_data | ||
1196 | (im->gc, im->im->cache_entry.w, im->im->cache_entry.h, | ||
1197 | im->im->image.data, | ||
1198 | eng_image_alpha_get(data, image), | ||
1199 | eng_image_colorspace_get(data, image)); | ||
1200 | if (!im_new) return im; | ||
1201 | evas_gl_common_image_free(im); | ||
1202 | im = im_new; | ||
1203 | } | ||
1204 | else | ||
1205 | evas_gl_common_image_dirty(im, 0, 0, 0, 0); | ||
1206 | return evas_gl_common_image_alpha_set(im, has_alpha ? 1 : 0); | ||
1207 | // im->im->cache_entry.flags.alpha = has_alpha ? 1 : 0; | ||
1208 | // return image; | ||
1209 | } | ||
1210 | |||
1211 | static void * | ||
1212 | eng_image_border_set(void *data __UNUSED__, void *image, int l __UNUSED__, int r __UNUSED__, int t __UNUSED__, int b __UNUSED__) | ||
1213 | { | ||
1214 | // Render_Engine *re; | ||
1215 | // | ||
1216 | // re = (Render_Engine *)data; | ||
1217 | return image; | ||
1218 | } | ||
1219 | |||
1220 | static void | ||
1221 | eng_image_border_get(void *data __UNUSED__, void *image __UNUSED__, int *l __UNUSED__, int *r __UNUSED__, int *t __UNUSED__, int *b __UNUSED__) | ||
1222 | { | ||
1223 | // Render_Engine *re; | ||
1224 | // | ||
1225 | // re = (Render_Engine *)data; | ||
1226 | } | ||
1227 | |||
1228 | static char * | ||
1229 | eng_image_comment_get(void *data __UNUSED__, void *image, char *key __UNUSED__) | ||
1230 | { | ||
1231 | // Render_Engine *re; | ||
1232 | Evas_GL_Image *im; | ||
1233 | |||
1234 | // re = (Render_Engine *)data; | ||
1235 | if (!image) return NULL; | ||
1236 | im = image; | ||
1237 | if (!im->im) return NULL; | ||
1238 | return im->im->info.comment; | ||
1239 | } | ||
1240 | |||
1241 | static char * | ||
1242 | eng_image_format_get(void *data __UNUSED__, void *image) | ||
1243 | { | ||
1244 | // Render_Engine *re; | ||
1245 | Evas_GL_Image *im; | ||
1246 | |||
1247 | // re = (Render_Engine *)data; | ||
1248 | im = image; | ||
1249 | return NULL; | ||
1250 | } | ||
1251 | |||
1252 | static void | ||
1253 | eng_image_colorspace_set(void *data, void *image, int cspace) | ||
1254 | { | ||
1255 | Render_Engine *re; | ||
1256 | Evas_GL_Image *im; | ||
1257 | |||
1258 | re = (Render_Engine *)data; | ||
1259 | if (!image) return; | ||
1260 | im = image; | ||
1261 | if (im->native.data) return; | ||
1262 | /* FIXME: can move to gl_common */ | ||
1263 | if (im->cs.space == cspace) return; | ||
1264 | eng_window_use(re->win); | ||
1265 | evas_cache_image_colorspace(&im->im->cache_entry, cspace); | ||
1266 | switch (cspace) | ||
1267 | { | ||
1268 | case EVAS_COLORSPACE_ARGB8888: | ||
1269 | if (im->cs.data) | ||
1270 | { | ||
1271 | if (!im->cs.no_free) free(im->cs.data); | ||
1272 | im->cs.data = NULL; | ||
1273 | im->cs.no_free = 0; | ||
1274 | } | ||
1275 | break; | ||
1276 | case EVAS_COLORSPACE_YCBCR422P601_PL: | ||
1277 | case EVAS_COLORSPACE_YCBCR422P709_PL: | ||
1278 | case EVAS_COLORSPACE_YCBCR422601_PL: | ||
1279 | case EVAS_COLORSPACE_YCBCR420NV12601_PL: | ||
1280 | case EVAS_COLORSPACE_YCBCR420TM12601_PL: | ||
1281 | if (im->tex) evas_gl_common_texture_free(im->tex); | ||
1282 | im->tex = NULL; | ||
1283 | if (im->cs.data) | ||
1284 | { | ||
1285 | if (!im->cs.no_free) free(im->cs.data); | ||
1286 | } | ||
1287 | if (im->im->cache_entry.h > 0) | ||
1288 | im->cs.data = | ||
1289 | calloc(1, im->im->cache_entry.h * sizeof(unsigned char *) * 2); | ||
1290 | else | ||
1291 | im->cs.data = NULL; | ||
1292 | im->cs.no_free = 0; | ||
1293 | break; | ||
1294 | default: | ||
1295 | abort(); | ||
1296 | break; | ||
1297 | } | ||
1298 | im->cs.space = cspace; | ||
1299 | } | ||
1300 | |||
1301 | ///////////////////////////////////////////////////////////////////////// | ||
1302 | // | ||
1303 | // | ||
1304 | typedef struct _Native Native; | ||
1305 | |||
1306 | struct _Native | ||
1307 | { | ||
1308 | Evas_Native_Surface ns; | ||
1309 | struct wl_egl_pixmap *pixmap; | ||
1310 | |||
1311 | void *egl_surface; | ||
1312 | }; | ||
1313 | |||
1314 | // FIXME: this is enabled so updates happen - but its SLOOOOOOOOOOOOOOOW | ||
1315 | // (i am sure this is the reason) not to mention seemingly superfluous. but | ||
1316 | // i need to enable it for it to work on fglrx at least. havent tried nvidia. | ||
1317 | // | ||
1318 | // why is this the case? does anyone know? has anyone tried it on other gfx | ||
1319 | // drivers? | ||
1320 | // | ||
1321 | //#define GLX_TEX_PIXMAP_RECREATE 1 | ||
1322 | |||
1323 | static void | ||
1324 | _native_bind_cb(void *data, void *image) | ||
1325 | { | ||
1326 | Evas_GL_Image *im = image; | ||
1327 | Native *n = im->native.data; | ||
1328 | |||
1329 | if (n->egl_surface) | ||
1330 | { | ||
1331 | if (glsym_glEGLImageTargetTexture2DOES) | ||
1332 | { | ||
1333 | glsym_glEGLImageTargetTexture2DOES(GL_TEXTURE_2D, n->egl_surface); | ||
1334 | if (eglGetError() != EGL_SUCCESS) | ||
1335 | ERR("glEGLImageTargetTexture2DOES() failed."); | ||
1336 | } | ||
1337 | else | ||
1338 | ERR("Try glEGLImageTargetTexture2DOES on EGL with no support"); | ||
1339 | } | ||
1340 | return; | ||
1341 | data = NULL; | ||
1342 | } | ||
1343 | |||
1344 | static void | ||
1345 | _native_unbind_cb(void *data, void *image) | ||
1346 | { | ||
1347 | Evas_GL_Image *im = image; | ||
1348 | /* Native *n = im->native.data; */ | ||
1349 | |||
1350 | /* if (n->ns.type == EVAS_NATIVE_SURFACE_X11) */ | ||
1351 | /* { */ | ||
1352 | /* // nothing */ | ||
1353 | /* } */ | ||
1354 | /* else if (n->ns.type == EVAS_NATIVE_SURFACE_OPENGL) */ | ||
1355 | /* { */ | ||
1356 | /* glBindTexture(GL_TEXTURE_2D, 0); */ | ||
1357 | /* GLERR(__FUNCTION__, __FILE__, __LINE__, ""); */ | ||
1358 | /* } */ | ||
1359 | return; | ||
1360 | data = NULL; | ||
1361 | } | ||
1362 | |||
1363 | static void | ||
1364 | _native_free_cb(void *data, void *image) | ||
1365 | { | ||
1366 | Render_Engine *re = data; | ||
1367 | Evas_GL_Image *im = image; | ||
1368 | Native *n = im->native.data; | ||
1369 | uint32_t texid; | ||
1370 | // uint32_t pmid, texid; | ||
1371 | |||
1372 | /* eina_hash_del(re->win->gl_context->shared->native_pm_hash, &pmid, im); */ | ||
1373 | if (n->egl_surface) | ||
1374 | { | ||
1375 | if (glsym_eglDestroyImage) | ||
1376 | { | ||
1377 | glsym_eglDestroyImage(re->win->egl_disp, n->egl_surface); | ||
1378 | if (eglGetError() != EGL_SUCCESS) | ||
1379 | ERR("eglDestroyImage() failed."); | ||
1380 | } | ||
1381 | else | ||
1382 | ERR("Try eglDestroyImage on EGL with no support"); | ||
1383 | } | ||
1384 | |||
1385 | im->native.data = NULL; | ||
1386 | im->native.func.data = NULL; | ||
1387 | im->native.func.bind = NULL; | ||
1388 | im->native.func.unbind = NULL; | ||
1389 | im->native.func.free = NULL; | ||
1390 | free(n); | ||
1391 | } | ||
1392 | |||
1393 | static void * | ||
1394 | eng_image_native_set(void *data, void *image, void *native) | ||
1395 | { | ||
1396 | Render_Engine *re = (Render_Engine *)data; | ||
1397 | Evas_Native_Surface *ns = native; | ||
1398 | Evas_GL_Image *im = image, *im2 = NULL; | ||
1399 | Native *n = NULL; | ||
1400 | // uint32_t pmid; | ||
1401 | // uint32_t texid; | ||
1402 | unsigned int tex = 0; | ||
1403 | unsigned int fbo = 0; | ||
1404 | |||
1405 | if (!im) | ||
1406 | { | ||
1407 | if ((!ns) && (ns->type == EVAS_NATIVE_SURFACE_OPENGL)) | ||
1408 | { | ||
1409 | im = evas_gl_common_image_new_from_data(re->win->gl_context, | ||
1410 | ns->data.opengl.w, | ||
1411 | ns->data.opengl.h, | ||
1412 | NULL, 1, | ||
1413 | EVAS_COLORSPACE_ARGB8888); | ||
1414 | } | ||
1415 | else | ||
1416 | return NULL; | ||
1417 | } | ||
1418 | |||
1419 | if (ns) | ||
1420 | { | ||
1421 | /* vis = ns->data.x11.visual; */ | ||
1422 | /* pm = ns->data.x11.pixmap; */ | ||
1423 | if (im->native.data) | ||
1424 | { | ||
1425 | Evas_Native_Surface *ens = im->native.data; | ||
1426 | /* if ((ens->data.x11.visual == vis) && */ | ||
1427 | /* (ens->data.x11.pixmap == pm)) */ | ||
1428 | return im; | ||
1429 | } | ||
1430 | } | ||
1431 | if ((!ns) && (!im->native.data)) return im; | ||
1432 | |||
1433 | eng_window_use(re->win); | ||
1434 | |||
1435 | if (im->native.data) | ||
1436 | { | ||
1437 | if (im->native.func.free) | ||
1438 | im->native.func.free(im->native.func.data, im); | ||
1439 | evas_gl_common_image_native_disable(im); | ||
1440 | } | ||
1441 | |||
1442 | if (!ns) return im; | ||
1443 | |||
1444 | /* if (ns->type == EVAS_NATIVE_SURFACE_X11) */ | ||
1445 | /* { */ | ||
1446 | /* pmid = pm; */ | ||
1447 | /* im2 = eina_hash_find(re->win->gl_context->shared->native_pm_hash, &pmid); */ | ||
1448 | if (im2 == im) return im; | ||
1449 | if (im2) | ||
1450 | { | ||
1451 | n = im2->native.data; | ||
1452 | if (n) | ||
1453 | { | ||
1454 | evas_gl_common_image_ref(im2); | ||
1455 | evas_gl_common_image_free(im); | ||
1456 | return im2; | ||
1457 | } | ||
1458 | } | ||
1459 | |||
1460 | im2 = evas_gl_common_image_new_from_data(re->win->gl_context, | ||
1461 | im->w, im->h, NULL, im->alpha, | ||
1462 | EVAS_COLORSPACE_ARGB8888); | ||
1463 | evas_gl_common_image_free(im); | ||
1464 | im = im2; | ||
1465 | /* if (native) */ | ||
1466 | /* { */ | ||
1467 | /* n = calloc(1, sizeof(Native)); */ | ||
1468 | /* if (n) */ | ||
1469 | /* { */ | ||
1470 | /* EGLConfig egl_config; */ | ||
1471 | /* int config_attrs[20]; */ | ||
1472 | /* int num_config, i = 0; */ | ||
1473 | |||
1474 | /* eina_hash_add(re->win->gl_context->shared->native_pm_hash, &pmid, im); */ | ||
1475 | |||
1476 | /* config_attrs[i++] = EGL_RED_SIZE; */ | ||
1477 | /* config_attrs[i++] = 8; */ | ||
1478 | /* config_attrs[i++] = EGL_GREEN_SIZE; */ | ||
1479 | /* config_attrs[i++] = 8; */ | ||
1480 | /* config_attrs[i++] = EGL_BLUE_SIZE; */ | ||
1481 | /* config_attrs[i++] = 8; */ | ||
1482 | /* config_attrs[i++] = EGL_ALPHA_SIZE; */ | ||
1483 | /* config_attrs[i++] = 8; */ | ||
1484 | /* config_attrs[i++] = EGL_DEPTH_SIZE; */ | ||
1485 | /* config_attrs[i++] = 0; */ | ||
1486 | /* config_attrs[i++] = EGL_STENCIL_SIZE; */ | ||
1487 | /* config_attrs[i++] = 0; */ | ||
1488 | /* config_attrs[i++] = EGL_RENDERABLE_TYPE; */ | ||
1489 | /* config_attrs[i++] = EGL_OPENGL_ES2_BIT; */ | ||
1490 | /* config_attrs[i++] = EGL_SURFACE_TYPE; */ | ||
1491 | /* config_attrs[i++] = EGL_PIXMAP_BIT; */ | ||
1492 | /* config_attrs[i++] = EGL_NONE; */ | ||
1493 | |||
1494 | /* if (!eglChooseConfig(re->win->egl_disp, config_attrs, */ | ||
1495 | /* &egl_config, 1, &num_config)) */ | ||
1496 | /* ERR("eglChooseConfig() failed for, num_config = %i", num_config); */ | ||
1497 | /* memcpy(&(n->ns), ns, sizeof(Evas_Native_Surface)); */ | ||
1498 | /* n->pixmap = pm; */ | ||
1499 | /* if (glsym_eglCreateImage) */ | ||
1500 | /* n->egl_surface = glsym_eglCreateImage(re->win->egl_disp, */ | ||
1501 | /* EGL_NO_CONTEXT, */ | ||
1502 | /* EGL_NATIVE_PIXMAP_KHR, */ | ||
1503 | /* (void *)pm, */ | ||
1504 | /* NULL); */ | ||
1505 | /* else */ | ||
1506 | /* ERR("Try eglCreateImage on EGL with no support"); */ | ||
1507 | /* if (!n->egl_surface) */ | ||
1508 | /* ERR("eglCreatePixmapSurface() for 0x%x failed", (unsigned int)pm); */ | ||
1509 | /* im->native.yinvert = 1; */ | ||
1510 | /* im->native.loose = 0; */ | ||
1511 | /* im->native.data = n; */ | ||
1512 | /* im->native.func.data = re; */ | ||
1513 | /* im->native.func.bind = _native_bind_cb; */ | ||
1514 | /* im->native.func.unbind = _native_unbind_cb; */ | ||
1515 | /* im->native.func.free = _native_free_cb; */ | ||
1516 | /* im->native.target = GL_TEXTURE_2D; */ | ||
1517 | /* im->native.mipmap = 0; */ | ||
1518 | /* evas_gl_common_image_native_enable(im); */ | ||
1519 | /* } */ | ||
1520 | /* } */ | ||
1521 | return im; | ||
1522 | } | ||
1523 | |||
1524 | static void * | ||
1525 | eng_image_native_get(void *data __UNUSED__, void *image) | ||
1526 | { | ||
1527 | Evas_GL_Image *im = image; | ||
1528 | Native *n; | ||
1529 | if (!im) return NULL; | ||
1530 | n = im->native.data; | ||
1531 | if (!n) return NULL; | ||
1532 | return &(n->ns); | ||
1533 | } | ||
1534 | |||
1535 | #if 0 // filtering disabled | ||
1536 | static void | ||
1537 | eng_image_draw_filtered(void *data, void *context, void *surface, | ||
1538 | void *image, Evas_Filter_Info *filter) | ||
1539 | { | ||
1540 | Render_Engine *re = data; | ||
1541 | |||
1542 | if (!image) return; | ||
1543 | eng_window_use(re->win); | ||
1544 | evas_gl_common_context_target_surface_set(re->win->gl_context, surface); | ||
1545 | re->win->gl_context->dc = context; | ||
1546 | |||
1547 | evas_gl_common_filter_draw(re->win->gl_context, image, filter); | ||
1548 | } | ||
1549 | |||
1550 | static Filtered_Image * | ||
1551 | eng_image_filtered_get(void *im, uint8_t *key, size_t keylen) | ||
1552 | { | ||
1553 | return evas_gl_common_image_filtered_get(im, key, keylen); | ||
1554 | } | ||
1555 | |||
1556 | static Filtered_Image * | ||
1557 | eng_image_filtered_save(void *im, void *fim, uint8_t *key, size_t keylen) | ||
1558 | { | ||
1559 | return evas_gl_common_image_filtered_save(im, fim, key, keylen); | ||
1560 | } | ||
1561 | |||
1562 | static void | ||
1563 | eng_image_filtered_free(void *im, Filtered_Image *fim) | ||
1564 | { | ||
1565 | evas_gl_common_image_filtered_free(im, fim); | ||
1566 | } | ||
1567 | #endif | ||
1568 | |||
1569 | static void * | ||
1570 | eng_image_load(void *data, const char *file, const char *key, int *error, Evas_Image_Load_Opts *lo) | ||
1571 | { | ||
1572 | Render_Engine *re; | ||
1573 | |||
1574 | re = (Render_Engine *)data; | ||
1575 | *error = EVAS_LOAD_ERROR_NONE; | ||
1576 | eng_window_use(re->win); | ||
1577 | return evas_gl_common_image_load(re->win->gl_context, file, key, lo, error); | ||
1578 | } | ||
1579 | |||
1580 | static void * | ||
1581 | eng_image_new_from_data(void *data, int w, int h, DATA32 *image_data, int alpha, int cspace) | ||
1582 | { | ||
1583 | Render_Engine *re; | ||
1584 | |||
1585 | re = (Render_Engine *)data; | ||
1586 | eng_window_use(re->win); | ||
1587 | return evas_gl_common_image_new_from_data(re->win->gl_context, w, h, image_data, alpha, cspace); | ||
1588 | } | ||
1589 | |||
1590 | static void * | ||
1591 | eng_image_new_from_copied_data(void *data, int w, int h, DATA32 *image_data, int alpha, int cspace) | ||
1592 | { | ||
1593 | Render_Engine *re; | ||
1594 | |||
1595 | re = (Render_Engine *)data; | ||
1596 | eng_window_use(re->win); | ||
1597 | return evas_gl_common_image_new_from_copied_data(re->win->gl_context, w, h, image_data, alpha, cspace); | ||
1598 | } | ||
1599 | |||
1600 | static void | ||
1601 | eng_image_free(void *data, void *image) | ||
1602 | { | ||
1603 | Render_Engine *re; | ||
1604 | |||
1605 | re = (Render_Engine *)data; | ||
1606 | if (!image) return; | ||
1607 | eng_window_use(re->win); | ||
1608 | evas_gl_common_image_free(image); | ||
1609 | } | ||
1610 | |||
1611 | static void | ||
1612 | eng_image_size_get(void *data __UNUSED__, void *image, int *w, int *h) | ||
1613 | { | ||
1614 | if (!image) | ||
1615 | { | ||
1616 | *w = 0; | ||
1617 | *h = 0; | ||
1618 | return; | ||
1619 | } | ||
1620 | if (w) *w = ((Evas_GL_Image *)image)->w; | ||
1621 | if (h) *h = ((Evas_GL_Image *)image)->h; | ||
1622 | } | ||
1623 | |||
1624 | static void * | ||
1625 | eng_image_size_set(void *data, void *image, int w, int h) | ||
1626 | { | ||
1627 | Render_Engine *re; | ||
1628 | Evas_GL_Image *im = image; | ||
1629 | Evas_GL_Image *im_old; | ||
1630 | |||
1631 | re = (Render_Engine *)data; | ||
1632 | if (!im) return NULL; | ||
1633 | if (im->native.data) | ||
1634 | { | ||
1635 | im->w = w; | ||
1636 | im->h = h; | ||
1637 | return image; | ||
1638 | } | ||
1639 | eng_window_use(re->win); | ||
1640 | if ((im->tex) && (im->tex->pt->dyn.img)) | ||
1641 | { | ||
1642 | evas_gl_common_texture_free(im->tex); | ||
1643 | im->tex = NULL; | ||
1644 | im->w = w; | ||
1645 | im->h = h; | ||
1646 | im->tex = evas_gl_common_texture_dynamic_new(im->gc, im); | ||
1647 | return image; | ||
1648 | } | ||
1649 | im_old = image; | ||
1650 | |||
1651 | switch (eng_image_colorspace_get(data, image)) | ||
1652 | { | ||
1653 | case EVAS_COLORSPACE_YCBCR422P601_PL: | ||
1654 | case EVAS_COLORSPACE_YCBCR422P709_PL: | ||
1655 | case EVAS_COLORSPACE_YCBCR422601_PL: | ||
1656 | case EVAS_COLORSPACE_YCBCR420NV12601_PL: | ||
1657 | case EVAS_COLORSPACE_YCBCR420TM12601_PL: | ||
1658 | w &= ~0x1; | ||
1659 | break; | ||
1660 | } | ||
1661 | |||
1662 | if ((im_old) && | ||
1663 | ((int)im_old->im->cache_entry.w == w) && | ||
1664 | ((int)im_old->im->cache_entry.h == h)) | ||
1665 | return image; | ||
1666 | if (im_old) | ||
1667 | { | ||
1668 | im = evas_gl_common_image_new(re->win->gl_context, w, h, | ||
1669 | eng_image_alpha_get(data, image), | ||
1670 | eng_image_colorspace_get(data, image)); | ||
1671 | /* | ||
1672 | evas_common_load_image_data_from_file(im_old->im); | ||
1673 | if (im_old->im->image->data) | ||
1674 | { | ||
1675 | evas_common_blit_rectangle(im_old->im, im->im, 0, 0, w, h, 0, 0); | ||
1676 | evas_common_cpu_end_opt(); | ||
1677 | } | ||
1678 | */ | ||
1679 | evas_gl_common_image_free(im_old); | ||
1680 | } | ||
1681 | else | ||
1682 | im = evas_gl_common_image_new(re->win->gl_context, w, h, 1, EVAS_COLORSPACE_ARGB8888); | ||
1683 | return im; | ||
1684 | } | ||
1685 | |||
1686 | static void * | ||
1687 | eng_image_dirty_region(void *data, void *image, int x, int y, int w, int h) | ||
1688 | { | ||
1689 | Render_Engine *re; | ||
1690 | Evas_GL_Image *im = image; | ||
1691 | |||
1692 | re = (Render_Engine *)data; | ||
1693 | if (!image) return NULL; | ||
1694 | if (im->native.data) return image; | ||
1695 | eng_window_use(re->win); | ||
1696 | evas_gl_common_image_dirty(image, x, y, w, h); | ||
1697 | return image; | ||
1698 | } | ||
1699 | |||
1700 | static void * | ||
1701 | eng_image_data_get(void *data, void *image, int to_write, DATA32 **image_data, int *err) | ||
1702 | { | ||
1703 | Render_Engine *re; | ||
1704 | Evas_GL_Image *im; | ||
1705 | int error; | ||
1706 | |||
1707 | re = (Render_Engine *)data; | ||
1708 | if (!image) | ||
1709 | { | ||
1710 | *image_data = NULL; | ||
1711 | if (err) *err = EVAS_LOAD_ERROR_GENERIC; | ||
1712 | return NULL; | ||
1713 | } | ||
1714 | im = image; | ||
1715 | if (im->native.data) | ||
1716 | { | ||
1717 | *image_data = NULL; | ||
1718 | if (err) *err = EVAS_LOAD_ERROR_NONE; | ||
1719 | return im; | ||
1720 | } | ||
1721 | |||
1722 | eng_window_use(re->win); | ||
1723 | |||
1724 | if ((im->tex) && (im->tex->pt) && (im->tex->pt->dyn.img) && (im->cs.space == EVAS_COLORSPACE_ARGB8888)) | ||
1725 | { | ||
1726 | if (im->tex->pt->dyn.checked_out > 0) | ||
1727 | { | ||
1728 | im->tex->pt->dyn.checked_out++; | ||
1729 | *image_data = im->tex->pt->dyn.data; | ||
1730 | if (err) *err = EVAS_LOAD_ERROR_NONE; | ||
1731 | return im; | ||
1732 | } | ||
1733 | *image_data = im->tex->pt->dyn.data = glsym_eglMapImageSEC(re->win->egl_disp, im->tex->pt->dyn.img); | ||
1734 | |||
1735 | if (!im->tex->pt->dyn.data) | ||
1736 | { | ||
1737 | if (err) *err = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | ||
1738 | GLERR(__FUNCTION__, __FILE__, __LINE__, ""); | ||
1739 | return im; | ||
1740 | } | ||
1741 | im->tex->pt->dyn.checked_out++; | ||
1742 | |||
1743 | if (err) *err = EVAS_LOAD_ERROR_NONE; | ||
1744 | return im; | ||
1745 | } | ||
1746 | |||
1747 | /* Engine can fail to create texture after cache drop like eng_image_content_hint_set function, | ||
1748 | so it is need to add code which check im->im's NULL value*/ | ||
1749 | |||
1750 | if (!im->im) | ||
1751 | { | ||
1752 | *image_data = NULL; | ||
1753 | if (err) *err = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | ||
1754 | return NULL; | ||
1755 | } | ||
1756 | |||
1757 | error = evas_cache_image_load_data(&im->im->cache_entry); | ||
1758 | switch (im->cs.space) | ||
1759 | { | ||
1760 | case EVAS_COLORSPACE_ARGB8888: | ||
1761 | if (to_write) | ||
1762 | { | ||
1763 | if (im->references > 1) | ||
1764 | { | ||
1765 | Evas_GL_Image *im_new; | ||
1766 | |||
1767 | im_new = evas_gl_common_image_new_from_copied_data | ||
1768 | (im->gc, im->im->cache_entry.w, im->im->cache_entry.h, | ||
1769 | im->im->image.data, | ||
1770 | eng_image_alpha_get(data, image), | ||
1771 | eng_image_colorspace_get(data, image)); | ||
1772 | if (!im_new) | ||
1773 | { | ||
1774 | *image_data = NULL; | ||
1775 | if (err) *err = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | ||
1776 | return NULL; | ||
1777 | } | ||
1778 | evas_gl_common_image_free(im); | ||
1779 | im = im_new; | ||
1780 | } | ||
1781 | else | ||
1782 | evas_gl_common_image_dirty(im, 0, 0, 0, 0); | ||
1783 | } | ||
1784 | *image_data = im->im->image.data; | ||
1785 | break; | ||
1786 | case EVAS_COLORSPACE_YCBCR422P601_PL: | ||
1787 | case EVAS_COLORSPACE_YCBCR422P709_PL: | ||
1788 | case EVAS_COLORSPACE_YCBCR422601_PL: | ||
1789 | case EVAS_COLORSPACE_YCBCR420NV12601_PL: | ||
1790 | case EVAS_COLORSPACE_YCBCR420TM12601_PL: | ||
1791 | *image_data = im->cs.data; | ||
1792 | break; | ||
1793 | default: | ||
1794 | abort(); | ||
1795 | break; | ||
1796 | } | ||
1797 | if (err) *err = error; | ||
1798 | return im; | ||
1799 | } | ||
1800 | |||
1801 | static void * | ||
1802 | eng_image_data_put(void *data, void *image, DATA32 *image_data) | ||
1803 | { | ||
1804 | Render_Engine *re; | ||
1805 | Evas_GL_Image *im, *im2; | ||
1806 | |||
1807 | re = (Render_Engine *)data; | ||
1808 | if (!image) return NULL; | ||
1809 | im = image; | ||
1810 | if (im->native.data) return image; | ||
1811 | eng_window_use(re->win); | ||
1812 | if ((im->tex) && (im->tex->pt) | ||
1813 | && (im->tex->pt->dyn.data) | ||
1814 | && (im->cs.space == EVAS_COLORSPACE_ARGB8888)) | ||
1815 | { | ||
1816 | int w, h; | ||
1817 | |||
1818 | if (im->tex->pt->dyn.data == image_data) | ||
1819 | { | ||
1820 | im->tex->pt->dyn.checked_out--; | ||
1821 | if (im->tex->pt->dyn.checked_out == 0) | ||
1822 | glsym_eglUnmapImageSEC(re->win->egl_disp, im->tex->pt->dyn.img); | ||
1823 | return image; | ||
1824 | } | ||
1825 | |||
1826 | w = im->im->cache_entry.w; | ||
1827 | h = im->im->cache_entry.h; | ||
1828 | im2 = eng_image_new_from_data(data, w, h, image_data, | ||
1829 | eng_image_alpha_get(data, image), | ||
1830 | eng_image_colorspace_get(data, image)); | ||
1831 | if (!im2) return im; | ||
1832 | evas_gl_common_image_free(im); | ||
1833 | im = im2; | ||
1834 | evas_gl_common_image_dirty(im, 0, 0, 0, 0); | ||
1835 | return im; | ||
1836 | } | ||
1837 | switch (im->cs.space) | ||
1838 | { | ||
1839 | case EVAS_COLORSPACE_ARGB8888: | ||
1840 | if (image_data != im->im->image.data) | ||
1841 | { | ||
1842 | int w, h; | ||
1843 | |||
1844 | w = im->im->cache_entry.w; | ||
1845 | h = im->im->cache_entry.h; | ||
1846 | im2 = eng_image_new_from_data(data, w, h, image_data, | ||
1847 | eng_image_alpha_get(data, image), | ||
1848 | eng_image_colorspace_get(data, image)); | ||
1849 | if (!im2) return im; | ||
1850 | evas_gl_common_image_free(im); | ||
1851 | im = im2; | ||
1852 | } | ||
1853 | break; | ||
1854 | case EVAS_COLORSPACE_YCBCR422P601_PL: | ||
1855 | case EVAS_COLORSPACE_YCBCR422P709_PL: | ||
1856 | case EVAS_COLORSPACE_YCBCR422601_PL: | ||
1857 | case EVAS_COLORSPACE_YCBCR420NV12601_PL: | ||
1858 | case EVAS_COLORSPACE_YCBCR420TM12601_PL: | ||
1859 | if (image_data != im->cs.data) | ||
1860 | { | ||
1861 | if (im->cs.data) | ||
1862 | { | ||
1863 | if (!im->cs.no_free) free(im->cs.data); | ||
1864 | } | ||
1865 | im->cs.data = image_data; | ||
1866 | } | ||
1867 | evas_gl_common_image_dirty(im, 0, 0, 0, 0); | ||
1868 | break; | ||
1869 | default: | ||
1870 | abort(); | ||
1871 | break; | ||
1872 | } | ||
1873 | return im; | ||
1874 | } | ||
1875 | |||
1876 | static void | ||
1877 | eng_image_data_preload_request(void *data __UNUSED__, void *image, const void *target) | ||
1878 | { | ||
1879 | Evas_GL_Image *gim = image; | ||
1880 | RGBA_Image *im; | ||
1881 | |||
1882 | if (!gim) return; | ||
1883 | if (gim->native.data) return; | ||
1884 | im = (RGBA_Image *)gim->im; | ||
1885 | if (!im) return; | ||
1886 | evas_cache_image_preload_data(&im->cache_entry, target); | ||
1887 | } | ||
1888 | |||
1889 | static void | ||
1890 | eng_image_data_preload_cancel(void *data __UNUSED__, void *image, const void *target) | ||
1891 | { | ||
1892 | Evas_GL_Image *gim = image; | ||
1893 | RGBA_Image *im; | ||
1894 | |||
1895 | if (!gim) return; | ||
1896 | if (gim->native.data) return; | ||
1897 | im = (RGBA_Image *)gim->im; | ||
1898 | if (!im) return; | ||
1899 | evas_cache_image_preload_cancel(&im->cache_entry, target); | ||
1900 | } | ||
1901 | |||
1902 | static void | ||
1903 | eng_image_draw(void *data, void *context, void *surface, void *image, int src_x, int src_y, int src_w, int src_h, int dst_x, int dst_y, int dst_w, int dst_h, int smooth) | ||
1904 | { | ||
1905 | Render_Engine *re; | ||
1906 | |||
1907 | re = (Render_Engine *)data; | ||
1908 | if (!image) return; | ||
1909 | eng_window_use(re->win); | ||
1910 | evas_gl_common_context_target_surface_set(re->win->gl_context, surface); | ||
1911 | re->win->gl_context->dc = context; | ||
1912 | evas_gl_common_image_draw(re->win->gl_context, image, | ||
1913 | src_x, src_y, src_w, src_h, | ||
1914 | dst_x, dst_y, dst_w, dst_h, | ||
1915 | smooth); | ||
1916 | } | ||
1917 | |||
1918 | static void | ||
1919 | eng_image_scale_hint_set(void *data __UNUSED__, void *image, int hint) | ||
1920 | { | ||
1921 | if (image) evas_gl_common_image_scale_hint_set(image, hint); | ||
1922 | } | ||
1923 | |||
1924 | static int | ||
1925 | eng_image_scale_hint_get(void *data __UNUSED__, void *image) | ||
1926 | { | ||
1927 | Evas_GL_Image *gim = image; | ||
1928 | if (!gim) return EVAS_IMAGE_SCALE_HINT_NONE; | ||
1929 | return gim->scale_hint; | ||
1930 | } | ||
1931 | |||
1932 | static void | ||
1933 | eng_image_map_draw(void *data, void *context, void *surface, void *image, int npoints, RGBA_Map_Point *p, int smooth, int level) | ||
1934 | { | ||
1935 | Evas_GL_Image *gim = image; | ||
1936 | Render_Engine *re; | ||
1937 | |||
1938 | re = (Render_Engine *)data; | ||
1939 | if (!image) return; | ||
1940 | eng_window_use(re->win); | ||
1941 | evas_gl_common_context_target_surface_set(re->win->gl_context, surface); | ||
1942 | re->win->gl_context->dc = context; | ||
1943 | if (npoints != 4) | ||
1944 | { | ||
1945 | // FIXME: nash - you didn't fix this | ||
1946 | abort(); | ||
1947 | } | ||
1948 | if ((p[0].x == p[3].x) && | ||
1949 | (p[1].x == p[2].x) && | ||
1950 | (p[0].y == p[1].y) && | ||
1951 | (p[3].y == p[2].y) && | ||
1952 | (p[0].x <= p[1].x) && | ||
1953 | (p[0].y <= p[2].y) && | ||
1954 | (p[0].u == 0) && | ||
1955 | (p[0].v == 0) && | ||
1956 | (p[1].u == (gim->w << FP)) && | ||
1957 | (p[1].v == 0) && | ||
1958 | (p[2].u == (gim->w << FP)) && | ||
1959 | (p[2].v == (gim->h << FP)) && | ||
1960 | (p[3].u == 0) && | ||
1961 | (p[3].v == (gim->h << FP)) && | ||
1962 | (p[0].col == 0xffffffff) && | ||
1963 | (p[1].col == 0xffffffff) && | ||
1964 | (p[2].col == 0xffffffff) && | ||
1965 | (p[3].col == 0xffffffff)) | ||
1966 | { | ||
1967 | int dx, dy, dw, dh; | ||
1968 | |||
1969 | dx = p[0].x >> FP; | ||
1970 | dy = p[0].y >> FP; | ||
1971 | dw = (p[2].x >> FP) - dx; | ||
1972 | dh = (p[2].y >> FP) - dy; | ||
1973 | eng_image_draw(data, context, surface, image, | ||
1974 | 0, 0, gim->w, gim->h, dx, dy, dw, dh, smooth); | ||
1975 | } | ||
1976 | else | ||
1977 | { | ||
1978 | evas_gl_common_image_map_draw(re->win->gl_context, image, npoints, p, | ||
1979 | smooth, level); | ||
1980 | } | ||
1981 | } | ||
1982 | |||
1983 | static void * | ||
1984 | eng_image_map_surface_new(void *data, int w, int h, int alpha) | ||
1985 | { | ||
1986 | Render_Engine *re; | ||
1987 | |||
1988 | re = (Render_Engine *)data; | ||
1989 | return evas_gl_common_image_surface_new(re->win->gl_context, w, h, alpha); | ||
1990 | } | ||
1991 | |||
1992 | static void | ||
1993 | eng_image_map_surface_free(void *data __UNUSED__, void *surface) | ||
1994 | { | ||
1995 | evas_gl_common_image_free(surface); | ||
1996 | } | ||
1997 | |||
1998 | static void | ||
1999 | eng_image_content_hint_set(void *data __UNUSED__, void *image, int hint) | ||
2000 | { | ||
2001 | if (image) evas_gl_common_image_content_hint_set(image, hint); | ||
2002 | } | ||
2003 | |||
2004 | static int | ||
2005 | eng_image_content_hint_get(void *data __UNUSED__, void *image) | ||
2006 | { | ||
2007 | Evas_GL_Image *gim = image; | ||
2008 | if (!gim) return EVAS_IMAGE_CONTENT_HINT_NONE; | ||
2009 | return gim->content_hint; | ||
2010 | } | ||
2011 | |||
2012 | static void | ||
2013 | eng_image_cache_flush(void *data) | ||
2014 | { | ||
2015 | Render_Engine *re; | ||
2016 | int tmp_size; | ||
2017 | |||
2018 | re = (Render_Engine *)data; | ||
2019 | |||
2020 | tmp_size = evas_common_image_get_cache(); | ||
2021 | evas_common_image_set_cache(0); | ||
2022 | evas_common_rgba_image_scalecache_flush(); | ||
2023 | evas_gl_common_image_cache_flush(re->win->gl_context); | ||
2024 | evas_common_image_set_cache(tmp_size); | ||
2025 | } | ||
2026 | |||
2027 | static void | ||
2028 | eng_image_cache_set(void *data, int bytes) | ||
2029 | { | ||
2030 | Render_Engine *re; | ||
2031 | |||
2032 | re = (Render_Engine *)data; | ||
2033 | evas_common_image_set_cache(bytes); | ||
2034 | evas_common_rgba_image_scalecache_size_set(bytes); | ||
2035 | evas_gl_common_image_cache_flush(re->win->gl_context); | ||
2036 | } | ||
2037 | |||
2038 | static int | ||
2039 | eng_image_cache_get(void *data __UNUSED__) | ||
2040 | { | ||
2041 | return evas_common_image_get_cache(); | ||
2042 | } | ||
2043 | |||
2044 | static void | ||
2045 | eng_image_stride_get(void *data __UNUSED__, void *image, int *stride) | ||
2046 | { | ||
2047 | Evas_GL_Image *im = image; | ||
2048 | |||
2049 | if ((im->tex) && (im->tex->pt->dyn.img)) | ||
2050 | *stride = im->tex->pt->dyn.stride; | ||
2051 | else | ||
2052 | *stride = im->w * 4; | ||
2053 | } | ||
2054 | |||
2055 | static void | ||
2056 | eng_font_draw(void *data, void *context, void *surface, Evas_Font_Set *font, int x, int y, int w __UNUSED__, int h __UNUSED__, int ow __UNUSED__, int oh __UNUSED__, const Evas_Text_Props *intl_props) | ||
2057 | { | ||
2058 | Render_Engine *re; | ||
2059 | |||
2060 | re = (Render_Engine *)data; | ||
2061 | eng_window_use(re->win); | ||
2062 | evas_gl_common_context_target_surface_set(re->win->gl_context, surface); | ||
2063 | re->win->gl_context->dc = context; | ||
2064 | { | ||
2065 | // FIXME: put im into context so we can free it | ||
2066 | static RGBA_Image *im = NULL; | ||
2067 | |||
2068 | if (!im) | ||
2069 | im = (RGBA_Image *)evas_cache_image_empty(evas_common_image_cache_get()); | ||
2070 | im->cache_entry.w = re->win->w; | ||
2071 | im->cache_entry.h = re->win->h; | ||
2072 | evas_common_draw_context_font_ext_set(context, | ||
2073 | re->win->gl_context, | ||
2074 | evas_gl_font_texture_new, | ||
2075 | evas_gl_font_texture_free, | ||
2076 | evas_gl_font_texture_draw); | ||
2077 | evas_common_font_draw(im, context, (RGBA_Font *) font, x, y, | ||
2078 | intl_props); | ||
2079 | evas_common_draw_context_font_ext_set(context, NULL, NULL, NULL, NULL); | ||
2080 | } | ||
2081 | } | ||
2082 | |||
2083 | static Eina_Bool | ||
2084 | eng_canvas_alpha_get(void *data, void *info __UNUSED__) | ||
2085 | { | ||
2086 | Render_Engine *re = (Render_Engine *)data; | ||
2087 | return re->win->alpha; | ||
2088 | } | ||
2089 | |||
2090 | static int | ||
2091 | _set_internal_config(Render_Engine_GL_Surface *sfc, Evas_GL_Config *cfg) | ||
2092 | { | ||
2093 | // Also initialize pixel format here as well... | ||
2094 | switch(cfg->color_format) | ||
2095 | { | ||
2096 | case EVAS_GL_RGB_888: | ||
2097 | sfc->rt_fmt = GL_RGB; | ||
2098 | sfc->rt_internal_fmt = GL_RGB; | ||
2099 | break; | ||
2100 | case EVAS_GL_RGBA_8888: | ||
2101 | sfc->rt_fmt = GL_RGBA; | ||
2102 | sfc->rt_internal_fmt = GL_RGBA; | ||
2103 | break; | ||
2104 | default: | ||
2105 | ERR("Invalid Color Format!"); | ||
2106 | return 0; | ||
2107 | } | ||
2108 | |||
2109 | switch(cfg->depth_bits) | ||
2110 | { | ||
2111 | case EVAS_GL_DEPTH_NONE: | ||
2112 | break; | ||
2113 | case EVAS_GL_DEPTH_BIT_8: | ||
2114 | case EVAS_GL_DEPTH_BIT_16: | ||
2115 | case EVAS_GL_DEPTH_BIT_24: | ||
2116 | // 24 bit doesn't work... just cover it with 16 for now.. | ||
2117 | sfc->rb_depth_fmt = GL_DEPTH_COMPONENT16; | ||
2118 | break; | ||
2119 | case EVAS_GL_DEPTH_BIT_32: | ||
2120 | default: | ||
2121 | ERR("Unsupported Depth Bits Format!"); | ||
2122 | return 0; | ||
2123 | } | ||
2124 | |||
2125 | switch(cfg->stencil_bits) | ||
2126 | { | ||
2127 | case EVAS_GL_STENCIL_NONE: | ||
2128 | break; | ||
2129 | case EVAS_GL_STENCIL_BIT_1: | ||
2130 | case EVAS_GL_STENCIL_BIT_2: | ||
2131 | case EVAS_GL_STENCIL_BIT_4: | ||
2132 | case EVAS_GL_STENCIL_BIT_8: | ||
2133 | sfc->rb_stencil_fmt = GL_STENCIL_INDEX8; | ||
2134 | break; | ||
2135 | case EVAS_GL_STENCIL_BIT_16: | ||
2136 | default: | ||
2137 | ERR("Unsupported Stencil Bits Format!"); | ||
2138 | return 0; | ||
2139 | } | ||
2140 | |||
2141 | // Do Packed Depth24_Stencil8 Later... | ||
2142 | |||
2143 | return 1; | ||
2144 | } | ||
2145 | |||
2146 | static int | ||
2147 | _create_rt_buffers(Render_Engine *data __UNUSED__, | ||
2148 | Render_Engine_GL_Surface *sfc) | ||
2149 | { | ||
2150 | // Render Target texture | ||
2151 | glGenTextures(1, &sfc->rt_tex ); | ||
2152 | |||
2153 | // Depth RenderBuffer - Create storage here... | ||
2154 | if (sfc->depth_bits != EVAS_GL_DEPTH_NONE) | ||
2155 | glGenRenderbuffers(1, &sfc->rb_depth); | ||
2156 | |||
2157 | // Stencil RenderBuffer - Create Storage here... | ||
2158 | if (sfc->stencil_bits != EVAS_GL_STENCIL_NONE) | ||
2159 | glGenRenderbuffers(1, &sfc->rb_stencil); | ||
2160 | |||
2161 | return 1; | ||
2162 | } | ||
2163 | |||
2164 | static int | ||
2165 | _attach_fbo_surface(Render_Engine *data __UNUSED__, | ||
2166 | Render_Engine_GL_Surface *sfc, | ||
2167 | Render_Engine_GL_Context *ctx) | ||
2168 | { | ||
2169 | int fb_status; | ||
2170 | |||
2171 | // Initialize Texture | ||
2172 | glBindTexture(GL_TEXTURE_2D, sfc->rt_tex ); | ||
2173 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); | ||
2174 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); | ||
2175 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); | ||
2176 | glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); | ||
2177 | glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, sfc->w, sfc->h, 0, | ||
2178 | GL_RGBA, GL_UNSIGNED_BYTE, NULL); | ||
2179 | glBindTexture(GL_TEXTURE_2D, 0); | ||
2180 | |||
2181 | |||
2182 | // Attach texture to FBO | ||
2183 | glBindFramebuffer(GL_FRAMEBUFFER, ctx->context_fbo); | ||
2184 | glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, | ||
2185 | GL_TEXTURE_2D, sfc->rt_tex, 0); | ||
2186 | |||
2187 | // Depth RenderBuffer - Attach it to FBO | ||
2188 | if (sfc->depth_bits != EVAS_GL_DEPTH_NONE) | ||
2189 | { | ||
2190 | glBindRenderbuffer(GL_RENDERBUFFER, sfc->rb_depth); | ||
2191 | glRenderbufferStorage(GL_RENDERBUFFER, sfc->rb_depth_fmt, | ||
2192 | sfc->w, sfc->h); | ||
2193 | glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, | ||
2194 | GL_RENDERBUFFER, sfc->rb_depth); | ||
2195 | glBindRenderbuffer(GL_RENDERBUFFER, 0); | ||
2196 | } | ||
2197 | |||
2198 | // Stencil RenderBuffer - Attach it to FBO | ||
2199 | if (sfc->stencil_bits != EVAS_GL_STENCIL_NONE) | ||
2200 | { | ||
2201 | glBindRenderbuffer(GL_RENDERBUFFER, sfc->rb_stencil); | ||
2202 | glRenderbufferStorage(GL_RENDERBUFFER, sfc->rb_stencil_fmt, | ||
2203 | sfc->w, sfc->h); | ||
2204 | glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, | ||
2205 | GL_RENDERBUFFER, sfc->rb_stencil); | ||
2206 | glBindRenderbuffer(GL_RENDERBUFFER, 0); | ||
2207 | } | ||
2208 | |||
2209 | // Check FBO for completeness | ||
2210 | fb_status = glCheckFramebufferStatus(GL_FRAMEBUFFER); | ||
2211 | if (fb_status != GL_FRAMEBUFFER_COMPLETE) | ||
2212 | { | ||
2213 | ERR("FBO not complete!"); | ||
2214 | return 0; | ||
2215 | } | ||
2216 | |||
2217 | return 1; | ||
2218 | } | ||
2219 | |||
2220 | |||
2221 | static void * | ||
2222 | eng_gl_surface_create(void *data, void *config, int w, int h) | ||
2223 | { | ||
2224 | Render_Engine *re; | ||
2225 | Render_Engine_GL_Surface *sfc; | ||
2226 | Render_Engine_GL_Resource *rsc; | ||
2227 | Evas_GL_Config *cfg; | ||
2228 | int ret; | ||
2229 | |||
2230 | sfc = calloc(1, sizeof(Render_Engine_GL_Surface)); | ||
2231 | if (!sfc) return NULL; | ||
2232 | |||
2233 | re = (Render_Engine *)data; | ||
2234 | cfg = (Evas_GL_Config *)config; | ||
2235 | |||
2236 | sfc->initialized = 0; | ||
2237 | sfc->fbo_attached = 0; | ||
2238 | sfc->w = w; | ||
2239 | sfc->h = h; | ||
2240 | sfc->depth_bits = cfg->depth_bits; | ||
2241 | sfc->stencil_bits = cfg->stencil_bits; | ||
2242 | sfc->rt_tex = 0; | ||
2243 | sfc->rb_depth = 0; | ||
2244 | sfc->rb_stencil = 0; | ||
2245 | |||
2246 | // Set the internal format based on the config | ||
2247 | if (!_set_internal_config(sfc, cfg)) | ||
2248 | { | ||
2249 | ERR("Unsupported Format!"); | ||
2250 | free(sfc); | ||
2251 | return NULL; | ||
2252 | } | ||
2253 | |||
2254 | // Create internal resource context if it hasn't been created already | ||
2255 | if ((rsc = eina_tls_get(resource_key)) == NULL) | ||
2256 | { | ||
2257 | if ((rsc = _create_internal_glue_resources(re)) == NULL) | ||
2258 | { | ||
2259 | ERR("Error creating internal resources."); | ||
2260 | free(sfc); | ||
2261 | return NULL; | ||
2262 | } | ||
2263 | } | ||
2264 | |||
2265 | // I'm using evas's original context to create the render target texture | ||
2266 | // This is to prevent awkwardness in using native_surface_get() function | ||
2267 | // If the rt texture creation is deferred till the context is created and | ||
2268 | // make_current called, the user can't call native_surface_get() right | ||
2269 | // after the surface is created. hence this is done here using evas' context. | ||
2270 | ret = eglMakeCurrent(re->win->egl_disp, rsc->surface, rsc->surface, rsc->context); | ||
2271 | if (!ret) | ||
2272 | { | ||
2273 | ERR("xxxMakeCurrent() failed!"); | ||
2274 | free(sfc); | ||
2275 | return NULL; | ||
2276 | } | ||
2277 | |||
2278 | // Create Render texture | ||
2279 | if (!_create_rt_buffers(re, sfc)) | ||
2280 | { | ||
2281 | ERR("_create_rt_buffers() failed."); | ||
2282 | free(sfc); | ||
2283 | return NULL; | ||
2284 | } | ||
2285 | |||
2286 | ret = eglMakeCurrent(re->win->egl_disp, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
2287 | if (!ret) | ||
2288 | { | ||
2289 | ERR("xxxMakeCurrent() failed!"); | ||
2290 | free(sfc); | ||
2291 | return NULL; | ||
2292 | } | ||
2293 | |||
2294 | return sfc; | ||
2295 | } | ||
2296 | |||
2297 | static int | ||
2298 | eng_gl_surface_destroy(void *data, void *surface) | ||
2299 | { | ||
2300 | Render_Engine *re; | ||
2301 | Render_Engine_GL_Surface *sfc; | ||
2302 | Render_Engine_GL_Resource *rsc; | ||
2303 | int ret; | ||
2304 | |||
2305 | re = (Render_Engine *)data; | ||
2306 | sfc = (Render_Engine_GL_Surface*)surface; | ||
2307 | |||
2308 | if (!sfc) return 0; | ||
2309 | |||
2310 | if ((rsc = eina_tls_get(resource_key)) == EINA_FALSE) return 0; | ||
2311 | |||
2312 | ret = eglMakeCurrent(re->win->egl_disp, rsc->surface, rsc->surface, rsc->context); | ||
2313 | if (!ret) | ||
2314 | { | ||
2315 | ERR("xxxMakeCurrent() failed!"); | ||
2316 | return 0; | ||
2317 | } | ||
2318 | |||
2319 | // Delete FBO/RBO and Texture here | ||
2320 | if (sfc->rt_tex) | ||
2321 | glDeleteTextures(1, &sfc->rt_tex); | ||
2322 | |||
2323 | if (sfc->rb_depth) | ||
2324 | glDeleteRenderbuffers(1, &sfc->rb_depth); | ||
2325 | |||
2326 | if (sfc->rb_stencil) | ||
2327 | glDeleteRenderbuffers(1, &sfc->rb_stencil); | ||
2328 | |||
2329 | ret = eglMakeCurrent(re->win->egl_disp, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
2330 | if (!ret) | ||
2331 | { | ||
2332 | ERR("xxxMakeCurrent() failed!"); | ||
2333 | free(sfc); | ||
2334 | return 0; | ||
2335 | } | ||
2336 | |||
2337 | free(sfc); | ||
2338 | surface = NULL; | ||
2339 | |||
2340 | return 1; | ||
2341 | } | ||
2342 | |||
2343 | static void * | ||
2344 | eng_gl_context_create(void *data, void *share_context) | ||
2345 | { | ||
2346 | Render_Engine *re; | ||
2347 | Render_Engine_GL_Context *ctx; | ||
2348 | Render_Engine_GL_Context *share_ctx; | ||
2349 | int context_attrs[3]; | ||
2350 | |||
2351 | ctx = calloc(1, sizeof(Render_Engine_GL_Context)); | ||
2352 | |||
2353 | if (!ctx) return NULL; | ||
2354 | |||
2355 | re = (Render_Engine *)data; | ||
2356 | share_ctx = (Render_Engine_GL_Context *)share_context; | ||
2357 | |||
2358 | // Set the share context to Evas' GL context if share_context is NULL. | ||
2359 | // Otherwise set it to the given share_context. | ||
2360 | |||
2361 | // EGL | ||
2362 | context_attrs[0] = EGL_CONTEXT_CLIENT_VERSION; | ||
2363 | context_attrs[1] = 2; | ||
2364 | context_attrs[2] = EGL_NONE; | ||
2365 | |||
2366 | if (share_ctx) | ||
2367 | { | ||
2368 | ctx->context = eglCreateContext(re->win->egl_disp, | ||
2369 | re->win->egl_config, | ||
2370 | share_ctx->context, // Share Context | ||
2371 | context_attrs); | ||
2372 | } | ||
2373 | else | ||
2374 | { | ||
2375 | ctx->context = eglCreateContext(re->win->egl_disp, | ||
2376 | re->win->egl_config, | ||
2377 | re->win->egl_context[0], // Evas' GL Context | ||
2378 | context_attrs); | ||
2379 | } | ||
2380 | |||
2381 | if (!ctx->context) | ||
2382 | { | ||
2383 | ERR("eglCreateContext() fail. code=%#x", eglGetError()); | ||
2384 | return NULL; | ||
2385 | } | ||
2386 | |||
2387 | ctx->initialized = 0; | ||
2388 | ctx->context_fbo = 0; | ||
2389 | ctx->current_sfc = NULL; | ||
2390 | |||
2391 | return ctx; | ||
2392 | } | ||
2393 | |||
2394 | static int | ||
2395 | eng_gl_context_destroy(void *data, void *context) | ||
2396 | { | ||
2397 | Render_Engine *re; | ||
2398 | Render_Engine_GL_Context *ctx; | ||
2399 | Render_Engine_GL_Resource *rsc; | ||
2400 | int ret; | ||
2401 | |||
2402 | re = (Render_Engine *)data; | ||
2403 | ctx = (Render_Engine_GL_Context*)context; | ||
2404 | |||
2405 | if (!ctx) return 0; | ||
2406 | |||
2407 | if ((rsc = eina_tls_get(resource_key)) == EINA_FALSE) return 0; | ||
2408 | |||
2409 | // 1. Do a make current with the given context | ||
2410 | ret = eglMakeCurrent(re->win->egl_disp, rsc->surface, | ||
2411 | rsc->surface, ctx->context); | ||
2412 | if (!ret) | ||
2413 | { | ||
2414 | ERR("xxxMakeCurrent() failed!"); | ||
2415 | return 0; | ||
2416 | } | ||
2417 | |||
2418 | // 2. Delete the FBO | ||
2419 | if (ctx->context_fbo) | ||
2420 | glDeleteFramebuffers(1, &ctx->context_fbo); | ||
2421 | |||
2422 | // 3. Destroy the Context | ||
2423 | eglDestroyContext(re->win->egl_disp, ctx->context); | ||
2424 | |||
2425 | ctx->context = EGL_NO_CONTEXT; | ||
2426 | |||
2427 | ret = eglMakeCurrent(re->win->egl_disp, EGL_NO_SURFACE, | ||
2428 | EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
2429 | if (!ret) | ||
2430 | { | ||
2431 | ERR("xxxMakeCurrent() failed!"); | ||
2432 | return 0; | ||
2433 | } | ||
2434 | |||
2435 | free(ctx); | ||
2436 | context = NULL; | ||
2437 | |||
2438 | return 1; | ||
2439 | } | ||
2440 | |||
2441 | static int | ||
2442 | eng_gl_make_current(void *data __UNUSED__, void *surface, void *context) | ||
2443 | { | ||
2444 | Render_Engine *re; | ||
2445 | Render_Engine_GL_Surface *sfc; | ||
2446 | Render_Engine_GL_Context *ctx; | ||
2447 | int ret = 0; | ||
2448 | Render_Engine_GL_Resource *rsc; | ||
2449 | |||
2450 | re = (Render_Engine *)data; | ||
2451 | sfc = (Render_Engine_GL_Surface*)surface; | ||
2452 | ctx = (Render_Engine_GL_Context*)context; | ||
2453 | |||
2454 | // Unset surface/context | ||
2455 | if ((!sfc) || (!ctx)) | ||
2456 | { | ||
2457 | ret = eglMakeCurrent(re->win->egl_disp, EGL_NO_SURFACE, | ||
2458 | EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
2459 | if (!ret) | ||
2460 | { | ||
2461 | ERR("xxxMakeCurrent() failed!"); | ||
2462 | return 0; | ||
2463 | } | ||
2464 | |||
2465 | if (ctx) ctx->current_sfc = NULL; | ||
2466 | if (sfc) sfc->current_ctx = NULL; | ||
2467 | current_evgl_ctx = NULL; | ||
2468 | return 1; | ||
2469 | } | ||
2470 | |||
2471 | // Do a make current only if it's not already current | ||
2472 | if ((rsc = eina_tls_get(resource_key)) == EINA_FALSE) return 0; | ||
2473 | |||
2474 | if ((eglGetCurrentContext() != ctx->context) || | ||
2475 | (eglGetCurrentSurface(EGL_READ) != rsc->surface) || | ||
2476 | (eglGetCurrentSurface(EGL_DRAW) != rsc->surface) ) | ||
2477 | { | ||
2478 | // Flush remainder of what's in Evas' pipeline | ||
2479 | if (re->win) eng_window_use(NULL); | ||
2480 | |||
2481 | // Do a make current | ||
2482 | ret = eglMakeCurrent(re->win->egl_disp, rsc->surface, | ||
2483 | rsc->surface, ctx->context); | ||
2484 | if (!ret) | ||
2485 | { | ||
2486 | ERR("xxxMakeCurrent() failed!"); | ||
2487 | return 0; | ||
2488 | } | ||
2489 | } | ||
2490 | |||
2491 | // Create FBO if not already created | ||
2492 | if (!ctx->initialized) | ||
2493 | { | ||
2494 | glGenFramebuffers(1, &ctx->context_fbo); | ||
2495 | ctx->initialized = 1; | ||
2496 | } | ||
2497 | |||
2498 | // Attach FBO if it hasn't been attached or if surface changed | ||
2499 | if ((!sfc->fbo_attached) || (ctx->current_sfc != sfc)) | ||
2500 | { | ||
2501 | if (!_attach_fbo_surface(re, sfc, ctx)) | ||
2502 | { | ||
2503 | ERR("_attach_fbo_surface() failed."); | ||
2504 | return 0; | ||
2505 | } | ||
2506 | |||
2507 | if (ctx->current_fbo) | ||
2508 | // Bind to the previously bound buffer | ||
2509 | glBindFramebuffer(GL_FRAMEBUFFER, ctx->current_fbo); | ||
2510 | else | ||
2511 | // Bind FBO | ||
2512 | glBindFramebuffer(GL_FRAMEBUFFER, ctx->context_fbo); | ||
2513 | |||
2514 | sfc->fbo_attached = 1; | ||
2515 | } | ||
2516 | |||
2517 | // Set the current surface/context | ||
2518 | ctx->current_sfc = sfc; | ||
2519 | sfc->current_ctx = ctx; | ||
2520 | current_evgl_ctx = ctx; | ||
2521 | |||
2522 | return 1; | ||
2523 | } | ||
2524 | |||
2525 | static void * | ||
2526 | eng_gl_string_query(void *data __UNUSED__, int name) | ||
2527 | { | ||
2528 | switch(name) | ||
2529 | { | ||
2530 | case EVAS_GL_EXTENSIONS: | ||
2531 | return (void*)_evasgl_ext_string; | ||
2532 | default: | ||
2533 | return NULL; | ||
2534 | }; | ||
2535 | } | ||
2536 | |||
2537 | static void * | ||
2538 | eng_gl_proc_address_get(void *data __UNUSED__, const char *name) | ||
2539 | { | ||
2540 | if (glsym_eglGetProcAddress) return glsym_eglGetProcAddress(name); | ||
2541 | return dlsym(RTLD_DEFAULT, name); | ||
2542 | } | ||
2543 | |||
2544 | static int | ||
2545 | eng_gl_native_surface_get(void *data, void *surface, void *native_surface) | ||
2546 | { | ||
2547 | Render_Engine *re; | ||
2548 | Render_Engine_GL_Surface *sfc; | ||
2549 | Evas_Native_Surface *ns; | ||
2550 | |||
2551 | re = (Render_Engine *)data; | ||
2552 | sfc = (Render_Engine_GL_Surface*)surface; | ||
2553 | ns = (Evas_Native_Surface*)native_surface; | ||
2554 | |||
2555 | ns->type = EVAS_NATIVE_SURFACE_OPENGL; | ||
2556 | ns->version = EVAS_NATIVE_SURFACE_VERSION; | ||
2557 | ns->data.opengl.texture_id = sfc->rt_tex; | ||
2558 | ns->data.opengl.x = 0; | ||
2559 | ns->data.opengl.y = 0; | ||
2560 | ns->data.opengl.w = sfc->w; | ||
2561 | ns->data.opengl.h = sfc->h; | ||
2562 | |||
2563 | return 1; | ||
2564 | } | ||
2565 | |||
2566 | |||
2567 | static const GLubyte * | ||
2568 | evgl_glGetString(GLenum name) | ||
2569 | { | ||
2570 | if (name == GL_EXTENSIONS) | ||
2571 | return (GLubyte *)_gl_ext_string; //glGetString(GL_EXTENSIONS); | ||
2572 | else | ||
2573 | return glGetString(name); | ||
2574 | } | ||
2575 | |||
2576 | static void | ||
2577 | evgl_glBindFramebuffer(GLenum target, GLuint framebuffer) | ||
2578 | { | ||
2579 | Render_Engine_GL_Context *ctx = current_evgl_ctx; | ||
2580 | |||
2581 | // Take care of BindFramebuffer 0 issue | ||
2582 | if (framebuffer==0) | ||
2583 | { | ||
2584 | if (ctx) | ||
2585 | { | ||
2586 | glBindFramebuffer(target, ctx->context_fbo); | ||
2587 | ctx->current_fbo = 0; | ||
2588 | } | ||
2589 | } | ||
2590 | else | ||
2591 | { | ||
2592 | glBindFramebuffer(target, framebuffer); | ||
2593 | |||
2594 | // Save this for restore when doing make current | ||
2595 | if (ctx) | ||
2596 | ctx->current_fbo = framebuffer; | ||
2597 | } | ||
2598 | } | ||
2599 | |||
2600 | static void | ||
2601 | evgl_glBindRenderbuffer(GLenum target, GLuint renderbuffer) | ||
2602 | { | ||
2603 | // Add logic to take care when renderbuffer=0 | ||
2604 | // On a second thought we don't need this | ||
2605 | glBindRenderbuffer(target, renderbuffer); | ||
2606 | } | ||
2607 | |||
2608 | static void | ||
2609 | evgl_glClearDepthf(GLclampf depth) | ||
2610 | { | ||
2611 | glClearDepthf(depth); | ||
2612 | } | ||
2613 | |||
2614 | static void | ||
2615 | evgl_glDepthRangef(GLclampf zNear, GLclampf zFar) | ||
2616 | { | ||
2617 | glDepthRangef(zNear, zFar); | ||
2618 | } | ||
2619 | |||
2620 | static void | ||
2621 | evgl_glGetShaderPrecisionFormat(GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision) | ||
2622 | { | ||
2623 | glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision); | ||
2624 | } | ||
2625 | |||
2626 | static void | ||
2627 | evgl_glReleaseShaderCompiler(void) | ||
2628 | { | ||
2629 | glReleaseShaderCompiler(); | ||
2630 | } | ||
2631 | |||
2632 | static void | ||
2633 | evgl_glShaderBinary(GLsizei n, const GLuint* shaders, GLenum binaryformat, const void* binary, GLsizei length) | ||
2634 | { | ||
2635 | glShaderBinary(n, shaders, binaryformat, binary, length); | ||
2636 | } | ||
2637 | |||
2638 | //--------------------------------// | ||
2639 | //#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX) | ||
2640 | // EGL Extensions | ||
2641 | static void * | ||
2642 | evgl_evasglCreateImage(int target, void* buffer, int *attrib_list) | ||
2643 | { | ||
2644 | if (current_engine) | ||
2645 | { | ||
2646 | return glsym_eglCreateImage(current_engine->win->egl_disp, | ||
2647 | EGL_NO_CONTEXT, | ||
2648 | target, | ||
2649 | buffer, | ||
2650 | attrib_list); | ||
2651 | } | ||
2652 | else | ||
2653 | { | ||
2654 | ERR("Invalid Engine... (Can't acccess EGL Display)\n"); | ||
2655 | return NULL; | ||
2656 | } | ||
2657 | } | ||
2658 | |||
2659 | static void | ||
2660 | evgl_evasglDestroyImage(EvasGLImage image) | ||
2661 | { | ||
2662 | if (current_engine) | ||
2663 | glsym_eglDestroyImage(current_engine->win->egl_disp, image); | ||
2664 | else | ||
2665 | ERR("Invalid Engine... (Can't acccess EGL Display)\n"); | ||
2666 | } | ||
2667 | |||
2668 | static void | ||
2669 | evgl_glEvasGLImageTargetTexture2DOES(GLenum target, EvasGLImage image) | ||
2670 | { | ||
2671 | glsym_glEGLImageTargetTexture2DOES(target, image); | ||
2672 | } | ||
2673 | |||
2674 | static void | ||
2675 | evgl_glEvasGLImageTargetRenderbufferStorageOES(GLenum target, EvasGLImage image) | ||
2676 | { | ||
2677 | glsym_glEGLImageTargetTexture2DOES(target, image); | ||
2678 | } | ||
2679 | |||
2680 | //--------------------------------// | ||
2681 | |||
2682 | |||
2683 | static void * | ||
2684 | eng_gl_api_get(void *data) | ||
2685 | { | ||
2686 | Render_Engine *re; | ||
2687 | |||
2688 | re = (Render_Engine *)data; | ||
2689 | |||
2690 | gl_funcs.version = EVAS_GL_API_VERSION; | ||
2691 | |||
2692 | #define ORD(f) EVAS_API_OVERRIDE(f, &gl_funcs, ) | ||
2693 | // GLES 2.0 | ||
2694 | ORD(glActiveTexture); | ||
2695 | ORD(glAttachShader); | ||
2696 | ORD(glBindAttribLocation); | ||
2697 | ORD(glBindBuffer); | ||
2698 | ORD(glBindTexture); | ||
2699 | ORD(glBlendColor); | ||
2700 | ORD(glBlendEquation); | ||
2701 | ORD(glBlendEquationSeparate); | ||
2702 | ORD(glBlendFunc); | ||
2703 | ORD(glBlendFuncSeparate); | ||
2704 | ORD(glBufferData); | ||
2705 | ORD(glBufferSubData); | ||
2706 | ORD(glCheckFramebufferStatus); | ||
2707 | ORD(glClear); | ||
2708 | ORD(glClearColor); | ||
2709 | // ORD(glClearDepthf); | ||
2710 | ORD(glClearStencil); | ||
2711 | ORD(glColorMask); | ||
2712 | ORD(glCompileShader); | ||
2713 | ORD(glCompressedTexImage2D); | ||
2714 | ORD(glCompressedTexSubImage2D); | ||
2715 | ORD(glCopyTexImage2D); | ||
2716 | ORD(glCopyTexSubImage2D); | ||
2717 | ORD(glCreateProgram); | ||
2718 | ORD(glCreateShader); | ||
2719 | ORD(glCullFace); | ||
2720 | ORD(glDeleteBuffers); | ||
2721 | ORD(glDeleteFramebuffers); | ||
2722 | ORD(glDeleteProgram); | ||
2723 | ORD(glDeleteRenderbuffers); | ||
2724 | ORD(glDeleteShader); | ||
2725 | ORD(glDeleteTextures); | ||
2726 | ORD(glDepthFunc); | ||
2727 | ORD(glDepthMask); | ||
2728 | // ORD(glDepthRangef); | ||
2729 | ORD(glDetachShader); | ||
2730 | ORD(glDisable); | ||
2731 | ORD(glDisableVertexAttribArray); | ||
2732 | ORD(glDrawArrays); | ||
2733 | ORD(glDrawElements); | ||
2734 | ORD(glEnable); | ||
2735 | ORD(glEnableVertexAttribArray); | ||
2736 | ORD(glFinish); | ||
2737 | ORD(glFlush); | ||
2738 | ORD(glFramebufferRenderbuffer); | ||
2739 | ORD(glFramebufferTexture2D); | ||
2740 | ORD(glFrontFace); | ||
2741 | ORD(glGenBuffers); | ||
2742 | ORD(glGenerateMipmap); | ||
2743 | ORD(glGenFramebuffers); | ||
2744 | ORD(glGenRenderbuffers); | ||
2745 | ORD(glGenTextures); | ||
2746 | ORD(glGetActiveAttrib); | ||
2747 | ORD(glGetActiveUniform); | ||
2748 | ORD(glGetAttachedShaders); | ||
2749 | ORD(glGetAttribLocation); | ||
2750 | ORD(glGetBooleanv); | ||
2751 | ORD(glGetBufferParameteriv); | ||
2752 | ORD(glGetError); | ||
2753 | ORD(glGetFloatv); | ||
2754 | ORD(glGetFramebufferAttachmentParameteriv); | ||
2755 | ORD(glGetIntegerv); | ||
2756 | ORD(glGetProgramiv); | ||
2757 | ORD(glGetProgramInfoLog); | ||
2758 | ORD(glGetRenderbufferParameteriv); | ||
2759 | ORD(glGetShaderiv); | ||
2760 | ORD(glGetShaderInfoLog); | ||
2761 | // ORD(glGetShaderPrecisionFormat); | ||
2762 | ORD(glGetShaderSource); | ||
2763 | // ORD(glGetString); | ||
2764 | ORD(glGetTexParameterfv); | ||
2765 | ORD(glGetTexParameteriv); | ||
2766 | ORD(glGetUniformfv); | ||
2767 | ORD(glGetUniformiv); | ||
2768 | ORD(glGetUniformLocation); | ||
2769 | ORD(glGetVertexAttribfv); | ||
2770 | ORD(glGetVertexAttribiv); | ||
2771 | ORD(glGetVertexAttribPointerv); | ||
2772 | ORD(glHint); | ||
2773 | ORD(glIsBuffer); | ||
2774 | ORD(glIsEnabled); | ||
2775 | ORD(glIsFramebuffer); | ||
2776 | ORD(glIsProgram); | ||
2777 | ORD(glIsRenderbuffer); | ||
2778 | ORD(glIsShader); | ||
2779 | ORD(glIsTexture); | ||
2780 | ORD(glLineWidth); | ||
2781 | ORD(glLinkProgram); | ||
2782 | ORD(glPixelStorei); | ||
2783 | ORD(glPolygonOffset); | ||
2784 | ORD(glReadPixels); | ||
2785 | // ORD(glReleaseShaderCompiler); | ||
2786 | ORD(glRenderbufferStorage); | ||
2787 | ORD(glSampleCoverage); | ||
2788 | ORD(glScissor); | ||
2789 | // ORD(glShaderBinary); | ||
2790 | ORD(glShaderSource); | ||
2791 | ORD(glStencilFunc); | ||
2792 | ORD(glStencilFuncSeparate); | ||
2793 | ORD(glStencilMask); | ||
2794 | ORD(glStencilMaskSeparate); | ||
2795 | ORD(glStencilOp); | ||
2796 | ORD(glStencilOpSeparate); | ||
2797 | ORD(glTexImage2D); | ||
2798 | ORD(glTexParameterf); | ||
2799 | ORD(glTexParameterfv); | ||
2800 | ORD(glTexParameteri); | ||
2801 | ORD(glTexParameteriv); | ||
2802 | ORD(glTexSubImage2D); | ||
2803 | ORD(glUniform1f); | ||
2804 | ORD(glUniform1fv); | ||
2805 | ORD(glUniform1i); | ||
2806 | ORD(glUniform1iv); | ||
2807 | ORD(glUniform2f); | ||
2808 | ORD(glUniform2fv); | ||
2809 | ORD(glUniform2i); | ||
2810 | ORD(glUniform2iv); | ||
2811 | ORD(glUniform3f); | ||
2812 | ORD(glUniform3fv); | ||
2813 | ORD(glUniform3i); | ||
2814 | ORD(glUniform3iv); | ||
2815 | ORD(glUniform4f); | ||
2816 | ORD(glUniform4fv); | ||
2817 | ORD(glUniform4i); | ||
2818 | ORD(glUniform4iv); | ||
2819 | ORD(glUniformMatrix2fv); | ||
2820 | ORD(glUniformMatrix3fv); | ||
2821 | ORD(glUniformMatrix4fv); | ||
2822 | ORD(glUseProgram); | ||
2823 | ORD(glValidateProgram); | ||
2824 | ORD(glVertexAttrib1f); | ||
2825 | ORD(glVertexAttrib1fv); | ||
2826 | ORD(glVertexAttrib2f); | ||
2827 | ORD(glVertexAttrib2fv); | ||
2828 | ORD(glVertexAttrib3f); | ||
2829 | ORD(glVertexAttrib3fv); | ||
2830 | ORD(glVertexAttrib4f); | ||
2831 | ORD(glVertexAttrib4fv); | ||
2832 | ORD(glVertexAttribPointer); | ||
2833 | ORD(glViewport); | ||
2834 | #undef ORD | ||
2835 | |||
2836 | #define ORD(f) EVAS_API_OVERRIDE(f, &gl_funcs, glsym_) | ||
2837 | // Extensions | ||
2838 | ORD(glGetProgramBinaryOES); | ||
2839 | ORD(glProgramBinaryOES); | ||
2840 | ORD(glMapBufferOES); | ||
2841 | ORD(glUnmapBufferOES); | ||
2842 | ORD(glGetBufferPointervOES); | ||
2843 | ORD(glTexImage3DOES); | ||
2844 | ORD(glTexSubImage3DOES); | ||
2845 | ORD(glCopyTexSubImage3DOES); | ||
2846 | ORD(glCompressedTexImage3DOES); | ||
2847 | ORD(glCompressedTexSubImage3DOES); | ||
2848 | ORD(glFramebufferTexture3DOES); | ||
2849 | ORD(glGetPerfMonitorGroupsAMD); | ||
2850 | ORD(glGetPerfMonitorCountersAMD); | ||
2851 | ORD(glGetPerfMonitorGroupStringAMD); | ||
2852 | ORD(glGetPerfMonitorCounterStringAMD); | ||
2853 | ORD(glGetPerfMonitorCounterInfoAMD); | ||
2854 | ORD(glGenPerfMonitorsAMD); | ||
2855 | ORD(glDeletePerfMonitorsAMD); | ||
2856 | ORD(glSelectPerfMonitorCountersAMD); | ||
2857 | ORD(glBeginPerfMonitorAMD); | ||
2858 | ORD(glEndPerfMonitorAMD); | ||
2859 | ORD(glGetPerfMonitorCounterDataAMD); | ||
2860 | ORD(glDiscardFramebufferEXT); | ||
2861 | ORD(glMultiDrawArraysEXT); | ||
2862 | ORD(glMultiDrawElementsEXT); | ||
2863 | ORD(glDeleteFencesNV); | ||
2864 | ORD(glGenFencesNV); | ||
2865 | ORD(glIsFenceNV); | ||
2866 | ORD(glTestFenceNV); | ||
2867 | ORD(glGetFenceivNV); | ||
2868 | ORD(glFinishFenceNV); | ||
2869 | ORD(glSetFenceNV); | ||
2870 | ORD(glGetDriverControlsQCOM); | ||
2871 | ORD(glGetDriverControlStringQCOM); | ||
2872 | ORD(glEnableDriverControlQCOM); | ||
2873 | ORD(glDisableDriverControlQCOM); | ||
2874 | ORD(glExtGetTexturesQCOM); | ||
2875 | ORD(glExtGetBuffersQCOM); | ||
2876 | ORD(glExtGetRenderbuffersQCOM); | ||
2877 | ORD(glExtGetFramebuffersQCOM); | ||
2878 | ORD(glExtGetTexLevelParameterivQCOM); | ||
2879 | ORD(glExtTexObjectStateOverrideiQCOM); | ||
2880 | ORD(glExtGetTexSubImageQCOM); | ||
2881 | ORD(glExtGetBufferPointervQCOM); | ||
2882 | ORD(glExtGetShadersQCOM); | ||
2883 | ORD(glExtGetProgramsQCOM); | ||
2884 | ORD(glExtIsProgramBinaryQCOM); | ||
2885 | ORD(glExtGetProgramBinarySourceQCOM); | ||
2886 | #undef ORD | ||
2887 | |||
2888 | // Override functions wrapped by Evas_GL | ||
2889 | #define ORD(f) EVAS_API_OVERRIDE(f, &gl_funcs, evgl_) | ||
2890 | ORD(glBindFramebuffer); | ||
2891 | ORD(glBindRenderbuffer); | ||
2892 | |||
2893 | // GLES2.0 API compat on top of desktop gl | ||
2894 | ORD(glClearDepthf); | ||
2895 | ORD(glDepthRangef); | ||
2896 | ORD(glGetShaderPrecisionFormat); | ||
2897 | ORD(glReleaseShaderCompiler); | ||
2898 | ORD(glShaderBinary); | ||
2899 | |||
2900 | ORD(glGetString); | ||
2901 | |||
2902 | // GLES 2.0 Extensions that needs wrapping | ||
2903 | ORD(evasglCreateImage); | ||
2904 | ORD(evasglDestroyImage); | ||
2905 | ORD(glEvasGLImageTargetTexture2DOES); | ||
2906 | ORD(glEvasGLImageTargetRenderbufferStorageOES); | ||
2907 | |||
2908 | #undef ORD | ||
2909 | |||
2910 | return &gl_funcs; | ||
2911 | } | ||
2912 | |||
2913 | static int | ||
2914 | eng_image_load_error_get(void *data __UNUSED__, void *image) | ||
2915 | { | ||
2916 | Evas_GL_Image *im; | ||
2917 | |||
2918 | if (!image) return EVAS_LOAD_ERROR_NONE; | ||
2919 | im = image; | ||
2920 | return im->im->cache_entry.load_error; | ||
2921 | } | ||
2922 | |||
2923 | static Eina_Bool | ||
2924 | eng_image_animated_get(void *data __UNUSED__, void *image) | ||
2925 | { | ||
2926 | Evas_GL_Image *gim = image; | ||
2927 | Image_Entry *im; | ||
2928 | |||
2929 | if (!gim) return EINA_FALSE; | ||
2930 | im = (Image_Entry *)gim->im; | ||
2931 | if (!im) return EINA_FALSE; | ||
2932 | |||
2933 | return im->flags.animated; | ||
2934 | } | ||
2935 | |||
2936 | static int | ||
2937 | eng_image_animated_frame_count_get(void *data __UNUSED__, void *image) | ||
2938 | { | ||
2939 | Evas_GL_Image *gim = image; | ||
2940 | Image_Entry *im; | ||
2941 | |||
2942 | if (!gim) return -1; | ||
2943 | im = (Image_Entry *)gim->im; | ||
2944 | if (!im) return -1; | ||
2945 | |||
2946 | if (!im->flags.animated) return -1; | ||
2947 | return im->frame_count; | ||
2948 | } | ||
2949 | |||
2950 | static Evas_Image_Animated_Loop_Hint | ||
2951 | eng_image_animated_loop_type_get(void *data __UNUSED__, void *image) | ||
2952 | { | ||
2953 | Evas_GL_Image *gim = image; | ||
2954 | Image_Entry *im; | ||
2955 | |||
2956 | if (!gim) return EVAS_IMAGE_ANIMATED_HINT_NONE; | ||
2957 | im = (Image_Entry *)gim->im; | ||
2958 | if (!im) return EVAS_IMAGE_ANIMATED_HINT_NONE; | ||
2959 | |||
2960 | if (!im->flags.animated) return EVAS_IMAGE_ANIMATED_HINT_NONE; | ||
2961 | return im->loop_hint; | ||
2962 | } | ||
2963 | |||
2964 | static int | ||
2965 | eng_image_animated_loop_count_get(void *data __UNUSED__, void *image) | ||
2966 | { | ||
2967 | Evas_GL_Image *gim = image; | ||
2968 | Image_Entry *im; | ||
2969 | |||
2970 | if (!gim) return -1; | ||
2971 | im = (Image_Entry *)gim->im; | ||
2972 | if (!im) return -1; | ||
2973 | |||
2974 | if (!im->flags.animated) return -1; | ||
2975 | return im->loop_count; | ||
2976 | } | ||
2977 | |||
2978 | static double | ||
2979 | eng_image_animated_frame_duration_get(void *data __UNUSED__, void *image, int start_frame, int frame_num) | ||
2980 | { | ||
2981 | Evas_GL_Image *gim = image; | ||
2982 | Image_Entry *im; | ||
2983 | |||
2984 | if (!gim) return -1; | ||
2985 | im = (Image_Entry *)gim->im; | ||
2986 | if (!im) return -1; | ||
2987 | |||
2988 | if (!im->flags.animated) return -1; | ||
2989 | return evas_common_load_rgba_image_frame_duration_from_file(im, start_frame, frame_num); | ||
2990 | } | ||
2991 | |||
2992 | static Eina_Bool | ||
2993 | eng_image_animated_frame_set(void *data __UNUSED__, void *image, int frame_index) | ||
2994 | { | ||
2995 | Evas_GL_Image *gim = image; | ||
2996 | Image_Entry *im; | ||
2997 | |||
2998 | if (!gim) return EINA_FALSE; | ||
2999 | im = (Image_Entry *)gim->im; | ||
3000 | if (!im) return EINA_FALSE; | ||
3001 | |||
3002 | if (!im->flags.animated) return EINA_FALSE; | ||
3003 | if (im->cur_frame == frame_index) return EINA_FALSE; | ||
3004 | |||
3005 | im->cur_frame = frame_index; | ||
3006 | return EINA_TRUE; | ||
3007 | } | ||
3008 | |||
3009 | static Eina_Bool | ||
3010 | eng_image_can_region_get(void *data __UNUSED__, void *image) | ||
3011 | { | ||
3012 | Evas_GL_Image *gim = image; | ||
3013 | Image_Entry *im; | ||
3014 | if (!gim) return EINA_FALSE; | ||
3015 | im = (Image_Entry *)gim->im; | ||
3016 | if (!im) return EINA_FALSE; | ||
3017 | return ((Evas_Image_Load_Func*) im->info.loader)->do_region; | ||
3018 | } | ||
3019 | |||
3020 | |||
3021 | static void | ||
3022 | eng_image_max_size_get(void *data, int *maxw, int *maxh) | ||
3023 | { | ||
3024 | Render_Engine *re = (Render_Engine *)data; | ||
3025 | if (maxw) *maxw = re->win->gl_context->shared->info.max_texture_size; | ||
3026 | if (maxh) *maxh = re->win->gl_context->shared->info.max_texture_size; | ||
3027 | } | ||
3028 | |||
3029 | static int | ||
3030 | module_open(Evas_Module *em) | ||
3031 | { | ||
3032 | static Eina_Bool xrm_inited = EINA_FALSE; | ||
3033 | if (!xrm_inited) | ||
3034 | { | ||
3035 | xrm_inited = EINA_TRUE; | ||
3036 | XrmInitialize(); | ||
3037 | } | ||
3038 | |||
3039 | if (!em) return 0; | ||
3040 | if (!evas_gl_common_module_open()) return 0; | ||
3041 | /* get whatever engine module we inherit from */ | ||
3042 | if (!_evas_module_engine_inherit(&pfunc, "software_generic")) return 0; | ||
3043 | if (_evas_engine_wl_egl_log_dom < 0) | ||
3044 | { | ||
3045 | _evas_engine_wl_egl_log_dom = | ||
3046 | eina_log_domain_register("evas-gl_x11", EVAS_DEFAULT_LOG_COLOR); | ||
3047 | } | ||
3048 | |||
3049 | if (_evas_engine_wl_egl_log_dom < 0) | ||
3050 | { | ||
3051 | EINA_LOG_ERR("Can not create a module log domain."); | ||
3052 | return 0; | ||
3053 | } | ||
3054 | /* store it for later use */ | ||
3055 | func = pfunc; | ||
3056 | /* now to override methods */ | ||
3057 | #define ORD(f) EVAS_API_OVERRIDE(f, &func, eng_) | ||
3058 | ORD(info); | ||
3059 | ORD(info_free); | ||
3060 | ORD(setup); | ||
3061 | ORD(canvas_alpha_get); | ||
3062 | ORD(output_free); | ||
3063 | ORD(output_resize); | ||
3064 | ORD(output_tile_size_set); | ||
3065 | ORD(output_redraws_rect_add); | ||
3066 | ORD(output_redraws_rect_del); | ||
3067 | ORD(output_redraws_clear); | ||
3068 | ORD(output_redraws_next_update_get); | ||
3069 | ORD(output_redraws_next_update_push); | ||
3070 | ORD(context_cutout_add); | ||
3071 | ORD(context_cutout_clear); | ||
3072 | ORD(output_flush); | ||
3073 | ORD(output_idle_flush); | ||
3074 | ORD(output_dump); | ||
3075 | ORD(rectangle_draw); | ||
3076 | ORD(line_draw); | ||
3077 | ORD(polygon_point_add); | ||
3078 | ORD(polygon_points_clear); | ||
3079 | ORD(polygon_draw); | ||
3080 | |||
3081 | ORD(image_load); | ||
3082 | ORD(image_new_from_data); | ||
3083 | ORD(image_new_from_copied_data); | ||
3084 | ORD(image_free); | ||
3085 | ORD(image_size_get); | ||
3086 | ORD(image_size_set); | ||
3087 | ORD(image_dirty_region); | ||
3088 | ORD(image_data_get); | ||
3089 | ORD(image_data_put); | ||
3090 | ORD(image_data_preload_request); | ||
3091 | ORD(image_data_preload_cancel); | ||
3092 | ORD(image_alpha_set); | ||
3093 | ORD(image_alpha_get); | ||
3094 | ORD(image_border_set); | ||
3095 | ORD(image_border_get); | ||
3096 | ORD(image_draw); | ||
3097 | ORD(image_comment_get); | ||
3098 | ORD(image_format_get); | ||
3099 | ORD(image_colorspace_set); | ||
3100 | ORD(image_colorspace_get); | ||
3101 | ORD(image_can_region_get); | ||
3102 | ORD(image_mask_create); | ||
3103 | ORD(image_native_set); | ||
3104 | ORD(image_native_get); | ||
3105 | #if 0 // filtering disabled | ||
3106 | ORD(image_draw_filtered); | ||
3107 | ORD(image_filtered_get); | ||
3108 | ORD(image_filtered_save); | ||
3109 | ORD(image_filtered_free); | ||
3110 | #endif | ||
3111 | |||
3112 | ORD(font_draw); | ||
3113 | |||
3114 | ORD(image_scale_hint_set); | ||
3115 | ORD(image_scale_hint_get); | ||
3116 | ORD(image_stride_get); | ||
3117 | |||
3118 | ORD(image_map_draw); | ||
3119 | ORD(image_map_surface_new); | ||
3120 | ORD(image_map_surface_free); | ||
3121 | |||
3122 | ORD(image_content_hint_set); | ||
3123 | ORD(image_content_hint_get); | ||
3124 | |||
3125 | ORD(image_cache_flush); | ||
3126 | ORD(image_cache_set); | ||
3127 | ORD(image_cache_get); | ||
3128 | |||
3129 | ORD(gl_surface_create); | ||
3130 | ORD(gl_surface_destroy); | ||
3131 | ORD(gl_context_create); | ||
3132 | ORD(gl_context_destroy); | ||
3133 | ORD(gl_make_current); | ||
3134 | ORD(gl_string_query); | ||
3135 | ORD(gl_proc_address_get); | ||
3136 | ORD(gl_native_surface_get); | ||
3137 | ORD(gl_api_get); | ||
3138 | |||
3139 | ORD(image_load_error_get); | ||
3140 | |||
3141 | /* now advertise out own api */ | ||
3142 | ORD(image_animated_get); | ||
3143 | ORD(image_animated_frame_count_get); | ||
3144 | ORD(image_animated_loop_type_get); | ||
3145 | ORD(image_animated_loop_count_get); | ||
3146 | ORD(image_animated_frame_duration_get); | ||
3147 | ORD(image_animated_frame_set); | ||
3148 | |||
3149 | ORD(image_max_size_get); | ||
3150 | |||
3151 | /* now advertise out own api */ | ||
3152 | em->functions = (void *)(&func); | ||
3153 | return 1; | ||
3154 | } | ||
3155 | |||
3156 | static void | ||
3157 | module_close(Evas_Module *em __UNUSED__) | ||
3158 | { | ||
3159 | eina_log_domain_unregister(_evas_engine_wl_egl_log_dom); | ||
3160 | evas_gl_common_module_close(); | ||
3161 | } | ||
3162 | |||
3163 | static Evas_Module_Api evas_modapi = | ||
3164 | { | ||
3165 | EVAS_MODULE_API_VERSION, "wayland_egl", "none", {module_open, module_close} | ||
3166 | }; | ||
3167 | |||
3168 | EVAS_MODULE_DEFINE(EVAS_MODULE_TYPE_ENGINE, engine, gl_x11); | ||
3169 | |||
3170 | #ifndef EVAS_STATIC_BUILD_GL_XLIB | ||
3171 | EVAS_EINA_MODULE_DEFINE(engine, gl_x11); | ||
3172 | #endif | ||
3173 | |||
3174 | /* vim:set ts=8 sw=3 sts=3 expandtab cino=>5n-2f0^-2{2(0W1st0 :*/ | ||
diff --git a/libraries/evas/src/modules/engines/wayland_egl/evas_engine.h b/libraries/evas/src/modules/engines/wayland_egl/evas_engine.h new file mode 100644 index 0000000..204d793 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_egl/evas_engine.h | |||
@@ -0,0 +1,82 @@ | |||
1 | #ifndef EVAS_ENGINE_H | ||
2 | #define EVAS_ENGINE_H | ||
3 | |||
4 | #include "config.h" | ||
5 | #include "evas_common.h" | ||
6 | #include "evas_private.h" | ||
7 | #include "evas_gl_common.h" | ||
8 | #include "Evas.h" | ||
9 | #include "Evas_Engine_Wayland_Egl.h" | ||
10 | |||
11 | #define GL_GLEXT_PROTOTYPES | ||
12 | |||
13 | #include <EGL/egl.h> | ||
14 | #include <GLES2/gl2.h> | ||
15 | #include <GLES2/gl2ext.h> | ||
16 | #include <wayland-egl.h> | ||
17 | |||
18 | extern int _evas_engine_wl_egl_log_dom; | ||
19 | #ifdef ERR | ||
20 | # undef ERR | ||
21 | #endif | ||
22 | #define ERR(...) EINA_LOG_DOM_ERR(_evas_engine_wl_egl_log_dom, __VA_ARGS__) | ||
23 | |||
24 | #ifdef DBG | ||
25 | # undef DBG | ||
26 | #endif | ||
27 | #define DBG(...) EINA_LOG_DOM_DBG(_evas_engine_wl_egl_log_dom, __VA_ARGS__) | ||
28 | |||
29 | #ifdef INF | ||
30 | # undef INF | ||
31 | #endif | ||
32 | #define INF(...) EINA_LOG_DOM_INFO(_evas_engine_wl_egl_log_dom, __VA_ARGS__) | ||
33 | |||
34 | #ifdef WRN | ||
35 | # undef WRN | ||
36 | #endif | ||
37 | #define WRN(...) EINA_LOG_DOM_WARN(_evas_engine_wl_egl_log_dom, __VA_ARGS__) | ||
38 | |||
39 | #ifdef CRIT | ||
40 | # undef CRIT | ||
41 | #endif | ||
42 | #define CRIT(...) EINA_LOG_DOM_CRIT(_evas_engine_wl_egl_log_dom, __VA_ARGS__) | ||
43 | |||
44 | typedef struct _Evas_GL_Wl_Window Evas_GL_Wl_Window; | ||
45 | |||
46 | struct _Evas_GL_Wl_Window | ||
47 | { | ||
48 | struct wl_display *disp; | ||
49 | struct wl_egl_window *win; | ||
50 | struct wl_surface *surface; | ||
51 | int w, h; | ||
52 | int screen; | ||
53 | // XVisualInfo *visualinfo; | ||
54 | // Visual *visual; | ||
55 | // Colormap colormap; | ||
56 | int depth; | ||
57 | int alpha; | ||
58 | int rot; | ||
59 | Evas_Engine_GL_Context *gl_context; | ||
60 | struct { | ||
61 | int redraw : 1; | ||
62 | int drew : 1; | ||
63 | int x1, y1, x2, y2; | ||
64 | } draw; | ||
65 | EGLContext egl_context[1]; | ||
66 | EGLSurface egl_surface[1]; | ||
67 | EGLConfig egl_config; | ||
68 | EGLDisplay egl_disp; | ||
69 | int surf : 1; | ||
70 | }; | ||
71 | |||
72 | Evas_GL_Wl_Window *eng_window_new(struct wl_display *disp, struct wl_surface *surface, int screen, | ||
73 | int depth, int w, int h, int indirect, | ||
74 | int alpha, int rot); | ||
75 | void eng_window_free(Evas_GL_Wl_Window *gw); | ||
76 | void eng_window_use(Evas_GL_Wl_Window *gw); | ||
77 | void eng_window_unsurf(Evas_GL_Wl_Window *gw); | ||
78 | void eng_window_resurf(Evas_GL_Wl_Window *gw); | ||
79 | |||
80 | int eng_best_depth_get(Evas_Engine_Info_Wayland_Egl *einfo); | ||
81 | |||
82 | #endif | ||
diff --git a/libraries/evas/src/modules/engines/wayland_egl/evas_wl_main.c b/libraries/evas/src/modules/engines/wayland_egl/evas_wl_main.c new file mode 100644 index 0000000..537fcc6 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_egl/evas_wl_main.c | |||
@@ -0,0 +1,323 @@ | |||
1 | #include "evas_engine.h" | ||
2 | |||
3 | static Evas_GL_Wl_Window *_evas_gl_wl_window = NULL; | ||
4 | |||
5 | static EGLContext context = EGL_NO_CONTEXT; | ||
6 | |||
7 | // fixme: something is up/wrong here - dont know what tho... | ||
8 | //#define NEWGL 1 | ||
9 | |||
10 | static int win_count = 0; | ||
11 | |||
12 | Evas_GL_Wl_Window * | ||
13 | eng_window_new(struct wl_display *disp, struct wl_surface *surface, int screen, | ||
14 | int depth, int w, int h, int indirect, int alpha, int rot) | ||
15 | { | ||
16 | Evas_GL_Wl_Window *gw; | ||
17 | int context_attrs[3]; | ||
18 | int config_attrs[40]; | ||
19 | int major_version, minor_version; | ||
20 | int num_config, n = 0; | ||
21 | const GLubyte *vendor, *renderer, *version; | ||
22 | |||
23 | gw = calloc(1, sizeof(Evas_GL_Wl_Window)); | ||
24 | if (!gw) return NULL; | ||
25 | |||
26 | win_count++; | ||
27 | gw->disp = disp; | ||
28 | gw->surface = surface; | ||
29 | gw->screen = screen; | ||
30 | gw->depth = depth; | ||
31 | gw->alpha = alpha; | ||
32 | gw->w = w; | ||
33 | gw->h = h; | ||
34 | gw->rot = rot; | ||
35 | |||
36 | // EGL / GLES | ||
37 | context_attrs[0] = EGL_CONTEXT_CLIENT_VERSION; | ||
38 | context_attrs[1] = 2; | ||
39 | context_attrs[2] = EGL_NONE; | ||
40 | |||
41 | #if defined(GLES_VARIETY_S3C6410) | ||
42 | if (gw->visualinfo->depth == 16) // 16bpp | ||
43 | { | ||
44 | config_attrs[n++] = EGL_SURFACE_TYPE; | ||
45 | config_attrs[n++] = EGL_WINDOW_BIT; | ||
46 | config_attrs[n++] = EGL_RENDERABLE_TYPE; | ||
47 | config_attrs[n++] = EGL_OPENGL_ES2_BIT; | ||
48 | config_attrs[n++] = EGL_RED_SIZE; | ||
49 | config_attrs[n++] = 5; | ||
50 | config_attrs[n++] = EGL_GREEN_SIZE; | ||
51 | config_attrs[n++] = 6; | ||
52 | config_attrs[n++] = EGL_BLUE_SIZE; | ||
53 | config_attrs[n++] = 5; | ||
54 | config_attrs[n++] = EGL_DEPTH_SIZE; | ||
55 | config_attrs[n++] = 0; | ||
56 | config_attrs[n++] = EGL_STENCIL_SIZE; | ||
57 | config_attrs[n++] = 0; | ||
58 | config_attrs[n++] = EGL_NONE; | ||
59 | } | ||
60 | else // 24/32bit. no one does 8bpp anymore. and 15bpp... dead | ||
61 | { | ||
62 | config_attrs[n++] = EGL_SURFACE_TYPE; | ||
63 | config_attrs[n++] = EGL_WINDOW_BIT; | ||
64 | config_attrs[n++] = EGL_RENDERABLE_TYPE; | ||
65 | config_attrs[n++] = EGL_OPENGL_ES2_BIT; | ||
66 | config_attrs[n++] = EGL_RED_SIZE; | ||
67 | config_attrs[n++] = 8; | ||
68 | config_attrs[n++] = EGL_GREEN_SIZE; | ||
69 | config_attrs[n++] = 8; | ||
70 | config_attrs[n++] = EGL_BLUE_SIZE; | ||
71 | config_attrs[n++] = 8; | ||
72 | config_attrs[n++] = EGL_DEPTH_SIZE; | ||
73 | config_attrs[n++] = 0; | ||
74 | config_attrs[n++] = EGL_STENCIL_SIZE; | ||
75 | config_attrs[n++] = 0; | ||
76 | config_attrs[n++] = EGL_NONE; | ||
77 | } | ||
78 | #elif defined(GLES_VARIETY_SGX) | ||
79 | config_attrs[n++] = EGL_SURFACE_TYPE; | ||
80 | config_attrs[n++] = EGL_WINDOW_BIT; | ||
81 | config_attrs[n++] = EGL_RENDERABLE_TYPE; | ||
82 | config_attrs[n++] = EGL_OPENGL_ES2_BIT; | ||
83 | # if 0 | ||
84 | // FIXME: n900 - omap3 sgx libs break here | ||
85 | config_attrs[n++] = EGL_RED_SIZE; | ||
86 | config_attrs[n++] = 1; | ||
87 | config_attrs[n++] = EGL_GREEN_SIZE; | ||
88 | config_attrs[n++] = 1; | ||
89 | config_attrs[n++] = EGL_BLUE_SIZE; | ||
90 | config_attrs[n++] = 1; | ||
91 | // FIXME: end n900 breakage | ||
92 | # endif | ||
93 | if (gw->alpha) | ||
94 | { | ||
95 | config_attrs[n++] = EGL_ALPHA_SIZE; | ||
96 | config_attrs[n++] = 1; | ||
97 | } | ||
98 | else | ||
99 | { | ||
100 | config_attrs[n++] = EGL_ALPHA_SIZE; | ||
101 | config_attrs[n++] = 0; | ||
102 | } | ||
103 | config_attrs[n++] = EGL_DEPTH_SIZE; | ||
104 | config_attrs[n++] = 0; | ||
105 | config_attrs[n++] = EGL_STENCIL_SIZE; | ||
106 | config_attrs[n++] = 0; | ||
107 | config_attrs[n++] = EGL_NONE; | ||
108 | #endif | ||
109 | |||
110 | gw->egl_disp = eglGetDisplay((EGLNativeDisplayType)(gw->disp)); | ||
111 | if (!gw->egl_disp) | ||
112 | { | ||
113 | ERR("eglGetDisplay() fail. code=%#x", eglGetError()); | ||
114 | eng_window_free(gw); | ||
115 | return NULL; | ||
116 | } | ||
117 | if (!eglInitialize(gw->egl_disp, &major_version, &minor_version)) | ||
118 | { | ||
119 | ERR("eglInitialize() fail. code=%#x", eglGetError()); | ||
120 | eng_window_free(gw); | ||
121 | return NULL; | ||
122 | } | ||
123 | eglBindAPI(EGL_OPENGL_ES_API); | ||
124 | if (eglGetError() != EGL_SUCCESS) | ||
125 | { | ||
126 | ERR("eglBindAPI() fail. code=%#x", eglGetError()); | ||
127 | eng_window_free(gw); | ||
128 | return NULL; | ||
129 | } | ||
130 | |||
131 | num_config = 0; | ||
132 | if (!eglChooseConfig(gw->egl_disp, config_attrs, &gw->egl_config, | ||
133 | 1, &num_config) || (num_config != 1)) | ||
134 | { | ||
135 | ERR("eglChooseConfig() fail. code=%#x", eglGetError()); | ||
136 | eng_window_free(gw); | ||
137 | return NULL; | ||
138 | } | ||
139 | |||
140 | gw->win = wl_egl_window_create(gw->surface, gw->w, gw->h); | ||
141 | |||
142 | gw->egl_surface[0] = eglCreateWindowSurface(gw->egl_disp, gw->egl_config, | ||
143 | (EGLNativeWindowType)gw->win, | ||
144 | NULL); | ||
145 | if (gw->egl_surface[0] == EGL_NO_SURFACE) | ||
146 | { | ||
147 | ERR("eglCreateWindowSurface() fail for %#x. code=%#x", | ||
148 | (unsigned int)gw->win, eglGetError()); | ||
149 | eng_window_free(gw); | ||
150 | return NULL; | ||
151 | } | ||
152 | |||
153 | if (context == EGL_NO_CONTEXT) | ||
154 | context = eglCreateContext(gw->egl_disp, gw->egl_config, NULL, | ||
155 | context_attrs); | ||
156 | gw->egl_context[0] = context; | ||
157 | if (gw->egl_context[0] == EGL_NO_CONTEXT) | ||
158 | { | ||
159 | ERR("eglCreateContext() fail. code=%#x", eglGetError()); | ||
160 | eng_window_free(gw); | ||
161 | return NULL; | ||
162 | } | ||
163 | |||
164 | if (eglMakeCurrent(gw->egl_disp, gw->egl_surface[0], gw->egl_surface[0], | ||
165 | gw->egl_context[0]) == EGL_FALSE) | ||
166 | { | ||
167 | ERR("eglMakeCurrent() fail. code=%#x", eglGetError()); | ||
168 | eng_window_free(gw); | ||
169 | return NULL; | ||
170 | } | ||
171 | |||
172 | vendor = glGetString(GL_VENDOR); | ||
173 | renderer = glGetString(GL_RENDERER); | ||
174 | version = glGetString(GL_VERSION); | ||
175 | if (!vendor) vendor = (unsigned char *)"-UNKNOWN-"; | ||
176 | if (!renderer) renderer = (unsigned char *)"-UNKNOWN-"; | ||
177 | if (!version) version = (unsigned char *)"-UNKNOWN-"; | ||
178 | if (getenv("EVAS_GL_INFO")) | ||
179 | { | ||
180 | fprintf(stderr, "vendor: %s\n", vendor); | ||
181 | fprintf(stderr, "renderer: %s\n", renderer); | ||
182 | fprintf(stderr, "version: %s\n", version); | ||
183 | } | ||
184 | |||
185 | gw->gl_context = evas_gl_common_context_new(); | ||
186 | if (!gw->gl_context) | ||
187 | { | ||
188 | eng_window_free(gw); | ||
189 | return NULL; | ||
190 | } | ||
191 | gw->gl_context->egldisp = gw->egl_disp; | ||
192 | eng_window_use(gw); | ||
193 | evas_gl_common_context_resize(gw->gl_context, w, h, rot); | ||
194 | gw->surf = 1; | ||
195 | return gw; | ||
196 | indirect = 0; | ||
197 | } | ||
198 | |||
199 | void | ||
200 | eng_window_free(Evas_GL_Wl_Window *gw) | ||
201 | { | ||
202 | int ref = 0; | ||
203 | |||
204 | win_count--; | ||
205 | eng_window_use(gw); | ||
206 | if (gw == _evas_gl_wl_window) _evas_gl_wl_window = NULL; | ||
207 | // if (gw->win) wl_egl_window_destroy(gw->win); | ||
208 | if (gw->gl_context) | ||
209 | { | ||
210 | ref = gw->gl_context->references - 1; | ||
211 | evas_gl_common_context_free(gw->gl_context); | ||
212 | } | ||
213 | if (gw->egl_surface[0] != EGL_NO_SURFACE) | ||
214 | eglDestroySurface(gw->egl_disp, gw->egl_surface[0]); | ||
215 | eglMakeCurrent(gw->egl_disp, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
216 | if (ref == 0) | ||
217 | { | ||
218 | if (context) eglDestroyContext(gw->egl_disp, context); | ||
219 | context = EGL_NO_CONTEXT; | ||
220 | eglTerminate(gw->egl_disp); | ||
221 | eglReleaseThread(); | ||
222 | } | ||
223 | free(gw); | ||
224 | } | ||
225 | |||
226 | void | ||
227 | eng_window_use(Evas_GL_Wl_Window *gw) | ||
228 | { | ||
229 | Eina_Bool force_use = EINA_FALSE; | ||
230 | |||
231 | if (_evas_gl_wl_window) | ||
232 | { | ||
233 | if ((eglGetCurrentContext() != | ||
234 | _evas_gl_wl_window->egl_context[0]) || | ||
235 | (eglGetCurrentSurface(EGL_READ) != | ||
236 | _evas_gl_wl_window->egl_surface[0]) || | ||
237 | (eglGetCurrentSurface(EGL_DRAW) != | ||
238 | _evas_gl_wl_window->egl_surface[0])) | ||
239 | force_use = EINA_TRUE; | ||
240 | } | ||
241 | if ((_evas_gl_wl_window != gw) || (force_use)) | ||
242 | { | ||
243 | if (_evas_gl_wl_window) | ||
244 | { | ||
245 | evas_gl_common_context_use(_evas_gl_wl_window->gl_context); | ||
246 | evas_gl_common_context_flush(_evas_gl_wl_window->gl_context); | ||
247 | } | ||
248 | _evas_gl_wl_window = gw; | ||
249 | if (gw) | ||
250 | { | ||
251 | // EGL / GLES | ||
252 | if (gw->egl_surface[0] != EGL_NO_SURFACE) | ||
253 | { | ||
254 | if (eglMakeCurrent(gw->egl_disp, gw->egl_surface[0], | ||
255 | gw->egl_surface[0], | ||
256 | gw->egl_context[0]) == EGL_FALSE) | ||
257 | { | ||
258 | ERR("eglMakeCurrent() failed!"); | ||
259 | } | ||
260 | } | ||
261 | } | ||
262 | } | ||
263 | if (gw) evas_gl_common_context_use(gw->gl_context); | ||
264 | } | ||
265 | |||
266 | void | ||
267 | eng_window_unsurf(Evas_GL_Wl_Window *gw) | ||
268 | { | ||
269 | if (!gw->surf) return; | ||
270 | if (!getenv("EVAS_GL_WIN_RESURF")) return; | ||
271 | if (getenv("EVAS_GL_INFO")) printf("unsurf %p\n", gw); | ||
272 | |||
273 | if (_evas_gl_wl_window) | ||
274 | evas_gl_common_context_flush(_evas_gl_wl_window->gl_context); | ||
275 | if (_evas_gl_wl_window == gw) | ||
276 | { | ||
277 | eglMakeCurrent(gw->egl_disp, EGL_NO_SURFACE, EGL_NO_SURFACE, EGL_NO_CONTEXT); | ||
278 | if (gw->egl_surface[0] != EGL_NO_SURFACE) | ||
279 | eglDestroySurface(gw->egl_disp, gw->egl_surface[0]); | ||
280 | gw->egl_surface[0] = EGL_NO_SURFACE; | ||
281 | _evas_gl_wl_window = NULL; | ||
282 | } | ||
283 | gw->surf = 0; | ||
284 | } | ||
285 | |||
286 | void | ||
287 | eng_window_resurf(Evas_GL_Wl_Window *gw) | ||
288 | { | ||
289 | if (gw->surf) return; | ||
290 | if (getenv("EVAS_GL_INFO")) printf("resurf %p\n", gw); | ||
291 | |||
292 | gw->egl_surface[0] = | ||
293 | eglCreateWindowSurface(gw->egl_disp, gw->egl_config, | ||
294 | (EGLNativeWindowType)gw->win, NULL); | ||
295 | |||
296 | if (gw->egl_surface[0] == EGL_NO_SURFACE) | ||
297 | { | ||
298 | ERR("eglCreateWindowSurface() fail for %#x. code=%#x", | ||
299 | (unsigned int)gw->win, eglGetError()); | ||
300 | return; | ||
301 | } | ||
302 | if (eglMakeCurrent(gw->egl_disp, gw->egl_surface[0], gw->egl_surface[0], | ||
303 | gw->egl_context[0]) == EGL_FALSE) | ||
304 | { | ||
305 | ERR("eglMakeCurrent() failed!"); | ||
306 | } | ||
307 | gw->surf = 1; | ||
308 | } | ||
309 | |||
310 | int | ||
311 | eng_best_depth_get(Evas_Engine_Info_Wayland_Egl *einfo) | ||
312 | { | ||
313 | if (!einfo) return 0; | ||
314 | if (!einfo->info.display) return 0; | ||
315 | return 32; | ||
316 | /* if (!_evas_gl_x11_vi) eng_best_visual_get(einfo); */ | ||
317 | /* if (!_evas_gl_x11_vi) return 0; */ | ||
318 | /* if (einfo->info.destination_alpha) */ | ||
319 | /* { */ | ||
320 | /* if (_evas_gl_x11_rgba_vi) return _evas_gl_x11_rgba_vi->depth; */ | ||
321 | /* } */ | ||
322 | /* return _evas_gl_x11_vi->depth; */ | ||
323 | } | ||
diff --git a/libraries/evas/src/modules/engines/wayland_shm/Evas_Engine_Wayland_Shm.h b/libraries/evas/src/modules/engines/wayland_shm/Evas_Engine_Wayland_Shm.h new file mode 100644 index 0000000..b34b2c1 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_shm/Evas_Engine_Wayland_Shm.h | |||
@@ -0,0 +1,20 @@ | |||
1 | #ifndef _EVAS_ENGINE_WAYLAND_SHM_H | ||
2 | # define _EVAS_ENGINE_WAYLAND_SHM_H | ||
3 | |||
4 | typedef struct _Evas_Engine_Info_Wayland_Shm Evas_Engine_Info_Wayland_Shm; | ||
5 | struct _Evas_Engine_Info_Wayland_Shm | ||
6 | { | ||
7 | Evas_Engine_Info magic; | ||
8 | |||
9 | struct | ||
10 | { | ||
11 | void *dest; | ||
12 | int rotation; | ||
13 | |||
14 | unsigned char debug : 1; | ||
15 | } info; | ||
16 | |||
17 | Evas_Engine_Render_Mode render_mode; | ||
18 | }; | ||
19 | |||
20 | #endif | ||
diff --git a/libraries/evas/src/modules/engines/wayland_shm/Makefile.am b/libraries/evas/src/modules/engines/wayland_shm/Makefile.am new file mode 100644 index 0000000..455b82c --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_shm/Makefile.am | |||
@@ -0,0 +1,45 @@ | |||
1 | |||
2 | MAINTAINERCLEANFILES = Makefile.in | ||
3 | |||
4 | AM_CPPFLAGS = \ | ||
5 | -I. \ | ||
6 | -I$(top_srcdir)/src/lib \ | ||
7 | -I$(top_srcdir)/src/lib/include \ | ||
8 | -I$(top_srcdir)/src/modules/engines \ | ||
9 | @FREETYPE_CFLAGS@ \ | ||
10 | @EINA_CFLAGS@ \ | ||
11 | @evas_engine_wayland_shm_cflags@ | ||
12 | |||
13 | if BUILD_ENGINE_WAYLAND_SHM | ||
14 | |||
15 | WAYLAND_SHM_SOURCES = \ | ||
16 | evas_engine.c \ | ||
17 | evas_outbuf.c | ||
18 | |||
19 | WAYLAND_SHM_LIBADD = @FREETYPE_LIBS@ @EINA_LIBS@ @evas_engine_wayland_shm_libs@ | ||
20 | |||
21 | includes_HEADERS = Evas_Engine_Wayland_Shm.h | ||
22 | includesdir = $(includedir)/evas-@VMAJ@ | ||
23 | |||
24 | if !EVAS_STATIC_BUILD_WAYLAND_SHM | ||
25 | |||
26 | pkgdir = $(libdir)/evas/modules/engines/wayland_shm/$(MODULE_ARCH) | ||
27 | pkg_LTLIBRARIES = module.la | ||
28 | |||
29 | module_la_SOURCES = $(WAYLAND_SHM_SOURCES) | ||
30 | module_la_LIBADD = $(WAYLAND_SHM_LIBADD) $(top_builddir)/src/lib/libevas.la | ||
31 | module_la_LDFLAGS = -no-undefined -module -avoid-version | ||
32 | module_la_LIBTOOLFLAGS = --tag=disable-static | ||
33 | |||
34 | else | ||
35 | |||
36 | noinst_LTLIBRARIES = libevas_engine_wayland_shm.la | ||
37 | |||
38 | libevas_engine_wayland_shm_la_SOURCES = $(WAYLAND_SHM_SOURCES) | ||
39 | libevas_engine_wayland_shm_la_LIBADD = $(WAYLAND_SHM_LIBADD) | ||
40 | |||
41 | endif | ||
42 | endif | ||
43 | |||
44 | EXTRA_DIST = \ | ||
45 | evas_engine.h | ||
diff --git a/libraries/evas/src/modules/engines/wayland_shm/Makefile.in b/libraries/evas/src/modules/engines/wayland_shm/Makefile.in new file mode 100644 index 0000000..4d69209 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_shm/Makefile.in | |||
@@ -0,0 +1,816 @@ | |||
1 | # Makefile.in generated by automake 1.11.1 from Makefile.am. | ||
2 | # @configure_input@ | ||
3 | |||
4 | # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, | ||
5 | # 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, | ||
6 | # Inc. | ||
7 | # This Makefile.in is free software; the Free Software Foundation | ||
8 | # gives unlimited permission to copy and/or distribute it, | ||
9 | # with or without modifications, as long as this notice is preserved. | ||
10 | |||
11 | # This program is distributed in the hope that it will be useful, | ||
12 | # but WITHOUT ANY WARRANTY, to the extent permitted by law; without | ||
13 | # even the implied warranty of MERCHANTABILITY or FITNESS FOR A | ||
14 | # PARTICULAR PURPOSE. | ||
15 | |||
16 | @SET_MAKE@ | ||
17 | |||
18 | |||
19 | VPATH = @srcdir@ | ||
20 | pkgdatadir = $(datadir)/@PACKAGE@ | ||
21 | pkgincludedir = $(includedir)/@PACKAGE@ | ||
22 | pkglibdir = $(libdir)/@PACKAGE@ | ||
23 | pkglibexecdir = $(libexecdir)/@PACKAGE@ | ||
24 | am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd | ||
25 | install_sh_DATA = $(install_sh) -c -m 644 | ||
26 | install_sh_PROGRAM = $(install_sh) -c | ||
27 | install_sh_SCRIPT = $(install_sh) -c | ||
28 | INSTALL_HEADER = $(INSTALL_DATA) | ||
29 | transform = $(program_transform_name) | ||
30 | NORMAL_INSTALL = : | ||
31 | PRE_INSTALL = : | ||
32 | POST_INSTALL = : | ||
33 | NORMAL_UNINSTALL = : | ||
34 | PRE_UNINSTALL = : | ||
35 | POST_UNINSTALL = : | ||
36 | build_triplet = @build@ | ||
37 | host_triplet = @host@ | ||
38 | subdir = src/modules/engines/wayland_shm | ||
39 | DIST_COMMON = $(am__includes_HEADERS_DIST) $(srcdir)/Makefile.am \ | ||
40 | $(srcdir)/Makefile.in | ||
41 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | ||
42 | am__aclocal_m4_deps = $(top_srcdir)/m4/efl_attribute.m4 \ | ||
43 | $(top_srcdir)/m4/efl_coverage.m4 \ | ||
44 | $(top_srcdir)/m4/efl_doxygen.m4 \ | ||
45 | $(top_srcdir)/m4/efl_fnmatch.m4 \ | ||
46 | $(top_srcdir)/m4/efl_path_max.m4 $(top_srcdir)/m4/efl_tests.m4 \ | ||
47 | $(top_srcdir)/m4/evas_check_engine.m4 \ | ||
48 | $(top_srcdir)/m4/evas_check_loader.m4 \ | ||
49 | $(top_srcdir)/m4/evas_converter.m4 \ | ||
50 | $(top_srcdir)/m4/evas_dither.m4 \ | ||
51 | $(top_srcdir)/m4/evas_scaler.m4 $(top_srcdir)/m4/libtool.m4 \ | ||
52 | $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ | ||
53 | $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ | ||
54 | $(top_srcdir)/configure.ac | ||
55 | am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ | ||
56 | $(ACLOCAL_M4) | ||
57 | mkinstalldirs = $(install_sh) -d | ||
58 | CONFIG_HEADER = $(top_builddir)/config.h | ||
59 | CONFIG_CLEAN_FILES = | ||
60 | CONFIG_CLEAN_VPATH_FILES = | ||
61 | am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; | ||
62 | am__vpath_adj = case $$p in \ | ||
63 | $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ | ||
64 | *) f=$$p;; \ | ||
65 | esac; | ||
66 | am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; | ||
67 | am__install_max = 40 | ||
68 | am__nobase_strip_setup = \ | ||
69 | srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` | ||
70 | am__nobase_strip = \ | ||
71 | for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" | ||
72 | am__nobase_list = $(am__nobase_strip_setup); \ | ||
73 | for p in $$list; do echo "$$p $$p"; done | \ | ||
74 | sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ | ||
75 | $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ | ||
76 | if (++n[$$2] == $(am__install_max)) \ | ||
77 | { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ | ||
78 | END { for (dir in files) print dir, files[dir] }' | ||
79 | am__base_list = \ | ||
80 | sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ | ||
81 | sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | ||
82 | am__installdirs = "$(DESTDIR)$(pkgdir)" "$(DESTDIR)$(includesdir)" | ||
83 | LTLIBRARIES = $(noinst_LTLIBRARIES) $(pkg_LTLIBRARIES) | ||
84 | am__DEPENDENCIES_1 = | ||
85 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@libevas_engine_wayland_shm_la_DEPENDENCIES = $(am__DEPENDENCIES_1) | ||
86 | am__libevas_engine_wayland_shm_la_SOURCES_DIST = evas_engine.c \ | ||
87 | evas_outbuf.c | ||
88 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@am__objects_1 = evas_engine.lo \ | ||
89 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@ evas_outbuf.lo | ||
90 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@am_libevas_engine_wayland_shm_la_OBJECTS = $(am__objects_1) | ||
91 | libevas_engine_wayland_shm_la_OBJECTS = \ | ||
92 | $(am_libevas_engine_wayland_shm_la_OBJECTS) | ||
93 | AM_V_lt = $(am__v_lt_$(V)) | ||
94 | am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) | ||
95 | am__v_lt_0 = --silent | ||
96 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@am_libevas_engine_wayland_shm_la_rpath = | ||
97 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@module_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ | ||
98 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@ $(top_builddir)/src/lib/libevas.la | ||
99 | am__module_la_SOURCES_DIST = evas_engine.c evas_outbuf.c | ||
100 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@am__objects_2 = \ | ||
101 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@ module_la-evas_engine.lo \ | ||
102 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@ module_la-evas_outbuf.lo | ||
103 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@am_module_la_OBJECTS = $(am__objects_2) | ||
104 | module_la_OBJECTS = $(am_module_la_OBJECTS) | ||
105 | module_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ | ||
106 | $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ | ||
107 | $(AM_CFLAGS) $(CFLAGS) $(module_la_LDFLAGS) $(LDFLAGS) -o $@ | ||
108 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@am_module_la_rpath = -rpath \ | ||
109 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@ $(pkgdir) | ||
110 | DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) | ||
111 | depcomp = $(SHELL) $(top_srcdir)/depcomp | ||
112 | am__depfiles_maybe = depfiles | ||
113 | am__mv = mv -f | ||
114 | COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ | ||
115 | $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) | ||
116 | LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ | ||
117 | $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ | ||
118 | $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ | ||
119 | $(AM_CFLAGS) $(CFLAGS) | ||
120 | AM_V_CC = $(am__v_CC_$(V)) | ||
121 | am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) | ||
122 | am__v_CC_0 = @echo " CC " $@; | ||
123 | AM_V_at = $(am__v_at_$(V)) | ||
124 | am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) | ||
125 | am__v_at_0 = @ | ||
126 | CCLD = $(CC) | ||
127 | LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ | ||
128 | $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ | ||
129 | $(AM_LDFLAGS) $(LDFLAGS) -o $@ | ||
130 | AM_V_CCLD = $(am__v_CCLD_$(V)) | ||
131 | am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) | ||
132 | am__v_CCLD_0 = @echo " CCLD " $@; | ||
133 | AM_V_GEN = $(am__v_GEN_$(V)) | ||
134 | am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) | ||
135 | am__v_GEN_0 = @echo " GEN " $@; | ||
136 | SOURCES = $(libevas_engine_wayland_shm_la_SOURCES) \ | ||
137 | $(module_la_SOURCES) | ||
138 | DIST_SOURCES = $(am__libevas_engine_wayland_shm_la_SOURCES_DIST) \ | ||
139 | $(am__module_la_SOURCES_DIST) | ||
140 | am__includes_HEADERS_DIST = Evas_Engine_Wayland_Shm.h | ||
141 | HEADERS = $(includes_HEADERS) | ||
142 | ETAGS = etags | ||
143 | CTAGS = ctags | ||
144 | DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) | ||
145 | ACLOCAL = @ACLOCAL@ | ||
146 | ALLOCA = @ALLOCA@ | ||
147 | AMTAR = @AMTAR@ | ||
148 | AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ | ||
149 | AR = @AR@ | ||
150 | AS = @AS@ | ||
151 | AUTOCONF = @AUTOCONF@ | ||
152 | AUTOHEADER = @AUTOHEADER@ | ||
153 | AUTOMAKE = @AUTOMAKE@ | ||
154 | AWK = @AWK@ | ||
155 | CC = @CC@ | ||
156 | CCDEPMODE = @CCDEPMODE@ | ||
157 | CFLAGS = @CFLAGS@ | ||
158 | CHECK_CFLAGS = @CHECK_CFLAGS@ | ||
159 | CHECK_LIBS = @CHECK_LIBS@ | ||
160 | CPP = @CPP@ | ||
161 | CPPFLAGS = @CPPFLAGS@ | ||
162 | CXX = @CXX@ | ||
163 | CXXCPP = @CXXCPP@ | ||
164 | CXXDEPMODE = @CXXDEPMODE@ | ||
165 | CXXFLAGS = @CXXFLAGS@ | ||
166 | CYGPATH_W = @CYGPATH_W@ | ||
167 | DEFS = @DEFS@ | ||
168 | DEPDIR = @DEPDIR@ | ||
169 | DIRECTFB_CFLAGS = @DIRECTFB_CFLAGS@ | ||
170 | DIRECTFB_LIBS = @DIRECTFB_LIBS@ | ||
171 | DLLTOOL = @DLLTOOL@ | ||
172 | DSYMUTIL = @DSYMUTIL@ | ||
173 | DUMPBIN = @DUMPBIN@ | ||
174 | ECHO_C = @ECHO_C@ | ||
175 | ECHO_N = @ECHO_N@ | ||
176 | ECHO_T = @ECHO_T@ | ||
177 | ECORE_EVAS_CFLAGS = @ECORE_EVAS_CFLAGS@ | ||
178 | ECORE_EVAS_LIBS = @ECORE_EVAS_LIBS@ | ||
179 | EDB_CFLAGS = @EDB_CFLAGS@ | ||
180 | EDB_LIBS = @EDB_LIBS@ | ||
181 | EDJE_CFLAGS = @EDJE_CFLAGS@ | ||
182 | EDJE_LIBS = @EDJE_LIBS@ | ||
183 | EET_CFLAGS = @EET_CFLAGS@ | ||
184 | EET_LIBS = @EET_LIBS@ | ||
185 | EFL_COVERAGE_CFLAGS = @EFL_COVERAGE_CFLAGS@ | ||
186 | EFL_COVERAGE_LIBS = @EFL_COVERAGE_LIBS@ | ||
187 | EFL_FNMATCH_LIBS = @EFL_FNMATCH_LIBS@ | ||
188 | EGREP = @EGREP@ | ||
189 | EINA_CFLAGS = @EINA_CFLAGS@ | ||
190 | EINA_LIBS = @EINA_LIBS@ | ||
191 | EVAS_CFLAGS = @EVAS_CFLAGS@ | ||
192 | EVAS_LIBS = @EVAS_LIBS@ | ||
193 | EVAS_SSE3_CFLAGS = @EVAS_SSE3_CFLAGS@ | ||
194 | EVIL_CFLAGS = @EVIL_CFLAGS@ | ||
195 | EVIL_LIBS = @EVIL_LIBS@ | ||
196 | EXEEXT = @EXEEXT@ | ||
197 | FGREP = @FGREP@ | ||
198 | FONTCONFIG_CFLAGS = @FONTCONFIG_CFLAGS@ | ||
199 | FONTCONFIG_LIBS = @FONTCONFIG_LIBS@ | ||
200 | FREETYPE_CFLAGS = @FREETYPE_CFLAGS@ | ||
201 | FREETYPE_LIBS = @FREETYPE_LIBS@ | ||
202 | FRIBIDI_CFLAGS = @FRIBIDI_CFLAGS@ | ||
203 | FRIBIDI_LIBS = @FRIBIDI_LIBS@ | ||
204 | GL_EET_CFLAGS = @GL_EET_CFLAGS@ | ||
205 | GL_EET_LIBS = @GL_EET_LIBS@ | ||
206 | GREP = @GREP@ | ||
207 | HARFBUZZ_CFLAGS = @HARFBUZZ_CFLAGS@ | ||
208 | HARFBUZZ_LIBS = @HARFBUZZ_LIBS@ | ||
209 | INSTALL = @INSTALL@ | ||
210 | INSTALL_DATA = @INSTALL_DATA@ | ||
211 | INSTALL_PROGRAM = @INSTALL_PROGRAM@ | ||
212 | INSTALL_SCRIPT = @INSTALL_SCRIPT@ | ||
213 | INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ | ||
214 | LD = @LD@ | ||
215 | LDFLAGS = @LDFLAGS@ | ||
216 | LIBOBJS = @LIBOBJS@ | ||
217 | LIBS = @LIBS@ | ||
218 | LIBTOOL = @LIBTOOL@ | ||
219 | LINEBREAK_CFLAGS = @LINEBREAK_CFLAGS@ | ||
220 | LINEBREAK_LIBS = @LINEBREAK_LIBS@ | ||
221 | LIPO = @LIPO@ | ||
222 | LN_S = @LN_S@ | ||
223 | LTLIBOBJS = @LTLIBOBJS@ | ||
224 | MAKEINFO = @MAKEINFO@ | ||
225 | MKDIR_P = @MKDIR_P@ | ||
226 | MODULE_ARCH = @MODULE_ARCH@ | ||
227 | NM = @NM@ | ||
228 | NMEDIT = @NMEDIT@ | ||
229 | OBJC = @OBJC@ | ||
230 | OBJCDEPMODE = @OBJCDEPMODE@ | ||
231 | OBJCFLAGS = @OBJCFLAGS@ | ||
232 | OBJDUMP = @OBJDUMP@ | ||
233 | OBJEXT = @OBJEXT@ | ||
234 | OTOOL = @OTOOL@ | ||
235 | OTOOL64 = @OTOOL64@ | ||
236 | PACKAGE = @PACKAGE@ | ||
237 | PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ | ||
238 | PACKAGE_NAME = @PACKAGE_NAME@ | ||
239 | PACKAGE_STRING = @PACKAGE_STRING@ | ||
240 | PACKAGE_TARNAME = @PACKAGE_TARNAME@ | ||
241 | PACKAGE_URL = @PACKAGE_URL@ | ||
242 | PACKAGE_VERSION = @PACKAGE_VERSION@ | ||
243 | PATH_SEPARATOR = @PATH_SEPARATOR@ | ||
244 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | ||
245 | PIXMAN_LIBS = @PIXMAN_LIBS@ | ||
246 | PKG_CONFIG = @PKG_CONFIG@ | ||
247 | PNG_CFLAGS = @PNG_CFLAGS@ | ||
248 | PNG_LIBS = @PNG_LIBS@ | ||
249 | RANLIB = @RANLIB@ | ||
250 | SDL_CFLAGS = @SDL_CFLAGS@ | ||
251 | SDL_LIBS = @SDL_LIBS@ | ||
252 | SED = @SED@ | ||
253 | SET_MAKE = @SET_MAKE@ | ||
254 | SHELL = @SHELL@ | ||
255 | SHM_OPEN_LINK = @SHM_OPEN_LINK@ | ||
256 | STRIP = @STRIP@ | ||
257 | SVG_CFLAGS = @SVG_CFLAGS@ | ||
258 | SVG_LIBS = @SVG_LIBS@ | ||
259 | VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | ||
260 | VALGRIND_LIBS = @VALGRIND_LIBS@ | ||
261 | VERSION = @VERSION@ | ||
262 | VMAJ = @VMAJ@ | ||
263 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
264 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
265 | WIN32_CFLAGS = @WIN32_CFLAGS@ | ||
266 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | ||
267 | XCB_CFLAGS = @XCB_CFLAGS@ | ||
268 | XCB_GL_CFLAGS = @XCB_GL_CFLAGS@ | ||
269 | XCB_GL_LIBS = @XCB_GL_LIBS@ | ||
270 | XCB_LIBS = @XCB_LIBS@ | ||
271 | XEXT_CFLAGS = @XEXT_CFLAGS@ | ||
272 | XEXT_LIBS = @XEXT_LIBS@ | ||
273 | XMKMF = @XMKMF@ | ||
274 | X_CFLAGS = @X_CFLAGS@ | ||
275 | X_EXTRA_LIBS = @X_EXTRA_LIBS@ | ||
276 | X_LIBS = @X_LIBS@ | ||
277 | X_PRE_LIBS = @X_PRE_LIBS@ | ||
278 | abs_builddir = @abs_builddir@ | ||
279 | abs_srcdir = @abs_srcdir@ | ||
280 | abs_top_builddir = @abs_top_builddir@ | ||
281 | abs_top_srcdir = @abs_top_srcdir@ | ||
282 | ac_ct_CC = @ac_ct_CC@ | ||
283 | ac_ct_CXX = @ac_ct_CXX@ | ||
284 | ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ | ||
285 | ac_ct_OBJC = @ac_ct_OBJC@ | ||
286 | altivec_cflags = @altivec_cflags@ | ||
287 | am__include = @am__include@ | ||
288 | am__leading_dot = @am__leading_dot@ | ||
289 | am__quote = @am__quote@ | ||
290 | am__tar = @am__tar@ | ||
291 | am__untar = @am__untar@ | ||
292 | bindir = @bindir@ | ||
293 | build = @build@ | ||
294 | build_alias = @build_alias@ | ||
295 | build_cpu = @build_cpu@ | ||
296 | build_os = @build_os@ | ||
297 | build_vendor = @build_vendor@ | ||
298 | builddir = @builddir@ | ||
299 | datadir = @datadir@ | ||
300 | datarootdir = @datarootdir@ | ||
301 | dlopen_libs = @dlopen_libs@ | ||
302 | docdir = @docdir@ | ||
303 | dvidir = @dvidir@ | ||
304 | edje_cc = @edje_cc@ | ||
305 | efl_doxygen = @efl_doxygen@ | ||
306 | efl_have_doxygen = @efl_have_doxygen@ | ||
307 | evas_engine_buffer_cflags = @evas_engine_buffer_cflags@ | ||
308 | evas_engine_buffer_libs = @evas_engine_buffer_libs@ | ||
309 | evas_engine_direct3d_cflags = @evas_engine_direct3d_cflags@ | ||
310 | evas_engine_direct3d_libs = @evas_engine_direct3d_libs@ | ||
311 | evas_engine_directfb_cflags = @evas_engine_directfb_cflags@ | ||
312 | evas_engine_directfb_libs = @evas_engine_directfb_libs@ | ||
313 | evas_engine_fb_cflags = @evas_engine_fb_cflags@ | ||
314 | evas_engine_fb_libs = @evas_engine_fb_libs@ | ||
315 | evas_engine_gl_cocoa_cflags = @evas_engine_gl_cocoa_cflags@ | ||
316 | evas_engine_gl_cocoa_libs = @evas_engine_gl_cocoa_libs@ | ||
317 | evas_engine_gl_common_libs = @evas_engine_gl_common_libs@ | ||
318 | evas_engine_gl_sdl_cflags = @evas_engine_gl_sdl_cflags@ | ||
319 | evas_engine_gl_sdl_libs = @evas_engine_gl_sdl_libs@ | ||
320 | evas_engine_gl_xcb_cflags = @evas_engine_gl_xcb_cflags@ | ||
321 | evas_engine_gl_xcb_libs = @evas_engine_gl_xcb_libs@ | ||
322 | evas_engine_gl_xlib_cflags = @evas_engine_gl_xlib_cflags@ | ||
323 | evas_engine_gl_xlib_libs = @evas_engine_gl_xlib_libs@ | ||
324 | evas_engine_psl1ght_cflags = @evas_engine_psl1ght_cflags@ | ||
325 | evas_engine_psl1ght_libs = @evas_engine_psl1ght_libs@ | ||
326 | evas_engine_software_16_ddraw_cflags = @evas_engine_software_16_ddraw_cflags@ | ||
327 | evas_engine_software_16_ddraw_libs = @evas_engine_software_16_ddraw_libs@ | ||
328 | evas_engine_software_16_sdl_cflags = @evas_engine_software_16_sdl_cflags@ | ||
329 | evas_engine_software_16_sdl_libs = @evas_engine_software_16_sdl_libs@ | ||
330 | evas_engine_software_16_wince_cflags = @evas_engine_software_16_wince_cflags@ | ||
331 | evas_engine_software_16_wince_libs = @evas_engine_software_16_wince_libs@ | ||
332 | evas_engine_software_16_x11_cflags = @evas_engine_software_16_x11_cflags@ | ||
333 | evas_engine_software_16_x11_libs = @evas_engine_software_16_x11_libs@ | ||
334 | evas_engine_software_8_x11_cflags = @evas_engine_software_8_x11_cflags@ | ||
335 | evas_engine_software_8_x11_libs = @evas_engine_software_8_x11_libs@ | ||
336 | evas_engine_software_ddraw_cflags = @evas_engine_software_ddraw_cflags@ | ||
337 | evas_engine_software_ddraw_libs = @evas_engine_software_ddraw_libs@ | ||
338 | evas_engine_software_gdi_cflags = @evas_engine_software_gdi_cflags@ | ||
339 | evas_engine_software_gdi_libs = @evas_engine_software_gdi_libs@ | ||
340 | evas_engine_software_sdl_cflags = @evas_engine_software_sdl_cflags@ | ||
341 | evas_engine_software_sdl_libs = @evas_engine_software_sdl_libs@ | ||
342 | evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | ||
343 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | ||
344 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | ||
345 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | ||
346 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
347 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
348 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
349 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
350 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | ||
351 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | ||
352 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | ||
353 | evas_image_loader_edb_libs = @evas_image_loader_edb_libs@ | ||
354 | evas_image_loader_eet_cflags = @evas_image_loader_eet_cflags@ | ||
355 | evas_image_loader_eet_libs = @evas_image_loader_eet_libs@ | ||
356 | evas_image_loader_generic_cflags = @evas_image_loader_generic_cflags@ | ||
357 | evas_image_loader_generic_libs = @evas_image_loader_generic_libs@ | ||
358 | evas_image_loader_gif_cflags = @evas_image_loader_gif_cflags@ | ||
359 | evas_image_loader_gif_libs = @evas_image_loader_gif_libs@ | ||
360 | evas_image_loader_ico_cflags = @evas_image_loader_ico_cflags@ | ||
361 | evas_image_loader_ico_libs = @evas_image_loader_ico_libs@ | ||
362 | evas_image_loader_jpeg_cflags = @evas_image_loader_jpeg_cflags@ | ||
363 | evas_image_loader_jpeg_libs = @evas_image_loader_jpeg_libs@ | ||
364 | evas_image_loader_pmaps_cflags = @evas_image_loader_pmaps_cflags@ | ||
365 | evas_image_loader_pmaps_libs = @evas_image_loader_pmaps_libs@ | ||
366 | evas_image_loader_png_cflags = @evas_image_loader_png_cflags@ | ||
367 | evas_image_loader_png_libs = @evas_image_loader_png_libs@ | ||
368 | evas_image_loader_psd_cflags = @evas_image_loader_psd_cflags@ | ||
369 | evas_image_loader_psd_libs = @evas_image_loader_psd_libs@ | ||
370 | evas_image_loader_svg_cflags = @evas_image_loader_svg_cflags@ | ||
371 | evas_image_loader_svg_libs = @evas_image_loader_svg_libs@ | ||
372 | evas_image_loader_tga_cflags = @evas_image_loader_tga_cflags@ | ||
373 | evas_image_loader_tga_libs = @evas_image_loader_tga_libs@ | ||
374 | evas_image_loader_tiff_cflags = @evas_image_loader_tiff_cflags@ | ||
375 | evas_image_loader_tiff_libs = @evas_image_loader_tiff_libs@ | ||
376 | evas_image_loader_wbmp_cflags = @evas_image_loader_wbmp_cflags@ | ||
377 | evas_image_loader_wbmp_libs = @evas_image_loader_wbmp_libs@ | ||
378 | evas_image_loader_xpm_cflags = @evas_image_loader_xpm_cflags@ | ||
379 | evas_image_loader_xpm_libs = @evas_image_loader_xpm_libs@ | ||
380 | exec_prefix = @exec_prefix@ | ||
381 | have_evas_engine_gl_x11 = @have_evas_engine_gl_x11@ | ||
382 | have_evas_engine_gl_xcb = @have_evas_engine_gl_xcb@ | ||
383 | have_evas_engine_gl_xlib = @have_evas_engine_gl_xlib@ | ||
384 | have_evas_engine_software_x11 = @have_evas_engine_software_x11@ | ||
385 | have_evas_engine_software_xcb = @have_evas_engine_software_xcb@ | ||
386 | have_evas_engine_software_xlib = @have_evas_engine_software_xlib@ | ||
387 | have_lcov = @have_lcov@ | ||
388 | host = @host@ | ||
389 | host_alias = @host_alias@ | ||
390 | host_cpu = @host_cpu@ | ||
391 | host_os = @host_os@ | ||
392 | host_vendor = @host_vendor@ | ||
393 | htmldir = @htmldir@ | ||
394 | includedir = @includedir@ | ||
395 | infodir = @infodir@ | ||
396 | install_sh = @install_sh@ | ||
397 | libdir = @libdir@ | ||
398 | libexecdir = @libexecdir@ | ||
399 | localedir = @localedir@ | ||
400 | localstatedir = @localstatedir@ | ||
401 | lt_ECHO = @lt_ECHO@ | ||
402 | lt_enable_auto_import = @lt_enable_auto_import@ | ||
403 | mandir = @mandir@ | ||
404 | mkdir_p = @mkdir_p@ | ||
405 | oldincludedir = @oldincludedir@ | ||
406 | pdfdir = @pdfdir@ | ||
407 | pkgconfig_requires_private = @pkgconfig_requires_private@ | ||
408 | prefix = @prefix@ | ||
409 | program_transform_name = @program_transform_name@ | ||
410 | psdir = @psdir@ | ||
411 | pthread_cflags = @pthread_cflags@ | ||
412 | pthread_libs = @pthread_libs@ | ||
413 | release_info = @release_info@ | ||
414 | requirement_evas = @requirement_evas@ | ||
415 | sbindir = @sbindir@ | ||
416 | sharedstatedir = @sharedstatedir@ | ||
417 | srcdir = @srcdir@ | ||
418 | sysconfdir = @sysconfdir@ | ||
419 | target_alias = @target_alias@ | ||
420 | top_build_prefix = @top_build_prefix@ | ||
421 | top_builddir = @top_builddir@ | ||
422 | top_srcdir = @top_srcdir@ | ||
423 | version_info = @version_info@ | ||
424 | MAINTAINERCLEANFILES = Makefile.in | ||
425 | AM_CPPFLAGS = \ | ||
426 | -I. \ | ||
427 | -I$(top_srcdir)/src/lib \ | ||
428 | -I$(top_srcdir)/src/lib/include \ | ||
429 | -I$(top_srcdir)/src/modules/engines \ | ||
430 | @FREETYPE_CFLAGS@ \ | ||
431 | @EINA_CFLAGS@ \ | ||
432 | @evas_engine_wayland_shm_cflags@ | ||
433 | |||
434 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@WAYLAND_SHM_SOURCES = \ | ||
435 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@evas_engine.c \ | ||
436 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@evas_outbuf.c | ||
437 | |||
438 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@WAYLAND_SHM_LIBADD = @FREETYPE_LIBS@ @EINA_LIBS@ @evas_engine_wayland_shm_libs@ | ||
439 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@includes_HEADERS = Evas_Engine_Wayland_Shm.h | ||
440 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@includesdir = $(includedir)/evas-@VMAJ@ | ||
441 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@pkgdir = $(libdir)/evas/modules/engines/wayland_shm/$(MODULE_ARCH) | ||
442 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@pkg_LTLIBRARIES = module.la | ||
443 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@module_la_SOURCES = $(WAYLAND_SHM_SOURCES) | ||
444 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@module_la_LIBADD = $(WAYLAND_SHM_LIBADD) $(top_builddir)/src/lib/libevas.la | ||
445 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@module_la_LDFLAGS = -no-undefined -module -avoid-version | ||
446 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_FALSE@module_la_LIBTOOLFLAGS = --tag=disable-static | ||
447 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@noinst_LTLIBRARIES = libevas_engine_wayland_shm.la | ||
448 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@libevas_engine_wayland_shm_la_SOURCES = $(WAYLAND_SHM_SOURCES) | ||
449 | @BUILD_ENGINE_WAYLAND_SHM_TRUE@@EVAS_STATIC_BUILD_WAYLAND_SHM_TRUE@libevas_engine_wayland_shm_la_LIBADD = $(WAYLAND_SHM_LIBADD) | ||
450 | EXTRA_DIST = \ | ||
451 | evas_engine.h | ||
452 | |||
453 | all: all-am | ||
454 | |||
455 | .SUFFIXES: | ||
456 | .SUFFIXES: .c .lo .o .obj | ||
457 | $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) | ||
458 | @for dep in $?; do \ | ||
459 | case '$(am__configure_deps)' in \ | ||
460 | *$$dep*) \ | ||
461 | ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ | ||
462 | && { if test -f $@; then exit 0; else break; fi; }; \ | ||
463 | exit 1;; \ | ||
464 | esac; \ | ||
465 | done; \ | ||
466 | echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/modules/engines/wayland_shm/Makefile'; \ | ||
467 | $(am__cd) $(top_srcdir) && \ | ||
468 | $(AUTOMAKE) --gnu src/modules/engines/wayland_shm/Makefile | ||
469 | .PRECIOUS: Makefile | ||
470 | Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status | ||
471 | @case '$?' in \ | ||
472 | *config.status*) \ | ||
473 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ | ||
474 | *) \ | ||
475 | echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ | ||
476 | cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ | ||
477 | esac; | ||
478 | |||
479 | $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) | ||
480 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
481 | |||
482 | $(top_srcdir)/configure: $(am__configure_deps) | ||
483 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
484 | $(ACLOCAL_M4): $(am__aclocal_m4_deps) | ||
485 | cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh | ||
486 | $(am__aclocal_m4_deps): | ||
487 | |||
488 | clean-noinstLTLIBRARIES: | ||
489 | -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) | ||
490 | @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ | ||
491 | dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ | ||
492 | test "$$dir" != "$$p" || dir=.; \ | ||
493 | echo "rm -f \"$${dir}/so_locations\""; \ | ||
494 | rm -f "$${dir}/so_locations"; \ | ||
495 | done | ||
496 | install-pkgLTLIBRARIES: $(pkg_LTLIBRARIES) | ||
497 | @$(NORMAL_INSTALL) | ||
498 | test -z "$(pkgdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgdir)" | ||
499 | @list='$(pkg_LTLIBRARIES)'; test -n "$(pkgdir)" || list=; \ | ||
500 | list2=; for p in $$list; do \ | ||
501 | if test -f $$p; then \ | ||
502 | list2="$$list2 $$p"; \ | ||
503 | else :; fi; \ | ||
504 | done; \ | ||
505 | test -z "$$list2" || { \ | ||
506 | echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(pkgdir)'"; \ | ||
507 | $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(pkgdir)"; \ | ||
508 | } | ||
509 | |||
510 | uninstall-pkgLTLIBRARIES: | ||
511 | @$(NORMAL_UNINSTALL) | ||
512 | @list='$(pkg_LTLIBRARIES)'; test -n "$(pkgdir)" || list=; \ | ||
513 | for p in $$list; do \ | ||
514 | $(am__strip_dir) \ | ||
515 | echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(pkgdir)/$$f'"; \ | ||
516 | $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(pkgdir)/$$f"; \ | ||
517 | done | ||
518 | |||
519 | clean-pkgLTLIBRARIES: | ||
520 | -test -z "$(pkg_LTLIBRARIES)" || rm -f $(pkg_LTLIBRARIES) | ||
521 | @list='$(pkg_LTLIBRARIES)'; for p in $$list; do \ | ||
522 | dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ | ||
523 | test "$$dir" != "$$p" || dir=.; \ | ||
524 | echo "rm -f \"$${dir}/so_locations\""; \ | ||
525 | rm -f "$${dir}/so_locations"; \ | ||
526 | done | ||
527 | libevas_engine_wayland_shm.la: $(libevas_engine_wayland_shm_la_OBJECTS) $(libevas_engine_wayland_shm_la_DEPENDENCIES) | ||
528 | $(AM_V_CCLD)$(LINK) $(am_libevas_engine_wayland_shm_la_rpath) $(libevas_engine_wayland_shm_la_OBJECTS) $(libevas_engine_wayland_shm_la_LIBADD) $(LIBS) | ||
529 | module.la: $(module_la_OBJECTS) $(module_la_DEPENDENCIES) | ||
530 | $(AM_V_CCLD)$(module_la_LINK) $(am_module_la_rpath) $(module_la_OBJECTS) $(module_la_LIBADD) $(LIBS) | ||
531 | |||
532 | mostlyclean-compile: | ||
533 | -rm -f *.$(OBJEXT) | ||
534 | |||
535 | distclean-compile: | ||
536 | -rm -f *.tab.c | ||
537 | |||
538 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evas_engine.Plo@am__quote@ | ||
539 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/evas_outbuf.Plo@am__quote@ | ||
540 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/module_la-evas_engine.Plo@am__quote@ | ||
541 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/module_la-evas_outbuf.Plo@am__quote@ | ||
542 | |||
543 | .c.o: | ||
544 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< | ||
545 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po | ||
546 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
547 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | ||
548 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
549 | @am__fastdepCC_FALSE@ $(COMPILE) -c $< | ||
550 | |||
551 | .c.obj: | ||
552 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` | ||
553 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po | ||
554 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
555 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ | ||
556 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
557 | @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` | ||
558 | |||
559 | .c.lo: | ||
560 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< | ||
561 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo | ||
562 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
563 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ | ||
564 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
565 | @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< | ||
566 | |||
567 | module_la-evas_engine.lo: evas_engine.c | ||
568 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_engine.lo -MD -MP -MF $(DEPDIR)/module_la-evas_engine.Tpo -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c | ||
569 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_engine.Tpo $(DEPDIR)/module_la-evas_engine.Plo | ||
570 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
571 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_engine.c' object='module_la-evas_engine.lo' libtool=yes @AMDEPBACKSLASH@ | ||
572 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
573 | @am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_engine.lo `test -f 'evas_engine.c' || echo '$(srcdir)/'`evas_engine.c | ||
574 | |||
575 | module_la-evas_outbuf.lo: evas_outbuf.c | ||
576 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT module_la-evas_outbuf.lo -MD -MP -MF $(DEPDIR)/module_la-evas_outbuf.Tpo -c -o module_la-evas_outbuf.lo `test -f 'evas_outbuf.c' || echo '$(srcdir)/'`evas_outbuf.c | ||
577 | @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/module_la-evas_outbuf.Tpo $(DEPDIR)/module_la-evas_outbuf.Plo | ||
578 | @am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ | ||
579 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='evas_outbuf.c' object='module_la-evas_outbuf.lo' libtool=yes @AMDEPBACKSLASH@ | ||
580 | @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ | ||
581 | @am__fastdepCC_FALSE@ $(LIBTOOL) $(AM_V_lt) --tag=CC $(module_la_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o module_la-evas_outbuf.lo `test -f 'evas_outbuf.c' || echo '$(srcdir)/'`evas_outbuf.c | ||
582 | |||
583 | mostlyclean-libtool: | ||
584 | -rm -f *.lo | ||
585 | |||
586 | clean-libtool: | ||
587 | -rm -rf .libs _libs | ||
588 | install-includesHEADERS: $(includes_HEADERS) | ||
589 | @$(NORMAL_INSTALL) | ||
590 | test -z "$(includesdir)" || $(MKDIR_P) "$(DESTDIR)$(includesdir)" | ||
591 | @list='$(includes_HEADERS)'; test -n "$(includesdir)" || list=; \ | ||
592 | for p in $$list; do \ | ||
593 | if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ | ||
594 | echo "$$d$$p"; \ | ||
595 | done | $(am__base_list) | \ | ||
596 | while read files; do \ | ||
597 | echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includesdir)'"; \ | ||
598 | $(INSTALL_HEADER) $$files "$(DESTDIR)$(includesdir)" || exit $$?; \ | ||
599 | done | ||
600 | |||
601 | uninstall-includesHEADERS: | ||
602 | @$(NORMAL_UNINSTALL) | ||
603 | @list='$(includes_HEADERS)'; test -n "$(includesdir)" || list=; \ | ||
604 | files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ | ||
605 | test -n "$$files" || exit 0; \ | ||
606 | echo " ( cd '$(DESTDIR)$(includesdir)' && rm -f" $$files ")"; \ | ||
607 | cd "$(DESTDIR)$(includesdir)" && rm -f $$files | ||
608 | |||
609 | ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) | ||
610 | list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | ||
611 | unique=`for i in $$list; do \ | ||
612 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | ||
613 | done | \ | ||
614 | $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ | ||
615 | END { if (nonempty) { for (i in files) print i; }; }'`; \ | ||
616 | mkid -fID $$unique | ||
617 | tags: TAGS | ||
618 | |||
619 | TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ | ||
620 | $(TAGS_FILES) $(LISP) | ||
621 | set x; \ | ||
622 | here=`pwd`; \ | ||
623 | list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | ||
624 | unique=`for i in $$list; do \ | ||
625 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | ||
626 | done | \ | ||
627 | $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ | ||
628 | END { if (nonempty) { for (i in files) print i; }; }'`; \ | ||
629 | shift; \ | ||
630 | if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ | ||
631 | test -n "$$unique" || unique=$$empty_fix; \ | ||
632 | if test $$# -gt 0; then \ | ||
633 | $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ | ||
634 | "$$@" $$unique; \ | ||
635 | else \ | ||
636 | $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ | ||
637 | $$unique; \ | ||
638 | fi; \ | ||
639 | fi | ||
640 | ctags: CTAGS | ||
641 | CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ | ||
642 | $(TAGS_FILES) $(LISP) | ||
643 | list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ | ||
644 | unique=`for i in $$list; do \ | ||
645 | if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ | ||
646 | done | \ | ||
647 | $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ | ||
648 | END { if (nonempty) { for (i in files) print i; }; }'`; \ | ||
649 | test -z "$(CTAGS_ARGS)$$unique" \ | ||
650 | || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ | ||
651 | $$unique | ||
652 | |||
653 | GTAGS: | ||
654 | here=`$(am__cd) $(top_builddir) && pwd` \ | ||
655 | && $(am__cd) $(top_srcdir) \ | ||
656 | && gtags -i $(GTAGS_ARGS) "$$here" | ||
657 | |||
658 | distclean-tags: | ||
659 | -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags | ||
660 | |||
661 | distdir: $(DISTFILES) | ||
662 | @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
663 | topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ | ||
664 | list='$(DISTFILES)'; \ | ||
665 | dist_files=`for file in $$list; do echo $$file; done | \ | ||
666 | sed -e "s|^$$srcdirstrip/||;t" \ | ||
667 | -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ | ||
668 | case $$dist_files in \ | ||
669 | */*) $(MKDIR_P) `echo "$$dist_files" | \ | ||
670 | sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ | ||
671 | sort -u` ;; \ | ||
672 | esac; \ | ||
673 | for file in $$dist_files; do \ | ||
674 | if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ | ||
675 | if test -d $$d/$$file; then \ | ||
676 | dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ | ||
677 | if test -d "$(distdir)/$$file"; then \ | ||
678 | find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
679 | fi; \ | ||
680 | if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ | ||
681 | cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ | ||
682 | find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ | ||
683 | fi; \ | ||
684 | cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ | ||
685 | else \ | ||
686 | test -f "$(distdir)/$$file" \ | ||
687 | || cp -p $$d/$$file "$(distdir)/$$file" \ | ||
688 | || exit 1; \ | ||
689 | fi; \ | ||
690 | done | ||
691 | check-am: all-am | ||
692 | check: check-am | ||
693 | all-am: Makefile $(LTLIBRARIES) $(HEADERS) | ||
694 | installdirs: | ||
695 | for dir in "$(DESTDIR)$(pkgdir)" "$(DESTDIR)$(includesdir)"; do \ | ||
696 | test -z "$$dir" || $(MKDIR_P) "$$dir"; \ | ||
697 | done | ||
698 | install: install-am | ||
699 | install-exec: install-exec-am | ||
700 | install-data: install-data-am | ||
701 | uninstall: uninstall-am | ||
702 | |||
703 | install-am: all-am | ||
704 | @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am | ||
705 | |||
706 | installcheck: installcheck-am | ||
707 | install-strip: | ||
708 | $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ | ||
709 | install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ | ||
710 | `test -z '$(STRIP)' || \ | ||
711 | echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install | ||
712 | mostlyclean-generic: | ||
713 | |||
714 | clean-generic: | ||
715 | |||
716 | distclean-generic: | ||
717 | -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) | ||
718 | -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) | ||
719 | |||
720 | maintainer-clean-generic: | ||
721 | @echo "This command is intended for maintainers to use" | ||
722 | @echo "it deletes files that may require special tools to rebuild." | ||
723 | -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) | ||
724 | clean: clean-am | ||
725 | |||
726 | clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ | ||
727 | clean-pkgLTLIBRARIES mostlyclean-am | ||
728 | |||
729 | distclean: distclean-am | ||
730 | -rm -rf ./$(DEPDIR) | ||
731 | -rm -f Makefile | ||
732 | distclean-am: clean-am distclean-compile distclean-generic \ | ||
733 | distclean-tags | ||
734 | |||
735 | dvi: dvi-am | ||
736 | |||
737 | dvi-am: | ||
738 | |||
739 | html: html-am | ||
740 | |||
741 | html-am: | ||
742 | |||
743 | info: info-am | ||
744 | |||
745 | info-am: | ||
746 | |||
747 | install-data-am: install-includesHEADERS install-pkgLTLIBRARIES | ||
748 | |||
749 | install-dvi: install-dvi-am | ||
750 | |||
751 | install-dvi-am: | ||
752 | |||
753 | install-exec-am: | ||
754 | |||
755 | install-html: install-html-am | ||
756 | |||
757 | install-html-am: | ||
758 | |||
759 | install-info: install-info-am | ||
760 | |||
761 | install-info-am: | ||
762 | |||
763 | install-man: | ||
764 | |||
765 | install-pdf: install-pdf-am | ||
766 | |||
767 | install-pdf-am: | ||
768 | |||
769 | install-ps: install-ps-am | ||
770 | |||
771 | install-ps-am: | ||
772 | |||
773 | installcheck-am: | ||
774 | |||
775 | maintainer-clean: maintainer-clean-am | ||
776 | -rm -rf ./$(DEPDIR) | ||
777 | -rm -f Makefile | ||
778 | maintainer-clean-am: distclean-am maintainer-clean-generic | ||
779 | |||
780 | mostlyclean: mostlyclean-am | ||
781 | |||
782 | mostlyclean-am: mostlyclean-compile mostlyclean-generic \ | ||
783 | mostlyclean-libtool | ||
784 | |||
785 | pdf: pdf-am | ||
786 | |||
787 | pdf-am: | ||
788 | |||
789 | ps: ps-am | ||
790 | |||
791 | ps-am: | ||
792 | |||
793 | uninstall-am: uninstall-includesHEADERS uninstall-pkgLTLIBRARIES | ||
794 | |||
795 | .MAKE: install-am install-strip | ||
796 | |||
797 | .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ | ||
798 | clean-libtool clean-noinstLTLIBRARIES clean-pkgLTLIBRARIES \ | ||
799 | ctags distclean distclean-compile distclean-generic \ | ||
800 | distclean-libtool distclean-tags distdir dvi dvi-am html \ | ||
801 | html-am info info-am install install-am install-data \ | ||
802 | install-data-am install-dvi install-dvi-am install-exec \ | ||
803 | install-exec-am install-html install-html-am \ | ||
804 | install-includesHEADERS install-info install-info-am \ | ||
805 | install-man install-pdf install-pdf-am install-pkgLTLIBRARIES \ | ||
806 | install-ps install-ps-am install-strip installcheck \ | ||
807 | installcheck-am installdirs maintainer-clean \ | ||
808 | maintainer-clean-generic mostlyclean mostlyclean-compile \ | ||
809 | mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ | ||
810 | tags uninstall uninstall-am uninstall-includesHEADERS \ | ||
811 | uninstall-pkgLTLIBRARIES | ||
812 | |||
813 | |||
814 | # Tell versions [3.59,3.63) of GNU make to not export all variables. | ||
815 | # Otherwise a system limit (for SysV at least) may be exceeded. | ||
816 | .NOEXPORT: | ||
diff --git a/libraries/evas/src/modules/engines/wayland_shm/evas_engine.c b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.c new file mode 100644 index 0000000..7c55517 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.c | |||
@@ -0,0 +1,370 @@ | |||
1 | #include "evas_common.h" | ||
2 | #include "evas_private.h" | ||
3 | #include "evas_engine.h" | ||
4 | #include "Evas_Engine_Wayland_Shm.h" | ||
5 | |||
6 | /* local structures */ | ||
7 | typedef struct _Render_Engine Render_Engine; | ||
8 | struct _Render_Engine | ||
9 | { | ||
10 | Tilebuf *tb; | ||
11 | Tilebuf_Rect *rects; | ||
12 | Outbuf *ob; | ||
13 | Eina_Inlist *cur_rect; | ||
14 | |||
15 | Eina_Bool end : 1; | ||
16 | |||
17 | void (*outbuf_free)(Outbuf *ob); | ||
18 | void (*outbuf_resize)(Outbuf *ob, int w, int h); | ||
19 | RGBA_Image *(*outbuf_new_region_for_update)(Outbuf *ob, int x, int y, int w, int h, int *cx, int *cy, int *cw, int *ch); | ||
20 | void (*outbuf_push_updated_region)(Outbuf *ob, RGBA_Image *surface, int x, int y, int w, int h); | ||
21 | void (*outbuf_free_region_for_update)(Outbuf *ob, RGBA_Image *update); | ||
22 | }; | ||
23 | |||
24 | /* local variables */ | ||
25 | static Evas_Func func, pfunc; | ||
26 | |||
27 | /* external variables */ | ||
28 | int _evas_engine_way_shm_log_dom = -1; | ||
29 | |||
30 | /* local function prototypes */ | ||
31 | static void *_output_setup(int w, int h, int rotation, void *dest); | ||
32 | |||
33 | /* engine function prototypes */ | ||
34 | static void *eng_info(Evas *evas __UNUSED__); | ||
35 | static void eng_info_free(Evas *evas __UNUSED__, void *info); | ||
36 | static int eng_setup(Evas *evas, void *info); | ||
37 | static void eng_output_free(void *data); | ||
38 | static void eng_output_resize(void *data, int w, int h); | ||
39 | static void eng_output_tile_size_set(void *data, int w, int h); | ||
40 | static void eng_output_redraws_rect_add(void *data, int x, int y, int w, int h); | ||
41 | static void eng_output_redraws_rect_del(void *data, int x, int y, int w, int h); | ||
42 | static void eng_output_redraws_clear(void *data); | ||
43 | static void *eng_output_redraws_next_update_get(void *data, int *x, int *y, int *w, int *h, int *cx, int *cy, int *cw, int *ch); | ||
44 | static void eng_output_redraws_next_update_push(void *data, void *surface, int x, int y, int w, int h); | ||
45 | static void eng_output_flush(void *data); | ||
46 | static void eng_output_idle_flush(void *data); | ||
47 | static Eina_Bool eng_canvas_alpha_get(void *data, void *context __UNUSED__); | ||
48 | |||
49 | /* local functions */ | ||
50 | static void * | ||
51 | _output_setup(int w, int h, int rotation, void *dest) | ||
52 | { | ||
53 | Render_Engine *re = NULL; | ||
54 | |||
55 | LOGFN(__FILE__, __LINE__, __FUNCTION__); | ||
56 | |||
57 | if (!(re = calloc(1, sizeof(Render_Engine)))) return NULL; | ||
58 | |||
59 | if (!(re->ob = evas_outbuf_setup(w, h, rotation, dest))) | ||
60 | { | ||
61 | free(re); | ||
62 | return NULL; | ||
63 | } | ||
64 | |||
65 | if (!(re->tb = evas_common_tilebuf_new(w, h))) | ||
66 | { | ||
67 | evas_outbuf_free(re->ob); | ||
68 | free(re); | ||
69 | return NULL; | ||
70 | } | ||
71 | |||
72 | evas_common_tilebuf_set_tile_size(re->tb, TILESIZE, TILESIZE); | ||
73 | return re; | ||
74 | } | ||
75 | |||
76 | /* engine functions */ | ||
77 | static void * | ||
78 | eng_info(Evas *evas __UNUSED__) | ||
79 | { | ||
80 | Evas_Engine_Info_Wayland_Shm *info; | ||
81 | |||
82 | LOGFN(__FILE__, __LINE__, __FUNCTION__); | ||
83 | |||
84 | if (!(info = calloc(1, sizeof(Evas_Engine_Info_Wayland_Shm)))) | ||
85 | return NULL; | ||
86 | |||
87 | info->magic.magic = rand(); | ||
88 | info->info.debug = EINA_FALSE; | ||
89 | info->render_mode = EVAS_RENDER_MODE_BLOCKING; | ||
90 | |||
91 | return info; | ||
92 | } | ||
93 | |||
94 | static void | ||
95 | eng_info_free(Evas *evas __UNUSED__, void *info) | ||
96 | { | ||
97 | Evas_Engine_Info_Wayland_Shm *in; | ||
98 | |||
99 | LOGFN(__FILE__, __LINE__, __FUNCTION__); | ||
100 | |||
101 | if (!(in = (Evas_Engine_Info_Wayland_Shm *)info)) return; | ||
102 | free(in); | ||
103 | } | ||
104 | |||
105 | static int | ||
106 | eng_setup(Evas *evas, void *info) | ||
107 | { | ||
108 | Evas_Engine_Info_Wayland_Shm *in; | ||
109 | Render_Engine *re = NULL; | ||
110 | |||
111 | LOGFN(__FILE__, __LINE__, __FUNCTION__); | ||
112 | |||
113 | if (!(in = (Evas_Engine_Info_Wayland_Shm *)info)) return 0; | ||
114 | |||
115 | if (!evas->engine.data.output) | ||
116 | { | ||
117 | evas_common_cpu_init(); | ||
118 | evas_common_blend_init(); | ||
119 | evas_common_image_init(); | ||
120 | evas_common_convert_init(); | ||
121 | evas_common_scale_init(); | ||
122 | evas_common_rectangle_init(); | ||
123 | evas_common_polygon_init(); | ||
124 | evas_common_line_init(); | ||
125 | evas_common_font_init(); | ||
126 | evas_common_draw_init(); | ||
127 | evas_common_tilebuf_init(); | ||
128 | |||
129 | re = _output_setup(evas->output.w, evas->output.h, | ||
130 | in->info.rotation, in->info.dest); | ||
131 | if (!re) return 0; | ||
132 | |||
133 | re->outbuf_free = evas_outbuf_free; | ||
134 | re->outbuf_resize = evas_outbuf_resize; | ||
135 | re->outbuf_new_region_for_update = evas_outbuf_new_region_for_update; | ||
136 | re->outbuf_push_updated_region = evas_outbuf_push_updated_region; | ||
137 | re->outbuf_free_region_for_update = evas_outbuf_free_region_for_update; | ||
138 | } | ||
139 | else | ||
140 | { | ||
141 | if (!(re = evas->engine.data.output)) return 0; | ||
142 | if (re->ob) re->outbuf_free(re->ob); | ||
143 | re->ob = evas_outbuf_setup(evas->output.w, evas->output.h, | ||
144 | in->info.rotation, in->info.dest); | ||
145 | if (re->tb) evas_common_tilebuf_free(re->tb); | ||
146 | if ((re->tb = evas_common_tilebuf_new(evas->output.w, evas->output.h))) | ||
147 | evas_common_tilebuf_set_tile_size(re->tb, TILESIZE, TILESIZE); | ||
148 | } | ||
149 | |||
150 | evas->engine.data.output = re; | ||
151 | |||
152 | if (!evas->engine.data.context) | ||
153 | { | ||
154 | evas->engine.data.context = | ||
155 | evas->engine.func->context_new(evas->engine.data.output); | ||
156 | } | ||
157 | |||
158 | return 1; | ||
159 | } | ||
160 | |||
161 | static void | ||
162 | eng_output_free(void *data) | ||
163 | { | ||
164 | Render_Engine *re = NULL; | ||
165 | |||
166 | LOGFN(__FILE__, __LINE__, __FUNCTION__); | ||
167 | |||
168 | if ((re = (Render_Engine *)data)) | ||
169 | { | ||
170 | if (re->ob) re->outbuf_free(re->ob); | ||
171 | if (re->tb) evas_common_tilebuf_free(re->tb); | ||
172 | if (re->rects) evas_common_tilebuf_free_render_rects(re->rects); | ||
173 | free(re); | ||
174 | } | ||
175 | evas_common_font_shutdown(); | ||
176 | evas_common_image_shutdown(); | ||
177 | } | ||
178 | |||
179 | static void | ||
180 | eng_output_resize(void *data, int w, int h) | ||
181 | { | ||
182 | Render_Engine *re = NULL; | ||
183 | |||
184 | LOGFN(__FILE__, __LINE__, __FUNCTION__); | ||
185 | |||
186 | if (!(re = (Render_Engine *)data)) return; | ||
187 | |||
188 | if (re->ob) re->outbuf_resize(re->ob, w, h); | ||
189 | if (re->tb) evas_common_tilebuf_free(re->tb); | ||
190 | if ((re->tb = evas_common_tilebuf_new(w, h))) | ||
191 | evas_common_tilebuf_set_tile_size(re->tb, TILESIZE, TILESIZE); | ||
192 | } | ||
193 | |||
194 | static void | ||
195 | eng_output_tile_size_set(void *data, int w, int h) | ||
196 | { | ||
197 | Render_Engine *re = NULL; | ||
198 | |||
199 | if (!(re = (Render_Engine *)data)) return; | ||
200 | if (re->tb) evas_common_tilebuf_set_tile_size(re->tb, w, h); | ||
201 | } | ||
202 | |||
203 | static void | ||
204 | eng_output_redraws_rect_add(void *data, int x, int y, int w, int h) | ||
205 | { | ||
206 | Render_Engine *re = NULL; | ||
207 | |||
208 | if (!(re = (Render_Engine *)data)) return; | ||
209 | if (re->tb) evas_common_tilebuf_add_redraw(re->tb, x, y, w, h); | ||
210 | } | ||
211 | |||
212 | static void | ||
213 | eng_output_redraws_rect_del(void *data, int x, int y, int w, int h) | ||
214 | { | ||
215 | Render_Engine *re = NULL; | ||
216 | |||
217 | if (!(re = (Render_Engine *)data)) return; | ||
218 | if (re->tb) evas_common_tilebuf_del_redraw(re->tb, x, y, w, h); | ||
219 | } | ||
220 | |||
221 | static void | ||
222 | eng_output_redraws_clear(void *data) | ||
223 | { | ||
224 | Render_Engine *re = NULL; | ||
225 | |||
226 | if (!(re = (Render_Engine *)data)) return; | ||
227 | if (re->tb) evas_common_tilebuf_clear(re->tb); | ||
228 | } | ||
229 | |||
230 | static void * | ||
231 | eng_output_redraws_next_update_get(void *data, int *x, int *y, int *w, int *h, int *cx, int *cy, int *cw, int *ch) | ||
232 | { | ||
233 | Render_Engine *re = NULL; | ||
234 | RGBA_Image *surface; | ||
235 | Tilebuf_Rect *rect; | ||
236 | int ux = 0, uy = 0, uw = 0, uh = 0; | ||
237 | |||
238 | if (!(re = (Render_Engine *)data)) return NULL; | ||
239 | if (re->end) | ||
240 | { | ||
241 | re->end = EINA_FALSE; | ||
242 | return NULL; | ||
243 | } | ||
244 | if (!re->rects) | ||
245 | { | ||
246 | re->rects = evas_common_tilebuf_get_render_rects(re->tb); | ||
247 | re->cur_rect = EINA_INLIST_GET(re->rects); | ||
248 | } | ||
249 | if (!re->cur_rect) return NULL; | ||
250 | rect = (Tilebuf_Rect *)re->cur_rect; | ||
251 | ux = rect->x; | ||
252 | uy = rect->y; | ||
253 | uw = rect->w; | ||
254 | uh = rect->h; | ||
255 | re->cur_rect = re->cur_rect->next; | ||
256 | if (!re->cur_rect) | ||
257 | { | ||
258 | evas_common_tilebuf_free_render_rects(re->rects); | ||
259 | re->rects = NULL; | ||
260 | re->end = EINA_TRUE; | ||
261 | } | ||
262 | if ((ux + uw) > re->ob->w) uw = re->ob->w - ux; | ||
263 | if ((uy + uh) > re->ob->h) uh = re->ob->h - uy; | ||
264 | if ((uw <= 0) || (uh <= 0)) return NULL; | ||
265 | surface = | ||
266 | re->outbuf_new_region_for_update(re->ob, ux, uy, uw, uh, cx, cy, cw, ch); | ||
267 | if (x) *x = ux; | ||
268 | if (y) *y = uy; | ||
269 | if (w) *w = uw; | ||
270 | if (h) *h = uh; | ||
271 | return surface; | ||
272 | } | ||
273 | |||
274 | static void | ||
275 | eng_output_redraws_next_update_push(void *data, void *surface, int x, int y, int w, int h) | ||
276 | { | ||
277 | Render_Engine *re = NULL; | ||
278 | |||
279 | if (!(re = (Render_Engine *)data)) return; | ||
280 | #ifdef BUILD_PIPE_RENDER | ||
281 | evas_common_pipe_map_begin(surface); | ||
282 | #endif | ||
283 | if (re->ob) | ||
284 | { | ||
285 | re->outbuf_push_updated_region(re->ob, surface, x, y, w, h); | ||
286 | re->outbuf_free_region_for_update(re->ob, surface); | ||
287 | } | ||
288 | evas_common_cpu_end_opt(); | ||
289 | } | ||
290 | |||
291 | static void | ||
292 | eng_output_flush(void *data) | ||
293 | { | ||
294 | Render_Engine *re = NULL; | ||
295 | |||
296 | if (!(re = (Render_Engine *)data)) return; | ||
297 | } | ||
298 | |||
299 | static void | ||
300 | eng_output_idle_flush(void *data) | ||
301 | { | ||
302 | Render_Engine *re = NULL; | ||
303 | |||
304 | if (!(re = (Render_Engine *)data)) return; | ||
305 | } | ||
306 | |||
307 | static Eina_Bool | ||
308 | eng_canvas_alpha_get(void *data, void *context __UNUSED__) | ||
309 | { | ||
310 | Render_Engine *re = NULL; | ||
311 | |||
312 | if (!(re = (Render_Engine *)data)) return EINA_FALSE; | ||
313 | return EINA_TRUE; | ||
314 | } | ||
315 | |||
316 | /* module functions */ | ||
317 | static int | ||
318 | module_open(Evas_Module *em) | ||
319 | { | ||
320 | if (!em) return 0; | ||
321 | |||
322 | if (!_evas_module_engine_inherit(&pfunc, "software_generic")) | ||
323 | return 0; | ||
324 | |||
325 | _evas_engine_way_shm_log_dom = | ||
326 | eina_log_domain_register("evas-wayland_shm", EVAS_DEFAULT_LOG_COLOR); | ||
327 | if (_evas_engine_way_shm_log_dom < 0) | ||
328 | { | ||
329 | EINA_LOG_ERR("Could not create a module log domain."); | ||
330 | return 0; | ||
331 | } | ||
332 | |||
333 | func = pfunc; | ||
334 | |||
335 | #define ORD(f) EVAS_API_OVERRIDE(f, &func, eng_) | ||
336 | ORD(info); | ||
337 | ORD(info_free); | ||
338 | ORD(setup); | ||
339 | ORD(canvas_alpha_get); | ||
340 | ORD(output_free); | ||
341 | ORD(output_resize); | ||
342 | ORD(output_tile_size_set); | ||
343 | ORD(output_redraws_rect_add); | ||
344 | ORD(output_redraws_rect_del); | ||
345 | ORD(output_redraws_clear); | ||
346 | ORD(output_redraws_next_update_get); | ||
347 | ORD(output_redraws_next_update_push); | ||
348 | ORD(output_flush); | ||
349 | ORD(output_idle_flush); | ||
350 | |||
351 | em->functions = (void *)(&func); | ||
352 | return 1; | ||
353 | } | ||
354 | |||
355 | static void | ||
356 | module_close(Evas_Module *em __UNUSED__) | ||
357 | { | ||
358 | eina_log_domain_unregister(_evas_engine_way_shm_log_dom); | ||
359 | } | ||
360 | |||
361 | static Evas_Module_Api evas_modapi = | ||
362 | { | ||
363 | EVAS_MODULE_API_VERSION, "wayland_shm", "none", {module_open, module_close} | ||
364 | }; | ||
365 | |||
366 | EVAS_MODULE_DEFINE(EVAS_MODULE_TYPE_ENGINE, engine, wayland_shm); | ||
367 | |||
368 | #ifndef EVAS_STATIC_BUILD_WAYLAND_SHM | ||
369 | EVAS_EINA_MODULE_DEFINE(engine, wayland_shm); | ||
370 | #endif | ||
diff --git a/libraries/evas/src/modules/engines/wayland_shm/evas_engine.h b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.h new file mode 100644 index 0000000..878851a --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_shm/evas_engine.h | |||
@@ -0,0 +1,60 @@ | |||
1 | #ifndef _EVAS_ENGINE_H | ||
2 | # define _EVAS_ENGINE_H | ||
3 | |||
4 | //# define LOGFNS 1 | ||
5 | |||
6 | # ifdef LOGFNS | ||
7 | # include <stdio.h> | ||
8 | # define LOGFN(fl, ln, fn) printf("-EVAS-WL: %25s: %5i - %s\n", fl, ln, fn); | ||
9 | # else | ||
10 | # define LOGFN(fl, ln, fn) | ||
11 | # endif | ||
12 | |||
13 | extern int _evas_engine_way_shm_log_dom; | ||
14 | |||
15 | # ifdef ERR | ||
16 | # undef ERR | ||
17 | # endif | ||
18 | # define ERR(...) EINA_LOG_DOM_ERR(_evas_engine_way_shm_log_dom, __VA_ARGS__) | ||
19 | |||
20 | # ifdef DBG | ||
21 | # undef DBG | ||
22 | # endif | ||
23 | # define DBG(...) EINA_LOG_DOM_DBG(_evas_engine_way_shm_log_dom, __VA_ARGS__) | ||
24 | |||
25 | # ifdef INF | ||
26 | # undef INF | ||
27 | # endif | ||
28 | # define INF(...) EINA_LOG_DOM_INFO(_evas_engine_way_shm_log_dom, __VA_ARGS__) | ||
29 | |||
30 | # ifdef WRN | ||
31 | # undef WRN | ||
32 | # endif | ||
33 | # define WRN(...) EINA_LOG_DOM_WARN(_evas_engine_way_shm_log_dom, __VA_ARGS__) | ||
34 | |||
35 | # ifdef CRIT | ||
36 | # undef CRIT | ||
37 | # endif | ||
38 | # define CRIT(...) EINA_LOG_DOM_CRIT(_evas_engine_way_shm_log_dom, __VA_ARGS__) | ||
39 | |||
40 | typedef struct _Outbuf Outbuf; | ||
41 | struct _Outbuf | ||
42 | { | ||
43 | int w, h; | ||
44 | int rotation; | ||
45 | |||
46 | struct | ||
47 | { | ||
48 | void *dest; | ||
49 | RGBA_Image *buffer; | ||
50 | } priv; | ||
51 | }; | ||
52 | |||
53 | void evas_outbuf_free(Outbuf *ob); | ||
54 | void evas_outbuf_resize(Outbuf *ob, int w, int h); | ||
55 | Outbuf *evas_outbuf_setup(int w, int h, int rot, void *dest); | ||
56 | RGBA_Image *evas_outbuf_new_region_for_update(Outbuf *ob, int x, int y, int w, int h, int *cx, int *cy, int *cw, int *ch); | ||
57 | void evas_outbuf_push_updated_region(Outbuf *ob, RGBA_Image *update, int x __UNUSED__, int y, int w, int h); | ||
58 | void evas_outbuf_free_region_for_update(Outbuf *ob, RGBA_Image *update); | ||
59 | |||
60 | #endif | ||
diff --git a/libraries/evas/src/modules/engines/wayland_shm/evas_outbuf.c b/libraries/evas/src/modules/engines/wayland_shm/evas_outbuf.c new file mode 100644 index 0000000..490a978 --- /dev/null +++ b/libraries/evas/src/modules/engines/wayland_shm/evas_outbuf.c | |||
@@ -0,0 +1,100 @@ | |||
1 | #include "evas_common.h" | ||
2 | #include "evas_engine.h" | ||
3 | |||
4 | void | ||
5 | evas_outbuf_free(Outbuf *ob) | ||
6 | { | ||
7 | if (!ob) return; | ||
8 | if (ob->priv.buffer) evas_cache_image_drop(&ob->priv.buffer->cache_entry); | ||
9 | free(ob); | ||
10 | } | ||
11 | |||
12 | void | ||
13 | evas_outbuf_resize(Outbuf *ob, int w, int h) | ||
14 | { | ||
15 | if (!ob) return; | ||
16 | if ((ob->w == w) && (ob->h == h)) return; | ||
17 | ob->w = w; | ||
18 | ob->h = h; | ||
19 | if (ob->priv.buffer) evas_cache_image_drop(&ob->priv.buffer->cache_entry); | ||
20 | ob->priv.buffer = NULL; | ||
21 | } | ||
22 | |||
23 | Outbuf * | ||
24 | evas_outbuf_setup(int w, int h, int rot, void *dest) | ||
25 | { | ||
26 | Outbuf *ob = NULL; | ||
27 | |||
28 | if (!(ob = calloc(1, sizeof(Outbuf)))) return NULL; | ||
29 | |||
30 | ob->w = w; | ||
31 | ob->h = h; | ||
32 | ob->rotation = rot; | ||
33 | ob->priv.dest = dest; | ||
34 | |||
35 | ob->priv.buffer = | ||
36 | (RGBA_Image *)evas_cache_image_data(evas_common_image_cache_get(), | ||
37 | w, h, ob->priv.dest, | ||
38 | 1, EVAS_COLORSPACE_ARGB8888); | ||
39 | |||
40 | return ob; | ||
41 | } | ||
42 | |||
43 | RGBA_Image * | ||
44 | evas_outbuf_new_region_for_update(Outbuf *ob, int x, int y, int w, int h, int *cx, int *cy, int *cw, int *ch) | ||
45 | { | ||
46 | if (ob->priv.buffer) | ||
47 | { | ||
48 | *cx = x; *cy = y; *cw = w; *ch = h; | ||
49 | return ob->priv.buffer; | ||
50 | } | ||
51 | else | ||
52 | { | ||
53 | RGBA_Image *im; | ||
54 | |||
55 | *cx = 0; *cy = 0; *cw = w; *ch = h; | ||
56 | im = (RGBA_Image *)evas_cache_image_empty(evas_common_image_cache_get()); | ||
57 | if (im) | ||
58 | { | ||
59 | im->cache_entry.flags.alpha = 1; | ||
60 | im = (RGBA_Image *)evas_cache_image_size_set(&im->cache_entry, w, h); | ||
61 | } | ||
62 | |||
63 | return im; | ||
64 | } | ||
65 | |||
66 | return NULL; | ||
67 | } | ||
68 | |||
69 | void | ||
70 | evas_outbuf_push_updated_region(Outbuf *ob, RGBA_Image *update, int x __UNUSED__, int y, int w, int h) | ||
71 | { | ||
72 | if (!ob->priv.dest) return; | ||
73 | if (!ob->priv.buffer) | ||
74 | { | ||
75 | Gfx_Func_Copy func; | ||
76 | |||
77 | func = evas_common_draw_func_copy_get(w, 0); | ||
78 | if (func) | ||
79 | { | ||
80 | DATA32 *dst, *src; | ||
81 | int yy = 0, bytes = 0; | ||
82 | |||
83 | bytes = ((w * sizeof(int)) * h); | ||
84 | for (yy = 0; yy < h; yy++) | ||
85 | { | ||
86 | src = update->image.data + (yy * update->cache_entry.w); | ||
87 | dst = (DATA32 *)((DATA8 *)(ob->priv.dest) + | ||
88 | ((y + yy) * bytes)); | ||
89 | func(src, dst, w); | ||
90 | } | ||
91 | } | ||
92 | } | ||
93 | } | ||
94 | |||
95 | void | ||
96 | evas_outbuf_free_region_for_update(Outbuf *ob, RGBA_Image *update) | ||
97 | { | ||
98 | if (!ob) return; | ||
99 | if (update != ob->priv.buffer) evas_cache_image_drop(&update->cache_entry); | ||
100 | } | ||
diff --git a/libraries/evas/src/modules/loaders/Makefile.in b/libraries/evas/src/modules/loaders/Makefile.in index 2120a33..454dcd8 100644 --- a/libraries/evas/src/modules/loaders/Makefile.in +++ b/libraries/evas/src/modules/loaders/Makefile.in | |||
@@ -49,7 +49,7 @@ host_triplet = @host@ | |||
49 | @BUILD_LOADER_WBMP_TRUE@@EVAS_STATIC_BUILD_WBMP_FALSE@am__append_14 = wbmp | 49 | @BUILD_LOADER_WBMP_TRUE@@EVAS_STATIC_BUILD_WBMP_FALSE@am__append_14 = wbmp |
50 | @BUILD_LOADER_XPM_TRUE@@EVAS_STATIC_BUILD_XPM_FALSE@am__append_15 = xpm | 50 | @BUILD_LOADER_XPM_TRUE@@EVAS_STATIC_BUILD_XPM_FALSE@am__append_15 = xpm |
51 | subdir = src/modules/loaders | 51 | subdir = src/modules/loaders |
52 | DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in TODO | 52 | DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in |
53 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 | 53 | ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 |
54 | am__aclocal_m4_deps = $(top_srcdir)/m4/efl_attribute.m4 \ | 54 | am__aclocal_m4_deps = $(top_srcdir)/m4/efl_attribute.m4 \ |
55 | $(top_srcdir)/m4/efl_coverage.m4 \ | 55 | $(top_srcdir)/m4/efl_coverage.m4 \ |
@@ -222,8 +222,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
222 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 222 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
223 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 223 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
224 | PKG_CONFIG = @PKG_CONFIG@ | 224 | PKG_CONFIG = @PKG_CONFIG@ |
225 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
226 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
227 | PNG_CFLAGS = @PNG_CFLAGS@ | 225 | PNG_CFLAGS = @PNG_CFLAGS@ |
228 | PNG_LIBS = @PNG_LIBS@ | 226 | PNG_LIBS = @PNG_LIBS@ |
229 | RANLIB = @RANLIB@ | 227 | RANLIB = @RANLIB@ |
@@ -240,6 +238,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
240 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 238 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
241 | VERSION = @VERSION@ | 239 | VERSION = @VERSION@ |
242 | VMAJ = @VMAJ@ | 240 | VMAJ = @VMAJ@ |
241 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
242 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
243 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 243 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
244 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 244 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
245 | XCB_CFLAGS = @XCB_CFLAGS@ | 245 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -321,6 +321,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
321 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 321 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
322 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 322 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
323 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 323 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
324 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
325 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
326 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
327 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
324 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 328 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
325 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 329 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
326 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 330 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/TODO b/libraries/evas/src/modules/loaders/TODO deleted file mode 100644 index 3b82543..0000000 --- a/libraries/evas/src/modules/loaders/TODO +++ /dev/null | |||
@@ -1,5 +0,0 @@ | |||
1 | DONE -> bmp tga ico | ||
2 | id3 gz bz2 <- extraction loaders | ||
3 | lbm <- aaah amiga days | ||
4 | ani <- why> | ||
5 | |||
diff --git a/libraries/evas/src/modules/loaders/bmp/Makefile.in b/libraries/evas/src/modules/loaders/bmp/Makefile.in index f2c3e20..943fb74 100644 --- a/libraries/evas/src/modules/loaders/bmp/Makefile.in +++ b/libraries/evas/src/modules/loaders/bmp/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c b/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c index 38e3680..6d15783 100644 --- a/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c +++ b/libraries/evas/src/modules/loaders/bmp/evas_image_load_bmp.c | |||
@@ -21,50 +21,91 @@ static Evas_Image_Load_Func evas_image_load_bmp_func = | |||
21 | EINA_TRUE, | 21 | EINA_TRUE, |
22 | evas_image_load_file_head_bmp, | 22 | evas_image_load_file_head_bmp, |
23 | evas_image_load_file_data_bmp, | 23 | evas_image_load_file_data_bmp, |
24 | NULL | 24 | NULL, |
25 | EINA_FALSE | ||
25 | }; | 26 | }; |
26 | 27 | ||
27 | static int | 28 | static Eina_Bool |
28 | read_short(FILE *file, short *ret) | 29 | read_short(unsigned char *map, size_t length, size_t *position, short *ret) |
29 | { | 30 | { |
30 | unsigned char b[2]; | 31 | unsigned char b[2]; |
31 | if (fread(b, sizeof(unsigned char), 2, file) != 2) return 0; | 32 | |
33 | if (*position + 2 > length) return EINA_FALSE; | ||
34 | b[0] = map[(*position)++]; | ||
35 | b[1] = map[(*position)++]; | ||
32 | *ret = (b[1] << 8) | b[0]; | 36 | *ret = (b[1] << 8) | b[0]; |
33 | return 1; | 37 | return EINA_TRUE; |
34 | } | 38 | } |
35 | 39 | ||
36 | static int | 40 | static Eina_Bool |
37 | read_ushort(FILE *file, unsigned short *ret) | 41 | read_ushort(unsigned char *map, size_t length, size_t *position, unsigned short *ret) |
38 | { | 42 | { |
39 | unsigned char b[2]; | 43 | unsigned char b[2]; |
40 | if (fread(b, sizeof(unsigned char), 2, file) != 2) return 0; | 44 | |
45 | if (*position + 2 > length) return EINA_FALSE; | ||
46 | b[0] = map[(*position)++]; | ||
47 | b[1] = map[(*position)++]; | ||
41 | *ret = (b[1] << 8) | b[0]; | 48 | *ret = (b[1] << 8) | b[0]; |
42 | return 1; | 49 | return EINA_TRUE; |
43 | } | 50 | } |
44 | 51 | ||
45 | static int | 52 | static Eina_Bool |
46 | read_int(FILE *file, int *ret) | 53 | read_int(unsigned char *map, size_t length, size_t *position, int *ret) |
47 | { | 54 | { |
48 | unsigned char b[4]; | 55 | unsigned char b[4]; |
49 | if (fread(b, sizeof(unsigned char), 4, file) != 4) return 0; | 56 | int i; |
57 | |||
58 | if (*position + 4 > length) return EINA_FALSE; | ||
59 | for (i = 0; i < 4; i++) | ||
60 | b[i] = map[(*position)++]; | ||
50 | *ret = ARGB_JOIN(b[3], b[2], b[1], b[0]); | 61 | *ret = ARGB_JOIN(b[3], b[2], b[1], b[0]); |
51 | return 1; | 62 | return EINA_TRUE; |
52 | } | 63 | } |
53 | 64 | ||
54 | static int | 65 | static Eina_Bool |
55 | read_uint(FILE *file, unsigned int *ret) | 66 | read_uint(unsigned char *map, size_t length, size_t *position, unsigned int *ret) |
56 | { | 67 | { |
57 | unsigned char b[4]; | 68 | unsigned char b[4]; |
58 | if (fread(b, sizeof(unsigned char), 4, file) != 4) return 0; | 69 | int i; |
70 | |||
71 | if (*position + 4 > length) return EINA_FALSE; | ||
72 | for (i = 0; i < 4; i++) | ||
73 | b[i] = map[(*position)++]; | ||
59 | *ret = ARGB_JOIN(b[3], b[2], b[1], b[0]); | 74 | *ret = ARGB_JOIN(b[3], b[2], b[1], b[0]); |
60 | return 1; | 75 | return EINA_TRUE; |
76 | } | ||
77 | |||
78 | static Eina_Bool | ||
79 | read_uchar(unsigned char *map, size_t length, size_t *position, unsigned char *ret) | ||
80 | { | ||
81 | if (*position + 1 > length) return EINA_FALSE; | ||
82 | *ret = map[(*position)++]; | ||
83 | return EINA_TRUE; | ||
84 | } | ||
85 | |||
86 | static Eina_Bool | ||
87 | read_skip(size_t length, size_t *position, int skip) | ||
88 | { | ||
89 | if (*position + skip > length) return EINA_FALSE; | ||
90 | *position += skip; | ||
91 | return EINA_TRUE; | ||
92 | } | ||
93 | |||
94 | static Eina_Bool | ||
95 | read_mem(unsigned char *map, size_t length, size_t *position, void *buffer, int size) | ||
96 | { | ||
97 | if (*position + size > length) return EINA_FALSE; | ||
98 | memcpy(buffer, map + *position, size); | ||
99 | *position += size; | ||
100 | return EINA_TRUE; | ||
61 | } | 101 | } |
62 | 102 | ||
63 | static Eina_Bool | 103 | static Eina_Bool |
64 | evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) | 104 | evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) |
65 | { | 105 | { |
66 | FILE *f; | 106 | Eina_File *f; |
67 | char buf[4096]; | 107 | void *map = NULL; |
108 | size_t position = 0; | ||
68 | char hasa = 0; | 109 | char hasa = 0; |
69 | int w = 0, h = 0, planes = 0, bit_count = 0, | 110 | int w = 0, h = 0, planes = 0, bit_count = 0, |
70 | image_size = 0, comp = 0, hdpi = 0, vdpi = 0, | 111 | image_size = 0, comp = 0, hdpi = 0, vdpi = 0, |
@@ -76,7 +117,7 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key | |||
76 | unsigned int bmpsize; | 117 | unsigned int bmpsize; |
77 | unsigned short res1, res2; | 118 | unsigned short res1, res2; |
78 | 119 | ||
79 | f = fopen(file, "rb"); | 120 | f = eina_file_open(file, 0); |
80 | if (!f) | 121 | if (!f) |
81 | { | 122 | { |
82 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 123 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
@@ -84,84 +125,85 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key | |||
84 | } | 125 | } |
85 | 126 | ||
86 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 127 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
87 | fseek(f, 0, SEEK_END); | 128 | fsize = eina_file_size_get(f); |
88 | fsize = ftell(f); | ||
89 | fseek(f, 0, SEEK_SET); | ||
90 | if (fsize < 2) goto close_file; | 129 | if (fsize < 2) goto close_file; |
91 | 130 | ||
92 | if (fread(buf, 2, 1, f) != 1) goto close_file; | 131 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); |
93 | if (strncmp(buf, "BM", 2)) goto close_file; // magic number | 132 | if (!map) goto close_file; |
133 | |||
134 | if (strncmp(map, "BM", 2)) goto close_file; // magic number | ||
135 | position += 2; | ||
94 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 136 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
95 | if (!read_uint(f, &bmpsize)) goto close_file; | 137 | if (!read_uint(map, fsize, &position, &bmpsize)) goto close_file; |
96 | if (!read_ushort(f, &res1)) goto close_file; | 138 | if (!read_ushort(map, fsize, &position, &res1)) goto close_file; |
97 | if (!read_ushort(f, &res2)) goto close_file; | 139 | if (!read_ushort(map, fsize, &position, &res2)) goto close_file; |
98 | if (!read_uint(f, &offset)) goto close_file; | 140 | if (!read_uint(map, fsize, &position, &offset)) goto close_file; |
99 | if (!read_uint(f, &head_size)) goto close_file; | 141 | if (!read_uint(map, fsize, &position, &head_size)) goto close_file; |
100 | if (head_size == 12) // OS/2 V1 + Windows 3.0 | 142 | if (head_size == 12) // OS/2 V1 + Windows 3.0 |
101 | { | 143 | { |
102 | short tmp; | 144 | short tmp; |
103 | 145 | ||
104 | if (!read_short(f, &tmp)) goto close_file; | 146 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
105 | w = tmp; // width | 147 | w = tmp; // width |
106 | if (!read_short(f, &tmp)) goto close_file; | 148 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
107 | h = tmp; // height | 149 | h = tmp; // height |
108 | if (!read_short(f, &tmp)) goto close_file; | 150 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
109 | planes = tmp; // must be 1 | 151 | planes = tmp; // must be 1 |
110 | if (!read_short(f, &tmp)) goto close_file; | 152 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
111 | bit_count = tmp; // bits per pixel: 1, 4, 8 & 24 | 153 | bit_count = tmp; // bits per pixel: 1, 4, 8 & 24 |
112 | } | 154 | } |
113 | else if (head_size == 64) // OS/2 V2 | 155 | else if (head_size == 64) // OS/2 V2 |
114 | { | 156 | { |
115 | short tmp; | 157 | short tmp; |
116 | int tmp2; | 158 | int tmp2; |
117 | 159 | ||
118 | if (!read_int(f, &tmp2)) goto close_file; | 160 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
119 | w = tmp2; // width | 161 | w = tmp2; // width |
120 | if (!read_int(f, &tmp2)) goto close_file; | 162 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
121 | h = tmp2; // height | 163 | h = tmp2; // height |
122 | if (!read_short(f, &tmp)) goto close_file; | 164 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
123 | planes = tmp; // must be 1 | 165 | planes = tmp; // must be 1 |
124 | if (!read_short(f, &tmp)) goto close_file; | 166 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
125 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 167 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
126 | if (!read_int(f, &tmp2)) goto close_file; | 168 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
127 | comp = tmp2; // compression method | 169 | comp = tmp2; // compression method |
128 | if (!read_int(f, &tmp2)) goto close_file; | 170 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
129 | image_size = tmp2; // bitmap data size | 171 | image_size = tmp2; // bitmap data size |
130 | if (!read_int(f, &tmp2)) goto close_file; | 172 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
131 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 173 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
132 | if (!read_int(f, &tmp2)) goto close_file; | 174 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
133 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 175 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
134 | if (!read_int(f, &tmp2)) goto close_file; | 176 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
135 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 177 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
136 | if (!read_int(f, &tmp2)) goto close_file; | 178 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
137 | important_colors = tmp2; // number of important colors - 0 if all | 179 | important_colors = tmp2; // number of important colors - 0 if all |
138 | if (fread(buf, 24, 1, f) != 1) goto close_file; // skip unused header | 180 | if (!read_skip(fsize, &position, 24)) goto close_file; // skip unused header |
139 | if (image_size == 0) image_size = fsize - offset; | 181 | if (image_size == 0) image_size = fsize - offset; |
140 | } | 182 | } |
141 | else if (head_size == 40) // Windows 3.0 + (v3) | 183 | else if (head_size == 40) // Windows 3.0 + (v3) |
142 | { | 184 | { |
143 | short tmp; | 185 | short tmp; |
144 | int tmp2; | 186 | int tmp2; |
145 | 187 | ||
146 | if (!read_int(f, &tmp2)) goto close_file; | 188 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
147 | w = tmp2; // width | 189 | w = tmp2; // width |
148 | if (!read_int(f, &tmp2)) goto close_file; | 190 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
149 | h = tmp2; // height | 191 | h = tmp2; // height |
150 | if (!read_short(f, &tmp)) goto close_file; | 192 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
151 | planes = tmp; // must be 1 | 193 | planes = tmp; // must be 1 |
152 | if (!read_short(f, &tmp)) goto close_file; | 194 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
153 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 195 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
154 | if (!read_int(f, &tmp2)) goto close_file; | 196 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
155 | comp = tmp2; // compression method | 197 | comp = tmp2; // compression method |
156 | if (!read_int(f, &tmp2)) goto close_file; | 198 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
157 | image_size = tmp2; // bitmap data size | 199 | image_size = tmp2; // bitmap data size |
158 | if (!read_int(f, &tmp2)) goto close_file; | 200 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
159 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 201 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
160 | if (!read_int(f, &tmp2)) goto close_file; | 202 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
161 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 203 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
162 | if (!read_int(f, &tmp2)) goto close_file; | 204 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
163 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 205 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
164 | if (!read_int(f, &tmp2)) goto close_file; | 206 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
165 | important_colors = tmp2; // number of important colors - 0 if all | 207 | important_colors = tmp2; // number of important colors - 0 if all |
166 | if (image_size == 0) image_size = fsize - offset; | 208 | if (image_size == 0) image_size = fsize - offset; |
167 | if ((comp == 0) && (bit_count == 32)) hasa = 1; // GIMP seems to store it this way | 209 | if ((comp == 0) && (bit_count == 32)) hasa = 1; // GIMP seems to store it this way |
@@ -170,37 +212,37 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key | |||
170 | { | 212 | { |
171 | short tmp; | 213 | short tmp; |
172 | int tmp2; | 214 | int tmp2; |
173 | 215 | ||
174 | if (!read_int(f, &tmp2)) goto close_file; | 216 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
175 | w = tmp2; // width | 217 | w = tmp2; // width |
176 | if (!read_int(f, &tmp2)) goto close_file; | 218 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
177 | h = tmp2; // height | 219 | h = tmp2; // height |
178 | if (!read_short(f, &tmp)) goto close_file; | 220 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
179 | planes = tmp; // must be 1 | 221 | planes = tmp; // must be 1 |
180 | if (!read_short(f, &tmp)) goto close_file; | 222 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
181 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 223 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
182 | if (!read_int(f, &tmp2)) goto close_file; | 224 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
183 | comp = tmp2; // compression method | 225 | comp = tmp2; // compression method |
184 | if (!read_int(f, &tmp2)) goto close_file; | 226 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
185 | image_size = tmp2; // bitmap data size | 227 | image_size = tmp2; // bitmap data size |
186 | if (!read_int(f, &tmp2)) goto close_file; | 228 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
187 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 229 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
188 | if (!read_int(f, &tmp2)) goto close_file; | 230 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
189 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 231 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
190 | if (!read_int(f, &tmp2)) goto close_file; | 232 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
191 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 233 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
192 | if (!read_int(f, &tmp2)) goto close_file; | 234 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
193 | important_colors = tmp2; // number of important colors - 0 if all | 235 | important_colors = tmp2; // number of important colors - 0 if all |
194 | if (!read_int(f, &tmp2)) goto close_file; | 236 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
195 | rmask = tmp2; // red mask | 237 | rmask = tmp2; // red mask |
196 | if (!read_int(f, &tmp2)) goto close_file; | 238 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
197 | gmask = tmp2; // green mask | 239 | gmask = tmp2; // green mask |
198 | if (!read_int(f, &tmp2)) goto close_file; | 240 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
199 | bmask = tmp2; // blue mask | 241 | bmask = tmp2; // blue mask |
200 | if (!read_int(f, &tmp2)) goto close_file; | 242 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
201 | amask = tmp2; // alpha mask | 243 | amask = tmp2; // alpha mask |
202 | if (fread(buf, 36, 1, f) != 1) goto close_file; // skip unused cie | 244 | if (!read_skip(fsize, &position, 36)) goto close_file; // skip unused cie |
203 | if (fread(buf, 12, 1, f) != 1) goto close_file; // skip unused gamma | 245 | if (!read_skip(fsize, &position, 12)) goto close_file; // skip unused gamma |
204 | if (image_size == 0) image_size = fsize - offset; | 246 | if (image_size == 0) image_size = fsize - offset; |
205 | if ((amask) && (bit_count == 32)) hasa = 1; | 247 | if ((amask) && (bit_count == 32)) hasa = 1; |
206 | } | 248 | } |
@@ -208,38 +250,38 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key | |||
208 | { | 250 | { |
209 | short tmp; | 251 | short tmp; |
210 | int tmp2; | 252 | int tmp2; |
211 | 253 | ||
212 | if (!read_int(f, &tmp2)) goto close_file; | 254 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
213 | w = tmp2; // width | 255 | w = tmp2; // width |
214 | if (!read_int(f, &tmp2)) goto close_file; | 256 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
215 | h = tmp2; // height | 257 | h = tmp2; // height |
216 | if (!read_short(f, &tmp)) goto close_file; | 258 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
217 | planes = tmp; // must be 1 | 259 | planes = tmp; // must be 1 |
218 | if (!read_short(f, &tmp)) goto close_file; | 260 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
219 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 261 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
220 | if (!read_int(f, &tmp2)) goto close_file; | 262 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
221 | comp = tmp2; // compression method | 263 | comp = tmp2; // compression method |
222 | if (!read_int(f, &tmp2)) goto close_file; | 264 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
223 | image_size = tmp2; // bitmap data size | 265 | image_size = tmp2; // bitmap data size |
224 | if (!read_int(f, &tmp2)) goto close_file; | 266 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
225 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 267 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
226 | if (!read_int(f, &tmp2)) goto close_file; | 268 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
227 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 269 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
228 | if (!read_int(f, &tmp2)) goto close_file; | 270 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
229 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 271 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
230 | if (!read_int(f, &tmp2)) goto close_file; | 272 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
231 | important_colors = tmp2; // number of important colors - 0 if all | 273 | important_colors = tmp2; // number of important colors - 0 if all |
232 | if (!read_int(f, &tmp2)) goto close_file; | 274 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
233 | rmask = tmp2; // red mask | 275 | rmask = tmp2; // red mask |
234 | if (!read_int(f, &tmp2)) goto close_file; | 276 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
235 | gmask = tmp2; // green mask | 277 | gmask = tmp2; // green mask |
236 | if (!read_int(f, &tmp2)) goto close_file; | 278 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
237 | bmask = tmp2; // blue mask | 279 | bmask = tmp2; // blue mask |
238 | if (!read_int(f, &tmp2)) goto close_file; | 280 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
239 | amask = tmp2; // alpha mask | 281 | amask = tmp2; // alpha mask |
240 | if (fread(buf, 36, 1, f) != 1) goto close_file; // skip unused cie | 282 | if (!read_skip(fsize, &position, 36)) goto close_file; // skip unused cie |
241 | if (fread(buf, 12, 1, f) != 1) goto close_file; // skip unused gamma | 283 | if (!read_skip(fsize, &position, 12)) goto close_file; // skip unused gamma |
242 | if (fread(buf, 16, 1, f) != 1) goto close_file; // skip others | 284 | if (!read_skip(fsize, &position, 16)) goto close_file; // skip others |
243 | if (image_size == 0) image_size = fsize - offset; | 285 | if (image_size == 0) image_size = fsize - offset; |
244 | if ((amask) && (bit_count == 32)) hasa = 1; | 286 | if ((amask) && (bit_count == 32)) hasa = 1; |
245 | } | 287 | } |
@@ -251,7 +293,7 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key | |||
251 | h = -h; | 293 | h = -h; |
252 | right_way_up = 1; | 294 | right_way_up = 1; |
253 | } | 295 | } |
254 | 296 | ||
255 | if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || | 297 | if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || |
256 | IMG_TOO_BIG(w, h)) | 298 | IMG_TOO_BIG(w, h)) |
257 | { | 299 | { |
@@ -327,21 +369,24 @@ evas_image_load_file_head_bmp(Image_Entry *ie, const char *file, const char *key | |||
327 | ie->w = w; | 369 | ie->w = w; |
328 | ie->h = h; | 370 | ie->h = h; |
329 | if (hasa) ie->flags.alpha = 1; | 371 | if (hasa) ie->flags.alpha = 1; |
330 | 372 | ||
331 | fclose(f); | 373 | eina_file_map_free(f, map); |
374 | eina_file_close(f); | ||
332 | *error = EVAS_LOAD_ERROR_NONE; | 375 | *error = EVAS_LOAD_ERROR_NONE; |
333 | return EINA_TRUE; | 376 | return EINA_TRUE; |
334 | 377 | ||
335 | close_file: | 378 | close_file: |
336 | fclose(f); | 379 | if (map) eina_file_map_free(f, map); |
380 | eina_file_close(f); | ||
337 | return EINA_FALSE; | 381 | return EINA_FALSE; |
338 | } | 382 | } |
339 | 383 | ||
340 | static Eina_Bool | 384 | static Eina_Bool |
341 | evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) | 385 | evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) |
342 | { | 386 | { |
343 | FILE *f; | 387 | Eina_File *f; |
344 | char buf[4096]; | 388 | void *map = NULL; |
389 | size_t position = 0; | ||
345 | unsigned char *buffer = NULL, *buffer_end = NULL, *p; | 390 | unsigned char *buffer = NULL, *buffer_end = NULL, *p; |
346 | char hasa = 0; | 391 | char hasa = 0; |
347 | int x = 0, y = 0, w = 0, h = 0, planes = 0, bit_count = 0, image_size = 0, | 392 | int x = 0, y = 0, w = 0, h = 0, planes = 0, bit_count = 0, image_size = 0, |
@@ -361,96 +406,96 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
361 | int row_size = 0; /* Row size is rounded up to a multiple of 4bytes */ | 406 | int row_size = 0; /* Row size is rounded up to a multiple of 4bytes */ |
362 | int read_line = 0; /* total read line */ | 407 | int read_line = 0; /* total read line */ |
363 | 408 | ||
364 | 409 | f = eina_file_open(file, 0); | |
365 | f = fopen(file, "rb"); | ||
366 | if (!f) | 410 | if (!f) |
367 | { | 411 | { |
368 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 412 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
369 | return EINA_FALSE; | 413 | return EINA_FALSE; |
370 | } | 414 | } |
371 | 415 | ||
372 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 416 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
373 | fseek(f, 0, SEEK_END); | 417 | fsize = eina_file_size_get(f); |
374 | fsize = ftell(f); | ||
375 | fseek(f, 0, SEEK_SET); | ||
376 | if (fsize < 2) goto close_file; | 418 | if (fsize < 2) goto close_file; |
419 | |||
420 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); | ||
421 | if (!map) goto close_file; | ||
377 | 422 | ||
378 | if (fread(buf, 2, 1, f) != 1) goto close_file; | 423 | if (strncmp(map, "BM", 2)) goto close_file; // magic number |
379 | if (strncmp(buf, "BM", 2)) goto close_file; // magic number | 424 | position += 2; |
380 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 425 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
381 | if (!read_uint(f, &bmpsize)) goto close_file; | 426 | if (!read_uint(map, fsize, &position, &bmpsize)) goto close_file; |
382 | if (!read_ushort(f, &res1)) goto close_file; | 427 | if (!read_ushort(map, fsize, &position, &res1)) goto close_file; |
383 | if (!read_ushort(f, &res2)) goto close_file; | 428 | if (!read_ushort(map, fsize, &position, &res2)) goto close_file; |
384 | if (!read_uint(f, &offset)) goto close_file; | 429 | if (!read_uint(map, fsize, &position, &offset)) goto close_file; |
385 | if (!read_uint(f, &head_size)) goto close_file; | 430 | if (!read_uint(map, fsize, &position, &head_size)) goto close_file; |
386 | image_size = fsize - offset; | 431 | image_size = fsize - offset; |
387 | if (image_size < 1) goto close_file; | 432 | if (image_size < 1) goto close_file; |
388 | 433 | ||
389 | if (head_size == 12) // OS/2 V1 + Windows 3.0 | 434 | if (head_size == 12) // OS/2 V1 + Windows 3.0 |
390 | { | 435 | { |
391 | short tmp; | 436 | short tmp; |
392 | 437 | ||
393 | if (!read_short(f, &tmp)) goto close_file; | 438 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
394 | w = tmp; // width | 439 | w = tmp; // width |
395 | if (!read_short(f, &tmp)) goto close_file; | 440 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
396 | h = tmp; // height | 441 | h = tmp; // height |
397 | if (!read_short(f, &tmp)) goto close_file; | 442 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
398 | planes = tmp; // must be 1 | 443 | planes = tmp; // must be 1 |
399 | if (!read_short(f, &tmp)) goto close_file; | 444 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
400 | bit_count = tmp; // bits per pixel: 1, 4, 8 & 24 | 445 | bit_count = tmp; // bits per pixel: 1, 4, 8 & 24 |
401 | } | 446 | } |
402 | else if (head_size == 64) // OS/2 V2 | 447 | else if (head_size == 64) // OS/2 V2 |
403 | { | 448 | { |
404 | short tmp; | 449 | short tmp; |
405 | int tmp2; | 450 | int tmp2; |
406 | 451 | ||
407 | if (!read_int(f, &tmp2)) goto close_file; | 452 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
408 | w = tmp2; // width | 453 | w = tmp2; // width |
409 | if (!read_int(f, &tmp2)) goto close_file; | 454 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
410 | h = tmp2; // height | 455 | h = tmp2; // height |
411 | if (!read_short(f, &tmp)) goto close_file; | 456 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
412 | planes = tmp; // must be 1 | 457 | planes = tmp; // must be 1 |
413 | if (!read_short(f, &tmp)) goto close_file; | 458 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
414 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 459 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
415 | if (!read_int(f, &tmp2)) goto close_file; | 460 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
416 | comp = tmp2; // compression method | 461 | comp = tmp2; // compression method |
417 | if (!read_int(f, &tmp2)) goto close_file; | 462 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
418 | image_size = tmp2; // bitmap data size | 463 | image_size = tmp2; // bitmap data size |
419 | if (!read_int(f, &tmp2)) goto close_file; | 464 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
420 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 465 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
421 | if (!read_int(f, &tmp2)) goto close_file; | 466 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
422 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 467 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
423 | if (!read_int(f, &tmp2)) goto close_file; | 468 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
424 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 469 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
425 | if (!read_int(f, &tmp2)) goto close_file; | 470 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
426 | important_colors = tmp2; // number of important colors - 0 if all | 471 | important_colors = tmp2; // number of important colors - 0 if all |
427 | if (fread(buf, 24, 1, f) != 1) goto close_file; // skip unused header | 472 | if (!read_skip(fsize, &position, 24)) goto close_file; // skip unused header |
428 | if (image_size == 0) image_size = fsize - offset; | 473 | if (image_size == 0) image_size = fsize - offset; |
429 | } | 474 | } |
430 | else if (head_size == 40) // Windows 3.0 + (v3) | 475 | else if (head_size == 40) // Windows 3.0 + (v3) |
431 | { | 476 | { |
432 | short tmp; | 477 | short tmp; |
433 | int tmp2; | 478 | int tmp2; |
434 | 479 | ||
435 | if (!read_int(f, &tmp2)) goto close_file; | 480 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
436 | w = tmp2; // width | 481 | w = tmp2; // width |
437 | if (!read_int(f, &tmp2)) goto close_file; | 482 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
438 | h = tmp2; // height | 483 | h = tmp2; // height |
439 | if (!read_short(f, &tmp)) goto close_file; | 484 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
440 | planes = tmp; // must be 1 | 485 | planes = tmp; // must be 1 |
441 | if (!read_short(f, &tmp)) goto close_file; | 486 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
442 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 487 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
443 | if (!read_int(f, &tmp2)) goto close_file; | 488 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
444 | comp = tmp2; // compression method | 489 | comp = tmp2; // compression method |
445 | if (!read_int(f, &tmp2)) goto close_file; | 490 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
446 | image_size = tmp2; // bitmap data size | 491 | image_size = tmp2; // bitmap data size |
447 | if (!read_int(f, &tmp2)) goto close_file; | 492 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
448 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 493 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
449 | if (!read_int(f, &tmp2)) goto close_file; | 494 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
450 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 495 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
451 | if (!read_int(f, &tmp2)) goto close_file; | 496 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
452 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 497 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
453 | if (!read_int(f, &tmp2)) goto close_file; | 498 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
454 | important_colors = tmp2; // number of important colors - 0 if all | 499 | important_colors = tmp2; // number of important colors - 0 if all |
455 | if (image_size == 0) image_size = fsize - offset; | 500 | if (image_size == 0) image_size = fsize - offset; |
456 | if ((comp == 0) && (bit_count == 32)) hasa = 1; // GIMP seems to store it this way | 501 | if ((comp == 0) && (bit_count == 32)) hasa = 1; // GIMP seems to store it this way |
@@ -459,37 +504,37 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
459 | { | 504 | { |
460 | short tmp; | 505 | short tmp; |
461 | int tmp2; | 506 | int tmp2; |
462 | 507 | ||
463 | if (!read_int(f, &tmp2)) goto close_file; | 508 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
464 | w = tmp2; // width | 509 | w = tmp2; // width |
465 | if (!read_int(f, &tmp2)) goto close_file; | 510 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
466 | h = tmp2; // height | 511 | h = tmp2; // height |
467 | if (!read_short(f, &tmp)) goto close_file; | 512 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
468 | planes = tmp; // must be 1 | 513 | planes = tmp; // must be 1 |
469 | if (!read_short(f, &tmp)) goto close_file; | 514 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
470 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 515 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
471 | if (!read_int(f, &tmp2)) goto close_file; | 516 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
472 | comp = tmp2; // compression method | 517 | comp = tmp2; // compression method |
473 | if (!read_int(f, &tmp2)) goto close_file; | 518 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
474 | image_size = tmp2; // bitmap data size | 519 | image_size = tmp2; // bitmap data size |
475 | if (!read_int(f, &tmp2)) goto close_file; | 520 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
476 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 521 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
477 | if (!read_int(f, &tmp2)) goto close_file; | 522 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
478 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 523 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
479 | if (!read_int(f, &tmp2)) goto close_file; | 524 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
480 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 525 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
481 | if (!read_int(f, &tmp2)) goto close_file; | 526 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
482 | important_colors = tmp2; // number of important colors - 0 if all | 527 | important_colors = tmp2; // number of important colors - 0 if all |
483 | if (!read_int(f, &tmp2)) goto close_file; | 528 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
484 | rmask = tmp2; // red mask | 529 | rmask = tmp2; // red mask |
485 | if (!read_int(f, &tmp2)) goto close_file; | 530 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
486 | gmask = tmp2; // green mask | 531 | gmask = tmp2; // green mask |
487 | if (!read_int(f, &tmp2)) goto close_file; | 532 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
488 | bmask = tmp2; // blue mask | 533 | bmask = tmp2; // blue mask |
489 | if (!read_int(f, &tmp2)) goto close_file; | 534 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
490 | amask = tmp2; // alpha mask | 535 | amask = tmp2; // alpha mask |
491 | if (fread(buf, 36, 1, f) != 1) goto close_file; // skip unused cie | 536 | if (!read_skip(fsize, &position, 36)) goto close_file; // skip unused cie |
492 | if (fread(buf, 12, 1, f) != 1) goto close_file; // skip unused gamma | 537 | if (!read_skip(fsize, &position, 12)) goto close_file; // skip unused gamma |
493 | if (image_size == 0) image_size = fsize - offset; | 538 | if (image_size == 0) image_size = fsize - offset; |
494 | if ((amask) && (bit_count == 32)) hasa = 1; | 539 | if ((amask) && (bit_count == 32)) hasa = 1; |
495 | } | 540 | } |
@@ -497,38 +542,38 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
497 | { | 542 | { |
498 | short tmp; | 543 | short tmp; |
499 | int tmp2; | 544 | int tmp2; |
500 | 545 | ||
501 | if (!read_int(f, &tmp2)) goto close_file; | 546 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
502 | w = tmp2; // width | 547 | w = tmp2; // width |
503 | if (!read_int(f, &tmp2)) goto close_file; | 548 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
504 | h = tmp2; // height | 549 | h = tmp2; // height |
505 | if (!read_short(f, &tmp)) goto close_file; | 550 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
506 | planes = tmp; // must be 1 | 551 | planes = tmp; // must be 1 |
507 | if (!read_short(f, &tmp)) goto close_file; | 552 | if (!read_short(map, fsize, &position, &tmp)) goto close_file; |
508 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 | 553 | bit_count = tmp; // bits per pixel: 1, 4, 8, 16, 24 & 32 |
509 | if (!read_int(f, &tmp2)) goto close_file; | 554 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
510 | comp = tmp2; // compression method | 555 | comp = tmp2; // compression method |
511 | if (!read_int(f, &tmp2)) goto close_file; | 556 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
512 | image_size = tmp2; // bitmap data size | 557 | image_size = tmp2; // bitmap data size |
513 | if (!read_int(f, &tmp2)) goto close_file; | 558 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
514 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter | 559 | hdpi = (tmp2 * 254) / 10000; // horizontal pixels/meter |
515 | if (!read_int(f, &tmp2)) goto close_file; | 560 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
516 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter | 561 | vdpi = (tmp2 * 254) / 10000; // vertical pixles/meter |
517 | if (!read_int(f, &tmp2)) goto close_file; | 562 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
518 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) | 563 | palette_size = tmp2; // number of palette colors power (2^n - so 0 - 8) |
519 | if (!read_int(f, &tmp2)) goto close_file; | 564 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
520 | important_colors = tmp2; // number of important colors - 0 if all | 565 | important_colors = tmp2; // number of important colors - 0 if all |
521 | if (!read_int(f, &tmp2)) goto close_file; | 566 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
522 | rmask = tmp2; // red mask | 567 | rmask = tmp2; // red mask |
523 | if (!read_int(f, &tmp2)) goto close_file; | 568 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
524 | gmask = tmp2; // green mask | 569 | gmask = tmp2; // green mask |
525 | if (!read_int(f, &tmp2)) goto close_file; | 570 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
526 | bmask = tmp2; // blue mask | 571 | bmask = tmp2; // blue mask |
527 | if (!read_int(f, &tmp2)) goto close_file; | 572 | if (!read_int(map, fsize, &position, &tmp2)) goto close_file; |
528 | amask = tmp2; // alpha mask | 573 | amask = tmp2; // alpha mask |
529 | if (fread(buf, 36, 1, f) != 1) goto close_file; // skip unused cie | 574 | if (!read_skip(fsize, &position, 36)) goto close_file; // skip unused cie |
530 | if (fread(buf, 12, 1, f) != 1) goto close_file; // skip unused gamma | 575 | if (!read_skip(fsize, &position, 12)) goto close_file; // skip unused gamma |
531 | if (fread(buf, 16, 1, f) != 1) goto close_file; // skip others | 576 | if (!read_skip(fsize, &position, 16)) goto close_file; // skip others |
532 | if (image_size == 0) image_size = fsize - offset; | 577 | if (image_size == 0) image_size = fsize - offset; |
533 | if ((amask) && (bit_count == 32)) hasa = 1; | 578 | if ((amask) && (bit_count == 32)) hasa = 1; |
534 | } | 579 | } |
@@ -605,17 +650,17 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
605 | pal = alloca(256 * 4); | 650 | pal = alloca(256 * 4); |
606 | for (i = 0; i < pal_num; i++) | 651 | for (i = 0; i < pal_num; i++) |
607 | { | 652 | { |
608 | if (fread(&b, 1, 1, f) != 1) goto close_file; | 653 | if (!read_uchar(map, fsize, &position, &b)) goto close_file; |
609 | if (fread(&g, 1, 1, f) != 1) goto close_file; | 654 | if (!read_uchar(map, fsize, &position, &g)) goto close_file; |
610 | if (fread(&r, 1, 1, f) != 1) goto close_file; | 655 | if (!read_uchar(map, fsize, &position, &r)) goto close_file; |
611 | if ((head_size != 12) /*&& (palette_size != 0)*/) | 656 | if ((head_size != 12) /*&& (palette_size != 0)*/) |
612 | { // OS/2 V1 doesn't do the pad byte | 657 | { // OS/2 V1 doesn't do the pad byte |
613 | if (fread(&a, 1, 1, f) != 1) goto close_file; | 658 | if (!read_uchar(map, fsize, &position, &a)) goto close_file; |
614 | } | 659 | } |
615 | a = 0xff; // fillin a as solid for paletted images | 660 | a = 0xff; // fillin a as solid for paletted images |
616 | pal[i] = ARGB_JOIN(a, r, g, b); | 661 | pal[i] = ARGB_JOIN(a, r, g, b); |
617 | } | 662 | } |
618 | fseek(f, offset, SEEK_SET); | 663 | position = offset; |
619 | 664 | ||
620 | if ((scale_ratio == 1) || (comp !=0)) | 665 | if ((scale_ratio == 1) || (comp !=0)) |
621 | buffer = malloc(image_size + 8); // add 8 for padding to avoid checks | 666 | buffer = malloc(image_size + 8); // add 8 for padding to avoid checks |
@@ -643,11 +688,11 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
643 | 688 | ||
644 | if ((scale_ratio == 1) || (comp !=0)) | 689 | if ((scale_ratio == 1) || (comp !=0)) |
645 | { | 690 | { |
646 | if (fread(buffer, image_size, 1, f) != 1) goto close_file; | 691 | if (!read_mem(map, fsize, &position, buffer, image_size)) goto close_file; |
647 | } | 692 | } |
648 | else | 693 | else |
649 | { | 694 | { |
650 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 695 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
651 | } | 696 | } |
652 | 697 | ||
653 | if (bit_count == 1) | 698 | if (bit_count == 1) |
@@ -715,8 +760,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
715 | read_line += scale_ratio; | 760 | read_line += scale_ratio; |
716 | if (read_line >= image_h) break; | 761 | if (read_line >= image_h) break; |
717 | 762 | ||
718 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 763 | position += row_size * (scale_ratio - 1); |
719 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 764 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
720 | p = buffer; | 765 | p = buffer; |
721 | buffer_end = buffer + row_size; | 766 | buffer_end = buffer + row_size; |
722 | } | 767 | } |
@@ -770,8 +815,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
770 | read_line += scale_ratio; | 815 | read_line += scale_ratio; |
771 | if (read_line >= image_h) break; | 816 | if (read_line >= image_h) break; |
772 | 817 | ||
773 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 818 | position += row_size * (scale_ratio - 1); |
774 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 819 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
775 | p = buffer; | 820 | p = buffer; |
776 | buffer_end = buffer + row_size; | 821 | buffer_end = buffer + row_size; |
777 | } | 822 | } |
@@ -960,8 +1005,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
960 | read_line += scale_ratio; | 1005 | read_line += scale_ratio; |
961 | if (read_line >= image_h) break; | 1006 | if (read_line >= image_h) break; |
962 | 1007 | ||
963 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 1008 | position += row_size * (scale_ratio - 1); |
964 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1009 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
965 | p = buffer; | 1010 | p = buffer; |
966 | buffer_end = buffer + row_size; | 1011 | buffer_end = buffer + row_size; |
967 | } | 1012 | } |
@@ -1088,7 +1133,7 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1088 | { | 1133 | { |
1089 | if (comp == 0) // no compression | 1134 | if (comp == 0) // no compression |
1090 | { | 1135 | { |
1091 | fseek(f, offset, SEEK_SET); | 1136 | position = offset; |
1092 | if (scale_ratio == 1) | 1137 | if (scale_ratio == 1) |
1093 | buffer = malloc(image_size + 8); // add 8 for padding to avoid checks | 1138 | buffer = malloc(image_size + 8); // add 8 for padding to avoid checks |
1094 | else | 1139 | else |
@@ -1106,11 +1151,11 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1106 | p = buffer; | 1151 | p = buffer; |
1107 | if (scale_ratio == 1) | 1152 | if (scale_ratio == 1) |
1108 | { | 1153 | { |
1109 | if (fread(buffer, image_size, 1, f) != 1) goto close_file; | 1154 | if (!read_mem(map, fsize, &position, buffer, image_size)) goto close_file; |
1110 | } | 1155 | } |
1111 | else | 1156 | else |
1112 | { | 1157 | { |
1113 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1158 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
1114 | } | 1159 | } |
1115 | if (bit_count == 16) | 1160 | if (bit_count == 16) |
1116 | { | 1161 | { |
@@ -1139,8 +1184,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1139 | read_line += scale_ratio; | 1184 | read_line += scale_ratio; |
1140 | if (read_line >= image_h) break; | 1185 | if (read_line >= image_h) break; |
1141 | 1186 | ||
1142 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 1187 | position += row_size * (scale_ratio - 1); |
1143 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1188 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
1144 | p = buffer; | 1189 | p = buffer; |
1145 | buffer_end = buffer + row_size; | 1190 | buffer_end = buffer + row_size; |
1146 | } | 1191 | } |
@@ -1173,8 +1218,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1173 | read_line += scale_ratio; | 1218 | read_line += scale_ratio; |
1174 | if (read_line >= image_h) break; | 1219 | if (read_line >= image_h) break; |
1175 | 1220 | ||
1176 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 1221 | position += row_size * (scale_ratio - 1); |
1177 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1222 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
1178 | p = buffer; | 1223 | p = buffer; |
1179 | buffer_end = buffer + row_size; | 1224 | buffer_end = buffer + row_size; |
1180 | } | 1225 | } |
@@ -1212,8 +1257,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1212 | read_line += scale_ratio; | 1257 | read_line += scale_ratio; |
1213 | if (read_line >= image_h) break; | 1258 | if (read_line >= image_h) break; |
1214 | 1259 | ||
1215 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 1260 | position += row_size * (scale_ratio - 1); |
1216 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1261 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
1217 | p = buffer; | 1262 | p = buffer; |
1218 | buffer_end = buffer + row_size; | 1263 | buffer_end = buffer + row_size; |
1219 | } | 1264 | } |
@@ -1230,7 +1275,7 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1230 | if (hasa) | 1275 | if (hasa) |
1231 | { | 1276 | { |
1232 | unsigned int *pixend = surface + (w * h); | 1277 | unsigned int *pixend = surface + (w * h); |
1233 | 1278 | ||
1234 | for (pix = surface; pix < pixend; pix++) | 1279 | for (pix = surface; pix < pixend; pix++) |
1235 | A_VAL(pix) = 0xff; | 1280 | A_VAL(pix) = 0xff; |
1236 | } | 1281 | } |
@@ -1241,11 +1286,11 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1241 | } | 1286 | } |
1242 | else if (comp == 3) // bit field | 1287 | else if (comp == 3) // bit field |
1243 | { | 1288 | { |
1244 | if (!read_uint(f, &rmask)) goto close_file; | 1289 | if (!read_uint(map, fsize, &position, &rmask)) goto close_file; |
1245 | if (!read_uint(f, &gmask)) goto close_file; | 1290 | if (!read_uint(map, fsize, &position, &gmask)) goto close_file; |
1246 | if (!read_uint(f, &bmask)) goto close_file; | 1291 | if (!read_uint(map, fsize, &position, &bmask)) goto close_file; |
1247 | 1292 | ||
1248 | fseek(f, offset, SEEK_SET); | 1293 | position = offset; |
1249 | if (scale_ratio == 1) | 1294 | if (scale_ratio == 1) |
1250 | buffer = malloc(image_size + 8); // add 8 for padding to avoid checks | 1295 | buffer = malloc(image_size + 8); // add 8 for padding to avoid checks |
1251 | else | 1296 | else |
@@ -1264,14 +1309,14 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1264 | p = buffer; | 1309 | p = buffer; |
1265 | if (scale_ratio == 1) | 1310 | if (scale_ratio == 1) |
1266 | { | 1311 | { |
1267 | if (fread(buffer, image_size, 1, f) != 1) goto close_file; | 1312 | if (!read_mem(map, fsize, &position, buffer, image_size)) goto close_file; |
1268 | } | 1313 | } |
1269 | else | 1314 | else |
1270 | { | 1315 | { |
1271 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1316 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; |
1272 | } | 1317 | } |
1273 | 1318 | ||
1274 | if ((bit_count == 16) && | 1319 | if ((bit_count == 16) && |
1275 | (rmask == 0xf800) && (gmask == 0x07e0) && (bmask == 0x001f) | 1320 | (rmask == 0xf800) && (gmask == 0x07e0) && (bmask == 0x001f) |
1276 | ) | 1321 | ) |
1277 | { | 1322 | { |
@@ -1299,8 +1344,9 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1299 | { | 1344 | { |
1300 | read_line += scale_ratio; | 1345 | read_line += scale_ratio; |
1301 | if (read_line >= image_h) break; | 1346 | if (read_line >= image_h) break; |
1302 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 1347 | |
1303 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1348 | position += row_size * (scale_ratio - 1); |
1349 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; | ||
1304 | p = buffer; | 1350 | p = buffer; |
1305 | buffer_end = buffer + row_size; | 1351 | buffer_end = buffer + row_size; |
1306 | } | 1352 | } |
@@ -1338,8 +1384,9 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1338 | { | 1384 | { |
1339 | read_line += scale_ratio; | 1385 | read_line += scale_ratio; |
1340 | if (read_line >= image_h) break; | 1386 | if (read_line >= image_h) break; |
1341 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 1387 | |
1342 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1388 | position += row_size * (scale_ratio - 1); |
1389 | if (!read_mem(map, fsize, &position, buffer_end, row_size)) goto close_file; | ||
1343 | p = buffer; | 1390 | p = buffer; |
1344 | buffer_end = buffer + row_size; | 1391 | buffer_end = buffer + row_size; |
1345 | } | 1392 | } |
@@ -1375,8 +1422,9 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1375 | { | 1422 | { |
1376 | read_line += scale_ratio; | 1423 | read_line += scale_ratio; |
1377 | if (read_line >= image_h) break; | 1424 | if (read_line >= image_h) break; |
1378 | fseek(f, row_size * (scale_ratio - 1), SEEK_CUR); | 1425 | |
1379 | if (fread(buffer, row_size, 1, f) != 1) goto close_file; | 1426 | position += row_size * (scale_ratio - 1); |
1427 | if (!read_mem(map, fsize, &position, buffer, row_size)) goto close_file; | ||
1380 | p = buffer; | 1428 | p = buffer; |
1381 | buffer_end = buffer + row_size; | 1429 | buffer_end = buffer + row_size; |
1382 | } | 1430 | } |
@@ -1404,10 +1452,12 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1404 | } | 1452 | } |
1405 | else | 1453 | else |
1406 | goto close_file; | 1454 | goto close_file; |
1407 | 1455 | ||
1408 | if (buffer) free(buffer); | 1456 | if (buffer) free(buffer); |
1409 | if (scale_surface) free(scale_surface); | 1457 | if (scale_surface) free(scale_surface); |
1410 | fclose(f); | 1458 | |
1459 | eina_file_map_free(f, map); | ||
1460 | eina_file_close(f); | ||
1411 | 1461 | ||
1412 | evas_common_image_premul(ie); | 1462 | evas_common_image_premul(ie); |
1413 | *error = EVAS_LOAD_ERROR_NONE; | 1463 | *error = EVAS_LOAD_ERROR_NONE; |
@@ -1416,7 +1466,8 @@ evas_image_load_file_data_bmp(Image_Entry *ie, const char *file, const char *key | |||
1416 | close_file: | 1466 | close_file: |
1417 | if (buffer) free(buffer); | 1467 | if (buffer) free(buffer); |
1418 | if (scale_surface) free(scale_surface); | 1468 | if (scale_surface) free(scale_surface); |
1419 | fclose(f); | 1469 | if (map) eina_file_map_free(f, map); |
1470 | eina_file_close(f); | ||
1420 | return EINA_FALSE; | 1471 | return EINA_FALSE; |
1421 | } | 1472 | } |
1422 | 1473 | ||
diff --git a/libraries/evas/src/modules/loaders/edb/Makefile.in b/libraries/evas/src/modules/loaders/edb/Makefile.in index 38c1fa2..87356b4 100644 --- a/libraries/evas/src/modules/loaders/edb/Makefile.in +++ b/libraries/evas/src/modules/loaders/edb/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/edb/evas_image_load_edb.c b/libraries/evas/src/modules/loaders/edb/evas_image_load_edb.c index 94b121e..521161f 100644 --- a/libraries/evas/src/modules/loaders/edb/evas_image_load_edb.c +++ b/libraries/evas/src/modules/loaders/edb/evas_image_load_edb.c | |||
@@ -16,7 +16,8 @@ static Evas_Image_Load_Func evas_image_load_edb_func = | |||
16 | EINA_TRUE, | 16 | EINA_TRUE, |
17 | evas_image_load_file_head_edb, | 17 | evas_image_load_file_head_edb, |
18 | evas_image_load_file_data_edb, | 18 | evas_image_load_file_data_edb, |
19 | NULL | 19 | NULL, |
20 | EINA_FALSE | ||
20 | }; | 21 | }; |
21 | 22 | ||
22 | static Eina_Bool | 23 | static Eina_Bool |
diff --git a/libraries/evas/src/modules/loaders/eet/Makefile.in b/libraries/evas/src/modules/loaders/eet/Makefile.in index 6a6c40e..25a30cf 100644 --- a/libraries/evas/src/modules/loaders/eet/Makefile.in +++ b/libraries/evas/src/modules/loaders/eet/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/eet/evas_image_load_eet.c b/libraries/evas/src/modules/loaders/eet/evas_image_load_eet.c index a187b9e..f86246a 100644 --- a/libraries/evas/src/modules/loaders/eet/evas_image_load_eet.c +++ b/libraries/evas/src/modules/loaders/eet/evas_image_load_eet.c | |||
@@ -16,7 +16,8 @@ Evas_Image_Load_Func evas_image_load_eet_func = | |||
16 | EINA_TRUE, | 16 | EINA_TRUE, |
17 | evas_image_load_file_head_eet, | 17 | evas_image_load_file_head_eet, |
18 | evas_image_load_file_data_eet, | 18 | evas_image_load_file_data_eet, |
19 | NULL | 19 | NULL, |
20 | EINA_FALSE | ||
20 | }; | 21 | }; |
21 | 22 | ||
22 | 23 | ||
diff --git a/libraries/evas/src/modules/loaders/generic/Makefile.in b/libraries/evas/src/modules/loaders/generic/Makefile.in index 65a0bac..dfd5294 100644 --- a/libraries/evas/src/modules/loaders/generic/Makefile.in +++ b/libraries/evas/src/modules/loaders/generic/Makefile.in | |||
@@ -232,8 +232,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
232 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 232 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
233 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 233 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
234 | PKG_CONFIG = @PKG_CONFIG@ | 234 | PKG_CONFIG = @PKG_CONFIG@ |
235 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
236 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
237 | PNG_CFLAGS = @PNG_CFLAGS@ | 235 | PNG_CFLAGS = @PNG_CFLAGS@ |
238 | PNG_LIBS = @PNG_LIBS@ | 236 | PNG_LIBS = @PNG_LIBS@ |
239 | RANLIB = @RANLIB@ | 237 | RANLIB = @RANLIB@ |
@@ -250,6 +248,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
250 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 248 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
251 | VERSION = @VERSION@ | 249 | VERSION = @VERSION@ |
252 | VMAJ = @VMAJ@ | 250 | VMAJ = @VMAJ@ |
251 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
252 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
253 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 253 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
254 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 254 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
255 | XCB_CFLAGS = @XCB_CFLAGS@ | 255 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -331,6 +331,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
331 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 331 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
332 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 332 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
333 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 333 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
334 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
335 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
336 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
337 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
334 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 338 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
335 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 339 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
336 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 340 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/generic/evas_image_load_generic.c b/libraries/evas/src/modules/loaders/generic/evas_image_load_generic.c index 88c189d..2bbfd3e 100644 --- a/libraries/evas/src/modules/loaders/generic/evas_image_load_generic.c +++ b/libraries/evas/src/modules/loaders/generic/evas_image_load_generic.c | |||
@@ -24,7 +24,8 @@ Evas_Image_Load_Func evas_image_load_generic_func = | |||
24 | EINA_TRUE, | 24 | EINA_TRUE, |
25 | evas_image_load_file_head_generic, | 25 | evas_image_load_file_head_generic, |
26 | evas_image_load_file_data_generic, | 26 | evas_image_load_file_data_generic, |
27 | NULL | 27 | NULL, |
28 | EINA_FALSE | ||
28 | }; | 29 | }; |
29 | 30 | ||
30 | static Eina_Bool | 31 | static Eina_Bool |
@@ -117,7 +118,7 @@ _load(Image_Entry *ie, const char *file, const char *key, int *error, Eina_Bool | |||
117 | int read_data = 0; | 118 | int read_data = 0; |
118 | char *tmpfname = NULL, *shmfname = NULL; | 119 | char *tmpfname = NULL, *shmfname = NULL; |
119 | DATA32 *body; | 120 | DATA32 *body; |
120 | FILE *f; | 121 | FILE *f = NULL; |
121 | 122 | ||
122 | libdir = _evas_module_libdir_get(); | 123 | libdir = _evas_module_libdir_get(); |
123 | cmd_len = strlen(libdir); | 124 | cmd_len = strlen(libdir); |
@@ -125,6 +126,7 @@ _load(Image_Entry *ie, const char *file, const char *key, int *error, Eina_Bool | |||
125 | img_loader = alloca(cmd_len + 1); | 126 | img_loader = alloca(cmd_len + 1); |
126 | strcpy(img_loader, libdir); | 127 | strcpy(img_loader, libdir); |
127 | strcat(img_loader, loader); | 128 | strcat(img_loader, loader); |
129 | |||
128 | // params excluding file, key and loadopts | 130 | // params excluding file, key and loadopts |
129 | cmd_len += 1024; | 131 | cmd_len += 1024; |
130 | cmd_len += strlen(file) * 2; | 132 | cmd_len += strlen(file) * 2; |
@@ -188,6 +190,8 @@ _load(Image_Entry *ie, const char *file, const char *key, int *error, Eina_Bool | |||
188 | // will interpret shell stuff and path hunt that will then exec the | 190 | // will interpret shell stuff and path hunt that will then exec the |
189 | // program itself that will dynamically link that will again | 191 | // program itself that will dynamically link that will again |
190 | // parse the arguments and finally do something... | 192 | // parse the arguments and finally do something... |
193 | if (access(decoders[try_count], X_OK)) continue; | ||
194 | |||
191 | strcpy(cmd, decoders[try_count]); | 195 | strcpy(cmd, decoders[try_count]); |
192 | strcat(cmd, " "); | 196 | strcat(cmd, " "); |
193 | // filename first arg | 197 | // filename first arg |
diff --git a/libraries/evas/src/modules/loaders/gif/Makefile.in b/libraries/evas/src/modules/loaders/gif/Makefile.in index 7fcd6a7..f32fcf4 100644 --- a/libraries/evas/src/modules/loaders/gif/Makefile.in +++ b/libraries/evas/src/modules/loaders/gif/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c b/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c index 976df0d..9cd6f6e 100644 --- a/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c +++ b/libraries/evas/src/modules/loaders/gif/evas_image_load_gif.c | |||
@@ -50,7 +50,8 @@ static Evas_Image_Load_Func evas_image_load_gif_func = | |||
50 | EINA_TRUE, | 50 | EINA_TRUE, |
51 | evas_image_load_file_head_gif, | 51 | evas_image_load_file_head_gif, |
52 | evas_image_load_file_data_gif, | 52 | evas_image_load_file_data_gif, |
53 | evas_image_load_frame_duration_gif | 53 | evas_image_load_frame_duration_gif, |
54 | EINA_FALSE | ||
54 | }; | 55 | }; |
55 | #define byte2_to_int(a,b) (((b)<<8)|(a)) | 56 | #define byte2_to_int(a,b) (((b)<<8)|(a)) |
56 | 57 | ||
diff --git a/libraries/evas/src/modules/loaders/ico/Makefile.in b/libraries/evas/src/modules/loaders/ico/Makefile.in index 5c26adf..f65ace0 100644 --- a/libraries/evas/src/modules/loaders/ico/Makefile.in +++ b/libraries/evas/src/modules/loaders/ico/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c b/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c index 17a7f7e..6e31191 100644 --- a/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c +++ b/libraries/evas/src/modules/loaders/ico/evas_image_load_ico.c | |||
@@ -19,32 +19,57 @@ static Evas_Image_Load_Func evas_image_load_ico_func = | |||
19 | EINA_TRUE, | 19 | EINA_TRUE, |
20 | evas_image_load_file_head_ico, | 20 | evas_image_load_file_head_ico, |
21 | evas_image_load_file_data_ico, | 21 | evas_image_load_file_data_ico, |
22 | NULL | 22 | NULL, |
23 | EINA_FALSE | ||
23 | }; | 24 | }; |
24 | 25 | ||
25 | static int | 26 | static Eina_Bool |
26 | read_ushort(FILE *file, unsigned short *ret) | 27 | read_ushort(unsigned char *map, size_t length, size_t *position, unsigned short *ret) |
27 | { | 28 | { |
28 | unsigned char b[2]; | 29 | unsigned char b[2]; |
29 | if (fread(b, sizeof(unsigned char), 2, file) != 2) return 0; | 30 | |
31 | if (*position + 2 > length) return EINA_FALSE; | ||
32 | b[0] = map[(*position)++]; | ||
33 | b[1] = map[(*position)++]; | ||
30 | *ret = (b[1] << 8) | b[0]; | 34 | *ret = (b[1] << 8) | b[0]; |
31 | return 1; | 35 | return EINA_TRUE; |
32 | } | 36 | } |
33 | 37 | ||
34 | static int | 38 | static Eina_Bool |
35 | read_uint(FILE *file, unsigned int *ret) | 39 | read_uint(unsigned char *map, size_t length, size_t *position, unsigned int *ret) |
36 | { | 40 | { |
37 | unsigned char b[4]; | 41 | unsigned char b[4]; |
38 | if (fread(b, sizeof(unsigned char), 4, file) != 4) return 0; | 42 | unsigned int i; |
43 | |||
44 | if (*position + 4 > length) return EINA_FALSE; | ||
45 | for (i = 0; i < 4; i++) | ||
46 | b[i] = map[(*position)++]; | ||
39 | *ret = ARGB_JOIN(b[3], b[2], b[1], b[0]); | 47 | *ret = ARGB_JOIN(b[3], b[2], b[1], b[0]); |
40 | return 1; | 48 | return EINA_TRUE; |
49 | } | ||
50 | |||
51 | static Eina_Bool | ||
52 | read_uchar(unsigned char *map, size_t length, size_t *position, unsigned char *ret) | ||
53 | { | ||
54 | if (*position + 1 > length) return EINA_FALSE; | ||
55 | *ret = map[(*position)++]; | ||
56 | return EINA_TRUE; | ||
57 | } | ||
58 | |||
59 | static Eina_Bool | ||
60 | read_mem(unsigned char *map, size_t length, size_t *position, void *buffer, int size) | ||
61 | { | ||
62 | if (*position + size > length) return EINA_FALSE; | ||
63 | memcpy(buffer, map + *position, size); | ||
64 | *position += size; | ||
65 | return EINA_TRUE; | ||
41 | } | 66 | } |
42 | 67 | ||
43 | enum | 68 | enum |
44 | { | 69 | { |
45 | SMALLEST, | 70 | SMALLEST, |
46 | BIGGEST, | 71 | BIGGEST, |
47 | SMALLER, | 72 | SMALLER, |
48 | BIGGER | 73 | BIGGER |
49 | }; | 74 | }; |
50 | 75 | ||
@@ -57,9 +82,11 @@ enum | |||
57 | static Eina_Bool | 82 | static Eina_Bool |
58 | evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key, int *error) | 83 | evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key, int *error) |
59 | { | 84 | { |
85 | Eina_File *f; | ||
86 | void *map = NULL; | ||
87 | size_t position = 0; | ||
60 | unsigned short word; | 88 | unsigned short word; |
61 | unsigned char byte; | 89 | unsigned char byte; |
62 | FILE *f; | ||
63 | int wanted_w = 0, wanted_h = 0, w, h, cols, i, planes = 0, | 90 | int wanted_w = 0, wanted_h = 0, w, h, cols, i, planes = 0, |
64 | hot_x = 0, hot_y = 0, bpp = 0, pdelta, search = -1, have_choice = 0, | 91 | hot_x = 0, hot_y = 0, bpp = 0, pdelta, search = -1, have_choice = 0, |
65 | hasa = 1; | 92 | hasa = 1; |
@@ -74,7 +101,7 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key | |||
74 | unsigned int bmoffset, bmsize; | 101 | unsigned int bmoffset, bmsize; |
75 | } chosen = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; | 102 | } chosen = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
76 | 103 | ||
77 | f = fopen(file, "rb"); | 104 | f = eina_file_open(file, EINA_FALSE); |
78 | if (!f) | 105 | if (!f) |
79 | { | 106 | { |
80 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 107 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
@@ -82,16 +109,17 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key | |||
82 | } | 109 | } |
83 | 110 | ||
84 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 111 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
85 | fseek(f, 0, SEEK_END); | 112 | fsize = eina_file_size_get(f); |
86 | fsize = ftell(f); | ||
87 | fseek(f, 0, SEEK_SET); | ||
88 | if (fsize < (6 + 16 + 40)) goto close_file; | 113 | if (fsize < (6 + 16 + 40)) goto close_file; |
89 | 114 | ||
115 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); | ||
116 | if (!map) goto close_file; | ||
117 | |||
90 | // key: | 118 | // key: |
91 | // NULL == highest res | 119 | // NULL == highest res |
92 | // biggest == highest res | 120 | // biggest == highest res |
93 | // smallest == lowest res | 121 | // smallest == lowest res |
94 | // | 122 | // |
95 | // smaller == next size SMALLER than load opts WxH (if possible) | 123 | // smaller == next size SMALLER than load opts WxH (if possible) |
96 | // bigger == next size BIGGER than load opts WxH (if possible) | 124 | // bigger == next size BIGGER than load opts WxH (if possible) |
97 | // more ? | 125 | // more ? |
@@ -103,10 +131,10 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key | |||
103 | wanted_h = ie->load_opts.h; | 131 | wanted_h = ie->load_opts.h; |
104 | search = SMALLER; | 132 | search = SMALLER; |
105 | } | 133 | } |
106 | 134 | ||
107 | if (!read_ushort(f, &reserved)) goto close_file; | 135 | if (!read_ushort(map, fsize, &position, &reserved)) goto close_file; |
108 | if (!read_ushort(f, &type)) goto close_file; | 136 | if (!read_ushort(map, fsize, &position, &type)) goto close_file; |
109 | if (!read_ushort(f, &count)) goto close_file; | 137 | if (!read_ushort(map, fsize, &position, &count)) goto close_file; |
110 | if (!((reserved == 0) && | 138 | if (!((reserved == 0) && |
111 | ((type == ICON) || (type == CURSOR)) && (count > 0))) | 139 | ((type == ICON) || (type == CURSOR)) && (count > 0))) |
112 | goto close_file; | 140 | goto close_file; |
@@ -141,24 +169,25 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key | |||
141 | } | 169 | } |
142 | for (i = 0; i < count; i++) | 170 | for (i = 0; i < count; i++) |
143 | { | 171 | { |
144 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 172 | unsigned char tw = 0, th = 0, tcols = 0; |
145 | w = byte; | 173 | if (!read_uchar(map, fsize, &position, &tw)) goto close_file; |
174 | w = tw; | ||
146 | if (w <= 0) w = 256; | 175 | if (w <= 0) w = 256; |
147 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 176 | if (!read_uchar(map, fsize, &position, &th)) goto close_file; |
148 | h = byte; | 177 | h = th; |
149 | if (h <= 0) h = 256; | 178 | if (h <= 0) h = 256; |
150 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 179 | if (!read_uchar(map, fsize, &position, &tcols)) goto close_file; |
151 | cols = byte; | 180 | cols = tcols; |
152 | if (cols <= 0) cols = 256; | 181 | if (cols <= 0) cols = 256; |
153 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 182 | if (!read_uchar(map, fsize, &position, &byte)) goto close_file; |
154 | if (!read_ushort(f, &word)) goto close_file; | 183 | if (!read_ushort(map, fsize, &position, &word)) goto close_file; |
155 | if (type == CURSOR) planes = word; | 184 | if (type == CURSOR) planes = word; |
156 | else hot_x = word; | 185 | else hot_x = word; |
157 | if (!read_ushort(f, &word)) goto close_file; | 186 | if (!read_ushort(map, fsize, &position, &word)) goto close_file; |
158 | if (type == CURSOR) bpp = word; | 187 | if (type == CURSOR) bpp = word; |
159 | else hot_y = word; | 188 | else hot_y = word; |
160 | if (!read_uint(f, &bmsize)) goto close_file; | 189 | if (!read_uint(map, fsize, &position, &bmsize)) goto close_file; |
161 | if (!read_uint(f, &bmoffset)) goto close_file; | 190 | if (!read_uint(map, fsize, &position, &bmoffset)) goto close_file; |
162 | if ((bmsize <= 0) || (bmoffset <= 0) || (bmoffset >= fsize)) goto close_file; | 191 | if ((bmsize <= 0) || (bmoffset <= 0) || (bmoffset >= fsize)) goto close_file; |
163 | if (search == BIGGEST) | 192 | if (search == BIGGEST) |
164 | { | 193 | { |
@@ -245,7 +274,7 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key | |||
245 | } | 274 | } |
246 | } | 275 | } |
247 | if (chosen.bmoffset == 0) goto close_file; | 276 | if (chosen.bmoffset == 0) goto close_file; |
248 | if (fseek(f, chosen.bmoffset, SEEK_SET) != 0) goto close_file; | 277 | position = chosen.bmoffset; |
249 | 278 | ||
250 | w = chosen.w; | 279 | w = chosen.w; |
251 | h = chosen.h; | 280 | h = chosen.h; |
@@ -263,23 +292,28 @@ evas_image_load_file_head_ico(Image_Entry *ie, const char *file, const char *key | |||
263 | ie->w = w; | 292 | ie->w = w; |
264 | ie->h = h; | 293 | ie->h = h; |
265 | if (hasa) ie->flags.alpha = 1; | 294 | if (hasa) ie->flags.alpha = 1; |
266 | 295 | ||
267 | fclose(f); | 296 | eina_file_map_free(f, map); |
297 | eina_file_close(f); | ||
298 | |||
268 | *error = EVAS_LOAD_ERROR_NONE; | 299 | *error = EVAS_LOAD_ERROR_NONE; |
269 | return EINA_TRUE; | 300 | return EINA_TRUE; |
270 | 301 | ||
271 | close_file: | 302 | close_file: |
272 | fclose(f); | 303 | if (map) eina_file_map_free(f, map); |
304 | eina_file_close(f); | ||
273 | return EINA_FALSE; | 305 | return EINA_FALSE; |
274 | } | 306 | } |
275 | 307 | ||
276 | static Eina_Bool | 308 | static Eina_Bool |
277 | evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key, int *error) | 309 | evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key, int *error) |
278 | { | 310 | { |
311 | Eina_File *f; | ||
312 | void *map = NULL; | ||
313 | size_t position = 0; | ||
279 | unsigned short word; | 314 | unsigned short word; |
280 | unsigned char byte; | 315 | unsigned char byte; |
281 | unsigned int dword; | 316 | unsigned int dword; |
282 | FILE *f; | ||
283 | int wanted_w = 0, wanted_h = 0, w, h, cols, i, planes = 0, | 317 | int wanted_w = 0, wanted_h = 0, w, h, cols, i, planes = 0, |
284 | hot_x = 0, hot_y = 0, bpp = 0, pdelta, search = -1, have_choice = 0, | 318 | hot_x = 0, hot_y = 0, bpp = 0, pdelta, search = -1, have_choice = 0, |
285 | stride, pstride, j, right_way_up = 0, diff_size = 0, cols2; | 319 | stride, pstride, j, right_way_up = 0, diff_size = 0, cols2; |
@@ -296,7 +330,7 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
296 | unsigned int bmoffset, bmsize; | 330 | unsigned int bmoffset, bmsize; |
297 | } chosen = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; | 331 | } chosen = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; |
298 | 332 | ||
299 | f = fopen(file, "rb"); | 333 | f = eina_file_open(file, EINA_FALSE); |
300 | if (!f) | 334 | if (!f) |
301 | { | 335 | { |
302 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 336 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
@@ -304,11 +338,12 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
304 | } | 338 | } |
305 | 339 | ||
306 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 340 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
307 | fseek(f, 0, SEEK_END); | 341 | fsize = eina_file_size_get(f); |
308 | fsize = ftell(f); | ||
309 | fseek(f, 0, SEEK_SET); | ||
310 | if (fsize < (6 + 16 + 40)) goto close_file; | 342 | if (fsize < (6 + 16 + 40)) goto close_file; |
311 | 343 | ||
344 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); | ||
345 | if (!map) goto close_file; | ||
346 | |||
312 | // key: | 347 | // key: |
313 | // NULL == highest res | 348 | // NULL == highest res |
314 | // biggest == highest res | 349 | // biggest == highest res |
@@ -325,11 +360,11 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
325 | wanted_h = ie->load_opts.h; | 360 | wanted_h = ie->load_opts.h; |
326 | search = SMALLER; | 361 | search = SMALLER; |
327 | } | 362 | } |
328 | 363 | ||
329 | if (!read_ushort(f, &reserved)) goto close_file; | 364 | if (!read_ushort(map, fsize, &position, &reserved)) goto close_file; |
330 | if (!read_ushort(f, &type)) goto close_file; | 365 | if (!read_ushort(map, fsize, &position, &type)) goto close_file; |
331 | if (!read_ushort(f, &count)) goto close_file; | 366 | if (!read_ushort(map, fsize, &position, &count)) goto close_file; |
332 | if (!((reserved == 0) && | 367 | if (!((reserved == 0) && |
333 | ((type == ICON) || (type == CURSOR)) && (count > 0))) | 368 | ((type == ICON) || (type == CURSOR)) && (count > 0))) |
334 | goto close_file; | 369 | goto close_file; |
335 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 370 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
@@ -363,24 +398,25 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
363 | } | 398 | } |
364 | for (i = 0; i < count; i++) | 399 | for (i = 0; i < count; i++) |
365 | { | 400 | { |
366 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 401 | unsigned char tw = 0, th = 0, tcols = 0; |
367 | w = byte; | 402 | if (!read_uchar(map, fsize, &position, &tw)) goto close_file; |
403 | w = tw; | ||
368 | if (w <= 0) w = 256; | 404 | if (w <= 0) w = 256; |
369 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 405 | if (!read_uchar(map, fsize, &position, &th)) goto close_file; |
370 | h = byte; | 406 | h = th; |
371 | if (h <= 0) h = 256; | 407 | if (h <= 0) h = 256; |
372 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 408 | if (!read_uchar(map, fsize, &position, &tcols)) goto close_file; |
373 | cols = byte; | 409 | cols = tcols; |
374 | if (cols <= 0) cols = 256; | 410 | if (cols <= 0) cols = 256; |
375 | if (fread(&byte, 1, 1, f) != 1) goto close_file; | 411 | if (!read_uchar(map, fsize, &position, &byte)) goto close_file; |
376 | if (!read_ushort(f, &word)) goto close_file; | 412 | if (!read_ushort(map, fsize, &position, &word)) goto close_file; |
377 | if (type == 1) planes = word; | 413 | if (type == 1) planes = word; |
378 | else hot_x = word; | 414 | else hot_x = word; |
379 | if (!read_ushort(f, &word)) goto close_file; | 415 | if (!read_ushort(map, fsize, &position, &word)) goto close_file; |
380 | if (type == 1) bpp = word; | 416 | if (type == 1) bpp = word; |
381 | else hot_y = word; | 417 | else hot_y = word; |
382 | if (!read_uint(f, &bmsize)) goto close_file; | 418 | if (!read_uint(map, fsize, &position, &bmsize)) goto close_file; |
383 | if (!read_uint(f, &bmoffset)) goto close_file; | 419 | if (!read_uint(map, fsize, &position, &bmoffset)) goto close_file; |
384 | if ((bmsize <= 0) || (bmoffset <= 0) || (bmoffset >= fsize)) goto close_file; | 420 | if ((bmsize <= 0) || (bmoffset <= 0) || (bmoffset >= fsize)) goto close_file; |
385 | if (search == BIGGEST) | 421 | if (search == BIGGEST) |
386 | { | 422 | { |
@@ -467,7 +503,7 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
467 | } | 503 | } |
468 | } | 504 | } |
469 | if (chosen.bmoffset == 0) goto close_file; | 505 | if (chosen.bmoffset == 0) goto close_file; |
470 | if (fseek(f, chosen.bmoffset, SEEK_SET) != 0) goto close_file; | 506 | position = chosen.bmoffset; |
471 | 507 | ||
472 | w = chosen.w; | 508 | w = chosen.w; |
473 | h = chosen.h; | 509 | h = chosen.h; |
@@ -477,8 +513,8 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
477 | if (((int)ie->w != w) || ((int)ie->h != h)) goto close_file; | 513 | if (((int)ie->w != w) || ((int)ie->h != h)) goto close_file; |
478 | 514 | ||
479 | // read bmp header time... let's do some checking | 515 | // read bmp header time... let's do some checking |
480 | if (!read_uint(f, &dword)) goto close_file; // headersize - dont care | 516 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // headersize - dont care |
481 | if (!read_uint(f, &dword)) goto close_file; // width | 517 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // width |
482 | if (dword > 0) | 518 | if (dword > 0) |
483 | { | 519 | { |
484 | if ((int)dword != w) | 520 | if ((int)dword != w) |
@@ -487,7 +523,7 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
487 | diff_size = 1; | 523 | diff_size = 1; |
488 | } | 524 | } |
489 | } | 525 | } |
490 | if (!read_uint(f, &dword)) goto close_file; // height | 526 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // height |
491 | if (dword > 0) | 527 | if (dword > 0) |
492 | { | 528 | { |
493 | if ((int)dword != (h * 2)) | 529 | if ((int)dword != (h * 2)) |
@@ -503,19 +539,19 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
503 | " May be expanded or cropped.", | 539 | " May be expanded or cropped.", |
504 | file, ie->w, ie->h, w, h); | 540 | file, ie->w, ie->h, w, h); |
505 | } | 541 | } |
506 | if (!read_ushort(f, &word)) goto close_file; // planes | 542 | if (!read_ushort(map, fsize, &position, &word)) goto close_file; // planes |
507 | planes2 = word; | 543 | planes2 = word; |
508 | if (!read_ushort(f, &word)) goto close_file; // bitcount | 544 | if (!read_ushort(map, fsize, &position, &word)) goto close_file; // bitcount |
509 | bitcount = word; | 545 | bitcount = word; |
510 | if (!read_uint(f, &dword)) goto close_file; // compression | 546 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // compression |
511 | compression = dword; | 547 | compression = dword; |
512 | if (!read_uint(f, &dword)) goto close_file; // imagesize | 548 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // imagesize |
513 | imagesize = dword; | 549 | imagesize = dword; |
514 | if (!read_uint(f, &dword)) goto close_file; // z pixels per m | 550 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // z pixels per m |
515 | if (!read_uint(f, &dword)) goto close_file; // y pizels per m | 551 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // y pizels per m |
516 | if (!read_uint(f, &dword)) goto close_file; // colors used | 552 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // colors used |
517 | colorsused = dword; | 553 | colorsused = dword; |
518 | if (!read_uint(f, &dword)) goto close_file; // colors important | 554 | if (!read_uint(map, fsize, &position, &dword)) goto close_file; // colors important |
519 | colorsimportant = dword; | 555 | colorsimportant = dword; |
520 | 556 | ||
521 | evas_cache_image_surface_alloc(ie, ie->w, ie->h); | 557 | evas_cache_image_surface_alloc(ie, ie->w, ie->h); |
@@ -545,11 +581,11 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
545 | for (i = 0; i < cols; i++) | 581 | for (i = 0; i < cols; i++) |
546 | { | 582 | { |
547 | unsigned char a, r, g, b; | 583 | unsigned char a, r, g, b; |
548 | 584 | ||
549 | if (fread(&b, 1, 1, f) != 1) goto close_file; | 585 | if (!read_uchar(map, fsize, &position, &b)) goto close_file; |
550 | if (fread(&g, 1, 1, f) != 1) goto close_file; | 586 | if (!read_uchar(map, fsize, &position, &g)) goto close_file; |
551 | if (fread(&r, 1, 1, f) != 1) goto close_file; | 587 | if (!read_uchar(map, fsize, &position, &r)) goto close_file; |
552 | if (fread(&a, 1, 1, f) != 1) goto close_file; | 588 | if (!read_uchar(map, fsize, &position, &a)) goto close_file; |
553 | a = 0xff; | 589 | a = 0xff; |
554 | pal[i] = ARGB_JOIN(a, r, g, b); | 590 | pal[i] = ARGB_JOIN(a, r, g, b); |
555 | } | 591 | } |
@@ -563,7 +599,7 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
563 | { | 599 | { |
564 | pix = surface + (i * ie->w); | 600 | pix = surface + (i * ie->w); |
565 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); | 601 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); |
566 | if (fread(pixbuf, pstride, 1, f) != 1) goto close_file; | 602 | if (!read_mem(map, fsize, &position, pixbuf, pstride)) goto close_file; |
567 | p = pixbuf; | 603 | p = pixbuf; |
568 | if (i >= (int)ie->h) continue; | 604 | if (i >= (int)ie->h) continue; |
569 | for (j = 0; j < w; j++) | 605 | for (j = 0; j < w; j++) |
@@ -613,7 +649,7 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
613 | { | 649 | { |
614 | pix = surface + (i * ie->w); | 650 | pix = surface + (i * ie->w); |
615 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); | 651 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); |
616 | if (fread(pixbuf, pstride, 1, f) != 1) goto close_file; | 652 | if (!read_mem(map, fsize, &position, pixbuf, pstride)) goto close_file; |
617 | p = pixbuf; | 653 | p = pixbuf; |
618 | if (i >= (int)ie->h) continue; | 654 | if (i >= (int)ie->h) continue; |
619 | for (j = 0; j < w; j++) | 655 | for (j = 0; j < w; j++) |
@@ -639,7 +675,7 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
639 | { | 675 | { |
640 | pix = surface + (i * ie->w); | 676 | pix = surface + (i * ie->w); |
641 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); | 677 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); |
642 | if (fread(pixbuf, pstride, 1, f) != 1) goto close_file; | 678 | if (!read_mem(map, fsize, &position, pixbuf, pstride)) goto close_file; |
643 | p = pixbuf; | 679 | p = pixbuf; |
644 | if (i >= (int)ie->h) continue; | 680 | if (i >= (int)ie->h) continue; |
645 | for (j = 0; j < w; j++) | 681 | for (j = 0; j < w; j++) |
@@ -658,13 +694,13 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
658 | { | 694 | { |
659 | pix = surface + (i * ie->w); | 695 | pix = surface + (i * ie->w); |
660 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); | 696 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); |
661 | if (fread(pixbuf, pstride, 1, f) != 1) goto close_file; | 697 | if (!read_mem(map, fsize, &position, pixbuf, pstride)) goto close_file; |
662 | p = pixbuf; | 698 | p = pixbuf; |
663 | if (i >= (int)ie->h) continue; | 699 | if (i >= (int)ie->h) continue; |
664 | for (j = 0; j < w; j++) | 700 | for (j = 0; j < w; j++) |
665 | { | 701 | { |
666 | unsigned char a, r, g, b; | 702 | unsigned char a, r, g, b; |
667 | 703 | ||
668 | if (j >= (int)ie->w) break; | 704 | if (j >= (int)ie->w) break; |
669 | b = p[0]; | 705 | b = p[0]; |
670 | g = p[1]; | 706 | g = p[1]; |
@@ -683,13 +719,13 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
683 | { | 719 | { |
684 | pix = surface + (i * ie->w); | 720 | pix = surface + (i * ie->w); |
685 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); | 721 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); |
686 | if (fread(pixbuf, pstride, 1, f) != 1) goto close_file; | 722 | if (!read_mem(map, fsize, &position, pixbuf, pstride)) goto close_file; |
687 | p = pixbuf; | 723 | p = pixbuf; |
688 | if (i >= (int)ie->h) continue; | 724 | if (i >= (int)ie->h) continue; |
689 | for (j = 0; j < w; j++) | 725 | for (j = 0; j < w; j++) |
690 | { | 726 | { |
691 | unsigned char a, r, g, b; | 727 | unsigned char a, r, g, b; |
692 | 728 | ||
693 | if (j >= (int)ie->w) break; | 729 | if (j >= (int)ie->w) break; |
694 | b = p[0]; | 730 | b = p[0]; |
695 | g = p[1]; | 731 | g = p[1]; |
@@ -704,13 +740,13 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
704 | } | 740 | } |
705 | if (!none_zero_alpha) | 741 | if (!none_zero_alpha) |
706 | { | 742 | { |
707 | if (fread(maskbuf, stride * 4 * h, 1, f) != 1) goto close_file; | 743 | if (!read_mem(map, fsize, &position, maskbuf, stride * 4 * h)) goto close_file; |
708 | // apply mask | 744 | // apply mask |
709 | pix = surface; | 745 | pix = surface; |
710 | for (i = 0; i < h; i++) | 746 | for (i = 0; i < h; i++) |
711 | { | 747 | { |
712 | unsigned char *m; | 748 | unsigned char *m; |
713 | 749 | ||
714 | pix = surface + (i * ie->w); | 750 | pix = surface + (i * ie->w); |
715 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); | 751 | if (!right_way_up) pix = surface + ((ie->h - 1 - i) * ie->w); |
716 | m = maskbuf + (stride * i * 4); | 752 | m = maskbuf + (stride * i * 4); |
@@ -727,15 +763,17 @@ evas_image_load_file_data_ico(Image_Entry *ie, const char *file, const char *key | |||
727 | } | 763 | } |
728 | } | 764 | } |
729 | } | 765 | } |
730 | 766 | ||
731 | fclose(f); | 767 | eina_file_map_free(f, map); |
732 | 768 | eina_file_close(f); | |
769 | |||
733 | evas_common_image_premul(ie); | 770 | evas_common_image_premul(ie); |
734 | *error = EVAS_LOAD_ERROR_NONE; | 771 | *error = EVAS_LOAD_ERROR_NONE; |
735 | return EINA_TRUE; | 772 | return EINA_TRUE; |
736 | 773 | ||
737 | close_file: | 774 | close_file: |
738 | fclose(f); | 775 | if (map) eina_file_map_free(f, map); |
776 | eina_file_close(f); | ||
739 | return EINA_FALSE; | 777 | return EINA_FALSE; |
740 | } | 778 | } |
741 | 779 | ||
diff --git a/libraries/evas/src/modules/loaders/jpeg/Makefile.in b/libraries/evas/src/modules/loaders/jpeg/Makefile.in index ce4b194..7c0ca18 100644 --- a/libraries/evas/src/modules/loaders/jpeg/Makefile.in +++ b/libraries/evas/src/modules/loaders/jpeg/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c b/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c index 0dbabab..797c76d 100644 --- a/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c +++ b/libraries/evas/src/modules/loaders/jpeg/evas_image_load_jpeg.c | |||
@@ -46,7 +46,8 @@ static Evas_Image_Load_Func evas_image_load_jpeg_func = | |||
46 | EINA_TRUE, | 46 | EINA_TRUE, |
47 | evas_image_load_file_head_jpeg, | 47 | evas_image_load_file_head_jpeg, |
48 | evas_image_load_file_data_jpeg, | 48 | evas_image_load_file_data_jpeg, |
49 | NULL | 49 | NULL, |
50 | EINA_TRUE | ||
50 | }; | 51 | }; |
51 | 52 | ||
52 | 53 | ||
diff --git a/libraries/evas/src/modules/loaders/pmaps/Makefile.in b/libraries/evas/src/modules/loaders/pmaps/Makefile.in index de7b779..745e79b 100644 --- a/libraries/evas/src/modules/loaders/pmaps/Makefile.in +++ b/libraries/evas/src/modules/loaders/pmaps/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/pmaps/evas_image_load_pmaps.c b/libraries/evas/src/modules/loaders/pmaps/evas_image_load_pmaps.c index 9ba8f81..393e407 100644 --- a/libraries/evas/src/modules/loaders/pmaps/evas_image_load_pmaps.c +++ b/libraries/evas/src/modules/loaders/pmaps/evas_image_load_pmaps.c | |||
@@ -19,7 +19,8 @@ Evas_Image_Load_Func evas_image_load_pmaps_func = { | |||
19 | EINA_TRUE, | 19 | EINA_TRUE, |
20 | evas_image_load_file_head_pmaps, | 20 | evas_image_load_file_head_pmaps, |
21 | evas_image_load_file_data_pmaps, | 21 | evas_image_load_file_data_pmaps, |
22 | NULL | 22 | NULL, |
23 | EINA_FALSE | ||
23 | }; | 24 | }; |
24 | 25 | ||
25 | /* The buffer to load pmaps images */ | 26 | /* The buffer to load pmaps images */ |
@@ -27,7 +28,9 @@ typedef struct Pmaps_Buffer Pmaps_Buffer; | |||
27 | 28 | ||
28 | struct Pmaps_Buffer | 29 | struct Pmaps_Buffer |
29 | { | 30 | { |
30 | FILE *file; | 31 | Eina_File *file; |
32 | void *map; | ||
33 | size_t position; | ||
31 | 34 | ||
32 | /* the buffer */ | 35 | /* the buffer */ |
33 | DATA8 buffer[FILE_BUFFER_SIZE]; | 36 | DATA8 buffer[FILE_BUFFER_SIZE]; |
@@ -160,13 +163,23 @@ pmaps_buffer_open(Pmaps_Buffer *b, const char *filename, int *error) | |||
160 | { | 163 | { |
161 | size_t len; | 164 | size_t len; |
162 | 165 | ||
163 | b->file = fopen(filename, "rb"); | 166 | b->file = eina_file_open(filename, EINA_FALSE); |
164 | if (!b->file) | 167 | if (!b->file) |
165 | { | 168 | { |
166 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 169 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
167 | return EINA_FALSE; | 170 | return EINA_FALSE; |
168 | } | 171 | } |
169 | 172 | ||
173 | b->map = eina_file_map_all(b->file, EINA_FILE_SEQUENTIAL); | ||
174 | if (!b->map) | ||
175 | { | ||
176 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | ||
177 | eina_file_close(b->file); | ||
178 | b->file = NULL; | ||
179 | return EINA_FALSE; | ||
180 | } | ||
181 | |||
182 | b->position = 0; | ||
170 | *b->buffer = 0; | 183 | *b->buffer = 0; |
171 | *b->unread = 0; | 184 | *b->unread = 0; |
172 | b->last_buffer = 0; | 185 | b->last_buffer = 0; |
@@ -177,7 +190,9 @@ pmaps_buffer_open(Pmaps_Buffer *b, const char *filename, int *error) | |||
177 | if (len < 3) | 190 | if (len < 3) |
178 | { | 191 | { |
179 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 192 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
180 | fclose(b->file); | 193 | eina_file_map_free(b->file, b->map); |
194 | eina_file_close(b->file); | ||
195 | b->map = NULL; | ||
181 | b->file = NULL; | 196 | b->file = NULL; |
182 | return EINA_FALSE; | 197 | return EINA_FALSE; |
183 | } | 198 | } |
@@ -197,7 +212,12 @@ static void | |||
197 | pmaps_buffer_close(Pmaps_Buffer *b) | 212 | pmaps_buffer_close(Pmaps_Buffer *b) |
198 | { | 213 | { |
199 | if (b->file) | 214 | if (b->file) |
200 | fclose(b->file); | 215 | { |
216 | if (b->map) eina_file_map_free(b->file, b->map); | ||
217 | b->map = NULL; | ||
218 | eina_file_close(b->file); | ||
219 | b->file = NULL; | ||
220 | } | ||
201 | } | 221 | } |
202 | 222 | ||
203 | static Eina_Bool | 223 | static Eina_Bool |
@@ -295,6 +315,7 @@ static size_t | |||
295 | pmaps_buffer_plain_update(Pmaps_Buffer *b) | 315 | pmaps_buffer_plain_update(Pmaps_Buffer *b) |
296 | { | 316 | { |
297 | size_t r; | 317 | size_t r; |
318 | size_t max; | ||
298 | 319 | ||
299 | /* if we already are in the last buffer we can not update it */ | 320 | /* if we already are in the last buffer we can not update it */ |
300 | if (b->last_buffer) | 321 | if (b->last_buffer) |
@@ -304,9 +325,14 @@ pmaps_buffer_plain_update(Pmaps_Buffer *b) | |||
304 | * stuff */ | 325 | * stuff */ |
305 | if (b->unread_len) | 326 | if (b->unread_len) |
306 | memcpy(b->buffer, b->unread, b->unread_len); | 327 | memcpy(b->buffer, b->unread, b->unread_len); |
307 | 328 | ||
308 | r = fread(&b->buffer[b->unread_len], 1, | 329 | max = FILE_BUFFER_SIZE - b->unread_len - 1; |
309 | FILE_BUFFER_SIZE - b->unread_len - 1, b->file) + b->unread_len; | 330 | if (b->position + max > eina_file_size_get(b->file)) |
331 | max = eina_file_size_get(b->file) - b->position; | ||
332 | |||
333 | memcpy(&b->buffer[b->unread_len], b->map + b->position, max); | ||
334 | b->position += max; | ||
335 | r = max + b->unread_len; | ||
310 | 336 | ||
311 | /* we haven't read anything nor have we bytes in the unread buffer */ | 337 | /* we haven't read anything nor have we bytes in the unread buffer */ |
312 | if (r == 0) | 338 | if (r == 0) |
@@ -324,7 +350,7 @@ pmaps_buffer_plain_update(Pmaps_Buffer *b) | |||
324 | } | 350 | } |
325 | 351 | ||
326 | b->buffer[r] = 0; | 352 | b->buffer[r] = 0; |
327 | 353 | ||
328 | b->unread[0] = '\0'; | 354 | b->unread[0] = '\0'; |
329 | b->unread_len = 0; | 355 | b->unread_len = 0; |
330 | 356 | ||
@@ -339,6 +365,7 @@ static size_t | |||
339 | pmaps_buffer_raw_update(Pmaps_Buffer *b) | 365 | pmaps_buffer_raw_update(Pmaps_Buffer *b) |
340 | { | 366 | { |
341 | size_t r; | 367 | size_t r; |
368 | size_t max; | ||
342 | 369 | ||
343 | if (b->last_buffer) | 370 | if (b->last_buffer) |
344 | return 0; | 371 | return 0; |
@@ -346,8 +373,13 @@ pmaps_buffer_raw_update(Pmaps_Buffer *b) | |||
346 | if (b->unread_len) | 373 | if (b->unread_len) |
347 | memcpy(b->buffer, b->unread, b->unread_len); | 374 | memcpy(b->buffer, b->unread, b->unread_len); |
348 | 375 | ||
349 | r = fread(&b->buffer[b->unread_len], 1, FILE_BUFFER_SIZE - b->unread_len, | 376 | max = FILE_BUFFER_SIZE - b->unread_len; |
350 | b->file) + b->unread_len; | 377 | if (b->position + max > eina_file_size_get(b->file)) |
378 | max = eina_file_size_get(b->file) - b->position; | ||
379 | |||
380 | memcpy(&b->buffer[b->unread_len], b->map + b->position, max); | ||
381 | b->position += max; | ||
382 | r = max + b->unread_len; | ||
351 | 383 | ||
352 | if (r < FILE_BUFFER_SIZE) | 384 | if (r < FILE_BUFFER_SIZE) |
353 | { | 385 | { |
diff --git a/libraries/evas/src/modules/loaders/png/Makefile.in b/libraries/evas/src/modules/loaders/png/Makefile.in index 0717299..3bd4919 100644 --- a/libraries/evas/src/modules/loaders/png/Makefile.in +++ b/libraries/evas/src/modules/loaders/png/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/png/evas_image_load_png.c b/libraries/evas/src/modules/loaders/png/evas_image_load_png.c index a1480ae..3007a57 100644 --- a/libraries/evas/src/modules/loaders/png/evas_image_load_png.c +++ b/libraries/evas/src/modules/loaders/png/evas_image_load_png.c | |||
@@ -35,7 +35,8 @@ static Evas_Image_Load_Func evas_image_load_png_func = | |||
35 | EINA_TRUE, | 35 | EINA_TRUE, |
36 | evas_image_load_file_head_png, | 36 | evas_image_load_file_head_png, |
37 | evas_image_load_file_data_png, | 37 | evas_image_load_file_data_png, |
38 | NULL | 38 | NULL, |
39 | EINA_FALSE | ||
39 | }; | 40 | }; |
40 | 41 | ||
41 | static Eina_Bool | 42 | static Eina_Bool |
diff --git a/libraries/evas/src/modules/loaders/psd/Makefile.in b/libraries/evas/src/modules/loaders/psd/Makefile.in index 98d340a..3dc9c38 100644 --- a/libraries/evas/src/modules/loaders/psd/Makefile.in +++ b/libraries/evas/src/modules/loaders/psd/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c b/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c index 5a85e17..27f5f24 100644 --- a/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c +++ b/libraries/evas/src/modules/loaders/psd/evas_image_load_psd.c | |||
@@ -61,48 +61,57 @@ enum { | |||
61 | }; | 61 | }; |
62 | 62 | ||
63 | static Eina_Bool get_compressed_channels_length(PSD_Header *Head, | 63 | static Eina_Bool get_compressed_channels_length(PSD_Header *Head, |
64 | FILE *file, | 64 | const unsigned char *map, size_t length, size_t *position, |
65 | unsigned short *rle_table, | 65 | unsigned short *rle_table, |
66 | unsigned int *chanlen); | 66 | unsigned int *chanlen); |
67 | 67 | ||
68 | static int | 68 | static int |
69 | read_ushort(FILE *file, unsigned short *ret) | 69 | read_ushort(const unsigned char *map, size_t length, size_t *position, unsigned short *ret) |
70 | { | 70 | { |
71 | unsigned char b[2]; | 71 | if (*position + 2 > length) return 0; |
72 | if (fread(b, sizeof(unsigned char), 2, file) != 2) return 0; | ||
73 | // FIXME: need to check order | 72 | // FIXME: need to check order |
74 | *ret = (b[0] << 8) | b[1]; | 73 | *ret = (map[(*position) + 0] << 8) | map[(*position) + 1]; |
74 | *position += 2; | ||
75 | return 1; | 75 | return 1; |
76 | } | 76 | } |
77 | 77 | ||
78 | static int | 78 | static int |
79 | read_uint(FILE *file, unsigned int *ret) | 79 | read_uint(const unsigned char *map, size_t length, size_t *position, unsigned int *ret) |
80 | { | 80 | { |
81 | unsigned char b[4]; | 81 | if (*position + 4 > length) return 0; |
82 | if (fread(b, sizeof(unsigned char), 4, file) != 4) return 0; | ||
83 | // FIXME: need to check order | 82 | // FIXME: need to check order |
84 | *ret = ARGB_JOIN(b[0], b[1], b[2], b[3]); | 83 | *ret = ARGB_JOIN(map[(*position) + 0], map[(*position) + 1], map[(*position) + 2], map[(*position) + 3]); |
84 | *position += 4; | ||
85 | return 1; | ||
86 | } | ||
87 | |||
88 | static int | ||
89 | read_block(const unsigned char *map, size_t length, size_t *position, void *target, size_t size) | ||
90 | { | ||
91 | if (*position + size > length) return 0; | ||
92 | memcpy(target, map + *position, size); | ||
93 | *position += size; | ||
85 | return 1; | 94 | return 1; |
86 | } | 95 | } |
87 | 96 | ||
88 | // Internal function used to get the Psd header from the current file. | 97 | // Internal function used to get the Psd header from the current file. |
89 | Eina_Bool | 98 | Eina_Bool |
90 | psd_get_header(PSD_Header *header, FILE * file) | 99 | psd_get_header(PSD_Header *header, const unsigned char *map, size_t length, size_t *position) |
91 | { | 100 | { |
92 | unsigned short tmp; | 101 | unsigned short tmp; |
93 | 102 | ||
94 | #define CHECK_RET(Call, Value) \ | 103 | #define CHECK_RET(Call) \ |
95 | if (Call != Value) return EINA_FALSE; | 104 | if (!Call) return EINA_FALSE; |
96 | 105 | ||
97 | CHECK_RET(fread(header->signature, sizeof (unsigned char), 4, file), 4); | 106 | CHECK_RET(read_block(map, length, position, header->signature, 4)); |
98 | CHECK_RET(read_ushort(file, &header->version), 1); | 107 | CHECK_RET(read_ushort(map, length, position, &header->version)); |
99 | CHECK_RET(fread(header->reserved, sizeof (unsigned char), 6, file), 6); | 108 | CHECK_RET(read_block(map, length, position, header->reserved, 6)); |
100 | CHECK_RET(read_ushort(file, &header->channels), 1); | 109 | CHECK_RET(read_ushort(map, length, position, &header->channels)); |
101 | CHECK_RET(read_uint(file, &header->height), 1); | 110 | CHECK_RET(read_uint(map, length, position, &header->height)); |
102 | CHECK_RET(read_uint(file, &header->width), 1); | 111 | CHECK_RET(read_uint(map, length, position, &header->width)); |
103 | CHECK_RET(read_ushort(file, &header->depth), 1); | 112 | CHECK_RET(read_ushort(map, length, position, &header->depth)); |
104 | 113 | ||
105 | CHECK_RET(read_ushort(file, &tmp), 1); | 114 | CHECK_RET(read_ushort(map, length, position, &tmp)); |
106 | header->mode = tmp; | 115 | header->mode = tmp; |
107 | 116 | ||
108 | #undef CHECK_RET | 117 | #undef CHECK_RET |
@@ -144,20 +153,35 @@ static Eina_Bool | |||
144 | evas_image_load_file_head_psd(Image_Entry *ie, const char *FileName, | 153 | evas_image_load_file_head_psd(Image_Entry *ie, const char *FileName, |
145 | const char *key __UNUSED__, int *error) | 154 | const char *key __UNUSED__, int *error) |
146 | { | 155 | { |
147 | FILE *f; | 156 | Eina_File *f; |
157 | void *map; | ||
158 | size_t length; | ||
159 | size_t position; | ||
148 | PSD_Header header; | 160 | PSD_Header header; |
149 | Eina_Bool correct; | 161 | Eina_Bool correct; |
150 | 162 | ||
151 | *error = EVAS_LOAD_ERROR_NONE; | 163 | *error = EVAS_LOAD_ERROR_NONE; |
152 | 164 | ||
153 | f = fopen(FileName, "rb"); | 165 | f = eina_file_open(FileName, 0); |
154 | if (f == NULL) | 166 | if (f == NULL) |
155 | { | 167 | { |
156 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 168 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
157 | return EINA_FALSE; | 169 | return EINA_FALSE; |
158 | } | 170 | } |
159 | correct = psd_get_header(&header, f); | 171 | |
160 | fclose(f); | 172 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); |
173 | length = eina_file_size_get(f); | ||
174 | position = 0; | ||
175 | if (!map || length < 1) | ||
176 | { | ||
177 | eina_file_close(f); | ||
178 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | ||
179 | return EINA_FALSE; | ||
180 | } | ||
181 | correct = psd_get_header(&header, map, length, &position); | ||
182 | |||
183 | eina_file_map_free(f, map); | ||
184 | eina_file_close(f); | ||
161 | 185 | ||
162 | if (!correct || !is_psd(&header)) | 186 | if (!correct || !is_psd(&header)) |
163 | { | 187 | { |
@@ -174,7 +198,7 @@ evas_image_load_file_head_psd(Image_Entry *ie, const char *FileName, | |||
174 | } | 198 | } |
175 | 199 | ||
176 | static unsigned int | 200 | static unsigned int |
177 | read_compressed_channel(FILE* file, | 201 | read_compressed_channel(const unsigned char *map, size_t length, size_t *position, |
178 | const unsigned int channel_length __UNUSED__, | 202 | const unsigned int channel_length __UNUSED__, |
179 | unsigned int size, | 203 | unsigned int size, |
180 | unsigned char* channel) | 204 | unsigned char* channel) |
@@ -183,19 +207,18 @@ read_compressed_channel(FILE* file, | |||
183 | unsigned int i; | 207 | unsigned int i; |
184 | char headbyte, c; | 208 | char headbyte, c; |
185 | 209 | ||
186 | #define CHECK_RET(Call, Value) \ | 210 | #define CHECK_RET(Call) \ |
187 | if (Call != Value) return READ_COMPRESSED_ERROR_FILE_READ_ERROR; | 211 | if (!Call) return READ_COMPRESSED_ERROR_FILE_READ_ERROR; \ |
188 | 212 | ||
189 | for (i = 0; i < size; ) | 213 | for (i = 0; i < size; ) |
190 | { | 214 | { |
191 | CHECK_RET(fread(&headbyte, 1, 1, file), 1); | 215 | CHECK_RET(read_block(map, length, position, &headbyte, 1)); |
192 | 216 | ||
193 | if (headbyte >= 0) | 217 | if (headbyte >= 0) |
194 | { | 218 | { |
195 | if (i + headbyte > size) | 219 | if (i + headbyte > size) |
196 | return READ_COMPRESSED_ERROR_FILE_CORRUPT; | 220 | return READ_COMPRESSED_ERROR_FILE_CORRUPT; |
197 | 221 | CHECK_RET(read_block(map, length, position, channel + i, headbyte + 1)); | |
198 | CHECK_RET(fread(channel + i, headbyte + 1, 1, file), 1); | ||
199 | 222 | ||
200 | i += headbyte + 1; | 223 | i += headbyte + 1; |
201 | } | 224 | } |
@@ -203,14 +226,14 @@ read_compressed_channel(FILE* file, | |||
203 | { | 226 | { |
204 | int run; | 227 | int run; |
205 | 228 | ||
206 | CHECK_RET(fread(&c, 1, 1, file), 1); | 229 | CHECK_RET(read_block(map, length, position, &c, 1)); |
207 | 230 | ||
208 | run = c; | 231 | run = c; |
209 | /* if (run == -1) */ | 232 | /* if (run == -1) */ |
210 | /* return READ_COMPRESSED_ERROR_FILE_READ_ERROR; */ | 233 | /* return READ_COMPRESSED_ERROR_FILE_READ_ERROR; */ |
211 | 234 | ||
212 | if (i + (-headbyte + 1) > size) | 235 | if (i + (-headbyte + 1) > size) |
213 | return READ_COMPRESSED_ERROR_FILE_CORRUPT; | 236 | return READ_COMPRESSED_ERROR_FILE_CORRUPT; |
214 | 237 | ||
215 | memset(channel + i, run, -headbyte + 1); | 238 | memset(channel + i, run, -headbyte + 1); |
216 | i += -headbyte + 1; | 239 | i += -headbyte + 1; |
@@ -226,7 +249,7 @@ read_compressed_channel(FILE* file, | |||
226 | Eina_Bool | 249 | Eina_Bool |
227 | psd_get_data(Image_Entry *ie __UNUSED__, | 250 | psd_get_data(Image_Entry *ie __UNUSED__, |
228 | PSD_Header *head, | 251 | PSD_Header *head, |
229 | FILE *f, | 252 | const unsigned char *map, size_t length, size_t *position, |
230 | unsigned char *buffer, Eina_Bool compressed, | 253 | unsigned char *buffer, Eina_Bool compressed, |
231 | int *error) | 254 | int *error) |
232 | { | 255 | { |
@@ -268,13 +291,12 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
268 | { | 291 | { |
269 | free(data); | 292 | free(data); |
270 | free(channel); | 293 | free(channel); |
271 | fprintf(stderr, "unsupported file format.\n"); | ||
272 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 294 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
273 | return EINA_FALSE; | 295 | return EINA_FALSE; |
274 | } | 296 | } |
275 | 297 | ||
276 | #define CHECK_RET(Call, Value) \ | 298 | #define CHECK_RET(Call) \ |
277 | if (Call != Value) \ | 299 | if (!Call) \ |
278 | { \ | 300 | { \ |
279 | free(data); \ | 301 | free(data); \ |
280 | free(channel); \ | 302 | free(channel); \ |
@@ -289,7 +311,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
289 | { | 311 | { |
290 | unsigned char *tmp = channel; | 312 | unsigned char *tmp = channel; |
291 | 313 | ||
292 | CHECK_RET(fread(tmp, pixels_count, 1, f), 1); | 314 | CHECK_RET(read_block(map, length, position, tmp, pixels_count)); |
293 | 315 | ||
294 | for (y = 0; y < head->height * bps; y += bps) | 316 | for (y = 0; y < head->height * bps; y += bps) |
295 | { | 317 | { |
@@ -306,7 +328,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
306 | { | 328 | { |
307 | unsigned char *tmp = channel; | 329 | unsigned char *tmp = channel; |
308 | 330 | ||
309 | CHECK_RET(fread(channel, pixels_count, 1, f), 1); | 331 | CHECK_RET(read_block(map, length, position, channel, pixels_count)); |
310 | 332 | ||
311 | for (y = 0; y < head->height * bps; y += bps) | 333 | for (y = 0; y < head->height * bps; y += bps) |
312 | { | 334 | { |
@@ -333,7 +355,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
333 | { | 355 | { |
334 | unsigned short *shortptr = (unsigned short*) channel; | 356 | unsigned short *shortptr = (unsigned short*) channel; |
335 | 357 | ||
336 | CHECK_RET(fread(channel, pixels_count * 2, 1, f), 1); | 358 | CHECK_RET(read_block(map, length, position, channel, pixels_count * 2)); |
337 | 359 | ||
338 | for (y = 0; y < head->height * bps2; y += bps2) | 360 | for (y = 0; y < head->height * bps2; y += bps2) |
339 | { | 361 | { |
@@ -350,7 +372,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
350 | { | 372 | { |
351 | unsigned short *shortptr = (unsigned short*) channel; | 373 | unsigned short *shortptr = (unsigned short*) channel; |
352 | 374 | ||
353 | CHECK_RET(fread(channel, pixels_count * 2, 1, f), 1); | 375 | CHECK_RET(read_block(map, length, position, channel, pixels_count * 2)); |
354 | 376 | ||
355 | for (y = 0; y < head->height * bps2; y += bps2) | 377 | for (y = 0; y < head->height * bps2; y += bps2) |
356 | { | 378 | { |
@@ -373,7 +395,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
373 | 395 | ||
374 | rle_table = alloca(head->height * head->channel_num * sizeof (unsigned short)); | 396 | rle_table = alloca(head->height * head->channel_num * sizeof (unsigned short)); |
375 | chanlen = alloca(head->channel_num * sizeof (unsigned int)); | 397 | chanlen = alloca(head->channel_num * sizeof (unsigned int)); |
376 | if (!get_compressed_channels_length(head, f, rle_table, chanlen)) | 398 | if (!get_compressed_channels_length(head, map, length, position, rle_table, chanlen)) |
377 | goto file_read_error; | 399 | goto file_read_error; |
378 | 400 | ||
379 | for (c = 0; c < numchan; c++) | 401 | for (c = 0; c < numchan; c++) |
@@ -381,7 +403,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
381 | unsigned char *tmp = channel; | 403 | unsigned char *tmp = channel; |
382 | int err; | 404 | int err; |
383 | 405 | ||
384 | err = read_compressed_channel(f, | 406 | err = read_compressed_channel(map, length, position, |
385 | chanlen[c], | 407 | chanlen[c], |
386 | pixels_count, | 408 | pixels_count, |
387 | channel); | 409 | channel); |
@@ -416,7 +438,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
416 | unsigned char *tmp = channel; | 438 | unsigned char *tmp = channel; |
417 | int err; | 439 | int err; |
418 | 440 | ||
419 | err = read_compressed_channel(f, | 441 | err = read_compressed_channel(map, length, position, |
420 | chanlen[c], | 442 | chanlen[c], |
421 | pixels_count, | 443 | pixels_count, |
422 | channel); | 444 | channel); |
@@ -482,7 +504,7 @@ psd_get_data(Image_Entry *ie __UNUSED__, | |||
482 | Eina_Bool | 504 | Eina_Bool |
483 | get_single_channel(Image_Entry *ie __UNUSED__, | 505 | get_single_channel(Image_Entry *ie __UNUSED__, |
484 | PSD_Header *head, | 506 | PSD_Header *head, |
485 | FILE *f, | 507 | const unsigned char *map, size_t length, size_t *position, |
486 | unsigned char *buffer, | 508 | unsigned char *buffer, |
487 | Eina_Bool compressed) | 509 | Eina_Bool compressed) |
488 | { | 510 | { |
@@ -496,29 +518,29 @@ get_single_channel(Image_Entry *ie __UNUSED__, | |||
496 | bpc = (head->depth / 8); | 518 | bpc = (head->depth / 8); |
497 | pixels_count = head->width * head->height; | 519 | pixels_count = head->width * head->height; |
498 | 520 | ||
499 | #define CHECK_RET(Call, Value) \ | 521 | #define CHECK_RET(Call) \ |
500 | if (Call != Value) return EINA_FALSE; | 522 | if (!Call) return EINA_FALSE; |
501 | 523 | ||
502 | if (!compressed) | 524 | if (!compressed) |
503 | { | 525 | { |
504 | if (bpc == 1) | 526 | if (bpc == 1) |
505 | { | 527 | { |
506 | CHECK_RET(fread(buffer, pixels_count, 1, f), 1); | 528 | CHECK_RET(read_block(map, length, position, buffer, pixels_count)); |
507 | } | 529 | } |
508 | else | 530 | else |
509 | { // Bpc == 2 | 531 | { // Bpc == 2 |
510 | CHECK_RET(fread(buffer, pixels_count * 2, 1, f), 1); | 532 | CHECK_RET(read_block(map, length, position, buffer, pixels_count * 2)); |
511 | } | 533 | } |
512 | } | 534 | } |
513 | else | 535 | else |
514 | { | 536 | { |
515 | for (i = 0; i < (unsigned int)pixels_count; ) | 537 | for (i = 0; i < (unsigned int)pixels_count; ) |
516 | { | 538 | { |
517 | CHECK_RET(fread(&headbyte, 1, 1, f), 1); | 539 | CHECK_RET(read_block(map, length, position, &headbyte, 1)); |
518 | 540 | ||
519 | if (headbyte >= 0) | 541 | if (headbyte >= 0) |
520 | { // && HeadByte <= 127 | 542 | { // && HeadByte <= 127 |
521 | CHECK_RET(fread(buffer + i, headbyte + 1, 1, f), 1); | 543 | CHECK_RET(read_block(map, length, position, buffer + i, headbyte + 1)); |
522 | 544 | ||
523 | i += headbyte + 1; | 545 | i += headbyte + 1; |
524 | } | 546 | } |
@@ -526,7 +548,7 @@ get_single_channel(Image_Entry *ie __UNUSED__, | |||
526 | { | 548 | { |
527 | int run; | 549 | int run; |
528 | 550 | ||
529 | CHECK_RET(fread(&c, 1, 1, f), 1); | 551 | CHECK_RET(read_block(map, length, position, &c, 1)); |
530 | 552 | ||
531 | run = c; | 553 | run = c; |
532 | if (run == -1) return EINA_FALSE; | 554 | if (run == -1) return EINA_FALSE; |
@@ -543,7 +565,7 @@ get_single_channel(Image_Entry *ie __UNUSED__, | |||
543 | } | 565 | } |
544 | 566 | ||
545 | Eina_Bool | 567 | Eina_Bool |
546 | read_psd_grey(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | 568 | read_psd_grey(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t length, size_t *position, int *error) |
547 | { | 569 | { |
548 | unsigned int color_mode, resource_size, misc_info; | 570 | unsigned int color_mode, resource_size, misc_info; |
549 | unsigned short compressed; | 571 | unsigned short compressed; |
@@ -552,22 +574,21 @@ read_psd_grey(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | |||
552 | 574 | ||
553 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 575 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
554 | 576 | ||
555 | #define CHECK_RET(Call, Value) \ | 577 | #define CHECK_RET(Call) \ |
556 | if (Call != Value) return EINA_FALSE; | 578 | if (!Call) return EINA_FALSE; |
557 | 579 | ||
558 | CHECK_RET(read_uint(f, &color_mode), 1); | 580 | CHECK_RET(read_uint(map, length, position, &color_mode)); |
559 | // Skip over the 'color mode data section' | 581 | // Skip over the 'color mode data section' |
560 | CHECK_RET(fseek(f, color_mode, SEEK_CUR), 0); | 582 | *position += color_mode; |
561 | 583 | ||
562 | CHECK_RET(read_uint(f, &resource_size), 1); | 584 | CHECK_RET(read_uint(map, length, position, &resource_size)); |
563 | // Read the 'image resources section' | 585 | // Read the 'image resources section' |
586 | *position += resource_size; | ||
564 | 587 | ||
565 | CHECK_RET(fseek(f, resource_size, SEEK_CUR), 0); | 588 | CHECK_RET(read_uint(map, length, position, &misc_info)); |
589 | *position += misc_info; | ||
566 | 590 | ||
567 | CHECK_RET(read_uint(f, &misc_info), 1); | 591 | CHECK_RET(read_ushort(map, length, position, &compressed)); |
568 | CHECK_RET(fseek(f, misc_info, SEEK_CUR), 0); | ||
569 | |||
570 | CHECK_RET(read_ushort(f, &compressed), 1); | ||
571 | 592 | ||
572 | ie->w = head->width; | 593 | ie->w = head->width; |
573 | ie->h = head->height; | 594 | ie->h = head->height; |
@@ -599,7 +620,7 @@ read_psd_grey(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | |||
599 | goto cleanup_error; | 620 | goto cleanup_error; |
600 | } | 621 | } |
601 | 622 | ||
602 | if (!psd_get_data(ie, head, f, surface, compressed, error)) | 623 | if (!psd_get_data(ie, head, map, length, position, surface, compressed, error)) |
603 | goto cleanup_error; | 624 | goto cleanup_error; |
604 | 625 | ||
605 | return EINA_TRUE; | 626 | return EINA_TRUE; |
@@ -612,7 +633,7 @@ read_psd_grey(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | |||
612 | 633 | ||
613 | 634 | ||
614 | Eina_Bool | 635 | Eina_Bool |
615 | read_psd_indexed(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | 636 | read_psd_indexed(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t length, size_t *position, int *error) |
616 | { | 637 | { |
617 | unsigned int color_mode, resource_size, misc_info; | 638 | unsigned int color_mode, resource_size, misc_info; |
618 | unsigned short compressed; | 639 | unsigned short compressed; |
@@ -620,11 +641,11 @@ read_psd_indexed(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | |||
620 | 641 | ||
621 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 642 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
622 | 643 | ||
623 | #define CHECK_RET(Call, Value) \ | 644 | #define CHECK_RET(Call) \ |
624 | if (Call != Value) return EINA_FALSE; | 645 | if (!(Call)) return EINA_FALSE; |
625 | 646 | ||
626 | CHECK_RET(read_uint(f, &color_mode), 1); | 647 | CHECK_RET(read_uint(map, length, position, &color_mode)); |
627 | CHECK_RET((color_mode % 3), 0); | 648 | CHECK_RET(!(color_mode % 3)); |
628 | /* | 649 | /* |
629 | Palette = (unsigned char*)malloc(Colormode); | 650 | Palette = (unsigned char*)malloc(Colormode); |
630 | if (Palette == NULL) | 651 | if (Palette == NULL) |
@@ -633,16 +654,16 @@ read_psd_indexed(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | |||
633 | goto cleanup_error; | 654 | goto cleanup_error; |
634 | */ | 655 | */ |
635 | // Skip over the 'color mode data section' | 656 | // Skip over the 'color mode data section' |
636 | CHECK_RET(fseek(f, color_mode, SEEK_CUR), 0); | 657 | *position += color_mode; |
637 | 658 | ||
638 | // Read the 'image resources section' | 659 | // Read the 'image resources section' |
639 | CHECK_RET(read_uint(f, &resource_size), 1); | 660 | CHECK_RET(read_uint(map, length, position, &resource_size)); |
640 | CHECK_RET(fseek(f, resource_size, SEEK_CUR), 0); | 661 | *position += resource_size; |
641 | 662 | ||
642 | CHECK_RET(read_uint(f, &misc_info), 1); | 663 | CHECK_RET(read_uint(map, length, position, &misc_info)); |
643 | CHECK_RET(fseek(f, misc_info, SEEK_CUR), 0); | 664 | *position += misc_info; |
644 | 665 | ||
645 | CHECK_RET(read_ushort(f, &compressed), 1); | 666 | CHECK_RET(read_ushort(map, length, position, &compressed)); |
646 | 667 | ||
647 | if (head->channels != 1 || head->depth != 8) | 668 | if (head->channels != 1 || head->depth != 8) |
648 | { | 669 | { |
@@ -664,7 +685,7 @@ read_psd_indexed(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | |||
664 | return EINA_FALSE; | 685 | return EINA_FALSE; |
665 | } | 686 | } |
666 | 687 | ||
667 | if (!psd_get_data(ie, head, f, surface, compressed, error)) | 688 | if (!psd_get_data(ie, head, map, length, position, surface, compressed, error)) |
668 | return EINA_FALSE; | 689 | return EINA_FALSE; |
669 | return EINA_TRUE; | 690 | return EINA_TRUE; |
670 | 691 | ||
@@ -672,28 +693,28 @@ read_psd_indexed(Image_Entry *ie, PSD_Header *head, FILE * f, int *error) | |||
672 | } | 693 | } |
673 | 694 | ||
674 | Eina_Bool | 695 | Eina_Bool |
675 | read_psd_rgb(Image_Entry *ie, PSD_Header *head, FILE *f, int *error) | 696 | read_psd_rgb(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t length, size_t *position, int *error) |
676 | { | 697 | { |
677 | unsigned int color_mode, resource_size, misc_info; | 698 | unsigned int color_mode, resource_size, misc_info; |
678 | unsigned short compressed; | 699 | unsigned short compressed; |
679 | unsigned int type; | 700 | unsigned int type; |
680 | void *surface; | 701 | void *surface; |
681 | 702 | ||
682 | #define CHECK_RET(Call, Value) \ | 703 | #define CHECK_RET(Call) \ |
683 | if (Call != Value) return EINA_FALSE; | 704 | if (!Call) return EINA_FALSE; |
684 | 705 | ||
685 | CHECK_RET(read_uint(f, &color_mode), 1); | 706 | CHECK_RET(read_uint(map, length, position, &color_mode)); |
686 | // Skip over the 'color mode data section' | 707 | // Skip over the 'color mode data section' |
687 | CHECK_RET(fseek(f, color_mode, SEEK_CUR), 0); | 708 | *position += color_mode; |
688 | 709 | ||
689 | // Read the 'image resources section' | 710 | // Read the 'image resources section' |
690 | CHECK_RET(read_uint(f, &resource_size), 1); | 711 | CHECK_RET(read_uint(map, length, position, &resource_size)); |
691 | CHECK_RET(fseek(f, resource_size, SEEK_CUR), 0); | 712 | *position += resource_size; |
692 | 713 | ||
693 | CHECK_RET(read_uint(f, &misc_info), 1); | 714 | CHECK_RET(read_uint(map, length, position, &misc_info)); |
694 | CHECK_RET(fseek(f, misc_info, SEEK_CUR), 0); | 715 | *position += misc_info; |
695 | 716 | ||
696 | CHECK_RET(read_ushort(f, &compressed), 1); | 717 | CHECK_RET(read_ushort(map, length, position, &compressed)); |
697 | 718 | ||
698 | head->channel_num = head->channels; | 719 | head->channel_num = head->channels; |
699 | 720 | ||
@@ -722,7 +743,7 @@ read_psd_rgb(Image_Entry *ie, PSD_Header *head, FILE *f, int *error) | |||
722 | goto cleanup_error; | 743 | goto cleanup_error; |
723 | } | 744 | } |
724 | 745 | ||
725 | if (!psd_get_data(ie, head, f, surface, compressed, error)) | 746 | if (!psd_get_data(ie, head, map, length, position, surface, compressed, error)) |
726 | goto cleanup_error; | 747 | goto cleanup_error; |
727 | 748 | ||
728 | evas_common_image_premul(ie); | 749 | evas_common_image_premul(ie); |
@@ -735,7 +756,7 @@ read_psd_rgb(Image_Entry *ie, PSD_Header *head, FILE *f, int *error) | |||
735 | } | 756 | } |
736 | 757 | ||
737 | Eina_Bool | 758 | Eina_Bool |
738 | read_psd_cmyk(Image_Entry *ie, PSD_Header *head, FILE *f, int *error) | 759 | read_psd_cmyk(Image_Entry *ie, PSD_Header *head, const unsigned char *map, size_t length, size_t *position, int *error) |
739 | { | 760 | { |
740 | unsigned int color_mode, resource_size, misc_info, size, i, j, data_size; | 761 | unsigned int color_mode, resource_size, misc_info, size, i, j, data_size; |
741 | unsigned short compressed; | 762 | unsigned short compressed; |
@@ -745,21 +766,21 @@ read_psd_cmyk(Image_Entry *ie, PSD_Header *head, FILE *f, int *error) | |||
745 | 766 | ||
746 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 767 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
747 | 768 | ||
748 | #define CHECK_RET(Call, Value) \ | 769 | #define CHECK_RET(Call) \ |
749 | if (Call != Value) return EINA_FALSE; | 770 | if (!Call) return EINA_FALSE; |
750 | 771 | ||
751 | CHECK_RET(read_uint(f, &color_mode), 1); | 772 | CHECK_RET(read_uint(map, length, position, &color_mode)); |
752 | // Skip over the 'color mode data section' | 773 | // Skip over the 'color mode data section' |
753 | CHECK_RET(fseek(f, color_mode, SEEK_CUR), 0); | 774 | *position += color_mode; |
754 | 775 | ||
755 | CHECK_RET(read_uint(f, &resource_size), 1); | 776 | CHECK_RET(read_uint(map, length, position, &resource_size)); |
756 | // Read the 'image resources section' | 777 | // Read the 'image resources section' |
757 | CHECK_RET(fseek(f, resource_size, SEEK_CUR), 0); | 778 | *position += resource_size; |
758 | 779 | ||
759 | CHECK_RET(read_uint(f, &misc_info), 1); | 780 | CHECK_RET(read_uint(map, length, position, &misc_info)); |
760 | CHECK_RET(fseek(f, misc_info, SEEK_CUR), 0); | 781 | *position += misc_info; |
761 | 782 | ||
762 | CHECK_RET(read_ushort(f, &compressed), 1); | 783 | CHECK_RET(read_ushort(map, length, position, &compressed)); |
763 | 784 | ||
764 | switch (head->channels) | 785 | switch (head->channels) |
765 | { | 786 | { |
@@ -804,14 +825,14 @@ read_psd_cmyk(Image_Entry *ie, PSD_Header *head, FILE *f, int *error) | |||
804 | goto cleanup_error; | 825 | goto cleanup_error; |
805 | } | 826 | } |
806 | 827 | ||
807 | if (!psd_get_data(ie, head, f, surface, compressed, error)) | 828 | if (!psd_get_data(ie, head, map, length, position, surface, compressed, error)) |
808 | goto cleanup_error; | 829 | goto cleanup_error; |
809 | 830 | ||
810 | size = type * ie->w * ie->h; | 831 | size = type * ie->w * ie->h; |
811 | kchannel = malloc(size); | 832 | kchannel = malloc(size); |
812 | if (kchannel == NULL) | 833 | if (kchannel == NULL) |
813 | goto cleanup_error; | 834 | goto cleanup_error; |
814 | if (!get_single_channel(ie, head, f, kchannel, compressed)) | 835 | if (!get_single_channel(ie, head, map, length, position, kchannel, compressed)) |
815 | goto cleanup_error; | 836 | goto cleanup_error; |
816 | 837 | ||
817 | data_size = head->channels * type * ie->w * ie->h; | 838 | data_size = head->channels * type * ie->w * ie->h; |
@@ -861,20 +882,34 @@ evas_image_load_file_data_psd(Image_Entry *ie, | |||
861 | const char *key __UNUSED__, | 882 | const char *key __UNUSED__, |
862 | int *error) | 883 | int *error) |
863 | { | 884 | { |
864 | FILE *f; | 885 | Eina_File *f; |
886 | void *map; | ||
887 | size_t length; | ||
888 | size_t position; | ||
865 | PSD_Header header; | 889 | PSD_Header header; |
866 | Eina_Bool bpsd = EINA_FALSE; | 890 | Eina_Bool bpsd = EINA_FALSE; |
867 | 891 | ||
868 | f = fopen(file, "rb"); | 892 | f = eina_file_open(file, 0); |
869 | if (f == NULL) | 893 | if (f == NULL) |
870 | { | 894 | { |
871 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 895 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
872 | return bpsd; | 896 | return bpsd; |
873 | } | 897 | } |
874 | 898 | ||
875 | if (!psd_get_header(&header, f) || !is_psd(&header)) | 899 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); |
900 | length = eina_file_size_get(f); | ||
901 | position = 0; | ||
902 | if (!map || length < 1) | ||
903 | { | ||
904 | eina_file_close(f); | ||
905 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | ||
906 | return EINA_FALSE; | ||
907 | } | ||
908 | |||
909 | if (!psd_get_header(&header, map, length, &position) || !is_psd(&header)) | ||
876 | { | 910 | { |
877 | fclose(f); | 911 | eina_file_map_free(f, map); |
912 | eina_file_close(f); | ||
878 | *error = EVAS_LOAD_ERROR_GENERIC; | 913 | *error = EVAS_LOAD_ERROR_GENERIC; |
879 | return EINA_FALSE; | 914 | return EINA_FALSE; |
880 | } | 915 | } |
@@ -887,39 +922,39 @@ evas_image_load_file_data_psd(Image_Entry *ie, | |||
887 | switch (header.mode) | 922 | switch (header.mode) |
888 | { | 923 | { |
889 | case PSD_GREYSCALE: // Greyscale | 924 | case PSD_GREYSCALE: // Greyscale |
890 | bpsd = read_psd_grey(ie, &header, f, error); | 925 | bpsd = read_psd_grey(ie, &header, map, length, &position, error); |
891 | break; | 926 | break; |
892 | case PSD_INDEXED: // Indexed | 927 | case PSD_INDEXED: // Indexed |
893 | bpsd = read_psd_indexed(ie, &header, f, error); | 928 | bpsd = read_psd_indexed(ie, &header, map, length, &position, error); |
894 | break; | 929 | break; |
895 | case PSD_RGB: // RGB | 930 | case PSD_RGB: // RGB |
896 | bpsd = read_psd_rgb(ie, &header, f, error); | 931 | bpsd = read_psd_rgb(ie, &header, map, length, &position, error); |
897 | break; | 932 | break; |
898 | case PSD_CMYK: // CMYK | 933 | case PSD_CMYK: // CMYK |
899 | bpsd = read_psd_cmyk(ie, &header, f, error); | 934 | bpsd = read_psd_cmyk(ie, &header, map, length, &position, error); |
900 | break; | 935 | break; |
901 | default : | 936 | default : |
902 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 937 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
903 | bpsd = EINA_FALSE; | 938 | bpsd = EINA_FALSE; |
904 | } | 939 | } |
905 | fclose(f); | 940 | |
941 | eina_file_map_free(f, map); | ||
942 | eina_file_close(f); | ||
906 | 943 | ||
907 | return bpsd; | 944 | return bpsd; |
908 | } | 945 | } |
909 | 946 | ||
910 | static Eina_Bool | 947 | static Eina_Bool |
911 | get_compressed_channels_length(PSD_Header *head, | 948 | get_compressed_channels_length(PSD_Header *head, |
912 | FILE * file, | 949 | const unsigned char *map, size_t length, size_t *position, |
913 | unsigned short *rle_table, | 950 | unsigned short *rle_table, |
914 | unsigned int *chanlen) | 951 | unsigned int *chanlen) |
915 | { | 952 | { |
916 | unsigned int j; | 953 | unsigned int j; |
917 | unsigned int c; | 954 | unsigned int c; |
918 | 955 | ||
919 | if (fread(rle_table, | 956 | if (!read_block(map, length, position, rle_table, |
920 | sizeof(unsigned short), | 957 | sizeof (unsigned short) * head->height * head->channel_num)) |
921 | head->height * head->channel_num, | ||
922 | file) != head->height * head->channel_num) | ||
923 | return EINA_FALSE; | 958 | return EINA_FALSE; |
924 | 959 | ||
925 | memset(chanlen, 0, head->channel_num * sizeof(unsigned int)); | 960 | memset(chanlen, 0, head->channel_num * sizeof(unsigned int)); |
@@ -941,7 +976,8 @@ static const Evas_Image_Load_Func evas_image_load_psd_func = { | |||
941 | EINA_TRUE, | 976 | EINA_TRUE, |
942 | evas_image_load_file_head_psd, | 977 | evas_image_load_file_head_psd, |
943 | evas_image_load_file_data_psd, | 978 | evas_image_load_file_data_psd, |
944 | NULL | 979 | NULL, |
980 | EINA_FALSE | ||
945 | }; | 981 | }; |
946 | 982 | ||
947 | static int | 983 | static int |
diff --git a/libraries/evas/src/modules/loaders/svg/Makefile.in b/libraries/evas/src/modules/loaders/svg/Makefile.in index f81a3c3..b742842 100644 --- a/libraries/evas/src/modules/loaders/svg/Makefile.in +++ b/libraries/evas/src/modules/loaders/svg/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/svg/evas_image_load_svg.c b/libraries/evas/src/modules/loaders/svg/evas_image_load_svg.c index f1c8452..dc0fc8d 100644 --- a/libraries/evas/src/modules/loaders/svg/evas_image_load_svg.c +++ b/libraries/evas/src/modules/loaders/svg/evas_image_load_svg.c | |||
@@ -13,7 +13,8 @@ Evas_Image_Load_Func evas_image_load_svg_func = | |||
13 | EINA_FALSE, | 13 | EINA_FALSE, |
14 | evas_image_load_file_head_svg, | 14 | evas_image_load_file_head_svg, |
15 | evas_image_load_file_data_svg, | 15 | evas_image_load_file_data_svg, |
16 | NULL | 16 | NULL, |
17 | EINA_FALSE | ||
17 | }; | 18 | }; |
18 | 19 | ||
19 | static int rsvg_initialized = 0; | 20 | static int rsvg_initialized = 0; |
diff --git a/libraries/evas/src/modules/loaders/tga/Makefile.in b/libraries/evas/src/modules/loaders/tga/Makefile.in index 645c77a..4d822d1 100644 --- a/libraries/evas/src/modules/loaders/tga/Makefile.in +++ b/libraries/evas/src/modules/loaders/tga/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c b/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c index 61b99f6..9b4073c 100644 --- a/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c +++ b/libraries/evas/src/modules/loaders/tga/evas_image_load_tga.c | |||
@@ -65,7 +65,8 @@ static Evas_Image_Load_Func evas_image_load_tga_func = | |||
65 | EINA_TRUE, | 65 | EINA_TRUE, |
66 | evas_image_load_file_head_tga, | 66 | evas_image_load_file_head_tga, |
67 | evas_image_load_file_data_tga, | 67 | evas_image_load_file_data_tga, |
68 | NULL | 68 | NULL, |
69 | EINA_FALSE | ||
69 | }; | 70 | }; |
70 | 71 | ||
71 | static Eina_Bool | 72 | static Eina_Bool |
diff --git a/libraries/evas/src/modules/loaders/tiff/Makefile.in b/libraries/evas/src/modules/loaders/tiff/Makefile.in index a2deea7..2b102a1 100644 --- a/libraries/evas/src/modules/loaders/tiff/Makefile.in +++ b/libraries/evas/src/modules/loaders/tiff/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/tiff/evas_image_load_tiff.c b/libraries/evas/src/modules/loaders/tiff/evas_image_load_tiff.c index b9bea91..e17d5a6 100644 --- a/libraries/evas/src/modules/loaders/tiff/evas_image_load_tiff.c +++ b/libraries/evas/src/modules/loaders/tiff/evas_image_load_tiff.c | |||
@@ -34,7 +34,8 @@ static Evas_Image_Load_Func evas_image_load_tiff_func = | |||
34 | EINA_TRUE, | 34 | EINA_TRUE, |
35 | evas_image_load_file_head_tiff, | 35 | evas_image_load_file_head_tiff, |
36 | evas_image_load_file_data_tiff, | 36 | evas_image_load_file_data_tiff, |
37 | NULL | 37 | NULL, |
38 | EINA_FALSE | ||
38 | }; | 39 | }; |
39 | 40 | ||
40 | typedef struct TIFFRGBAImage_Extra TIFFRGBAImage_Extra; | 41 | typedef struct TIFFRGBAImage_Extra TIFFRGBAImage_Extra; |
diff --git a/libraries/evas/src/modules/loaders/wbmp/Makefile.in b/libraries/evas/src/modules/loaders/wbmp/Makefile.in index 41a3bb9..5c01e1c 100644 --- a/libraries/evas/src/modules/loaders/wbmp/Makefile.in +++ b/libraries/evas/src/modules/loaders/wbmp/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/wbmp/evas_image_load_wbmp.c b/libraries/evas/src/modules/loaders/wbmp/evas_image_load_wbmp.c index fa6fab2..54e28d5 100644 --- a/libraries/evas/src/modules/loaders/wbmp/evas_image_load_wbmp.c +++ b/libraries/evas/src/modules/loaders/wbmp/evas_image_load_wbmp.c | |||
@@ -19,21 +19,22 @@ static Evas_Image_Load_Func evas_image_load_wbmp_func = | |||
19 | EINA_TRUE, | 19 | EINA_TRUE, |
20 | evas_image_load_file_head_wbmp, | 20 | evas_image_load_file_head_wbmp, |
21 | evas_image_load_file_data_wbmp, | 21 | evas_image_load_file_data_wbmp, |
22 | NULL | 22 | NULL, |
23 | EINA_FALSE | ||
23 | }; | 24 | }; |
24 | 25 | ||
25 | 26 | ||
26 | static int | 27 | static int |
27 | read_mb(unsigned int *data, FILE *f) | 28 | read_mb(unsigned int *data, void *map, size_t length, size_t *position) |
28 | { | 29 | { |
29 | int ac = 0, ct; | 30 | int ac = 0, ct; |
30 | unsigned char buf; | 31 | unsigned char buf; |
31 | 32 | ||
32 | for (ct = 0;;) | 33 | for (ct = 0;;) |
33 | { | 34 | { |
34 | if ((ct++) == 5) return -1; | 35 | if ((ct++) == 5) return -1; |
35 | if ((fread(&buf, 1, 1, f)) < 1) | 36 | if (*position > length) return -1; |
36 | return -1; | 37 | buf = ((unsigned char *) map)[(*position)++]; |
37 | ac = (ac << 7) | (buf & 0x7f); | 38 | ac = (ac << 7) | (buf & 0x7f); |
38 | if ((buf & 0x80) == 0) break; | 39 | if ((buf & 0x80) == 0) break; |
39 | } | 40 | } |
@@ -44,70 +45,105 @@ read_mb(unsigned int *data, FILE *f) | |||
44 | static Eina_Bool | 45 | static Eina_Bool |
45 | evas_image_load_file_head_wbmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) | 46 | evas_image_load_file_head_wbmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) |
46 | { | 47 | { |
47 | FILE *f; | 48 | Eina_File *f; |
49 | void *map = NULL; | ||
50 | size_t position = 0; | ||
51 | size_t length; | ||
48 | unsigned int type, w, h; | 52 | unsigned int type, w, h; |
49 | unsigned char fixed_header; | 53 | |
50 | struct stat statbuf; | ||
51 | |||
52 | *error = EVAS_LOAD_ERROR_GENERIC; | 54 | *error = EVAS_LOAD_ERROR_GENERIC; |
53 | f = fopen(file, "rb"); | 55 | f = eina_file_open(file, 0); |
54 | if (!f) | 56 | if (!f) |
55 | { | 57 | { |
56 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 58 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
57 | return EINA_FALSE; | 59 | return EINA_FALSE; |
58 | } | 60 | } |
59 | 61 | ||
60 | if (stat(file, &statbuf) == -1) goto bail; | 62 | length = eina_file_size_get(f); |
61 | if (read_mb(&type, f) < 0) goto bail; | 63 | if (length <= 4) goto bail; |
62 | 64 | ||
65 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); | ||
66 | if (!map) goto bail; | ||
67 | |||
68 | if (read_mb(&type, map, length, &position) < 0) goto bail; | ||
69 | |||
63 | if (type != 0) | 70 | if (type != 0) |
64 | { | 71 | { |
65 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 72 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
66 | goto bail; | 73 | goto bail; |
67 | } | 74 | } |
68 | 75 | ||
69 | if (fread(&fixed_header, 1, 1, f) != 1) goto bail; | 76 | position++; /* skipping one byte */ |
70 | if (read_mb(&w, f) < 0) goto bail; | 77 | if (read_mb(&w, map, length, &position) < 0) goto bail; |
71 | if (read_mb(&h, f) < 0) goto bail; | 78 | if (read_mb(&h, map, length, &position) < 0) goto bail; |
72 | if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || | 79 | if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || |
73 | IMG_TOO_BIG(w, h)) | 80 | IMG_TOO_BIG(w, h)) |
74 | { | 81 | { |
75 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | 82 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; |
76 | goto bail; | 83 | goto bail; |
77 | } | 84 | } |
78 | 85 | ||
79 | fclose(f); | 86 | eina_file_map_free(f, map); |
87 | eina_file_close(f); | ||
80 | ie->w = w; | 88 | ie->w = w; |
81 | ie->h = h; | 89 | ie->h = h; |
82 | 90 | ||
83 | *error = EVAS_LOAD_ERROR_NONE; | 91 | *error = EVAS_LOAD_ERROR_NONE; |
84 | return EINA_TRUE; | 92 | return EINA_TRUE; |
85 | bail: | 93 | bail: |
86 | fclose(f); | 94 | if (map) eina_file_map_free(f, map); |
95 | eina_file_close(f); | ||
87 | return EINA_FALSE; | 96 | return EINA_FALSE; |
88 | } | 97 | } |
89 | 98 | ||
90 | static Eina_Bool | 99 | static Eina_Bool |
91 | evas_image_load_file_data_wbmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) | 100 | evas_image_load_file_data_wbmp(Image_Entry *ie, const char *file, const char *key __UNUSED__, int *error) |
92 | { | 101 | { |
93 | FILE *f; | 102 | Eina_File *f; |
94 | unsigned int dummy, line_length; | 103 | void *map = NULL; |
104 | size_t position = 0; | ||
105 | size_t length; | ||
106 | unsigned int type, w, h; | ||
107 | unsigned int line_length; | ||
95 | unsigned char *line = NULL; | 108 | unsigned char *line = NULL; |
96 | int cur = 0, x, y; | 109 | int cur = 0, x, y; |
97 | DATA32 *dst_data; | 110 | DATA32 *dst_data; |
98 | 111 | ||
99 | *error = EVAS_LOAD_ERROR_GENERIC; | 112 | *error = EVAS_LOAD_ERROR_GENERIC; |
100 | f = fopen(file, "rb"); | 113 | f = eina_file_open(file, EINA_FALSE); |
101 | if (!f) | 114 | if (!f) |
102 | { | 115 | { |
103 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 116 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
104 | return EINA_FALSE; | 117 | return EINA_FALSE; |
105 | } | 118 | } |
106 | if (read_mb(&dummy, f) < 0) goto bail; | 119 | |
107 | if (fread(&dummy, 1, 1, f) != 1) goto bail; | 120 | length = eina_file_size_get(f); |
108 | if (read_mb(&dummy, f) < 0) goto bail; | 121 | if (length <= 4) goto bail; |
109 | if (read_mb(&dummy, f) < 0) goto bail; | 122 | |
110 | 123 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); | |
124 | if (!map) goto bail; | ||
125 | |||
126 | if (read_mb(&type, map, length, &position) < 0) goto bail; | ||
127 | position++; /* skipping one byte */ | ||
128 | if (read_mb(&w, map, length, &position) < 0) goto bail; | ||
129 | if (read_mb(&h, map, length, &position) < 0) goto bail; | ||
130 | |||
131 | if (type != 0) | ||
132 | { | ||
133 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | ||
134 | goto bail; | ||
135 | } | ||
136 | |||
137 | if ((w < 1) || (h < 1) || (w > IMG_MAX_SIZE) || (h > IMG_MAX_SIZE) || | ||
138 | IMG_TOO_BIG(w, h)) | ||
139 | { | ||
140 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | ||
141 | goto bail; | ||
142 | } | ||
143 | |||
144 | ie->w = w; | ||
145 | ie->h = h; | ||
146 | |||
111 | evas_cache_image_surface_alloc(ie, ie->w, ie->h); | 147 | evas_cache_image_surface_alloc(ie, ie->w, ie->h); |
112 | dst_data = evas_cache_image_pixels(ie); | 148 | dst_data = evas_cache_image_pixels(ie); |
113 | if (!dst_data) | 149 | if (!dst_data) |
@@ -115,13 +151,14 @@ evas_image_load_file_data_wbmp(Image_Entry *ie, const char *file, const char *ke | |||
115 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | 151 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; |
116 | goto bail; | 152 | goto bail; |
117 | } | 153 | } |
118 | 154 | ||
119 | line_length = (ie->w + 7) >> 3; | 155 | line_length = (ie->w + 7) >> 3; |
120 | line = alloca(line_length); | 156 | |
121 | |||
122 | for (y = 0; y < (int)ie->h; y++) | 157 | for (y = 0; y < (int)ie->h; y++) |
123 | { | 158 | { |
124 | if (fread(line, 1, line_length, f) != line_length) goto bail; | 159 | if (position + line_length > length) goto bail; |
160 | line = ((unsigned char*) map) + position; | ||
161 | position += line_length; | ||
125 | for (x = 0; x < (int)ie->w; x++) | 162 | for (x = 0; x < (int)ie->w; x++) |
126 | { | 163 | { |
127 | int idx = x >> 3; | 164 | int idx = x >> 3; |
@@ -131,11 +168,13 @@ evas_image_load_file_data_wbmp(Image_Entry *ie, const char *file, const char *ke | |||
131 | cur++; | 168 | cur++; |
132 | } | 169 | } |
133 | } | 170 | } |
134 | fclose(f); | 171 | eina_file_map_free(f, map); |
172 | eina_file_close(f); | ||
135 | *error = EVAS_LOAD_ERROR_NONE; | 173 | *error = EVAS_LOAD_ERROR_NONE; |
136 | return EINA_TRUE; | 174 | return EINA_TRUE; |
137 | bail: | 175 | bail: |
138 | fclose(f); | 176 | if (map) eina_file_map_free(f, map); |
177 | eina_file_close(f); | ||
139 | return EINA_FALSE; | 178 | return EINA_FALSE; |
140 | } | 179 | } |
141 | 180 | ||
diff --git a/libraries/evas/src/modules/loaders/xpm/Makefile.in b/libraries/evas/src/modules/loaders/xpm/Makefile.in index eba8f60..6383d9e 100644 --- a/libraries/evas/src/modules/loaders/xpm/Makefile.in +++ b/libraries/evas/src/modules/loaders/xpm/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c b/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c index 3a04f84..c764f6d 100644 --- a/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c +++ b/libraries/evas/src/modules/loaders/xpm/evas_image_load_xpm.c | |||
@@ -24,16 +24,20 @@ static Evas_Image_Load_Func evas_image_load_xpm_func = | |||
24 | EINA_FALSE, | 24 | EINA_FALSE, |
25 | evas_image_load_file_head_xpm, | 25 | evas_image_load_file_head_xpm, |
26 | evas_image_load_file_data_xpm, | 26 | evas_image_load_file_data_xpm, |
27 | NULL | 27 | NULL, |
28 | EINA_FALSE | ||
28 | }; | 29 | }; |
29 | 30 | ||
30 | // TODO: REWRITE THIS WITH THREAD SAFE VERSION NOT USING THIS HANDLE!!!! | 31 | static Eina_File *rgb_txt; |
31 | static FILE *rgb_txt = NULL; | 32 | static void *rgb_txt_map; |
32 | 33 | ||
33 | static void | 34 | static void |
34 | xpm_parse_color(char *color, int *r, int *g, int *b) | 35 | xpm_parse_color(char *color, int *r, int *g, int *b) |
35 | { | 36 | { |
36 | char buf[4096]; | 37 | char *tmp; |
38 | char *max; | ||
39 | char *endline; | ||
40 | char buf[4096]; | ||
37 | 41 | ||
38 | /* is a #ff00ff like color */ | 42 | /* is a #ff00ff like color */ |
39 | if (color[0] == '#') | 43 | if (color[0] == '#') |
@@ -75,20 +79,23 @@ xpm_parse_color(char *color, int *r, int *g, int *b) | |||
75 | return; | 79 | return; |
76 | } | 80 | } |
77 | /* look in rgb txt database */ | 81 | /* look in rgb txt database */ |
78 | if (!rgb_txt) rgb_txt = fopen("/usr/lib/X11/rgb.txt", "r"); | ||
79 | if (!rgb_txt) rgb_txt = fopen("/usr/X11/lib/X11/rgb.txt", "r"); | ||
80 | if (!rgb_txt) rgb_txt = fopen("/usr/X11R6/lib/X11/rgb.txt", "r"); | ||
81 | if (!rgb_txt) rgb_txt = fopen("/usr/openwin/lib/X11/rgb.txt", "r"); | ||
82 | if (!rgb_txt) return; | 82 | if (!rgb_txt) return; |
83 | fseek(rgb_txt, 0, SEEK_SET); | 83 | tmp = rgb_txt_map; |
84 | while (fgets(buf, sizeof(buf), rgb_txt)) | 84 | max = tmp + eina_file_size_get(rgb_txt); |
85 | |||
86 | while (tmp < max) | ||
85 | { | 87 | { |
86 | buf[sizeof(buf) - 1] = 0; | 88 | endline = memchr(tmp, '\n', max - tmp); |
87 | if (buf[0] != '!') | 89 | if (!endline) endline = max; |
90 | if ((*tmp != '!') && ((endline - tmp) < (int) (sizeof(buf) - 1))) | ||
88 | { | 91 | { |
89 | int rr, gg, bb; | 92 | int rr, gg, bb; |
90 | char name[4096]; | 93 | char name[4096]; |
91 | 94 | ||
95 | /* FIXME: not really efficient */ | ||
96 | memcpy(buf, tmp, endline - tmp); | ||
97 | buf[endline - tmp + 1] = '\0'; | ||
98 | |||
92 | if (sscanf(buf, "%i %i %i %[^\n]", &rr, &gg, &bb, name) == 4) | 99 | if (sscanf(buf, "%i %i %i %[^\n]", &rr, &gg, &bb, name) == 4) |
93 | { | 100 | { |
94 | if (!strcasecmp(name, color)) | 101 | if (!strcasecmp(name, color)) |
@@ -100,33 +107,30 @@ xpm_parse_color(char *color, int *r, int *g, int *b) | |||
100 | } | 107 | } |
101 | } | 108 | } |
102 | } | 109 | } |
110 | tmp = endline + 1; | ||
103 | } | 111 | } |
104 | } | 112 | } |
105 | 113 | ||
106 | static void | ||
107 | xpm_parse_done(void) | ||
108 | { | ||
109 | if (rgb_txt) fclose(rgb_txt); | ||
110 | rgb_txt = NULL; | ||
111 | } | ||
112 | |||
113 | |||
114 | /** FIXME: clean this up and make more efficient **/ | 114 | /** FIXME: clean this up and make more efficient **/ |
115 | static Eina_Bool | 115 | static Eina_Bool |
116 | evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UNUSED__, int load_data, int *error) | 116 | evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UNUSED__, int load_data, int *error) |
117 | { | 117 | { |
118 | DATA32 *ptr, *end; | 118 | DATA32 *ptr, *end; |
119 | FILE *f; | 119 | Eina_File *f; |
120 | const char *map; | ||
121 | size_t length; | ||
122 | size_t position; | ||
120 | 123 | ||
121 | int pc, c, i, j, k, w, h, ncolors, cpp, comment, transp, | 124 | int pc, c, i, j, k, w, h, ncolors, cpp, comment, transp, |
122 | quote, context, len, done, r, g, b, backslash, lu1, lu2; | 125 | quote, context, len, done, r, g, b, backslash, lu1, lu2; |
123 | char *line, s[256], tok[128], col[256], *tl; | 126 | char *line = NULL; |
127 | char s[256], tok[128], col[256], *tl; | ||
124 | int lsz = 256; | 128 | int lsz = 256; |
125 | struct _cmap { | 129 | struct _cmap { |
126 | char str[6]; | 130 | char str[6]; |
127 | unsigned char transp; | 131 | unsigned char transp; |
128 | short r, g, b; | 132 | short r, g, b; |
129 | } *cmap; | 133 | } *cmap = NULL; |
130 | 134 | ||
131 | short lookup[128 - 32][128 - 32]; | 135 | short lookup[128 - 32][128 - 32]; |
132 | int count, pixels; | 136 | int count, pixels; |
@@ -138,30 +142,39 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN | |||
138 | /* if immediate_load is 1, then dont delay image laoding as below, or */ | 142 | /* if immediate_load is 1, then dont delay image laoding as below, or */ |
139 | /* already data in this image - dont load it again */ | 143 | /* already data in this image - dont load it again */ |
140 | 144 | ||
141 | f = fopen(file, "rb"); | 145 | f = eina_file_open(file, 0); |
142 | if (!f) | 146 | if (!f) |
143 | { | 147 | { |
144 | xpm_parse_done(); | 148 | ERR("XPM ERROR: file failed to open"); |
145 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; | 149 | *error = EVAS_LOAD_ERROR_DOES_NOT_EXIST; |
146 | return EINA_FALSE; | 150 | return EINA_FALSE; |
147 | } | 151 | } |
148 | if (fread(s, 9, 1, f) != 1) | 152 | length = eina_file_size_get(f); |
153 | position = 0; | ||
154 | if (length < 9) | ||
149 | { | 155 | { |
150 | fclose(f); | 156 | ERR("XPM ERROR: file size, %i, is to small", length); |
151 | xpm_parse_done(); | 157 | eina_file_close(f); |
152 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 158 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
153 | return EINA_FALSE; | 159 | return EINA_FALSE; |
154 | } | 160 | } |
155 | rewind(f); | 161 | |
156 | s[9] = 0; | 162 | map = eina_file_map_all(f, EINA_FILE_SEQUENTIAL); |
157 | if (strcmp("/* XPM */", s)) | 163 | if (!map) |
158 | { | 164 | { |
159 | fclose(f); | 165 | ERR("XPM ERROR: file failed to mmap"); |
160 | xpm_parse_done(); | 166 | eina_file_close(f); |
161 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 167 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
162 | return EINA_FALSE; | 168 | return EINA_FALSE; |
163 | } | 169 | } |
164 | 170 | ||
171 | if (strncmp("/* XPM */", map, 9)) | ||
172 | { | ||
173 | ERR("XPM ERROR: header not found"); | ||
174 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | ||
175 | goto on_error; | ||
176 | } | ||
177 | |||
165 | i = 0; | 178 | i = 0; |
166 | j = 0; | 179 | j = 0; |
167 | cmap = NULL; | 180 | cmap = NULL; |
@@ -178,10 +191,8 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN | |||
178 | line = malloc(lsz); | 191 | line = malloc(lsz); |
179 | if (!line) | 192 | if (!line) |
180 | { | 193 | { |
181 | fclose(f); | ||
182 | xpm_parse_done(); | ||
183 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | 194 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; |
184 | return EINA_FALSE; | 195 | goto on_error; |
185 | } | 196 | } |
186 | 197 | ||
187 | backslash = 0; | 198 | backslash = 0; |
@@ -189,8 +200,8 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN | |||
189 | while (!done) | 200 | while (!done) |
190 | { | 201 | { |
191 | pc = c; | 202 | pc = c; |
192 | c = fgetc(f); | 203 | if (position == length) break ; |
193 | if (c == EOF) break; | 204 | c = (char) map[position++]; |
194 | if (!quote) | 205 | if (!quote) |
195 | { | 206 | { |
196 | if ((pc == '/') && (c == '*')) | 207 | if ((pc == '/') && (c == '*')) |
@@ -215,56 +226,38 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN | |||
215 | if (sscanf(line, "%i %i %i %i", &w, &h, &ncolors, &cpp) != 4) | 226 | if (sscanf(line, "%i %i %i %i", &w, &h, &ncolors, &cpp) != 4) |
216 | { | 227 | { |
217 | ERR("XPM ERROR: XPM file malformed header"); | 228 | ERR("XPM ERROR: XPM file malformed header"); |
218 | free(line); | ||
219 | fclose(f); | ||
220 | xpm_parse_done(); | ||
221 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; | 229 | *error = EVAS_LOAD_ERROR_CORRUPT_FILE; |
222 | return EINA_FALSE; | 230 | goto on_error; |
223 | } | 231 | } |
224 | if ((ncolors > 32766) || (ncolors < 1)) | 232 | if ((ncolors > 32766) || (ncolors < 1)) |
225 | { | 233 | { |
226 | ERR("XPM ERROR: XPM files with colors > 32766 or < 1 not supported"); | 234 | ERR("XPM ERROR: XPM files with colors > 32766 or < 1 not supported"); |
227 | free(line); | ||
228 | fclose(f); | ||
229 | xpm_parse_done(); | ||
230 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 235 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
231 | return EINA_FALSE; | 236 | goto on_error; |
232 | } | 237 | } |
233 | if ((cpp > 5) || (cpp < 1)) | 238 | if ((cpp > 5) || (cpp < 1)) |
234 | { | 239 | { |
235 | ERR("XPM ERROR: XPM files with characters per pixel > 5 or < 1not supported"); | 240 | ERR("XPM ERROR: XPM files with characters per pixel > 5 or < 1not supported"); |
236 | free(line); | ||
237 | fclose(f); | ||
238 | xpm_parse_done(); | ||
239 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; | 241 | *error = EVAS_LOAD_ERROR_UNKNOWN_FORMAT; |
240 | return EINA_FALSE; | 242 | goto on_error; |
241 | } | 243 | } |
242 | if ((w > IMG_MAX_SIZE) || (w < 1)) | 244 | if ((w > IMG_MAX_SIZE) || (w < 1)) |
243 | { | 245 | { |
244 | ERR("XPM ERROR: Image width > IMG_MAX_SIZE or < 1 pixels for file"); | 246 | ERR("XPM ERROR: Image width > IMG_MAX_SIZE or < 1 pixels for file"); |
245 | free(line); | ||
246 | fclose(f); | ||
247 | xpm_parse_done(); | ||
248 | *error = EVAS_LOAD_ERROR_GENERIC; | 247 | *error = EVAS_LOAD_ERROR_GENERIC; |
249 | return EINA_FALSE; | 248 | goto on_error; |
250 | } | 249 | } |
251 | if ((h > IMG_MAX_SIZE) || (h < 1)) | 250 | if ((h > IMG_MAX_SIZE) || (h < 1)) |
252 | { | 251 | { |
253 | ERR("XPM ERROR: Image height > IMG_MAX_SIZE or < 1 pixels for file"); | 252 | ERR("XPM ERROR: Image height > IMG_MAX_SIZE or < 1 pixels for file"); |
254 | free(line); | ||
255 | fclose(f); | ||
256 | xpm_parse_done(); | ||
257 | *error = EVAS_LOAD_ERROR_GENERIC; | 253 | *error = EVAS_LOAD_ERROR_GENERIC; |
258 | return EINA_FALSE; | 254 | goto on_error; |
259 | } | 255 | } |
260 | if (IMG_TOO_BIG(w, h)) | 256 | if (IMG_TOO_BIG(w, h)) |
261 | { | 257 | { |
262 | ERR("XPM ERROR: Image just too big to ever allocate"); | 258 | ERR("XPM ERROR: Image just too big to ever allocate"); |
263 | free(line); | ||
264 | fclose(f); | ||
265 | xpm_parse_done(); | ||
266 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | 259 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; |
267 | return EINA_FALSE; | 260 | goto on_error; |
268 | } | 261 | } |
269 | 262 | ||
270 | if (!cmap) | 263 | if (!cmap) |
@@ -272,11 +265,8 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN | |||
272 | cmap = malloc(sizeof(struct _cmap) * ncolors); | 265 | cmap = malloc(sizeof(struct _cmap) * ncolors); |
273 | if (!cmap) | 266 | if (!cmap) |
274 | { | 267 | { |
275 | free(line); | ||
276 | fclose(f); | ||
277 | xpm_parse_done(); | ||
278 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | 268 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; |
279 | return EINA_FALSE; | 269 | goto on_error; |
280 | } | 270 | } |
281 | } | 271 | } |
282 | ie->w = w; | 272 | ie->w = w; |
@@ -398,24 +388,16 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN | |||
398 | ptr = evas_cache_image_pixels(ie); | 388 | ptr = evas_cache_image_pixels(ie); |
399 | if (!ptr) | 389 | if (!ptr) |
400 | { | 390 | { |
401 | free(cmap); | ||
402 | free(line); | ||
403 | fclose(f); | ||
404 | xpm_parse_done(); | ||
405 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; | 391 | *error = EVAS_LOAD_ERROR_RESOURCE_ALLOCATION_FAILED; |
406 | return EINA_FALSE; | 392 | goto on_error; |
407 | } | 393 | } |
408 | pixels = w * h; | 394 | pixels = w * h; |
409 | end = ptr + pixels; | 395 | end = ptr + pixels; |
410 | } | 396 | } |
411 | else | 397 | else |
412 | { | 398 | { |
413 | free(cmap); | ||
414 | free(line); | ||
415 | fclose(f); | ||
416 | xpm_parse_done(); | ||
417 | *error = EVAS_LOAD_ERROR_NONE; | 399 | *error = EVAS_LOAD_ERROR_NONE; |
418 | return EINA_TRUE; | 400 | goto on_success; |
419 | } | 401 | } |
420 | } | 402 | } |
421 | else | 403 | else |
@@ -631,13 +613,21 @@ evas_image_load_file_xpm(Image_Entry *ie, const char *file, const char *key __UN | |||
631 | break; | 613 | break; |
632 | } | 614 | } |
633 | 615 | ||
616 | on_success: | ||
634 | free(cmap); | 617 | free(cmap); |
635 | free(line); | 618 | free(line); |
636 | fclose(f); | ||
637 | 619 | ||
638 | xpm_parse_done(); | 620 | eina_file_map_free(f, (void*) map); |
621 | eina_file_close(f); | ||
622 | |||
639 | *error = EVAS_LOAD_ERROR_NONE; | 623 | *error = EVAS_LOAD_ERROR_NONE; |
640 | return EINA_TRUE; | 624 | return EINA_TRUE; |
625 | |||
626 | on_error: | ||
627 | free(line); | ||
628 | eina_file_map_free(f, (void*) map); | ||
629 | eina_file_close(f); | ||
630 | return EINA_FALSE; | ||
641 | } | 631 | } |
642 | 632 | ||
643 | static Eina_Bool | 633 | static Eina_Bool |
@@ -663,6 +653,14 @@ module_open(Evas_Module *em) | |||
663 | EINA_LOG_ERR("Can not create a module log domain."); | 653 | EINA_LOG_ERR("Can not create a module log domain."); |
664 | return 0; | 654 | return 0; |
665 | } | 655 | } |
656 | |||
657 | /* Shouldn't we make that PATH configurable ? */ | ||
658 | rgb_txt = eina_file_open("/usr/lib/X11/rgb.txt", 0); | ||
659 | if (!rgb_txt) rgb_txt = eina_file_open("/usr/X11/lib/X11/rgb.txt", 0); | ||
660 | if (!rgb_txt) rgb_txt = eina_file_open("/usr/X11R6/lib/X11/rgb.txt", 0); | ||
661 | if (!rgb_txt) rgb_txt = eina_file_open("/usr/openwin/lib/X11/rgb.txt", 0); | ||
662 | if (rgb_txt) | ||
663 | rgb_txt_map = eina_file_map_all(rgb_txt, EINA_FILE_SEQUENTIAL); | ||
666 | em->functions = (void *)(&evas_image_load_xpm_func); | 664 | em->functions = (void *)(&evas_image_load_xpm_func); |
667 | return 1; | 665 | return 1; |
668 | } | 666 | } |
@@ -670,6 +668,12 @@ module_open(Evas_Module *em) | |||
670 | static void | 668 | static void |
671 | module_close(Evas_Module *em __UNUSED__) | 669 | module_close(Evas_Module *em __UNUSED__) |
672 | { | 670 | { |
671 | if (rgb_txt) | ||
672 | { | ||
673 | eina_file_map_free(rgb_txt, rgb_txt_map); | ||
674 | eina_file_close(rgb_txt); | ||
675 | rgb_txt = NULL; | ||
676 | } | ||
673 | eina_log_domain_unregister(_evas_loader_xpm_log_dom); | 677 | eina_log_domain_unregister(_evas_loader_xpm_log_dom); |
674 | } | 678 | } |
675 | 679 | ||
diff --git a/libraries/evas/src/modules/savers/Makefile.in b/libraries/evas/src/modules/savers/Makefile.in index 6d64b4c..28236d9 100644 --- a/libraries/evas/src/modules/savers/Makefile.in +++ b/libraries/evas/src/modules/savers/Makefile.in | |||
@@ -211,8 +211,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
211 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 211 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
212 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 212 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
213 | PKG_CONFIG = @PKG_CONFIG@ | 213 | PKG_CONFIG = @PKG_CONFIG@ |
214 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
215 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
216 | PNG_CFLAGS = @PNG_CFLAGS@ | 214 | PNG_CFLAGS = @PNG_CFLAGS@ |
217 | PNG_LIBS = @PNG_LIBS@ | 215 | PNG_LIBS = @PNG_LIBS@ |
218 | RANLIB = @RANLIB@ | 216 | RANLIB = @RANLIB@ |
@@ -229,6 +227,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
229 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 227 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
230 | VERSION = @VERSION@ | 228 | VERSION = @VERSION@ |
231 | VMAJ = @VMAJ@ | 229 | VMAJ = @VMAJ@ |
230 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
231 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
232 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 232 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
233 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 233 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
234 | XCB_CFLAGS = @XCB_CFLAGS@ | 234 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -310,6 +310,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
310 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 310 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
311 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 311 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
312 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 312 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
313 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
314 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
315 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
316 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
313 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 317 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
314 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 318 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
315 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 319 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/savers/edb/Makefile.in b/libraries/evas/src/modules/savers/edb/Makefile.in index e319b56..2ed29ec 100644 --- a/libraries/evas/src/modules/savers/edb/Makefile.in +++ b/libraries/evas/src/modules/savers/edb/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/savers/eet/Makefile.in b/libraries/evas/src/modules/savers/eet/Makefile.in index c80e946..6564c18 100644 --- a/libraries/evas/src/modules/savers/eet/Makefile.in +++ b/libraries/evas/src/modules/savers/eet/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/savers/jpeg/Makefile.in b/libraries/evas/src/modules/savers/jpeg/Makefile.in index 3c1bd8b..e57c4f9 100644 --- a/libraries/evas/src/modules/savers/jpeg/Makefile.in +++ b/libraries/evas/src/modules/savers/jpeg/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/savers/png/Makefile.in b/libraries/evas/src/modules/savers/png/Makefile.in index 3b905a5..da04ff2 100644 --- a/libraries/evas/src/modules/savers/png/Makefile.in +++ b/libraries/evas/src/modules/savers/png/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/modules/savers/tiff/Makefile.in b/libraries/evas/src/modules/savers/tiff/Makefile.in index 27acddd..8f4411f 100644 --- a/libraries/evas/src/modules/savers/tiff/Makefile.in +++ b/libraries/evas/src/modules/savers/tiff/Makefile.in | |||
@@ -231,8 +231,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 231 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
232 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 232 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
233 | PKG_CONFIG = @PKG_CONFIG@ | 233 | PKG_CONFIG = @PKG_CONFIG@ |
234 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
235 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
236 | PNG_CFLAGS = @PNG_CFLAGS@ | 234 | PNG_CFLAGS = @PNG_CFLAGS@ |
237 | PNG_LIBS = @PNG_LIBS@ | 235 | PNG_LIBS = @PNG_LIBS@ |
238 | RANLIB = @RANLIB@ | 236 | RANLIB = @RANLIB@ |
@@ -249,6 +247,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
249 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 247 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
250 | VERSION = @VERSION@ | 248 | VERSION = @VERSION@ |
251 | VMAJ = @VMAJ@ | 249 | VMAJ = @VMAJ@ |
250 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
251 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
252 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 252 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 253 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
254 | XCB_CFLAGS = @XCB_CFLAGS@ | 254 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -330,6 +330,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 330 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 331 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 332 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
333 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
334 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
335 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
336 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
333 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 337 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
334 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 338 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
335 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 339 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/static_deps/Makefile.in b/libraries/evas/src/static_deps/Makefile.in index 94f534e..514e79c 100644 --- a/libraries/evas/src/static_deps/Makefile.in +++ b/libraries/evas/src/static_deps/Makefile.in | |||
@@ -207,8 +207,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
207 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 207 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
208 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 208 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
209 | PKG_CONFIG = @PKG_CONFIG@ | 209 | PKG_CONFIG = @PKG_CONFIG@ |
210 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
211 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
212 | PNG_CFLAGS = @PNG_CFLAGS@ | 210 | PNG_CFLAGS = @PNG_CFLAGS@ |
213 | PNG_LIBS = @PNG_LIBS@ | 211 | PNG_LIBS = @PNG_LIBS@ |
214 | RANLIB = @RANLIB@ | 212 | RANLIB = @RANLIB@ |
@@ -225,6 +223,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
225 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 223 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
226 | VERSION = @VERSION@ | 224 | VERSION = @VERSION@ |
227 | VMAJ = @VMAJ@ | 225 | VMAJ = @VMAJ@ |
226 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
227 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
228 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 228 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
229 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 229 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
230 | XCB_CFLAGS = @XCB_CFLAGS@ | 230 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -306,6 +306,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
306 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 306 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
307 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 307 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
308 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 308 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
309 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
310 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
311 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
312 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
309 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 313 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
310 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 314 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
311 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 315 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/static_deps/liblinebreak/AUTHORS b/libraries/evas/src/static_deps/liblinebreak/AUTHORS index 523106f..22786d4 100644 --- a/libraries/evas/src/static_deps/liblinebreak/AUTHORS +++ b/libraries/evas/src/static_deps/liblinebreak/AUTHORS | |||
@@ -4,3 +4,5 @@ Nikolay Pultsin. Put forward the original requirements on liblinebreak, | |||
4 | performed tests, and made a lot of suggestions on the initial versions. | 4 | performed tests, and made a lot of suggestions on the initial versions. |
5 | 5 | ||
6 | Thomas Klausner. Autoconfiscated and libtoolized liblinebreak. | 6 | Thomas Klausner. Autoconfiscated and libtoolized liblinebreak. |
7 | |||
8 | Tom Hacohen. Added word boundaries support. | ||
diff --git a/libraries/evas/src/static_deps/liblinebreak/Makefile.am b/libraries/evas/src/static_deps/liblinebreak/Makefile.am index f386455..68e9c4a 100644 --- a/libraries/evas/src/static_deps/liblinebreak/Makefile.am +++ b/libraries/evas/src/static_deps/liblinebreak/Makefile.am | |||
@@ -1,13 +1,15 @@ | |||
1 | MAINTAINERCLEANFILES = Makefile.in | 1 | MAINTAINERCLEANFILES = Makefile.in |
2 | 2 | ||
3 | #noinst_PROGRAMS = filter_dup | 3 | #noinst_PROGRAMS = filter_dup |
4 | noinst_HEADERS = linebreak.h linebreakdef.h | 4 | noinst_HEADERS = linebreak.h linebreakdef.h wordbreakdef.h wordbreak.h |
5 | noinst_LTLIBRARIES = liblinebreak.la | 5 | noinst_LTLIBRARIES = liblinebreak.la |
6 | 6 | ||
7 | liblinebreak_la_SOURCES = \ | 7 | liblinebreak_la_SOURCES = \ |
8 | linebreak.c \ | 8 | linebreak.c \ |
9 | linebreakdata.c \ | 9 | linebreakdata.c \ |
10 | linebreakdef.c | 10 | linebreakdef.c \ |
11 | wordbreak.c \ | ||
12 | wordbreakdata.x | ||
11 | 13 | ||
12 | EXTRA_DIST = \ | 14 | EXTRA_DIST = \ |
13 | LineBreak1.sed \ | 15 | LineBreak1.sed \ |
diff --git a/libraries/evas/src/static_deps/liblinebreak/Makefile.in b/libraries/evas/src/static_deps/liblinebreak/Makefile.in index 909f75e..9d44327 100644 --- a/libraries/evas/src/static_deps/liblinebreak/Makefile.in +++ b/libraries/evas/src/static_deps/liblinebreak/Makefile.in | |||
@@ -61,7 +61,7 @@ CONFIG_CLEAN_VPATH_FILES = | |||
61 | LTLIBRARIES = $(noinst_LTLIBRARIES) | 61 | LTLIBRARIES = $(noinst_LTLIBRARIES) |
62 | liblinebreak_la_LIBADD = | 62 | liblinebreak_la_LIBADD = |
63 | am_liblinebreak_la_OBJECTS = linebreak.lo linebreakdata.lo \ | 63 | am_liblinebreak_la_OBJECTS = linebreak.lo linebreakdata.lo \ |
64 | linebreakdef.lo | 64 | linebreakdef.lo wordbreak.lo |
65 | liblinebreak_la_OBJECTS = $(am_liblinebreak_la_OBJECTS) | 65 | liblinebreak_la_OBJECTS = $(am_liblinebreak_la_OBJECTS) |
66 | AM_V_lt = $(am__v_lt_$(V)) | 66 | AM_V_lt = $(am__v_lt_$(V)) |
67 | am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) | 67 | am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) |
@@ -200,8 +200,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
200 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 200 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
201 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 201 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
202 | PKG_CONFIG = @PKG_CONFIG@ | 202 | PKG_CONFIG = @PKG_CONFIG@ |
203 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
204 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
205 | PNG_CFLAGS = @PNG_CFLAGS@ | 203 | PNG_CFLAGS = @PNG_CFLAGS@ |
206 | PNG_LIBS = @PNG_LIBS@ | 204 | PNG_LIBS = @PNG_LIBS@ |
207 | RANLIB = @RANLIB@ | 205 | RANLIB = @RANLIB@ |
@@ -218,6 +216,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
218 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 216 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
219 | VERSION = @VERSION@ | 217 | VERSION = @VERSION@ |
220 | VMAJ = @VMAJ@ | 218 | VMAJ = @VMAJ@ |
219 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
220 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
221 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 221 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
222 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 222 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
223 | XCB_CFLAGS = @XCB_CFLAGS@ | 223 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -299,6 +299,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
299 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 299 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
300 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 300 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
301 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 301 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
302 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
303 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
304 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
305 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
302 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 306 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
303 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 307 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
304 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 308 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
@@ -376,12 +380,14 @@ version_info = @version_info@ | |||
376 | MAINTAINERCLEANFILES = Makefile.in | 380 | MAINTAINERCLEANFILES = Makefile.in |
377 | 381 | ||
378 | #noinst_PROGRAMS = filter_dup | 382 | #noinst_PROGRAMS = filter_dup |
379 | noinst_HEADERS = linebreak.h linebreakdef.h | 383 | noinst_HEADERS = linebreak.h linebreakdef.h wordbreakdef.h wordbreak.h |
380 | noinst_LTLIBRARIES = liblinebreak.la | 384 | noinst_LTLIBRARIES = liblinebreak.la |
381 | liblinebreak_la_SOURCES = \ | 385 | liblinebreak_la_SOURCES = \ |
382 | linebreak.c \ | 386 | linebreak.c \ |
383 | linebreakdata.c \ | 387 | linebreakdata.c \ |
384 | linebreakdef.c | 388 | linebreakdef.c \ |
389 | wordbreak.c \ | ||
390 | wordbreakdata.x | ||
385 | 391 | ||
386 | EXTRA_DIST = \ | 392 | EXTRA_DIST = \ |
387 | LineBreak1.sed \ | 393 | LineBreak1.sed \ |
@@ -446,6 +452,7 @@ distclean-compile: | |||
446 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linebreak.Plo@am__quote@ | 452 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linebreak.Plo@am__quote@ |
447 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linebreakdata.Plo@am__quote@ | 453 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linebreakdata.Plo@am__quote@ |
448 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linebreakdef.Plo@am__quote@ | 454 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/linebreakdef.Plo@am__quote@ |
455 | @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/wordbreak.Plo@am__quote@ | ||
449 | 456 | ||
450 | .c.o: | 457 | .c.o: |
451 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< | 458 | @am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< |
diff --git a/libraries/evas/src/static_deps/liblinebreak/wordbreak.c b/libraries/evas/src/static_deps/liblinebreak/wordbreak.c new file mode 100644 index 0000000..bbbb7f4 --- /dev/null +++ b/libraries/evas/src/static_deps/liblinebreak/wordbreak.c | |||
@@ -0,0 +1,435 @@ | |||
1 | /* vim: set tabstop=4 shiftwidth=4: */ | ||
2 | |||
3 | /* | ||
4 | * Word breaking in a Unicode sequence. Designed to be used in a | ||
5 | * generic text renderer. | ||
6 | * | ||
7 | * Copyright (C) 2011-2011 Tom Hacohen <tom@stosb.com> | ||
8 | * | ||
9 | * This software is provided 'as-is', without any express or implied | ||
10 | * warranty. In no event will the author be held liable for any damages | ||
11 | * arising from the use of this software. | ||
12 | * | ||
13 | * Permission is granted to anyone to use this software for any purpose, | ||
14 | * including commercial applications, and to alter it and redistribute | ||
15 | * it freely, subject to the following restrictions: | ||
16 | * | ||
17 | * 1. The origin of this software must not be misrepresented; you must | ||
18 | * not claim that you wrote the original software. If you use this | ||
19 | * software in a product, an acknowledgement in the product | ||
20 | * documentation would be appreciated but is not required. | ||
21 | * 2. Altered source versions must be plainly marked as such, and must | ||
22 | * not be misrepresented as being the original software. | ||
23 | * 3. This notice may not be removed or altered from any source | ||
24 | * distribution. | ||
25 | * | ||
26 | * The main reference is Unicode Standard Annex 29 (UAX #29): | ||
27 | * <URL:http://unicode.org/reports/tr29> | ||
28 | * | ||
29 | * When this library was designed, this annex was at Revision 17, for | ||
30 | * Unicode 6.0.0: | ||
31 | * <URL:http://www.unicode.org/reports/tr29/tr29-17.html> | ||
32 | * | ||
33 | * The Unicode Terms of Use are available at | ||
34 | * <URL:http://www.unicode.org/copyright.html> | ||
35 | */ | ||
36 | |||
37 | /** | ||
38 | * @file wordbreak.c | ||
39 | * | ||
40 | * Implementation of the word breaking algorithm as described in Unicode | ||
41 | * Standard Annex 29. | ||
42 | * | ||
43 | * @version 2.0, 2011/12/12 | ||
44 | * @author Tom Hacohen | ||
45 | */ | ||
46 | |||
47 | |||
48 | #include <assert.h> | ||
49 | #include <stddef.h> | ||
50 | #include <string.h> | ||
51 | #include "linebreak.h" | ||
52 | #include "linebreakdef.h" | ||
53 | |||
54 | #include "wordbreak.h" | ||
55 | #include "wordbreakdata.x" | ||
56 | |||
57 | #define ARRAY_LEN(x) (sizeof(x) / sizeof(x[0])) | ||
58 | |||
59 | /* Init the wordbreak internals. */ | ||
60 | void init_wordbreak(void) | ||
61 | { | ||
62 | /* Currently does nothing, may be needed in the future. */ | ||
63 | return; | ||
64 | } | ||
65 | |||
66 | /** | ||
67 | * Gets the word breaking class of a character. | ||
68 | * | ||
69 | * @param ch character to check | ||
70 | * @param wbp pointer to the wbp breaking properties array | ||
71 | * @param len the size of the wbp array in number of items. | ||
72 | * @return the word breaking class if found; \c WBP_Any otherwise | ||
73 | */ | ||
74 | static enum WordBreakClass get_char_wb_class( | ||
75 | utf32_t ch, | ||
76 | struct WordBreakProperties *wbp, | ||
77 | size_t len) | ||
78 | { | ||
79 | int min = 0; | ||
80 | int max = len - 1; | ||
81 | int mid; | ||
82 | |||
83 | do | ||
84 | { | ||
85 | mid = (min + max) / 2; | ||
86 | |||
87 | if (ch < wbp[mid].start) | ||
88 | max = mid - 1; | ||
89 | else if (ch > wbp[mid].end) | ||
90 | min = mid + 1; | ||
91 | else | ||
92 | return wbp[mid].prop; | ||
93 | } | ||
94 | while (min <= max); | ||
95 | |||
96 | return WBP_Any; | ||
97 | } | ||
98 | |||
99 | /** | ||
100 | * Sets the break types in brks starting from posLast up to posStop. | ||
101 | * | ||
102 | * It sets the inside chars to #WORDBREAK_INSIDECHAR and the rest to brkType. | ||
103 | * Assumes brks is initialized - all the cells with #WORDBREAK_NOBREAK are | ||
104 | * cells that we really don't want to break after. | ||
105 | * | ||
106 | * @param s the string | ||
107 | * @param brks[out] the breaks array to fill. | ||
108 | * @param posStart the start position | ||
109 | * @param posEnd the end position | ||
110 | * @param len the length of the string | ||
111 | * @param brkType the breaks type to use | ||
112 | * @param get_next_char function to get the next UTF-32 character | ||
113 | */ | ||
114 | static void set_brks_to(const void *s, | ||
115 | char *brks, | ||
116 | size_t posStart, | ||
117 | size_t posEnd, | ||
118 | size_t len, | ||
119 | char brkType, | ||
120 | get_next_char_t get_next_char) | ||
121 | { | ||
122 | size_t posCur = posStart; | ||
123 | while (posCur < posEnd) | ||
124 | { | ||
125 | get_next_char(s, len, &posCur); | ||
126 | for ( ; posStart < posCur - 1; ++posStart) | ||
127 | { | ||
128 | brks[posStart] = WORDBREAK_INSIDECHAR; | ||
129 | } | ||
130 | assert(posStart == posCur - 1); | ||
131 | |||
132 | /* Only set it if we haven't set it not to break before. */ | ||
133 | if (brks[posStart] != WORDBREAK_NOBREAK) | ||
134 | brks[posStart] = brkType; | ||
135 | posStart = posCur; | ||
136 | } | ||
137 | } | ||
138 | |||
139 | /* Checks to see if newline, cr, or lf. for WB3a and b */ | ||
140 | #define IS_WB3ab(cls) ((cls == WBP_Newline) || (cls == WBP_CR) || \ | ||
141 | (cls == WBP_LF)) | ||
142 | |||
143 | /** | ||
144 | * Sets the word breaking information for a generic input string. | ||
145 | * | ||
146 | * @param[in] s input string | ||
147 | * @param[in] len length of the input | ||
148 | * @param[in] lang language of the input | ||
149 | * @param[out] brks pointer to the output breaking data, containing | ||
150 | * #WORDBREAK_BREAK, #WORDBREAK_NOBREAK, or | ||
151 | * #WORDBREAK_INSIDEACHAR | ||
152 | * @param[in] get_next_char function to get the next UTF-32 character | ||
153 | */ | ||
154 | static void set_wordbreaks( | ||
155 | const void *s, | ||
156 | size_t len, | ||
157 | const char *lang, | ||
158 | char *brks, | ||
159 | get_next_char_t get_next_char) | ||
160 | { | ||
161 | /* Previous class */ | ||
162 | enum WordBreakClass p_cls = WBP_Undefined; | ||
163 | /* Strong previous class. */ | ||
164 | enum WordBreakClass sp_cls = WBP_Undefined; | ||
165 | utf32_t ch; | ||
166 | size_t posCur = 0; | ||
167 | size_t posCurSt = 0; | ||
168 | size_t posLast = 0; | ||
169 | |||
170 | /* FIXME: unused atm. */ | ||
171 | (void) lang; | ||
172 | |||
173 | |||
174 | /* Init brks */ | ||
175 | memset(brks, WORDBREAK_BREAK, len); | ||
176 | |||
177 | ch = get_next_char(s, len, &posCur); | ||
178 | |||
179 | /* WB3a, WB3b are implied. */ | ||
180 | for ( ; ch != EOS ; ) | ||
181 | { | ||
182 | /* Current class */ | ||
183 | enum WordBreakClass c_cls; | ||
184 | c_cls = get_char_wb_class(ch, wb_prop_default, | ||
185 | ARRAY_LEN(wb_prop_default)); | ||
186 | |||
187 | switch (c_cls) | ||
188 | { | ||
189 | case WBP_CR: | ||
190 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
191 | get_next_char); | ||
192 | sp_cls = c_cls; | ||
193 | posLast = posCurSt; | ||
194 | break; | ||
195 | |||
196 | case WBP_LF: | ||
197 | if (sp_cls == WBP_CR) /* WB3 */ | ||
198 | { | ||
199 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_NOBREAK, | ||
200 | get_next_char); | ||
201 | sp_cls = c_cls; | ||
202 | posLast = posCurSt; | ||
203 | } | ||
204 | sp_cls = c_cls; | ||
205 | posLast = posCurSt; | ||
206 | break; | ||
207 | |||
208 | case WBP_Newline: | ||
209 | /* WB3a, WB3b */ | ||
210 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
211 | get_next_char); | ||
212 | sp_cls = c_cls; | ||
213 | posLast = posCurSt; | ||
214 | break; | ||
215 | |||
216 | case WBP_Extend: | ||
217 | case WBP_Format: | ||
218 | /* WB4 - If not the first char/after a newline (W3ab), | ||
219 | * skip this class, set it to be the same as the prev, and mark | ||
220 | * brks not to break before them. */ | ||
221 | if ((sp_cls == WBP_Undefined) || IS_WB3ab(sp_cls)) | ||
222 | { | ||
223 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
224 | get_next_char); | ||
225 | sp_cls = c_cls; | ||
226 | } | ||
227 | else | ||
228 | { | ||
229 | /* It's surely not the first */ | ||
230 | brks[posCurSt - 1] = WORDBREAK_NOBREAK; | ||
231 | /* "inherit" the previous class. */ | ||
232 | c_cls = p_cls; | ||
233 | } | ||
234 | break; | ||
235 | |||
236 | case WBP_Katakana: | ||
237 | if ((sp_cls == WBP_Katakana) || /* WB13 */ | ||
238 | (sp_cls == WBP_ExtendNumLet)) /* WB13b */ | ||
239 | { | ||
240 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_NOBREAK, | ||
241 | get_next_char); | ||
242 | } | ||
243 | /* No rule found, reset */ | ||
244 | else | ||
245 | { | ||
246 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
247 | get_next_char); | ||
248 | } | ||
249 | sp_cls = c_cls; | ||
250 | posLast = posCurSt; | ||
251 | break; | ||
252 | |||
253 | case WBP_ALetter: | ||
254 | if ((sp_cls == WBP_ALetter) || /* WB5,6,7 */ | ||
255 | ((sp_cls == WBP_Numeric) && (p_cls == WBP_Numeric)) || /* WB10 */ | ||
256 | (sp_cls == WBP_ExtendNumLet)) /* WB13b */ | ||
257 | { | ||
258 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_NOBREAK, | ||
259 | get_next_char); | ||
260 | } | ||
261 | /* No rule found, reset */ | ||
262 | else | ||
263 | { | ||
264 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
265 | get_next_char); | ||
266 | } | ||
267 | sp_cls = c_cls; | ||
268 | posLast = posCurSt; | ||
269 | break; | ||
270 | |||
271 | case WBP_MidNumLet: | ||
272 | if ((p_cls == WBP_ALetter) || /* WBP6,7 */ | ||
273 | (p_cls == WBP_Numeric)) /* WBP11,12 */ | ||
274 | { | ||
275 | /* Go on */ | ||
276 | } | ||
277 | else | ||
278 | { | ||
279 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
280 | get_next_char); | ||
281 | sp_cls = c_cls; | ||
282 | posLast = posCurSt; | ||
283 | } | ||
284 | break; | ||
285 | |||
286 | case WBP_MidLetter: | ||
287 | if (p_cls == WBP_ALetter) /* WBP6,7 */ | ||
288 | { | ||
289 | /* Go on */ | ||
290 | } | ||
291 | else | ||
292 | { | ||
293 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
294 | get_next_char); | ||
295 | sp_cls = c_cls; | ||
296 | posLast = posCurSt; | ||
297 | } | ||
298 | break; | ||
299 | |||
300 | case WBP_MidNum: | ||
301 | if (p_cls == WBP_Numeric) /* WBP11,12 */ | ||
302 | { | ||
303 | /* Go on */ | ||
304 | } | ||
305 | else | ||
306 | { | ||
307 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
308 | get_next_char); | ||
309 | sp_cls = c_cls; | ||
310 | posLast = posCurSt; | ||
311 | } | ||
312 | break; | ||
313 | |||
314 | case WBP_Numeric: | ||
315 | if ((sp_cls == WBP_Numeric) || /* WB8,11,12 */ | ||
316 | ((sp_cls == WBP_ALetter) && (p_cls == WBP_ALetter)) || /* WB9 */ | ||
317 | (sp_cls == WBP_ExtendNumLet)) /* WB13b */ | ||
318 | { | ||
319 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_NOBREAK, | ||
320 | get_next_char); | ||
321 | } | ||
322 | /* No rule found, reset */ | ||
323 | else | ||
324 | { | ||
325 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
326 | get_next_char); | ||
327 | } | ||
328 | sp_cls = c_cls; | ||
329 | posLast = posCurSt; | ||
330 | break; | ||
331 | |||
332 | case WBP_ExtendNumLet: | ||
333 | /* WB13a,13b */ | ||
334 | if ((sp_cls == p_cls) && | ||
335 | ((p_cls == WBP_ALetter) || | ||
336 | (p_cls == WBP_Numeric) || | ||
337 | (p_cls == WBP_Katakana) || | ||
338 | (p_cls == WBP_ExtendNumLet))) | ||
339 | { | ||
340 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_NOBREAK, | ||
341 | get_next_char); | ||
342 | } | ||
343 | /* No rule found, reset */ | ||
344 | else | ||
345 | { | ||
346 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
347 | get_next_char); | ||
348 | } | ||
349 | sp_cls = c_cls; | ||
350 | posLast = posCurSt; | ||
351 | break; | ||
352 | |||
353 | case WBP_Any: | ||
354 | /* Allow breaks and reset */ | ||
355 | set_brks_to(s, brks, posLast, posCurSt, len, WORDBREAK_BREAK, | ||
356 | get_next_char); | ||
357 | sp_cls = c_cls; | ||
358 | posLast = posCurSt; | ||
359 | break; | ||
360 | |||
361 | default: | ||
362 | /* Error, should never get here! */ | ||
363 | assert(0); | ||
364 | break; | ||
365 | } | ||
366 | |||
367 | p_cls = c_cls; | ||
368 | posCurSt = posCur; | ||
369 | ch = get_next_char(s, len, &posCur); | ||
370 | } | ||
371 | |||
372 | /* WB2 */ | ||
373 | set_brks_to(s, brks, posLast, posCur, len, WORDBREAK_BREAK, | ||
374 | get_next_char); | ||
375 | } | ||
376 | |||
377 | /** | ||
378 | * Sets the word breaking information for a UTF-8 input string. | ||
379 | * | ||
380 | * @param[in] s input UTF-8 string | ||
381 | * @param[in] len length of the input | ||
382 | * @param[in] lang language of the input | ||
383 | * @param[out] brks pointer to the output breaking data, containing | ||
384 | * #WORDBREAK_BREAK, #WORDBREAK_NOBREAK, or | ||
385 | * #WORDBREAK_INSIDEACHAR | ||
386 | */ | ||
387 | void set_wordbreaks_utf8( | ||
388 | const utf8_t *s, | ||
389 | size_t len, | ||
390 | const char *lang, | ||
391 | char *brks) | ||
392 | { | ||
393 | set_wordbreaks(s, len, lang, brks, | ||
394 | (get_next_char_t)lb_get_next_char_utf8); | ||
395 | } | ||
396 | |||
397 | /** | ||
398 | * Sets the word breaking information for a UTF-16 input string. | ||
399 | * | ||
400 | * @param[in] s input UTF-16 string | ||
401 | * @param[in] len length of the input | ||
402 | * @param[in] lang language of the input | ||
403 | * @param[out] brks pointer to the output breaking data, containing | ||
404 | * #WORDBREAK_BREAK, #WORDBREAK_NOBREAK, or | ||
405 | * #WORDBREAK_INSIDEACHAR | ||
406 | */ | ||
407 | void set_wordbreaks_utf16( | ||
408 | const utf16_t *s, | ||
409 | size_t len, | ||
410 | const char *lang, | ||
411 | char *brks) | ||
412 | { | ||
413 | set_wordbreaks(s, len, lang, brks, | ||
414 | (get_next_char_t)lb_get_next_char_utf16); | ||
415 | } | ||
416 | |||
417 | /** | ||
418 | * Sets the word breaking information for a UTF-32 input string. | ||
419 | * | ||
420 | * @param[in] s input UTF-32 string | ||
421 | * @param[in] len length of the input | ||
422 | * @param[in] lang language of the input | ||
423 | * @param[out] brks pointer to the output breaking data, containing | ||
424 | * #WORDBREAK_BREAK, #WORDBREAK_NOBREAK, or | ||
425 | * #WORDBREAK_INSIDEACHAR | ||
426 | */ | ||
427 | void set_wordbreaks_utf32( | ||
428 | const utf32_t *s, | ||
429 | size_t len, | ||
430 | const char *lang, | ||
431 | char *brks) | ||
432 | { | ||
433 | set_wordbreaks(s, len, lang, brks, | ||
434 | (get_next_char_t)lb_get_next_char_utf32); | ||
435 | } | ||
diff --git a/libraries/evas/src/static_deps/liblinebreak/wordbreak.h b/libraries/evas/src/static_deps/liblinebreak/wordbreak.h new file mode 100644 index 0000000..7b7bea7 --- /dev/null +++ b/libraries/evas/src/static_deps/liblinebreak/wordbreak.h | |||
@@ -0,0 +1,72 @@ | |||
1 | /* vim: set tabstop=4 shiftwidth=4: */ | ||
2 | |||
3 | /* | ||
4 | * Word breaking in a Unicode sequence. Designed to be used in a | ||
5 | * generic text renderer. | ||
6 | * | ||
7 | * Copyright (C) 2011-2011 Tom Hacohen <tom@stosb.com> | ||
8 | * | ||
9 | * This software is provided 'as-is', without any express or implied | ||
10 | * warranty. In no event will the author be held liable for any damages | ||
11 | * arising from the use of this software. | ||
12 | * | ||
13 | * Permission is granted to anyone to use this software for any purpose, | ||
14 | * including commercial applications, and to alter it and redistribute | ||
15 | * it freely, subject to the following restrictions: | ||
16 | * | ||
17 | * 1. The origin of this software must not be misrepresented; you must | ||
18 | * not claim that you wrote the original software. If you use this | ||
19 | * software in a product, an acknowledgement in the product | ||
20 | * documentation would be appreciated but is not required. | ||
21 | * 2. Altered source versions must be plainly marked as such, and must | ||
22 | * not be misrepresented as being the original software. | ||
23 | * 3. This notice may not be removed or altered from any source | ||
24 | * distribution. | ||
25 | * | ||
26 | * The main reference is Unicode Standard Annex 29 (UAX #29): | ||
27 | * <URL:http://unicode.org/reports/tr29> | ||
28 | * | ||
29 | * When this library was designed, this annex was at Revision 17, for | ||
30 | * Unicode 6.0.0: | ||
31 | * <URL:http://www.unicode.org/reports/tr29/tr29-17.html> | ||
32 | * | ||
33 | * The Unicode Terms of Use are available at | ||
34 | * <URL:http://www.unicode.org/copyright.html> | ||
35 | */ | ||
36 | |||
37 | /** | ||
38 | * @file wordbreak.h | ||
39 | * | ||
40 | * Header file for the word breaking (segmentation) algorithm. | ||
41 | * | ||
42 | * @version 2.0, 2011/12/12 | ||
43 | * @author Tom Hacohen | ||
44 | */ | ||
45 | |||
46 | #ifndef WORDBREAK_H | ||
47 | #define WORDBREAK_H | ||
48 | |||
49 | #include <stddef.h> | ||
50 | #include <linebreak.h> | ||
51 | |||
52 | #ifdef __cplusplus | ||
53 | extern "C" { | ||
54 | #endif | ||
55 | |||
56 | #define WORDBREAK_BREAK 0 /* Break found */ | ||
57 | #define WORDBREAK_NOBREAK 1 /**< Break not found */ | ||
58 | #define WORDBREAK_INSIDECHAR 2 /**< A UTF-8/16 sequence is unfinished */ | ||
59 | |||
60 | void init_wordbreak(void); | ||
61 | void set_wordbreaks_utf8( | ||
62 | const utf8_t *s, size_t len, const char* lang, char *brks); | ||
63 | void set_wordbreaks_utf16( | ||
64 | const utf16_t *s, size_t len, const char* lang, char *brks); | ||
65 | void set_wordbreaks_utf32( | ||
66 | const utf32_t *s, size_t len, const char* lang, char *brks); | ||
67 | |||
68 | #ifdef __cplusplus | ||
69 | } | ||
70 | #endif | ||
71 | |||
72 | #endif | ||
diff --git a/libraries/evas/src/static_deps/liblinebreak/wordbreakdata.x b/libraries/evas/src/static_deps/liblinebreak/wordbreakdata.x new file mode 100644 index 0000000..c7278ef --- /dev/null +++ b/libraries/evas/src/static_deps/liblinebreak/wordbreakdata.x | |||
@@ -0,0 +1,858 @@ | |||
1 | /* The content of this file is generated from: | ||
2 | # WordBreakProperty-6.0.0.txt | ||
3 | # Date: 2010-08-19, 00:48:48 GMT [MD] | ||
4 | */ | ||
5 | #include "linebreak.h" | ||
6 | #include "wordbreakdef.h" | ||
7 | static struct WordBreakProperties wb_prop_default[] = { | ||
8 | {0x000A, 0x000A, WBP_LF}, | ||
9 | {0x000B, 0x000C, WBP_Newline}, | ||
10 | {0x000D, 0x000D, WBP_CR}, | ||
11 | {0x0027, 0x0027, WBP_MidNumLet}, | ||
12 | {0x002C, 0x002C, WBP_MidNum}, | ||
13 | {0x002E, 0x002E, WBP_MidNumLet}, | ||
14 | {0x0030, 0x0039, WBP_Numeric}, | ||
15 | {0x003A, 0x003A, WBP_MidLetter}, | ||
16 | {0x003B, 0x003B, WBP_MidNum}, | ||
17 | {0x0041, 0x005A, WBP_ALetter}, | ||
18 | {0x005F, 0x005F, WBP_ExtendNumLet}, | ||
19 | {0x0061, 0x007A, WBP_ALetter}, | ||
20 | {0x0085, 0x0085, WBP_Newline}, | ||
21 | {0x00AA, 0x00AA, WBP_ALetter}, | ||
22 | {0x00AD, 0x00AD, WBP_Format}, | ||
23 | {0x00B5, 0x00B5, WBP_ALetter}, | ||
24 | {0x00B7, 0x00B7, WBP_MidLetter}, | ||
25 | {0x00BA, 0x00BA, WBP_ALetter}, | ||
26 | {0x00C0, 0x00D6, WBP_ALetter}, | ||
27 | {0x00D8, 0x00F6, WBP_ALetter}, | ||
28 | {0x00F8, 0x01BA, WBP_ALetter}, | ||
29 | {0x01BB, 0x01BB, WBP_ALetter}, | ||
30 | {0x01BC, 0x01BF, WBP_ALetter}, | ||
31 | {0x01C0, 0x01C3, WBP_ALetter}, | ||
32 | {0x01C4, 0x0293, WBP_ALetter}, | ||
33 | {0x0294, 0x0294, WBP_ALetter}, | ||
34 | {0x0295, 0x02AF, WBP_ALetter}, | ||
35 | {0x02B0, 0x02C1, WBP_ALetter}, | ||
36 | {0x02C6, 0x02D1, WBP_ALetter}, | ||
37 | {0x02E0, 0x02E4, WBP_ALetter}, | ||
38 | {0x02EC, 0x02EC, WBP_ALetter}, | ||
39 | {0x02EE, 0x02EE, WBP_ALetter}, | ||
40 | {0x0300, 0x036F, WBP_Extend}, | ||
41 | {0x0370, 0x0373, WBP_ALetter}, | ||
42 | {0x0374, 0x0374, WBP_ALetter}, | ||
43 | {0x0376, 0x0377, WBP_ALetter}, | ||
44 | {0x037A, 0x037A, WBP_ALetter}, | ||
45 | {0x037B, 0x037D, WBP_ALetter}, | ||
46 | {0x037E, 0x037E, WBP_MidNum}, | ||
47 | {0x0386, 0x0386, WBP_ALetter}, | ||
48 | {0x0387, 0x0387, WBP_MidLetter}, | ||
49 | {0x0388, 0x038A, WBP_ALetter}, | ||
50 | {0x038C, 0x038C, WBP_ALetter}, | ||
51 | {0x038E, 0x03A1, WBP_ALetter}, | ||
52 | {0x03A3, 0x03F5, WBP_ALetter}, | ||
53 | {0x03F7, 0x0481, WBP_ALetter}, | ||
54 | {0x0483, 0x0487, WBP_Extend}, | ||
55 | {0x0488, 0x0489, WBP_Extend}, | ||
56 | {0x048A, 0x0527, WBP_ALetter}, | ||
57 | {0x0531, 0x0556, WBP_ALetter}, | ||
58 | {0x0559, 0x0559, WBP_ALetter}, | ||
59 | {0x0561, 0x0587, WBP_ALetter}, | ||
60 | {0x0589, 0x0589, WBP_MidNum}, | ||
61 | {0x0591, 0x05BD, WBP_Extend}, | ||
62 | {0x05BF, 0x05BF, WBP_Extend}, | ||
63 | {0x05C1, 0x05C2, WBP_Extend}, | ||
64 | {0x05C4, 0x05C5, WBP_Extend}, | ||
65 | {0x05C7, 0x05C7, WBP_Extend}, | ||
66 | {0x05D0, 0x05EA, WBP_ALetter}, | ||
67 | {0x05F0, 0x05F2, WBP_ALetter}, | ||
68 | {0x05F3, 0x05F3, WBP_ALetter}, | ||
69 | {0x05F4, 0x05F4, WBP_MidLetter}, | ||
70 | {0x0600, 0x0603, WBP_Format}, | ||
71 | {0x060C, 0x060D, WBP_MidNum}, | ||
72 | {0x0610, 0x061A, WBP_Extend}, | ||
73 | {0x0620, 0x063F, WBP_ALetter}, | ||
74 | {0x0640, 0x0640, WBP_ALetter}, | ||
75 | {0x0641, 0x064A, WBP_ALetter}, | ||
76 | {0x064B, 0x065F, WBP_Extend}, | ||
77 | {0x0660, 0x0669, WBP_Numeric}, | ||
78 | {0x066B, 0x066B, WBP_Numeric}, | ||
79 | {0x066C, 0x066C, WBP_MidNum}, | ||
80 | {0x066E, 0x066F, WBP_ALetter}, | ||
81 | {0x0670, 0x0670, WBP_Extend}, | ||
82 | {0x0671, 0x06D3, WBP_ALetter}, | ||
83 | {0x06D5, 0x06D5, WBP_ALetter}, | ||
84 | {0x06D6, 0x06DC, WBP_Extend}, | ||
85 | {0x06DD, 0x06DD, WBP_Format}, | ||
86 | {0x06DF, 0x06E4, WBP_Extend}, | ||
87 | {0x06E5, 0x06E6, WBP_ALetter}, | ||
88 | {0x06E7, 0x06E8, WBP_Extend}, | ||
89 | {0x06EA, 0x06ED, WBP_Extend}, | ||
90 | {0x06EE, 0x06EF, WBP_ALetter}, | ||
91 | {0x06F0, 0x06F9, WBP_Numeric}, | ||
92 | {0x06FA, 0x06FC, WBP_ALetter}, | ||
93 | {0x06FF, 0x06FF, WBP_ALetter}, | ||
94 | {0x070F, 0x070F, WBP_Format}, | ||
95 | {0x0710, 0x0710, WBP_ALetter}, | ||
96 | {0x0711, 0x0711, WBP_Extend}, | ||
97 | {0x0712, 0x072F, WBP_ALetter}, | ||
98 | {0x0730, 0x074A, WBP_Extend}, | ||
99 | {0x074D, 0x07A5, WBP_ALetter}, | ||
100 | {0x07A6, 0x07B0, WBP_Extend}, | ||
101 | {0x07B1, 0x07B1, WBP_ALetter}, | ||
102 | {0x07C0, 0x07C9, WBP_Numeric}, | ||
103 | {0x07CA, 0x07EA, WBP_ALetter}, | ||
104 | {0x07EB, 0x07F3, WBP_Extend}, | ||
105 | {0x07F4, 0x07F5, WBP_ALetter}, | ||
106 | {0x07F8, 0x07F8, WBP_MidNum}, | ||
107 | {0x07FA, 0x07FA, WBP_ALetter}, | ||
108 | {0x0800, 0x0815, WBP_ALetter}, | ||
109 | {0x0816, 0x0819, WBP_Extend}, | ||
110 | {0x081A, 0x081A, WBP_ALetter}, | ||
111 | {0x081B, 0x0823, WBP_Extend}, | ||
112 | {0x0824, 0x0824, WBP_ALetter}, | ||
113 | {0x0825, 0x0827, WBP_Extend}, | ||
114 | {0x0828, 0x0828, WBP_ALetter}, | ||
115 | {0x0829, 0x082D, WBP_Extend}, | ||
116 | {0x0840, 0x0858, WBP_ALetter}, | ||
117 | {0x0859, 0x085B, WBP_Extend}, | ||
118 | {0x0900, 0x0902, WBP_Extend}, | ||
119 | {0x0903, 0x0903, WBP_Extend}, | ||
120 | {0x0904, 0x0939, WBP_ALetter}, | ||
121 | {0x093A, 0x093A, WBP_Extend}, | ||
122 | {0x093B, 0x093B, WBP_Extend}, | ||
123 | {0x093C, 0x093C, WBP_Extend}, | ||
124 | {0x093D, 0x093D, WBP_ALetter}, | ||
125 | {0x093E, 0x0940, WBP_Extend}, | ||
126 | {0x0941, 0x0948, WBP_Extend}, | ||
127 | {0x0949, 0x094C, WBP_Extend}, | ||
128 | {0x094D, 0x094D, WBP_Extend}, | ||
129 | {0x094E, 0x094F, WBP_Extend}, | ||
130 | {0x0950, 0x0950, WBP_ALetter}, | ||
131 | {0x0951, 0x0957, WBP_Extend}, | ||
132 | {0x0958, 0x0961, WBP_ALetter}, | ||
133 | {0x0962, 0x0963, WBP_Extend}, | ||
134 | {0x0966, 0x096F, WBP_Numeric}, | ||
135 | {0x0971, 0x0971, WBP_ALetter}, | ||
136 | {0x0972, 0x0977, WBP_ALetter}, | ||
137 | {0x0979, 0x097F, WBP_ALetter}, | ||
138 | {0x0981, 0x0981, WBP_Extend}, | ||
139 | {0x0982, 0x0983, WBP_Extend}, | ||
140 | {0x0985, 0x098C, WBP_ALetter}, | ||
141 | {0x098F, 0x0990, WBP_ALetter}, | ||
142 | {0x0993, 0x09A8, WBP_ALetter}, | ||
143 | {0x09AA, 0x09B0, WBP_ALetter}, | ||
144 | {0x09B2, 0x09B2, WBP_ALetter}, | ||
145 | {0x09B6, 0x09B9, WBP_ALetter}, | ||
146 | {0x09BC, 0x09BC, WBP_Extend}, | ||
147 | {0x09BD, 0x09BD, WBP_ALetter}, | ||
148 | {0x09BE, 0x09C0, WBP_Extend}, | ||
149 | {0x09C1, 0x09C4, WBP_Extend}, | ||
150 | {0x09C7, 0x09C8, WBP_Extend}, | ||
151 | {0x09CB, 0x09CC, WBP_Extend}, | ||
152 | {0x09CD, 0x09CD, WBP_Extend}, | ||
153 | {0x09CE, 0x09CE, WBP_ALetter}, | ||
154 | {0x09D7, 0x09D7, WBP_Extend}, | ||
155 | {0x09DC, 0x09DD, WBP_ALetter}, | ||
156 | {0x09DF, 0x09E1, WBP_ALetter}, | ||
157 | {0x09E2, 0x09E3, WBP_Extend}, | ||
158 | {0x09E6, 0x09EF, WBP_Numeric}, | ||
159 | {0x09F0, 0x09F1, WBP_ALetter}, | ||
160 | {0x0A01, 0x0A02, WBP_Extend}, | ||
161 | {0x0A03, 0x0A03, WBP_Extend}, | ||
162 | {0x0A05, 0x0A0A, WBP_ALetter}, | ||
163 | {0x0A0F, 0x0A10, WBP_ALetter}, | ||
164 | {0x0A13, 0x0A28, WBP_ALetter}, | ||
165 | {0x0A2A, 0x0A30, WBP_ALetter}, | ||
166 | {0x0A32, 0x0A33, WBP_ALetter}, | ||
167 | {0x0A35, 0x0A36, WBP_ALetter}, | ||
168 | {0x0A38, 0x0A39, WBP_ALetter}, | ||
169 | {0x0A3C, 0x0A3C, WBP_Extend}, | ||
170 | {0x0A3E, 0x0A40, WBP_Extend}, | ||
171 | {0x0A41, 0x0A42, WBP_Extend}, | ||
172 | {0x0A47, 0x0A48, WBP_Extend}, | ||
173 | {0x0A4B, 0x0A4D, WBP_Extend}, | ||
174 | {0x0A51, 0x0A51, WBP_Extend}, | ||
175 | {0x0A59, 0x0A5C, WBP_ALetter}, | ||
176 | {0x0A5E, 0x0A5E, WBP_ALetter}, | ||
177 | {0x0A66, 0x0A6F, WBP_Numeric}, | ||
178 | {0x0A70, 0x0A71, WBP_Extend}, | ||
179 | {0x0A72, 0x0A74, WBP_ALetter}, | ||
180 | {0x0A75, 0x0A75, WBP_Extend}, | ||
181 | {0x0A81, 0x0A82, WBP_Extend}, | ||
182 | {0x0A83, 0x0A83, WBP_Extend}, | ||
183 | {0x0A85, 0x0A8D, WBP_ALetter}, | ||
184 | {0x0A8F, 0x0A91, WBP_ALetter}, | ||
185 | {0x0A93, 0x0AA8, WBP_ALetter}, | ||
186 | {0x0AAA, 0x0AB0, WBP_ALetter}, | ||
187 | {0x0AB2, 0x0AB3, WBP_ALetter}, | ||
188 | {0x0AB5, 0x0AB9, WBP_ALetter}, | ||
189 | {0x0ABC, 0x0ABC, WBP_Extend}, | ||
190 | {0x0ABD, 0x0ABD, WBP_ALetter}, | ||
191 | {0x0ABE, 0x0AC0, WBP_Extend}, | ||
192 | {0x0AC1, 0x0AC5, WBP_Extend}, | ||
193 | {0x0AC7, 0x0AC8, WBP_Extend}, | ||
194 | {0x0AC9, 0x0AC9, WBP_Extend}, | ||
195 | {0x0ACB, 0x0ACC, WBP_Extend}, | ||
196 | {0x0ACD, 0x0ACD, WBP_Extend}, | ||
197 | {0x0AD0, 0x0AD0, WBP_ALetter}, | ||
198 | {0x0AE0, 0x0AE1, WBP_ALetter}, | ||
199 | {0x0AE2, 0x0AE3, WBP_Extend}, | ||
200 | {0x0AE6, 0x0AEF, WBP_Numeric}, | ||
201 | {0x0B01, 0x0B01, WBP_Extend}, | ||
202 | {0x0B02, 0x0B03, WBP_Extend}, | ||
203 | {0x0B05, 0x0B0C, WBP_ALetter}, | ||
204 | {0x0B0F, 0x0B10, WBP_ALetter}, | ||
205 | {0x0B13, 0x0B28, WBP_ALetter}, | ||
206 | {0x0B2A, 0x0B30, WBP_ALetter}, | ||
207 | {0x0B32, 0x0B33, WBP_ALetter}, | ||
208 | {0x0B35, 0x0B39, WBP_ALetter}, | ||
209 | {0x0B3C, 0x0B3C, WBP_Extend}, | ||
210 | {0x0B3D, 0x0B3D, WBP_ALetter}, | ||
211 | {0x0B3E, 0x0B3E, WBP_Extend}, | ||
212 | {0x0B3F, 0x0B3F, WBP_Extend}, | ||
213 | {0x0B40, 0x0B40, WBP_Extend}, | ||
214 | {0x0B41, 0x0B44, WBP_Extend}, | ||
215 | {0x0B47, 0x0B48, WBP_Extend}, | ||
216 | {0x0B4B, 0x0B4C, WBP_Extend}, | ||
217 | {0x0B4D, 0x0B4D, WBP_Extend}, | ||
218 | {0x0B56, 0x0B56, WBP_Extend}, | ||
219 | {0x0B57, 0x0B57, WBP_Extend}, | ||
220 | {0x0B5C, 0x0B5D, WBP_ALetter}, | ||
221 | {0x0B5F, 0x0B61, WBP_ALetter}, | ||
222 | {0x0B62, 0x0B63, WBP_Extend}, | ||
223 | {0x0B66, 0x0B6F, WBP_Numeric}, | ||
224 | {0x0B71, 0x0B71, WBP_ALetter}, | ||
225 | {0x0B82, 0x0B82, WBP_Extend}, | ||
226 | {0x0B83, 0x0B83, WBP_ALetter}, | ||
227 | {0x0B85, 0x0B8A, WBP_ALetter}, | ||
228 | {0x0B8E, 0x0B90, WBP_ALetter}, | ||
229 | {0x0B92, 0x0B95, WBP_ALetter}, | ||
230 | {0x0B99, 0x0B9A, WBP_ALetter}, | ||
231 | {0x0B9C, 0x0B9C, WBP_ALetter}, | ||
232 | {0x0B9E, 0x0B9F, WBP_ALetter}, | ||
233 | {0x0BA3, 0x0BA4, WBP_ALetter}, | ||
234 | {0x0BA8, 0x0BAA, WBP_ALetter}, | ||
235 | {0x0BAE, 0x0BB9, WBP_ALetter}, | ||
236 | {0x0BBE, 0x0BBF, WBP_Extend}, | ||
237 | {0x0BC0, 0x0BC0, WBP_Extend}, | ||
238 | {0x0BC1, 0x0BC2, WBP_Extend}, | ||
239 | {0x0BC6, 0x0BC8, WBP_Extend}, | ||
240 | {0x0BCA, 0x0BCC, WBP_Extend}, | ||
241 | {0x0BCD, 0x0BCD, WBP_Extend}, | ||
242 | {0x0BD0, 0x0BD0, WBP_ALetter}, | ||
243 | {0x0BD7, 0x0BD7, WBP_Extend}, | ||
244 | {0x0BE6, 0x0BEF, WBP_Numeric}, | ||
245 | {0x0C01, 0x0C03, WBP_Extend}, | ||
246 | {0x0C05, 0x0C0C, WBP_ALetter}, | ||
247 | {0x0C0E, 0x0C10, WBP_ALetter}, | ||
248 | {0x0C12, 0x0C28, WBP_ALetter}, | ||
249 | {0x0C2A, 0x0C33, WBP_ALetter}, | ||
250 | {0x0C35, 0x0C39, WBP_ALetter}, | ||
251 | {0x0C3D, 0x0C3D, WBP_ALetter}, | ||
252 | {0x0C3E, 0x0C40, WBP_Extend}, | ||
253 | {0x0C41, 0x0C44, WBP_Extend}, | ||
254 | {0x0C46, 0x0C48, WBP_Extend}, | ||
255 | {0x0C4A, 0x0C4D, WBP_Extend}, | ||
256 | {0x0C55, 0x0C56, WBP_Extend}, | ||
257 | {0x0C58, 0x0C59, WBP_ALetter}, | ||
258 | {0x0C60, 0x0C61, WBP_ALetter}, | ||
259 | {0x0C62, 0x0C63, WBP_Extend}, | ||
260 | {0x0C66, 0x0C6F, WBP_Numeric}, | ||
261 | {0x0C82, 0x0C83, WBP_Extend}, | ||
262 | {0x0C85, 0x0C8C, WBP_ALetter}, | ||
263 | {0x0C8E, 0x0C90, WBP_ALetter}, | ||
264 | {0x0C92, 0x0CA8, WBP_ALetter}, | ||
265 | {0x0CAA, 0x0CB3, WBP_ALetter}, | ||
266 | {0x0CB5, 0x0CB9, WBP_ALetter}, | ||
267 | {0x0CBC, 0x0CBC, WBP_Extend}, | ||
268 | {0x0CBD, 0x0CBD, WBP_ALetter}, | ||
269 | {0x0CBE, 0x0CBE, WBP_Extend}, | ||
270 | {0x0CBF, 0x0CBF, WBP_Extend}, | ||
271 | {0x0CC0, 0x0CC4, WBP_Extend}, | ||
272 | {0x0CC6, 0x0CC6, WBP_Extend}, | ||
273 | {0x0CC7, 0x0CC8, WBP_Extend}, | ||
274 | {0x0CCA, 0x0CCB, WBP_Extend}, | ||
275 | {0x0CCC, 0x0CCD, WBP_Extend}, | ||
276 | {0x0CD5, 0x0CD6, WBP_Extend}, | ||
277 | {0x0CDE, 0x0CDE, WBP_ALetter}, | ||
278 | {0x0CE0, 0x0CE1, WBP_ALetter}, | ||
279 | {0x0CE2, 0x0CE3, WBP_Extend}, | ||
280 | {0x0CE6, 0x0CEF, WBP_Numeric}, | ||
281 | {0x0CF1, 0x0CF2, WBP_ALetter}, | ||
282 | {0x0D02, 0x0D03, WBP_Extend}, | ||
283 | {0x0D05, 0x0D0C, WBP_ALetter}, | ||
284 | {0x0D0E, 0x0D10, WBP_ALetter}, | ||
285 | {0x0D12, 0x0D3A, WBP_ALetter}, | ||
286 | {0x0D3D, 0x0D3D, WBP_ALetter}, | ||
287 | {0x0D3E, 0x0D40, WBP_Extend}, | ||
288 | {0x0D41, 0x0D44, WBP_Extend}, | ||
289 | {0x0D46, 0x0D48, WBP_Extend}, | ||
290 | {0x0D4A, 0x0D4C, WBP_Extend}, | ||
291 | {0x0D4D, 0x0D4D, WBP_Extend}, | ||
292 | {0x0D4E, 0x0D4E, WBP_ALetter}, | ||
293 | {0x0D57, 0x0D57, WBP_Extend}, | ||
294 | {0x0D60, 0x0D61, WBP_ALetter}, | ||
295 | {0x0D62, 0x0D63, WBP_Extend}, | ||
296 | {0x0D66, 0x0D6F, WBP_Numeric}, | ||
297 | {0x0D7A, 0x0D7F, WBP_ALetter}, | ||
298 | {0x0D82, 0x0D83, WBP_Extend}, | ||
299 | {0x0D85, 0x0D96, WBP_ALetter}, | ||
300 | {0x0D9A, 0x0DB1, WBP_ALetter}, | ||
301 | {0x0DB3, 0x0DBB, WBP_ALetter}, | ||
302 | {0x0DBD, 0x0DBD, WBP_ALetter}, | ||
303 | {0x0DC0, 0x0DC6, WBP_ALetter}, | ||
304 | {0x0DCA, 0x0DCA, WBP_Extend}, | ||
305 | {0x0DCF, 0x0DD1, WBP_Extend}, | ||
306 | {0x0DD2, 0x0DD4, WBP_Extend}, | ||
307 | {0x0DD6, 0x0DD6, WBP_Extend}, | ||
308 | {0x0DD8, 0x0DDF, WBP_Extend}, | ||
309 | {0x0DF2, 0x0DF3, WBP_Extend}, | ||
310 | {0x0E31, 0x0E31, WBP_Extend}, | ||
311 | {0x0E34, 0x0E3A, WBP_Extend}, | ||
312 | {0x0E47, 0x0E4E, WBP_Extend}, | ||
313 | {0x0E50, 0x0E59, WBP_Numeric}, | ||
314 | {0x0EB1, 0x0EB1, WBP_Extend}, | ||
315 | {0x0EB4, 0x0EB9, WBP_Extend}, | ||
316 | {0x0EBB, 0x0EBC, WBP_Extend}, | ||
317 | {0x0EC8, 0x0ECD, WBP_Extend}, | ||
318 | {0x0ED0, 0x0ED9, WBP_Numeric}, | ||
319 | {0x0F00, 0x0F00, WBP_ALetter}, | ||
320 | {0x0F18, 0x0F19, WBP_Extend}, | ||
321 | {0x0F20, 0x0F29, WBP_Numeric}, | ||
322 | {0x0F35, 0x0F35, WBP_Extend}, | ||
323 | {0x0F37, 0x0F37, WBP_Extend}, | ||
324 | {0x0F39, 0x0F39, WBP_Extend}, | ||
325 | {0x0F3E, 0x0F3F, WBP_Extend}, | ||
326 | {0x0F40, 0x0F47, WBP_ALetter}, | ||
327 | {0x0F49, 0x0F6C, WBP_ALetter}, | ||
328 | {0x0F71, 0x0F7E, WBP_Extend}, | ||
329 | {0x0F7F, 0x0F7F, WBP_Extend}, | ||
330 | {0x0F80, 0x0F84, WBP_Extend}, | ||
331 | {0x0F86, 0x0F87, WBP_Extend}, | ||
332 | {0x0F88, 0x0F8C, WBP_ALetter}, | ||
333 | {0x0F8D, 0x0F97, WBP_Extend}, | ||
334 | {0x0F99, 0x0FBC, WBP_Extend}, | ||
335 | {0x0FC6, 0x0FC6, WBP_Extend}, | ||
336 | {0x102B, 0x102C, WBP_Extend}, | ||
337 | {0x102D, 0x1030, WBP_Extend}, | ||
338 | {0x1031, 0x1031, WBP_Extend}, | ||
339 | {0x1032, 0x1037, WBP_Extend}, | ||
340 | {0x1038, 0x1038, WBP_Extend}, | ||
341 | {0x1039, 0x103A, WBP_Extend}, | ||
342 | {0x103B, 0x103C, WBP_Extend}, | ||
343 | {0x103D, 0x103E, WBP_Extend}, | ||
344 | {0x1040, 0x1049, WBP_Numeric}, | ||
345 | {0x1056, 0x1057, WBP_Extend}, | ||
346 | {0x1058, 0x1059, WBP_Extend}, | ||
347 | {0x105E, 0x1060, WBP_Extend}, | ||
348 | {0x1062, 0x1064, WBP_Extend}, | ||
349 | {0x1067, 0x106D, WBP_Extend}, | ||
350 | {0x1071, 0x1074, WBP_Extend}, | ||
351 | {0x1082, 0x1082, WBP_Extend}, | ||
352 | {0x1083, 0x1084, WBP_Extend}, | ||
353 | {0x1085, 0x1086, WBP_Extend}, | ||
354 | {0x1087, 0x108C, WBP_Extend}, | ||
355 | {0x108D, 0x108D, WBP_Extend}, | ||
356 | {0x108F, 0x108F, WBP_Extend}, | ||
357 | {0x1090, 0x1099, WBP_Numeric}, | ||
358 | {0x109A, 0x109C, WBP_Extend}, | ||
359 | {0x109D, 0x109D, WBP_Extend}, | ||
360 | {0x10A0, 0x10C5, WBP_ALetter}, | ||
361 | {0x10D0, 0x10FA, WBP_ALetter}, | ||
362 | {0x10FC, 0x10FC, WBP_ALetter}, | ||
363 | {0x1100, 0x1248, WBP_ALetter}, | ||
364 | {0x124A, 0x124D, WBP_ALetter}, | ||
365 | {0x1250, 0x1256, WBP_ALetter}, | ||
366 | {0x1258, 0x1258, WBP_ALetter}, | ||
367 | {0x125A, 0x125D, WBP_ALetter}, | ||
368 | {0x1260, 0x1288, WBP_ALetter}, | ||
369 | {0x128A, 0x128D, WBP_ALetter}, | ||
370 | {0x1290, 0x12B0, WBP_ALetter}, | ||
371 | {0x12B2, 0x12B5, WBP_ALetter}, | ||
372 | {0x12B8, 0x12BE, WBP_ALetter}, | ||
373 | {0x12C0, 0x12C0, WBP_ALetter}, | ||
374 | {0x12C2, 0x12C5, WBP_ALetter}, | ||
375 | {0x12C8, 0x12D6, WBP_ALetter}, | ||
376 | {0x12D8, 0x1310, WBP_ALetter}, | ||
377 | {0x1312, 0x1315, WBP_ALetter}, | ||
378 | {0x1318, 0x135A, WBP_ALetter}, | ||
379 | {0x135D, 0x135F, WBP_Extend}, | ||
380 | {0x1380, 0x138F, WBP_ALetter}, | ||
381 | {0x13A0, 0x13F4, WBP_ALetter}, | ||
382 | {0x1401, 0x166C, WBP_ALetter}, | ||
383 | {0x166F, 0x167F, WBP_ALetter}, | ||
384 | {0x1681, 0x169A, WBP_ALetter}, | ||
385 | {0x16A0, 0x16EA, WBP_ALetter}, | ||
386 | {0x16EE, 0x16F0, WBP_ALetter}, | ||
387 | {0x1700, 0x170C, WBP_ALetter}, | ||
388 | {0x170E, 0x1711, WBP_ALetter}, | ||
389 | {0x1712, 0x1714, WBP_Extend}, | ||
390 | {0x1720, 0x1731, WBP_ALetter}, | ||
391 | {0x1732, 0x1734, WBP_Extend}, | ||
392 | {0x1740, 0x1751, WBP_ALetter}, | ||
393 | {0x1752, 0x1753, WBP_Extend}, | ||
394 | {0x1760, 0x176C, WBP_ALetter}, | ||
395 | {0x176E, 0x1770, WBP_ALetter}, | ||
396 | {0x1772, 0x1773, WBP_Extend}, | ||
397 | {0x17B4, 0x17B5, WBP_Format}, | ||
398 | {0x17B6, 0x17B6, WBP_Extend}, | ||
399 | {0x17B7, 0x17BD, WBP_Extend}, | ||
400 | {0x17BE, 0x17C5, WBP_Extend}, | ||
401 | {0x17C6, 0x17C6, WBP_Extend}, | ||
402 | {0x17C7, 0x17C8, WBP_Extend}, | ||
403 | {0x17C9, 0x17D3, WBP_Extend}, | ||
404 | {0x17DD, 0x17DD, WBP_Extend}, | ||
405 | {0x17E0, 0x17E9, WBP_Numeric}, | ||
406 | {0x180B, 0x180D, WBP_Extend}, | ||
407 | {0x1810, 0x1819, WBP_Numeric}, | ||
408 | {0x1820, 0x1842, WBP_ALetter}, | ||
409 | {0x1843, 0x1843, WBP_ALetter}, | ||
410 | {0x1844, 0x1877, WBP_ALetter}, | ||
411 | {0x1880, 0x18A8, WBP_ALetter}, | ||
412 | {0x18A9, 0x18A9, WBP_Extend}, | ||
413 | {0x18AA, 0x18AA, WBP_ALetter}, | ||
414 | {0x18B0, 0x18F5, WBP_ALetter}, | ||
415 | {0x1900, 0x191C, WBP_ALetter}, | ||
416 | {0x1920, 0x1922, WBP_Extend}, | ||
417 | {0x1923, 0x1926, WBP_Extend}, | ||
418 | {0x1927, 0x1928, WBP_Extend}, | ||
419 | {0x1929, 0x192B, WBP_Extend}, | ||
420 | {0x1930, 0x1931, WBP_Extend}, | ||
421 | {0x1932, 0x1932, WBP_Extend}, | ||
422 | {0x1933, 0x1938, WBP_Extend}, | ||
423 | {0x1939, 0x193B, WBP_Extend}, | ||
424 | {0x1946, 0x194F, WBP_Numeric}, | ||
425 | {0x19B0, 0x19C0, WBP_Extend}, | ||
426 | {0x19C8, 0x19C9, WBP_Extend}, | ||
427 | {0x19D0, 0x19D9, WBP_Numeric}, | ||
428 | {0x1A00, 0x1A16, WBP_ALetter}, | ||
429 | {0x1A17, 0x1A18, WBP_Extend}, | ||
430 | {0x1A19, 0x1A1B, WBP_Extend}, | ||
431 | {0x1A55, 0x1A55, WBP_Extend}, | ||
432 | {0x1A56, 0x1A56, WBP_Extend}, | ||
433 | {0x1A57, 0x1A57, WBP_Extend}, | ||
434 | {0x1A58, 0x1A5E, WBP_Extend}, | ||
435 | {0x1A60, 0x1A60, WBP_Extend}, | ||
436 | {0x1A61, 0x1A61, WBP_Extend}, | ||
437 | {0x1A62, 0x1A62, WBP_Extend}, | ||
438 | {0x1A63, 0x1A64, WBP_Extend}, | ||
439 | {0x1A65, 0x1A6C, WBP_Extend}, | ||
440 | {0x1A6D, 0x1A72, WBP_Extend}, | ||
441 | {0x1A73, 0x1A7C, WBP_Extend}, | ||
442 | {0x1A7F, 0x1A7F, WBP_Extend}, | ||
443 | {0x1A80, 0x1A89, WBP_Numeric}, | ||
444 | {0x1A90, 0x1A99, WBP_Numeric}, | ||
445 | {0x1B00, 0x1B03, WBP_Extend}, | ||
446 | {0x1B04, 0x1B04, WBP_Extend}, | ||
447 | {0x1B05, 0x1B33, WBP_ALetter}, | ||
448 | {0x1B34, 0x1B34, WBP_Extend}, | ||
449 | {0x1B35, 0x1B35, WBP_Extend}, | ||
450 | {0x1B36, 0x1B3A, WBP_Extend}, | ||
451 | {0x1B3B, 0x1B3B, WBP_Extend}, | ||
452 | {0x1B3C, 0x1B3C, WBP_Extend}, | ||
453 | {0x1B3D, 0x1B41, WBP_Extend}, | ||
454 | {0x1B42, 0x1B42, WBP_Extend}, | ||
455 | {0x1B43, 0x1B44, WBP_Extend}, | ||
456 | {0x1B45, 0x1B4B, WBP_ALetter}, | ||
457 | {0x1B50, 0x1B59, WBP_Numeric}, | ||
458 | {0x1B6B, 0x1B73, WBP_Extend}, | ||
459 | {0x1B80, 0x1B81, WBP_Extend}, | ||
460 | {0x1B82, 0x1B82, WBP_Extend}, | ||
461 | {0x1B83, 0x1BA0, WBP_ALetter}, | ||
462 | {0x1BA1, 0x1BA1, WBP_Extend}, | ||
463 | {0x1BA2, 0x1BA5, WBP_Extend}, | ||
464 | {0x1BA6, 0x1BA7, WBP_Extend}, | ||
465 | {0x1BA8, 0x1BA9, WBP_Extend}, | ||
466 | {0x1BAA, 0x1BAA, WBP_Extend}, | ||
467 | {0x1BAE, 0x1BAF, WBP_ALetter}, | ||
468 | {0x1BB0, 0x1BB9, WBP_Numeric}, | ||
469 | {0x1BC0, 0x1BE5, WBP_ALetter}, | ||
470 | {0x1BE6, 0x1BE6, WBP_Extend}, | ||
471 | {0x1BE7, 0x1BE7, WBP_Extend}, | ||
472 | {0x1BE8, 0x1BE9, WBP_Extend}, | ||
473 | {0x1BEA, 0x1BEC, WBP_Extend}, | ||
474 | {0x1BED, 0x1BED, WBP_Extend}, | ||
475 | {0x1BEE, 0x1BEE, WBP_Extend}, | ||
476 | {0x1BEF, 0x1BF1, WBP_Extend}, | ||
477 | {0x1BF2, 0x1BF3, WBP_Extend}, | ||
478 | {0x1C00, 0x1C23, WBP_ALetter}, | ||
479 | {0x1C24, 0x1C2B, WBP_Extend}, | ||
480 | {0x1C2C, 0x1C33, WBP_Extend}, | ||
481 | {0x1C34, 0x1C35, WBP_Extend}, | ||
482 | {0x1C36, 0x1C37, WBP_Extend}, | ||
483 | {0x1C40, 0x1C49, WBP_Numeric}, | ||
484 | {0x1C4D, 0x1C4F, WBP_ALetter}, | ||
485 | {0x1C50, 0x1C59, WBP_Numeric}, | ||
486 | {0x1C5A, 0x1C77, WBP_ALetter}, | ||
487 | {0x1C78, 0x1C7D, WBP_ALetter}, | ||
488 | {0x1CD0, 0x1CD2, WBP_Extend}, | ||
489 | {0x1CD4, 0x1CE0, WBP_Extend}, | ||
490 | {0x1CE1, 0x1CE1, WBP_Extend}, | ||
491 | {0x1CE2, 0x1CE8, WBP_Extend}, | ||
492 | {0x1CE9, 0x1CEC, WBP_ALetter}, | ||
493 | {0x1CED, 0x1CED, WBP_Extend}, | ||
494 | {0x1CEE, 0x1CF1, WBP_ALetter}, | ||
495 | {0x1CF2, 0x1CF2, WBP_Extend}, | ||
496 | {0x1D00, 0x1D2B, WBP_ALetter}, | ||
497 | {0x1D2C, 0x1D61, WBP_ALetter}, | ||
498 | {0x1D62, 0x1D77, WBP_ALetter}, | ||
499 | {0x1D78, 0x1D78, WBP_ALetter}, | ||
500 | {0x1D79, 0x1D9A, WBP_ALetter}, | ||
501 | {0x1D9B, 0x1DBF, WBP_ALetter}, | ||
502 | {0x1DC0, 0x1DE6, WBP_Extend}, | ||
503 | {0x1DFC, 0x1DFF, WBP_Extend}, | ||
504 | {0x1E00, 0x1F15, WBP_ALetter}, | ||
505 | {0x1F18, 0x1F1D, WBP_ALetter}, | ||
506 | {0x1F20, 0x1F45, WBP_ALetter}, | ||
507 | {0x1F48, 0x1F4D, WBP_ALetter}, | ||
508 | {0x1F50, 0x1F57, WBP_ALetter}, | ||
509 | {0x1F59, 0x1F59, WBP_ALetter}, | ||
510 | {0x1F5B, 0x1F5B, WBP_ALetter}, | ||
511 | {0x1F5D, 0x1F5D, WBP_ALetter}, | ||
512 | {0x1F5F, 0x1F7D, WBP_ALetter}, | ||
513 | {0x1F80, 0x1FB4, WBP_ALetter}, | ||
514 | {0x1FB6, 0x1FBC, WBP_ALetter}, | ||
515 | {0x1FBE, 0x1FBE, WBP_ALetter}, | ||
516 | {0x1FC2, 0x1FC4, WBP_ALetter}, | ||
517 | {0x1FC6, 0x1FCC, WBP_ALetter}, | ||
518 | {0x1FD0, 0x1FD3, WBP_ALetter}, | ||
519 | {0x1FD6, 0x1FDB, WBP_ALetter}, | ||
520 | {0x1FE0, 0x1FEC, WBP_ALetter}, | ||
521 | {0x1FF2, 0x1FF4, WBP_ALetter}, | ||
522 | {0x1FF6, 0x1FFC, WBP_ALetter}, | ||
523 | {0x200C, 0x200D, WBP_Extend}, | ||
524 | {0x200E, 0x200F, WBP_Format}, | ||
525 | {0x2018, 0x2018, WBP_MidNumLet}, | ||
526 | {0x2019, 0x2019, WBP_MidNumLet}, | ||
527 | {0x2024, 0x2024, WBP_MidNumLet}, | ||
528 | {0x2027, 0x2027, WBP_MidLetter}, | ||
529 | {0x2028, 0x2028, WBP_Newline}, | ||
530 | {0x2029, 0x2029, WBP_Newline}, | ||
531 | {0x202A, 0x202E, WBP_Format}, | ||
532 | {0x203F, 0x2040, WBP_ExtendNumLet}, | ||
533 | {0x2044, 0x2044, WBP_MidNum}, | ||
534 | {0x2054, 0x2054, WBP_ExtendNumLet}, | ||
535 | {0x2060, 0x2064, WBP_Format}, | ||
536 | {0x206A, 0x206F, WBP_Format}, | ||
537 | {0x2071, 0x2071, WBP_ALetter}, | ||
538 | {0x207F, 0x207F, WBP_ALetter}, | ||
539 | {0x2090, 0x209C, WBP_ALetter}, | ||
540 | {0x20D0, 0x20DC, WBP_Extend}, | ||
541 | {0x20DD, 0x20E0, WBP_Extend}, | ||
542 | {0x20E1, 0x20E1, WBP_Extend}, | ||
543 | {0x20E2, 0x20E4, WBP_Extend}, | ||
544 | {0x20E5, 0x20F0, WBP_Extend}, | ||
545 | {0x2102, 0x2102, WBP_ALetter}, | ||
546 | {0x2107, 0x2107, WBP_ALetter}, | ||
547 | {0x210A, 0x2113, WBP_ALetter}, | ||
548 | {0x2115, 0x2115, WBP_ALetter}, | ||
549 | {0x2119, 0x211D, WBP_ALetter}, | ||
550 | {0x2124, 0x2124, WBP_ALetter}, | ||
551 | {0x2126, 0x2126, WBP_ALetter}, | ||
552 | {0x2128, 0x2128, WBP_ALetter}, | ||
553 | {0x212A, 0x212D, WBP_ALetter}, | ||
554 | {0x212F, 0x2134, WBP_ALetter}, | ||
555 | {0x2135, 0x2138, WBP_ALetter}, | ||
556 | {0x2139, 0x2139, WBP_ALetter}, | ||
557 | {0x213C, 0x213F, WBP_ALetter}, | ||
558 | {0x2145, 0x2149, WBP_ALetter}, | ||
559 | {0x214E, 0x214E, WBP_ALetter}, | ||
560 | {0x2160, 0x2182, WBP_ALetter}, | ||
561 | {0x2183, 0x2184, WBP_ALetter}, | ||
562 | {0x2185, 0x2188, WBP_ALetter}, | ||
563 | {0x24B6, 0x24E9, WBP_ALetter}, | ||
564 | {0x2C00, 0x2C2E, WBP_ALetter}, | ||
565 | {0x2C30, 0x2C5E, WBP_ALetter}, | ||
566 | {0x2C60, 0x2C7C, WBP_ALetter}, | ||
567 | {0x2C7D, 0x2C7D, WBP_ALetter}, | ||
568 | {0x2C7E, 0x2CE4, WBP_ALetter}, | ||
569 | {0x2CEB, 0x2CEE, WBP_ALetter}, | ||
570 | {0x2CEF, 0x2CF1, WBP_Extend}, | ||
571 | {0x2D00, 0x2D25, WBP_ALetter}, | ||
572 | {0x2D30, 0x2D65, WBP_ALetter}, | ||
573 | {0x2D6F, 0x2D6F, WBP_ALetter}, | ||
574 | {0x2D7F, 0x2D7F, WBP_Extend}, | ||
575 | {0x2D80, 0x2D96, WBP_ALetter}, | ||
576 | {0x2DA0, 0x2DA6, WBP_ALetter}, | ||
577 | {0x2DA8, 0x2DAE, WBP_ALetter}, | ||
578 | {0x2DB0, 0x2DB6, WBP_ALetter}, | ||
579 | {0x2DB8, 0x2DBE, WBP_ALetter}, | ||
580 | {0x2DC0, 0x2DC6, WBP_ALetter}, | ||
581 | {0x2DC8, 0x2DCE, WBP_ALetter}, | ||
582 | {0x2DD0, 0x2DD6, WBP_ALetter}, | ||
583 | {0x2DD8, 0x2DDE, WBP_ALetter}, | ||
584 | {0x2DE0, 0x2DFF, WBP_Extend}, | ||
585 | {0x2E2F, 0x2E2F, WBP_ALetter}, | ||
586 | {0x3005, 0x3005, WBP_ALetter}, | ||
587 | {0x302A, 0x302F, WBP_Extend}, | ||
588 | {0x3031, 0x3035, WBP_Katakana}, | ||
589 | {0x303B, 0x303B, WBP_ALetter}, | ||
590 | {0x303C, 0x303C, WBP_ALetter}, | ||
591 | {0x3099, 0x309A, WBP_Extend}, | ||
592 | {0x309B, 0x309C, WBP_Katakana}, | ||
593 | {0x30A0, 0x30A0, WBP_Katakana}, | ||
594 | {0x30A1, 0x30FA, WBP_Katakana}, | ||
595 | {0x30FC, 0x30FE, WBP_Katakana}, | ||
596 | {0x30FF, 0x30FF, WBP_Katakana}, | ||
597 | {0x3105, 0x312D, WBP_ALetter}, | ||
598 | {0x3131, 0x318E, WBP_ALetter}, | ||
599 | {0x31A0, 0x31BA, WBP_ALetter}, | ||
600 | {0x31F0, 0x31FF, WBP_Katakana}, | ||
601 | {0x32D0, 0x32FE, WBP_Katakana}, | ||
602 | {0x3300, 0x3357, WBP_Katakana}, | ||
603 | {0xA000, 0xA014, WBP_ALetter}, | ||
604 | {0xA015, 0xA015, WBP_ALetter}, | ||
605 | {0xA016, 0xA48C, WBP_ALetter}, | ||
606 | {0xA4D0, 0xA4F7, WBP_ALetter}, | ||
607 | {0xA4F8, 0xA4FD, WBP_ALetter}, | ||
608 | {0xA500, 0xA60B, WBP_ALetter}, | ||
609 | {0xA60C, 0xA60C, WBP_ALetter}, | ||
610 | {0xA610, 0xA61F, WBP_ALetter}, | ||
611 | {0xA620, 0xA629, WBP_Numeric}, | ||
612 | {0xA62A, 0xA62B, WBP_ALetter}, | ||
613 | {0xA640, 0xA66D, WBP_ALetter}, | ||
614 | {0xA66E, 0xA66E, WBP_ALetter}, | ||
615 | {0xA66F, 0xA66F, WBP_Extend}, | ||
616 | {0xA670, 0xA672, WBP_Extend}, | ||
617 | {0xA67C, 0xA67D, WBP_Extend}, | ||
618 | {0xA67F, 0xA67F, WBP_ALetter}, | ||
619 | {0xA680, 0xA697, WBP_ALetter}, | ||
620 | {0xA6A0, 0xA6E5, WBP_ALetter}, | ||
621 | {0xA6E6, 0xA6EF, WBP_ALetter}, | ||
622 | {0xA6F0, 0xA6F1, WBP_Extend}, | ||
623 | {0xA717, 0xA71F, WBP_ALetter}, | ||
624 | {0xA722, 0xA76F, WBP_ALetter}, | ||
625 | {0xA770, 0xA770, WBP_ALetter}, | ||
626 | {0xA771, 0xA787, WBP_ALetter}, | ||
627 | {0xA788, 0xA788, WBP_ALetter}, | ||
628 | {0xA78B, 0xA78E, WBP_ALetter}, | ||
629 | {0xA790, 0xA791, WBP_ALetter}, | ||
630 | {0xA7A0, 0xA7A9, WBP_ALetter}, | ||
631 | {0xA7FA, 0xA7FA, WBP_ALetter}, | ||
632 | {0xA7FB, 0xA801, WBP_ALetter}, | ||
633 | {0xA802, 0xA802, WBP_Extend}, | ||
634 | {0xA803, 0xA805, WBP_ALetter}, | ||
635 | {0xA806, 0xA806, WBP_Extend}, | ||
636 | {0xA807, 0xA80A, WBP_ALetter}, | ||
637 | {0xA80B, 0xA80B, WBP_Extend}, | ||
638 | {0xA80C, 0xA822, WBP_ALetter}, | ||
639 | {0xA823, 0xA824, WBP_Extend}, | ||
640 | {0xA825, 0xA826, WBP_Extend}, | ||
641 | {0xA827, 0xA827, WBP_Extend}, | ||
642 | {0xA840, 0xA873, WBP_ALetter}, | ||
643 | {0xA880, 0xA881, WBP_Extend}, | ||
644 | {0xA882, 0xA8B3, WBP_ALetter}, | ||
645 | {0xA8B4, 0xA8C3, WBP_Extend}, | ||
646 | {0xA8C4, 0xA8C4, WBP_Extend}, | ||
647 | {0xA8D0, 0xA8D9, WBP_Numeric}, | ||
648 | {0xA8E0, 0xA8F1, WBP_Extend}, | ||
649 | {0xA8F2, 0xA8F7, WBP_ALetter}, | ||
650 | {0xA8FB, 0xA8FB, WBP_ALetter}, | ||
651 | {0xA900, 0xA909, WBP_Numeric}, | ||
652 | {0xA90A, 0xA925, WBP_ALetter}, | ||
653 | {0xA926, 0xA92D, WBP_Extend}, | ||
654 | {0xA930, 0xA946, WBP_ALetter}, | ||
655 | {0xA947, 0xA951, WBP_Extend}, | ||
656 | {0xA952, 0xA953, WBP_Extend}, | ||
657 | {0xA960, 0xA97C, WBP_ALetter}, | ||
658 | {0xA980, 0xA982, WBP_Extend}, | ||
659 | {0xA983, 0xA983, WBP_Extend}, | ||
660 | {0xA984, 0xA9B2, WBP_ALetter}, | ||
661 | {0xA9B3, 0xA9B3, WBP_Extend}, | ||
662 | {0xA9B4, 0xA9B5, WBP_Extend}, | ||
663 | {0xA9B6, 0xA9B9, WBP_Extend}, | ||
664 | {0xA9BA, 0xA9BB, WBP_Extend}, | ||
665 | {0xA9BC, 0xA9BC, WBP_Extend}, | ||
666 | {0xA9BD, 0xA9C0, WBP_Extend}, | ||
667 | {0xA9CF, 0xA9CF, WBP_ALetter}, | ||
668 | {0xA9D0, 0xA9D9, WBP_Numeric}, | ||
669 | {0xAA00, 0xAA28, WBP_ALetter}, | ||
670 | {0xAA29, 0xAA2E, WBP_Extend}, | ||
671 | {0xAA2F, 0xAA30, WBP_Extend}, | ||
672 | {0xAA31, 0xAA32, WBP_Extend}, | ||
673 | {0xAA33, 0xAA34, WBP_Extend}, | ||
674 | {0xAA35, 0xAA36, WBP_Extend}, | ||
675 | {0xAA40, 0xAA42, WBP_ALetter}, | ||
676 | {0xAA43, 0xAA43, WBP_Extend}, | ||
677 | {0xAA44, 0xAA4B, WBP_ALetter}, | ||
678 | {0xAA4C, 0xAA4C, WBP_Extend}, | ||
679 | {0xAA4D, 0xAA4D, WBP_Extend}, | ||
680 | {0xAA50, 0xAA59, WBP_Numeric}, | ||
681 | {0xAA7B, 0xAA7B, WBP_Extend}, | ||
682 | {0xAAB0, 0xAAB0, WBP_Extend}, | ||
683 | {0xAAB2, 0xAAB4, WBP_Extend}, | ||
684 | {0xAAB7, 0xAAB8, WBP_Extend}, | ||
685 | {0xAABE, 0xAABF, WBP_Extend}, | ||
686 | {0xAAC1, 0xAAC1, WBP_Extend}, | ||
687 | {0xAB01, 0xAB06, WBP_ALetter}, | ||
688 | {0xAB09, 0xAB0E, WBP_ALetter}, | ||
689 | {0xAB11, 0xAB16, WBP_ALetter}, | ||
690 | {0xAB20, 0xAB26, WBP_ALetter}, | ||
691 | {0xAB28, 0xAB2E, WBP_ALetter}, | ||
692 | {0xABC0, 0xABE2, WBP_ALetter}, | ||
693 | {0xABE3, 0xABE4, WBP_Extend}, | ||
694 | {0xABE5, 0xABE5, WBP_Extend}, | ||
695 | {0xABE6, 0xABE7, WBP_Extend}, | ||
696 | {0xABE8, 0xABE8, WBP_Extend}, | ||
697 | {0xABE9, 0xABEA, WBP_Extend}, | ||
698 | {0xABEC, 0xABEC, WBP_Extend}, | ||
699 | {0xABED, 0xABED, WBP_Extend}, | ||
700 | {0xABF0, 0xABF9, WBP_Numeric}, | ||
701 | {0xAC00, 0xD7A3, WBP_ALetter}, | ||
702 | {0xD7B0, 0xD7C6, WBP_ALetter}, | ||
703 | {0xD7CB, 0xD7FB, WBP_ALetter}, | ||
704 | {0xFB00, 0xFB06, WBP_ALetter}, | ||
705 | {0xFB13, 0xFB17, WBP_ALetter}, | ||
706 | {0xFB1D, 0xFB1D, WBP_ALetter}, | ||
707 | {0xFB1E, 0xFB1E, WBP_Extend}, | ||
708 | {0xFB1F, 0xFB28, WBP_ALetter}, | ||
709 | {0xFB2A, 0xFB36, WBP_ALetter}, | ||
710 | {0xFB38, 0xFB3C, WBP_ALetter}, | ||
711 | {0xFB3E, 0xFB3E, WBP_ALetter}, | ||
712 | {0xFB40, 0xFB41, WBP_ALetter}, | ||
713 | {0xFB43, 0xFB44, WBP_ALetter}, | ||
714 | {0xFB46, 0xFBB1, WBP_ALetter}, | ||
715 | {0xFBD3, 0xFD3D, WBP_ALetter}, | ||
716 | {0xFD50, 0xFD8F, WBP_ALetter}, | ||
717 | {0xFD92, 0xFDC7, WBP_ALetter}, | ||
718 | {0xFDF0, 0xFDFB, WBP_ALetter}, | ||
719 | {0xFE00, 0xFE0F, WBP_Extend}, | ||
720 | {0xFE10, 0xFE10, WBP_MidNum}, | ||
721 | {0xFE13, 0xFE13, WBP_MidLetter}, | ||
722 | {0xFE14, 0xFE14, WBP_MidNum}, | ||
723 | {0xFE20, 0xFE26, WBP_Extend}, | ||
724 | {0xFE33, 0xFE34, WBP_ExtendNumLet}, | ||
725 | {0xFE4D, 0xFE4F, WBP_ExtendNumLet}, | ||
726 | {0xFE50, 0xFE50, WBP_MidNum}, | ||
727 | {0xFE52, 0xFE52, WBP_MidNumLet}, | ||
728 | {0xFE54, 0xFE54, WBP_MidNum}, | ||
729 | {0xFE55, 0xFE55, WBP_MidLetter}, | ||
730 | {0xFE70, 0xFE74, WBP_ALetter}, | ||
731 | {0xFE76, 0xFEFC, WBP_ALetter}, | ||
732 | {0xFEFF, 0xFEFF, WBP_Format}, | ||
733 | {0xFF07, 0xFF07, WBP_MidNumLet}, | ||
734 | {0xFF0C, 0xFF0C, WBP_MidNum}, | ||
735 | {0xFF0E, 0xFF0E, WBP_MidNumLet}, | ||
736 | {0xFF1A, 0xFF1A, WBP_MidLetter}, | ||
737 | {0xFF1B, 0xFF1B, WBP_MidNum}, | ||
738 | {0xFF21, 0xFF3A, WBP_ALetter}, | ||
739 | {0xFF3F, 0xFF3F, WBP_ExtendNumLet}, | ||
740 | {0xFF41, 0xFF5A, WBP_ALetter}, | ||
741 | {0xFF66, 0xFF6F, WBP_Katakana}, | ||
742 | {0xFF70, 0xFF70, WBP_Katakana}, | ||
743 | {0xFF71, 0xFF9D, WBP_Katakana}, | ||
744 | {0xFF9E, 0xFF9F, WBP_Extend}, | ||
745 | {0xFFA0, 0xFFBE, WBP_ALetter}, | ||
746 | {0xFFC2, 0xFFC7, WBP_ALetter}, | ||
747 | {0xFFCA, 0xFFCF, WBP_ALetter}, | ||
748 | {0xFFD2, 0xFFD7, WBP_ALetter}, | ||
749 | {0xFFDA, 0xFFDC, WBP_ALetter}, | ||
750 | {0xFFF9, 0xFFFB, WBP_Format}, | ||
751 | {0x10000, 0x1000B, WBP_ALetter}, | ||
752 | {0x1000D, 0x10026, WBP_ALetter}, | ||
753 | {0x10028, 0x1003A, WBP_ALetter}, | ||
754 | {0x1003C, 0x1003D, WBP_ALetter}, | ||
755 | {0x1003F, 0x1004D, WBP_ALetter}, | ||
756 | {0x10050, 0x1005D, WBP_ALetter}, | ||
757 | {0x10080, 0x100FA, WBP_ALetter}, | ||
758 | {0x10140, 0x10174, WBP_ALetter}, | ||
759 | {0x101FD, 0x101FD, WBP_Extend}, | ||
760 | {0x10280, 0x1029C, WBP_ALetter}, | ||
761 | {0x102A0, 0x102D0, WBP_ALetter}, | ||
762 | {0x10300, 0x1031E, WBP_ALetter}, | ||
763 | {0x10330, 0x10340, WBP_ALetter}, | ||
764 | {0x10341, 0x10341, WBP_ALetter}, | ||
765 | {0x10342, 0x10349, WBP_ALetter}, | ||
766 | {0x1034A, 0x1034A, WBP_ALetter}, | ||
767 | {0x10380, 0x1039D, WBP_ALetter}, | ||
768 | {0x103A0, 0x103C3, WBP_ALetter}, | ||
769 | {0x103C8, 0x103CF, WBP_ALetter}, | ||
770 | {0x103D1, 0x103D5, WBP_ALetter}, | ||
771 | {0x10400, 0x1044F, WBP_ALetter}, | ||
772 | {0x10450, 0x1049D, WBP_ALetter}, | ||
773 | {0x104A0, 0x104A9, WBP_Numeric}, | ||
774 | {0x10800, 0x10805, WBP_ALetter}, | ||
775 | {0x10808, 0x10808, WBP_ALetter}, | ||
776 | {0x1080A, 0x10835, WBP_ALetter}, | ||
777 | {0x10837, 0x10838, WBP_ALetter}, | ||
778 | {0x1083C, 0x1083C, WBP_ALetter}, | ||
779 | {0x1083F, 0x10855, WBP_ALetter}, | ||
780 | {0x10900, 0x10915, WBP_ALetter}, | ||
781 | {0x10920, 0x10939, WBP_ALetter}, | ||
782 | {0x10A00, 0x10A00, WBP_ALetter}, | ||
783 | {0x10A01, 0x10A03, WBP_Extend}, | ||
784 | {0x10A05, 0x10A06, WBP_Extend}, | ||
785 | {0x10A0C, 0x10A0F, WBP_Extend}, | ||
786 | {0x10A10, 0x10A13, WBP_ALetter}, | ||
787 | {0x10A15, 0x10A17, WBP_ALetter}, | ||
788 | {0x10A19, 0x10A33, WBP_ALetter}, | ||
789 | {0x10A38, 0x10A3A, WBP_Extend}, | ||
790 | {0x10A3F, 0x10A3F, WBP_Extend}, | ||
791 | {0x10A60, 0x10A7C, WBP_ALetter}, | ||
792 | {0x10B00, 0x10B35, WBP_ALetter}, | ||
793 | {0x10B40, 0x10B55, WBP_ALetter}, | ||
794 | {0x10B60, 0x10B72, WBP_ALetter}, | ||
795 | {0x10C00, 0x10C48, WBP_ALetter}, | ||
796 | {0x11000, 0x11000, WBP_Extend}, | ||
797 | {0x11001, 0x11001, WBP_Extend}, | ||
798 | {0x11002, 0x11002, WBP_Extend}, | ||
799 | {0x11003, 0x11037, WBP_ALetter}, | ||
800 | {0x11038, 0x11046, WBP_Extend}, | ||
801 | {0x11066, 0x1106F, WBP_Numeric}, | ||
802 | {0x11080, 0x11081, WBP_Extend}, | ||
803 | {0x11082, 0x11082, WBP_Extend}, | ||
804 | {0x11083, 0x110AF, WBP_ALetter}, | ||
805 | {0x110B0, 0x110B2, WBP_Extend}, | ||
806 | {0x110B3, 0x110B6, WBP_Extend}, | ||
807 | {0x110B7, 0x110B8, WBP_Extend}, | ||
808 | {0x110B9, 0x110BA, WBP_Extend}, | ||
809 | {0x110BD, 0x110BD, WBP_Format}, | ||
810 | {0x12000, 0x1236E, WBP_ALetter}, | ||
811 | {0x12400, 0x12462, WBP_ALetter}, | ||
812 | {0x13000, 0x1342E, WBP_ALetter}, | ||
813 | {0x16800, 0x16A38, WBP_ALetter}, | ||
814 | {0x1B000, 0x1B000, WBP_Katakana}, | ||
815 | {0x1D165, 0x1D166, WBP_Extend}, | ||
816 | {0x1D167, 0x1D169, WBP_Extend}, | ||
817 | {0x1D16D, 0x1D172, WBP_Extend}, | ||
818 | {0x1D173, 0x1D17A, WBP_Format}, | ||
819 | {0x1D17B, 0x1D182, WBP_Extend}, | ||
820 | {0x1D185, 0x1D18B, WBP_Extend}, | ||
821 | {0x1D1AA, 0x1D1AD, WBP_Extend}, | ||
822 | {0x1D242, 0x1D244, WBP_Extend}, | ||
823 | {0x1D400, 0x1D454, WBP_ALetter}, | ||
824 | {0x1D456, 0x1D49C, WBP_ALetter}, | ||
825 | {0x1D49E, 0x1D49F, WBP_ALetter}, | ||
826 | {0x1D4A2, 0x1D4A2, WBP_ALetter}, | ||
827 | {0x1D4A5, 0x1D4A6, WBP_ALetter}, | ||
828 | {0x1D4A9, 0x1D4AC, WBP_ALetter}, | ||
829 | {0x1D4AE, 0x1D4B9, WBP_ALetter}, | ||
830 | {0x1D4BB, 0x1D4BB, WBP_ALetter}, | ||
831 | {0x1D4BD, 0x1D4C3, WBP_ALetter}, | ||
832 | {0x1D4C5, 0x1D505, WBP_ALetter}, | ||
833 | {0x1D507, 0x1D50A, WBP_ALetter}, | ||
834 | {0x1D50D, 0x1D514, WBP_ALetter}, | ||
835 | {0x1D516, 0x1D51C, WBP_ALetter}, | ||
836 | {0x1D51E, 0x1D539, WBP_ALetter}, | ||
837 | {0x1D53B, 0x1D53E, WBP_ALetter}, | ||
838 | {0x1D540, 0x1D544, WBP_ALetter}, | ||
839 | {0x1D546, 0x1D546, WBP_ALetter}, | ||
840 | {0x1D54A, 0x1D550, WBP_ALetter}, | ||
841 | {0x1D552, 0x1D6A5, WBP_ALetter}, | ||
842 | {0x1D6A8, 0x1D6C0, WBP_ALetter}, | ||
843 | {0x1D6C2, 0x1D6DA, WBP_ALetter}, | ||
844 | {0x1D6DC, 0x1D6FA, WBP_ALetter}, | ||
845 | {0x1D6FC, 0x1D714, WBP_ALetter}, | ||
846 | {0x1D716, 0x1D734, WBP_ALetter}, | ||
847 | {0x1D736, 0x1D74E, WBP_ALetter}, | ||
848 | {0x1D750, 0x1D76E, WBP_ALetter}, | ||
849 | {0x1D770, 0x1D788, WBP_ALetter}, | ||
850 | {0x1D78A, 0x1D7A8, WBP_ALetter}, | ||
851 | {0x1D7AA, 0x1D7C2, WBP_ALetter}, | ||
852 | {0x1D7C4, 0x1D7CB, WBP_ALetter}, | ||
853 | {0x1D7CE, 0x1D7FF, WBP_Numeric}, | ||
854 | {0xE0001, 0xE0001, WBP_Format}, | ||
855 | {0xE0020, 0xE007F, WBP_Format}, | ||
856 | {0xE0100, 0xE01EF, WBP_Extend}, | ||
857 | {0xFFFFFFFF, 0xFFFFFFFF, WBP_Undefined} | ||
858 | }; | ||
diff --git a/libraries/evas/src/static_deps/liblinebreak/wordbreakdef.h b/libraries/evas/src/static_deps/liblinebreak/wordbreakdef.h new file mode 100644 index 0000000..331cd01 --- /dev/null +++ b/libraries/evas/src/static_deps/liblinebreak/wordbreakdef.h | |||
@@ -0,0 +1,80 @@ | |||
1 | /* vim: set tabstop=4 shiftwidth=4: */ | ||
2 | |||
3 | /* | ||
4 | * Word breaking in a Unicode sequence. Designed to be used in a | ||
5 | * generic text renderer. | ||
6 | * | ||
7 | * Copyright (C) 2011-2011 Tom Hacohen <tom@stosb.com> | ||
8 | * | ||
9 | * This software is provided 'as-is', without any express or implied | ||
10 | * warranty. In no event will the author be held liable for any damages | ||
11 | * arising from the use of this software. | ||
12 | * | ||
13 | * Permission is granted to anyone to use this software for any purpose, | ||
14 | * including commercial applications, and to alter it and redistribute | ||
15 | * it freely, subject to the following restrictions: | ||
16 | * | ||
17 | * 1. The origin of this software must not be misrepresented; you must | ||
18 | * not claim that you wrote the original software. If you use this | ||
19 | * software in a product, an acknowledgement in the product | ||
20 | * documentation would be appreciated but is not required. | ||
21 | * 2. Altered source versions must be plainly marked as such, and must | ||
22 | * not be misrepresented as being the original software. | ||
23 | * 3. This notice may not be removed or altered from any source | ||
24 | * distribution. | ||
25 | * | ||
26 | * The main reference is Unicode Standard Annex 29 (UAX #29): | ||
27 | * <URL:http://unicode.org/reports/tr29> | ||
28 | * | ||
29 | * When this library was designed, this annex was at Revision 17, for | ||
30 | * Unicode 6.0.0: | ||
31 | * <URL:http://www.unicode.org/reports/tr29/tr29-17.html> | ||
32 | * | ||
33 | * The Unicode Terms of Use are available at | ||
34 | * <URL:http://www.unicode.org/copyright.html> | ||
35 | */ | ||
36 | |||
37 | /** | ||
38 | * @file wordbreakdef.h | ||
39 | * | ||
40 | * Definitions of internal data structures, declarations of global | ||
41 | * variables, and function prototypes for the word breaking algorithm. | ||
42 | * | ||
43 | * @version 2.0, 2011/12/12 | ||
44 | * @author Tom Hacohen | ||
45 | */ | ||
46 | |||
47 | /** | ||
48 | * Word break classes. This is a direct mapping of Table 3 of Unicode | ||
49 | * Standard Annex 29, Revision 17. | ||
50 | */ | ||
51 | enum WordBreakClass | ||
52 | { | ||
53 | WBP_Undefined, | ||
54 | |||
55 | /* The following break classes are treated in the pair table. */ | ||
56 | WBP_CR, | ||
57 | WBP_LF, | ||
58 | WBP_Newline, | ||
59 | WBP_Extend, | ||
60 | WBP_Format, | ||
61 | WBP_Katakana, | ||
62 | WBP_ALetter, | ||
63 | WBP_MidNumLet, | ||
64 | WBP_MidLetter, | ||
65 | WBP_MidNum, | ||
66 | WBP_Numeric, | ||
67 | WBP_ExtendNumLet, | ||
68 | WBP_Any | ||
69 | }; | ||
70 | |||
71 | /** | ||
72 | * Struct for entries of word break properties. The array of the | ||
73 | * entries \e must be sorted. | ||
74 | */ | ||
75 | struct WordBreakProperties | ||
76 | { | ||
77 | utf32_t start; /**< Starting coding point */ | ||
78 | utf32_t end; /**< End coding point */ | ||
79 | enum WordBreakClass prop; /**< The word breaking property */ | ||
80 | }; | ||
diff --git a/libraries/evas/src/tests/Makefile.in b/libraries/evas/src/tests/Makefile.in index c598c3d..8790c33 100644 --- a/libraries/evas/src/tests/Makefile.in +++ b/libraries/evas/src/tests/Makefile.in | |||
@@ -203,8 +203,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@ | |||
203 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ | 203 | PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ |
204 | PIXMAN_LIBS = @PIXMAN_LIBS@ | 204 | PIXMAN_LIBS = @PIXMAN_LIBS@ |
205 | PKG_CONFIG = @PKG_CONFIG@ | 205 | PKG_CONFIG = @PKG_CONFIG@ |
206 | PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ | ||
207 | PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ | ||
208 | PNG_CFLAGS = @PNG_CFLAGS@ | 206 | PNG_CFLAGS = @PNG_CFLAGS@ |
209 | PNG_LIBS = @PNG_LIBS@ | 207 | PNG_LIBS = @PNG_LIBS@ |
210 | RANLIB = @RANLIB@ | 208 | RANLIB = @RANLIB@ |
@@ -221,6 +219,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@ | |||
221 | VALGRIND_LIBS = @VALGRIND_LIBS@ | 219 | VALGRIND_LIBS = @VALGRIND_LIBS@ |
222 | VERSION = @VERSION@ | 220 | VERSION = @VERSION@ |
223 | VMAJ = @VMAJ@ | 221 | VMAJ = @VMAJ@ |
222 | WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@ | ||
223 | WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@ | ||
224 | WIN32_CFLAGS = @WIN32_CFLAGS@ | 224 | WIN32_CFLAGS = @WIN32_CFLAGS@ |
225 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ | 225 | WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ |
226 | XCB_CFLAGS = @XCB_CFLAGS@ | 226 | XCB_CFLAGS = @XCB_CFLAGS@ |
@@ -302,6 +302,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@ | |||
302 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ | 302 | evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ |
303 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ | 303 | evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ |
304 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ | 304 | evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ |
305 | evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@ | ||
306 | evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@ | ||
307 | evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@ | ||
308 | evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@ | ||
305 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ | 309 | evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ |
306 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ | 310 | evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ |
307 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ | 311 | evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ |
diff --git a/libraries/evas/src/tests/evas_test_callbacks.c b/libraries/evas/src/tests/evas_test_callbacks.c index 675ee1c..164851e 100644 --- a/libraries/evas/src/tests/evas_test_callbacks.c +++ b/libraries/evas/src/tests/evas_test_callbacks.c | |||
@@ -28,7 +28,7 @@ do \ | |||
28 | } \ | 28 | } \ |
29 | while (0) | 29 | while (0) |
30 | 30 | ||
31 | static int counter = 1; | 31 | static uintptr_t counter = 1; |
32 | 32 | ||
33 | static void | 33 | static void |
34 | _obj_event_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) | 34 | _obj_event_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) |
@@ -37,7 +37,7 @@ _obj_event_cb(void *data, Evas *e, Evas_Object *obj, void *event_info) | |||
37 | (void) obj; | 37 | (void) obj; |
38 | (void) event_info; | 38 | (void) event_info; |
39 | 39 | ||
40 | fail_if(((int) data) != counter); | 40 | fail_if(((uintptr_t) data) != counter); |
41 | 41 | ||
42 | counter++; | 42 | counter++; |
43 | } | 43 | } |
@@ -83,7 +83,7 @@ _event_cb(void *data, Evas *e, void *event_info) | |||
83 | (void) e; | 83 | (void) e; |
84 | (void) event_info; | 84 | (void) event_info; |
85 | 85 | ||
86 | fail_if(((int) data) != counter); | 86 | fail_if(((uintptr_t) data) != counter); |
87 | 87 | ||
88 | counter++; | 88 | counter++; |
89 | } | 89 | } |
diff --git a/libraries/evas/src/tests/evas_test_textblock.c b/libraries/evas/src/tests/evas_test_textblock.c index 6a28353..cf6a78b 100644 --- a/libraries/evas/src/tests/evas_test_textblock.c +++ b/libraries/evas/src/tests/evas_test_textblock.c | |||
@@ -21,9 +21,7 @@ _evas_textblock_format_offset_get(const Evas_Object_Textblock_Node_Format *n); | |||
21 | 21 | ||
22 | static const char *style_buf = | 22 | static const char *style_buf = |
23 | "DEFAULT='font=Sans font_size=10 color=#000 text_class=entry'" | 23 | "DEFAULT='font=Sans font_size=10 color=#000 text_class=entry'" |
24 | "br='\n'" | 24 | "newline='br'" |
25 | "ps='ps'" | ||
26 | "tab='\t'" | ||
27 | "b='+ font=Sans:style=bold'"; | 25 | "b='+ font=Sans:style=bold'"; |
28 | 26 | ||
29 | #define START_TB_TEST() \ | 27 | #define START_TB_TEST() \ |
@@ -61,7 +59,7 @@ while (0) | |||
61 | START_TEST(evas_textblock_simple) | 59 | START_TEST(evas_textblock_simple) |
62 | { | 60 | { |
63 | START_TB_TEST(); | 61 | START_TB_TEST(); |
64 | const char *buf = "Th<i>i</i>s is a <br> te<b>s</b>t."; | 62 | const char *buf = "Th<i>i</i>s is a <br/> te<b>s</b>t."; |
65 | evas_object_textblock_text_markup_set(tb, buf); | 63 | evas_object_textblock_text_markup_set(tb, buf); |
66 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), buf)); | 64 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), buf)); |
67 | END_TB_TEST(); | 65 | END_TB_TEST(); |
@@ -95,12 +93,12 @@ START_TEST(evas_textblock_cursor) | |||
95 | Evas_Coord x, y, w, h; | 93 | Evas_Coord x, y, w, h; |
96 | size_t i, len; | 94 | size_t i, len; |
97 | Evas_Coord nw, nh; | 95 | Evas_Coord nw, nh; |
98 | const char *buf = "This is a<br> test.<ps>Lets see if this works.<ps>עוד פסקה."; | 96 | const char *buf = "This is a<br/> test.<ps/>Lets see if this works.<ps/>עוד פסקה."; |
99 | 97 | ||
100 | /* Walk the textblock using cursor_char_next */ | 98 | /* Walk the textblock using cursor_char_next */ |
101 | evas_object_textblock_text_markup_set(tb, buf); | 99 | evas_object_textblock_text_markup_set(tb, buf); |
102 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), buf)); | 100 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), buf)); |
103 | len = eina_unicode_utf8_get_len(buf) - 9; /* 9 because len(<br>) == 1 and len(<ps>) == 1 */ | 101 | len = eina_unicode_utf8_get_len(buf) - 12; /* 12 because len(<br/>) == 1 and len(<ps/>) == 1 */ |
104 | for (i = 0 ; i < len ; i++) | 102 | for (i = 0 ; i < len ; i++) |
105 | { | 103 | { |
106 | _CHECK_CURSOR_COORDS(); | 104 | _CHECK_CURSOR_COORDS(); |
@@ -284,7 +282,7 @@ START_TEST(evas_textblock_cursor) | |||
284 | /* Paragraph text get */ | 282 | /* Paragraph text get */ |
285 | evas_textblock_cursor_paragraph_first(cur); | 283 | evas_textblock_cursor_paragraph_first(cur); |
286 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), | 284 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), |
287 | "This is a<br> test.")); | 285 | "This is a<br/> test.")); |
288 | evas_textblock_cursor_paragraph_next(cur); | 286 | evas_textblock_cursor_paragraph_next(cur); |
289 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), | 287 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), |
290 | "Lets see if this works.")); | 288 | "Lets see if this works.")); |
@@ -294,9 +292,9 @@ START_TEST(evas_textblock_cursor) | |||
294 | 292 | ||
295 | /* Paragraph length get */ | 293 | /* Paragraph length get */ |
296 | evas_textblock_cursor_paragraph_first(cur); | 294 | evas_textblock_cursor_paragraph_first(cur); |
297 | /* -3 because len(<br>) == 1 */ | 295 | /* -4 because len(<br/>) == 1 */ |
298 | fail_if(evas_textblock_cursor_paragraph_text_length_get(cur) != | 296 | fail_if(evas_textblock_cursor_paragraph_text_length_get(cur) != |
299 | eina_unicode_utf8_get_len("This is a<br> test.") - 3); | 297 | eina_unicode_utf8_get_len("This is a<br/> test.") - 4); |
300 | evas_textblock_cursor_paragraph_next(cur); | 298 | evas_textblock_cursor_paragraph_next(cur); |
301 | fail_if(evas_textblock_cursor_paragraph_text_length_get(cur) != | 299 | fail_if(evas_textblock_cursor_paragraph_text_length_get(cur) != |
302 | eina_unicode_utf8_get_len("Lets see if this works.")); | 300 | eina_unicode_utf8_get_len("Lets see if this works.")); |
@@ -308,7 +306,7 @@ START_TEST(evas_textblock_cursor) | |||
308 | evas_textblock_cursor_pos_set(cur, 0); | 306 | evas_textblock_cursor_pos_set(cur, 0); |
309 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "T")); | 307 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "T")); |
310 | evas_textblock_cursor_pos_set(cur, 9); | 308 | evas_textblock_cursor_pos_set(cur, 9); |
311 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<br>")); | 309 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<br/>")); |
312 | evas_textblock_cursor_pos_set(cur, 43); | 310 | evas_textblock_cursor_pos_set(cur, 43); |
313 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "ד")); | 311 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "ד")); |
314 | 312 | ||
@@ -414,12 +412,12 @@ START_TEST(evas_textblock_cursor) | |||
414 | 412 | ||
415 | #ifdef HAVE_FRIBIDI | 413 | #ifdef HAVE_FRIBIDI |
416 | evas_object_textblock_text_markup_set(tb, | 414 | evas_object_textblock_text_markup_set(tb, |
417 | "testנסיוןtestנסיון<ps>" | 415 | "testנסיוןtestנסיון<ps/>" |
418 | "נסיוןtestנסיוןtest<ps>" | 416 | "נסיוןtestנסיוןtest<ps/>" |
419 | "testנסיוןtest<ps>" | 417 | "testנסיוןtest<ps/>" |
420 | "נסיוןtestנסיון<ps>" | 418 | "נסיוןtestנסיון<ps/>" |
421 | "testנסיון<br>נסיון<ps>" | 419 | "testנסיון<br/>נסיון<ps/>" |
422 | "נסיוןtest<br>test" | 420 | "נסיוןtest<br/>test" |
423 | ); | 421 | ); |
424 | 422 | ||
425 | for (i = 0 ; i < 8 ; i++) | 423 | for (i = 0 ; i < 8 ; i++) |
@@ -568,6 +566,32 @@ START_TEST(evas_textblock_cursor) | |||
568 | fail_if(evas_textblock_cursor_compare(main_cur, cur)); | 566 | fail_if(evas_textblock_cursor_compare(main_cur, cur)); |
569 | } | 567 | } |
570 | 568 | ||
569 | { | ||
570 | const char *buf_wb = "a This is_a t:e.s't a"; | ||
571 | evas_object_textblock_text_markup_set(tb, buf_wb); | ||
572 | |||
573 | /* Word start/end */ | ||
574 | evas_textblock_cursor_pos_set(cur, 3); | ||
575 | evas_textblock_cursor_word_start(cur); | ||
576 | fail_if(2 != evas_textblock_cursor_pos_get(cur)); | ||
577 | evas_textblock_cursor_word_end(cur); | ||
578 | fail_if(5 != evas_textblock_cursor_pos_get(cur)); | ||
579 | |||
580 | evas_textblock_cursor_pos_set(cur, 13); | ||
581 | evas_textblock_cursor_word_end(cur); | ||
582 | fail_if(18 != evas_textblock_cursor_pos_get(cur)); | ||
583 | evas_textblock_cursor_word_start(cur); | ||
584 | fail_if(12 != evas_textblock_cursor_pos_get(cur)); | ||
585 | evas_textblock_cursor_word_start(cur); | ||
586 | fail_if(12 != evas_textblock_cursor_pos_get(cur)); | ||
587 | evas_textblock_cursor_word_start(cur); | ||
588 | fail_if(12 != evas_textblock_cursor_pos_get(cur)); | ||
589 | evas_textblock_cursor_word_end(cur); | ||
590 | fail_if(18 != evas_textblock_cursor_pos_get(cur)); | ||
591 | evas_textblock_cursor_word_end(cur); | ||
592 | fail_if(18 != evas_textblock_cursor_pos_get(cur)); | ||
593 | } | ||
594 | |||
571 | END_TB_TEST(); | 595 | END_TB_TEST(); |
572 | } | 596 | } |
573 | END_TEST | 597 | END_TEST |
@@ -723,7 +747,7 @@ START_TEST(evas_textblock_format_removal) | |||
723 | 747 | ||
724 | /* Range deletion across paragraphs */ | 748 | /* Range deletion across paragraphs */ |
725 | evas_object_textblock_text_markup_set(tb, | 749 | evas_object_textblock_text_markup_set(tb, |
726 | "Th<b>is a<a>te<ps>" | 750 | "Th<b>is a<a>te<ps/>" |
727 | "s</a>st</b>."); | 751 | "s</a>st</b>."); |
728 | evas_textblock_cursor_pos_set(cur, 6); | 752 | evas_textblock_cursor_pos_set(cur, 6); |
729 | evas_textblock_cursor_pos_set(main_cur, 10); | 753 | evas_textblock_cursor_pos_set(main_cur, 10); |
@@ -749,14 +773,14 @@ START_TEST(evas_textblock_format_removal) | |||
749 | fail_if (fnode); | 773 | fail_if (fnode); |
750 | 774 | ||
751 | /* Two formats across different paragraphs with notihng in between. */ | 775 | /* Two formats across different paragraphs with notihng in between. */ |
752 | evas_object_textblock_text_markup_set(tb, "<b><ps></b>"); | 776 | evas_object_textblock_text_markup_set(tb, "<b><ps/></b>"); |
753 | evas_textblock_cursor_pos_set(cur, 0); | 777 | evas_textblock_cursor_pos_set(cur, 0); |
754 | evas_textblock_cursor_char_delete(cur); | 778 | evas_textblock_cursor_char_delete(cur); |
755 | fnode = evas_textblock_node_format_first_get(tb); | 779 | fnode = evas_textblock_node_format_first_get(tb); |
756 | fail_if (fnode); | 780 | fail_if (fnode); |
757 | 781 | ||
758 | /* Try with range */ | 782 | /* Try with range */ |
759 | evas_object_textblock_text_markup_set(tb, "<b><ps></b>"); | 783 | evas_object_textblock_text_markup_set(tb, "<b><ps/></b>"); |
760 | evas_textblock_cursor_pos_set(cur, 0); | 784 | evas_textblock_cursor_pos_set(cur, 0); |
761 | evas_textblock_cursor_pos_set(main_cur, 1); | 785 | evas_textblock_cursor_pos_set(main_cur, 1); |
762 | evas_textblock_cursor_range_delete(cur, main_cur); | 786 | evas_textblock_cursor_range_delete(cur, main_cur); |
@@ -765,7 +789,7 @@ START_TEST(evas_textblock_format_removal) | |||
765 | 789 | ||
766 | /* Verify fmt position and REP_CHAR positions are the same */ | 790 | /* Verify fmt position and REP_CHAR positions are the same */ |
767 | evas_object_textblock_text_markup_set(tb, | 791 | evas_object_textblock_text_markup_set(tb, |
768 | "This is<ps>an <item absize=93x152 vsize=ascent></>a."); | 792 | "This is<ps/>an <item absize=93x152 vsize=ascent></>a."); |
769 | evas_textblock_cursor_pos_set(cur, 7); | 793 | evas_textblock_cursor_pos_set(cur, 7); |
770 | evas_textblock_cursor_char_delete(cur); | 794 | evas_textblock_cursor_char_delete(cur); |
771 | fnode = evas_textblock_node_format_first_get(tb); | 795 | fnode = evas_textblock_node_format_first_get(tb); |
@@ -1091,9 +1115,9 @@ START_TEST(evas_textblock_wrapping) | |||
1091 | evas_object_textblock_text_markup_set(tb, "a"); | 1115 | evas_object_textblock_text_markup_set(tb, "a"); |
1092 | evas_object_textblock_size_formatted_get(tb, &bw, &bh); | 1116 | evas_object_textblock_size_formatted_get(tb, &bw, &bh); |
1093 | evas_object_textblock_text_markup_set(tb, | 1117 | evas_object_textblock_text_markup_set(tb, |
1094 | "aaaa aaaa aaa aa aaa<ps>" | 1118 | "aaaa aaaa aaa aa aaa<ps/>" |
1095 | "aaaa aaa aaa aaa aaa<ps>" | 1119 | "aaaa aaa aaa aaa aaa<ps/>" |
1096 | "a aaaaa aaaaaaaaaaaaaa<br>aaaaa<ps>" | 1120 | "a aaaaa aaaaaaaaaaaaaa<br/>aaaaa<ps/>" |
1097 | "aaaaaa" | 1121 | "aaaaaa" |
1098 | ); | 1122 | ); |
1099 | evas_textblock_cursor_format_prepend(cur, "+ wrap=char"); | 1123 | evas_textblock_cursor_format_prepend(cur, "+ wrap=char"); |
@@ -1113,9 +1137,9 @@ START_TEST(evas_textblock_wrapping) | |||
1113 | evas_object_textblock_text_markup_set(tb, "aaaaaa"); | 1137 | evas_object_textblock_text_markup_set(tb, "aaaaaa"); |
1114 | evas_object_textblock_size_formatted_get(tb, &bw, &bh); | 1138 | evas_object_textblock_size_formatted_get(tb, &bw, &bh); |
1115 | evas_object_textblock_text_markup_set(tb, | 1139 | evas_object_textblock_text_markup_set(tb, |
1116 | "aaaa aaaa aaa aa aaa<ps>" | 1140 | "aaaa aaaa aaa aa aaa<ps/>" |
1117 | "aaaa aaa aaa aaa aaa<ps>" | 1141 | "aaaa aaa aaa aaa aaa<ps/>" |
1118 | "a aaaaa aaaaaa<br>aaaaa<ps>" | 1142 | "a aaaaa aaaaaa<br/>aaaaa<ps/>" |
1119 | "aaaaa" | 1143 | "aaaaa" |
1120 | ); | 1144 | ); |
1121 | evas_textblock_cursor_format_prepend(cur, "+ wrap=word"); | 1145 | evas_textblock_cursor_format_prepend(cur, "+ wrap=word"); |
@@ -1134,9 +1158,9 @@ START_TEST(evas_textblock_wrapping) | |||
1134 | evas_object_textblock_text_markup_set(tb, "a"); | 1158 | evas_object_textblock_text_markup_set(tb, "a"); |
1135 | evas_object_textblock_size_formatted_get(tb, &bw, &bh); | 1159 | evas_object_textblock_size_formatted_get(tb, &bw, &bh); |
1136 | evas_object_textblock_text_markup_set(tb, | 1160 | evas_object_textblock_text_markup_set(tb, |
1137 | "aaaa aaaa aaa aa aaa<ps>" | 1161 | "aaaa aaaa aaa aa aaa<ps/>" |
1138 | "aaaa aaa aaa aaa aaa<ps>" | 1162 | "aaaa aaa aaa aaa aaa<ps/>" |
1139 | "a aaaaa aaaaaa<br>aaaaa<ps>" | 1163 | "a aaaaa aaaaaa<br/>aaaaa<ps/>" |
1140 | "aaaaa" | 1164 | "aaaaa" |
1141 | ); | 1165 | ); |
1142 | evas_textblock_cursor_format_prepend(cur, "+ wrap=mixed"); | 1166 | evas_textblock_cursor_format_prepend(cur, "+ wrap=mixed"); |
@@ -1156,26 +1180,26 @@ START_TEST(evas_textblock_wrapping) | |||
1156 | int wrap_items = sizeof(wrap_style) / sizeof(*wrap_style); | 1180 | int wrap_items = sizeof(wrap_style) / sizeof(*wrap_style); |
1157 | 1181 | ||
1158 | evas_object_textblock_text_markup_set(tb, | 1182 | evas_object_textblock_text_markup_set(tb, |
1159 | "This is an entry widget in this window that<br>" | 1183 | "This is an entry widget in this window that<br/>" |
1160 | "uses markup <b>like this</> for styling and<br>" | 1184 | "uses markup <b>like this</> for styling and<br/>" |
1161 | "formatting <em>like this</>, as well as<br>" | 1185 | "formatting <em>like this</>, as well as<br/>" |
1162 | "<a href=X><link>links in the text</></a>, so enter text<br>" | 1186 | "<a href=X><link>links in the text</></a>, so enter text<br/>" |
1163 | "in here to edit it. By the way, links are<br>" | 1187 | "in here to edit it. By the way, links are<br/>" |
1164 | "called <a href=anc-02>Anchors</a> so you will need<br>" | 1188 | "called <a href=anc-02>Anchors</a> so you will need<br/>" |
1165 | "to refer to them this way.<br>" | 1189 | "to refer to them this way.<br/>" |
1166 | "<br>" | 1190 | "<br/>" |
1167 | 1191 | ||
1168 | "Also you can stick in items with (relsize + ascent): " | 1192 | "Also you can stick in items with (relsize + ascent): " |
1169 | "<item relsize=16x16 vsize=ascent href=emoticon/evil-laugh></item>" | 1193 | "<item relsize=16x16 vsize=ascent href=emoticon/evil-laugh></item>" |
1170 | " (full) " | 1194 | " (full) " |
1171 | "<item relsize=16x16 vsize=full href=emoticon/guilty-smile></item>" | 1195 | "<item relsize=16x16 vsize=full href=emoticon/guilty-smile></item>" |
1172 | " (to the left)<br>" | 1196 | " (to the left)<br/>" |
1173 | 1197 | ||
1174 | "Also (size + ascent): " | 1198 | "Also (size + ascent): " |
1175 | "<item size=16x16 vsize=ascent href=emoticon/haha></item>" | 1199 | "<item size=16x16 vsize=ascent href=emoticon/haha></item>" |
1176 | " (full) " | 1200 | " (full) " |
1177 | "<item size=16x16 vsize=full href=emoticon/happy-panting></item>" | 1201 | "<item size=16x16 vsize=full href=emoticon/happy-panting></item>" |
1178 | " (before this)<br>" | 1202 | " (before this)<br/>" |
1179 | 1203 | ||
1180 | "And as well (absize + ascent): " | 1204 | "And as well (absize + ascent): " |
1181 | "<item absize=64x64 vsize=ascent href=emoticon/knowing-grin></item>" | 1205 | "<item absize=64x64 vsize=ascent href=emoticon/knowing-grin></item>" |
@@ -1214,6 +1238,13 @@ START_TEST(evas_textblock_wrapping) | |||
1214 | evas_object_textblock_size_formatted_get(tb, &w, &h); | 1238 | evas_object_textblock_size_formatted_get(tb, &w, &h); |
1215 | fail_if((w > (nw / 2)) || (h != nh)); | 1239 | fail_if((w > (nw / 2)) || (h != nh)); |
1216 | 1240 | ||
1241 | evas_object_textblock_text_markup_set(tb, "aaaaaaaaaaaaaaaaaa<br/>b"); | ||
1242 | evas_textblock_cursor_format_prepend(cur, "+ ellipsis=1.0 wrap=word"); | ||
1243 | evas_object_textblock_size_native_get(tb, &nw, &nh); | ||
1244 | evas_object_resize(tb, nw / 2, nh * 2); | ||
1245 | evas_object_textblock_size_formatted_get(tb, &w, &h); | ||
1246 | fail_if(w > (nw / 2)); | ||
1247 | |||
1217 | END_TB_TEST(); | 1248 | END_TB_TEST(); |
1218 | } | 1249 | } |
1219 | END_TEST | 1250 | END_TEST |
@@ -1223,7 +1254,7 @@ START_TEST(evas_textblock_various) | |||
1223 | { | 1254 | { |
1224 | Evas_Coord w, h, bw, bh; | 1255 | Evas_Coord w, h, bw, bh; |
1225 | START_TB_TEST(); | 1256 | START_TB_TEST(); |
1226 | const char *buf = "This<ps>textblock<ps>has<ps>a<ps>lot<ps>of<ps>lines<ps>."; | 1257 | const char *buf = "This<ps/>textblock<ps/>has<ps/>a<ps/>lot<ps/>of<ps/>lines<ps/>."; |
1227 | evas_object_textblock_text_markup_set(tb, buf); | 1258 | evas_object_textblock_text_markup_set(tb, buf); |
1228 | evas_object_textblock_size_formatted_get(tb, &w, &h); | 1259 | evas_object_textblock_size_formatted_get(tb, &w, &h); |
1229 | /* Move outside of the screen so it'll have to search for the correct | 1260 | /* Move outside of the screen so it'll have to search for the correct |
@@ -1241,15 +1272,15 @@ START_TEST(evas_textblock_various) | |||
1241 | /* Items have correct text node information */ | 1272 | /* Items have correct text node information */ |
1242 | evas_object_textblock_text_markup_set(tb, ""); | 1273 | evas_object_textblock_text_markup_set(tb, ""); |
1243 | fail_if(!_evas_textblock_check_item_node_link(tb)); | 1274 | fail_if(!_evas_textblock_check_item_node_link(tb)); |
1244 | evas_object_textblock_text_markup_set(tb, "<ps>"); | 1275 | evas_object_textblock_text_markup_set(tb, "<ps/>"); |
1245 | fail_if(!_evas_textblock_check_item_node_link(tb)); | 1276 | fail_if(!_evas_textblock_check_item_node_link(tb)); |
1246 | evas_object_textblock_text_markup_set(tb, "a<ps>"); | 1277 | evas_object_textblock_text_markup_set(tb, "a<ps/>"); |
1247 | fail_if(!_evas_textblock_check_item_node_link(tb)); | 1278 | fail_if(!_evas_textblock_check_item_node_link(tb)); |
1248 | evas_object_textblock_text_markup_set(tb, "a<ps>a"); | 1279 | evas_object_textblock_text_markup_set(tb, "a<ps/>a"); |
1249 | fail_if(!_evas_textblock_check_item_node_link(tb)); | 1280 | fail_if(!_evas_textblock_check_item_node_link(tb)); |
1250 | evas_object_textblock_text_markup_set(tb, "a<ps>a<ps>"); | 1281 | evas_object_textblock_text_markup_set(tb, "a<ps/>a<ps/>"); |
1251 | fail_if(!_evas_textblock_check_item_node_link(tb)); | 1282 | fail_if(!_evas_textblock_check_item_node_link(tb)); |
1252 | evas_object_textblock_text_markup_set(tb, "a<ps>a<ps>a"); | 1283 | evas_object_textblock_text_markup_set(tb, "a<ps/>a<ps/>a"); |
1253 | fail_if(!_evas_textblock_check_item_node_link(tb)); | 1284 | fail_if(!_evas_textblock_check_item_node_link(tb)); |
1254 | 1285 | ||
1255 | END_TB_TEST(); | 1286 | END_TB_TEST(); |
@@ -1260,7 +1291,7 @@ END_TEST | |||
1260 | START_TEST(evas_textblock_geometries) | 1291 | START_TEST(evas_textblock_geometries) |
1261 | { | 1292 | { |
1262 | START_TB_TEST(); | 1293 | START_TB_TEST(); |
1263 | const char *buf = "This is a <br> test."; | 1294 | const char *buf = "This is a <br/> test."; |
1264 | evas_object_textblock_text_markup_set(tb, buf); | 1295 | evas_object_textblock_text_markup_set(tb, buf); |
1265 | 1296 | ||
1266 | /* Single line range */ | 1297 | /* Single line range */ |
@@ -1327,7 +1358,7 @@ END_TEST | |||
1327 | START_TEST(evas_textblock_editing) | 1358 | START_TEST(evas_textblock_editing) |
1328 | { | 1359 | { |
1329 | START_TB_TEST(); | 1360 | START_TB_TEST(); |
1330 | const char *buf = "First par.<ps>Second par."; | 1361 | const char *buf = "First par.<ps/>Second par."; |
1331 | evas_object_textblock_text_markup_set(tb, buf); | 1362 | evas_object_textblock_text_markup_set(tb, buf); |
1332 | Evas_Textblock_Cursor *main_cur = evas_object_textblock_cursor_get(tb); | 1363 | Evas_Textblock_Cursor *main_cur = evas_object_textblock_cursor_get(tb); |
1333 | 1364 | ||
@@ -1346,7 +1377,7 @@ START_TEST(evas_textblock_editing) | |||
1346 | evas_textblock_cursor_paragraph_first(cur); | 1377 | evas_textblock_cursor_paragraph_first(cur); |
1347 | evas_textblock_cursor_char_delete(cur); | 1378 | evas_textblock_cursor_char_delete(cur); |
1348 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), | 1379 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), |
1349 | "irst par.<ps>Second par.")); | 1380 | "irst par.<ps/>Second par.")); |
1350 | 1381 | ||
1351 | /* Delete some arbitrary char */ | 1382 | /* Delete some arbitrary char */ |
1352 | evas_textblock_cursor_char_next(cur); | 1383 | evas_textblock_cursor_char_next(cur); |
@@ -1354,14 +1385,14 @@ START_TEST(evas_textblock_editing) | |||
1354 | evas_textblock_cursor_char_next(cur); | 1385 | evas_textblock_cursor_char_next(cur); |
1355 | evas_textblock_cursor_char_delete(cur); | 1386 | evas_textblock_cursor_char_delete(cur); |
1356 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), | 1387 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), |
1357 | "irs par.<ps>Second par.")); | 1388 | "irs par.<ps/>Second par.")); |
1358 | 1389 | ||
1359 | /* Delete a range */ | 1390 | /* Delete a range */ |
1360 | evas_textblock_cursor_pos_set(main_cur, 1); | 1391 | evas_textblock_cursor_pos_set(main_cur, 1); |
1361 | evas_textblock_cursor_pos_set(cur, 6); | 1392 | evas_textblock_cursor_pos_set(cur, 6); |
1362 | evas_textblock_cursor_range_delete(cur, main_cur); | 1393 | evas_textblock_cursor_range_delete(cur, main_cur); |
1363 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), | 1394 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), |
1364 | "ir.<ps>Second par.")); | 1395 | "ir.<ps/>Second par.")); |
1365 | evas_textblock_cursor_paragraph_char_first(main_cur); | 1396 | evas_textblock_cursor_paragraph_char_first(main_cur); |
1366 | evas_textblock_cursor_paragraph_char_last(cur); | 1397 | evas_textblock_cursor_paragraph_char_last(cur); |
1367 | evas_textblock_cursor_char_next(cur); | 1398 | evas_textblock_cursor_char_next(cur); |
@@ -1376,7 +1407,7 @@ START_TEST(evas_textblock_editing) | |||
1376 | evas_textblock_cursor_paragraph_char_first(main_cur); | 1407 | evas_textblock_cursor_paragraph_char_first(main_cur); |
1377 | evas_textblock_cursor_range_delete(cur, main_cur); | 1408 | evas_textblock_cursor_range_delete(cur, main_cur); |
1378 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), | 1409 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), |
1379 | "First par.<ps>")); | 1410 | "First par.<ps/>")); |
1380 | 1411 | ||
1381 | /* Merging paragraphs */ | 1412 | /* Merging paragraphs */ |
1382 | evas_object_textblock_text_markup_set(tb, buf); | 1413 | evas_object_textblock_text_markup_set(tb, buf); |
@@ -1406,6 +1437,27 @@ START_TEST(evas_textblock_editing) | |||
1406 | evas_textblock_cursor_paragraph_first(cur); | 1437 | evas_textblock_cursor_paragraph_first(cur); |
1407 | fail_if(evas_textblock_cursor_paragraph_next(cur)); | 1438 | fail_if(evas_textblock_cursor_paragraph_next(cur)); |
1408 | 1439 | ||
1440 | /* Insert illegal characters inside the format. */ | ||
1441 | { | ||
1442 | const char *content; | ||
1443 | evas_object_textblock_text_markup_set(tb, "a\n"); | ||
1444 | evas_textblock_cursor_pos_set(cur, 1); | ||
1445 | content = evas_textblock_cursor_content_get(cur); | ||
1446 | |||
1447 | evas_object_textblock_text_markup_set(tb, "a\t"); | ||
1448 | evas_textblock_cursor_pos_set(cur, 1); | ||
1449 | content = evas_textblock_cursor_content_get(cur); | ||
1450 | |||
1451 | evas_object_textblock_text_markup_set(tb, "a\xEF\xBF\xBC"); | ||
1452 | evas_textblock_cursor_pos_set(cur, 1); | ||
1453 | content = evas_textblock_cursor_content_get(cur); | ||
1454 | |||
1455 | evas_object_textblock_text_markup_set(tb, "a\xE2\x80\xA9"); | ||
1456 | evas_textblock_cursor_pos_set(cur, 1); | ||
1457 | content = evas_textblock_cursor_content_get(cur); | ||
1458 | (void) content; | ||
1459 | } | ||
1460 | |||
1409 | /* FIXME: Also add text appending/prepending */ | 1461 | /* FIXME: Also add text appending/prepending */ |
1410 | 1462 | ||
1411 | END_TB_TEST(); | 1463 | END_TB_TEST(); |
@@ -1416,13 +1468,13 @@ END_TEST | |||
1416 | START_TEST(evas_textblock_text_getters) | 1468 | START_TEST(evas_textblock_text_getters) |
1417 | { | 1469 | { |
1418 | START_TB_TEST(); | 1470 | START_TB_TEST(); |
1419 | const char *buf = "This is a <br> test.<ps>" | 1471 | const char *buf = "This is a <br/> test.<ps/>" |
1420 | "טקסט בעברית<ps>and now in english."; | 1472 | "טקסט בעברית<ps/>and now in english."; |
1421 | evas_object_textblock_text_markup_set(tb, buf); | 1473 | evas_object_textblock_text_markup_set(tb, buf); |
1422 | evas_textblock_cursor_paragraph_first(cur); | 1474 | evas_textblock_cursor_paragraph_first(cur); |
1423 | 1475 | ||
1424 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), | 1476 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), |
1425 | "This is a <br> test.")); | 1477 | "This is a <br/> test.")); |
1426 | 1478 | ||
1427 | evas_textblock_cursor_paragraph_next(cur); | 1479 | evas_textblock_cursor_paragraph_next(cur); |
1428 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), | 1480 | fail_if(strcmp(evas_textblock_cursor_paragraph_text_get(cur), |
@@ -1447,17 +1499,17 @@ START_TEST(evas_textblock_text_getters) | |||
1447 | evas_textblock_cursor_pos_set(main_cur, 5); | 1499 | evas_textblock_cursor_pos_set(main_cur, 5); |
1448 | evas_textblock_cursor_pos_set(cur, 14); | 1500 | evas_textblock_cursor_pos_set(cur, 14); |
1449 | fail_if(strcmp(evas_textblock_cursor_range_text_get(main_cur, cur, | 1501 | fail_if(strcmp(evas_textblock_cursor_range_text_get(main_cur, cur, |
1450 | EVAS_TEXTBLOCK_TEXT_MARKUP), "is a <br> te")); | 1502 | EVAS_TEXTBLOCK_TEXT_MARKUP), "is a <br/> te")); |
1451 | 1503 | ||
1452 | evas_textblock_cursor_pos_set(main_cur, 14); | 1504 | evas_textblock_cursor_pos_set(main_cur, 14); |
1453 | evas_textblock_cursor_pos_set(cur, 20); | 1505 | evas_textblock_cursor_pos_set(cur, 20); |
1454 | fail_if(strcmp(evas_textblock_cursor_range_text_get(main_cur, cur, | 1506 | fail_if(strcmp(evas_textblock_cursor_range_text_get(main_cur, cur, |
1455 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps>טק")); | 1507 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps/>טק")); |
1456 | 1508 | ||
1457 | evas_textblock_cursor_pos_set(main_cur, 14); | 1509 | evas_textblock_cursor_pos_set(main_cur, 14); |
1458 | evas_textblock_cursor_pos_set(cur, 32); | 1510 | evas_textblock_cursor_pos_set(cur, 32); |
1459 | fail_if(strcmp(evas_textblock_cursor_range_text_get(main_cur, cur, | 1511 | fail_if(strcmp(evas_textblock_cursor_range_text_get(main_cur, cur, |
1460 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps>טקסט בעברית<ps>an")); | 1512 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps/>טקסט בעברית<ps/>an")); |
1461 | 1513 | ||
1462 | /* Backward range get */ | 1514 | /* Backward range get */ |
1463 | evas_textblock_cursor_pos_set(main_cur, 2); | 1515 | evas_textblock_cursor_pos_set(main_cur, 2); |
@@ -1473,17 +1525,17 @@ START_TEST(evas_textblock_text_getters) | |||
1473 | evas_textblock_cursor_pos_set(main_cur, 5); | 1525 | evas_textblock_cursor_pos_set(main_cur, 5); |
1474 | evas_textblock_cursor_pos_set(cur, 14); | 1526 | evas_textblock_cursor_pos_set(cur, 14); |
1475 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, | 1527 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, |
1476 | EVAS_TEXTBLOCK_TEXT_MARKUP), "is a <br> te")); | 1528 | EVAS_TEXTBLOCK_TEXT_MARKUP), "is a <br/> te")); |
1477 | 1529 | ||
1478 | evas_textblock_cursor_pos_set(main_cur, 14); | 1530 | evas_textblock_cursor_pos_set(main_cur, 14); |
1479 | evas_textblock_cursor_pos_set(cur, 20); | 1531 | evas_textblock_cursor_pos_set(cur, 20); |
1480 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, | 1532 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, |
1481 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps>טק")); | 1533 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps/>טק")); |
1482 | 1534 | ||
1483 | evas_textblock_cursor_pos_set(main_cur, 14); | 1535 | evas_textblock_cursor_pos_set(main_cur, 14); |
1484 | evas_textblock_cursor_pos_set(cur, 32); | 1536 | evas_textblock_cursor_pos_set(cur, 32); |
1485 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, | 1537 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, |
1486 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps>טקסט בעברית<ps>an")); | 1538 | EVAS_TEXTBLOCK_TEXT_MARKUP), "st.<ps/>טקסט בעברית<ps/>an")); |
1487 | 1539 | ||
1488 | /* Uninit cursors and other weird cases */ | 1540 | /* Uninit cursors and other weird cases */ |
1489 | evas_object_textblock_clear(tb); | 1541 | evas_object_textblock_clear(tb); |
@@ -1492,6 +1544,97 @@ START_TEST(evas_textblock_text_getters) | |||
1492 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, | 1544 | fail_if(strcmp(evas_textblock_cursor_range_text_get(cur, main_cur, |
1493 | EVAS_TEXTBLOCK_TEXT_MARKUP), "aaa")); | 1545 | EVAS_TEXTBLOCK_TEXT_MARKUP), "aaa")); |
1494 | 1546 | ||
1547 | /* Markup to plain and vice versa */ | ||
1548 | { | ||
1549 | char *tmp, *tmp2; | ||
1550 | |||
1551 | /* Real textblock object */ | ||
1552 | tmp = evas_textblock_text_markup_to_utf8(tb, "<br/>aa<\n/>bb<\t/>"); | ||
1553 | fail_if(strcmp(tmp, "\naa\nbb\t")); | ||
1554 | tmp2 = evas_textblock_text_utf8_to_markup(tb, tmp); | ||
1555 | fail_if(strcmp(tmp2, "<br/>aa<br/>bb<tab/>")); | ||
1556 | free(tmp2); | ||
1557 | free(tmp); | ||
1558 | |||
1559 | tmp = evas_textblock_text_markup_to_utf8(tb, "a<item></item>"); | ||
1560 | fail_if(strcmp(tmp, "a\xEF\xBF\xBC")); | ||
1561 | tmp2 = evas_textblock_text_utf8_to_markup(tb, tmp); | ||
1562 | fail_if(strcmp(tmp2, "a")); | ||
1563 | free(tmp2); | ||
1564 | free(tmp); | ||
1565 | |||
1566 | tmp = evas_textblock_text_markup_to_utf8(tb, "a "); | ||
1567 | fail_if(strcmp(tmp, "a\xC2\xA0")); | ||
1568 | tmp2 = evas_textblock_text_utf8_to_markup(tb, tmp); | ||
1569 | fail_if(strcmp(tmp2, "a\xC2\xA0")); | ||
1570 | free(tmp2); | ||
1571 | free(tmp); | ||
1572 | |||
1573 | tmp = evas_textblock_text_markup_to_utf8(tb, "a<b>b</b><more></>a"); | ||
1574 | fail_if(strcmp(tmp, "aba")); | ||
1575 | tmp2 = evas_textblock_text_utf8_to_markup(tb, tmp); | ||
1576 | fail_if(strcmp(tmp2, "aba")); | ||
1577 | free(tmp2); | ||
1578 | free(tmp); | ||
1579 | |||
1580 | tmp = evas_textblock_text_markup_to_utf8(tb, "a&a"); | ||
1581 | fail_if(strcmp(tmp, "a&a")); | ||
1582 | tmp2 = evas_textblock_text_utf8_to_markup(tb, tmp); | ||
1583 | fail_if(strcmp(tmp2, "a&a")); | ||
1584 | free(tmp2); | ||
1585 | free(tmp); | ||
1586 | |||
1587 | tmp = evas_textblock_text_markup_to_utf8(tb, "a<newline/>a"); | ||
1588 | fail_if(strcmp(tmp, "a\na")); | ||
1589 | tmp2 = evas_textblock_text_utf8_to_markup(tb, tmp); | ||
1590 | fail_if(strcmp(tmp2, "a<br/>a")); | ||
1591 | free(tmp2); | ||
1592 | free(tmp); | ||
1593 | |||
1594 | /* NULL textblock object */ | ||
1595 | tmp = evas_textblock_text_markup_to_utf8(NULL, "<br/>aa<\n/>bb<\t/>"); | ||
1596 | fail_if(strcmp(tmp, "\naa\nbb\t")); | ||
1597 | tmp2 = evas_textblock_text_utf8_to_markup(NULL, tmp); | ||
1598 | fail_if(strcmp(tmp2, "<br/>aa<br/>bb<tab/>")); | ||
1599 | free(tmp2); | ||
1600 | free(tmp); | ||
1601 | |||
1602 | tmp = evas_textblock_text_markup_to_utf8(NULL, "a<item></item>"); | ||
1603 | fail_if(strcmp(tmp, "a\xEF\xBF\xBC")); | ||
1604 | tmp2 = evas_textblock_text_utf8_to_markup(NULL, tmp); | ||
1605 | fail_if(strcmp(tmp2, "a")); | ||
1606 | free(tmp2); | ||
1607 | free(tmp); | ||
1608 | |||
1609 | tmp = evas_textblock_text_markup_to_utf8(NULL, "a "); | ||
1610 | fail_if(strcmp(tmp, "a\xC2\xA0")); | ||
1611 | tmp2 = evas_textblock_text_utf8_to_markup(NULL, tmp); | ||
1612 | fail_if(strcmp(tmp2, "a\xC2\xA0")); | ||
1613 | free(tmp2); | ||
1614 | free(tmp); | ||
1615 | |||
1616 | tmp = evas_textblock_text_markup_to_utf8(NULL, "a<b>b</b><more></>a"); | ||
1617 | fail_if(strcmp(tmp, "aba")); | ||
1618 | tmp2 = evas_textblock_text_utf8_to_markup(NULL, tmp); | ||
1619 | fail_if(strcmp(tmp2, "aba")); | ||
1620 | free(tmp2); | ||
1621 | free(tmp); | ||
1622 | |||
1623 | tmp = evas_textblock_text_markup_to_utf8(tb, "a&a"); | ||
1624 | fail_if(strcmp(tmp, "a&a")); | ||
1625 | tmp2 = evas_textblock_text_utf8_to_markup(tb, tmp); | ||
1626 | fail_if(strcmp(tmp2, "a&a")); | ||
1627 | free(tmp2); | ||
1628 | free(tmp); | ||
1629 | |||
1630 | tmp = evas_textblock_text_markup_to_utf8(NULL, "a<newline/>a"); | ||
1631 | fail_if(strcmp(tmp, "aa")); | ||
1632 | tmp2 = evas_textblock_text_utf8_to_markup(NULL, tmp); | ||
1633 | fail_if(strcmp(tmp2, "aa")); | ||
1634 | free(tmp2); | ||
1635 | free(tmp); | ||
1636 | } | ||
1637 | |||
1495 | END_TB_TEST(); | 1638 | END_TB_TEST(); |
1496 | } | 1639 | } |
1497 | END_TEST | 1640 | END_TEST |
@@ -1500,7 +1643,7 @@ END_TEST | |||
1500 | START_TEST(evas_textblock_formats) | 1643 | START_TEST(evas_textblock_formats) |
1501 | { | 1644 | { |
1502 | START_TB_TEST(); | 1645 | START_TB_TEST(); |
1503 | const char *buf = "Th<b>i<font_size=15 wrap=none>s i</font_size=13>s</> a <br> te<ps>st<item></>."; | 1646 | const char *buf = "Th<b>i<font_size=15 wrap=none>s i</font_size=13>s</> a <br/> te<ps/>st<item></>."; |
1504 | const Evas_Object_Textblock_Node_Format *fnode; | 1647 | const Evas_Object_Textblock_Node_Format *fnode; |
1505 | evas_object_textblock_text_markup_set(tb, buf); | 1648 | evas_object_textblock_text_markup_set(tb, buf); |
1506 | 1649 | ||
@@ -1652,25 +1795,25 @@ START_TEST(evas_textblock_formats) | |||
1652 | * verify them visually, well, we can some of them. Possibly in the | 1795 | * verify them visually, well, we can some of them. Possibly in the |
1653 | * future we will */ | 1796 | * future we will */ |
1654 | evas_object_textblock_text_markup_set(tb, | 1797 | evas_object_textblock_text_markup_set(tb, |
1655 | "<font_size=40>font_size=40</><ps>" | 1798 | "<font_size=40>font_size=40</><ps/>" |
1656 | "<color=#F210B3FF>color=#F210B3FF</><ps>" | 1799 | "<color=#F210B3FF>color=#F210B3FF</><ps/>" |
1657 | "<underline=single underline_color=#A2B3C4>underline=single underline_color=#A2B3C4</><ps>" | 1800 | "<underline=single underline_color=#A2B3C4>underline=single underline_color=#A2B3C4</><ps/>" |
1658 | "<underline=double underline_color=#F00 underline2_color=#00F>underline=double underline_color=#F00 underline2_color=#00F</><ps>" | 1801 | "<underline=double underline_color=#F00 underline2_color=#00F>underline=double underline_color=#F00 underline2_color=#00F</><ps/>" |
1659 | "<underline=dashed underline_dash_color=#0F0 underline_dash_width=2 underline_dash_gap=1>underline=dashed underline_dash_color=#0F0 underline_dash_width=2 underline_dash_gap=1</><ps>" | 1802 | "<underline=dashed underline_dash_color=#0F0 underline_dash_width=2 underline_dash_gap=1>underline=dashed underline_dash_color=#0F0 underline_dash_width=2 underline_dash_gap=1</><ps/>" |
1660 | "<style=outline outline_color=#F0FA>style=outline outline_color=#F0FA</><ps>" | 1803 | "<style=outline outline_color=#F0FA>style=outline outline_color=#F0FA</><ps/>" |
1661 | "<style=shadow shadow_color=#F0F>style=shadow shadow_color=#F0F</><ps>" | 1804 | "<style=shadow shadow_color=#F0F>style=shadow shadow_color=#F0F</><ps/>" |
1662 | "<style=glow glow_color=#BBB>style=glow glow_color=#BBB</><ps>" | 1805 | "<style=glow glow_color=#BBB>style=glow glow_color=#BBB</><ps/>" |
1663 | "<style=glow glow2_color=#0F0>style=glow glow2_color=#0F0</><ps>" | 1806 | "<style=glow glow2_color=#0F0>style=glow glow2_color=#0F0</><ps/>" |
1664 | "<style=glow color=#fff glow2_color=#fe87 glow_color=#f214>style=glow color=#fff glow2_color=#fe87 glow_color=#f214</><ps>" | 1807 | "<style=glow color=#fff glow2_color=#fe87 glow_color=#f214>style=glow color=#fff glow2_color=#fe87 glow_color=#f214</><ps/>" |
1665 | "<backing=on backing_color=#00F>backing=on backing_color=#00F</><ps>" | 1808 | "<backing=on backing_color=#00F>backing=on backing_color=#00F</><ps/>" |
1666 | "<strikethrough=on strikethrough_color=#FF0>strikethrough=on strikethrough_color=#FF0</><ps>" | 1809 | "<strikethrough=on strikethrough_color=#FF0>strikethrough=on strikethrough_color=#FF0</><ps/>" |
1667 | "<align=right>align=right</><ps>" | 1810 | "<align=right>align=right</><ps/>" |
1668 | "<backing=on backing_color=#F008 valign=0.0>valign=0.0</><ps>" | 1811 | "<backing=on backing_color=#F008 valign=0.0>valign=0.0</><ps/>" |
1669 | "<backing=on backing_color=#0F08 tabstops=50>tabstops=<\\t></>50</><ps>" | 1812 | "<backing=on backing_color=#0F08 tabstops=50>tabstops=<\\t></>50</><ps/>" |
1670 | "<backing=on backing_color=#00F8 linesize=40>linesize=40</><ps>" | 1813 | "<backing=on backing_color=#00F8 linesize=40>linesize=40</><ps/>" |
1671 | "<backing=on backing_color=#F0F8 linerelsize=200%>linerelsize=200%</><ps>" | 1814 | "<backing=on backing_color=#F0F8 linerelsize=200%>linerelsize=200%</><ps/>" |
1672 | "<backing=on backing_color=#0FF8 linegap=20>linegap=20</><ps>" | 1815 | "<backing=on backing_color=#0FF8 linegap=20>linegap=20</><ps/>" |
1673 | "<backing=on backing_color=#FF08 linerelgap=100%>linerelgap=100%</><ps>"); | 1816 | "<backing=on backing_color=#FF08 linerelgap=100%>linerelgap=100%</><ps/>"); |
1674 | 1817 | ||
1675 | /* Force a relayout */ | 1818 | /* Force a relayout */ |
1676 | evas_object_textblock_size_formatted_get(tb, NULL, NULL); | 1819 | evas_object_textblock_size_formatted_get(tb, NULL, NULL); |
@@ -1714,22 +1857,22 @@ START_TEST(evas_textblock_formats) | |||
1714 | } | 1857 | } |
1715 | 1858 | ||
1716 | /* Make sure we get all the types of visible formats correctly. */ | 1859 | /* Make sure we get all the types of visible formats correctly. */ |
1717 | evas_object_textblock_text_markup_set(tb, "<ps>a<br>a<tab>a<item></>"); | 1860 | evas_object_textblock_text_markup_set(tb, "<ps/>a<br/>a<tab/>a<item></>"); |
1718 | fail_if(strcmp(evas_textblock_node_format_text_get( | 1861 | fail_if(strcmp(evas_textblock_node_format_text_get( |
1719 | evas_textblock_cursor_format_get(cur)), "ps")); | 1862 | evas_textblock_cursor_format_get(cur)), "ps")); |
1720 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<ps>")); | 1863 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<ps/>")); |
1721 | fail_if(!evas_textblock_cursor_format_is_visible_get(cur)); | 1864 | fail_if(!evas_textblock_cursor_format_is_visible_get(cur)); |
1722 | fail_if(!evas_textblock_cursor_char_next(cur)); | 1865 | fail_if(!evas_textblock_cursor_char_next(cur)); |
1723 | fail_if(!evas_textblock_cursor_char_next(cur)); | 1866 | fail_if(!evas_textblock_cursor_char_next(cur)); |
1724 | fail_if(strcmp(evas_textblock_node_format_text_get( | 1867 | fail_if(strcmp(evas_textblock_node_format_text_get( |
1725 | evas_textblock_cursor_format_get(cur)), "br")); | 1868 | evas_textblock_cursor_format_get(cur)), "br")); |
1726 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<br>")); | 1869 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<br/>")); |
1727 | fail_if(!evas_textblock_cursor_format_is_visible_get(cur)); | 1870 | fail_if(!evas_textblock_cursor_format_is_visible_get(cur)); |
1728 | fail_if(!evas_textblock_cursor_char_next(cur)); | 1871 | fail_if(!evas_textblock_cursor_char_next(cur)); |
1729 | fail_if(!evas_textblock_cursor_char_next(cur)); | 1872 | fail_if(!evas_textblock_cursor_char_next(cur)); |
1730 | fail_if(strcmp(evas_textblock_node_format_text_get( | 1873 | fail_if(strcmp(evas_textblock_node_format_text_get( |
1731 | evas_textblock_cursor_format_get(cur)), "tab")); | 1874 | evas_textblock_cursor_format_get(cur)), "tab")); |
1732 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<tab>")); | 1875 | fail_if(strcmp(evas_textblock_cursor_content_get(cur), "<tab/>")); |
1733 | fail_if(!evas_textblock_cursor_format_is_visible_get(cur)); | 1876 | fail_if(!evas_textblock_cursor_format_is_visible_get(cur)); |
1734 | fail_if(!evas_textblock_cursor_char_next(cur)); | 1877 | fail_if(!evas_textblock_cursor_char_next(cur)); |
1735 | fail_if(!evas_textblock_cursor_char_next(cur)); | 1878 | fail_if(!evas_textblock_cursor_char_next(cur)); |
@@ -1749,7 +1892,7 @@ START_TEST(evas_textblock_style) | |||
1749 | Evas_Coord l, r, t, b; | 1892 | Evas_Coord l, r, t, b; |
1750 | START_TB_TEST(); | 1893 | START_TB_TEST(); |
1751 | Evas_Textblock_Style *newst; | 1894 | Evas_Textblock_Style *newst; |
1752 | const char *buf = "Test<ps>Test2<ps>נסיון"; | 1895 | const char *buf = "Test<ps/>Test2<ps/>נסיון"; |
1753 | evas_object_textblock_text_markup_set(tb, buf); | 1896 | evas_object_textblock_text_markup_set(tb, buf); |
1754 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), buf)); | 1897 | fail_if(strcmp(evas_object_textblock_text_markup_get(tb), buf)); |
1755 | 1898 | ||
@@ -1850,7 +1993,7 @@ START_TEST(evas_textblock_set_get) | |||
1850 | fail_if(strcmp(evas_object_textblock_bidi_delimiters_get(tb), ",|")); | 1993 | fail_if(strcmp(evas_object_textblock_bidi_delimiters_get(tb), ",|")); |
1851 | 1994 | ||
1852 | /* Hinting */ | 1995 | /* Hinting */ |
1853 | evas_object_textblock_text_markup_set(tb, "This is<ps>a test<br>bla"); | 1996 | evas_object_textblock_text_markup_set(tb, "This is<ps/>a test<br/>bla"); |
1854 | /* Force relayout */ | 1997 | /* Force relayout */ |
1855 | evas_object_textblock_size_formatted_get(tb, NULL, NULL); | 1998 | evas_object_textblock_size_formatted_get(tb, NULL, NULL); |
1856 | evas_font_hinting_set(evas, EVAS_FONT_HINTING_NONE); | 1999 | evas_font_hinting_set(evas, EVAS_FONT_HINTING_NONE); |
@@ -1923,7 +2066,7 @@ START_TEST(evas_textblock_size) | |||
1923 | { | 2066 | { |
1924 | START_TB_TEST(); | 2067 | START_TB_TEST(); |
1925 | Evas_Coord w, h, h2, nw, nh; | 2068 | Evas_Coord w, h, h2, nw, nh; |
1926 | const char *buf = "This is a <br> test.<br>גם בעברית"; | 2069 | const char *buf = "This is a <br/> test.<br/>גם בעברית"; |
1927 | /* When wrapping is off, native size should be the same as formatted | 2070 | /* When wrapping is off, native size should be the same as formatted |
1928 | * size */ | 2071 | * size */ |
1929 | 2072 | ||
@@ -1932,7 +2075,7 @@ START_TEST(evas_textblock_size) | |||
1932 | fail_if((w != nw) || (h != nh)); | 2075 | fail_if((w != nw) || (h != nh)); |
1933 | fail_if(w != 0); | 2076 | fail_if(w != 0); |
1934 | 2077 | ||
1935 | evas_object_textblock_text_markup_set(tb, "a<br>a"); | 2078 | evas_object_textblock_text_markup_set(tb, "a<br/>a"); |
1936 | evas_object_textblock_size_formatted_get(tb, &w, &h2); | 2079 | evas_object_textblock_size_formatted_get(tb, &w, &h2); |
1937 | evas_object_textblock_size_native_get(tb, &nw, &nh); | 2080 | evas_object_textblock_size_native_get(tb, &nw, &nh); |
1938 | fail_if((w != nw) || (h2 != nh)); | 2081 | fail_if((w != nw) || (h2 != nh)); |