[E-devel] [PATCH] ecore pipe add close functions

2009-03-25 Thread Lars Munch
Hi

This patch adds two new functions, ecore_pipe_close_read and
ecore_pipe_close_write, to ecore_pipe. The purpose it to enable
ecore_pipe to be used together with fork (see example below).

The patch also handles if the read or write end of the pipe closes.

/*
  Test example
  gcc -Wall `pkg-config --libs --cflags ecore` tstpipe.c -o tstpipe
*/

void handler(void *data, void *buffer, unsigned int nbyte)
{
   char *s;
   fprintf(stderr, length %d\n, nbyte);
   if(nbyte  0 || buffer != NULL)
 {
s = strndup((char*) buffer, nbyte);
fprintf(stderr, %s\n, s);
free(s);
 }
   else
 ecore_main_loop_quit();
}

int main(int argc, char *argv[])
{
   Ecore_Pipe *p;
   pid_t cpid;

   ecore_init();
   p = ecore_pipe_add(handler, NULL);

   cpid = fork();
   if (cpid == -1)
 {
perror(fork);
exit(EXIT_FAILURE);
 }

   if (cpid == 0)
 {
int i;
/* Child */
ecore_pipe_close_read(p);
for(i=0; i4; i++) {
   if(!ecore_pipe_write(p, 0123456789, 10))
 exit(EXIT_SUCCESS);
   sleep(1);
}
exit(EXIT_SUCCESS);
 }
   else
 {
/* Parent */
ecore_pipe_close_write(p);
ecore_main_loop_begin();
exit(EXIT_SUCCESS);
 }

   ecore_shutdown();
}

Signed-off-by: Lars Munch l...@segv.dk
---
 src/lib/ecore/Ecore.h  |4 +-
 src/lib/ecore/ecore_pipe.c |  101 +++-
 2 files changed, 93 insertions(+), 12 deletions(-)

diff --git a/src/lib/ecore/Ecore.h b/src/lib/ecore/Ecore.h
index 0a1969d..0277852 100644
--- a/src/lib/ecore/Ecore.h
+++ b/src/lib/ecore/Ecore.h
@@ -290,10 +290,12 @@ extern C {
EAPI Ecore_Pipe  *ecore_pipe_add(void (*handler) (void *data, void *buffer, 
unsigned int nbyte), const void *data);
EAPI void*ecore_pipe_del(Ecore_Pipe *p);
EAPI int  ecore_pipe_write(Ecore_Pipe *p, const void *buffer, 
unsigned int nbytes);
+   EAPI void ecore_pipe_close_write(Ecore_Pipe *p);
+   EAPI void ecore_pipe_close_read(Ecore_Pipe *p);
 
EAPI double ecore_time_get(void);
EAPI double ecore_loop_time_get(void);
-   
+
EAPI Ecore_Timer *ecore_timer_add(double in, int (*func) (void *data), 
const void *data);
EAPI Ecore_Timer *ecore_timer_loop_add(double in, int (*func) (void *data), 
const void *data);
EAPI void*ecore_timer_del(Ecore_Timer *timer);
diff --git a/src/lib/ecore/ecore_pipe.c b/src/lib/ecore/ecore_pipe.c
index f6e4778..5608eda 100644
--- a/src/lib/ecore/ecore_pipe.c
+++ b/src/lib/ecore/ecore_pipe.c
@@ -332,20 +332,68 @@ ecore_pipe_del(Ecore_Pipe *p)
  ecore_pipe_del);
return NULL;
  }
