summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2020-05-10 12:47:58 +0200
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2020-05-26 10:15:30 +0200
commit3ec1101652a9fedbfa40a29bcfe4842b1c86051e (patch)
tree59176e1e6e48eb2fff038673b884774d875814cb
parentb13534196167d6e8db11005b3e4cb16a6c82dd85 (diff)
downloadefl-3ec1101652a9fedbfa40a29bcfe4842b1c86051e.tar.gz
Merge efreet_mime efreet_trash into efreet
efreet_mime and efreet_trash are now included in libefreet.so. There are compatible libs for libefreet_mime.so libefreet_trash.so, which simple drag in libefreet.so. .pc files also are in place for compatibility. efreet_init & shutdown now initializes and shutdowns trash and mime. The old init functions now simply call efreet_init, efreet_init will then init the trash or mime libs. Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org> Differential Revision: https://phab.enlightenment.org/D11807
-rw-r--r--src/lib/efreet/Efreet.h3
-rw-r--r--src/lib/efreet/efreet.c12
-rw-r--r--src/lib/efreet/efreet_mime.c40
-rw-r--r--src/lib/efreet/efreet_private.h8
-rw-r--r--src/lib/efreet/efreet_trash.c26
-rw-r--r--src/lib/efreet/meson.build47
-rw-r--r--src/lib/eio/meson.build2
-rw-r--r--src/lib/elementary/meson.build4
-rw-r--r--src/tests/efreet/meson.build2
9 files changed, 79 insertions, 65 deletions
diff --git a/src/lib/efreet/Efreet.h b/src/lib/efreet/Efreet.h
index 51fbfebf6f..af25e033fa 100644
--- a/src/lib/efreet/Efreet.h
+++ b/src/lib/efreet/Efreet.h
@@ -167,6 +167,9 @@ EAPI void efreet_cache_disable(void);
*/
EAPI void efreet_cache_enable(void);
+#include <Efreet_Mime.h>
+#include <Efreet_Trash.h>
+
#undef EAPI
#define EAPI
diff --git a/src/lib/efreet/efreet.c b/src/lib/efreet/efreet.c
index 091899f2b2..4c20b12bc1 100644
--- a/src/lib/efreet/efreet.c
+++ b/src/lib/efreet/efreet.c
@@ -94,6 +94,12 @@ efreet_init(void)
if (!efreet_util_init())
goto shutdown_efreet_menu;
+ if (!efreet_internal_mime_init())
+ goto shutdown_efreet_mime;
+
+ if (!efreet_internal_trash_init())
+ goto shutdown_efreet_trash;
+
#ifdef ENABLE_NLS
bindtextdomain(PACKAGE, LOCALE_DIR);
bind_textdomain_codeset(PACKAGE, "UTF-8");
@@ -101,6 +107,10 @@ efreet_init(void)
return _efreet_init_count;
+shutdown_efreet_trash:
+ efreet_internal_trash_shutdown();
+shutdown_efreet_mime:
+ efreet_internal_mime_shutdown();
shutdown_efreet_menu:
efreet_menu_shutdown();
shutdown_efreet_desktop:
@@ -146,6 +156,8 @@ efreet_shutdown(void)
efreet_xml_shutdown();
efreet_cache_shutdown();
efreet_base_shutdown();
+ efreet_internal_mime_shutdown();
+ efreet_internal_trash_shutdown();
IF_RELEASE(efreet_lang);
IF_RELEASE(efreet_lang_country);
diff --git a/src/lib/efreet/efreet_mime.c b/src/lib/efreet/efreet_mime.c
index 9eba8c8db9..d94894ff71 100644
--- a/src/lib/efreet/efreet_mime.c
+++ b/src/lib/efreet/efreet_mime.c
@@ -348,21 +348,12 @@ _efreet_mimedb_glob_mime_get(unsigned int num)
/** --------------------------------- **/
-EAPI int
-efreet_mime_init(void)
+int
+efreet_internal_mime_init(void)
{
if (++_efreet_mime_init_count != 1)
return _efreet_mime_init_count;
- if (!ecore_init())
- return --_efreet_mime_init_count;
-
- if (!ecore_file_init())
- goto shutdown_ecore;
-
- if (!efreet_init())
- goto shutdown_ecore_file;
-
_efreet_mime_log_dom = eina_log_domain_register
("efreet_mime", EFREET_DEFAULT_LOG_COLOR);
@@ -388,17 +379,11 @@ unregister_log_domain:
eina_log_domain_unregister(_efreet_mime_log_dom);
_efreet_mime_log_dom = -1;
shutdown_efreet:
- efreet_shutdown();
-shutdown_ecore_file:
- ecore_file_shutdown();
-shutdown_ecore:
- ecore_shutdown();
-
return --_efreet_mime_init_count;
-}
+ }
-EAPI int
-efreet_mime_shutdown(void)
+int
+efreet_internal_mime_shutdown(void)
{
if (_efreet_mime_init_count == 0)
{
@@ -428,13 +413,22 @@ efreet_mime_shutdown(void)
IF_FREE_HASH(mime_icons);
eina_log_domain_unregister(_efreet_mime_log_dom);
_efreet_mime_log_dom = -1;
- efreet_shutdown();
- ecore_file_shutdown();
- ecore_shutdown();
return _efreet_mime_init_count;
}
+EAPI int
+efreet_mime_init(void)
+{
+ return efreet_init();
+}
+
+EAPI int
+efreet_mime_shutdown(void)
+{
+ return efreet_shutdown();
+}
+
EAPI const char *
efreet_mime_type_get(const char *file)
{
diff --git a/src/lib/efreet/efreet_private.h b/src/lib/efreet/efreet_private.h
index eb42c28f74..77a74dfca1 100644
--- a/src/lib/efreet/efreet_private.h
+++ b/src/lib/efreet/efreet_private.h
@@ -114,7 +114,7 @@
/**
* macros that are used all around the code for message processing
- * four macros are defined ERR, WRN, DGB, INF.
+ * four macros are defined ERR, WRN, DGB, INF.
* EFREET_MODULE_LOG_DOM should be defined individually for each module
*/
#ifdef CRI
@@ -214,6 +214,12 @@ void efreet_desktop_shutdown(void);
int efreet_util_init(void);
int efreet_util_shutdown(void);
+int efreet_internal_mime_init(void);
+int efreet_internal_mime_shutdown(void);
+
+int efreet_internal_trash_init(void);
+int efreet_internal_trash_shutdown(void);
+
const char *efreet_home_dir_get(void);
void efreet_dirs_reset(void);
diff --git a/src/lib/efreet/efreet_trash.c b/src/lib/efreet/efreet_trash.c
index 04a4a6cda4..f3837caf47 100644
--- a/src/lib/efreet/efreet_trash.c
+++ b/src/lib/efreet/efreet_trash.c
@@ -32,28 +32,25 @@ static const char *efreet_trash_dir = NULL;
# define getuid() GetCurrentProcessId()
#endif
-EAPI int
-efreet_trash_init(void)
+
+int
+efreet_internal_trash_init(void)
{
if (++_efreet_trash_init_count != 1)
return _efreet_trash_init_count;
- if (!eina_init())
- return --_efreet_trash_init_count;
-
_efreet_trash_log_dom = eina_log_domain_register
("efreet_trash", EFREET_DEFAULT_LOG_COLOR);
if (_efreet_trash_log_dom < 0)
{
EINA_LOG_ERR("Efreet: Could not create a log domain for efreet_trash");
- eina_shutdown();
return --_efreet_trash_init_count;
}
return _efreet_trash_init_count;
}
-EAPI int
-efreet_trash_shutdown(void)
+int
+efreet_internal_trash_shutdown(void)
{
if (--_efreet_trash_init_count != 0)
return _efreet_trash_init_count;
@@ -61,11 +58,22 @@ efreet_trash_shutdown(void)
IF_RELEASE(efreet_trash_dir);
eina_log_domain_unregister(_efreet_trash_log_dom);
_efreet_trash_log_dom = -1;
- eina_shutdown();
return _efreet_trash_init_count;
}
+EAPI int
+efreet_trash_init(void)
+{
+ return efreet_init();
+}
+
+EAPI int
+efreet_trash_shutdown(void)
+{
+ return efreet_shutdown();
+}
+
EAPI const char*
efreet_trash_dir_get(const char *file)
{
diff --git a/src/lib/efreet/meson.build b/src/lib/efreet/meson.build
index f438b02845..271eca0b1a 100644
--- a/src/lib/efreet/meson.build
+++ b/src/lib/efreet/meson.build
@@ -25,7 +25,9 @@ efreet_src = [
'efreet_cache.c',
'efreet_private.h',
'efreet_xml.h',
- 'efreet_cache_private.h'
+ 'efreet_cache_private.h',
+ 'efreet_mime.c',
+ 'efreet_trash.c'
]
efreet_deps = [eet, ecore, ecore_con, ecore_file, eo, efl, eina, emile, ecore_ipc, buildsystem,intl]
@@ -46,50 +48,39 @@ efreet = declare_dependency(
dependencies: efreet_pub_deps,
)
-efreet_mime_lib = library('efreet_mime',
- 'efreet_mime.c',
- dependencies: efreet_pub_deps + [m, efreet, efreet_deps],
- include_directories : config_dir + [include_directories('.')],
- install: true,
- c_args : package_c_args,
- version : meson.project_version()
+install_headers(efreet_header_src,
+ install_dir : dir_package_include,
)
-efreet_mime = declare_dependency(
- include_directories: [include_directories('.')],
- link_with: efreet_mime_lib,
- dependencies: efreet_pub_deps
-)
+#Deprecated efreet libs
+# everything and everyone should use efreet itself, efreet_mime and efreet_trash are contained in libefreet.so
+# libefreet_mime.so and libefreet_trash.so will just have NEEDED on libefreet.so so the symbols get caught in like that
-efreet_trash_lib = library('efreet_trash',
- 'efreet_trash.c',
- dependencies: efreet_pub_deps + [efreet, efreet_deps],
+deprecated_efreet_mime_lib = library('efreet_mime',
+ dependencies: [efreet],
include_directories : config_dir + [include_directories('.')],
install: true,
- c_args : package_c_args,
version : meson.project_version()
)
-efreet_trash = declare_dependency(
- include_directories: [include_directories('.')],
- link_with: efreet_trash_lib,
- dependencies: efreet_pub_deps,
-)
-
-install_headers(efreet_header_src,
- install_dir : dir_package_include,
+deprecated_efreet_trash_lib = library('efreet_trash',
+ dependencies: efreet,
+ include_directories : config_dir + [include_directories('.')],
+ install: true,
+ version : meson.project_version()
)
-
-pkgconfig.generate(efreet_mime_lib,
+pkgconfig.generate(efreet_lib,
name : 'efreet-mime',
+ description : 'Deprecated, please just use efreet',
subdirs : package_version_name,
version : version_major + '.' + version_minor + '.' + version_micro,
libraries : efreet_pub_deps,
)
-pkgconfig.generate(efreet_trash_lib,
+pkgconfig.generate(efreet_lib,
name : 'efreet-trash',
+ description : 'Deprecated, please just use efreet',
subdirs : package_version_name,
version : version_major + '.' + version_minor + '.' + version_micro,
libraries : efreet_pub_deps,
diff --git a/src/lib/eio/meson.build b/src/lib/eio/meson.build
index f95a1e652c..64f33a2430 100644
--- a/src/lib/eio/meson.build
+++ b/src/lib/eio/meson.build
@@ -63,7 +63,7 @@ elif sys_bsd == true
eio_src += ['eio_monitor_kevent.c']
endif
-eio_deps = [ecore, ecore_file, eet, eo, eina, efl, emile, efreet_mime]
+eio_deps = [ecore, ecore_file, eet, eo, eina, efl, emile, efreet]
eio_pub_deps = [eina, eet]
eio_lib = library('eio',
diff --git a/src/lib/elementary/meson.build b/src/lib/elementary/meson.build
index f2e7ed96fb..fb4431d3f7 100644
--- a/src/lib/elementary/meson.build
+++ b/src/lib/elementary/meson.build
@@ -949,9 +949,9 @@ elementary_src = [
'efl_ui_spotlight_animation_manager.c',
]
-elementary_deps = [emile, eo, efl, edje, ethumb, ethumb_client, emotion, ecore_imf, ecore_con, eldbus, efreet, efreet_mime, efreet_trash, eio, atspi, dl, intl]
+elementary_deps = [emile, eo, efl, edje, ethumb, ethumb_client, emotion, ecore_imf, ecore_con, eldbus, efreet, eio, atspi, dl, intl]
elementary_pub_deps = [eina, eet, evas, ecore, ecore_evas, ecore_file, ecore_input, ecore_imf, ecore_con,
- edje, eldbus, efreet, efreet_mime, efreet_trash, ethumb_client, efl]
+ edje, eldbus, efreet, ethumb_client, efl]
elm_options = configuration_data()
diff --git a/src/tests/efreet/meson.build b/src/tests/efreet/meson.build
index 4ce9156ec9..24364523f5 100644
--- a/src/tests/efreet/meson.build
+++ b/src/tests/efreet/meson.build
@@ -31,7 +31,7 @@ efreet_test_src = [
'main.c'
]
-efreet_test_deps = [check, efreet, ecore, ecore_file, efreet_mime, intl]
+efreet_test_deps = [check, efreet, ecore, ecore_file, intl]
efreet_test = executable('efreet_test',
efreet_test_src,