Hi all,
Today I used enlightenment without -fvisibility=hidden and noticed a
complain of mixer/connman users: they clash. Investigating the cause,
I found that _Name were not defined static in both, so they clashed. I
fixed my modules, but then I ran a quick script over modules and got
the following list (please investigate further). I'm about to travel
so I can't fix them now, please help:
note: I hand edited and cut some obvious cases, but the command was:
for m in *; do echo "$m:"; readelf -s
/usr/lib/enlightenment/modules/$m/linux-gnu-i686-ver-pre-svn-05/module.so
| grep 'GLOBAL DEFAULT' | grep -v 'UND ' | grep -v
"\(_fini\|_init\|__bss_start\|_end\|_edata\|e_modapi\|evry\|e_kbd_\|il_\|e_int_\|e_fwin\|_\?e_$m\|_\?$m\)"
| sed "s/.* \([a-zA-Z0-9_]\+\)/ \1/g"; done
conf_colors:
_wid_hash
_wm_hash
color_classes
_mod_hash
conf_exebuf:
scroll_list
conf_fonts:
text_class_predefined_nam
conf_intl:
charset_predefined_pairs
language_predefined_pairs
basic_language_predefined
region_predefined_pairs
conf_mime:
types
conf_profiles
_dia_new_profile
conf_window_display
shading_list
conf_window_manipulation
autoraise_list
resistance_list
conf_winlist
scroll_animation_list
iconified_list
everything
selectors
action_selector
fileman
_e_mod_menu_generate
gadman
current
Man
ibox
show_label_list
illume
slipshelf
gadits
delay_label
_e_mod_gad_gsm_shutdown
delay_slider
local_slipshelf
external_keyboard
illume2
policy_name
o_top
_sw_change_timer
_ps_change_timer
stype
_windows_change_timer
o_left
_anim_change_timer
_policy_change_timer
illume-home
delay_slider
delay_label
illume-keyboard
external
illume-softkey
e_mod_sk_win_shutdown
e_mod_sk_win_new
msgbus_lang
cb_langs
notification
_gc_orient
uuid
_gc_class
pager
popup_list
Lots of them were introduced with last illume modules (/me look at
devilhorns ;-))
How to solve? Simple, go to that module and PREFIX the variable with
_e_${MODNAME}_ or _${MODNAME}_ to make clear they will not clash with
another module.
Something else is to not use RTLD_GLOBAL but RTLD_LOCAL for modules,
providing some other way to register module things for other parts
(need to think and clarify about this, but it's lots of work I guess).
BR,
--
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: [email protected]
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202
------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel