Commit Graph

14 Commits

Author SHA1 Message Date
Rich Felker
3c870263c5 two fixes for "make install" handling of shared libs
1. don't try to install (and thus build) shared libs when they were
disabled in config.mak

2. ensure that the path for the dynamic linker exists before
attempting to install it.
2012-02-17 23:17:48 -05:00
Rich Felker
8d54681f15 fix a few bugs from last dynamic linking build system commit
some cruft was left and DESTDIR was not being used correctly.
2011-06-28 08:27:38 -04:00
Rich Felker
207c45d7ab cleanup shared library build system to be more $HOME-local-install friendly
the path for the dynamic linker is now configurable, and failure to
install the symlink for it will not stop the build.
2011-06-27 21:38:11 -04:00
Rich Felker
e0b0ff1598 use soname in ld-musl.so to prevent filename appearing in DT_NEEDEDs 2011-06-24 18:32:30 -04:00
Rich Felker
a654b0243b use symlink rather than bogus linker script for libc.so
the linker script caused a bogus DT_NEEDED entry
2011-06-24 14:02:47 -04:00
Rich Felker
ec05a0b08f adapt build/install/gcc-wrapper systems for dynamic linking support 2011-06-23 22:13:47 -04:00
Rich Felker
41d518360f various changes in preparation for dynamic linking support
prefer using visibility=hidden for __libc internal data, rather than
an accessor function, if the compiler has visibility.

optimize with -O3 for PIC targets (shared library). without heavy
inlining, reloading the GOT register in small functions kills
performance. 20-30% size increase for a single libc.so is not a big
deal, compared to comparaible size increase in every static binaries.

use -Bsymbolic-functions, not -Bsymbolic. global variables are subject
to COPY relocations, and thus binding their addresses in the library
at link time will cause library functions to read the wrong (original)
copies instead of the copies made in the main program's bss section.

add entry point, _start, for dynamic linker.
2011-02-24 16:37:21 -05:00
Rich Felker
127ab575fc avoid deleting the lib/empty file 2011-02-17 17:57:26 -05:00
Rich Felker
4fd159568a new solution for empty lib dir (old one had some problems) 2011-02-17 17:12:52 -05:00
Rich Felker
a36164c474 improve Makefile handling of git checkouts with missing lib/ and config.mak 2011-02-17 15:15:03 -05:00
Rich Felker
7b2dd2235d finish unifying thread register handling in preparation for porting 2011-02-15 03:56:52 -05:00
Rich Felker
1355fdca7c preparing build system to handle ports - step 1 2011-02-15 00:33:23 -05:00
Rich Felker
6027201e5a ensure that musl is compiled as C99 code & XSI option is available in headers 2011-02-13 16:48:39 -05:00
Rich Felker
0b44a0315b initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00