-   ecore_main_fd_handler_del(p-fd_handler);
-   close(p-fd_read);
-   close(p-fd_write);
+   if(p-fd_handler != NULL)
+ ecore_main_fd_handler_del(p-fd_handler);
+   if(p-fd_read != -1)
+ close(p-fd_read);
+   if(p-fd_write != -1)
+ close(p-fd_write);
data = (void *)p-data;
free (p);
return data;
 }
 
 /**
+ * Close the read end of an Ecore_Pipe object created with ecore_pipe_add().
+ *
+ * @param p The Ecore_Pipe object.
+ * @ingroup Ecore_Pipe_Group
+ */
+EAPI void
+ecore_pipe_close_read(Ecore_Pipe *p)
+{
+   void *data;
+
+   if (!ECORE_MAGIC_CHECK(p, ECORE_MAGIC_PIPE))
+ {
+   ECORE_MAGIC_FAIL(p, ECORE_MAGIC_PIPE,
+ ecore_pipe_close_read);
+   return;
+ }
+   ecore_main_fd_handler_del(p-fd_handler);
+   p-fd_handler = NULL;
+   close(p-fd_read);
+   p-fd_read = -1;
+}
+
+/**
+ * Close the write end of an Ecore_Pipe object created with ecore_pipe_add().
+ *
+ * @param p The Ecore_Pipe object.
+ * @ingroup Ecore_Pipe_Group
+ */
+EAPI void
+ecore_pipe_close_write(Ecore_Pipe *p)
+{
+   void *data;
+
+   if (!ECORE_MAGIC_CHECK(p, ECORE_MAGIC_PIPE))
+ {
+   ECORE_MAGIC_FAIL(p, ECORE_MAGIC_PIPE,
+ ecore_pipe_close_write);
+   return;
+ }
+   close(p-fd_write);
+   p-fd_write = -1;
+}
+
+/**
  * Write on the file descriptor the data passed as parameter.
  *
  * @param p  The Ecore_Pipe object.
  * @param buffer The data to write into the pipe.
  * @param nbytes The size of the @p buffer in bytes
+ * @return   Returns TRUE on a successful write, FALSE on an error
  * @ingroup Ecore_Pipe_Group
  */
 EAPI int
@@ -359,9 +407,13 @@ ecore_pipe_write(Ecore_Pipe *p, const void *buffer, 
unsigned int nbytes)
  {
ECORE_MAGIC_FAIL(p, ECORE_MAGIC_PIPE,
  ecore_pipe_write);
-   return 0;
+   return FALSE;
  }
