From a7006061b203a0c015ea8ae39735b3fba8dd97d9 Mon Sep 17 00:00:00 2001 From: Gustavo Sverzut Barbieri Date: Mon, 31 Dec 2012 23:45:24 +0000 Subject: [PATCH] efl/eio: use eina_file_copy() SVN revision: 81944 --- eio/Makefile.am | 16 +++++++++-- unsorted/eio/eio_file_copy.c | 52 ++++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+), 2 deletions(-) create mode 100644 unsorted/eio/eio_file_copy.c diff --git a/eio/Makefile.am b/eio/Makefile.am index ad4f9016..950f1eca 100644 --- a/eio/Makefile.am +++ b/eio/Makefile.am @@ -12,7 +12,9 @@ AM_CPPFLAGS = \ -I$(top_builddir)/src/lib/ecore \ -I$(top_builddir)/src/lib/eio -EXTRA_PROGRAMS = eio_file_ls +EXTRA_PROGRAMS = \ +eio_file_ls \ +eio_file_copy eio_file_ls_SOURCES = eio_file_ls.c eio_file_ls_LDADD = \ @@ -23,8 +25,18 @@ $(top_builddir)/src/lib/eet/libeet.la \ $(top_builddir)/src/lib/eina/libeina.la \ @EIO_LDFLAGS@ +eio_file_copy_SOURCES = eio_file_copy.c +eio_file_copy_LDADD = \ +$(top_builddir)/src/lib/eio/libeio.la \ +$(top_builddir)/src/lib/eo/libeo.la \ +$(top_builddir)/src/lib/ecore/libecore.la \ +$(top_builddir)/src/lib/eet/libeet.la \ +$(top_builddir)/src/lib/eina/libeina.la \ +@EIO_LDFLAGS@ + SRCS = \ -eio_file_ls +eio_file_ls.c \ +eio_file_copy.c examples: $(EXTRA_PROGRAMS) diff --git a/unsorted/eio/eio_file_copy.c b/unsorted/eio/eio_file_copy.c new file mode 100644 index 00000000..7704cfca --- /dev/null +++ b/unsorted/eio/eio_file_copy.c @@ -0,0 +1,52 @@ +/** + * Compile with gcc -o eio_file_copy eio_file_copy.c `pkg-config --cflags --libs ecore eio` + */ + +#include +#include +#include +#include +#include + +static void +_progress_cb(void *data EINA_UNUSED, Eio_File *handle EINA_UNUSED, const Eio_Progress *info) +{ + printf("progress: %5lld/%lld (%3.0f%%)\n", info->current, info->max, + info->percent); +} + +static void +_done_cb(void *data EINA_UNUSED, Eio_File *handle EINA_UNUSED) +{ + puts("Successfully finished copy"); + ecore_main_loop_quit(); +} + +static void +_error_cb(void *data EINA_UNUSED, Eio_File *handle EINA_UNUSED, int error) +{ + fprintf(stderr, "Something wrong has happend:%s\n", strerror(error)); + ecore_main_loop_quit(); +} + +int +main(int argc, char **argv) +{ + if (argc != 3) + { + fprintf(stderr, "Usage: %s \n", argv[0]); + return EXIT_FAILURE; + } + + ecore_init(); + eio_init(); + + eio_file_copy(argv[1], argv[2], _progress_cb, _done_cb, _error_cb, NULL); + + ecore_main_loop_begin(); + + eio_shutdown(); + ecore_shutdown(); + + return 0; +}