-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 9/16/2010 11:21 AM, Carmelo AMOROSO wrote: > Folks, > we are proud to announce the availability of prelink support for uClibc. > This work required a big effort from STMicroelectronics uClibc team, > especially my colleague Filippo Arcidiacono, and we really would like to > upstream. > > We have just rebased all of the work with respect to the mainstream, > executed the prelink test suite without problem on SH4 arch. > > Before including this work into master, I'd like to do a global review > with all of you. > > We will send the set of patches soon, anyway I'd prefer to create a new > *prelink* branch also that everybody can use to play wi.th, and on top > of which we can add fixes/enhancements and rework if needed. > > Once the prelink review/test is completed, we can easily merge it back > to master. > > All the work has been re-organised in a small set of patches per > functionality, that I'll describe below. > > These capabilities are controlled by the two config option, under > "General Library Settings" section. > > LDSO_STANDALONE_SUPPORT > LDSO_PRELINK_SUPPORT (selects LDSO_STANDALONE_SUPPORT) > > --- > 1. stand-alone mode execution > > The prelink tool has to be run on the target system to retrieve > information from the application and the shared libraries; to do this it > needs to be able to invoke the dynamic linker as a stand-alone application. > Currently only --library-path option is supported (mandatory for prelinking) > Todo: --list, --verify, --inhibit-rpath > > 2. full featured tracing capabilities > > A new tracing option LD_WARN and LD_TRACE_PRELINKING has been added to > provide some extra trace information used by the prelink tool. > > 3. global and local symbol scope handling > > To support the extended tracing capabilities for prelinking, it was > necessary to redesign the lookup process to support searching in the > local scope. > Global symbol scope is now implemented as a linked list of local scope, > that dynamically grows and shrinks when dlopen/dlclose are called. Each > local scope is implemented as an array of pointer to struct elf_resolve. > > 4. prelinked libraries runtime support > > The dynamic linker must check if it is loading a set of prelinked > libraries, and must handle any conflicts in symbol resolution that have > been detected by the prelink tool using the extended tracing capabilities.
Folks, prelink branch is up. I encourage everybody to give it a try and review. I've sent the patches anyway that can be applied onto master. Carmelo _______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkyXILgACgkQoRq/3BrK1s/lLACg5bOGqCosk4Tsd0ncfcmyw9qz NSsAnjs3uT3pl3HVxgxPyVKRaqf78LpH =7Yif -----END PGP SIGNATURE----- _______________________________________________ uClibc mailing list [email protected] http://lists.busybox.net/mailman/listinfo/uclibc