-   /* first write the len into the pipe */
+
+   if(p-fd_write == -1)
+ return FALSE;
+
+   /* First write the len into the pipe */
do
  {
ret = pipe_write(p-fd_write, nbytes, sizeof(nbytes));
@@ -375,7 +427,13 @@ ecore_pipe_write(Ecore_Pipe *p, const void *buffer, 
unsigned int nbytes)
 /* XXX What should we do here? */
 fprintf(stderr, The length of the data was not written complete

Re: [E-devel] [PATCH] ecore pipe add close functions

2009-03-25 Thread Lars Munch
On Wed, Mar 25, 2009 at 09:08:53AM +0100, Peter Wehrfritz wrote:
 Lars Munch schrieb:
 Hi
 
 This patch adds two new functions, ecore_pipe_close_read and
 ecore_pipe_close_write, to ecore_pipe. The purpose it to enable
 ecore_pipe to be used together with fork (see example below).
 
 The patch also handles if the read or write end of the pipe closes.
   
 
 I think the names don't fit in to the efl-naming schema, very well. That 
 means that the verb is at the end of the function name, here this would 
 be close. So ecore_pipe_write_close, or ecore_pipe_write_end_close 
 would be better.

Yes, you are right. Updated patch below.

This patch adds two new functions, ecore_pipe_read_close and
ecore_pipe_write_close, to ecore_pipe. The purpose it to enable
ecore_pipe to be used together with fork.

The patch also handles if the read or write end of the pipe closes.

Signed-off-by: Lars Munch l...@segv.dk
---
 src/lib/ecore/Ecore.h  |4 +-
 src/lib/ecore/ecore_pipe.c |  101 +++-
 2 files changed, 93 insertions(+), 12 deletions(-)

diff --git a/src/lib/ecore/Ecore.h b/src/lib/ecore/Ecore.h
index 0a1969d..b001ded 100644
--- a/src/lib/ecore/Ecore.h
+++ b/src/lib/ecore/Ecore.h
@@ -290,10 +290,12 @@ extern C {
EAPI Ecore_Pipe  *ecore_pipe_add(void (*handler) (void *data, void *buffer, 
unsigned int nbyte), const void *data);
EAPI void*ecore_pipe_del(Ecore_Pipe *p);
EAPI int  ecore_pipe_write(Ecore_Pipe *p, const void *buffer, 
unsigned int nbytes);
+   EAPI void ecore_pipe_write_close(Ecore_Pipe *p);
+   EAPI void ecore_pipe_read_close(Ecore_Pipe *p);
 
EAPI double ecore_time_get(void);
EAPI double ecore_loop_time_get(void);
-   
+
EAPI Ecore_Timer *ecore_timer_add(double in, int (*func) (void *data), 
const void *data);
EAPI Ecore_Timer *ecore_timer_loop_add(double in, int (*func) (void *data), 
const void *data);
EAPI void*ecore_timer_del(Ecore_Timer *timer);
diff --git a/src/lib/ecore/ecore_pipe.c b/src/lib/ecore/ecore_pipe.c
index f6e4778..84fded0 100644
--- a/src/lib/ecore/ecore_pipe.c
+++ b/src/lib/ecore/ecore_pipe.c
@@ -332,20 +332,68 @@ ecore_pipe_del(Ecore_Pipe *p)
  ecore_pipe_del);
return NULL;
  }
-   ecore_main_fd_handler_del(p-fd_handler);
-   close(p-fd_read);
-   close(p-fd_write);
+   if(p-fd_handler != NULL)
+ ecore_main_fd_handler_del(p-fd_handler);
+   if(p-fd_read != -1)
+ close(p-fd_read);
+   if(p-fd_write != -1)
+ close(p-fd_write);
data = (void *)p-data;
free (p);
return data;
 }
 
 /**
+ * Close the read end of an Ecore_Pipe object created with ecore_pipe_add().
+ *
+ * @param p The Ecore_Pipe object.
+ * @ingroup Ecore_Pipe_Group
+ */
+EAPI void
+ecore_pipe_read_close(Ecore_Pipe *p)
+{
+   void *data;
+
+   if (!ECORE_MAGIC_CHECK(p, ECORE_MAGIC_PIPE))
+ {
+   ECORE_MAGIC_FAIL(p, ECORE_MAGIC_PIPE,
+ ecore_pipe_close_read);
+   return;
+ }
+   ecore_main_fd_handler_del(p-fd_handler);
+   p-fd_handler = NULL;
+   close(p-fd_read);
+   p-fd_read = -1;
+}
+
+/**
+ * Close the write end of an Ecore_Pipe object created with ecore_pipe_add().
+ *
+ * @param p The Ecore_Pipe object.
+ * @ingroup Ecore_Pipe_Group
+ */
+EAPI void
+ecore_pipe_write_close(Ecore_Pipe *p)
+{
+   void *data;
+
+   if (!ECORE_MAGIC_CHECK(p, ECORE_MAGIC_PIPE))
+ {
+   ECORE_MAGIC_FAIL(p, ECORE_MAGIC_PIPE,
+ ecore_pipe_close_write);
+   return;
+ }
+   close(p-fd_write);
+   p-fd_write = -1;
+}
+
+/**
  * Write on the file descriptor the data passed as parameter.
  *
  * @param p  The Ecore_Pipe object.
  * @param buffer The data to write into the pipe.
  * @param nbytes The size of the @p buffer in bytes
+ * @return   Returns TRUE on a successful write, FALSE on an error
  * @ingroup Ecore_Pipe_Group
  */
 EAPI int
@@ -359,9 +407,13 @@ ecore_pipe_write(Ecore_Pipe *p, const void *buffer, 
unsigned int nbytes)
  {
ECORE_MAGIC_FAIL(p, ECORE_MAGIC_PIPE,
  ecore_pipe_write);
-   return 0;
+   return FALSE;
  }
-   /* first write the len into the pipe */
+
+   if(p-fd_write == -1)
+ return FALSE;
+
+   /* First write the len into the pipe */
do
  {
ret = pipe_write(p-fd_write, nbytes, sizeof(nbytes));
@@ -375,7 +427,13 @@ ecore_pipe_write(Ecore_Pipe *p, const void *buffer, 
unsigned int nbytes)
 /* XXX What should we do here? */
 fprintf(stderr, The length of the data was not written complete
   to the pipe\n);
-return 0;
+return FALSE;
+ }
+   else if (ret == -1  errno == EPIPE)
+ {
+close(p-fd_write);
+p-fd_write = -1;
+return FALSE;
  }
else if (ret == -1  errno == EINTR)
  /* try it again */
@@ -390,7 +448,7 @@ ecore_pipe_write(Ecore_Pipe *p, const void *buffer, 
unsigned int nbytes)
while 

Re: [E-devel] [e-users] new module: systray

2009-03-25 Thread muzzle
I'm very glad someone finally did this, thank you very much Gustavo.

On Tue, Mar 24, 2009 at 1:16 PM, Downknew Wise downkneww...@gmail.com wrote:
 Well done!!! Now e is more usable!!!

 It works without crashes with my systray apps:
 emesene
 pidgin
 network manager
 and also gnome-do :)

Hi, just a quick off-topic suggestion: I've found that the e17 execute
panel is as an acceptable gnome-do replacement (at least for launching
other apps), so I just bound it to win-space and got rid of gnome-do.
Has someone tried it? Do you like it? Do you e17 hackers think it
would be possible/desirable to extend the execute-panel to have search
capabilities like gnome-do?

Cheers,

Emme



 2009/3/23 Gustavo Sverzut Barbieri barbi...@profusion.mobi

 For those that do not read svn commits mail list, I just added a
 systray module to E-MODULES-EXTRA/systray. It is very basic but should
 be able to replace trayer or stalonetray or any other tray you're
 using outside e17.

 It is still ugly as it will be presented as a plain/solid color and
 not respect theme image. Theme must provide inset and plain colors
 in order to specify the desired color. By default I used white for
 inset and light gray for plain so it matches black and white (e17
 default). I plan to implement a hack in order to improve this
 situation, but I don't know when I'll make this.

 Please report bugs and suggestions.

 --
 Gustavo Sverzut Barbieri
 http://profusion.mobi embedded systems
 --
 MSN: barbi...@gmail.com
 Skype: gsbarbieri
 Mobile: +55 (19) 9225-2202


 --
 Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
 powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
 easily build your RIAs with Flex Builder, the Eclipse(TM)based development
 software that enables intelligent coding and step-through debugging.
 Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
 ___
 enlightenment-users mailing list
 enlightenment-us...@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-users

 --
 Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
 powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
 easily build your RIAs with Flex Builder, the Eclipse(TM)based development
 software that enables intelligent coding and step-through debugging.
 Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
 ___
 enlightenment-devel mailing list
 enlightenment-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


--
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


Re: [E-devel] [e-users] new module: systray

2009-03-25 Thread Gustavo Sverzut Barbieri
On Wed, Mar 25, 2009 at 5:48 AM, muzzle muz...@gmail.com wrote:
 I'm very glad someone finally did this, thank you very much Gustavo.

 On Tue, Mar 24, 2009 at 1:16 PM, Downknew Wise downkneww...@gmail.com wrote:
 Well done!!! Now e is more usable!!!

 It works without crashes with my systray apps:
 emesene
 pidgin
 network manager
 and also gnome-do :)

 Hi, just a quick off-topic suggestion: I've found that the e17 execute
 panel is as an acceptable gnome-do replacement (at least for launching
 other apps), so I just bound it to win-space and got rid of gnome-do.
 Has someone tried it? Do you like it? Do you e17 hackers think it
 would be possible/desirable to extend the execute-panel to have search
 capabilities like gnome-do?

