An updated patch is attached. The results are

without the patch
atk.so: 616 relocations, 600 relative (97%), 252 PLT entries, 0 for
local syms (0%), 0 users
pango.so: 727 relocations, 710 relative (97%), 280 PLT entries, 0 for
local syms (0%), 0 users
pangocairo.so: 67 relocations, 59 relative (88%), 42 PLT entries, 0
for local syms (0%), 0 users
_glade.so: 64 relocations, 53 relative (82%), 55 PLT entries, 0 for
local syms (0%), 0 users
gtkunixprint.so: 108 relocations, 98 relative (90%), 63 PLT entries, 0
for local syms (0%), 0 users
_gtkimpl.so: 12509 relocations, 12468 relative (99%), 3452 PLT
entries, 0 for local syms (0%), 0 users

with patch
atk.so: 592 relocations, 576 relative (97%), 252 PLT entries, 0 for
local syms (0%), 0 users
pango.so: 708 relocations, 691 relative (97%), 280 PLT entries, 0 for
local syms (0%), 0 users
pangocairo.so: 66 relocations, 58 relative (87%), 42 PLT entries, 0
for local syms (0%), 0 users
_glade.so: 63 relocations, 52 relative (82%), 55 PLT entries, 0 for
local syms (0%), 0 users
gtkunixprint.so: 104 relocations, 94 relative (90%), 63 PLT entries, 0
for local syms (0%), 0 users
_gtkimpl.so: 12314 relocations, 12273 relative (99%), 3452 PLT
entries, 0 for local syms (0%), 0 users

Best Regards,
Rafael
Python for Maemo,
INdT
Index: codegen/codegen.py
===================================================================
RCS file: /cvs/gnome/pygtk/codegen/codegen.py,v
retrieving revision 1.118
diff -u -r1.118 codegen.py
--- codegen/codegen.py	14 Jul 2006 01:39:07 -0000	1.118
+++ codegen/codegen.py	17 Jul 2006 14:30:44 -0000
@@ -10,6 +10,8 @@
 import override
 import reversewrapper
 
+visibility = '__attribute__ ((visibility ("hidden")))'
+
 class Coverage(object):
     def __init__(self, name):
         self.name = name
@@ -91,7 +93,7 @@
 
 class Wrapper:
     type_tmpl = (
-        'PyTypeObject Py%(typename)s_Type = {\n'
+        'PyTypeObject ' + visibility +  ' Py%(typename)s_Type = {\n'
         '    PyObject_HEAD_INIT(NULL)\n'
         '    0,                                 /* ob_size */\n'
         '    "%(classname)s",                   /* tp_name */\n'
@@ -1287,16 +1289,17 @@
         self.fp.write('\n\n')
 
     def write_type_declarations(self):
+        #todo use 'static' if used only in one file
         self.fp.write('/* ---------- forward type declarations ---------- */\n')
         for obj in self.parser.boxes:
             if not self.overrides.is_type_ignored(obj.c_name):
-                self.fp.write('PyTypeObject Py' + obj.c_name + '_Type;\n')
+                self.fp.write('PyTypeObject ' + visibility + 'Py' + obj.c_name + '_Type;\n')
         for obj in self.parser.objects:
             if not self.overrides.is_type_ignored(obj.c_name):
-                self.fp.write('PyTypeObject Py' + obj.c_name + '_Type;\n')
+                self.fp.write('PyTypeObject ' + visibility + 'Py' + obj.c_name + '_Type;\n')
         for interface in self.parser.interfaces:
             if not self.overrides.is_type_ignored(interface.c_name):
-                self.fp.write('PyTypeObject Py' + interface.c_name + '_Type;\n')
+                self.fp.write('PyTypeObject ' + visibility + 'Py' + interface.c_name + '_Type;\n')
         self.fp.write('\n')
 
     def write_body(self):
_______________________________________________
maemo-developers mailing list
[email protected]
https://maemo.org/mailman/listinfo/maemo-developers

Reply via email to