On 01/08/2010 05:03 PM, Gustavo Sverzut Barbieri wrote:
> 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 ;-))
>
Funny, most seem to come from conf modules or modules that ship w/ E.
Really not much in the illume2 department...sure, there are a few, but
not much ;)
dh
> 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,
>
------------------------------------------------------------------------------
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