execute panel = execbuf (run command...)? If so I already know of
some students willing to implement an idea to have execbuf plugins in
the same fashion of kde4 krunner, you'd call plugins to match
strings and report results asynchronously, so you could do calc (= 1 +
2 - shows =3), google queries, amarok/rhythmbox search, query
firefox sqlite db and much more. I forgot to write these ideas on GSoC
page, but someone could do and seems like a good plan.

-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--
MSN: barbi...@gmail.com
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202

--
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] edje_object_size_min_calc() doesn't return correct size

2009-03-25 Thread Rafael Antognolli
Hi,

I'm trying to use edje_object_size_min_calc() to get the size of an
edje object after I resized an Evas_Object that is swallowed into it.
I'm resizing this Evas_Object with
edje_extern_object_[min/max]_size_set(), and I have a part that is
relative to this swallow and larger than it. When I use
edje_object_part_geometry_get() the size returned is correct, but
edje_object_size_min_calc() still just returns the size of the
swallow, not the size of the part relative to it (which is larger).

I even tried to get the size after main_loop iterations, but still got
wrong values.

Any suggestions? May edje_object_size_min_calc() be broken or it
shouldn't return these values?

Regards,
-- 
Rafael Antognolli

--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] [PATCH] Efreet: use eina_list instead of ecore_dlist

2009-03-25 Thread Albin Tonnerre
Hi,
The attached patches fix three things:
0001 converts the remaining uses of ecore_dlist to using eina_list
0002 replaces the use of Eina_Compare_Cb with the use of EINA_COMPARE_CB
0003 Allows the e17-specified menu to be chosen as a menu only if STRICT_SPEC is
not defined, as it is obviously not conforming to the spec.
I tested a bit on my system and everything seems to be working correctly,
however I haven't tested it really thoroughly.
Comments welcome.

Regards,
-- 
Albin Tonnerre
diff --git a/src/lib/efreet_desktop.c b/src/lib/efreet_desktop.c
index 9357add..2dfa357 100644
--- a/src/lib/efreet_desktop.c
+++ b/src/lib/efreet_desktop.c
@@ -1089,7 +1089,7 @@ efreet_desktop_environment_check(Efreet_Ini *ini)
 
 /**
  * @param desktop: the desktop entry
- * @param files: an ecore list of file names to execute, as either absolute paths,
+ * @param files: an eina list of file names to execute, as either absolute paths,
  * relative paths, or uris
  * @param func: a callback to call for each prepared command line
  * @param data: user data passed to the callback
@@ -1105,8 +1105,8 @@ efreet_desktop_command_get(Efreet_Desktop *desktop, Eina_List *files,
 
 /**
  * @param desktop: the desktop entry
- * @param files an ecore list of local files, as absolute paths, local paths, or file:// uris (or NULL to get exec string with no files appended)
- * @return Returns an ecore list of exec strings
+ * @param files an eina list of local files, as absolute paths, local paths, or file:// uris (or NULL to get exec string with no files appended)
+ * @return Returns an eina list of exec strings
  * @brief Get the command to use to execute a desktop entry
  *
  * The returned list and each of its elements must be freed.
@@ -1153,7 +1153,7 @@ efreet_desktop_command_local_get(Efreet_Desktop *desktop, Eina_List *files)
 
 /**
  * @param desktop: the desktop entry
- * @param files: an ecore list of file names to execute, as either absolute paths,
+ * @param files: an eina list of file names to execute, as either absolute paths,
  * relative paths, or uris
  * @param cb_command: a callback to call for each prepared command line
  * @param cb_progress: a callback to get progress for the downloads
diff --git a/src/lib/efreet_menu.c b/src/lib/efreet_menu.c
index 1a77a38..57c85fa 100644
--- a/src/lib/efreet_menu.c
+++ b/src/lib/efreet_menu.c
@@ -41,7 +41,7 @@ struct Efreet_Menu_Internal
 } name;   /** The names for this menu */
 
 Efreet_Desktop *directory; /** The directory */
