summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2020-09-30 19:45:43 +0200
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2020-09-30 19:45:43 +0200
commit09c6315a61371b1c0df3f9cb93d97ca4b46e93b8 (patch)
tree7ae2c4418b06400d65e9276f27bcd2b6f60679ba
parent4700af9c7ddb50270e1bd12303d31d6da176aa87 (diff)
efl: work arround something weirddevs/bu5hm4n/lets-annoy-travis
-rw-r--r--src/bin/edje/edje_cc.c2
-rw-r--r--src/lib/efl/Efl.h3
-rw-r--r--src/lib/efl/interfaces/efl_interfaces_main.c6
-rw-r--r--src/lib/elementary/elm_general.h4
4 files changed, 12 insertions, 3 deletions
diff --git a/src/bin/edje/edje_cc.c b/src/bin/edje/edje_cc.c
index dff3fd7a3e..11e2a900a9 100644
--- a/src/bin/edje/edje_cc.c
+++ b/src/bin/edje/edje_cc.c
@@ -156,6 +156,8 @@ main(int argc, char **argv)
156 if (!eina_init()) 156 if (!eina_init())
157 return -1; 157 return -1;
158 158
159 __efl_internal_appear();
160
159 _edje_cc_log_dom = eina_log_domain_register 161 _edje_cc_log_dom = eina_log_domain_register
160 ("edje_cc", EDJE_CC_DEFAULT_LOG_COLOR); 162 ("edje_cc", EDJE_CC_DEFAULT_LOG_COLOR);
161 if (_edje_cc_log_dom < 0) 163 if (_edje_cc_log_dom < 0)
diff --git a/src/lib/efl/Efl.h b/src/lib/efl/Efl.h
index 480249fae5..242e40c888 100644
--- a/src/lib/efl/Efl.h
+++ b/src/lib/efl/Efl.h
@@ -343,7 +343,8 @@ efl_config_string_get(const Efl_Config *obj, const char *name)
343 343
344/* work-around bug in gcc --as-needed link optimization */ 344/* work-around bug in gcc --as-needed link optimization */
345EAPI void __efl_internal_init(void); 345EAPI void __efl_internal_init(void);
346 346/* work-around bug in linkers where --as-needed strips all the libaries only having weak symbols */
347EAPI void __efl_internal_appear(void);
347#if defined ( __cplusplus ) 348#if defined ( __cplusplus )
348} 349}
349#endif 350#endif
diff --git a/src/lib/efl/interfaces/efl_interfaces_main.c b/src/lib/efl/interfaces/efl_interfaces_main.c
index 4856df5a6e..82268086e5 100644
--- a/src/lib/efl/interfaces/efl_interfaces_main.c
+++ b/src/lib/efl/interfaces/efl_interfaces_main.c
@@ -111,6 +111,12 @@ __efl_internal_init(void)
111 efl_model_init(); 111 efl_model_init();
112} 112}
113 113
114EAPI void
115__efl_internal_appear(void)
116{
117/* work-around bug in linkers where --as-needed strips all the libaries only having weak symbols */
118}
119
114static Eina_Value 120static Eina_Value
115_efl_ui_view_factory_item_created(Eo *factory, void *data EINA_UNUSED, const Eina_Value v) 121_efl_ui_view_factory_item_created(Eo *factory, void *data EINA_UNUSED, const Eina_Value v)
116{ 122{
diff --git a/src/lib/elementary/elm_general.h b/src/lib/elementary/elm_general.h
index b0708e11c3..cd6b96cab8 100644
--- a/src/lib/elementary/elm_general.h
+++ b/src/lib/elementary/elm_general.h
@@ -525,13 +525,13 @@ typedef Eina_Bool (*Elm_Event_Cb)(void *data, Evas_Object *obj, Evas
525EAPI extern double _elm_startup_time; 525EAPI extern double _elm_startup_time;
526 526
527#ifndef ELM_LIB_QUICKLAUNCH 527#ifndef ELM_LIB_QUICKLAUNCH
528#define ELM_MAIN() int main(int argc, char **argv) { int ret__; _elm_startup_time = ecore_time_unix_get(); elm_init(argc, argv); ret__ = elm_main(argc, argv); elm_shutdown(); return ret__; } /**< macro to be used after the elm_main() function */ 528#define ELM_MAIN() int main(int argc, char **argv) { int ret__; __efl_internal_appear(); _elm_startup_time = ecore_time_unix_get(); elm_init(argc, argv); ret__ = elm_main(argc, argv); elm_shutdown(); return ret__; } /**< macro to be used after the elm_main() function */
529#else 529#else
530/** @deprecated macro to be used after the elm_main() function. 530/** @deprecated macro to be used after the elm_main() function.
531 * Do not define ELM_LIB_QUICKLAUNCH 531 * Do not define ELM_LIB_QUICKLAUNCH
532 * Compile your programs with -fpie and -pie -rdynamic instead, to generate a single binary (linkable executable). 532 * Compile your programs with -fpie and -pie -rdynamic instead, to generate a single binary (linkable executable).
533 */ 533 */
534#define ELM_MAIN() int main(int argc, char **argv) { int ret__; _elm_startup_time = ecore_time_unix_get(); ret__ = elm_quicklaunch_fallback(argc, argv); elm_shutdown(); return ret__; } 534#define ELM_MAIN() int main(int argc, char **argv) { int ret__; __efl_internal_appear(); _elm_startup_time = ecore_time_unix_get(); ret__ = elm_quicklaunch_fallback(argc, argv); elm_shutdown(); return ret__; }
535#endif 535#endif
536 536
537#define __EFL_UI_IS_REQUIRED 537#define __EFL_UI_IS_REQUIRED