Really hard to see among all the warnings. :( I'm not sure what you've done, but you need EFL_BETA_API_SUPPORT (which you have) and EFL_EO_API_SUPPORT both defined before the inclusion of the other headers.
As for the exact specifics of how to use .eo.c and .eo.h see one of the numerous examples in elementary. -- Tom. On 23/01/15 00:30, Andrew Williams wrote: > Hi, > > Sorry to bug folk on what's probably simple but I can't figure what's up > with my attempt to port elm_code to an elm_object through eo. > > I've got a pretty skeleton file (as you can see from the warnings) but > can anyone figure what I might be missing? The build setup should have > al dependencies set up as it's building the legacy version of the code fine. > > Many thanks for anyone who can point me in the right direction. > > Andrew > > > make[4]: Entering directory '/home/andy/Code/E/edi/elm_code/lib' > CC elm_code_widget_eo.lo > elm_code_widget_eo.c:1:0: warning: "EFL_BETA_API_SUPPORT" redefined > #define EFL_BETA_API_SUPPORT > ^ > <command-line>:0:0: note: this is the location of the previous definition > elm_code_widget_eo.c: In function '_elm_code_widget_eo_base_constructor': > elm_code_widget_eo.c:13:42: warning: unused parameter 'obj' > [-Wunused-parameter] > _elm_code_widget_eo_base_constructor(Eo *obj, Elm_Code_Widget_Data *pd) > ^ > elm_code_widget_eo.c:13:69: warning: unused parameter 'pd' > [-Wunused-parameter] > _elm_code_widget_eo_base_constructor(Eo *obj, Elm_Code_Widget_Data *pd) > ^ > elm_code_widget_eo.c: In function > '_elm_code_widget_evas_object_smart_resize': > elm_code_widget_eo.c:19:47: warning: unused parameter 'obj' > [-Wunused-parameter] > _elm_code_widget_evas_object_smart_resize(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord w, Evas_Coord h) > ^ > elm_code_widget_eo.c:19:74: warning: unused parameter 'pd' > [-Wunused-parameter] > _elm_code_widget_evas_object_smart_resize(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord w, Evas_Coord h) > ^ > elm_code_widget_eo.c:19:89: warning: unused parameter 'w' > [-Wunused-parameter] > _elm_code_widget_evas_object_smart_resize(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord w, Evas_Coord h) > ^ > elm_code_widget_eo.c:19:103: warning: unused parameter 'h' > [-Wunused-parameter] > _elm_code_widget_evas_object_smart_resize(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord w, Evas_Coord h) > ^ > elm_code_widget_eo.c: In function '_elm_code_widget_class_constructor': > elm_code_widget_eo.c:25:46: warning: unused parameter 'klass' > [-Wunused-parameter] > _elm_code_widget_class_constructor(Eo_Class *klass) > ^ > elm_code_widget_eo.c: In function > '_elm_code_widget_elm_interface_scrollable_content_pos_set': > elm_code_widget_eo.c:31:63: warning: unused parameter 'obj' > [-Wunused-parameter] > _elm_code_widget_elm_interface_scrollable_content_pos_set(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord x, Evas_Coord y, Eina_Bool sig) > ^ > elm_code_widget_eo.c:31:90: warning: unused parameter 'pd' > [-Wunused-parameter] > _elm_code_widget_elm_interface_scrollable_content_pos_set(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord x, Evas_Coord y, Eina_Bool sig) > ^ > elm_code_widget_eo.c:31:105: warning: unused parameter 'x' > [-Wunused-parameter] > _elm_code_widget_elm_interface_scrollable_content_pos_set(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord x, Evas_Coord y, Eina_Bool sig) > ^ > elm_code_widget_eo.c:31:119: warning: unused parameter 'y' > [-Wunused-parameter] > _elm_code_widget_elm_interface_scrollable_content_pos_set(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord x, Evas_Coord y, Eina_Bool sig) > ^ > elm_code_widget_eo.c:31:132: warning: unused parameter 'sig' > [-Wunused-parameter] > _elm_code_widget_elm_interface_scrollable_content_pos_set(Eo *obj, > Elm_Code_Widget_Data *pd, Evas_Coord x, Evas_Coord y, Eina_Bool sig) > ^ > In file included from elm_code_widget_eo.c:2:0: > elm_code_widget.eo.c: At top level: > elm_code_widget.eo.c:17:26: error: 'evas_obj_smart_resize' undeclared > here (not in a function) > EO_OP_FUNC_OVERRIDE(evas_obj_smart_resize, > _elm_code_widget_evas_object_smart_resize), > ^ > /usr/local/include/eo-1/Eo.h:558:30: note: in definition of macro > '_EO_OP_API_ENTRY' > # define _EO_OP_API_ENTRY(a) a > ^ > elm_code_widget.eo.c:17:6: note: in expansion of macro 'EO_OP_FUNC_OVERRIDE' > EO_OP_FUNC_OVERRIDE(evas_obj_smart_resize, > _elm_code_widget_evas_object_smart_resize), > ^ > elm_code_widget.eo.c:18:26: error: > 'elm_interface_scrollable_content_pos_set' undeclared here (not in a > function) > EO_OP_FUNC_OVERRIDE(elm_interface_scrollable_content_pos_set, > _elm_code_widget_elm_interface_scrollable_content_pos_set), > ^ > /usr/local/include/eo-1/Eo.h:558:30: note: in definition of macro > '_EO_OP_API_ENTRY' > # define _EO_OP_API_ENTRY(a) a > ^ > elm_code_widget.eo.c:18:6: note: in expansion of macro 'EO_OP_FUNC_OVERRIDE' > EO_OP_FUNC_OVERRIDE(elm_interface_scrollable_content_pos_set, > _elm_code_widget_elm_interface_scrollable_content_pos_set), > ^ > elm_code_widget.eo.c: In function 'elm_code_widget_class_get': > elm_code_widget.eo.c:39:74: error: 'ELM_INTERFACE_SCROLLABLE_MIXIN' > undeclared (first use in this function) > EO_DEFINE_CLASS(elm_code_widget_class_get, > &_elm_code_widget_class_desc, ELM_INTERFACE_SCROLLABLE_MIXIN, > ELM_INTERFACE_ATSPI_WIDGET_MIXIN, NULL); > ^ > /usr/local/include/eo-1/Eo.h:336:24: note: in definition of macro > 'EO_DEFINE_CLASS' > _tmp_parent_class = parent_class; \ > ^ > elm_code_widget.eo.c:39:74: note: each undeclared identifier is reported > only once for each function it appears in > EO_DEFINE_CLASS(elm_code_widget_class_get, > &_elm_code_widget_class_desc, ELM_INTERFACE_SCROLLABLE_MIXIN, > ELM_INTERFACE_ATSPI_WIDGET_MIXIN, NULL); > ^ > /usr/local/include/eo-1/Eo.h:336:24: note: in definition of macro > 'EO_DEFINE_CLASS' > _tmp_parent_class = parent_class; \ > ^ > /usr/local/include/eo-1/Eo.h:336:22: warning: assignment from > incompatible pointer type > _tmp_parent_class = parent_class; \ > ^ > elm_code_widget.eo.c:39:1: note: in expansion of macro 'EO_DEFINE_CLASS' > EO_DEFINE_CLASS(elm_code_widget_class_get, > &_elm_code_widget_class_desc, ELM_INTERFACE_SCROLLABLE_MIXIN, > ELM_INTERFACE_ATSPI_WIDGET_MIXIN, NULL); > ^ > elm_code_widget.eo.c:39:106: error: 'ELM_INTERFACE_ATSPI_WIDGET_MIXIN' > undeclared (first use in this function) > EO_DEFINE_CLASS(elm_code_widget_class_get, > &_elm_code_widget_class_desc, ELM_INTERFACE_SCROLLABLE_MIXIN, > ELM_INTERFACE_ATSPI_WIDGET_MIXIN, NULL); > ^ > /usr/local/include/eo-1/Eo.h:337:60: note: in definition of macro > 'EO_DEFINE_CLASS' > _my_class = eo_class_new(class_desc, _tmp_parent_class, __VA_ARGS__); \ > ^ > Makefile:501: recipe for target 'elm_code_widget_eo.lo' failed > make[4]: *** [elm_code_widget_eo.lo] Error 1 > > > ------------------------------------------------------------------------------ > New Year. New Location. New Benefits. New Data Center in Ashburn, VA. > GigeNET is offering a free month of service with a new server in Ashburn. > Choose from 2 high performing configs, both with 100TB of bandwidth. > Higher redundancy.Lower latency.Increased capacity.Completely compliant. > http://p.sf.net/sfu/gigenet > _______________________________________________ > enlightenment-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > ------------------------------------------------------------------------------ New Year. New Location. New Benefits. New Data Center in Ashburn, VA. GigeNET is offering a free month of service with a new server in Ashburn. Choose from 2 high performing configs, both with 100TB of bandwidth. Higher redundancy.Lower latency.Increased capacity.Completely compliant. http://p.sf.net/sfu/gigenet _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