-Ecore_DList *directories;  /** All the directories set in the menu file */
+Eina_List *directories;  /** All the directories set in the menu file */
 
 Efreet_Menu_Move *current_move; /** The current move */
 
@@ -50,7 +50,7 @@ struct Efreet_Menu_Internal
 Eina_List *app_pool;   /** application pool */
 Eina_List *applications;   /** applications in this menu */
 
-Ecore_DList *directory_dirs;/** .directory file directories */
+Eina_List *directory_dirs;/** .directory file directories */
 Eina_Hash *directory_cache;/** .directory dirs */
 
 Eina_List *moves;  /** List of moves to be handled by the menu */
@@ -1001,10 +1001,10 @@ efreet_menu_internal_free(Efreet_Menu_Internal *internal)
 
 internal-applications = eina_list_free(internal-applications);
 
-IF_FREE_DLIST(internal-directories);
+IF_FREE_LIST(internal-directories, free);
 IF_FREE_LIST(internal-app_dirs, efreet_menu_app_dir_free);
 IF_FREE_LIST(internal-app_pool, efreet_menu_desktop_free);
-IF_FREE_DLIST(internal-directory_dirs);
+IF_FREE_LIST(internal-directory_dirs, free);
 IF_FREE_HASH(internal-directory_cache);
 
 IF_FREE_LIST(internal-moves, efreet_menu_move_free);
