setlocale(LC_NUMERIC, "C");
+ ecore_app_no_system_modules();
+
if (!eina_init())
return -1;
setlocale(LC_NUMERIC, "C");
+ ecore_app_no_system_modules();
+
eina_init();
ecore_init();
ecore_evas_init();
setlocale(LC_NUMERIC, "C");
+ ecore_app_no_system_modules();
+
if (!eina_init())
return -1;
int i;
setlocale(LC_NUMERIC, "C");
+
+ ecore_app_no_system_modules();
+
if (!eina_init())
exit(-1);
_edje_cc_log_dom = eina_log_domain_register
setlocale(LC_NUMERIC, "C");
+ ecore_app_no_system_modules();
+
ecore_init();
eina_init();
edje_init();
setlocale(LC_NUMERIC, "C");
+ ecore_app_no_system_modules();
+
ecore_init();
ecore_evas_init();
eina_init();
void *n;
int k, bytes;
+ ecore_app_no_system_modules();
+
eina_init();
eet_init();
ecore_init();
EAPI void ecore_app_restart(void);
/**
+ * @brief Do not load system modules for this application.
+ *
+ * Ecore will now load platform-specific system modules such as
+ * power-management, time and locate monitors.
+ *
+ * Whenever this function is called @b before ecore_init(), ecore
+ * won't load such modules.
+ *
+ * This may be useful to some command-line utilities, hardly will be
+ * useful for end-user applications.
+ *
+ * @since 1.8
+ */
+EAPI void ecore_app_no_system_modules(void);
+
+/**
* @}
*/
#endif
#endif
+static Eina_Bool _no_system_modules = EINA_FALSE;
+
Eo *_ecore_parent = NULL;
static const char *_ecore_magic_string_get(Ecore_Magic m);
}
}
+EAPI void
+ecore_app_no_system_modules(void)
+{
+ _no_system_modules = EINA_TRUE;
+}
+
/**
* @addtogroup Ecore_Init_Group
*
}
#endif
- ecore_system_modules_load();
+ if (!_no_system_modules)
+ ecore_system_modules_load();
eina_log_timing(_ecore_log_dom,
EINA_LOG_STATE_STOP,