diff --git a/legacy/efreet/configure.ac b/legacy/efreet/configure.ac index e521974f5b..ba7632c624 100644 --- a/legacy/efreet/configure.ac +++ b/legacy/efreet/configure.ac @@ -35,8 +35,31 @@ AC_SUBST(efreet_release_info) AC_SUBST(efreet_mime_release_info) AC_SUBST(efreet_trash_release_info) +PKG_PROG_PKG_CONFIG + +EFL_EFREET_BUILD="" +EFL_EFREET_MIME_BUILD="" +EFL_EFREET_TRASH_BUILD="" +win32_libs="" +case "$host_os" in + mingw* | cegcc*) + PKG_CHECK_MODULES([EVIL], [evil]) + AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if Evil library is installed]) + EFL_EFREET_BUILD="-DEFL_EFREET_BUILD" + EFL_EFREET_MIME_BUILD="-DEFL_EFREET_MIME_BUILD" + EFL_EFREET_TRASH_BUILD="-DEFL_EFREET_TRASH_BUILD" + win32_libs="-lws2_32" + ;; +esac +AC_SUBST(EFL_EFREET_BUILD) +AC_SUBST(EFL_EFREET_MIME_BUILD) +AC_SUBST(EFL_EFREET_TRASH_BUILD) +AC_SUBST(win32_libs) + AC_FUNC_ALLOCA +AC_CHECK_HEADERS([arpa/inet.h]) + PKG_CHECK_MODULES(EFREET, [eina-0 ecore >= 0.9.9 ecore-file >= 0.9.9]) PKG_CHECK_MODULES(EINA, [eina-0]) diff --git a/legacy/efreet/src/lib/Efreet.h b/legacy/efreet/src/lib/Efreet.h index db13044565..ce939ea11f 100644 --- a/legacy/efreet/src/lib/Efreet.h +++ b/legacy/efreet/src/lib/Efreet.h @@ -27,15 +27,22 @@ * @li Trash Specification */ +#include + #ifdef EAPI -#undef EAPI +# undef EAPI #endif -#ifdef _MSC_VER -# ifdef BUILDING_DLL -# define EAPI __declspec(dllexport) + +#ifdef _WIN32 +# ifdef EFL_EFREET_BUILD +# ifdef DLL_EXPORT +# define EAPI __declspec(dllexport) +# else +# define EAPI +# endif /* ! DLL_EXPORT */ # else # define EAPI __declspec(dllimport) -# endif +# endif /* ! EFL_EFREET_BUILD */ #else # ifdef __GNUC__ # if __GNUC__ >= 4 diff --git a/legacy/efreet/src/lib/Efreet_Mime.h b/legacy/efreet/src/lib/Efreet_Mime.h index 8578f5b169..1e0e2aad8c 100644 --- a/legacy/efreet/src/lib/Efreet_Mime.h +++ b/legacy/efreet/src/lib/Efreet_Mime.h @@ -13,16 +13,20 @@ * @{ */ - #ifdef EAPI -#undef EAPI +# undef EAPI #endif -#ifdef _MSC_VER -# ifdef BUILDING_DLL -# define EAPI __declspec(dllexport) + +#ifdef _WIN32 +# ifdef EFL_EFREET_MIME_BUILD +# ifdef DLL_EXPORT +# define EAPI __declspec(dllexport) +# else +# define EAPI +# endif /* ! DLL_EXPORT */ # else # define EAPI __declspec(dllimport) -# endif +# endif /* ! EFL_EFREET_MIME_BUILD */ #else # ifdef __GNUC__ # if __GNUC__ >= 4 diff --git a/legacy/efreet/src/lib/Efreet_Trash.h b/legacy/efreet/src/lib/Efreet_Trash.h index 897f6464c4..ea59964e05 100644 --- a/legacy/efreet/src/lib/Efreet_Trash.h +++ b/legacy/efreet/src/lib/Efreet_Trash.h @@ -3,14 +3,19 @@ #define EFREET_TRASH_H #ifdef EAPI -#undef EAPI +# undef EAPI #endif -#ifdef _MSC_VER -# ifdef BUILDING_DLL -# define EAPI __declspec(dllexport) + +#ifdef _WIN32 +# ifdef EFL_EFREET_TRASH_BUILD +# ifdef DLL_EXPORT +# define EAPI __declspec(dllexport) +# else +# define EAPI +# endif /* ! DLL_EXPORT */ # else # define EAPI __declspec(dllimport) -# endif +# endif /* ! EFL_EFREET_TRASH_BUILD */ #else # ifdef __GNUC__ # if __GNUC__ >= 4 diff --git a/legacy/efreet/src/lib/Makefile.am b/legacy/efreet/src/lib/Makefile.am index aa9d4f91fd..fd978763c3 100644 --- a/legacy/efreet/src/lib/Makefile.am +++ b/legacy/efreet/src/lib/Makefile.am @@ -1,11 +1,6 @@ MAINTAINERCLEANFILES = Makefile.in -AM_CPPFLAGS = \ --I$(top_builddir) \ --I$(top_srcdir) \ -@EFREET_CFLAGS@ - lib_LTLIBRARIES = libefreet.la libefreet_mime.la libefreet_trash.la EFREETHEADERS = \ @@ -35,6 +30,13 @@ $(EFREETHEADERS) libefreet_la_SOURCES = \ $(EFREETSOURCES) +libefreet_la_CPPFLAGS = \ +-I$(top_builddir) \ +-I$(top_srcdir) \ +@EFL_EFREET_BUILD@ \ +@EFREET_CFLAGS@ +libefreet_la_LIBADD = @EFREET_LIBS@ @win32_libs@ +libefreet_la_LDFLAGS = -no-undefined -version-info @version_info@ @efreet_release_info@ EFREETMIMEHEADERS = \ Efreet_Mime.h @@ -45,6 +47,11 @@ $(EFREETMIMEHEADERS) libefreet_mime_la_SOURCES = \ $(EFREETMIMESOURCES) +libefreet_mime_la_CPPFLAGS = \ +-I$(top_builddir) \ +-I$(top_srcdir) \ +@EFL_EFREET_MIME_BUILD@ \ +@EFREET_CFLAGS@ EFREETTRASHHEADERS = \ @@ -56,16 +63,18 @@ $(EFREETTRASHHEADERS) libefreet_trash_la_SOURCES = \ $(EFREETTRASHSOURCES) +libefreet_trash_la_CPPFLAGS = \ +-I$(top_builddir) \ +-I$(top_srcdir) \ +@EFL_EFREET_TRASH_BUILD@ \ +@EFREET_CFLAGS@ installed_headersdir = $(prefix)/include/efreet installed_headers_DATA = $(EFREETHEADERS) $(EFREETMIMEHEADERS) $(EFREETTRASHHEADERS) -libefreet_la_LIBADD = @EFREET_LIBS@ -libefreet_la_LDFLAGS = -version-info @version_info@ @efreet_release_info@ +libefreet_mime_la_LDFLAGS = -no-undefined -version-info @version_info@ @efreet_mime_release_info@ +libefreet_trash_la_LDFLAGS = -no-undefined -version-info @version_info@ @efreet_trash_release_info@ -libefreet_mime_la_LDFLAGS = -version-info @version_info@ @efreet_mime_release_info@ -libefreet_trash_la_LDFLAGS = -version-info @version_info@ @efreet_trash_release_info@ - -libefreet_mime_la_LIBADD = @EFREET_LIBS@ libefreet.la +libefreet_mime_la_LIBADD = @EFREET_LIBS@ libefreet.la @win32_libs@ libefreet_trash_la_LIBADD = @EFREET_LIBS@ libefreet.la diff --git a/legacy/efreet/src/lib/efreet.c b/legacy/efreet/src/lib/efreet.c index 32a53c4c36..df69879f9a 100644 --- a/legacy/efreet/src/lib/efreet.c +++ b/legacy/efreet/src/lib/efreet.c @@ -1,6 +1,16 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include + +#include + #include "Efreet.h" #include "efreet_private.h" +#include "efreet_xml.h" static int init = 0; static int efreet_parsed_locale = 0; diff --git a/legacy/efreet/src/lib/efreet_base.c b/legacy/efreet/src/lib/efreet_base.c index 679d645af4..9d2af85ed1 100644 --- a/legacy/efreet/src/lib/efreet_base.c +++ b/legacy/efreet/src/lib/efreet_base.c @@ -1,4 +1,12 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include + #include "Efreet.h" #include "efreet_private.h" diff --git a/legacy/efreet/src/lib/efreet_base.h b/legacy/efreet/src/lib/efreet_base.h index d273fe242a..113fb6ddd0 100644 --- a/legacy/efreet/src/lib/efreet_base.h +++ b/legacy/efreet/src/lib/efreet_base.h @@ -12,8 +12,6 @@ * @{ */ -#include - EAPI const char *efreet_data_home_get(void); EAPI Eina_List *efreet_data_dirs_get(void); diff --git a/legacy/efreet/src/lib/efreet_cache.c b/legacy/efreet/src/lib/efreet_cache.c index fedc19b55b..9710b51561 100644 --- a/legacy/efreet/src/lib/efreet_cache.c +++ b/legacy/efreet/src/lib/efreet_cache.c @@ -1,4 +1,10 @@ /* vim: set sw=4 ts=4 sts=4 et: */ +#ifdef HAVE_CONFIG_H +# include +#endif + +#include + #include "Efreet.h" #include "efreet_private.h" diff --git a/legacy/efreet/src/lib/efreet_desktop.c b/legacy/efreet/src/lib/efreet_desktop.c index 2983983e0d..9aa8fb469e 100644 --- a/legacy/efreet/src/lib/efreet_desktop.c +++ b/legacy/efreet/src/lib/efreet_desktop.c @@ -1,4 +1,22 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include +#include + +#ifdef _WIN32 +# include +#endif + +#include +#include + #include "Efreet.h" #include "efreet_private.h" @@ -549,8 +567,10 @@ static void * efreet_desktop_exec_cb(void *data, Efreet_Desktop *desktop __UNUSED__, char *exec, int remaining __UNUSED__) { +#ifndef _WIN32 ecore_exe_run(exec, data); free(exec); +#endif return NULL; } diff --git a/legacy/efreet/src/lib/efreet_desktop.h b/legacy/efreet/src/lib/efreet_desktop.h index a579d423ad..f301463cd6 100644 --- a/legacy/efreet/src/lib/efreet_desktop.h +++ b/legacy/efreet/src/lib/efreet_desktop.h @@ -12,8 +12,6 @@ * @{ */ -#include - EAPI extern int EFREET_DESKTOP_TYPE_APPLICATION; EAPI extern int EFREET_DESKTOP_TYPE_LINK; EAPI extern int EFREET_DESKTOP_TYPE_DIRECTORY; diff --git a/legacy/efreet/src/lib/efreet_icon.c b/legacy/efreet/src/lib/efreet_icon.c index 02c3fac1c3..af8fdfa717 100644 --- a/legacy/efreet/src/lib/efreet_icon.c +++ b/legacy/efreet/src/lib/efreet_icon.c @@ -1,4 +1,21 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + #include "Efreet.h" #include "efreet_private.h" diff --git a/legacy/efreet/src/lib/efreet_icon.h b/legacy/efreet/src/lib/efreet_icon.h index 26d35e694d..18ce0ddd9c 100644 --- a/legacy/efreet/src/lib/efreet_icon.h +++ b/legacy/efreet/src/lib/efreet_icon.h @@ -12,8 +12,6 @@ * @{ */ -#include - /** * The possible contexts for an icon directory */ diff --git a/legacy/efreet/src/lib/efreet_ini.c b/legacy/efreet/src/lib/efreet_ini.c index 7c14efd47d..4e00104bc1 100644 --- a/legacy/efreet/src/lib/efreet_ini.c +++ b/legacy/efreet/src/lib/efreet_ini.c @@ -1,4 +1,34 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include +#include +#include +#include + +#ifdef HAVE_ALLOCA_H +# include +#elif defined __GNUC__ +# define alloca __builtin_alloca +#elif defined _AIX +# define alloca __alloca +#elif defined _MSC_VER +# include +# define alloca _alloca +#else +# include +# ifdef __cplusplus +extern "C" +# endif +void *alloca (size_t); +#endif + #include "Efreet.h" #include "efreet_private.h" diff --git a/legacy/efreet/src/lib/efreet_menu.c b/legacy/efreet/src/lib/efreet_menu.c index 3b395f1853..c4b632b9fc 100644 --- a/legacy/efreet/src/lib/efreet_menu.c +++ b/legacy/efreet/src/lib/efreet_menu.c @@ -1,6 +1,20 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include + +#include +#include + #include "Efreet.h" #include "efreet_private.h" +#include "efreet_xml.h" /** * Efreet_Menu_Move diff --git a/legacy/efreet/src/lib/efreet_menu.h b/legacy/efreet/src/lib/efreet_menu.h index 9218139f1c..a6643d3d26 100644 --- a/legacy/efreet/src/lib/efreet_menu.h +++ b/legacy/efreet/src/lib/efreet_menu.h @@ -12,8 +12,6 @@ * @{ */ -#include - /** * The type of entry */ diff --git a/legacy/efreet/src/lib/efreet_mime.c b/legacy/efreet/src/lib/efreet_mime.c index b758f651a5..502e356207 100644 --- a/legacy/efreet/src/lib/efreet_mime.c +++ b/legacy/efreet/src/lib/efreet_mime.c @@ -1,11 +1,52 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 +# include +#endif + +#ifdef HAVE_ARPA_INET +# include +#endif + +#ifdef HAVE_ALLOCA_H +# include +#elif defined __GNUC__ +# define alloca __builtin_alloca +#elif defined _AIX +# define alloca __alloca +#elif defined _MSC_VER +# include +# define alloca _alloca +#else +# include +# ifdef __cplusplus +extern "C" +# endif +void *alloca (size_t); +#endif + +#include +#include + #include #include #include "efreet_private.h" -#include -#include -#include -#include static Eina_List *globs = NULL; /* contains Efreet_Mime_Glob structs */ static Eina_List *magics = NULL; /* contains Efreet_Mime_Magic structs */ @@ -635,8 +676,10 @@ efreet_mime_special_check(const char *file) if (S_ISREG(s.st_mode)) return NULL; +#ifndef _WIN32 if (S_ISLNK(s.st_mode)) return "inode/symlink"; +#endif if (S_ISFIFO(s.st_mode)) return "inode/fifo"; @@ -647,8 +690,10 @@ efreet_mime_special_check(const char *file) if (S_ISBLK(s.st_mode)) return "inode/blockdevice"; +#ifndef _WIN32 if (S_ISSOCK(s.st_mode)) return "inode/socket"; +#endif if (S_ISDIR(s.st_mode)) { diff --git a/legacy/efreet/src/lib/efreet_private.h b/legacy/efreet/src/lib/efreet_private.h index a566670af4..18849a3376 100644 --- a/legacy/efreet/src/lib/efreet_private.h +++ b/legacy/efreet/src/lib/efreet_private.h @@ -11,32 +11,6 @@ * @{ */ -#include "config.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifdef HAVE_ALLOCA_H -#include -#endif - -#include -#include -#include -#include - -#include "efreet_xml.h" -#include "efreet_ini.h" - /** * @def NEW(x, c) * Allocate and zero out c structures of type x diff --git a/legacy/efreet/src/lib/efreet_trash.c b/legacy/efreet/src/lib/efreet_trash.c index 3fd279f2fb..3cf919fb6b 100644 --- a/legacy/efreet/src/lib/efreet_trash.c +++ b/legacy/efreet/src/lib/efreet_trash.c @@ -1,6 +1,15 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include #include #include + +#include + #include "Efreet.h" #include "Efreet_Trash.h" #include "efreet_private.h" diff --git a/legacy/efreet/src/lib/efreet_uri.c b/legacy/efreet/src/lib/efreet_uri.c index 0904b0861a..1ba0416788 100644 --- a/legacy/efreet/src/lib/efreet_uri.c +++ b/legacy/efreet/src/lib/efreet_uri.c @@ -1,4 +1,18 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include + +#ifdef HAVE_EVIL +# include +#endif + #include "Efreet.h" #include "efreet_private.h" diff --git a/legacy/efreet/src/lib/efreet_uri.h b/legacy/efreet/src/lib/efreet_uri.h index c7d4070b3b..7f5d14a4e5 100644 --- a/legacy/efreet/src/lib/efreet_uri.h +++ b/legacy/efreet/src/lib/efreet_uri.h @@ -9,8 +9,6 @@ * @{ */ -#include - /** * Efreet_Uri diff --git a/legacy/efreet/src/lib/efreet_utils.c b/legacy/efreet/src/lib/efreet_utils.c index 9146e8d71b..35096077a4 100644 --- a/legacy/efreet/src/lib/efreet_utils.c +++ b/legacy/efreet/src/lib/efreet_utils.c @@ -1,4 +1,18 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include +#include + +#include +#include + #include "Efreet.h" #include "efreet_private.h" diff --git a/legacy/efreet/src/lib/efreet_utils.h b/legacy/efreet/src/lib/efreet_utils.h index eb3f90180a..eb21b5fee5 100644 --- a/legacy/efreet/src/lib/efreet_utils.h +++ b/legacy/efreet/src/lib/efreet_utils.h @@ -2,8 +2,6 @@ #ifndef EFREET_UTILS_H #define EFREET_UTILS_H -#include - typedef enum _Efreet_Desktop_Change Efreet_Desktop_Change; enum _Efreet_Desktop_Change diff --git a/legacy/efreet/src/lib/efreet_xml.c b/legacy/efreet/src/lib/efreet_xml.c index b2b32a1e5c..1d60a26609 100644 --- a/legacy/efreet/src/lib/efreet_xml.c +++ b/legacy/efreet/src/lib/efreet_xml.c @@ -1,6 +1,27 @@ /* vim: set sw=4 ts=4 sts=4 et: */ + +#ifdef HAVE_CONFIG_H +# include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef HAVE_EVIL +# include +#endif + +#include + #include "Efreet.h" #include "efreet_private.h" +#include "efreet_xml.h" #if 0 static void efreet_xml_dump(Efreet_Xml *xml, int level); @@ -64,23 +85,23 @@ efreet_xml_new(const char *file) if (!file) return NULL; size = ecore_file_size(file); - if (size <= 0) goto ERROR; + if (size <= 0) goto efreet_error; fd = open(file, O_RDONLY); - if (fd == -1) goto ERROR; + if (fd == -1) goto efreet_error; data = mmap(NULL, size, PROT_READ, MAP_SHARED, fd, 0); - if (data == (void *)-1) goto ERROR; + if (data == (void *)-1) goto efreet_error; error = 0; xml = efreet_xml_parse(&data, &size); - if (error) goto ERROR; + if (error) goto efreet_error; munmap(data, size); close(fd); return xml; -ERROR: +efreet_error: fprintf(stderr, "[efreet]: could not parse xml file\n"); if (data != (void *)-1) munmap(data, size); if (fd != -1) close(fd); @@ -335,7 +356,7 @@ efreet_xml_attributes_parse(char **data, int *size, if (buf_size <= 1) { fprintf(stderr, "[efreet]: zero length key\n"); - goto ERROR; + goto efreet_error; } if (buf_size > 256) buf_size = 256; @@ -359,7 +380,7 @@ efreet_xml_attributes_parse(char **data, int *size, if (!start) { fprintf(stderr, "[efreet]: missing value for attribute!\n"); - goto ERROR; + goto efreet_error; } /* search for '"', beginning of value */ @@ -378,7 +399,7 @@ efreet_xml_attributes_parse(char **data, int *size, if (!start) { fprintf(stderr, "[efreet]: erroneous value for attribute!\n"); - goto ERROR; + goto efreet_error; } /* skip '"' */ @@ -402,14 +423,14 @@ efreet_xml_attributes_parse(char **data, int *size, if (!end) { fprintf(stderr, "[efreet]: erroneous value for attribute!\n"); - goto ERROR; + goto efreet_error; } buf_size = end - start + 1; if (buf_size <= 1) { fprintf(stderr, "[efreet]: zero length value\n"); - goto ERROR; + goto efreet_error; } if (buf_size > 256) buf_size = 256; @@ -433,7 +454,7 @@ efreet_xml_attributes_parse(char **data, int *size, } return; -ERROR: +efreet_error: while (count >= 0) { if (attr[count].key) eina_stringshare_del(attr[count].key);