@@ -1053,10 +1053,10 @@ static int
 efreet_menu_handle_menu(Efreet_Menu_Internal *internal, Efreet_Xml *xml)
 {
 Efreet_Xml *child;
+Eina_List *l;
 int (*cb)(Efreet_Menu_Internal *parent, Efreet_Xml *xml);
 
-ecore_list_last_goto(xml-children);
-while ((child = ecore_dlist_previous(xml-children)))
+EINA_LIST_REVERSE_FOREACH(xml-children, l, child)
 {
 cb = eina_hash_find(efreet_menu_handle_cbs, child-tag);
 if (cb)
@@ -1206,13 +1206,13 @@ efreet_menu_handle_directory_dir(Efreet_Menu_Internal *parent, Efreet_Xml *xml)
 if (!path) return 0;
 
 /* we've already got this guy in our list we can skip it */
-if (ecore_list_find(parent-directory_dirs, ECORE_COMPARE_CB(strcmp), path))
+if (eina_list_search_unsorted(parent-directory_dirs, EINA_COMPARE_CB(strcmp), path))
 {
 FREE(path);
 return 1;
 }
 
-ecore_dlist_prepend(parent-directory_dirs, path);
+parent-directory_dirs = eina_list_prepend(parent-directory_dirs, path);
 
 return 1;
 }
@@ -1237,10 +1237,10 @@ efreet_menu_handle_default_directory_dirs(Efreet_Menu_Internal *parent, Efreet_X
 

[E-devel] I propose the help in development 'fm2'

2009-03-25 Thread Sergey Semernin
Hello, All.

I'm Sergey Semernin from Belgorod, Russia.
I have experience in C/C++ programming in Linux (mostly kernel drivers 
development, DSP, AI, KDE/Qt programming, autotools) - all about 6 years.
Therefore, I can help you in E17 file manager development - fix bugs, realize 
features, etc., to satisfy yours release plan.
Now, I'm reading documentation and taking a close look on E17 sources in order 
to learn Enlightenment principles, architecture and API.
I think to be useful and working well with all development team.

Sincerely yours, Sergey.

P.S. Sorry for my english. It is not native language for me.

--
Jabber/XMPP: sergey.semer...@gmail.com
Cellular: +7-909-206-5992

--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


[E-devel] epdf not compilable ?

2009-03-25 Thread Cédric Tabin
Hello guys :)

Is currently epdf useable ? I get the following error while I tried to
compile it :

/bin/sh ../../libtool --tag=CXX   --mode=link i686-pc-linux-gnu-g++  -O2
-march=i686 -pipe -fomit-frame-pointer -no-undefined -version-info 0:0:0
-Wl,-O1 -o libepdf.la -rpath /usr/lib libepdf_la-epdf_main.lo
libepdf_la-epdf_document.lo libepdf_la-epdf_fontinfo.lo
libepdf_la-epdf_index.lo libepdf_la-epdf_page.lo
libepdf_la-epdf_page_transition.lo libepdf_la-epdf_postscript.lo
libepdf_la-esmart_pdf.lo -levas -lecore -leina -lpoppler
 i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../.. -I/usr/include/ewl
-I/usr/include/efreet -I/usr/include/eina-0 -I/usr/include/eina-0/eina
-I/usr/include/eina-0 -I/usr/include/eina-0/eina -I/usr/include/poppler -O2
-march=i686 -pipe -fomit-frame-pointer -MT libepdf_ewl_la-ewl_pdf.lo -MD -MP
-MF .deps/libepdf_ewl_la-ewl_pdf.Tpo -c ewl_pdf.c  -fPIC -DPIC -o
.libs/libepdf_ewl_la-ewl_pdf.o
ewl_pdf.c: In function ‘ewl_pdf_reveal_cb’:
ewl_pdf.c:742: error: ‘Ewl_Widget’ has no member named ‘fx_clip_box’
ewl_pdf.c:743: error: ‘Ewl_Widget’ has no member named ‘fx_clip_box’
ewl_pdf.c:745: error: ‘Ewl_Widget’ has no member named ‘fx_clip_box’
ewl_pdf.c:746: error: ‘Ewl_Widget’ has no member named ‘fx_clip_box’
make[3]: *** [libepdf_ewl_la-ewl_pdf.lo] Error 1
make[3]: *** Waiting for unfinished jobs
i686-pc-linux-gnu-g++ -shared -nostdlib
/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../crti.o
/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/crtbeginS.o
.libs/libepdf_la-epdf_main.o .libs/libepdf_la-epdf_document.o
.libs/libepdf_la-epdf_fontinfo.o .libs/libepdf_la-epdf_index.o
.libs/libepdf_la-epdf_page.o .libs/libepdf_la-epdf_page_transition.o
.libs/libepdf_la-epdf_postscript.o .libs/libepdf_la-esmart_pdf.o
/usr/lib/libevas.so -L/usr/lib /usr/lib/libecore.so /usr/lib/libeina.so
-lpoppler -L/usr/lib/gcc/i686-pc-linux-gnu/4.1.2
-L/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../../i686-pc-linux-gnu/lib
-L/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../.. -lstdc++ -lm -lc -lgcc_s
/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/crtendS.o
/usr/lib/gcc/i686-pc-linux-gnu/4.1.2/../../../crtn.o  -march=i686 -Wl,-O1
-Wl,-soname -Wl,libepdf.so.0 -o .libs/libepdf.so.0.0.0
(cd .libs  rm -f libepdf.so.0  ln -s libepdf.so.0.0.0 libepdf.so.0)
(cd .libs  rm -f libepdf.so  ln -s libepdf.so.0.0.0 libepdf.so)
i686-pc-linux-gnu-ar cru .libs/libepdf.a  libepdf_la-epdf_main.o
libepdf_la-epdf_document.o libepdf_la-epdf_fontinfo.o
libepdf_la-epdf_index.o libepdf_la-epdf_page.o
libepdf_la-epdf_page_transition.o libepdf_la-epdf_postscript.o
libepdf_la-esmart_pdf.o
i686-pc-linux-gnu-ranlib .libs/libepdf.a
creating libepdf.la
(cd .libs  rm -f libepdf.la  ln -s ../libepdf.la libepdf.la)
make[3]: Leaving directory
`/var/tmp/portage/app-text/epdf-/work/epdf/src/lib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/app-text/epdf-/work/epdf/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/app-text/epdf-/work/epdf'
make: *** [all] Error 2

Thanks  best regards,
Cedric Tabin
--
___
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel