summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml4
-rw-r--r--README9
-rw-r--r--data/elementary/themes/edc/border.edc44
-rw-r--r--data/elementary/themes/edc/elm/progress.edc1
-rw-r--r--data/evas/evas.xml13
-rw-r--r--data/evas/meson.build4
-rw-r--r--data/meson.build3
-rw-r--r--header_checks/meson.build1
-rw-r--r--meson_options.txt4
-rw-r--r--src/benchmarks/eo/class_simple.c8
-rw-r--r--src/benchmarks/eo/class_simple.h8
-rw-r--r--src/bin/elementary/config.c18
-rw-r--r--src/bin/elementary/test_genlist.c21
-rw-r--r--src/bin/eolian/headers.c12
-rw-r--r--src/bin/eolian/main.c11
-rw-r--r--src/bin/eolian/sources.c10
-rw-r--r--src/bin/eolian/types.c8
-rw-r--r--src/bindings/mono/efl_mono/efl_libs.cs.in2
-rw-r--r--src/bindings/mono/efl_mono/meson.build5
-rw-r--r--src/bindings/mono/eina_mono/eina_error.cs18
-rw-r--r--src/bindings/mono/eo_mono/NativeModule_Unix.cs16
-rw-r--r--src/generic/evas/common/timeout.c11
-rw-r--r--src/generic/evas/common/timeout.h1
-rw-r--r--src/generic/evas/pdf/main.cpp79
-rw-r--r--src/lib/ecore/ecore.c63
-rw-r--r--src/lib/ecore/ecore_main.c2
-rw-r--r--src/lib/ecore/efl_core_proc_env.c2
-rw-r--r--src/lib/ecore/efl_loop.c6
-rw-r--r--src/lib/ecore_audio/Ecore_Audio.h43
-rw-r--r--src/lib/ecore_audio/ecore_audio.c8
-rw-r--r--src/lib/ecore_audio/meson.build3
-rw-r--r--src/lib/ecore_con/Ecore_Con.h261
-rw-r--r--src/lib/ecore_con/Ecore_Con_Eet.h71
-rw-r--r--src/lib/ecore_con/Efl_Net.h139
-rw-r--r--src/lib/ecore_con/ecore_con.c6
-rw-r--r--src/lib/ecore_con/ecore_con_api.h32
-rw-r--r--src/lib/ecore_con/ecore_con_eet.c42
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.c18
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.h20
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.legacy.c2
-rw-r--r--src/lib/ecore_con/ecore_con_eet_base_eo.legacy.h2
-rw-r--r--src/lib/ecore_con/ecore_con_eet_client_obj_eo.h2
-rw-r--r--src/lib/ecore_con/ecore_con_eet_server_obj_eo.h2
-rw-r--r--src/lib/ecore_con/ecore_con_legacy.c108
-rw-r--r--src/lib/ecore_con/ecore_con_local.c2
-rw-r--r--src/lib/ecore_con/ecore_con_local_win32.c2
-rw-r--r--src/lib/ecore_con/ecore_con_socks.c28
-rw-r--r--src/lib/ecore_con/ecore_con_url.c82
-rw-r--r--src/lib/ecore_con/ecore_con_url_curl.c102
-rw-r--r--src/lib/ecore_con/meson.build7
-rw-r--r--src/lib/ecore_evas/ecore_evas.c13
-rw-r--r--src/lib/ecore_file/ecore_file_monitor_kevent.c290
-rw-r--r--src/lib/ecore_file/meson.build2
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_display.c16
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_private.h25
-rw-r--r--src/lib/ecore_wl2/ecore_wl2_window.c69
-rw-r--r--src/lib/ecore_x/Ecore_X.h1
-rw-r--r--src/lib/ecore_x/ecore_x_resource.c4
-rw-r--r--src/lib/ecore_x/ecore_x_vsync.c61
-rw-r--r--src/lib/ector/Ector.h34
-rw-r--r--src/lib/ector/ector_api.h32
-rw-r--r--src/lib/ector/ector_main.c6
-rw-r--r--src/lib/ector/gl/Ector_GL.h29
-rw-r--r--src/lib/ector/gl/meson.build1
-rw-r--r--src/lib/ector/meson.build4
-rw-r--r--src/lib/ector/software/Ector_Software.h29
-rw-r--r--src/lib/ector/software/meson.build1
-rw-r--r--src/lib/edje/edje_data.c2
-rw-r--r--src/lib/edje/edje_entry.c2
-rw-r--r--src/lib/edje/edje_util.c1
-rw-r--r--src/lib/eet/eet_cipher.c15
-rw-r--r--src/lib/eeze/eeze_disk.c9
-rw-r--r--src/lib/eeze/eeze_net.c6
-rw-r--r--src/lib/eeze/eeze_udev_syspath.c15
-rw-r--r--src/lib/eeze/eeze_udev_walk.c9
-rw-r--r--src/lib/efreet/efreet_base.c47
-rw-r--r--src/lib/efreet/efreet_uri.c70
-rw-r--r--src/lib/efreet/meson.build5
-rw-r--r--src/lib/eina/Eina.h2
-rw-r--r--src/lib/eina/eina_abi.c4
-rw-r--r--src/lib/eina/eina_abstract_content.c22
-rw-r--r--src/lib/eina/eina_abstract_content.h26
-rw-r--r--src/lib/eina/eina_accessor.c18
-rw-r--r--src/lib/eina/eina_accessor.h18
-rw-r--r--src/lib/eina/eina_array.c16
-rw-r--r--src/lib/eina/eina_array.h14
-rw-r--r--src/lib/eina/eina_benchmark.c8
-rw-r--r--src/lib/eina/eina_benchmark.h8
-rw-r--r--src/lib/eina/eina_bezier.c18
-rw-r--r--src/lib/eina/eina_bezier.h18
-rw-r--r--src/lib/eina/eina_binbuf.c2
-rw-r--r--src/lib/eina/eina_binbuf.h46
-rw-r--r--src/lib/eina/eina_binbuf_template_c.x44
-rw-r--r--src/lib/eina/eina_binshare.c14
-rw-r--r--src/lib/eina/eina_binshare.h10
-rw-r--r--src/lib/eina/eina_convert.c20
-rw-r--r--src/lib/eina/eina_convert.h20
-rw-r--r--src/lib/eina/eina_counter.c10
-rw-r--r--src/lib/eina/eina_counter.h10
-rw-r--r--src/lib/eina/eina_cow.c16
-rw-r--r--src/lib/eina/eina_cow.h16
-rw-r--r--src/lib/eina/eina_cpu.c8
-rw-r--r--src/lib/eina/eina_cpu.h8
-rw-r--r--src/lib/eina/eina_crc.c2
-rw-r--r--src/lib/eina/eina_debug.c24
-rw-r--r--src/lib/eina/eina_debug.h28
-rw-r--r--src/lib/eina/eina_debug_timer.c4
-rw-r--r--src/lib/eina/eina_error.c16
-rw-r--r--src/lib/eina/eina_error.h16
-rw-r--r--src/lib/eina/eina_evlog.c8
-rw-r--r--src/lib/eina/eina_evlog.h8
-rw-r--r--src/lib/eina/eina_file.h68
-rw-r--r--src/lib/eina/eina_file_common.c30
-rw-r--r--src/lib/eina/eina_file_posix.c38
-rw-r--r--src/lib/eina/eina_file_win32.c36
-rw-r--r--src/lib/eina/eina_fp.c4
-rw-r--r--src/lib/eina/eina_fp.h4
-rw-r--r--src/lib/eina/eina_freeq.c24
-rw-r--r--src/lib/eina/eina_freeq.h24
-rw-r--r--src/lib/eina/eina_hamster.c2
-rw-r--r--src/lib/eina/eina_hamster.h2
-rw-r--r--src/lib/eina/eina_hash.c74
-rw-r--r--src/lib/eina/eina_hash.h74
-rw-r--r--src/lib/eina/eina_inarray.c52
-rw-r--r--src/lib/eina/eina_inarray.h52
-rw-r--r--src/lib/eina/eina_inline_array.x2
-rw-r--r--src/lib/eina/eina_inline_crc.x2
-rw-r--r--src/lib/eina/eina_inline_hash.x2
-rw-r--r--src/lib/eina/eina_inline_lock_posix.x52
-rw-r--r--src/lib/eina/eina_inline_safepointer.x4
-rw-r--r--src/lib/eina/eina_inline_unicode.x2
-rw-r--r--src/lib/eina/eina_inline_value.x10
-rw-r--r--src/lib/eina/eina_inlist.c34
-rw-r--r--src/lib/eina/eina_inlist.h34
-rw-r--r--src/lib/eina/eina_internal.h45
-rw-r--r--src/lib/eina/eina_iterator.c22
-rw-r--r--src/lib/eina/eina_iterator.h22
-rw-r--r--src/lib/eina/eina_lalloc.c8
-rw-r--r--src/lib/eina/eina_lalloc.h8
-rw-r--r--src/lib/eina/eina_list.c70
-rw-r--r--src/lib/eina/eina_list.h70
-rw-r--r--src/lib/eina/eina_lock.c36
-rw-r--r--src/lib/eina/eina_lock.h4
-rw-r--r--src/lib/eina/eina_log.c64
-rw-r--r--src/lib/eina/eina_log.h64
-rw-r--r--src/lib/eina/eina_magic.c10
-rw-r--r--src/lib/eina/eina_magic.h10
-rw-r--r--src/lib/eina/eina_main.c30
-rw-r--r--src/lib/eina/eina_main.h16
-rw-r--r--src/lib/eina/eina_matrix.c120
-rw-r--r--src/lib/eina/eina_matrix.h120
-rw-r--r--src/lib/eina/eina_matrixsparse.c36
-rw-r--r--src/lib/eina/eina_matrixsparse.h36
-rw-r--r--src/lib/eina/eina_mempool.c16
-rw-r--r--src/lib/eina/eina_mempool.h16
-rw-r--r--src/lib/eina/eina_mmap.c4
-rw-r--r--src/lib/eina/eina_mmap.h4
-rw-r--r--src/lib/eina/eina_module.c34
-rw-r--r--src/lib/eina/eina_module.h34
-rw-r--r--src/lib/eina/eina_prefix.c14
-rw-r--r--src/lib/eina/eina_prefix.h14
-rw-r--r--src/lib/eina/eina_promise.c56
-rw-r--r--src/lib/eina/eina_promise.h50
-rw-r--r--src/lib/eina/eina_quad.c8
-rw-r--r--src/lib/eina/eina_quad.h8
-rw-r--r--src/lib/eina/eina_quadtree.c24
-rw-r--r--src/lib/eina/eina_quadtree.h24
-rw-r--r--src/lib/eina/eina_quaternion.c84
-rw-r--r--src/lib/eina/eina_quaternion.h82
-rw-r--r--src/lib/eina/eina_rbtree.c12
-rw-r--r--src/lib/eina/eina_rbtree.h12
-rw-r--r--src/lib/eina/eina_rectangle.c26
-rw-r--r--src/lib/eina/eina_rectangle.h26
-rw-r--r--src/lib/eina/eina_safepointer.c8
-rw-r--r--src/lib/eina/eina_safepointer.h4
-rw-r--r--src/lib/eina/eina_safety_checks.c4
-rw-r--r--src/lib/eina/eina_safety_checks.h4
-rw-r--r--src/lib/eina/eina_sched.c2
-rw-r--r--src/lib/eina/eina_sched.h2
-rw-r--r--src/lib/eina/eina_simple_xml_parser.c46
-rw-r--r--src/lib/eina/eina_simple_xml_parser.h46
-rw-r--r--src/lib/eina/eina_slstr.c22
-rw-r--r--src/lib/eina/eina_slstr.h16
-rw-r--r--src/lib/eina/eina_str.c34
-rw-r--r--src/lib/eina/eina_str.h30
-rw-r--r--src/lib/eina/eina_strbuf.c22
-rw-r--r--src/lib/eina/eina_strbuf.h82
-rw-r--r--src/lib/eina/eina_strbuf_common.c6
-rw-r--r--src/lib/eina/eina_strbuf_template_c.x14
-rw-r--r--src/lib/eina/eina_stringshare.c18
-rw-r--r--src/lib/eina/eina_stringshare.h18
-rw-r--r--src/lib/eina/eina_thread.c20
-rw-r--r--src/lib/eina/eina_thread.h20
-rw-r--r--src/lib/eina/eina_thread_queue.c24
-rw-r--r--src/lib/eina/eina_thread_queue.h24
-rw-r--r--src/lib/eina/eina_tiler.c32
-rw-r--r--src/lib/eina/eina_tiler.h32
-rw-r--r--src/lib/eina/eina_tmpstr.c14
-rw-r--r--src/lib/eina/eina_tmpstr.h14
-rw-r--r--src/lib/eina/eina_types.h36
-rw-r--r--src/lib/eina/eina_unicode.c32
-rw-r--r--src/lib/eina/eina_unicode.h32
-rw-r--r--src/lib/eina/eina_ustrbuf.h50
-rw-r--r--src/lib/eina/eina_ustringshare.c12
-rw-r--r--src/lib/eina/eina_ustringshare.h12
-rw-r--r--src/lib/eina/eina_util.c4
-rw-r--r--src/lib/eina/eina_util.h4
-rw-r--r--src/lib/eina/eina_value.c146
-rw-r--r--src/lib/eina/eina_value.h96
-rw-r--r--src/lib/eina/eina_value_util.c4
-rw-r--r--src/lib/eina/eina_value_util.h4
-rw-r--r--src/lib/eina/eina_vpath.c8
-rw-r--r--src/lib/eina/eina_vpath.h4
-rw-r--r--src/lib/eina/eina_xattr.c36
-rw-r--r--src/lib/eina/eina_xattr.h36
-rw-r--r--src/lib/eina/meson.build2
-rw-r--r--src/lib/eio/Eio.h38
-rw-r--r--src/lib/eio/Eio_Legacy.h130
-rw-r--r--src/lib/eio/eio_dir.c10
-rw-r--r--src/lib/eio/eio_eet.c20
-rw-r--r--src/lib/eio/eio_file.c22
-rw-r--r--src/lib/eio/eio_main.c10
-rw-r--r--src/lib/eio/eio_map.c8
-rw-r--r--src/lib/eio/eio_monitor.c34
-rw-r--r--src/lib/eio/eio_monitor_poll.c4
-rw-r--r--src/lib/eio/eio_single.c12
-rw-r--r--src/lib/eio/eio_xattr.c18
-rw-r--r--src/lib/eio/meson.build3
-rw-r--r--src/lib/eldbus/eldbus_introspection.c1
-rw-r--r--src/lib/elementary/efl_ui_format.c22
-rw-r--r--src/lib/elementary/efl_ui_textpath.c10
-rw-r--r--src/lib/elementary/elc_fileselector.c2
-rw-r--r--src/lib/elementary/elc_fileselector_button.c2
-rw-r--r--src/lib/elementary/elc_fileselector_entry.c2
-rw-r--r--src/lib/elementary/elm_genlist.c2
-rw-r--r--src/lib/elementary/elm_gesture_layer.c2
-rw-r--r--src/lib/elementary/elm_glview.c3
-rw-r--r--src/lib/elementary/elm_interface_fileselector.c2
-rw-r--r--src/lib/elementary/elm_priv.h2
-rw-r--r--src/lib/elementary/elm_slider.c13
-rw-r--r--src/lib/elementary/elm_transit.c6
-rw-r--r--src/lib/emile/emile_cipher_openssl.c8
-rw-r--r--src/lib/emotion/Emotion.h193
-rw-r--r--src/lib/emotion/efl_canvas_video.eo8
-rw-r--r--src/lib/emotion/efl_canvas_video_eo.legacy.c4
-rw-r--r--src/lib/emotion/efl_canvas_video_eo.legacy.h4
-rw-r--r--src/lib/emotion/emotion_api.h32
-rw-r--r--src/lib/emotion/emotion_main.c18
-rw-r--r--src/lib/emotion/emotion_modules.c4
-rw-r--r--src/lib/emotion/emotion_modules.h89
-rw-r--r--src/lib/emotion/emotion_smart.c178
-rw-r--r--src/lib/emotion/emotion_webcam.c14
-rw-r--r--src/lib/emotion/meson.build4
-rw-r--r--src/lib/eo/Eo.h209
-rw-r--r--src/lib/eo/eo.c120
-rw-r--r--src/lib/eo/eo_add_fallback.c2
-rw-r--r--src/lib/eo/eo_base_class.c60
-rw-r--r--src/lib/eo/eo_internal.h37
-rw-r--r--src/lib/eo/meson.build6
-rw-r--r--src/lib/eolian/Eolian.h399
-rw-r--r--src/lib/eolian/Eolian_Aux.h41
-rw-r--r--src/lib/eolian/database_class_api.c38
-rw-r--r--src/lib/eolian/database_constructor_api.c6
-rw-r--r--src/lib/eolian/database_event_api.c16
-rw-r--r--src/lib/eolian/database_expr_api.c24
-rw-r--r--src/lib/eolian/database_function_api.c36
-rw-r--r--src/lib/eolian/database_function_parameter_api.c16
-rw-r--r--src/lib/eolian/database_implement_api.c18
-rw-r--r--src/lib/eolian/database_part_api.c4
-rw-r--r--src/lib/eolian/database_type_api.c66
-rw-r--r--src/lib/eolian/database_var_api.c8
-rw-r--r--src/lib/eolian/eo_parser.h3
-rw-r--r--src/lib/eolian/eolian.c6
-rw-r--r--src/lib/eolian/eolian_api.h34
-rw-r--r--src/lib/eolian/eolian_aux.c12
-rw-r--r--src/lib/eolian/eolian_database.c132
-rw-r--r--src/lib/eolian/eolian_priv.h1
-rw-r--r--src/lib/eolian/meson.build3
-rw-r--r--src/lib/ethumb_client/ethumb_client.c11
-rw-r--r--src/lib/evas/Efl_Canvas.h27
-rw-r--r--src/lib/evas/Evas.h29
-rw-r--r--src/lib/evas/Evas_Common.h150
-rw-r--r--src/lib/evas/Evas_GL.h73
-rw-r--r--src/lib/evas/Evas_Internal.h127
-rw-r--r--src/lib/evas/Evas_Legacy.h826
-rw-r--r--src/lib/evas/Evas_Loader.h35
-rw-r--r--src/lib/evas/cache/evas_cache.h112
-rw-r--r--src/lib/evas/cache/evas_cache_engine_image.c36
-rw-r--r--src/lib/evas/cache/evas_cache_image.c64
-rw-r--r--src/lib/evas/canvas/efl_canvas_event_grabber.c2
-rw-r--r--src/lib/evas/canvas/efl_canvas_event_grabber_eo.legacy.c4
-rw-r--r--src/lib/evas/canvas/efl_canvas_event_grabber_eo.legacy.h4
-rw-r--r--src/lib/evas/canvas/efl_canvas_group_eo.legacy.c10
-rw-r--r--src/lib/evas/canvas/efl_canvas_group_eo.legacy.h10
-rw-r--r--src/lib/evas/canvas/efl_canvas_object_eo.legacy.c38
-rw-r--r--src/lib/evas/canvas/efl_canvas_object_eo.legacy.h40
-rw-r--r--src/lib/evas/canvas/efl_canvas_textblock_eo.legacy.c22
-rw-r--r--src/lib/evas/canvas/efl_canvas_textblock_eo.legacy.h22
-rw-r--r--src/lib/evas/canvas/efl_canvas_textblock_internal.h37
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container.c2
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container_eo.legacy.c4
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_container_eo.legacy.h4
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient.c8
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient_linear.c10
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_gradient_radial.c14
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node.c20
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node_eo.legacy.c10
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_node_eo.legacy.h10
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object.c18
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.c12
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_object_eo.legacy.h16
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape.c72
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape_eo.legacy.c12
-rw-r--r--src/lib/evas/canvas/efl_canvas_vg_shape_eo.legacy.h12
-rw-r--r--src/lib/evas/canvas/efl_gfx_vg_value_provider.c14
-rw-r--r--src/lib/evas/canvas/efl_input_device.c14
-rw-r--r--src/lib/evas/canvas/efl_input_event.c2
-rw-r--r--src/lib/evas/canvas/efl_input_focus.c2
-rw-r--r--src/lib/evas/canvas/efl_input_hold.c2
-rw-r--r--src/lib/evas/canvas/efl_input_key.c2
-rw-r--r--src/lib/evas/canvas/efl_input_pointer.c4
-rw-r--r--src/lib/evas/canvas/efl_text_cursor_object.c4
-rw-r--r--src/lib/evas/canvas/evas_async_events.c12
-rw-r--r--src/lib/evas/canvas/evas_box_eo.c82
-rw-r--r--src/lib/evas/canvas/evas_box_eo.h102
-rw-r--r--src/lib/evas/canvas/evas_box_eo.legacy.c54
-rw-r--r--src/lib/evas/canvas/evas_box_eo.legacy.h54
-rw-r--r--src/lib/evas/canvas/evas_callbacks.c22
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.c134
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.h136
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.legacy.c128
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.legacy.h130
-rw-r--r--src/lib/evas/canvas/evas_clip.c6
-rw-r--r--src/lib/evas/canvas/evas_data.c6
-rw-r--r--src/lib/evas/canvas/evas_device.c44
-rw-r--r--src/lib/evas/canvas/evas_events.c54
-rw-r--r--src/lib/evas/canvas/evas_font_dir.c10
-rw-r--r--src/lib/evas/canvas/evas_gl.c44
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.c20
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.h22
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.legacy.c20
-rw-r--r--src/lib/evas/canvas/evas_grid_eo.legacy.h20
-rw-r--r--src/lib/evas/canvas/evas_image_eo.h2
-rw-r--r--src/lib/evas/canvas/evas_image_legacy.c172
-rw-r--r--src/lib/evas/canvas/evas_key.c14
-rw-r--r--src/lib/evas/canvas/evas_key_grab.c4
-rw-r--r--src/lib/evas/canvas/evas_layer.c4
-rw-r--r--src/lib/evas/canvas/evas_line_eo.c4
-rw-r--r--src/lib/evas/canvas/evas_line_eo.h6
-rw-r--r--src/lib/evas/canvas/evas_line_eo.legacy.c4
-rw-r--r--src/lib/evas/canvas/evas_line_eo.legacy.h4
-rw-r--r--src/lib/evas/canvas/evas_main.c124
-rw-r--r--src/lib/evas/canvas/evas_map.c64
-rw-r--r--src/lib/evas/canvas/evas_name.c6
-rw-r--r--src/lib/evas/canvas/evas_object_box.c16
-rw-r--r--src/lib/evas/canvas/evas_object_grid.c6
-rw-r--r--src/lib/evas/canvas/evas_object_inform.c8
-rw-r--r--src/lib/evas/canvas/evas_object_intercept.c6
-rw-r--r--src/lib/evas/canvas/evas_object_line.c2
-rw-r--r--src/lib/evas/canvas/evas_object_main.c94
-rw-r--r--src/lib/evas/canvas/evas_object_polygon.c6
-rw-r--r--src/lib/evas/canvas/evas_object_rectangle.c2
-rw-r--r--src/lib/evas/canvas/evas_object_smart.c75
-rw-r--r--src/lib/evas/canvas/evas_object_smart_clipped.c6
-rw-r--r--src/lib/evas/canvas/evas_object_table.c6
-rw-r--r--src/lib/evas/canvas/evas_object_text.c24
-rw-r--r--src/lib/evas/canvas/evas_object_textblock.c210
-rw-r--r--src/lib/evas/canvas/evas_object_textgrid.c10
-rw-r--r--src/lib/evas/canvas/evas_out.c16
-rw-r--r--src/lib/evas/canvas/evas_render.c6
-rw-r--r--src/lib/evas/canvas/evas_smart.c16
-rw-r--r--src/lib/evas/canvas/evas_stack.x12
-rw-r--r--src/lib/evas/canvas/evas_stats.c16
-rw-r--r--src/lib/evas/canvas/evas_table_eo.c34
-rw-r--r--src/lib/evas/canvas/evas_table_eo.h36
-rw-r--r--src/lib/evas/canvas/evas_table_eo.legacy.c32
-rw-r--r--src/lib/evas/canvas/evas_table_eo.legacy.h32
-rw-r--r--src/lib/evas/canvas/evas_text_eo.c52
-rw-r--r--src/lib/evas/canvas/evas_text_eo.h54
-rw-r--r--src/lib/evas/canvas/evas_text_eo.legacy.c52
-rw-r--r--src/lib/evas/canvas/evas_text_eo.legacy.h52
-rw-r--r--src/lib/evas/canvas/evas_textblock_legacy.h186
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.c20
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.h22
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.legacy.c20
-rw-r--r--src/lib/evas/canvas/evas_textgrid_eo.legacy.h20
-rw-r--r--src/lib/evas/canvas/evas_touch_point.c8
-rw-r--r--src/lib/evas/canvas/meson.build3
-rw-r--r--src/lib/evas/common/evas_blend.h2
-rw-r--r--src/lib/evas/common/evas_blend_main.c2
-rw-r--r--src/lib/evas/common/evas_blit_main.c4
-rw-r--r--src/lib/evas/common/evas_common_generic_cache.c12
-rw-r--r--src/lib/evas/common/evas_convert_color.c20
-rw-r--r--src/lib/evas/common/evas_convert_color.h20
-rw-r--r--src/lib/evas/common/evas_convert_colorspace.c15
-rw-r--r--src/lib/evas/common/evas_convert_colorspace.h12
-rw-r--r--src/lib/evas/common/evas_convert_main.c4
-rw-r--r--src/lib/evas/common/evas_convert_main.h4
-rw-r--r--src/lib/evas/common/evas_convert_yuv.h10
-rw-r--r--src/lib/evas/common/evas_cpu.c8
-rw-r--r--src/lib/evas/common/evas_draw.h48
-rw-r--r--src/lib/evas/common/evas_draw_main.c52
-rw-r--r--src/lib/evas/common/evas_font.h159
-rw-r--r--src/lib/evas/common/evas_font_compress.c4
-rw-r--r--src/lib/evas/common/evas_font_draw.c16
-rw-r--r--src/lib/evas/common/evas_font_draw.h16
-rw-r--r--src/lib/evas/common/evas_font_load.c62
-rw-r--r--src/lib/evas/common/evas_font_main.c40
-rw-r--r--src/lib/evas/common/evas_font_ot.c4
-rw-r--r--src/lib/evas/common/evas_font_ot.h5
-rw-r--r--src/lib/evas/common/evas_font_private.h2
-rw-r--r--src/lib/evas/common/evas_font_query.c22
-rw-r--r--src/lib/evas/common/evas_image.h86
-rw-r--r--src/lib/evas/common/evas_image_load.c15
-rw-r--r--src/lib/evas/common/evas_image_main.c54
-rw-r--r--src/lib/evas/common/evas_image_scalecache.c16
-rw-r--r--src/lib/evas/common/evas_line.h12
-rw-r--r--src/lib/evas/common/evas_line_main.c12
-rw-r--r--src/lib/evas/common/evas_map_image.c14
-rw-r--r--src/lib/evas/common/evas_map_image.h14
-rw-r--r--src/lib/evas/common/evas_op_blend/op_blend_master_sse3.c4
-rw-r--r--src/lib/evas/common/evas_pipe.c24
-rw-r--r--src/lib/evas/common/evas_pipe.h24
-rw-r--r--src/lib/evas/common/evas_polygon.h10
-rw-r--r--src/lib/evas/common/evas_polygon_main.c10
-rw-r--r--src/lib/evas/common/evas_rectangle.h12
-rw-r--r--src/lib/evas/common/evas_rectangle_main.c12
-rw-r--r--src/lib/evas/common/evas_scale_main.c6
-rw-r--r--src/lib/evas/common/evas_scale_main.h24
-rw-r--r--src/lib/evas/common/evas_scale_sample.c10
-rw-r--r--src/lib/evas/common/evas_scale_smooth.c6
-rw-r--r--src/lib/evas/common/evas_scale_smooth.h4
-rw-r--r--src/lib/evas/common/evas_scale_span.c12
-rw-r--r--src/lib/evas/common/evas_scale_span.h12
-rw-r--r--src/lib/evas/common/evas_text_utils.c12
-rw-r--r--src/lib/evas/common/evas_text_utils.h12
-rw-r--r--src/lib/evas/common/evas_thread_render.c6
-rw-r--r--src/lib/evas/common/evas_tiler.c48
-rw-r--r--src/lib/evas/common/language/evas_bidi_utils.c2
-rw-r--r--src/lib/evas/common/language/evas_bidi_utils.h2
-rw-r--r--src/lib/evas/evas_api.h32
-rw-r--r--src/lib/evas/file/evas_module.c16
-rw-r--r--src/lib/evas/filters/evas_filter_parser.c12
-rw-r--r--src/lib/evas/gesture/meson.build2
-rw-r--r--src/lib/evas/include/evas_common_private.h95
-rw-r--r--src/lib/evas/include/evas_filter.h41
-rw-r--r--src/lib/evas/include/evas_private.h58
-rw-r--r--src/lib/evas/include/meson.build1
-rw-r--r--src/lib/evas/main.c4
-rw-r--r--src/lib/evas/meson.build12
-rw-r--r--src/lib/evas/software_generic/meson.build1
-rw-r--r--src/lib/evil/evil_fcntl.c2
-rw-r--r--src/lib/evil/evil_mman.c4
-rw-r--r--src/lib/evil/evil_stdlib.h7
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c48
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_common.h2
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_context.c3
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_image.c15
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_shader.c12
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_texture.c7
-rw-r--r--src/modules/evas/engines/gl_common/shader/evas_gl_shaders.x55
-rw-r--r--src/modules/evas/engines/gl_common/shader/fragment.glsl57
-rwxr-xr-xsrc/modules/evas/engines/gl_common/shader/gen_shaders.sh2
-rw-r--r--src/modules/evas/engines/gl_generic/evas_engine.c4
-rw-r--r--src/modules/evas/engines/gl_x11/evas_engine.c2
-rw-r--r--src/modules/evas/image_loaders/avif/evas_image_load_avif.c14
-rw-r--r--src/modules/evas/image_loaders/heif/evas_image_load_heif.c300
-rw-r--r--src/modules/evas/image_loaders/png/evas_image_load_png.c14
-rw-r--r--src/modules/evas/image_loaders/tga/evas_image_load_tga.c20
-rw-r--r--src/modules/evas/image_loaders/webp/evas_image_load_webp.c1
-rw-r--r--src/tests/eina/eina_test_abi.c3
-rw-r--r--src/tests/eina/eina_test_file.c4
-rw-r--r--src/tests/eina/eina_test_module_dummy.c2
-rw-r--r--src/tests/eio/eio_test_manager.c2
-rw-r--r--src/tests/eldbus/eldbus_fake_server.c18
-rw-r--r--src/tests/elementary/efl_ui_test_text.c6
-rw-r--r--src/tests/eo/access/access_inherit.c2
-rw-r--r--src/tests/eo/access/access_inherit.h2
-rw-r--r--src/tests/eo/access/access_simple.c4
-rw-r--r--src/tests/eo/access/access_simple.h2
-rw-r--r--src/tests/eo/composite_objects/composite_objects_simple.c134
-rw-r--r--src/tests/eo/composite_objects/composite_objects_simple.h132
-rw-r--r--src/tests/eo/constructors/constructors_mixin.c2
-rw-r--r--src/tests/eo/constructors/constructors_mixin.h2
-rw-r--r--src/tests/eo/constructors/constructors_simple.h8
-rw-r--r--src/tests/eo/function_overrides/function_overrides_inherit2.c4
-rw-r--r--src/tests/eo/function_overrides/function_overrides_inherit2.h4
-rw-r--r--src/tests/eo/function_overrides/function_overrides_simple.c8
-rw-r--r--src/tests/eo/function_overrides/function_overrides_simple.h8
-rw-r--r--src/tests/eo/interface/interface_interface.h2
-rw-r--r--src/tests/eo/interface/interface_interface2.h2
-rw-r--r--src/tests/eo/interface/interface_simple.h8
-rw-r--r--src/tests/eo/mixin/mixin_mixin.c2
-rw-r--r--src/tests/eo/mixin/mixin_mixin.h2
-rw-r--r--src/tests/eo/mixin/mixin_simple.h8
-rw-r--r--src/tests/eo/signals/signals_simple.c6
-rw-r--r--src/tests/eo/signals/signals_simple.h2
-rw-r--r--src/tests/eo/suite/eo_test_call_errors.c2
-rw-r--r--src/tests/eo/suite/eo_test_class_simple.c4
-rw-r--r--src/tests/eo/suite/eo_test_class_simple.h16
-rw-r--r--src/tests/eo/suite/eo_test_domain.c2
-rw-r--r--src/tests/eo/suite/eo_test_domain.h6
-rw-r--r--src/tests/eo/suite/eo_test_event.c14
-rw-r--r--src/tests/eo/suite/eo_test_general.c2
-rw-r--r--src/tests/eo/suite/eo_test_reflection_complex_class_structure.c8
-rw-r--r--src/tests/eo/suite/eo_test_reflection_complex_class_structure.h14
-rw-r--r--src/tests/eolian/data/class_simple_ref.c6
-rw-r--r--src/tests/eolian/data/class_simple_ref_eo.h8
-rw-r--r--src/tests/eolian/data/docs_ref.h14
-rw-r--r--src/tests/eolian/data/function_as_argument_ref.c4
-rw-r--r--src/tests/eolian/data/function_as_argument_ref.h6
-rw-r--r--src/tests/eolian/data/override_ref.c16
-rw-r--r--src/tests/eolian/data/owning_ref.c4
-rw-r--r--src/tests/eolian/data/struct_ref.h6
-rw-r--r--src/tests/eolian/data/typedef_ref.h4
-rw-r--r--src/tests/eolian/eolian_generated_future.c3
-rw-r--r--src/tests/eolian/meson.build3
-rw-r--r--src/tests/eolian_cxx/a.c3
-rw-r--r--src/tests/eolian_cxx/b.c3
-rw-r--r--src/tests/eolian_cxx/c.c3
-rw-r--r--src/tests/eolian_cxx/complex.c3
-rw-r--r--src/tests/eolian_cxx/complex_cxx.cc3
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_address_of.cc3
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_binding.cc3
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_cyclic.cc3
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_inheritance.cc3
-rw-r--r--src/tests/eolian_cxx/eolian_cxx_test_wrapper.cc3
-rw-r--r--src/tests/eolian_cxx/generic.c3
-rw-r--r--src/tests/eolian_cxx/meson.build1
-rw-r--r--src/tests/eolian_cxx/name1_name2_type_generation.c3
-rw-r--r--src/tests/eolian_cxx/name_name.c3
-rw-r--r--src/tests/eolian_cxx/name_name_cxx.cc3
-rw-r--r--src/tests/eolian_cxx/simple.c3
-rw-r--r--src/tests/evas/evas_test_image.c5
-rw-r--r--src/tests/evas/evas_test_textblock.c26
-rw-r--r--src/wayland_protocol/meson.build4
-rw-r--r--src/wayland_protocol/teamwork.xml39
-rw-r--r--src/wayland_protocol/www.xml28
538 files changed, 7857 insertions, 7226 deletions
diff --git a/.travis.yml b/.travis.yml
index da9cd21705..a66ea7a47e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -46,7 +46,6 @@ env:
46 46
47jobs: 47jobs:
48 include: 48 include:
49 - os: osx
50 - os: linux 49 - os: linux
51 env: DISTRO=Fedora32-mingw CI_BUILD_TYPE=mingw 50 env: DISTRO=Fedora32-mingw CI_BUILD_TYPE=mingw
52 - os: linux 51 - os: linux
@@ -77,9 +76,6 @@ jobs:
77 env: DISTRO=Fedora32 CI_BUILD_TYPE=asan 76 env: DISTRO=Fedora32 CI_BUILD_TYPE=asan
78 - os: linux 77 - os: linux
79 if: type = cron 78 if: type = cron
80 env: DISTRO=Fedora32-exactness CI_BUILD_TYPE=exactness
81 - os: linux
82 if: type = cron
83 env: CI_BUILD_TYPE=codecov 79 env: CI_BUILD_TYPE=codecov
84 - os: linux 80 - os: linux
85 if: type = cron 81 if: type = cron
diff --git a/README b/README
index ec3b27a737..03085056d3 100644
--- a/README
+++ b/README
@@ -404,6 +404,15 @@ This library acts as a porting library for Windows to provide missing
404libc calls not in Mingw32 that EFL needs. 404libc calls not in Mingw32 that EFL needs.
405 405
406 406
407**Heif:**
408
409//LGPL v3 license//
410
411The license doesnt affect efl or apps using efl, but gpl3 or lgpl3
412affects the entire os requiring any gpl/lgpl3 component be
413user-replacable.
414The end user must be able to modify the libheif code and still be
415able to use the efl.
407 416
408 417
409COMPILING AND INSTALLING 418COMPILING AND INSTALLING
diff --git a/data/elementary/themes/edc/border.edc b/data/elementary/themes/edc/border.edc
index dc15cbe08f..02c484f978 100644
--- a/data/elementary/themes/edc/border.edc
+++ b/data/elementary/themes/edc/border.edc
@@ -132,19 +132,6 @@ group { name: "e/widgets/border/default/border";
132 images.image: "screen_circular_shadow.png" COMP; 132 images.image: "screen_circular_shadow.png" COMP;
133 images.image: "win_shadow.png" COMP; 133 images.image: "win_shadow.png" COMP;
134 data.item: "shadow" "1"; 134 data.item: "shadow" "1";
135 script {
136 public message(Msg_Type:type, id, ...) {
137 new text[128];
138 new ncpu, cpu, mem;
139 if ((type == MSG_INT_SET) && (id == 1)) {
140 ncpu = getarg(2);
141 cpu = getarg(3) / ncpu;
142 mem = getarg(4);
143 snprintf(text, 128, "%i%% %i.%iM", cpu, mem / 1024, (mem % 1024) / 100)
144 set_text(PART:"e.procstats.text", text);
145 }
146 }
147 }
148 parts { 135 parts {
149 part { name: "shadow_clip"; type: RECT; mouse_events: 0; 136 part { name: "shadow_clip"; type: RECT; mouse_events: 0;
150 description { state: "default"; 137 description { state: "default";
@@ -683,29 +670,27 @@ group { name: "e/widgets/border/default/border";
683 aspect: 1.0 1.0; aspect_preference: VERTICAL; 670 aspect: 1.0 1.0; aspect_preference: VERTICAL;
684 } 671 }
685 } 672 }
686 part { name: "e.procstats.text"; type: TEXT; 673 part { name: "e.procstats.swallow"; type: SWALLOW;
687 scale: 1.0; 674 scale: 1.0;
688 repeat_events: 1; 675 repeat_events: 1;
689 description { state: "default" 0.0; 676 description { state: "default" 0.0;
677 fixed: 1 0;
690 rel1.to: "procstats"; 678 rel1.to: "procstats";
691 rel1.relative: 2.0 0.0;
692 rel2.to: "procstats"; 679 rel2.to: "procstats";
693 rel2.relative: 2.0 1.0; 680 rel2.relative: 1.0 1.0;
694 rel2.offset: 0.0 -1; 681 rel2.offset: 0.0 -1;
695 visible: 1; 682 align: 0.0 0.5;
696 text { 683 aspect: 1.0 1.0; aspect_preference: VERTICAL;
697 size: 9; 684 visible: 0;
698 font: FNBD;
699 min: 1 1;
700 ellipsis: -1;
701 text_class: "menu_item";
702 align: 0.0 0.5;
703 }
704 } 685 }
705 description { state: "hidden"; 686 description { state: "hidden";
706 visible: 0; 687 visible: 0;
707 } 688 }
708 } 689 description { state: "visible";
690 inherit: "default" 0.0;
691 visible: 1;
692 }
693 }
709 } 694 }
710 programs { 695 programs {
711 program { 696 program {
@@ -842,14 +827,15 @@ group { name: "e/widgets/border/default/border";
842 } 827 }
843 program { 828 program {
844 signal: "e,state,procstats,on"; source: "e"; 829 signal: "e,state,procstats,on"; source: "e";
845 action: STATE_SET "default" 0.0; 830 action: STATE_SET "visible" 0.0;
846 target: "e.procstats.text"; 831 target: "e.procstats.swallow";
847 } 832 }
848 program { 833 program {
849 signal: "e,state,procstats,off"; source: "e"; 834 signal: "e,state,procstats,off"; source: "e";
850 action: STATE_SET "hidden" 0.0; 835 action: STATE_SET "hidden" 0.0;
851 target: "e.procstats.text"; 836 target: "e.procstats.swallow";
852 } 837 }
838
853// program { 839// program {
854// signal: "e,action,maximize"; source: "e"; 840// signal: "e,action,maximize"; source: "e";
855// } 841// }
diff --git a/data/elementary/themes/edc/elm/progress.edc b/data/elementary/themes/edc/elm/progress.edc
index 71291323c9..38443ace30 100644
--- a/data/elementary/themes/edc/elm/progress.edc
+++ b/data/elementary/themes/edc/elm/progress.edc
@@ -210,6 +210,7 @@ group { name: "elm/progressbar/horizontal/default";
210 part { name: "inside"; 210 part { name: "inside";
211 scale: 1; 211 scale: 1;
212 description { state: "default" 0.0; 212 description { state: "default" 0.0;
213 fixed: 1 1;
213 min: 4 4; 214 min: 4 4;
214 rel1.to: "ins0"; 215 rel1.to: "ins0";
215 rel1.relative: 1.0 (6/16); 216 rel1.relative: 1.0 (6/16);
diff --git a/data/evas/evas.xml b/data/evas/evas.xml
new file mode 100644
index 0000000000..7764c0c05e
--- /dev/null
+++ b/data/evas/evas.xml
@@ -0,0 +1,13 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info">
3>------<mime-type type="image/heif">
4>------>-------<comment>HEIF image file</comment>
5>------>-------<glob pattern="*.heif"/>
6>------>-------<glob pattern="*.heic"/>
7>------</mime-type>
8>------<mime-type type="image/avif">
9>------>-------<comment>AVIF image file</comment>
10>------>--------<glob pattern="*.avif"/>
11>------</mime-type>
12</mime-info>
13
diff --git a/data/evas/meson.build b/data/evas/meson.build
new file mode 100644
index 0000000000..ddcc57dcad
--- /dev/null
+++ b/data/evas/meson.build
@@ -0,0 +1,4 @@
1install_data(files('evas.xml'),
2 install_dir : join_paths(dir_data, 'mime', 'packages')
3)
4
diff --git a/data/meson.build b/data/meson.build
index 4e1f68d406..5944dad07c 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -1,4 +1,4 @@
1checkme_files = ['ecore', 'ecore_imf', 'ecore_x', 'eeze', 'efreet', 'elua', 'emotion', 'ethumb', 'ethumb_client', 'evas'] 1checkme_files = ['ecore', 'ecore_imf', 'ecore_x', 'eeze', 'efreet', 'elua', 'emotion', 'ethumb', 'ethumb_client']
2foreach checkme : checkme_files 2foreach checkme : checkme_files
3 install_data(join_paths(checkme, 'checkme'), 3 install_data(join_paths(checkme, 'checkme'),
4 install_dir : join_paths(dir_data, checkme) 4 install_dir : join_paths(dir_data, checkme)
@@ -10,3 +10,4 @@ subdir('edje')
10subdir('embryo') 10subdir('embryo')
11subdir(join_paths('ethumb', 'frames')) 11subdir(join_paths('ethumb', 'frames'))
12subdir('elementary') 12subdir('elementary')
13subdir('evas')
diff --git a/header_checks/meson.build b/header_checks/meson.build
index c71fdbf216..2f0205f28a 100644
--- a/header_checks/meson.build
+++ b/header_checks/meson.build
@@ -113,6 +113,7 @@ function_checks = [
113 ['dlopen', ['dlfcn.h'], ['dl']], 113 ['dlopen', ['dlfcn.h'], ['dl']],
114 ['dlsym', ['dlfcn.h'], ['dl']], 114 ['dlsym', ['dlfcn.h'], ['dl']],
115 ['lround', ['math.h'], ['m']], 115 ['lround', ['math.h'], ['m']],
116 ['mallinfo2', ['malloc.h'], ['malloc']],
116 ['mallinfo', ['malloc.h'], ['malloc']], 117 ['mallinfo', ['malloc.h'], ['malloc']],
117 ['shm_open', ['sys/mman.h', 'sys/stat.h', 'fcntl.h'], ['rt']], 118 ['shm_open', ['sys/mman.h', 'sys/stat.h', 'fcntl.h'], ['rt']],
118#from here on we specify arguments 119#from here on we specify arguments
diff --git a/meson_options.txt b/meson_options.txt
index f5ffb0e134..b224179366 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -189,8 +189,8 @@ option('unmount-path',
189option('evas-loaders-disabler', 189option('evas-loaders-disabler',
190 type : 'array', 190 type : 'array',
191 description : 'List of modular image/vector loaders to disable in efl', 191 description : 'List of modular image/vector loaders to disable in efl',
192 choices : ['', 'gst', 'pdf', 'ps', 'raw', 'svg', 'rsvg', 'xcf', 'bmp', 'dds', 'eet', 'generic', 'gif', 'ico', 'jp2k', 'jpeg', 'pmaps', 'png', 'psd', 'tga', 'tgv', 'tiff', 'wbmp', 'webp', 'xpm', 'json', 'avif'], 192 choices : ['', 'gst', 'pdf', 'ps', 'raw', 'svg', 'rsvg', 'xcf', 'bmp', 'dds', 'eet', 'generic', 'gif', 'ico', 'jp2k', 'jpeg', 'pmaps', 'png', 'psd', 'tga', 'tgv', 'tiff', 'wbmp', 'webp', 'xpm', 'json', 'avif', 'heif'],
193 value : ['json', 'avif'] 193 value : ['json', 'avif', 'heif']
194) 194)
195 195
196option('ecore-imf-loaders-disabler', 196option('ecore-imf-loaders-disabler',
diff --git a/src/benchmarks/eo/class_simple.c b/src/benchmarks/eo/class_simple.c
index 63378d6033..aa3cec94a5 100644
--- a/src/benchmarks/eo/class_simple.c
+++ b/src/benchmarks/eo/class_simple.c
@@ -7,8 +7,8 @@
7 7
8#define MY_CLASS SIMPLE_CLASS 8#define MY_CLASS SIMPLE_CLASS
9 9
10EOAPI const Efl_Event_Description _SIMPLE_FOO = EFL_EVENT_DESCRIPTION("foo"); 10const Efl_Event_Description _SIMPLE_FOO = EFL_EVENT_DESCRIPTION("foo");
11EOAPI const Efl_Event_Description _SIMPLE_BAR = EFL_EVENT_DESCRIPTION("bar"); 11const Efl_Event_Description _SIMPLE_BAR = EFL_EVENT_DESCRIPTION("bar");
12 12
13static void 13static void
14_other_call(Eo *obj EINA_UNUSED, void *class_data EINA_UNUSED, Eo *other, int times) 14_other_call(Eo *obj EINA_UNUSED, void *class_data EINA_UNUSED, Eo *other, int times)
@@ -19,7 +19,7 @@ _other_call(Eo *obj EINA_UNUSED, void *class_data EINA_UNUSED, Eo *other, int ti
19 } 19 }
20} 20}
21 21
22EAPI EFL_VOID_FUNC_BODYV(simple_other_call, EFL_FUNC_CALL(other, times), Eo *other, int times); 22EFL_VOID_FUNC_BODYV(simple_other_call, EFL_FUNC_CALL(other, times), Eo *other, int times);
23 23
24static void 24static void
25_a_set(Eo *obj EINA_UNUSED, void *class_data, int a) 25_a_set(Eo *obj EINA_UNUSED, void *class_data, int a)
@@ -28,7 +28,7 @@ _a_set(Eo *obj EINA_UNUSED, void *class_data, int a)
28 pd->a = a; 28 pd->a = a;
29} 29}
30 30
31EAPI EFL_VOID_FUNC_BODYV(simple_a_set, EFL_FUNC_CALL(a), int a); 31EFL_VOID_FUNC_BODYV(simple_a_set, EFL_FUNC_CALL(a), int a);
32 32
33static Eina_Bool 33static Eina_Bool
34_class_initializer(Efl_Class *klass) 34_class_initializer(Efl_Class *klass)
diff --git a/src/benchmarks/eo/class_simple.h b/src/benchmarks/eo/class_simple.h
index 8445116963..56c92c0aba 100644
--- a/src/benchmarks/eo/class_simple.h
+++ b/src/benchmarks/eo/class_simple.h
@@ -6,16 +6,16 @@ typedef struct
6 int a; 6 int a;
7} Simple_Public_Data; 7} Simple_Public_Data;
8 8
9EAPI void simple_a_set(Eo *self, int a); 9void simple_a_set(Eo *self, int a);
10/* Calls simple_other_call(other, obj) and then simple_other_call(obj, other) 10/* Calls simple_other_call(other, obj) and then simple_other_call(obj, other)
11 * for 'times' times in order to grow the call stack on other objects. */ 11 * for 'times' times in order to grow the call stack on other objects. */
12EAPI void simple_other_call(Eo*self, Eo *other, int times); 12void simple_other_call(Eo*self, Eo *other, int times);
13 13
14#define SIMPLE_CLASS simple_class_get() 14#define SIMPLE_CLASS simple_class_get()
15const Efl_Class *simple_class_get(void); 15const Efl_Class *simple_class_get(void);
16 16
17EOAPI extern const Efl_Event_Description _SIMPLE_FOO; 17extern const Efl_Event_Description _SIMPLE_FOO;
18EOAPI extern const Efl_Event_Description _SIMPLE_BAR; 18extern const Efl_Event_Description _SIMPLE_BAR;
19 19
20#define SIMPLE_FOO (&(_SIMPLE_FOO)) 20#define SIMPLE_FOO (&(_SIMPLE_FOO))
21#define SIMPLE_BAR (&(_SIMPLE_BAR)) 21#define SIMPLE_BAR (&(_SIMPLE_BAR))
diff --git a/src/bin/elementary/config.c b/src/bin/elementary/config.c
index ff05307700..1131437849 100644
--- a/src/bin/elementary/config.c
+++ b/src/bin/elementary/config.c
@@ -1591,7 +1591,9 @@ _icon_preview_icon_add(const char *icon, const char *theme)
1591 elm_box_pack_end(icon_preview_frame, ic); 1591 elm_box_pack_end(icon_preview_frame, ic);
1592 evas_object_show(ic); 1592 evas_object_show(ic);
1593 1593
1594 if (strcmp(theme, ELM_CONFIG_ICON_THEME_ELEMENTARY)) 1594 if (!strcmp(theme, ELM_CONFIG_ICON_THEME_ELEMENTARY))
1595 elm_icon_standard_set(ic, icon);
1596 else
1595 elm_image_file_set(ic, efreet_icon_path_find(theme, icon, 48), NULL); 1597 elm_image_file_set(ic, efreet_icon_path_find(theme, icon, 48), NULL);
1596} 1598}
1597 1599
@@ -1602,9 +1604,9 @@ _icon_preview_update(Evas_Object *win)
1602 const char **example_icon, *example_icons[] = 1604 const char **example_icon, *example_icons[] =
1603 { 1605 {
1604 "folder", 1606 "folder",
1605 "user-home", 1607 "video-display",
1606 "text-x-generic", 1608 "mail-unread",
1607 "system-run", 1609 "start-here",
1608 "preferences-system", 1610 "preferences-system",
1609 NULL, 1611 NULL,
1610 }; 1612 };
@@ -4414,25 +4416,25 @@ efl_main(void *data EINA_UNUSED, const Efl_Event *ev)
4414 else if ((!strcmp(arg, "-t")) && (i < eina_array_count(arge->argv))) 4416 else if ((!strcmp(arg, "-t")) && (i < eina_array_count(arge->argv)))
4415 { 4417 {
4416 i++; 4418 i++;
4417 theme_set = arg; 4419 theme_set = eina_array_data_get(arge->argv, i);
4418 interactive = 0; 4420 interactive = 0;
4419 } 4421 }
4420 else if ((!strcmp(arg, "-f")) && (i < eina_array_count(arge->argv))) 4422 else if ((!strcmp(arg, "-f")) && (i < eina_array_count(arge->argv)))
4421 { 4423 {
4422 i++; 4424 i++;
4423 finger_size_set = arg; 4425 finger_size_set = eina_array_data_get(arge->argv, i);
4424 interactive = 0; 4426 interactive = 0;
4425 } 4427 }
4426 else if ((!strcmp(arg, "-s")) && (i < eina_array_count(arge->argv))) 4428 else if ((!strcmp(arg, "-s")) && (i < eina_array_count(arge->argv)))
4427 { 4429 {
4428 i++; 4430 i++;
4429 scale_set = arg; 4431 scale_set = eina_array_data_get(arge->argv, i);
4430 interactive = 0; 4432 interactive = 0;
4431 } 4433 }
4432 else if ((!strcmp(arg, "-w")) && (i < eina_array_count(arge->argv))) 4434 else if ((!strcmp(arg, "-w")) && (i < eina_array_count(arge->argv)))
4433 { 4435 {
4434 i++; 4436 i++;
4435 web_backend = arg; 4437 web_backend = eina_array_data_get(arge->argv, i);
4436 interactive = 0; 4438 interactive = 0;
4437 } 4439 }
4438 } 4440 }
diff --git a/src/bin/elementary/test_genlist.c b/src/bin/elementary/test_genlist.c
index bf6ba4c9d9..41ff4a3903 100644
--- a/src/bin/elementary/test_genlist.c
+++ b/src/bin/elementary/test_genlist.c
@@ -292,6 +292,24 @@ _gl_selected(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_i
292} 292}
293 293
294static void 294static void
295_gl_unselected(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
296{
297 printf("unselected: %p\n", event_info);
298}
299
300static void
301_gl_highlighted(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
302{
303 printf("highlighted: %p\n", event_info);
304}
305
306static void
307_gl_unhighlighted(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
308{
309 printf("unhighlighted: %p\n", event_info);
310}
311
312static void
295_gl_double_clicked(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info) 313_gl_double_clicked(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_info)
296{ 314{
297 printf("double clicked: %p\n", event_info); 315 printf("double clicked: %p\n", event_info);
@@ -445,6 +463,9 @@ test_genlist(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void *event_i
445 463
446 gl = elm_genlist_add(win); 464 gl = elm_genlist_add(win);
447 evas_object_smart_callback_add(gl, "selected", _gl_selected, NULL); 465 evas_object_smart_callback_add(gl, "selected", _gl_selected, NULL);
466 evas_object_smart_callback_add(gl, "unselected", _gl_unselected, NULL);
467 evas_object_smart_callback_add(gl, "highlighted", _gl_highlighted, NULL);
468 evas_object_smart_callback_add(gl, "unhighlighted", _gl_unhighlighted, NULL);
448 evas_object_smart_callback_add(gl, "clicked,double", _gl_double_clicked, NULL); 469 evas_object_smart_callback_add(gl, "clicked,double", _gl_double_clicked, NULL);
449 evas_object_smart_callback_add(gl, "clicked,right", _gl_right_clicked, NULL); 470 evas_object_smart_callback_add(gl, "clicked,right", _gl_right_clicked, NULL);
450 evas_object_smart_callback_add(gl, "longpressed", _gl_longpress, NULL); 471 evas_object_smart_callback_add(gl, "longpressed", _gl_longpress, NULL);
diff --git a/src/bin/eolian/headers.c b/src/bin/eolian/headers.c
index 6292fb4259..ebca0c9b75 100644
--- a/src/bin/eolian/headers.c
+++ b/src/bin/eolian/headers.c
@@ -1,6 +1,8 @@
1#include "main.h" 1#include "main.h"
2#include "docs.h" 2#include "docs.h"
3 3
4extern char* _eolian_api_symbol;
5
4static const char * 6static const char *
5_get_add_star(Eolian_Function_Type ftype, Eolian_Parameter_Direction pdir) 7_get_add_star(Eolian_Function_Type ftype, Eolian_Parameter_Direction pdir)
6{ 8{
@@ -118,7 +120,7 @@ _gen_func(const Eolian_State *state, const Eolian_Function *fid,
118 eina_strbuf_append_char(buf, '\n'); 120 eina_strbuf_append_char(buf, '\n');
119 eina_strbuf_free(dbuf); 121 eina_strbuf_free(dbuf);
120 } 122 }
121 eina_strbuf_append(buf, "EOAPI "); 123 eina_strbuf_append_printf(buf, "%s %s_WEAK ", _eolian_api_symbol, _eolian_api_symbol);
122 if (rtp) 124 if (rtp)
123 { 125 {
124 if (!rtps) 126 if (!rtps)
@@ -225,7 +227,8 @@ eo_gen_header_gen(const Eolian_State *state, const Eolian_Class *cl,
225 eina_strbuf_append_printf(buf, "#define %s %s()\n\n", mname, gname); 227 eina_strbuf_append_printf(buf, "#define %s %s()\n\n", mname, gname);
226 eina_stringshare_del(mname); 228 eina_stringshare_del(mname);
227 229
228 eina_strbuf_append_printf(buf, "EWAPI const Efl_Class *%s(void) EINA_CONST;\n", gname); 230 eina_strbuf_append_printf(buf, "%s %s_WEAK const Efl_Class *%s(void) EINA_CONST;\n",
231 _eolian_api_symbol, _eolian_api_symbol, gname);
229 eina_stringshare_del(gname); 232 eina_stringshare_del(gname);
230 233
231 /* method section */ 234 /* method section */
@@ -283,8 +286,9 @@ events:
283 if (!eolian_event_is_beta(ev) && evs == EOLIAN_SCOPE_PUBLIC) 286 if (!eolian_event_is_beta(ev) && evs == EOLIAN_SCOPE_PUBLIC)
284 eina_strbuf_append_char(buf, '\n'); 287 eina_strbuf_append_char(buf, '\n');
285 288
286 eina_strbuf_append_printf(buf, "EWAPI extern const " 289 eina_strbuf_append_printf(buf, "%s %s_WEAK extern const "
287 "Efl_Event_Description _%s;\n\n", evn); 290 "Efl_Event_Description _%s;\n\n",
291 _eolian_api_symbol, _eolian_api_symbol, evn);
288 292
289 Eina_Strbuf *evdbuf = eo_gen_docs_event_gen(state, ev, 293 Eina_Strbuf *evdbuf = eo_gen_docs_event_gen(state, ev,
290 eolian_class_c_name_get(cl)); 294 eolian_class_c_name_get(cl));
diff --git a/src/bin/eolian/main.c b/src/bin/eolian/main.c
index 8e965e25b2..b2167ef62d 100644
--- a/src/bin/eolian/main.c
+++ b/src/bin/eolian/main.c
@@ -7,6 +7,7 @@
7#include "sources.h" 7#include "sources.h"
8 8
9int _eolian_gen_log_dom = -1; 9int _eolian_gen_log_dom = -1;
10char* _eolian_api_symbol;
10 11
11enum 12enum
12{ 13{
@@ -44,6 +45,7 @@ _print_usage(const char *progn, FILE *outf)
44 " -o type:name specify a particular output filename\n" 45 " -o type:name specify a particular output filename\n"
45 " -h print this message and exit\n" 46 " -h print this message and exit\n"
46 " -v print version and exit\n" 47 " -v print version and exit\n"
48 " -e api symbol string to be used for import/export symbol"
47 "\n" 49 "\n"
48 "Available types:\n" 50 "Available types:\n"
49 " h: C header file (.eo.h/.eot.h)\n" 51 " h: C header file (.eo.h/.eot.h)\n"
@@ -494,6 +496,7 @@ main(int argc, char **argv)
494 NULL, NULL, NULL, NULL, NULL, NULL 496 NULL, NULL, NULL, NULL, NULL, NULL
495 }; 497 };
496 char *basen = NULL; 498 char *basen = NULL;
499 _eolian_api_symbol = strdup("EAPI");
497 Eina_List *includes = NULL; 500 Eina_List *includes = NULL;
498 501
499 eina_init(); 502 eina_init();
@@ -514,7 +517,7 @@ main(int argc, char **argv)
514 int gen_what = 0; 517 int gen_what = 0;
515 Eina_Bool scan_system = EINA_TRUE; 518 Eina_Bool scan_system = EINA_TRUE;
516 519
517 for (int opt; (opt = getopt(argc, argv, "SI:g:o:hv")) != -1;) 520 for (int opt; (opt = getopt(argc, argv, "SI:g:o:hve:")) != -1;)
518 switch (opt) 521 switch (opt)
519 { 522 {
520 case 0: 523 case 0:
@@ -526,6 +529,10 @@ main(int argc, char **argv)
526 /* just a pointer to argv contents, so it persists */ 529 /* just a pointer to argv contents, so it persists */
527 includes = eina_list_append(includes, optarg); 530 includes = eina_list_append(includes, optarg);
528 break; 531 break;
532 case 'e':
533 free(_eolian_api_symbol);
534 _eolian_api_symbol = strdup(optarg);
535 break;
529 case 'g': 536 case 'g':
530 for (const char *wstr = optarg; *wstr; ++wstr) 537 for (const char *wstr = optarg; *wstr; ++wstr)
531 switch (*wstr) 538 switch (*wstr)
@@ -665,6 +672,8 @@ end:
665 free(outs[i]); 672 free(outs[i]);
666 free(basen); 673 free(basen);
667 674
675 free(_eolian_api_symbol);
676
668 eolian_state_free(eos); 677 eolian_state_free(eos);
669 eolian_shutdown(); 678 eolian_shutdown();
670 eina_shutdown(); 679 eina_shutdown();
diff --git a/src/bin/eolian/sources.c b/src/bin/eolian/sources.c
index e5e8eb7a8b..543d7c8f51 100644
--- a/src/bin/eolian/sources.c
+++ b/src/bin/eolian/sources.c
@@ -7,6 +7,7 @@
7 */ 7 */
8static Eina_Hash *_funcs_params_init_get = NULL; 8static Eina_Hash *_funcs_params_init_get = NULL;
9static Eina_Hash *_funcs_params_init_set = NULL; 9static Eina_Hash *_funcs_params_init_set = NULL;
10extern char* _eolian_api_symbol;
10 11
11static const char * 12static const char *
12_get_add_star(Eolian_Function_Type ftype, Eolian_Parameter_Direction pdir) 13_get_add_star(Eolian_Function_Type ftype, Eolian_Parameter_Direction pdir)
@@ -475,7 +476,8 @@ static void
475_emit_class_function(Eina_Strbuf *buf, const Eolian_Function *fid, const Eolian_Function_Type ftype, const Eolian_Type *rtp, const char *rtpn, Eina_Strbuf *params_full, 476_emit_class_function(Eina_Strbuf *buf, const Eolian_Function *fid, const Eolian_Function_Type ftype, const Eolian_Type *rtp, const char *rtpn, Eina_Strbuf *params_full,
476 const char *ocnamel, const char *func_suffix, Eina_Strbuf *params, const char *function_name) 477 const char *ocnamel, const char *func_suffix, Eina_Strbuf *params, const char *function_name)
477{ 478{
478 eina_strbuf_append(buf, "EOAPI "); 479 eina_strbuf_append_printf(buf, "%s %s_WEAK", _eolian_api_symbol, _eolian_api_symbol);
480 eina_strbuf_append(buf, " ");
479 eina_strbuf_append(buf, rtpn); 481 eina_strbuf_append(buf, rtpn);
480 eina_strbuf_append(buf, " "); 482 eina_strbuf_append(buf, " ");
481 eina_strbuf_append(buf, function_name); 483 eina_strbuf_append(buf, function_name);
@@ -894,7 +896,8 @@ _gen_func(const Eolian_Class *cl, const Eolian_Function *fid,
894 eina_strbuf_append_printf(buf, "}\n\n"); 896 eina_strbuf_append_printf(buf, "}\n\n");
895 } 897 }
896 898
897 eina_strbuf_append(buf, "EOAPI EFL_"); 899 eina_strbuf_append_printf(buf, "%s %s_WEAK", _eolian_api_symbol, _eolian_api_symbol);
900 eina_strbuf_append(buf, " EFL_");
898 if (!strcmp(rtpn, "void")) 901 if (!strcmp(rtpn, "void"))
899 eina_strbuf_append(buf, "VOID_"); 902 eina_strbuf_append(buf, "VOID_");
900 eina_strbuf_append(buf, "FUNC_BODY"); 903 eina_strbuf_append(buf, "FUNC_BODY");
@@ -1125,7 +1128,8 @@ eo_gen_source_gen(const Eolian_Class *cl, Eina_Strbuf *buf)
1125 EINA_ITERATOR_FOREACH(itr, ev) 1128 EINA_ITERATOR_FOREACH(itr, ev)
1126 { 1129 {
1127 Eina_Stringshare *evn = eolian_event_c_macro_get(ev); 1130 Eina_Stringshare *evn = eolian_event_c_macro_get(ev);
1128 eina_strbuf_append(buf, "EWAPI const Efl_Event_Description _"); 1131 eina_strbuf_append_printf(buf, "%s %s_WEAK", _eolian_api_symbol, _eolian_api_symbol);
1132 eina_strbuf_append(buf, " const Efl_Event_Description _");
1129 eina_strbuf_append(buf, evn); 1133 eina_strbuf_append(buf, evn);
1130 eina_strbuf_append(buf, " =\n EFL_EVENT_DESCRIPTION"); 1134 eina_strbuf_append(buf, " =\n EFL_EVENT_DESCRIPTION");
1131 if (eolian_event_is_hot(ev)) 1135 if (eolian_event_is_hot(ev))
diff --git a/src/bin/eolian/types.c b/src/bin/eolian/types.c
index 9b44279d98..897da96e36 100644
--- a/src/bin/eolian/types.c
+++ b/src/bin/eolian/types.c
@@ -4,6 +4,8 @@
4#include "headers.h" 4#include "headers.h"
5#include "docs.h" 5#include "docs.h"
6 6
7extern char* _eolian_api_symbol;
8
7static Eina_Strbuf * 9static Eina_Strbuf *
8_type_generate(const Eolian_State *state, const Eolian_Typedecl *tp, 10_type_generate(const Eolian_State *state, const Eolian_Typedecl *tp,
9 Eina_Bool full) 11 Eina_Bool full)
@@ -226,7 +228,8 @@ _err_generate(const Eolian_State *state, const Eolian_Error *err)
226 if (!buf) buf = eina_strbuf_new(); 228 if (!buf) buf = eina_strbuf_new();
227 else eina_strbuf_append_char(buf, '\n'); 229 else eina_strbuf_append_char(buf, '\n');
228 230
229 eina_strbuf_prepend_printf(buf, "EWAPI Eina_Error %s_get(void);\n\n", fn); 231 eina_strbuf_prepend_printf(buf, "%s %s_WEAK Eina_Error %s_get(void);\n\n",
232 _eolian_api_symbol, _eolian_api_symbol, fn);
230 233
231 char *ufn = strdup(fn); 234 char *ufn = strdup(fn);
232 eina_str_toupper(&ufn); 235 eina_str_toupper(&ufn);
@@ -324,7 +327,8 @@ _source_gen_error(Eina_Strbuf *buf, const Eolian_Error *err)
324 *p = '_'; 327 *p = '_';
325 eina_str_tolower(&fn); 328 eina_str_tolower(&fn);
326 329
327 eina_strbuf_append_printf(buf, "EWAPI Eina_Error %s_get(void)\n{\n", fn); 330 eina_strbuf_append_printf(buf, "%s %s_WEAK Eina_Error %s_get(void)\n{\n",
331 _eolian_api_symbol, _eolian_api_symbol, fn);
328 free(fn); 332 free(fn);
329 333
330 const char *msg = eolian_error_message_get(err); 334 const char *msg = eolian_error_message_get(err);
diff --git a/src/bindings/mono/efl_mono/efl_libs.cs.in b/src/bindings/mono/efl_mono/efl_libs.cs.in
index fcf5b18183..af811d494a 100644
--- a/src/bindings/mono/efl_mono/efl_libs.cs.in
+++ b/src/bindings/mono/efl_mono/efl_libs.cs.in
@@ -33,7 +33,7 @@ internal class Libs {
33 33
34 internal const string CustomExports = "@CUSTOM_EXPORTS_MONO_DL_MONO@"; 34 internal const string CustomExports = "@CUSTOM_EXPORTS_MONO_DL_MONO@";
35 35
36 internal const string Libdl = "libdl.so"; 36 internal const string Libdl = "@LIBDL_DL_MONO@";
37 internal const string Kernel32 = "kernel32.dll"; 37 internal const string Kernel32 = "kernel32.dll";
38 38
39 internal static readonly Efl.Eo.NativeModule EflModule = new Efl.Eo.NativeModule(Efl); 39 internal static readonly Efl.Eo.NativeModule EflModule = new Efl.Eo.NativeModule(Efl);
diff --git a/src/bindings/mono/efl_mono/meson.build b/src/bindings/mono/efl_mono/meson.build
index 165b6d55bd..5ca6f116d6 100644
--- a/src/bindings/mono/efl_mono/meson.build
+++ b/src/bindings/mono/efl_mono/meson.build
@@ -16,6 +16,11 @@ efl_libs = configuration_data()
16efl_libs.set('EFL_MONO_LIBRARY_MAP', map) 16efl_libs.set('EFL_MONO_LIBRARY_MAP', map)
17efl_libs.set('CUSTOM_EXPORTS_MONO_DL_MONO', 'eflcustomexportsmono') 17efl_libs.set('CUSTOM_EXPORTS_MONO_DL_MONO', 'eflcustomexportsmono')
18efl_libs.set('EVIL_DL_MONO', 'dl') 18efl_libs.set('EVIL_DL_MONO', 'dl')
19if sys_osx
20 efl_libs.set('LIBDL_DL_MONO', 'dl.dylib')
21else
22 efl_libs.set('LIBDL_DL_MONO', 'libdl.so')
23endif
19 24
20foreach mono_libs : mono_sublibs 25foreach mono_libs : mono_sublibs
21 key = mono_libs[0].to_upper()+'_DL_MONO' 26 key = mono_libs[0].to_upper()+'_DL_MONO'
diff --git a/src/bindings/mono/eina_mono/eina_error.cs b/src/bindings/mono/eina_mono/eina_error.cs
index 1300e796ab..004792fdb7 100644
--- a/src/bindings/mono/eina_mono/eina_error.cs
+++ b/src/bindings/mono/eina_mono/eina_error.cs
@@ -59,11 +59,27 @@ public struct Error : IComparable<Error>, IEquatable<Error>
59 /// <para>Since EFL 1.23.</para> 59 /// <para>Since EFL 1.23.</para>
60 /// </summary> 60 /// </summary>
61 public static readonly Error ENOENT = new Error(2); 61 public static readonly Error ENOENT = new Error(2);
62
63 /// <summary>
64 /// Return architecture independent ECANCELED error code.
65 /// Returns 125 for Linux, 89 for OSX and 105 for Windows.
66 /// <para>Since EFL 1.25.</para>
67 /// </summary>
68 private static int IndependentECANCELED()
69 {
70 if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))
71 return new Error(125);
72 else if (RuntimeInformation.IsOSPlatform(OSPlatform.OSX))
73 return new Error(89);
74 else // Windows
75 return new Error(105);
76 }
77
62 /// <summary> 78 /// <summary>
63 /// Cancelled error identifier. 79 /// Cancelled error identifier.
64 /// <para>Since EFL 1.23.</para> 80 /// <para>Since EFL 1.23.</para>
65 /// </summary> 81 /// </summary>
66 public static readonly Error ECANCELED = new Error(125); 82 public static readonly Error ECANCELED = IndependentECANCELED();
67 83
68 /// <summary> 84 /// <summary>
69 /// Constructor. 85 /// Constructor.
diff --git a/src/bindings/mono/eo_mono/NativeModule_Unix.cs b/src/bindings/mono/eo_mono/NativeModule_Unix.cs
index 67409e02d1..b4dfeb8aea 100644
--- a/src/bindings/mono/eo_mono/NativeModule_Unix.cs
+++ b/src/bindings/mono/eo_mono/NativeModule_Unix.cs
@@ -56,6 +56,12 @@ internal partial class NativeModule
56 ///<item> 56 ///<item>
57 ///<description><c>libfilename.so</c></description> 57 ///<description><c>libfilename.so</c></description>
58 ///</item> 58 ///</item>
59 ///<item>
60 ///<description><c>filename.dylib</c></description>
61 ///</item>
62 ///<item>
63 ///<description><c>libfilename.dylib</c></description>
64 ///</item>
59 ///</list> 65 ///</list>
60 ///</summary> 66 ///</summary>
61 ///<param name="filename">The name to search for.</param> 67 ///<param name="filename">The name to search for.</param>
@@ -73,6 +79,16 @@ internal partial class NativeModule
73 if (r == IntPtr.Zero) 79 if (r == IntPtr.Zero)
74 { 80 {
75 r = dlopen("lib" + filename + ".so", RTLD_NOW | RTLD_GLOBAL); 81 r = dlopen("lib" + filename + ".so", RTLD_NOW | RTLD_GLOBAL);
82 if (r == IntPtr.Zero)
83 {
84 r = dlopen(filename + ".dylib", RTLD_NOW | RTLD_GLOBAL);
85 if (r == IntPtr.Zero)
86 {
87 r = dlopen("lib" + filename + ".dylib", RTLD_NOW | RTLD_GLOBAL);
88 }
89 }
90
91
76 } 92 }
77 } 93 }
78 } 94 }
diff --git a/src/generic/evas/common/timeout.c b/src/generic/evas/common/timeout.c
index 844884c8e0..1b05a7db56 100644
--- a/src/generic/evas/common/timeout.c
+++ b/src/generic/evas/common/timeout.c
@@ -1,3 +1,6 @@
1#include <stdio.h>
2static void (*timeout_func) (void) = NULL;
3
1#ifdef _WIN32 4#ifdef _WIN32
2# include <stdio.h> 5# include <stdio.h>
3# include <windows.h> 6# include <windows.h>
@@ -8,6 +11,7 @@ _timeout(void *arg)
8{ 11{
9 int s = (int)(uintptr_t)arg; 12 int s = (int)(uintptr_t)arg;
10 Sleep(s * 1000); 13 Sleep(s * 1000);
14 if (timeout_func) timeout_func();
11 _Exit(-1); 15 _Exit(-1);
12 _endthreadex(0); 16 _endthreadex(0);
13 return 0; 17 return 0;
@@ -26,6 +30,7 @@ timeout_init(int seconds)
26static void 30static void
27_timeout(int val) 31_timeout(int val)
28{ 32{
33 if (timeout_func) timeout_func();
29 _exit(-1); 34 _exit(-1);
30 if (val) return; 35 if (val) return;
31} 36}
@@ -37,3 +42,9 @@ timeout_init(int seconds)
37 alarm(seconds); 42 alarm(seconds);
38} 43}
39#endif 44#endif
45
46void
47timeout_func_set(void (*func) (void))
48{
49 timeout_func = func;
50}
diff --git a/src/generic/evas/common/timeout.h b/src/generic/evas/common/timeout.h
index 2ea039badf..5cd4c8b54d 100644
--- a/src/generic/evas/common/timeout.h
+++ b/src/generic/evas/common/timeout.h
@@ -6,6 +6,7 @@ extern "C" {
6#endif 6#endif
7 7
8void timeout_init(int seconds); 8void timeout_init(int seconds);
9void timeout_func_set(void (*func) (void));
9 10
10#ifdef __cplusplus 11#ifdef __cplusplus
11} 12}
diff --git a/src/generic/evas/pdf/main.cpp b/src/generic/evas/pdf/main.cpp
index c7c3ee13bd..5c70bfef21 100644
--- a/src/generic/evas/pdf/main.cpp
+++ b/src/generic/evas/pdf/main.cpp
@@ -18,6 +18,11 @@
18#include "shmfile.h" 18#include "shmfile.h"
19#include "timeout.h" 19#include "timeout.h"
20 20
21#ifndef _WIN32
22# include <unistd.h>
23# include <signal.h>
24#endif
25
21#define DATA32 unsigned int 26#define DATA32 unsigned int
22typedef char RGB24[3]; 27typedef char RGB24[3];
23 28
@@ -192,11 +197,43 @@ void poppler_load_image(int size_w EINA_UNUSED, int size_h EINA_UNUSED)
192 delete renderer; 197 delete renderer;
193} 198}
194 199
200static Eina_Tmpstr *tmpdir = NULL;
201static Eina_Tmpstr *generated = NULL;
202
203static void
204tmp_cleanup(void)
205{
206 if (tmpdir)
207 {
208 if (generated)
209 {
210 unlink(generated);
211 }
212 if (rmdir(tmpdir) < 0)
213 {
214 D("Failed to delete tmpdir %s\n", tmpdir);
215 }
216 eina_tmpstr_del(tmpdir);
217 tmpdir = NULL;
218 if (generated)
219 {
220 eina_tmpstr_del(generated);
221 generated = NULL;
222 }
223 }
224}
225
226static void
227_crash(int val)
228{
229 D("Crash\n");
230 tmp_cleanup();
231 _exit(-1 | val);
232}
233
195int 234int
196main(int argc, char **argv) 235main(int argc, char **argv)
197{ 236{
198 Eina_Tmpstr *tmpdir = NULL;
199 Eina_Tmpstr *generated = NULL;
200 char *extension; 237 char *extension;
201 char *dir; 238 char *dir;
202 char *file; 239 char *file;
@@ -204,6 +241,7 @@ main(int argc, char **argv)
204 int size_w = 0, size_h = 0; 241 int size_w = 0, size_h = 0;
205 int head_only = 0; 242 int head_only = 0;
206 int page_num = 0; 243 int page_num = 0;
244 int ret = 0;
207 245
208 if (argc < 2) return -1; 246 if (argc < 2) return -1;
209 // file is ALWAYS first arg, other options come after 247 // file is ALWAYS first arg, other options come after
@@ -247,6 +285,18 @@ main(int argc, char **argv)
247 dir = dirname(argv[0]); 285 dir = dirname(argv[0]);
248 if (extension && dir && strcmp(extension, ".pdf")) 286 if (extension && dir && strcmp(extension, ".pdf"))
249 { 287 {
288#ifndef _WIN32
289 signal(SIGSEGV, _crash);
290 signal(SIGBUS, _crash);
291 signal(SIGFPE, _crash);
292 signal(SIGABRT, _crash);
293 signal(SIGILL, _crash);
294 signal(SIGSYS, _crash);
295 signal(SIGINT, _crash);
296 signal(SIGTERM, _crash);
297 signal(SIGQUIT, _crash);
298#endif
299 timeout_func_set(tmp_cleanup);
250 if (eina_file_mkdtemp("evas_generic_pdf_loaderXXXXXX", &tmpdir)) 300 if (eina_file_mkdtemp("evas_generic_pdf_loaderXXXXXX", &tmpdir))
251 { 301 {
252 Eina_Strbuf *tmp; 302 Eina_Strbuf *tmp;
@@ -270,6 +320,7 @@ main(int argc, char **argv)
270 pclose(cmd); 320 pclose(cmd);
271 321
272 filename = basename(file); 322 filename = basename(file);
323
273 generated = eina_tmpstr_add_length(filename, strlen(filename) - strlen(extension)); 324 generated = eina_tmpstr_add_length(filename, strlen(filename) - strlen(extension));
274 325
275 eina_strbuf_append_printf(tmp, "%s/%s.pdf", tmpdir, generated); 326 eina_strbuf_append_printf(tmp, "%s/%s.pdf", tmpdir, generated);
@@ -291,12 +342,15 @@ main(int argc, char **argv)
291 } 342 }
292 343
293 // Let's force a timeout if things go wrong 344 // Let's force a timeout if things go wrong
294 timeout_init(10); 345 timeout_init(30);
295 346
296 // Now process the pdf (or the generated pdf) 347 // Now process the pdf (or the generated pdf)
297 D("poppler_file_init\n"); 348 D("poppler_file_init\n");
298 if (!poppler_init(file, page_num, size_w, size_h)) 349 if (!poppler_init(file, page_num, size_w, size_h))
299 return -1; 350 {
351 goto cleanup;
352 ret = 1;
353 }
300 D("poppler_file_init done\n"); 354 D("poppler_file_init done\n");
301 355
302 D("dpi2...: %f\n", dpi); 356 D("dpi2...: %f\n", dpi);
@@ -338,18 +392,9 @@ main(int argc, char **argv)
338 printf("done\n"); 392 printf("done\n");
339 393
340 poppler_shutdown(); 394 poppler_shutdown();
341 395cleanup:
342 if (tmpdir) 396 timeout_func_set(NULL);
343 { 397 tmp_cleanup();
344 if (generated) unlink(generated);
345 if (rmdir(tmpdir) < 0)
346 {
347 D("Failed to delete tmpdir %s\n", tmpdir);
348 }
349
350 eina_tmpstr_del(tmpdir);
351 eina_tmpstr_del(generated);
352 }
353 fflush(stdout); 398 fflush(stdout);
354 return 0; 399 return ret;
355} 400}
diff --git a/src/lib/ecore/ecore.c b/src/lib/ecore/ecore.c
index 0d79b621b2..0b4ba4a8fd 100644
--- a/src/lib/ecore/ecore.c
+++ b/src/lib/ecore/ecore.c
@@ -32,8 +32,8 @@
32#include "ecore_private.h" 32#include "ecore_private.h"
33#include "../../static_libs/buildsystem/buildsystem.h" 33#include "../../static_libs/buildsystem/buildsystem.h"
34 34
35#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) 35#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) || defined(HAVE_MALLINFO2)
36#include <malloc.h> 36# include <malloc.h>
37#endif 37#endif
38 38
39#ifndef O_BINARY 39#ifndef O_BINARY
@@ -45,14 +45,19 @@ EAPI Ecore_Version *ecore_version = &_version;
45 45
46EAPI double _efl_startup_time = 0; 46EAPI double _efl_startup_time = 0;
47 47
48#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) 48#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) || defined(HAVE_MALLINFO2)
49#define KEEP_MAX(Global, Local) \ 49# define KEEP_MAX(Global, Local) \
50 if (Global < (Local)) \ 50 if (Global < (Local)) \
51 Global = Local; 51 Global = Local;
52 52
53static Eina_Bool _ecore_memory_statistic(void *data); 53static Eina_Bool _ecore_memory_statistic(void *data);
54# ifdef HAVE_MALLINFO2
55static size_t _ecore_memory_max_total = 0;
56static size_t _ecore_memory_max_free = 0;
57# else
54static int _ecore_memory_max_total = 0; 58static int _ecore_memory_max_total = 0;
55static int _ecore_memory_max_free = 0; 59static int _ecore_memory_max_free = 0;
60# endif
56static pid_t _ecore_memory_pid = 0; 61static pid_t _ecore_memory_pid = 0;
57#ifdef HAVE_MALLOC_INFO 62#ifdef HAVE_MALLOC_INFO
58static FILE *_ecore_memory_statistic_file = NULL; 63static FILE *_ecore_memory_statistic_file = NULL;
@@ -291,7 +296,7 @@ ecore_init(void)
291 if (_ecore_glib_always_integrate) ecore_main_loop_glib_integrate(); 296 if (_ecore_glib_always_integrate) ecore_main_loop_glib_integrate();
292#endif 297#endif
293 298
294#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) 299#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) || defined(HAVE_MALLINFO2)
295 if (getenv("ECORE_MEM_STAT")) 300 if (getenv("ECORE_MEM_STAT"))
296 { 301 {
297#ifdef HAVE_MALLOC_INFO 302#ifdef HAVE_MALLOC_INFO
@@ -432,16 +437,22 @@ ecore_shutdown(void)
432 437
433 _ecore_main_loop_shutdown(); 438 _ecore_main_loop_shutdown();
434 439
435#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) 440#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) || defined(HAVE_MALLINFO2)
436 if (getenv("ECORE_MEM_STAT")) 441 if (getenv("ECORE_MEM_STAT"))
437 { 442 {
438 _ecore_memory_statistic(NULL); 443 _ecore_memory_statistic(NULL);
439 444
445 #ifdef HAVE_MALLINFO2
446 ERR("[%i] Memory MAX total: %lu, free: %lu",
447 _ecore_memory_pid,
448 _ecore_memory_max_total,
449 _ecore_memory_max_free);
450 #else
440 ERR("[%i] Memory MAX total: %i, free: %i", 451 ERR("[%i] Memory MAX total: %i, free: %i",
441 _ecore_memory_pid, 452 _ecore_memory_pid,
442 _ecore_memory_max_total, 453 _ecore_memory_max_total,
443 _ecore_memory_max_free); 454 _ecore_memory_max_free);
444 455 #endif
445 456
446#ifdef HAVE_MALLOC_INFO 457#ifdef HAVE_MALLOC_INFO
447 fclose(_ecore_memory_statistic_file); 458 fclose(_ecore_memory_statistic_file);
@@ -963,20 +974,30 @@ _systemd_watchdog_cb(void *data EINA_UNUSED, const Efl_Event *event EINA_UNUSED)
963} 974}
964#endif 975#endif
965 976
966#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) 977#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) || defined(HAVE_MALLINFO2)
967static Eina_Bool 978static Eina_Bool
968_ecore_memory_statistic(EINA_UNUSED void *data) 979_ecore_memory_statistic(EINA_UNUSED void *data)
969{ 980{
970#ifdef HAVE_MALLOC_INFO 981#ifdef HAVE_MALLOC_INFO
971 static int frame = 0; 982 static int frame = 0;
972#endif 983#endif
973#ifdef HAVE_MALLINFO 984
985#if defined(HAVE_MALLINFO) || defined(HAVE_MALLINFO2)
986 Eina_Bool changed = EINA_FALSE;
987
988# if defined(HAVE_MALLINFO2)
989 struct mallinfo2 mi;
990 static size_t uordblks = 0;
991 static size_t fordblks = 0;
992
993 mi = mallinfo2();
994# else
974 struct mallinfo mi; 995 struct mallinfo mi;
975 static int uordblks = 0; 996 static int uordblks = 0;
976 static int fordblks = 0; 997 static int fordblks = 0;
977 Eina_Bool changed = EINA_FALSE;
978 998
979 mi = mallinfo(); 999 mi = mallinfo();
1000# endif
980 1001
981#define HAS_CHANGED(Global, Local) \ 1002#define HAS_CHANGED(Global, Local) \
982 if (Global != Local) \ 1003 if (Global != Local) \
@@ -989,14 +1010,24 @@ _ecore_memory_statistic(EINA_UNUSED void *data)
989 HAS_CHANGED(fordblks, mi.fordblks); 1010 HAS_CHANGED(fordblks, mi.fordblks);
990 1011
991 if (changed) 1012 if (changed)
992 ERR("[%i] Memory total: %i, free: %i", 1013 {
993 _ecore_memory_pid, 1014#ifdef HAVE_MALLINFO2
994 mi.uordblks, 1015 ERR("[%i] Memory total: %lu, free: %lu",
995 mi.fordblks); 1016 _ecore_memory_pid,
1017 mi.uordblks,
1018 mi.fordblks);
1019#else
1020 ERR("[%i] Memory total: %i, free: %i",
1021 _ecore_memory_pid,
1022 mi.uordblks,
1023 mi.fordblks);
1024#endif
1025 }
996 1026
997 KEEP_MAX(_ecore_memory_max_total, mi.uordblks); 1027 KEEP_MAX(_ecore_memory_max_total, mi.uordblks);
998 KEEP_MAX(_ecore_memory_max_free, mi.fordblks); 1028 KEEP_MAX(_ecore_memory_max_free, mi.fordblks);
999#endif 1029#endif
1030
1000#ifdef HAVE_MALLOC_INFO 1031#ifdef HAVE_MALLOC_INFO
1001 if (frame) fputs("\n", _ecore_memory_statistic_file); 1032 if (frame) fputs("\n", _ecore_memory_statistic_file);
1002 malloc_info(0, _ecore_memory_statistic_file); 1033 malloc_info(0, _ecore_memory_statistic_file);
diff --git a/src/lib/ecore/ecore_main.c b/src/lib/ecore/ecore_main.c
index efd5310029..a037916e3a 100644
--- a/src/lib/ecore/ecore_main.c
+++ b/src/lib/ecore/ecore_main.c
@@ -327,7 +327,7 @@ _ecore_main_pre_idle_exit(void)
327 // even if we never go idle, keep up flushing some of our freeq away 327 // even if we never go idle, keep up flushing some of our freeq away
328 // on every idle exit which may happen if we even never called idlers 328 // on every idle exit which may happen if we even never called idlers
329 // for now an idea but dont enforce 329 // for now an idea but dont enforce
330// eina_freeq_reduce(eina_freeq_main_get(), 128); 330 eina_freeq_reduce(eina_freeq_main_get(), 128);
331} 331}
332 332
333#ifdef HAVE_LIBUV 333#ifdef HAVE_LIBUV
diff --git a/src/lib/ecore/efl_core_proc_env.c b/src/lib/ecore/efl_core_proc_env.c
index f693df25af..9177d822f1 100644
--- a/src/lib/ecore/efl_core_proc_env.c
+++ b/src/lib/ecore/efl_core_proc_env.c
@@ -16,7 +16,7 @@
16#if defined (__FreeBSD__) || defined (__OpenBSD__) 16#if defined (__FreeBSD__) || defined (__OpenBSD__)
17# include <dlfcn.h> 17# include <dlfcn.h>
18static char ***_dl_environ; 18static char ***_dl_environ;
19#else 19#elif !defined(_MSC_VER)
20extern char **environ; 20extern char **environ;
21#endif 21#endif
22 22
diff --git a/src/lib/ecore/efl_loop.c b/src/lib/ecore/efl_loop.c
index 726a4b36a0..d85d5b1661 100644
--- a/src/lib/ecore/efl_loop.c
+++ b/src/lib/ecore/efl_loop.c
@@ -140,7 +140,11 @@ efl_loop_exit_code_process(Eina_Value *value)
140 140
141 eina_value_setup(&v, EINA_VALUE_TYPE_INT); 141 eina_value_setup(&v, EINA_VALUE_TYPE_INT);
142 if (!eina_value_convert(value, &v)) r = -1; 142 if (!eina_value_convert(value, &v)) r = -1;
143 else eina_value_get(&v, &r); 143 else
144 {
145 if (!eina_value_get(&v, &r))
146 r = -1;
147 }
144 } 148 }
145 else 149 else
146 { 150 {
diff --git a/src/lib/ecore_audio/Ecore_Audio.h b/src/lib/ecore_audio/Ecore_Audio.h
index 717c36c3fd..35b59d3c6e 100644
--- a/src/lib/ecore_audio/Ecore_Audio.h
+++ b/src/lib/ecore_audio/Ecore_Audio.h
@@ -4,30 +4,32 @@
4#include <Eina.h> 4#include <Eina.h>
5#include <Eo.h> 5#include <Eo.h>
6 6
7#ifdef EAPI 7#ifdef ECORE_AUDIO_API
8#undef EAPI 8#error ECORE_AUDIO_API should not be already defined
9#endif 9#endif
10 10
11#ifdef _WIN32 11#ifdef _WIN32
12# ifdef EFL_BUILD 12# ifndef ECORE_AUDIO_STATIC
13# ifdef DLL_EXPORT 13# ifdef ECORE_AUDIO_BUILD
14# define EAPI __declspec(dllexport) 14# define ECORE_AUDIO_API __declspec(dllexport)
15# else 15# else
16# define EAPI 16# define ECORE_AUDIO_API __declspec(dllimport)
17# endif 17# endif
18# else 18# else
19# define EAPI __declspec(dllimport) 19# define ECORE_AUDIO_API
20# endif 20# endif
21#else 21# define ECORE_AUDIO_API_WEAK
22# ifdef __GNUC__ 22#elif __GNUC__
23# if __GNUC__ >= 4 23# if __GNUC__ >= 4
24# define EAPI __attribute__ ((visibility("default"))) 24# define ECORE_AUDIO_API __attribute__ ((visibility("default")))
25# else 25# define ECORE_AUDIO_API_WEAK __attribute__ ((weak))
26# define EAPI
27# endif
28# else 26# else
29# define EAPI 27# define ECORE_AUDIO_API
28# define ECORE_AUDIO_API_WEAK
30# endif 29# endif
30#else
31# define ECORE_AUDIO_API
32# define ECORE_AUDIO_API_WEAK
31#endif 33#endif
32 34
33/** 35/**
@@ -176,7 +178,7 @@ typedef struct _Ecore_Audio_Vio Ecore_Audio_Vio;
176 * When Ecore_Audio is not used anymore, call ecore_audio_shutdown() 178 * When Ecore_Audio is not used anymore, call ecore_audio_shutdown()
177 * to shut down the Ecore_Audio library. 179 * to shut down the Ecore_Audio library.
178 */ 180 */
179EAPI int ecore_audio_init(void); 181ECORE_AUDIO_API int ecore_audio_init(void);
180 182
181/** 183/**
182 * @brief Shuts down the Ecore_Audio library. 184 * @brief Shuts down the Ecore_Audio library.
@@ -190,7 +192,7 @@ EAPI int ecore_audio_init(void);
190 * been called the same number of times than ecore_audio_init(). In that case 192 * been called the same number of times than ecore_audio_init(). In that case
191 * it shuts down all the services it uses. 193 * it shuts down all the services it uses.
192 */ 194 */
193EAPI int ecore_audio_shutdown(void); 195ECORE_AUDIO_API int ecore_audio_shutdown(void);
194 196
195//Legacy compatibility code 197//Legacy compatibility code
196 198
@@ -200,14 +202,14 @@ EAPI int ecore_audio_shutdown(void);
200 * @since 1.8 202 * @since 1.8
201 * 203 *
202 */ 204 */
203EAPI const char* ecore_audio_obj_name_get(const Efl_Object* obj); 205ECORE_AUDIO_API const char* ecore_audio_obj_name_get(const Efl_Object* obj);
204/** 206/**
205 * @brief Name of the object 207 * @brief Name of the object
206 * 208 *
207 * @since 1.8 209 * @since 1.8
208 * 210 *
209 */ 211 */
210EAPI void ecore_audio_obj_name_set(Efl_Object* obj, const char *name); 212ECORE_AUDIO_API void ecore_audio_obj_name_set(Efl_Object* obj, const char *name);
211 213
212#include <ecore_audio_obj.h> 214#include <ecore_audio_obj.h>
213#include <ecore_audio_obj_in.h> 215#include <ecore_audio_obj_in.h>
@@ -230,7 +232,4 @@ EAPI void ecore_audio_obj_name_set(Efl_Object* obj, const char *n
230} 232}
231#endif 233#endif
232 234
233#undef EAPI
234#define EAPI
235
236#endif 235#endif
diff --git a/src/lib/ecore_audio/ecore_audio.c b/src/lib/ecore_audio/ecore_audio.c
index be2e40c74c..91bf99b364 100644
--- a/src/lib/ecore_audio/ecore_audio.c
+++ b/src/lib/ecore_audio/ecore_audio.c
@@ -27,7 +27,7 @@ Ecore_Audio_Lib_Sndfile *ecore_audio_sndfile_lib = NULL;
27 27
28/* externally accessible functions */ 28/* externally accessible functions */
29 29
30EAPI int 30ECORE_AUDIO_API int
31ecore_audio_init(void) 31ecore_audio_init(void)
32{ 32{
33 33
@@ -60,7 +60,7 @@ ecore_audio_init(void)
60 return _ecore_audio_init_count; 60 return _ecore_audio_init_count;
61} 61}
62 62
63EAPI int 63ECORE_AUDIO_API int
64ecore_audio_shutdown(void) 64ecore_audio_shutdown(void)
65{ 65{
66 DBG("Ecore_Audio shutdown"); 66 DBG("Ecore_Audio shutdown");
@@ -263,13 +263,13 @@ ecore_audio_sndfile_lib_unload(void)
263#endif /* HAVE_SNDFILE */ 263#endif /* HAVE_SNDFILE */
264 264
265 265
266EAPI const char* 266ECORE_AUDIO_API const char*
267ecore_audio_obj_name_get(const Efl_Object* obj) 267ecore_audio_obj_name_get(const Efl_Object* obj)
268{ 268{
269 return efl_name_get(obj); 269 return efl_name_get(obj);
270} 270}
271 271
272EAPI void 272ECORE_AUDIO_API void
273ecore_audio_obj_name_set(Efl_Object* obj, const char *name) 273ecore_audio_obj_name_set(Efl_Object* obj, const char *name)
274{ 274{
275 efl_name_set(obj, name); 275 efl_name_set(obj, name);
diff --git a/src/lib/ecore_audio/meson.build b/src/lib/ecore_audio/meson.build
index 0376968a4b..95ffddf5b5 100644
--- a/src/lib/ecore_audio/meson.build
+++ b/src/lib/ecore_audio/meson.build
@@ -24,6 +24,7 @@ foreach eo_file : pub_eo_files
24 '-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'), 24 '-o', 'h:' + join_paths(meson.current_build_dir(), eo_file + '.h'),
25 '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'), 25 '-o', 'c:' + join_paths(meson.current_build_dir(), eo_file + '.c'),
26 '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'), 26 '-o', 'd:' + join_paths(meson.current_build_dir(), eo_file + '.d'),
27 '-e', 'ECORE_AUDIO_API',
27 '-gchd', '@INPUT@']) 28 '-gchd', '@INPUT@'])
28endforeach 29endforeach
29 30
@@ -80,7 +81,7 @@ endif
80 81
81ecore_audio_lib = library('ecore_audio', 82ecore_audio_lib = library('ecore_audio',
82 ecore_audio_src, pub_eo_file_target, 83 ecore_audio_src, pub_eo_file_target,
83 c_args : package_c_args, 84 c_args : [package_c_args, '-DECORE_AUDIO_BUILD'],
84 dependencies: ecore_audio_pub_deps + ecore_audio_deps + ecore_audio_ext_deps, 85 dependencies: ecore_audio_pub_deps + ecore_audio_deps + ecore_audio_ext_deps,
85 include_directories : config_dir, 86 include_directories : config_dir,
86 install: true, 87 install: true,
diff --git a/src/lib/ecore_con/Ecore_Con.h b/src/lib/ecore_con/Ecore_Con.h
index 6155796200..2945b06a8f 100644
--- a/src/lib/ecore_con/Ecore_Con.h
+++ b/src/lib/ecore_con/Ecore_Con.h
@@ -15,31 +15,7 @@
15#include "Efl_Net.h" 15#include "Efl_Net.h"
16#endif 16#endif
17 17
18#ifdef EAPI 18#include <ecore_con_api.h>
19# undef EAPI
20#endif
21
22#ifdef _WIN32
23# ifdef EFL_BUILD
24# ifdef DLL_EXPORT
25# define EAPI __declspec(dllexport)
26# else
27# define EAPI
28# endif
29# else
30# define EAPI __declspec(dllimport)
31# endif
32#else
33# ifdef __GNUC__
34# if __GNUC__ >= 4
35# define EAPI __attribute__ ((visibility("default")))
36# else
37# define EAPI
38# endif
39# else
40# define EAPI
41# endif
42#endif
43 19
44/** 20/**
45 * @defgroup Ecore_Con_Group Ecore_Con - Connection functions 21 * @defgroup Ecore_Con_Group Ecore_Con - Connection functions
@@ -633,51 +609,51 @@ struct _Ecore_Con_Event_Url_Progress
633}; 609};
634 610
635/** A client has connected to the server. */ 611/** A client has connected to the server. */
636EAPI extern int ECORE_CON_EVENT_CLIENT_ADD; 612ECORE_CON_API extern int ECORE_CON_EVENT_CLIENT_ADD;
637/** A client has disconnected from the server. */ 613/** A client has disconnected from the server. */
638EAPI extern int ECORE_CON_EVENT_CLIENT_DEL; 614ECORE_CON_API extern int ECORE_CON_EVENT_CLIENT_DEL;
639/** A client experienced an error. 615/** A client experienced an error.
640 * @since 1.1 616 * @since 1.1
641 */ 617 */
642EAPI extern int ECORE_CON_EVENT_CLIENT_ERROR; 618ECORE_CON_API extern int ECORE_CON_EVENT_CLIENT_ERROR;
643/** A client connection has been upgraded to SSL. 619/** A client connection has been upgraded to SSL.
644 * @since 1.1 620 * @since 1.1
645 */ 621 */
646EAPI extern int ECORE_CON_EVENT_CLIENT_UPGRADE; 622ECORE_CON_API extern int ECORE_CON_EVENT_CLIENT_UPGRADE;
647/** A server was created. */ 623/** A server was created. */
648EAPI extern int ECORE_CON_EVENT_SERVER_ADD; 624ECORE_CON_API extern int ECORE_CON_EVENT_SERVER_ADD;
649/** A server connection was lost. */ 625/** A server connection was lost. */
650EAPI extern int ECORE_CON_EVENT_SERVER_DEL; 626ECORE_CON_API extern int ECORE_CON_EVENT_SERVER_DEL;
651/** A server experienced an error. 627/** A server experienced an error.
652 * @since 1.1 628 * @since 1.1
653 */ 629 */
654EAPI extern int ECORE_CON_EVENT_SERVER_ERROR; 630ECORE_CON_API extern int ECORE_CON_EVENT_SERVER_ERROR;
655/** A server connection has been upgraded to SSL. 631/** A server connection has been upgraded to SSL.
656 * @since 1.1 632 * @since 1.1
657 */ 633 */
658EAPI extern int ECORE_CON_EVENT_SERVER_UPGRADE; 634ECORE_CON_API extern int ECORE_CON_EVENT_SERVER_UPGRADE;
659/** A server connection has sent data to its client. 635/** A server connection has sent data to its client.
660 * @since 1.1 636 * @since 1.1
661 */ 637 */
662EAPI extern int ECORE_CON_EVENT_CLIENT_WRITE; 638ECORE_CON_API extern int ECORE_CON_EVENT_CLIENT_WRITE;
663/** A server connection object has sent data. 639/** A server connection object has sent data.
664 * @since 1.1 640 * @since 1.1
665 */ 641 */
666EAPI extern int ECORE_CON_EVENT_SERVER_WRITE; 642ECORE_CON_API extern int ECORE_CON_EVENT_SERVER_WRITE;
667/** A client connected to the server has sent data. */ 643/** A client connected to the server has sent data. */
668EAPI extern int ECORE_CON_EVENT_CLIENT_DATA; 644ECORE_CON_API extern int ECORE_CON_EVENT_CLIENT_DATA;
669/** A server connection object has data.*/ 645/** A server connection object has data.*/
670EAPI extern int ECORE_CON_EVENT_SERVER_DATA; 646ECORE_CON_API extern int ECORE_CON_EVENT_SERVER_DATA;
671/** A server connection has successfully negotiated an ip:port binding. 647/** A server connection has successfully negotiated an ip:port binding.
672 * @since 1.2 648 * @since 1.2
673 */ 649 */
674EAPI extern int ECORE_CON_EVENT_PROXY_BIND; 650ECORE_CON_API extern int ECORE_CON_EVENT_PROXY_BIND;
675/** A URL object has data. */ 651/** A URL object has data. */
676EAPI extern int ECORE_CON_EVENT_URL_DATA; 652ECORE_CON_API extern int ECORE_CON_EVENT_URL_DATA;
677/** A URL object has completed its transfer to and from the server and can be reused. */ 653/** A URL object has completed its transfer to and from the server and can be reused. */
678EAPI extern int ECORE_CON_EVENT_URL_COMPLETE; 654ECORE_CON_API extern int ECORE_CON_EVENT_URL_COMPLETE;
679/** A URL object has made progress in its transfer. */ 655/** A URL object has made progress in its transfer. */
680EAPI extern int ECORE_CON_EVENT_URL_PROGRESS; 656ECORE_CON_API extern int ECORE_CON_EVENT_URL_PROGRESS;
681 657
682/** 658/**
683 * @} 659 * @}
@@ -698,7 +674,7 @@ EAPI extern int ECORE_CON_EVENT_URL_PROGRESS;
698 * @note This function already calls ecore_init() internally, so you don't need 674 * @note This function already calls ecore_init() internally, so you don't need
699 * to call it explicitly. 675 * to call it explicitly.
700 */ 676 */
701EAPI int ecore_con_init(void); 677ECORE_CON_API int ecore_con_init(void);
702 678
703/** 679/**
704 * @brief Shuts down the Ecore_Con library. 680 * @brief Shuts down the Ecore_Con library.
@@ -707,7 +683,7 @@ EAPI int ecore_con_init(void);
707 * @note This function already calls ecore_shutdown() internally, so you don't 683 * @note This function already calls ecore_shutdown() internally, so you don't
708 * need to call it explicitly unless you called ecore_init() explicitly too. 684 * need to call it explicitly unless you called ecore_init() explicitly too.
709 */ 685 */
710EAPI int ecore_con_shutdown(void); 686ECORE_CON_API int ecore_con_shutdown(void);
711 687
712/** 688/**
713 * @brief Do an asynchronous DNS lookup. 689 * @brief Do an asynchronous DNS lookup.
@@ -727,7 +703,7 @@ EAPI int ecore_con_shutdown(void);
727 * @return @c true if the request did not fail to be set up, @c false 703 * @return @c true if the request did not fail to be set up, @c false
728 * otherwise. 704 * otherwise.
729 */ 705 */
730EAPI Eina_Bool ecore_con_lookup(const char *name, Ecore_Con_Dns_Cb done_cb, const void *data) EINA_ARG_NONNULL(1); 706ECORE_CON_API Eina_Bool ecore_con_lookup(const char *name, Ecore_Con_Dns_Cb done_cb, const void *data) EINA_ARG_NONNULL(1);
731 707
732/** 708/**
733 * @} 709 * @}
@@ -748,7 +724,7 @@ EAPI Eina_Bool ecore_con_lookup(const char *name, Ecore_Con_Dns_Cb done_cb, cons
748 * @c 2 if SSL is available and provided by openssl, 724 * @c 2 if SSL is available and provided by openssl,
749 * @c 0 if it is not available. 725 * @c 0 if it is not available.
750 */ 726 */
751EAPI int ecore_con_ssl_available_get(void); 727ECORE_CON_API int ecore_con_ssl_available_get(void);
752 728
753/** 729/**
754 * @brief Adds an SSL certificate for use in ecore_con functions. 730 * @brief Adds an SSL certificate for use in ecore_con functions.
@@ -760,7 +736,7 @@ EAPI int ecore_con_ssl_available_get(void);
760 * @param cert The path to the certificate. 736 * @param cert The path to the certificate.
761 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE. 737 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE.
762 */ 738 */
763EAPI Eina_Bool ecore_con_ssl_server_cert_add(Ecore_Con_Server *svr, const char *cert); 739ECORE_CON_API Eina_Bool ecore_con_ssl_server_cert_add(Ecore_Con_Server *svr, const char *cert);
764 740
765/** 741/**
766 * @brief Adds an SSL private key for use in ecore_con functions. 742 * @brief Adds an SSL private key for use in ecore_con functions.
@@ -772,7 +748,7 @@ EAPI Eina_Bool ecore_con_ssl_server_cert_add(Ecore_Con_Server *svr, cons
772 * @param key_file The path to the key file. 748 * @param key_file The path to the key file.
773 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE. 749 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE.
774 */ 750 */
775EAPI Eina_Bool ecore_con_ssl_server_privkey_add(Ecore_Con_Server *svr, const char *key_file); 751ECORE_CON_API Eina_Bool ecore_con_ssl_server_privkey_add(Ecore_Con_Server *svr, const char *key_file);
776 752
777/** 753/**
778 * @brief Adds an SSL CRL for use in ecore_con functions. 754 * @brief Adds an SSL CRL for use in ecore_con functions.
@@ -784,7 +760,7 @@ EAPI Eina_Bool ecore_con_ssl_server_privkey_add(Ecore_Con_Server *svr, c
784 * @param crl_file The path to the CRL file. 760 * @param crl_file The path to the CRL file.
785 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE. 761 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE.
786 */ 762 */
787EAPI Eina_Bool ecore_con_ssl_server_crl_add(Ecore_Con_Server *svr, const char *crl_file); 763ECORE_CON_API Eina_Bool ecore_con_ssl_server_crl_add(Ecore_Con_Server *svr, const char *crl_file);
788 764
789/** 765/**
790 * @brief Adds an SSL CA file for use in ecore_con functions. 766 * @brief Adds an SSL CA file for use in ecore_con functions.
@@ -797,7 +773,7 @@ EAPI Eina_Bool ecore_con_ssl_server_crl_add(Ecore_Con_Server *svr, const
797 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE. 773 * @return @c EINA_FALSE if the file cannot be loaded, otherwise @c EINA_TRUE.
798 * @note since 1.2, this function can load directories. 774 * @note since 1.2, this function can load directories.
799 */ 775 */
800EAPI Eina_Bool ecore_con_ssl_server_cafile_add(Ecore_Con_Server *svr, const char *ca_file); 776ECORE_CON_API Eina_Bool ecore_con_ssl_server_cafile_add(Ecore_Con_Server *svr, const char *ca_file);
801 777
802/** 778/**
803 * @brief Enables certificate verification on a server object. 779 * @brief Enables certificate verification on a server object.
@@ -806,7 +782,7 @@ EAPI Eina_Bool ecore_con_ssl_server_cafile_add(Ecore_Con_Server *svr, co
806 * to enable verification of certificates against loaded certificates. 782 * to enable verification of certificates against loaded certificates.
807 * @param svr The server object 783 * @param svr The server object
808 */ 784 */
809EAPI void ecore_con_ssl_server_verify(Ecore_Con_Server *svr); 785ECORE_CON_API void ecore_con_ssl_server_verify(Ecore_Con_Server *svr);
810 786
811/** 787/**
812 * @brief Enables hostname-based certificate verification on a server object. 788 * @brief Enables hostname-based certificate verification on a server object.
@@ -818,7 +794,7 @@ EAPI void ecore_con_ssl_server_verify(Ecore_Con_Server *svr);
818 * ecore_con_server_add. 794 * ecore_con_server_add.
819 * @since 1.1 795 * @since 1.1
820 */ 796 */
821EAPI void ecore_con_ssl_server_verify_basic(Ecore_Con_Server *svr); 797ECORE_CON_API void ecore_con_ssl_server_verify_basic(Ecore_Con_Server *svr);
822 798
823/** 799/**
824 * @brief Sets the hostname to verify against in certificate verification. 800 * @brief Sets the hostname to verify against in certificate verification.
@@ -833,7 +809,7 @@ EAPI void ecore_con_ssl_server_verify_basic(Ecore_Con_Server *svr);
833 * @param name The hostname to verify against 809 * @param name The hostname to verify against
834 * @since 1.2 810 * @since 1.2
835 */ 811 */
836EAPI void ecore_con_ssl_server_verify_name_set(Ecore_Con_Server *svr, const char *name); 812ECORE_CON_API void ecore_con_ssl_server_verify_name_set(Ecore_Con_Server *svr, const char *name);
837 813
838/** 814/**
839 * @brief Gets the hostname to verify against in certificate verification. 815 * @brief Gets the hostname to verify against in certificate verification.
@@ -845,7 +821,7 @@ EAPI void ecore_con_ssl_server_verify_name_set(Ecore_Con_Server *sv
845 * @return The hostname which will be used 821 * @return The hostname which will be used
846 * @since 1.2 822 * @since 1.2
847 */ 823 */
848EAPI const char *ecore_con_ssl_server_verify_name_get(Ecore_Con_Server *svr); 824ECORE_CON_API const char *ecore_con_ssl_server_verify_name_get(Ecore_Con_Server *svr);
849 825
850/** 826/**
851 * @brief Upgrades a connection to a specified level of encryption. 827 * @brief Upgrades a connection to a specified level of encryption.
@@ -860,7 +836,7 @@ EAPI const char *ecore_con_ssl_server_verify_name_get(Ecore_Con_Server *sv
860 * @warning Setting a wrong value for @p ssl_type WILL mess up your program. 836 * @warning Setting a wrong value for @p ssl_type WILL mess up your program.
861 * @since 1.1 837 * @since 1.1
862 */ 838 */
863EAPI Eina_Bool ecore_con_ssl_server_upgrade(Ecore_Con_Server *svr, Ecore_Con_Type ssl_type); 839ECORE_CON_API Eina_Bool ecore_con_ssl_server_upgrade(Ecore_Con_Server *svr, Ecore_Con_Type ssl_type);
864 840
865/** 841/**
866 * @brief Upgrades a connection to a specified level of encryption. 842 * @brief Upgrades a connection to a specified level of encryption.
@@ -874,7 +850,7 @@ EAPI Eina_Bool ecore_con_ssl_server_upgrade(Ecore_Con_Server *svr, Ecore
874 * @warning Setting a wrong value for @p ssl_type WILL mess up your program. 850 * @warning Setting a wrong value for @p ssl_type WILL mess up your program.
875 * @since 1.1 851 * @since 1.1
876 */ 852 */
877EAPI Eina_Bool ecore_con_ssl_client_upgrade(Ecore_Con_Client *cl, Ecore_Con_Type ssl_type); 853ECORE_CON_API Eina_Bool ecore_con_ssl_client_upgrade(Ecore_Con_Client *cl, Ecore_Con_Type ssl_type);
878 854
879/** 855/**
880 * @} 856 * @}
@@ -898,7 +874,7 @@ EAPI Eina_Bool ecore_con_ssl_client_upgrade(Ecore_Con_Client *cl, Ecore_
898 * @note This object NEVER needs to be explicitly freed. 874 * @note This object NEVER needs to be explicitly freed.
899 * @since 1.2 875 * @since 1.2
900 */ 876 */
901EAPI Ecore_Con_Socks *ecore_con_socks4_remote_add(const char *ip, int port, const char *username); 877ECORE_CON_API Ecore_Con_Socks *ecore_con_socks4_remote_add(const char *ip, int port, const char *username);
902 878
903/** 879/**
904 * @brief Finds a SOCKS v4 proxy in the proxy list. 880 * @brief Finds a SOCKS v4 proxy in the proxy list.
@@ -913,7 +889,7 @@ EAPI Ecore_Con_Socks *ecore_con_socks4_remote_add(const char *ip, int port, cons
913 * ecore_con_socks4_remote_add() should be used to return the actual object. 889 * ecore_con_socks4_remote_add() should be used to return the actual object.
914 * @since 1.2 890 * @since 1.2
915 */ 891 */
916EAPI Eina_Bool ecore_con_socks4_remote_exists(const char *ip, int port, const char *username); 892ECORE_CON_API Eina_Bool ecore_con_socks4_remote_exists(const char *ip, int port, const char *username);
917 893
918/** 894/**
919 * @brief Removes a SOCKS v4 proxy from the proxy list and delete it. 895 * @brief Removes a SOCKS v4 proxy from the proxy list and delete it.
@@ -927,7 +903,7 @@ EAPI Eina_Bool ecore_con_socks4_remote_exists(const char *ip, int port, c
927 * @warning Be aware that deleting a proxy which is being used WILL ruin your life. 903 * @warning Be aware that deleting a proxy which is being used WILL ruin your life.
928 * @since 1.2 904 * @since 1.2
929 */ 905 */
930EAPI void ecore_con_socks4_remote_del(const char *ip, int port, const char *username); 906ECORE_CON_API void ecore_con_socks4_remote_del(const char *ip, int port, const char *username);
931 907
932/** 908/**
933 * @brief Adds a SOCKS v5 proxy to the proxy list. 909 * @brief Adds a SOCKS v5 proxy to the proxy list.
@@ -942,7 +918,7 @@ EAPI void ecore_con_socks4_remote_del(const char *ip, int port, cons
942 * @note This object NEVER needs to be explicitly freed. 918 * @note This object NEVER needs to be explicitly freed.
943 * @since 1.2 919 * @since 1.2
944 */ 920 */
945EAPI Ecore_Con_Socks *ecore_con_socks5_remote_add(const char *ip, int port, const char *username, const char *password); 921ECORE_CON_API Ecore_Con_Socks *ecore_con_socks5_remote_add(const char *ip, int port, const char *username, const char *password);
946 922
947/** 923/**
948 * @brief Finds a SOCKS v5 proxy in the proxy list. 924 * @brief Finds a SOCKS v5 proxy in the proxy list.
@@ -958,7 +934,7 @@ EAPI Ecore_Con_Socks *ecore_con_socks5_remote_add(const char *ip, int port, cons
958 * ecore_con_socks5_remote_add() should be used to return the actual object. 934 * ecore_con_socks5_remote_add() should be used to return the actual object.
959 * @since 1.2 935 * @since 1.2
960 */ 936 */
961EAPI Eina_Bool ecore_con_socks5_remote_exists(const char *ip, int port, const char *username, const char *password); 937ECORE_CON_API Eina_Bool ecore_con_socks5_remote_exists(const char *ip, int port, const char *username, const char *password);
962 938
963/** 939/**
964 * @brief Removes a SOCKS v5 proxy from the proxy list and delete it. 940 * @brief Removes a SOCKS v5 proxy from the proxy list and delete it.
@@ -973,7 +949,7 @@ EAPI Eina_Bool ecore_con_socks5_remote_exists(const char *ip, int port, c
973 * @warning Be aware that deleting a proxy which is being used WILL ruin your life. 949 * @warning Be aware that deleting a proxy which is being used WILL ruin your life.
974 * @since 1.2 950 * @since 1.2
975 */ 951 */
976EAPI void ecore_con_socks5_remote_del(const char *ip, int port, const char *username, const char *password); 952ECORE_CON_API void ecore_con_socks5_remote_del(const char *ip, int port, const char *username, const char *password);
977 953
978/** 954/**
979 * @brief Sets DNS lookup mode on an existing SOCKS proxy. 955 * @brief Sets DNS lookup mode on an existing SOCKS proxy.
@@ -988,7 +964,7 @@ EAPI void ecore_con_socks5_remote_del(const char *ip, int port, cons
988 * @note By default, this setting is DISABLED. 964 * @note By default, this setting is DISABLED.
989 * @since 1.2 965 * @since 1.2
990 */ 966 */
991EAPI void ecore_con_socks_lookup_set(Ecore_Con_Socks *ecs, Eina_Bool enable); 967ECORE_CON_API void ecore_con_socks_lookup_set(Ecore_Con_Socks *ecs, Eina_Bool enable);
992 968
993/** 969/**
994 * @brief Gets DNS lookup mode on an existing SOCKS proxy. 970 * @brief Gets DNS lookup mode on an existing SOCKS proxy.
@@ -1002,7 +978,7 @@ EAPI void ecore_con_socks_lookup_set(Ecore_Con_Socks *ecs, Eina_Bool
1002 * @note By default, this setting is DISABLED. 978 * @note By default, this setting is DISABLED.
1003 * @since 1.2 979 * @since 1.2
1004 */ 980 */
1005EAPI Eina_Bool ecore_con_socks_lookup_get(Ecore_Con_Socks *ecs); 981ECORE_CON_API Eina_Bool ecore_con_socks_lookup_get(Ecore_Con_Socks *ecs);
1006 982
1007/** 983/**
1008 * @brief Enables bind mode on a SOCKS proxy. 984 * @brief Enables bind mode on a SOCKS proxy.
@@ -1014,7 +990,7 @@ EAPI Eina_Bool ecore_con_socks_lookup_get(Ecore_Con_Socks *ecs);
1014 * @warning Be aware that changing the operation mode of an active proxy may result in undefined behavior 990 * @warning Be aware that changing the operation mode of an active proxy may result in undefined behavior
1015 * @since 1.2 991 * @since 1.2
1016 */ 992 */
1017EAPI void ecore_con_socks_bind_set(Ecore_Con_Socks *ecs, Eina_Bool is_bind); 993ECORE_CON_API void ecore_con_socks_bind_set(Ecore_Con_Socks *ecs, Eina_Bool is_bind);
1018 994
1019/** 995/**
1020 * @brief Returns bind mode of a SOCKS proxy. 996 * @brief Returns bind mode of a SOCKS proxy.
@@ -1025,7 +1001,7 @@ EAPI void ecore_con_socks_bind_set(Ecore_Con_Socks *ecs, Eina_Bool i
1025 * @return If true, the connection established will be a port binding. 1001 * @return If true, the connection established will be a port binding.
1026 * @since 1.2 1002 * @since 1.2
1027 */ 1003 */
1028EAPI Eina_Bool ecore_con_socks_bind_get(Ecore_Con_Socks *ecs); 1004ECORE_CON_API Eina_Bool ecore_con_socks_bind_get(Ecore_Con_Socks *ecs);
1029 1005
1030/** 1006/**
1031 * @brief Returns SOCKS version of a SOCKS proxy. 1007 * @brief Returns SOCKS version of a SOCKS proxy.
@@ -1035,7 +1011,7 @@ EAPI Eina_Bool ecore_con_socks_bind_get(Ecore_Con_Socks *ecs);
1035 * @return @c 0 on error, else @c 4/5 1011 * @return @c 0 on error, else @c 4/5
1036 * @since 1.2 1012 * @since 1.2
1037 */ 1013 */
1038EAPI unsigned int ecore_con_socks_version_get(Ecore_Con_Socks *ecs); 1014ECORE_CON_API unsigned int ecore_con_socks_version_get(Ecore_Con_Socks *ecs);
1039 1015
1040/** 1016/**
1041 * @brief Removes a SOCKS v4 proxy from the proxy list and delete it. 1017 * @brief Removes a SOCKS v4 proxy from the proxy list and delete it.
@@ -1045,7 +1021,7 @@ EAPI unsigned int ecore_con_socks_version_get(Ecore_Con_Socks *ecs);
1045 * @warning Be aware that deleting a proxy which is being used WILL ruin your life. 1021 * @warning Be aware that deleting a proxy which is being used WILL ruin your life.
1046 * @since 1.2 1022 * @since 1.2
1047 */ 1023 */
1048EAPI void ecore_con_socks_remote_del(Ecore_Con_Socks *ecs); 1024ECORE_CON_API void ecore_con_socks_remote_del(Ecore_Con_Socks *ecs);
1049 1025
1050/** 1026/**
1051 * @brief Sets a proxy object to be used with the next server created with ecore_con_server_connect(). 1027 * @brief Sets a proxy object to be used with the next server created with ecore_con_server_connect().
@@ -1056,7 +1032,7 @@ EAPI void ecore_con_socks_remote_del(Ecore_Con_Socks *ecs);
1056 * @see ecore_con_socks_apply_always() 1032 * @see ecore_con_socks_apply_always()
1057 * @since 1.2 1033 * @since 1.2
1058 */ 1034 */
1059EAPI void ecore_con_socks_apply_once(Ecore_Con_Socks *ecs); 1035ECORE_CON_API void ecore_con_socks_apply_once(Ecore_Con_Socks *ecs);
1060 1036
1061/** 1037/**
1062 * @brief Sets a proxy object to be used with all servers created with ecore_con_server_connect(). 1038 * @brief Sets a proxy object to be used with all servers created with ecore_con_server_connect().
@@ -1073,7 +1049,7 @@ EAPI void ecore_con_socks_apply_once(Ecore_Con_Socks *ecs);
1073 * port is the port to connect to on the proxy server. 1049 * port is the port to connect to on the proxy server.
1074 * lookup is 1 if the proxy should perform all DNS lookups, otherwise 0 or omitted. 1050 * lookup is 1 if the proxy should perform all DNS lookups, otherwise 0 or omitted.
1075 */ 1051 */
1076EAPI void ecore_con_socks_apply_always(Ecore_Con_Socks *ecs); 1052ECORE_CON_API void ecore_con_socks_apply_always(Ecore_Con_Socks *ecs);
1077 1053
1078/** 1054/**
1079 * @} 1055 * @}
@@ -1178,7 +1154,7 @@ EAPI void ecore_con_socks_apply_always(Ecore_Con_Socks *ecs);
1178 * 1154 *
1179 * @since 1.19 1155 * @since 1.19
1180 */ 1156 */
1181EAPI char *ecore_con_local_path_new(Eina_Bool is_system, const char *name, int port) EINA_WARN_UNUSED_RESULT EINA_MALLOC EINA_ARG_NONNULL(2); 1157ECORE_CON_API char *ecore_con_local_path_new(Eina_Bool is_system, const char *name, int port) EINA_WARN_UNUSED_RESULT EINA_MALLOC EINA_ARG_NONNULL(2);
1182 1158
1183/** 1159/**
1184 * @brief Creates a server to listen for connections. 1160 * @brief Creates a server to listen for connections.
@@ -1222,7 +1198,7 @@ EAPI char *ecore_con_local_path_new(Eina_Bool is_system, const char *name, int p
1222 * #EFL_NET_SERVER_SIMPLE_CLASS. 1198 * #EFL_NET_SERVER_SIMPLE_CLASS.
1223 * See @li @ref efl_net_server_simple_example.c 1199 * See @li @ref efl_net_server_simple_example.c
1224 */ 1200 */
1225EAPI Ecore_Con_Server *ecore_con_server_add(Ecore_Con_Type type, 1201ECORE_CON_API Ecore_Con_Server *ecore_con_server_add(Ecore_Con_Type type,
1226 const char *name, int port, 1202 const char *name, int port,
1227 const void *data); 1203 const void *data);
1228 1204
@@ -1278,7 +1254,7 @@ EAPI Ecore_Con_Server *ecore_con_server_add(Ecore_Con_Type type,
1278 * #EFL_NET_DIALER_SIMPLE_CLASS. 1254 * #EFL_NET_DIALER_SIMPLE_CLASS.
1279 * See @li @ref efl_net_dialer_simple_example.c 1255 * See @li @ref efl_net_dialer_simple_example.c
1280 */ 1256 */
1281EAPI Ecore_Con_Server *ecore_con_server_connect(Ecore_Con_Type type, 1257ECORE_CON_API Ecore_Con_Server *ecore_con_server_connect(Ecore_Con_Type type,
1282 const char *name, int port, 1258 const char *name, int port,
1283 const void *data); 1259 const void *data);
1284/** 1260/**
@@ -1291,7 +1267,7 @@ EAPI Ecore_Con_Server *ecore_con_server_connect(Ecore_Con_Type type,
1291 * 1267 *
1292 * @see ecore_con_server_add, ecore_con_server_connect 1268 * @see ecore_con_server_add, ecore_con_server_connect
1293 */ 1269 */
1294EAPI void * ecore_con_server_del(Ecore_Con_Server *svr); 1270ECORE_CON_API void * ecore_con_server_del(Ecore_Con_Server *svr);
1295 1271
1296/** 1272/**
1297 * @brief Retrieves the name of server. 1273 * @brief Retrieves the name of server.
@@ -1303,7 +1279,7 @@ EAPI void * ecore_con_server_del(Ecore_Con_Server *svr);
1303 * 1279 *
1304 * @ingroup Efl_Network_Server 1280 * @ingroup Efl_Network_Server
1305 */ 1281 */
1306EAPI const char *ecore_con_server_name_get(const Ecore_Con_Server *svr); 1282ECORE_CON_API const char *ecore_con_server_name_get(const Ecore_Con_Server *svr);
1307 1283
1308/** 1284/**
1309 * @brief Retrieves the data associated with the given server. 1285 * @brief Retrieves the data associated with the given server.
@@ -1313,7 +1289,7 @@ EAPI const char *ecore_con_server_name_get(const Ecore_Con_Server *svr);
1313 * 1289 *
1314 * @see ecore_con_server_data_set() 1290 * @see ecore_con_server_data_set()
1315 */ 1291 */
1316EAPI void * ecore_con_server_data_get(Ecore_Con_Server *svr); 1292ECORE_CON_API void * ecore_con_server_data_get(Ecore_Con_Server *svr);
1317/** 1293/**
1318 * @brief Sets the data associated with the given server. 1294 * @brief Sets the data associated with the given server.
1319 * 1295 *
@@ -1323,7 +1299,7 @@ EAPI void * ecore_con_server_data_get(Ecore_Con_Server *svr);
1323 * 1299 *
1324 * @see ecore_con_server_data_get() 1300 * @see ecore_con_server_data_get()
1325 */ 1301 */
1326EAPI void * ecore_con_server_data_set(Ecore_Con_Server *svr, 1302ECORE_CON_API void * ecore_con_server_data_set(Ecore_Con_Server *svr,
1327 void *data); 1303 void *data);
1328/** 1304/**
1329 * @brief Retrieves whether the given server is currently connected. 1305 * @brief Retrieves whether the given server is currently connected.
@@ -1331,7 +1307,7 @@ EAPI void * ecore_con_server_data_set(Ecore_Con_Server *svr,
1331 * @param svr The given server. 1307 * @param svr The given server.
1332 * @return @c EINA_TRUE if the server is connected, @c EINA_FALSE otherwise. 1308 * @return @c EINA_TRUE if the server is connected, @c EINA_FALSE otherwise.
1333 */ 1309 */
1334EAPI Eina_Bool ecore_con_server_connected_get(const Ecore_Con_Server *svr); 1310ECORE_CON_API Eina_Bool ecore_con_server_connected_get(const Ecore_Con_Server *svr);
1335 1311
1336/** 1312/**
1337 * @brief Retrieves the server port in use. 1313 * @brief Retrieves the server port in use.
@@ -1341,7 +1317,7 @@ EAPI Eina_Bool ecore_con_server_connected_get(const Ecore_Con_Server *sv
1341 * 1317 *
1342 * The port where the server is listening for connections. 1318 * The port where the server is listening for connections.
1343 */ 1319 */
1344EAPI int ecore_con_server_port_get(const Ecore_Con_Server *svr); 1320ECORE_CON_API int ecore_con_server_port_get(const Ecore_Con_Server *svr);
1345/** 1321/**
1346 * @brief Checks how long a server has been connected. 1322 * @brief Checks how long a server has been connected.
1347 * 1323 *
@@ -1352,7 +1328,7 @@ EAPI int ecore_con_server_port_get(const Ecore_Con_Server *svr);
1352 * This function is used to find out the time that has been elapsed since 1328 * This function is used to find out the time that has been elapsed since
1353 * ecore_con_server_add() succeeded. 1329 * ecore_con_server_add() succeeded.
1354 */ 1330 */
1355EAPI double ecore_con_server_uptime_get(const Ecore_Con_Server *svr); 1331ECORE_CON_API double ecore_con_server_uptime_get(const Ecore_Con_Server *svr);
1356/** 1332/**
1357 * @brief Sends the given data to the given server. 1333 * @brief Sends the given data to the given server.
1358 * 1334 *
@@ -1370,7 +1346,7 @@ EAPI double ecore_con_server_uptime_get(const Ecore_Con_Server *svr);
1370 * @see ecore_con_client_send() 1346 * @see ecore_con_client_send()
1371 * @see ecore_con_server_flush() 1347 * @see ecore_con_server_flush()
1372 */ 1348 */
1373EAPI int ecore_con_server_send(Ecore_Con_Server *svr, 1349ECORE_CON_API int ecore_con_server_send(Ecore_Con_Server *svr,
1374 const void *data, 1350 const void *data,
1375 int size); 1351 int size);
1376/** 1352/**
@@ -1396,7 +1372,7 @@ EAPI int ecore_con_server_send(Ecore_Con_Server *svr,
1396 * clients have already connected and will not be affected by this call. 1372 * clients have already connected and will not be affected by this call.
1397 * Only clients subsequently trying to connect will be affected. 1373 * Only clients subsequently trying to connect will be affected.
1398 */ 1374 */
1399EAPI void ecore_con_server_client_limit_set(Ecore_Con_Server *svr, 1375ECORE_CON_API void ecore_con_server_client_limit_set(Ecore_Con_Server *svr,
1400 int client_limit, 1376 int client_limit,
1401 char reject_excess_clients); 1377 char reject_excess_clients);
1402 1378
@@ -1412,7 +1388,7 @@ EAPI void ecore_con_server_client_limit_set(Ecore_Con_Server *svr,
1412 * @return The list of clients on this server. 1388 * @return The list of clients on this server.
1413 * 1389 *
1414 */ 1390 */
1415EAPI const Eina_List *ecore_con_server_clients_get(const Ecore_Con_Server *svr); 1391ECORE_CON_API const Eina_List *ecore_con_server_clients_get(const Ecore_Con_Server *svr);
1416 1392
1417/** 1393/**
1418 * @brief Gets the IP address of a server that has been connected to. 1394 * @brief Gets the IP address of a server that has been connected to.
@@ -1424,7 +1400,7 @@ EAPI const Eina_List *ecore_con_server_clients_get(const Ecore_Con_Server *svr);
1424 * deletion for the @p svr object. If no IP is known @c NULL is 1400 * deletion for the @p svr object. If no IP is known @c NULL is
1425 * returned. 1401 * returned.
1426 */ 1402 */
1427EAPI const char * ecore_con_server_ip_get(const Ecore_Con_Server *svr); 1403ECORE_CON_API const char * ecore_con_server_ip_get(const Ecore_Con_Server *svr);
1428/** 1404/**
1429 * @brief Flushes all pending data to the given server. 1405 * @brief Flushes all pending data to the given server.
1430 * 1406 *
@@ -1435,7 +1411,7 @@ EAPI const char * ecore_con_server_ip_get(const Ecore_Con_Server *svr);
1435 * @see ecore_con_server_send() 1411 * @see ecore_con_server_send()
1436 * @see ecore_con_client_flush() 1412 * @see ecore_con_client_flush()
1437 */ 1413 */
1438EAPI void ecore_con_server_flush(Ecore_Con_Server *svr); 1414ECORE_CON_API void ecore_con_server_flush(Ecore_Con_Server *svr);
1439/** 1415/**
1440 * @brief Sets the default time after which an inactive client will be disconnected. 1416 * @brief Sets the default time after which an inactive client will be disconnected.
1441 * 1417 *
@@ -1454,7 +1430,7 @@ EAPI void ecore_con_server_flush(Ecore_Con_Server *svr);
1454 * @see ecore_con_server_timeout_get() 1430 * @see ecore_con_server_timeout_get()
1455 * @see ecore_con_client_timeout_set() 1431 * @see ecore_con_client_timeout_set()
1456 */ 1432 */
1457EAPI void ecore_con_server_timeout_set(Ecore_Con_Server *svr, double timeout); 1433ECORE_CON_API void ecore_con_server_timeout_set(Ecore_Con_Server *svr, double timeout);
1458/** 1434/**
1459 * @brief Gets the default time after which an inactive client will be disconnected. 1435 * @brief Gets the default time after which an inactive client will be disconnected.
1460 * 1436 *
@@ -1467,7 +1443,7 @@ EAPI void ecore_con_server_timeout_set(Ecore_Con_Server *svr, doubl
1467 * @see ecore_con_server_timeout_set() 1443 * @see ecore_con_server_timeout_set()
1468 * @see ecore_con_client_timeout_get() 1444 * @see ecore_con_client_timeout_get()
1469 */ 1445 */
1470EAPI double ecore_con_server_timeout_get(const Ecore_Con_Server *svr); 1446ECORE_CON_API double ecore_con_server_timeout_get(const Ecore_Con_Server *svr);
1471 1447
1472/** 1448/**
1473 * @brief Gets the fd that the server is connected to. 1449 * @brief Gets the fd that the server is connected to.
@@ -1481,7 +1457,7 @@ EAPI double ecore_con_server_timeout_get(const Ecore_Con_Server *svr)
1481 * @warning Seriously. Don't use this unless you know what you are doing. 1457 * @warning Seriously. Don't use this unless you know what you are doing.
1482 * @since 1.1 1458 * @since 1.1
1483 */ 1459 */
1484EAPI int ecore_con_server_fd_get(const Ecore_Con_Server *svr); 1460ECORE_CON_API int ecore_con_server_fd_get(const Ecore_Con_Server *svr);
1485 1461
1486/** 1462/**
1487 * @brief Gets the fd that the client is connected to. 1463 * @brief Gets the fd that the client is connected to.
@@ -1493,7 +1469,7 @@ EAPI int ecore_con_server_fd_get(const Ecore_Con_Server *svr);
1493 * It should not be tampered with unless you REALLY know what you are doing. 1469 * It should not be tampered with unless you REALLY know what you are doing.
1494 * @since 1.1 1470 * @since 1.1
1495 */ 1471 */
1496EAPI int ecore_con_client_fd_get(const Ecore_Con_Client *cl); 1472ECORE_CON_API int ecore_con_client_fd_get(const Ecore_Con_Client *cl);
1497/** 1473/**
1498 * @} 1474 * @}
1499 */ 1475 */
@@ -1535,7 +1511,7 @@ EAPI int ecore_con_client_fd_get(const Ecore_Con_Client *cl);
1535 * @see ecore_con_server_send() 1511 * @see ecore_con_server_send()
1536 * @see ecore_con_client_flush() 1512 * @see ecore_con_client_flush()
1537 */ 1513 */
1538EAPI int ecore_con_client_send(Ecore_Con_Client *cl, 1514ECORE_CON_API int ecore_con_client_send(Ecore_Con_Client *cl,
1539 const void *data, 1515 const void *data,
1540 int size); 1516 int size);
1541/** 1517/**
@@ -1544,14 +1520,14 @@ EAPI int ecore_con_client_send(Ecore_Con_Client *cl,
1544 * @param cl The given client. 1520 * @param cl The given client.
1545 * @return Data associated with the client. 1521 * @return Data associated with the client.
1546 */ 1522 */
1547EAPI void * ecore_con_client_del(Ecore_Con_Client *cl); 1523ECORE_CON_API void * ecore_con_client_del(Ecore_Con_Client *cl);
1548/** 1524/**
1549 * @brief Sets the data associated with the given client to @p data. 1525 * @brief Sets the data associated with the given client to @p data.
1550 * 1526 *
1551 * @param cl The given client. 1527 * @param cl The given client.
1552 * @param data What to set the data to. 1528 * @param data What to set the data to.
1553 */ 1529 */
1554EAPI void ecore_con_client_data_set(Ecore_Con_Client *cl, 1530ECORE_CON_API void ecore_con_client_data_set(Ecore_Con_Client *cl,
1555 const void *data); 1531 const void *data);
1556/** 1532/**
1557 * @brief Retrieves the data associated with the given client. 1533 * @brief Retrieves the data associated with the given client.
@@ -1559,7 +1535,7 @@ EAPI void ecore_con_client_data_set(Ecore_Con_Client *cl,
1559 * @param cl The given client. 1535 * @param cl The given client.
1560 * @return The data associated with @p cl. 1536 * @return The data associated with @p cl.
1561 */ 1537 */
1562EAPI void * ecore_con_client_data_get(Ecore_Con_Client *cl); 1538ECORE_CON_API void * ecore_con_client_data_get(Ecore_Con_Client *cl);
1563 1539
1564/** 1540/**
1565 * @brief Gets the IP address of a client that has connected. 1541 * @brief Gets the IP address of a client that has connected.
@@ -1571,7 +1547,7 @@ EAPI void * ecore_con_client_data_get(Ecore_Con_Client *cl);
1571 * The returned string should not be modified, freed or trusted to stay valid 1547 * The returned string should not be modified, freed or trusted to stay valid
1572 * after deletion for the @p cl object. If no IP is known @c NULL is returned. 1548 * after deletion for the @p cl object. If no IP is known @c NULL is returned.
1573 */ 1549 */
1574EAPI const char * ecore_con_client_ip_get(const Ecore_Con_Client *cl); 1550ECORE_CON_API const char * ecore_con_client_ip_get(const Ecore_Con_Client *cl);
1575/** 1551/**
1576 * @brief Flushes all pending data to the given client. 1552 * @brief Flushes all pending data to the given client.
1577 * 1553 *
@@ -1582,7 +1558,7 @@ EAPI const char * ecore_con_client_ip_get(const Ecore_Con_Client *cl);
1582 * @see ecore_con_client_send() 1558 * @see ecore_con_client_send()
1583 * @see ecore_con_server_flush() 1559 * @see ecore_con_server_flush()
1584 */ 1560 */
1585EAPI void ecore_con_client_flush(Ecore_Con_Client *cl); 1561ECORE_CON_API void ecore_con_client_flush(Ecore_Con_Client *cl);
1586/** 1562/**
1587 * @brief Checks how long a client has been connected. 1563 * @brief Checks how long a client has been connected.
1588 * 1564 *
@@ -1592,7 +1568,7 @@ EAPI void ecore_con_client_flush(Ecore_Con_Client *cl);
1592 * 1568 *
1593 * This function is used to find out how long a client has been connected for. 1569 * This function is used to find out how long a client has been connected for.
1594 */ 1570 */
1595EAPI double ecore_con_client_uptime_get(const Ecore_Con_Client *cl); 1571ECORE_CON_API double ecore_con_client_uptime_get(const Ecore_Con_Client *cl);
1596/** 1572/**
1597 * @brief Gets the default time after which the client will be disconnected when 1573 * @brief Gets the default time after which the client will be disconnected when
1598 * inactive. 1574 * inactive.
@@ -1605,7 +1581,7 @@ EAPI double ecore_con_client_uptime_get(const Ecore_Con_Client *cl);
1605 * 1581 *
1606 * @see ecore_con_client_timeout_set() 1582 * @see ecore_con_client_timeout_set()
1607 */ 1583 */
1608EAPI double ecore_con_client_timeout_get(const Ecore_Con_Client *cl); 1584ECORE_CON_API double ecore_con_client_timeout_get(const Ecore_Con_Client *cl);
1609/** 1585/**
1610 * @brief Sets the time after which the client will be disconnected when inactive. 1586 * @brief Sets the time after which the client will be disconnected when inactive.
1611 * 1587 *
@@ -1625,14 +1601,14 @@ EAPI double ecore_con_client_timeout_get(const Ecore_Con_Client *cl);
1625 * @see ecore_con_client_timeout_get() 1601 * @see ecore_con_client_timeout_get()
1626 * @see ecore_con_server_timeout_set() 1602 * @see ecore_con_server_timeout_set()
1627 */ 1603 */
1628EAPI void ecore_con_client_timeout_set(Ecore_Con_Client *cl, double timeout); 1604ECORE_CON_API void ecore_con_client_timeout_set(Ecore_Con_Client *cl, double timeout);
1629/** 1605/**
1630 * @brief Returns whether the client is still connected. 1606 * @brief Returns whether the client is still connected.
1631 * 1607 *
1632 * @param cl The given client. 1608 * @param cl The given client.
1633 * @return @c EINA_TRUE if connected, @c EINA_FALSE otherwise. 1609 * @return @c EINA_TRUE if connected, @c EINA_FALSE otherwise.
1634 */ 1610 */
1635EAPI Eina_Bool ecore_con_client_connected_get(const Ecore_Con_Client *cl); 1611ECORE_CON_API Eina_Bool ecore_con_client_connected_get(const Ecore_Con_Client *cl);
1636/** 1612/**
1637 * @brief Returns the port that the client has connected to. 1613 * @brief Returns the port that the client has connected to.
1638 * 1614 *
@@ -1640,7 +1616,7 @@ EAPI Eina_Bool ecore_con_client_connected_get(const Ecore_Con_Client *cl
1640 * @return The port that @p cl has connected to, or @c -1 on error 1616 * @return The port that @p cl has connected to, or @c -1 on error
1641 * Use this function to return the port on which a given client has connected. 1617 * Use this function to return the port on which a given client has connected.
1642 */ 1618 */
1643EAPI int ecore_con_client_port_get(const Ecore_Con_Client *cl); 1619ECORE_CON_API int ecore_con_client_port_get(const Ecore_Con_Client *cl);
1644 1620
1645/** 1621/**
1646 * @brief The server the client is connected to. 1622 * @brief The server the client is connected to.
@@ -1648,7 +1624,7 @@ EAPI int ecore_con_client_port_get(const Ecore_Con_Client *cl);
1648 * @param cl The client 1624 * @param cl The client
1649 * @return The server the client is connected to. 1625 * @return The server the client is connected to.
1650 */ 1626 */
1651EAPI Ecore_Con_Server *ecore_con_client_server_get(const Ecore_Con_Client *cl); 1627ECORE_CON_API Ecore_Con_Server *ecore_con_client_server_get(const Ecore_Con_Client *cl);
1652 1628
1653/** 1629/**
1654 * @} 1630 * @}
@@ -1773,7 +1749,7 @@ typedef enum _Ecore_Con_Url_Http_Version
1773 * @since 1.2 1749 * @since 1.2
1774 * @see ecore_con_url_pipeline_get() 1750 * @see ecore_con_url_pipeline_get()
1775 */ 1751 */
1776EAPI Eina_Bool ecore_con_url_http_version_set(Ecore_Con_Url *url_con, Ecore_Con_Url_Http_Version version); 1752ECORE_CON_API Eina_Bool ecore_con_url_http_version_set(Ecore_Con_Url *url_con, Ecore_Con_Url_Http_Version version);
1777 1753
1778/** 1754/**
1779 * @brief Initializes the Ecore_Con_Url library. 1755 * @brief Initializes the Ecore_Con_Url library.
@@ -1783,7 +1759,7 @@ EAPI Eina_Bool ecore_con_url_http_version_set(Ecore_Con_Url *url_con, Ec
1783 * @note This function doesn't call ecore_con_init(). You still need to call it 1759 * @note This function doesn't call ecore_con_init(). You still need to call it
1784 * explicitly before calling this one. 1760 * explicitly before calling this one.
1785 */ 1761 */
1786EAPI int ecore_con_url_init(void); 1762ECORE_CON_API int ecore_con_url_init(void);
1787 1763
1788/** 1764/**
1789 * @brief Shuts down the Ecore_Con_Url library. 1765 * @brief Shuts down the Ecore_Con_Url library.
@@ -1792,7 +1768,7 @@ EAPI int ecore_con_url_init(void);
1792 * @note This function doesn't call ecore_con_shutdown(). You still need to call 1768 * @note This function doesn't call ecore_con_shutdown(). You still need to call
1793 * it explicitly after calling this one. 1769 * it explicitly after calling this one.
1794 */ 1770 */
1795EAPI int ecore_con_url_shutdown(void); 1771ECORE_CON_API int ecore_con_url_shutdown(void);
1796 1772
1797/** 1773/**
1798 * @brief Enables or disable HTTP 1.1 pipelining. 1774 * @brief Enables or disable HTTP 1.1 pipelining.
@@ -1809,14 +1785,14 @@ EAPI int ecore_con_url_shutdown(void);
1809 * 1785 *
1810 * @see ecore_con_url_pipeline_get() 1786 * @see ecore_con_url_pipeline_get()
1811 */ 1787 */
1812EAPI void ecore_con_url_pipeline_set(Eina_Bool enable); 1788ECORE_CON_API void ecore_con_url_pipeline_set(Eina_Bool enable);
1813/** 1789/**
1814 * @brief Is HTTP 1.1 pipelining enable ? 1790 * @brief Is HTTP 1.1 pipelining enable ?
1815 * @return @c EINA_TRUE if it is enable. 1791 * @return @c EINA_TRUE if it is enable.
1816 * 1792 *
1817 * @see ecore_con_url_pipeline_set() 1793 * @see ecore_con_url_pipeline_set()
1818 */ 1794 */
1819EAPI Eina_Bool ecore_con_url_pipeline_get(void); 1795ECORE_CON_API Eina_Bool ecore_con_url_pipeline_get(void);
1820 1796
1821/** 1797/**
1822 * @brief Creates and initializes a new Ecore_Con_Url connection object. 1798 * @brief Creates and initializes a new Ecore_Con_Url connection object.
@@ -1832,7 +1808,7 @@ EAPI Eina_Bool ecore_con_url_pipeline_get(void);
1832 * @see ecore_con_url_custom_new() 1808 * @see ecore_con_url_custom_new()
1833 * @see ecore_con_url_url_set() 1809 * @see ecore_con_url_url_set()
1834 */ 1810 */
1835EAPI Ecore_Con_Url * ecore_con_url_new(const char *url); 1811ECORE_CON_API Ecore_Con_Url * ecore_con_url_new(const char *url);
1836 1812
1837 1813
1838/** 1814/**
@@ -1842,7 +1818,7 @@ EAPI Ecore_Con_Url * ecore_con_url_new(const char *url);
1842 * @param url the new URL. 1818 * @param url the new URL.
1843 * @return @c EINA_TRUE on success, @c EINA_FALSE on errors. 1819 * @return @c EINA_TRUE on success, @c EINA_FALSE on errors.
1844 */ 1820 */
1845EAPI Eina_Bool ecore_con_url_url_set(Ecore_Con_Url *url_con, 1821ECORE_CON_API Eina_Bool ecore_con_url_url_set(Ecore_Con_Url *url_con,
1846 const char *url); 1822 const char *url);
1847 1823
1848/** 1824/**
@@ -1851,7 +1827,7 @@ EAPI Eina_Bool ecore_con_url_url_set(Ecore_Con_Url *url_con,
1851 * @param url_con the Connection object to retrieve URL. 1827 * @param url_con the Connection object to retrieve URL.
1852 * @return @c NULL on error, read-only URL string on success. 1828 * @return @c NULL on error, read-only URL string on success.
1853 */ 1829 */
1854EAPI const char *ecore_con_url_url_get(Ecore_Con_Url *url_con); 1830ECORE_CON_API const char *ecore_con_url_url_get(Ecore_Con_Url *url_con);
1855 1831
1856/** 1832/**
1857 * @brief Creates a custom connection object. 1833 * @brief Creates a custom connection object.
@@ -1868,7 +1844,7 @@ EAPI const char *ecore_con_url_url_get(Ecore_Con_Url *url_con);
1868 * @see ecore_con_url_new() 1844 * @see ecore_con_url_new()
1869 * @see ecore_con_url_url_set() 1845 * @see ecore_con_url_url_set()
1870 */ 1846 */
1871EAPI Ecore_Con_Url * ecore_con_url_custom_new(const char *url, 1847ECORE_CON_API Ecore_Con_Url * ecore_con_url_custom_new(const char *url,
1872 const char *custom_request); 1848 const char *custom_request);
1873/** 1849/**
1874 * @brief Destroys an Ecore_Con_Url connection object. 1850 * @brief Destroys an Ecore_Con_Url connection object.
@@ -1877,7 +1853,7 @@ EAPI Ecore_Con_Url * ecore_con_url_custom_new(const char *url,
1877 * 1853 *
1878 * @see ecore_con_url_new() 1854 * @see ecore_con_url_new()
1879 */ 1855 */
1880EAPI void ecore_con_url_free(Ecore_Con_Url *url_con); 1856ECORE_CON_API void ecore_con_url_free(Ecore_Con_Url *url_con);
1881 1857
1882/** 1858/**
1883 * @brief Associates data with a connection object. 1859 * @brief Associates data with a connection object.
@@ -1890,7 +1866,7 @@ EAPI void ecore_con_url_free(Ecore_Con_Url *url_con);
1890 * 1866 *
1891 * @see ecore_con_url_data_get() 1867 * @see ecore_con_url_data_get()
1892 */ 1868 */
1893EAPI void ecore_con_url_data_set(Ecore_Con_Url *url_con, 1869ECORE_CON_API void ecore_con_url_data_set(Ecore_Con_Url *url_con,
1894 void *data); 1870 void *data);
1895/** 1871/**
1896 * @brief Retrieves data associated with a Ecore_Con_Url connection object. 1872 * @brief Retrieves data associated with a Ecore_Con_Url connection object.
@@ -1904,7 +1880,7 @@ EAPI void ecore_con_url_data_set(Ecore_Con_Url *url_con,
1904 * 1880 *
1905 * @see ecore_con_url_data_set() 1881 * @see ecore_con_url_data_set()
1906 */ 1882 */
1907EAPI void * ecore_con_url_data_get(Ecore_Con_Url *url_con); 1883ECORE_CON_API void * ecore_con_url_data_get(Ecore_Con_Url *url_con);
1908/** 1884/**
1909 * @brief Adds an additional header to the request connection object. 1885 * @brief Adds an additional header to the request connection object.
1910 * 1886 *
@@ -1922,7 +1898,7 @@ EAPI void * ecore_con_url_data_get(Ecore_Con_Url *url_con);
1922 * @see ecore_con_url_post() 1898 * @see ecore_con_url_post()
1923 * @see ecore_con_url_additional_headers_clear() 1899 * @see ecore_con_url_additional_headers_clear()
1924 */ 1900 */
1925EAPI void ecore_con_url_additional_header_add(Ecore_Con_Url *url_con, 1901ECORE_CON_API void ecore_con_url_additional_header_add(Ecore_Con_Url *url_con,
1926 const char *key, 1902 const char *key,
1927 const char *value); 1903 const char *value);
1928/** 1904/**
@@ -1937,7 +1913,7 @@ EAPI void ecore_con_url_additional_header_add(Ecore_Con_Url *url_co
1937 * @see ecore_con_url_get() 1913 * @see ecore_con_url_get()
1938 * @see ecore_con_url_post() 1914 * @see ecore_con_url_post()
1939 */ 1915 */
1940EAPI void ecore_con_url_additional_headers_clear(Ecore_Con_Url *url_con); 1916ECORE_CON_API void ecore_con_url_additional_headers_clear(Ecore_Con_Url *url_con);
1941/** 1917/**
1942 * @brief Retrieves headers from last request sent. 1918 * @brief Retrieves headers from last request sent.
1943 * 1919 *
@@ -1949,7 +1925,7 @@ EAPI void ecore_con_url_additional_headers_clear(Ecore_Con_Url *url
1949 * 1925 *
1950 * @return List of response headers. This list must not be modified by the user. 1926 * @return List of response headers. This list must not be modified by the user.
1951 */ 1927 */
1952EAPI const Eina_List * ecore_con_url_response_headers_get(Ecore_Con_Url *url_con); 1928ECORE_CON_API const Eina_List * ecore_con_url_response_headers_get(Ecore_Con_Url *url_con);
1953/** 1929/**
1954 * @brief Sets up a file for receiving response data. 1930 * @brief Sets up a file for receiving response data.
1955 * 1931 *
@@ -1964,7 +1940,7 @@ EAPI const Eina_List * ecore_con_url_response_headers_get(Ecore_Con_Url *url_con
1964 * This call can be used to easily setup a file where the downloaded data will 1940 * This call can be used to easily setup a file where the downloaded data will
1965 * be saved. 1941 * be saved.
1966 */ 1942 */
1967EAPI void ecore_con_url_fd_set(Ecore_Con_Url *url_con, int fd); 1943ECORE_CON_API void ecore_con_url_fd_set(Ecore_Con_Url *url_con, int fd);
1968/** 1944/**
1969 * @brief Retrieves the number of bytes received. 1945 * @brief Retrieves the number of bytes received.
1970 * 1946 *
@@ -1978,7 +1954,7 @@ EAPI void ecore_con_url_fd_set(Ecore_Con_Url *url_con, int fd);
1978 * @see ecore_con_url_get() 1954 * @see ecore_con_url_get()
1979 * @see ecore_con_url_post() 1955 * @see ecore_con_url_post()
1980 */ 1956 */
1981EAPI int ecore_con_url_received_bytes_get(Ecore_Con_Url *url_con); 1957ECORE_CON_API int ecore_con_url_received_bytes_get(Ecore_Con_Url *url_con);
1982/** 1958/**
1983 * @brief Sets url_con to use http auth, with given username and password, "safely" or not. 1959 * @brief Sets url_con to use http auth, with given username and password, "safely" or not.
1984 * 1960 *
@@ -1993,7 +1969,7 @@ EAPI int ecore_con_url_received_bytes_get(Ecore_Con_Url *url_con);
1993 * @attention Require libcurl >= 7.19.1 to work, otherwise will always return 1969 * @attention Require libcurl >= 7.19.1 to work, otherwise will always return
1994 * @c 0. 1970 * @c 0.
1995 */ 1971 */
1996EAPI Eina_Bool ecore_con_url_httpauth_set(Ecore_Con_Url *url_con, 1972ECORE_CON_API Eina_Bool ecore_con_url_httpauth_set(Ecore_Con_Url *url_con,
1997 const char *username, 1973 const char *username,
1998 const char *password, 1974 const char *password,
1999 Eina_Bool safe); 1975 Eina_Bool safe);
@@ -2017,7 +1993,7 @@ EAPI Eina_Bool ecore_con_url_httpauth_set(Ecore_Con_Url *url_con,
2017 * @see ecore_con_url_time() 1993 * @see ecore_con_url_time()
2018 * @see ecore_con_url_post() 1994 * @see ecore_con_url_post()
2019 */ 1995 */
2020EAPI Eina_Bool ecore_con_url_get(Ecore_Con_Url *url_con); 1996ECORE_CON_API Eina_Bool ecore_con_url_get(Ecore_Con_Url *url_con);
2021/** 1997/**
2022 * @brief Sends a HEAD request. 1998 * @brief Sends a HEAD request.
2023 * 1999 *
@@ -2037,7 +2013,7 @@ EAPI Eina_Bool ecore_con_url_get(Ecore_Con_Url *url_con);
2037 * @see ecore_con_url_post() 2013 * @see ecore_con_url_post()
2038 * @since 1.14 2014 * @since 1.14
2039 */ 2015 */
2040EAPI Eina_Bool ecore_con_url_head(Ecore_Con_Url *url_con); 2016ECORE_CON_API Eina_Bool ecore_con_url_head(Ecore_Con_Url *url_con);
2041/** 2017/**
2042 * @brief Sends a post request. 2018 * @brief Sends a post request.
2043 * 2019 *
@@ -2066,7 +2042,7 @@ EAPI Eina_Bool ecore_con_url_head(Ecore_Con_Url *url_con);
2066 * @see ecore_con_url_time() 2042 * @see ecore_con_url_time()
2067 * @see ecore_con_url_get() 2043 * @see ecore_con_url_get()
2068 */ 2044 */
2069EAPI Eina_Bool ecore_con_url_post(Ecore_Con_Url *url_con, 2045ECORE_CON_API Eina_Bool ecore_con_url_post(Ecore_Con_Url *url_con,
2070 const void *data, long length, 2046 const void *data, long length,
2071 const char *content_type); 2047 const char *content_type);
2072/** 2048/**
@@ -2084,7 +2060,7 @@ EAPI Eina_Bool ecore_con_url_post(Ecore_Con_Url *url_con,
2084 * @sa ecore_con_url_get() 2060 * @sa ecore_con_url_get()
2085 * @sa ecore_con_url_post() 2061 * @sa ecore_con_url_post()
2086 */ 2062 */
2087EAPI void ecore_con_url_time(Ecore_Con_Url *url_con, 2063ECORE_CON_API void ecore_con_url_time(Ecore_Con_Url *url_con,
2088 Ecore_Con_Url_Time time_condition, 2064 Ecore_Con_Url_Time time_condition,
2089 double timestamp); 2065 double timestamp);
2090 2066
@@ -2101,7 +2077,7 @@ EAPI void ecore_con_url_time(Ecore_Con_Url *url_con,
2101 * Upload @p filename to an ftp server set in @p url_con using @p user 2077 * Upload @p filename to an ftp server set in @p url_con using @p user
2102 * and @p pass to directory @p upload_dir 2078 * and @p pass to directory @p upload_dir
2103 */ 2079 */
2104EAPI Eina_Bool ecore_con_url_ftp_upload(Ecore_Con_Url *url_con, 2080ECORE_CON_API Eina_Bool ecore_con_url_ftp_upload(Ecore_Con_Url *url_con,
2105 const char *filename, 2081 const char *filename,
2106 const char *user, 2082 const char *user,
2107 const char *pass, 2083 const char *pass,
@@ -2116,14 +2092,14 @@ EAPI Eina_Bool ecore_con_url_ftp_upload(Ecore_Con_Url *url_con,
2116 * information about its operations, which is useful for 2092 * information about its operations, which is useful for
2117 * debugging. The verbose information will be sent to stderr. 2093 * debugging. The verbose information will be sent to stderr.
2118 */ 2094 */
2119EAPI void ecore_con_url_verbose_set(Ecore_Con_Url *url_con, 2095ECORE_CON_API void ecore_con_url_verbose_set(Ecore_Con_Url *url_con,
2120 Eina_Bool verbose); 2096 Eina_Bool verbose);
2121/** 2097/**
2122 * @brief Enables or disables EPSV extension. 2098 * @brief Enables or disables EPSV extension.
2123 * @param url_con The Ecore_Con_Url instance which will be acted upon. 2099 * @param url_con The Ecore_Con_Url instance which will be acted upon.
2124 * @param use_epsv Boolean to enable/disable the EPSV extension. 2100 * @param use_epsv Boolean to enable/disable the EPSV extension.
2125 */ 2101 */
2126EAPI void ecore_con_url_ftp_use_epsv_set(Ecore_Con_Url *url_con, 2102ECORE_CON_API void ecore_con_url_ftp_use_epsv_set(Ecore_Con_Url *url_con,
2127 Eina_Bool use_epsv); 2103 Eina_Bool use_epsv);
2128 2104
2129/** 2105/**
@@ -2138,7 +2114,7 @@ EAPI void ecore_con_url_ftp_use_epsv_set(Ecore_Con_Url *url_con,
2138 * @note Even though this function is called @c ecore_con_url_cookies_init(), 2114 * @note Even though this function is called @c ecore_con_url_cookies_init(),
2139 * there is no symmetrical shutdown operation. 2115 * there is no symmetrical shutdown operation.
2140 */ 2116 */
2141EAPI void ecore_con_url_cookies_init(Ecore_Con_Url *url_con); 2117ECORE_CON_API void ecore_con_url_cookies_init(Ecore_Con_Url *url_con);
2142/** 2118/**
2143 * @brief Controls whether session cookies from previous sessions shall be loaded. 2119 * @brief Controls whether session cookies from previous sessions shall be loaded.
2144 * 2120 *
@@ -2159,7 +2135,7 @@ EAPI void ecore_con_url_cookies_init(Ecore_Con_Url *url_con);
2159 * 2135 *
2160 * @see ecore_con_url_cookies_file_add() 2136 * @see ecore_con_url_cookies_file_add()
2161 */ 2137 */
2162EAPI void ecore_con_url_cookies_ignore_old_session_set(Ecore_Con_Url *url_con, 2138ECORE_CON_API void ecore_con_url_cookies_ignore_old_session_set(Ecore_Con_Url *url_con,
2163 Eina_Bool ignore); 2139 Eina_Bool ignore);
2164/** 2140/**
2165 * @brief Clears currently loaded cookies. 2141 * @brief Clears currently loaded cookies.
@@ -2183,7 +2159,7 @@ EAPI void ecore_con_url_cookies_ignore_old_session_set(Ecore_Con_Ur
2183 * @see ecore_con_url_cookies_session_clear() 2159 * @see ecore_con_url_cookies_session_clear()
2184 * @see ecore_con_url_cookies_ignore_old_session_set() 2160 * @see ecore_con_url_cookies_ignore_old_session_set()
2185 */ 2161 */
2186EAPI void ecore_con_url_cookies_clear(Ecore_Con_Url *url_con); 2162ECORE_CON_API void ecore_con_url_cookies_clear(Ecore_Con_Url *url_con);
2187/** 2163/**
2188 * @brief Clears currently loaded session cookies. 2164 * @brief Clears currently loaded session cookies.
2189 * 2165 *
@@ -2212,7 +2188,7 @@ EAPI void ecore_con_url_cookies_clear(Ecore_Con_Url *url_con);
2212 * @see ecore_con_url_cookies_clear() 2188 * @see ecore_con_url_cookies_clear()
2213 * @see ecore_con_url_cookies_ignore_old_session_set() 2189 * @see ecore_con_url_cookies_ignore_old_session_set()
2214 */ 2190 */
2215EAPI void ecore_con_url_cookies_session_clear(Ecore_Con_Url *url_con); 2191ECORE_CON_API void ecore_con_url_cookies_session_clear(Ecore_Con_Url *url_con);
2216/** 2192/**
2217 * @brief Adds a file to the list of files from which to load cookies. 2193 * @brief Adds a file to the list of files from which to load cookies.
2218 * 2194 *
@@ -2239,7 +2215,7 @@ EAPI void ecore_con_url_cookies_session_clear(Ecore_Con_Url *url_co
2239 * @see ecore_con_url_cookies_ignore_old_session_set() 2215 * @see ecore_con_url_cookies_ignore_old_session_set()
2240 * @see ecore_con_url_cookies_jar_file_set() 2216 * @see ecore_con_url_cookies_jar_file_set()
2241 */ 2217 */
2242EAPI void ecore_con_url_cookies_file_add(Ecore_Con_Url *url_con, 2218ECORE_CON_API void ecore_con_url_cookies_file_add(Ecore_Con_Url *url_con,
2243 const char * const file_name); 2219 const char * const file_name);
2244/** 2220/**
2245 * @brief Sets the name of the file to which all current cookies will be written when 2221 * @brief Sets the name of the file to which all current cookies will be written when
@@ -2262,7 +2238,7 @@ EAPI void ecore_con_url_cookies_file_add(Ecore_Con_Url *url_con,
2262 * 2238 *
2263 * @see ecore_con_url_cookies_jar_write() 2239 * @see ecore_con_url_cookies_jar_write()
2264 */ 2240 */
2265EAPI Eina_Bool ecore_con_url_cookies_jar_file_set(Ecore_Con_Url *url_con, 2241ECORE_CON_API Eina_Bool ecore_con_url_cookies_jar_file_set(Ecore_Con_Url *url_con,
2266 const char * const cookiejar_file); 2242 const char * const cookiejar_file);
2267/** 2243/**
2268 * @brief Writes all current cookies to the cookie jar immediately. 2244 * @brief Writes all current cookies to the cookie jar immediately.
@@ -2277,7 +2253,7 @@ EAPI Eina_Bool ecore_con_url_cookies_jar_file_set(Ecore_Con_Url *url_con
2277 * 2253 *
2278 * @see ecore_con_url_cookies_jar_file_set() 2254 * @see ecore_con_url_cookies_jar_file_set()
2279 */ 2255 */
2280EAPI void ecore_con_url_cookies_jar_write(Ecore_Con_Url *url_con); 2256ECORE_CON_API void ecore_con_url_cookies_jar_write(Ecore_Con_Url *url_con);
2281 2257
2282/** 2258/**
2283 * Toggle libcurl's verify peer's certificate option. 2259 * Toggle libcurl's verify peer's certificate option.
@@ -2291,7 +2267,7 @@ EAPI void ecore_con_url_cookies_jar_write(Ecore_Con_Url *url_con);
2291 * @param verify Whether or not libcurl will check peer's certificate. 2267 * @param verify Whether or not libcurl will check peer's certificate.
2292 * @since 1.1.0 2268 * @since 1.1.0
2293 */ 2269 */
2294EAPI void ecore_con_url_ssl_verify_peer_set(Ecore_Con_Url *url_con, 2270ECORE_CON_API void ecore_con_url_ssl_verify_peer_set(Ecore_Con_Url *url_con,
2295 Eina_Bool verify); 2271 Eina_Bool verify);
2296/** 2272/**
2297 * Set a custom CA to trust for SSL/TLS connections. 2273 * Set a custom CA to trust for SSL/TLS connections.
@@ -2311,7 +2287,7 @@ EAPI void ecore_con_url_ssl_verify_peer_set(Ecore_Con_Url *url_con,
2311 * @return @c 0 on success. When cURL is used, non-zero return values 2287 * @return @c 0 on success. When cURL is used, non-zero return values
2312 * are equal to cURL error codes. 2288 * are equal to cURL error codes.
2313 */ 2289 */
2314EAPI int ecore_con_url_ssl_ca_set(Ecore_Con_Url *url_con, 2290ECORE_CON_API int ecore_con_url_ssl_ca_set(Ecore_Con_Url *url_con,
2315 const char *ca_path); 2291 const char *ca_path);
2316 2292
2317/** 2293/**
@@ -2331,7 +2307,7 @@ EAPI int ecore_con_url_ssl_ca_set(Ecore_Con_Url *url_con,
2331 * @return @c EINA_TRUE on success, @c EINA_FALSE on error. 2307 * @return @c EINA_TRUE on success, @c EINA_FALSE on error.
2332 * @since 1.2 2308 * @since 1.2
2333 */ 2309 */
2334EAPI Eina_Bool ecore_con_url_proxy_set(Ecore_Con_Url *url_con, const char *proxy); 2310ECORE_CON_API Eina_Bool ecore_con_url_proxy_set(Ecore_Con_Url *url_con, const char *proxy);
2335 2311
2336/** 2312/**
2337 * @brief Sets zero terminated username to use for proxy. 2313 * @brief Sets zero terminated username to use for proxy.
@@ -2347,7 +2323,7 @@ EAPI Eina_Bool ecore_con_url_proxy_set(Ecore_Con_Url *url_con, const char *proxy
2347 * 2323 *
2348 * @since 1.2 2324 * @since 1.2
2349 */ 2325 */
2350EAPI Eina_Bool ecore_con_url_proxy_username_set(Ecore_Con_Url *url_con, const char *username); 2326ECORE_CON_API Eina_Bool ecore_con_url_proxy_username_set(Ecore_Con_Url *url_con, const char *username);
2351 2327
2352/** 2328/**
2353 * @brief Sets zero terminated password to use for proxy. 2329 * @brief Sets zero terminated password to use for proxy.
@@ -2363,7 +2339,7 @@ EAPI Eina_Bool ecore_con_url_proxy_username_set(Ecore_Con_Url *url_con, const ch
2363 * 2339 *
2364 * @since 1.2 2340 * @since 1.2
2365 */ 2341 */
2366EAPI Eina_Bool ecore_con_url_proxy_password_set(Ecore_Con_Url *url_con, const char *password); 2342ECORE_CON_API Eina_Bool ecore_con_url_proxy_password_set(Ecore_Con_Url *url_con, const char *password);
2367 2343
2368/** 2344/**
2369 * @brief Sets timeout in seconds. 2345 * @brief Sets timeout in seconds.
@@ -2380,7 +2356,7 @@ EAPI Eina_Bool ecore_con_url_proxy_password_set(Ecore_Con_Url *url_con, const ch
2380 * 2356 *
2381 * @since 1.2 2357 * @since 1.2
2382 */ 2358 */
2383EAPI void ecore_con_url_timeout_set(Ecore_Con_Url *url_con, double timeout); 2359ECORE_CON_API void ecore_con_url_timeout_set(Ecore_Con_Url *url_con, double timeout);
2384 2360
2385/** 2361/**
2386 * @brief Gets the returned HTTP STATUS code. 2362 * @brief Gets the returned HTTP STATUS code.
@@ -2391,7 +2367,7 @@ EAPI void ecore_con_url_timeout_set(Ecore_Con_Url *url_con, double timeout);
2391 * 2367 *
2392 * @since 1.2 2368 * @since 1.2
2393 */ 2369 */
2394EAPI int ecore_con_url_status_code_get(Ecore_Con_Url *url_con); 2370ECORE_CON_API int ecore_con_url_status_code_get(Ecore_Con_Url *url_con);
2395 2371
2396/** 2372/**
2397 * @brief Sets a maximum upload speed. 2373 * @brief Sets a maximum upload speed.
@@ -2399,7 +2375,7 @@ EAPI int ecore_con_url_status_code_get(Ecore_Con_Url *url_con);
2399 * @param url_obj Connection object 2375 * @param url_obj Connection object
2400 * @param max_speed Maximum upload speed, in bytes per second 2376 * @param max_speed Maximum upload speed, in bytes per second
2401 */ 2377 */
2402EAPI void ecore_con_url_limit_upload_speed(Ecore_Con_Url *url_obj, off_t max_speed); 2378ECORE_CON_API void ecore_con_url_limit_upload_speed(Ecore_Con_Url *url_obj, off_t max_speed);
2403 2379
2404/** 2380/**
2405 * @brief Sets a maximum download speed. 2381 * @brief Sets a maximum download speed.
@@ -2407,7 +2383,7 @@ EAPI void ecore_con_url_limit_upload_speed(Ecore_Con_Url *url_obj, off_t max_spe
2407 * @param url_obj Connection object 2383 * @param url_obj Connection object
2408 * @param max_speed Maximum download speed, in bytes per second 2384 * @param max_speed Maximum download speed, in bytes per second
2409 */ 2385 */
2410EAPI void ecore_con_url_limit_download_speed(Ecore_Con_Url *url_obj, off_t max_speed); 2386ECORE_CON_API void ecore_con_url_limit_download_speed(Ecore_Con_Url *url_obj, off_t max_speed);
2411 2387
2412/** 2388/**
2413 * @} 2389 * @}
@@ -2417,7 +2393,4 @@ EAPI void ecore_con_url_limit_download_speed(Ecore_Con_Url *url_obj, off_t max_s
2417} 2393}
2418#endif 2394#endif
2419 2395
2420#undef EAPI
2421#define EAPI
2422
2423#endif 2396#endif
diff --git a/src/lib/ecore_con/Ecore_Con_Eet.h b/src/lib/ecore_con/Ecore_Con_Eet.h
index 4a716752a3..013786062e 100644
--- a/src/lib/ecore_con/Ecore_Con_Eet.h
+++ b/src/lib/ecore_con/Ecore_Con_Eet.h
@@ -5,31 +5,7 @@
5#include <Ecore.h> 5#include <Ecore.h>
6#include <Ecore_Con.h> 6#include <Ecore_Con.h>
7 7
8#ifdef EAPI 8#include <ecore_con_api.h>
9# undef EAPI
10#endif
11
12#ifdef _WIN32
13# ifdef EFL_BUILD
14# ifdef DLL_EXPORT
15# define EAPI __declspec(dllexport)
16# else
17# define EAPI
18# endif
19# else
20# define EAPI __declspec(dllimport)
21# endif
22#else
23# ifdef __GNUC__
24# if __GNUC__ >= 4
25# define EAPI __attribute__ ((visibility("default")))
26# else
27# define EAPI
28# endif
29# else
30# define EAPI
31# endif
32#endif
33 9
34/** 10/**
35 * @defgroup Ecore_Con_Eet_Group Eet connection functions 11 * @defgroup Ecore_Con_Eet_Group Eet connection functions
@@ -100,7 +76,7 @@ typedef Eina_Bool (*Ecore_Con_Eet_Server_Cb)(void *data, Ecore_Con_Reply *reply,
100 * 76 *
101 * @return A new Ecore_Con_Eet server. 77 * @return A new Ecore_Con_Eet server.
102 */ 78 */
103EAPI Ecore_Con_Eet *ecore_con_eet_server_new(Ecore_Con_Server *server); 79ECORE_CON_API Ecore_Con_Eet *ecore_con_eet_server_new(Ecore_Con_Server *server);
104 80
105/** 81/**
106 * @brief Creates an Ecore_Con_Eet client. 82 * @brief Creates an Ecore_Con_Eet client.
@@ -114,7 +90,7 @@ EAPI Ecore_Con_Eet *ecore_con_eet_server_new(Ecore_Con_Server *server);
114 * 90 *
115 * @return A new Ecore_Con_Eet client. 91 * @return A new Ecore_Con_Eet client.
116 */ 92 */
117EAPI Ecore_Con_Eet *ecore_con_eet_client_new(Ecore_Con_Server *server); 93ECORE_CON_API Ecore_Con_Eet *ecore_con_eet_client_new(Ecore_Con_Server *server);
118 94
119/** 95/**
120 * @brief Frees an existing Ecore_Con_Eet object. 96 * @brief Frees an existing Ecore_Con_Eet object.
@@ -124,7 +100,7 @@ EAPI Ecore_Con_Eet *ecore_con_eet_client_new(Ecore_Con_Server *server);
124 * ecore_con_eet_client_new. 100 * ecore_con_eet_client_new.
125 * 101 *
126 */ 102 */
127EAPI void ecore_con_eet_server_free(Ecore_Con_Eet *server); 103ECORE_CON_API void ecore_con_eet_server_free(Ecore_Con_Eet *server);
128 104
129/** 105/**
130 * @brief Registers an @c Eet data descriptor on a Ecore_Con_Eet object. 106 * @brief Registers an @c Eet data descriptor on a Ecore_Con_Eet object.
@@ -135,7 +111,7 @@ EAPI void ecore_con_eet_server_free(Ecore_Con_Eet *server);
135 * in the Eet stream. 111 * in the Eet stream.
136 * 112 *
137 */ 113 */
138EAPI void ecore_con_eet_register(Ecore_Con_Eet *ece, const char *name, Eet_Data_Descriptor *edd); 114ECORE_CON_API void ecore_con_eet_register(Ecore_Con_Eet *ece, const char *name, Eet_Data_Descriptor *edd);
139 115
140/** 116/**
141 * @brief Registers a data callback on a Ecore_Con_Eet object. 117 * @brief Registers a data callback on a Ecore_Con_Eet object.
@@ -147,7 +123,7 @@ EAPI void ecore_con_eet_register(Ecore_Con_Eet *ece, const char *name, Eet_Data_
147 * @param data The data to pass to the callback. 123 * @param data The data to pass to the callback.
148 * 124 *
149 */ 125 */
150EAPI void ecore_con_eet_data_callback_add(Ecore_Con_Eet *ece, const char *name, Ecore_Con_Eet_Data_Cb func, const void *data); 126ECORE_CON_API void ecore_con_eet_data_callback_add(Ecore_Con_Eet *ece, const char *name, Ecore_Con_Eet_Data_Cb func, const void *data);
151 127
152/** 128/**
153 * @brief Removes a data callback on a Ecore_Con_Eet object. 129 * @brief Removes a data callback on a Ecore_Con_Eet object.
@@ -156,7 +132,7 @@ EAPI void ecore_con_eet_data_callback_add(Ecore_Con_Eet *ece, const char *name,
156 * @param name The name of the Eet stream to remove callback on. 132 * @param name The name of the Eet stream to remove callback on.
157 * 133 *
158 */ 134 */
159EAPI void ecore_con_eet_data_callback_del(Ecore_Con_Eet *ece, const char *name); 135ECORE_CON_API void ecore_con_eet_data_callback_del(Ecore_Con_Eet *ece, const char *name);
160 136
161/** 137/**
162 * @brief Registers a raw data callback on a Ecore_Con_Eet object. 138 * @brief Registers a raw data callback on a Ecore_Con_Eet object.
@@ -168,7 +144,7 @@ EAPI void ecore_con_eet_data_callback_del(Ecore_Con_Eet *ece, const char *name);
168 * @param data The data to pass to the callback. 144 * @param data The data to pass to the callback.
169 * 145 *
170 */ 146 */
171EAPI void ecore_con_eet_raw_data_callback_add(Ecore_Con_Eet *ece, const char *name, Ecore_Con_Eet_Raw_Data_Cb func, const void *data); 147ECORE_CON_API void ecore_con_eet_raw_data_callback_add(Ecore_Con_Eet *ece, const char *name, Ecore_Con_Eet_Raw_Data_Cb func, const void *data);
172 148
173/** 149/**
174 * @brief Removes a raw data callback on a Ecore_Con_Eet object. 150 * @brief Removes a raw data callback on a Ecore_Con_Eet object.
@@ -177,7 +153,7 @@ EAPI void ecore_con_eet_raw_data_callback_add(Ecore_Con_Eet *ece, const char *na
177 * @param name The name of the raw Eet stream to remove callback on. 153 * @param name The name of the raw Eet stream to remove callback on.
178 * 154 *
179 */ 155 */
180EAPI void ecore_con_eet_raw_data_callback_del(Ecore_Con_Eet *ece, const char *name); 156ECORE_CON_API void ecore_con_eet_raw_data_callback_del(Ecore_Con_Eet *ece, const char *name);
181 157
182/** 158/**
183 * @brief Registers a client connect callback on a Ecore_Con_Eet object. 159 * @brief Registers a client connect callback on a Ecore_Con_Eet object.
@@ -189,7 +165,7 @@ EAPI void ecore_con_eet_raw_data_callback_del(Ecore_Con_Eet *ece, const char *na
189 * @param func The function to call as a callback. 165 * @param func The function to call as a callback.
190 * @param data The data to pass to the callback. 166 * @param data The data to pass to the callback.
191 */ 167 */
192EAPI void ecore_con_eet_client_connect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data); 168ECORE_CON_API void ecore_con_eet_client_connect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data);
193 169
194/** 170/**
195 * @brief Removes a client connect callback on a Ecore_Con_Eet object. 171 * @brief Removes a client connect callback on a Ecore_Con_Eet object.
@@ -198,7 +174,7 @@ EAPI void ecore_con_eet_client_connect_callback_add(Ecore_Con_Eet *ece, Ecore_Co
198 * @param func The callback to remove. 174 * @param func The callback to remove.
199 * @param data The data passed to this function at the callback registration. 175 * @param data The data passed to this function at the callback registration.
200 */ 176 */
201EAPI void ecore_con_eet_client_connect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data); 177ECORE_CON_API void ecore_con_eet_client_connect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data);
202 178
203/** 179/**
204 * @brief Registers a client disconnect callback on a Ecore_Con_Eet object. 180 * @brief Registers a client disconnect callback on a Ecore_Con_Eet object.
@@ -210,7 +186,7 @@ EAPI void ecore_con_eet_client_connect_callback_del(Ecore_Con_Eet *ece, Ecore_Co
210 * @param func The function to call as a callback. 186 * @param func The function to call as a callback.
211 * @param data The data to pass to the callback. 187 * @param data The data to pass to the callback.
212 */ 188 */
213EAPI void ecore_con_eet_client_disconnect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data); 189ECORE_CON_API void ecore_con_eet_client_disconnect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data);
214 190
215/** 191/**
216 * @brief Removes a client disconnect callback on a Ecore_Con_Eet object. 192 * @brief Removes a client disconnect callback on a Ecore_Con_Eet object.
@@ -219,7 +195,7 @@ EAPI void ecore_con_eet_client_disconnect_callback_add(Ecore_Con_Eet *ece, Ecore
219 * @param func The callback to remove. 195 * @param func The callback to remove.
220 * @param data The data passed to this function at the callback registration. 196 * @param data The data passed to this function at the callback registration.
221 */ 197 */
222EAPI void ecore_con_eet_client_disconnect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data); 198ECORE_CON_API void ecore_con_eet_client_disconnect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Client_Cb func, const void *data);
223 199
224/** 200/**
225 * @brief Registers a server connect callback on a Ecore_Con_Eet object. 201 * @brief Registers a server connect callback on a Ecore_Con_Eet object.
@@ -231,7 +207,7 @@ EAPI void ecore_con_eet_client_disconnect_callback_del(Ecore_Con_Eet *ece, Ecore
231 * @param func The function to call as a callback. 207 * @param func The function to call as a callback.
232 * @param data The data to pass to the callback. 208 * @param data The data to pass to the callback.
233 */ 209 */
234EAPI void ecore_con_eet_server_connect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data); 210ECORE_CON_API void ecore_con_eet_server_connect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data);
235 211
236/** 212/**
237 * @brief Removes a server connect callback on a Ecore_Con_Eet object. 213 * @brief Removes a server connect callback on a Ecore_Con_Eet object.
@@ -240,7 +216,7 @@ EAPI void ecore_con_eet_server_connect_callback_add(Ecore_Con_Eet *ece, Ecore_Co
240 * @param func The callback to remove. 216 * @param func The callback to remove.
241 * @param data The data passed to this function at the callback registration. 217 * @param data The data passed to this function at the callback registration.
242 */ 218 */
243EAPI void ecore_con_eet_server_connect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data); 219ECORE_CON_API void ecore_con_eet_server_connect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data);
244 220
245/** 221/**
246 * @brief Registers a server disconnect callback on a Ecore_Con_Eet object. 222 * @brief Registers a server disconnect callback on a Ecore_Con_Eet object.
@@ -252,7 +228,7 @@ EAPI void ecore_con_eet_server_connect_callback_del(Ecore_Con_Eet *ece, Ecore_Co
252 * @param func The function to call as a callback. 228 * @param func The function to call as a callback.
253 * @param data The data to pass to the callback. 229 * @param data The data to pass to the callback.
254 */ 230 */
255EAPI void ecore_con_eet_server_disconnect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data); 231ECORE_CON_API void ecore_con_eet_server_disconnect_callback_add(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data);
256 232
257/** 233/**
258 * @brief Removes a server disconnect callback on a Ecore_Con_Eet object. 234 * @brief Removes a server disconnect callback on a Ecore_Con_Eet object.
@@ -261,7 +237,7 @@ EAPI void ecore_con_eet_server_disconnect_callback_add(Ecore_Con_Eet *ece, Ecore
261 * @param func The callback to remove. 237 * @param func The callback to remove.
262 * @param data The data passed to this function at the callback registration. 238 * @param data The data passed to this function at the callback registration.
263 */ 239 */
264EAPI void ecore_con_eet_server_disconnect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data); 240ECORE_CON_API void ecore_con_eet_server_disconnect_callback_del(Ecore_Con_Eet *ece, Ecore_Con_Eet_Server_Cb func, const void *data);
265 241
266/** 242/**
267 * @brief Attaches data to an Ecore_Con_Eet object. 243 * @brief Attaches data to an Ecore_Con_Eet object.
@@ -269,7 +245,7 @@ EAPI void ecore_con_eet_server_disconnect_callback_del(Ecore_Con_Eet *ece, Ecore
269 * @param ece An Ecore_Con_Eet object. 245 * @param ece An Ecore_Con_Eet object.
270 * @param data The data to attach to the Ecore_Con_Eet object. 246 * @param data The data to attach to the Ecore_Con_Eet object.
271 */ 247 */
272EAPI void ecore_con_eet_data_set(Ecore_Con_Eet *ece, const void *data); 248ECORE_CON_API void ecore_con_eet_data_set(Ecore_Con_Eet *ece, const void *data);
273 249
274/** 250/**
275 * @brief Gets the data attached to an Ecore_Con_Eet object. 251 * @brief Gets the data attached to an Ecore_Con_Eet object.
@@ -277,7 +253,7 @@ EAPI void ecore_con_eet_data_set(Ecore_Con_Eet *ece, const void *data);
277 * @param ece An Ecore_Con_Eet object. 253 * @param ece An Ecore_Con_Eet object.
278 * @return The data attached to the Ecore_Con_Eet object. 254 * @return The data attached to the Ecore_Con_Eet object.
279 */ 255 */
280EAPI const void *ecore_con_eet_data_get(Ecore_Con_Eet *ece); 256ECORE_CON_API const void *ecore_con_eet_data_get(Ecore_Con_Eet *ece);
281 257
282/** 258/**
283 * @brief Gets the Ecore_Con_Eet object corresponding to the Ecore_Con_Reply object. 259 * @brief Gets the Ecore_Con_Eet object corresponding to the Ecore_Con_Reply object.
@@ -285,7 +261,7 @@ EAPI const void *ecore_con_eet_data_get(Ecore_Con_Eet *ece);
285 * @param reply An Ecore_Con_Reply object. 261 * @param reply An Ecore_Con_Reply object.
286 * @return The corresponding Ecore_Con_Eet object. 262 * @return The corresponding Ecore_Con_Eet object.
287 */ 263 */
288EAPI Ecore_Con_Eet *ecore_con_eet_reply(Ecore_Con_Reply *reply); 264ECORE_CON_API Ecore_Con_Eet *ecore_con_eet_reply(Ecore_Con_Reply *reply);
289 265
290/** 266/**
291 * @brief Sends some data using a protocol type. 267 * @brief Sends some data using a protocol type.
@@ -294,7 +270,7 @@ EAPI Ecore_Con_Eet *ecore_con_eet_reply(Ecore_Con_Reply *reply);
294 * @param protocol_name The protocol type to use. 270 * @param protocol_name The protocol type to use.
295 * @param value The data to send. 271 * @param value The data to send.
296 */ 272 */
297EAPI void ecore_con_eet_send(Ecore_Con_Reply *reply, const char *protocol_name, void *value); 273ECORE_CON_API void ecore_con_eet_send(Ecore_Con_Reply *reply, const char *protocol_name, void *value);
298 274
299/** 275/**
300 * @brief Sends some raw data using a protocol type. 276 * @brief Sends some raw data using a protocol type.
@@ -305,7 +281,7 @@ EAPI void ecore_con_eet_send(Ecore_Con_Reply *reply, const char *protocol_name,
305 * @param value The data to send. 281 * @param value The data to send.
306 * @param length The data length. 282 * @param length The data length.
307 */ 283 */
308EAPI void ecore_con_eet_raw_send(Ecore_Con_Reply *reply, const char *protocol_name, const char *section, void *value, unsigned int length); 284ECORE_CON_API void ecore_con_eet_raw_send(Ecore_Con_Reply *reply, const char *protocol_name, const char *section, void *value, unsigned int length);
309 285
310/** 286/**
311 * @} 287 * @}
@@ -315,7 +291,4 @@ EAPI void ecore_con_eet_raw_send(Ecore_Con_Reply *reply, const char *protocol_na
315} 291}
316#endif 292#endif
317 293
318#undef EAPI
319#define EAPI
320
321#endif 294#endif
diff --git a/src/lib/ecore_con/Efl_Net.h b/src/lib/ecore_con/Efl_Net.h
index 7cab05efa3..4c5cab8725 100644
--- a/src/lib/ecore_con/Efl_Net.h
+++ b/src/lib/ecore_con/Efl_Net.h
@@ -13,31 +13,7 @@
13 13
14#include <Efl_Core.h> 14#include <Efl_Core.h>
15 15
16#ifdef EAPI 16#include <ecore_con_api.h>
17# undef EAPI
18#endif
19
20#ifdef _WIN32
21# ifdef EFL_BUILD
22# ifdef DLL_EXPORT
23# define EAPI __declspec(dllexport)
24# else
25# define EAPI
26# endif
27# else
28# define EAPI __declspec(dllimport)
29# endif
30#else
31# ifdef __GNUC__
32# if __GNUC__ >= 4
33# define EAPI __attribute__ ((visibility("default")))
34# else
35# define EAPI
36# endif
37# else
38# define EAPI
39# endif