Print this page
crt: Need a position-independent CRT for PIE
- Implement the greatest possible part of the crt1 in C
- Implement SPARC versions of the ASM sections of crt1
- Build crt1 position-independently, minor ASM updates to be position
independent
- Implement crt1 with the hook expected by modern GCC to support
profiling, make gcrt1 a symlink for source compatibility (older GCC
initializes profiling at firsnt use of _mcount if necessary, so
doesn't need the gcrt)
- Split the CRT out of developer/library/lint into a separate c-runtime package
*** 41,51 ****
# interdependencies" below.
.PARALLEL:
# Build libc and its dependencies
SUBDIRS= \
! common \
../cmd/sgs/libconv \
../cmd/sgs/libdl \
libc \
.WAIT
--- 41,51 ----
# interdependencies" below.
.PARALLEL:
# Build libc and its dependencies
SUBDIRS= \
! crt \
../cmd/sgs/libconv \
../cmd/sgs/libdl \
libc \
.WAIT
*** 548,559 ****
_msg: $(MSGSUBDIRS:%=%-nodepend) .WAIT _dc
_dc: $(DCSUBDIRS:%=%-nodepend)
# Library interdependencies are called out explicitly here.
! ../cmd/sgs/libconv: common
! ../cmd/sgs/libdl: common
libc: ../cmd/sgs/libconv ../cmd/sgs/libdl
libm: libc
libmd: libc
libmp: libc
--- 548,559 ----
_msg: $(MSGSUBDIRS:%=%-nodepend) .WAIT _dc
_dc: $(DCSUBDIRS:%=%-nodepend)
# Library interdependencies are called out explicitly here.
! ../cmd/sgs/libconv: crt
! ../cmd/sgs/libdl: crt
libc: ../cmd/sgs/libconv ../cmd/sgs/libdl
libm: libc
libmd: libc
libmp: libc