Page MenuHomeFreeBSD

D23083.id66618.diff
No OneTemporary

D23083.id66618.diff

Index: head/libexec/rtld-elf/Makefile
===================================================================
--- head/libexec/rtld-elf/Makefile
+++ head/libexec/rtld-elf/Makefile
@@ -37,11 +37,6 @@
RTLD_ARCH= ${MACHINE_CPUARCH}
.endif
CFLAGS+= -I${RTLD_ELF_DIR}/${RTLD_ARCH} -I${RTLD_ELF_DIR}
-.if ${MACHINE_ARCH} == "powerpc64"
-LDFLAGS+= -nostdlib -e _rtld_start
-.else
-LDFLAGS+= -nostdlib -e .rtld_start
-.endif
NO_WCAST_ALIGN= yes
WARNS?= 6
@@ -52,36 +47,14 @@
MLINKS?= rtld.1 ld-elf.so.1.1 \
rtld.1 ld.so.1
-.if ${MACHINE_CPUARCH} == "sparc64"
-CFLAGS+= -fPIC
-.else
-CFLAGS+= -fpic
-.endif
-CFLAGS+= -DPIC $(DEBUG)
-.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386"
-CFLAGS+= -fvisibility=hidden
-.endif
-.if ${MACHINE_CPUARCH} == "mips"
-CFLAGS.reloc.c+=-fno-jump-tables
-.endif
-LDFLAGS+= -shared -Wl,-Bsymbolic -Wl,-z,defs
+CFLAGS+= -fpic -DPIC $(DEBUG)
+LDFLAGS+= -shared -Wl,-Bsymbolic -Wl,-z,defs -nostdlib -e ${RTLD_ENTRY}
# Pull in the dependencies that we use from libc
.include "rtld-libc/Makefile.inc"
.if ${MK_TOOLCHAIN} == "no"
LDFLAGS+= -L${LIBCDIR}
.endif
-.if ${MACHINE_CPUARCH} == "arm"
-# Some of the required math functions (div & mod) are implemented in
-# libcompiler_rt on ARM. The library also needs to be placed first to be
-# correctly linked. As some of the functions are used before we have
-# shared libraries.
-LIBADD+= compiler_rt
-.endif
-
-
-
-.if ${MK_SYMVER} == "yes"
VERSION_DEF= ${LIBCSRCDIR}/Versions.def
SYMBOL_MAPS= ${RTLD_ELF_DIR}/Symbol.map
VERSION_MAP= Version.map
@@ -90,9 +63,9 @@
.if exists(${RTLD_ELF_DIR}/${RTLD_ARCH}/Symbol.map)
SYMBOL_MAPS+= ${RTLD_ELF_DIR}/${RTLD_ARCH}/Symbol.map
.endif
-.endif
.sinclude "${RTLD_ELF_DIR}/${RTLD_ARCH}/Makefile.inc"
+RTLD_ENTRY?= .rtld_start
# Since moving rtld-elf to /libexec, we need to create a symlink.
# Fixup the existing binary that's there so we can symlink over it.
Index: head/libexec/rtld-elf/amd64/Makefile.inc
===================================================================
--- head/libexec/rtld-elf/amd64/Makefile.inc
+++ head/libexec/rtld-elf/amd64/Makefile.inc
@@ -1,3 +1,3 @@
# $FreeBSD$
-CFLAGS+= ${CFLAGS_NO_SIMD} -msoft-float
+CFLAGS+= ${CFLAGS_NO_SIMD} -msoft-float -fvisibility=hidden
Index: head/libexec/rtld-elf/arm/Makefile.inc
===================================================================
--- head/libexec/rtld-elf/arm/Makefile.inc
+++ head/libexec/rtld-elf/arm/Makefile.inc
@@ -1 +1,7 @@
# $FreeBSD$
+
+# Some of the required math functions (div & mod) are implemented in
+# libcompiler_rt on ARM. The library also needs to be placed first to be
+# correctly linked. As some of the functions are used before we have
+# shared libraries.
+LIBADD+= compiler_rt
Index: head/libexec/rtld-elf/i386/Makefile.inc
===================================================================
--- head/libexec/rtld-elf/i386/Makefile.inc
+++ head/libexec/rtld-elf/i386/Makefile.inc
@@ -1,3 +1,3 @@
# $FreeBSD$
-CFLAGS+= ${CFLAGS_NO_SIMD} -msoft-float
+CFLAGS+= ${CFLAGS_NO_SIMD} -msoft-float -fvisibility=hidden
Index: head/libexec/rtld-elf/mips/Makefile.inc
===================================================================
--- head/libexec/rtld-elf/mips/Makefile.inc
+++ head/libexec/rtld-elf/mips/Makefile.inc
@@ -0,0 +1,3 @@
+# $FreeBSD$
+
+CFLAGS.reloc.c+=-fno-jump-tables
Index: head/libexec/rtld-elf/powerpc64/Makefile.inc
===================================================================
--- head/libexec/rtld-elf/powerpc64/Makefile.inc
+++ head/libexec/rtld-elf/powerpc64/Makefile.inc
@@ -1 +1,3 @@
# $FreeBSD$
+
+RTLD_ENTRY= _rtld_start
Index: head/libexec/rtld-elf/sparc64/Makefile.inc
===================================================================
--- head/libexec/rtld-elf/sparc64/Makefile.inc
+++ head/libexec/rtld-elf/sparc64/Makefile.inc
@@ -1 +1,3 @@
# $FreeBSD$
+
+CFLAGS:=${CFLAGS:S/-fpic/-fPIC/}

File Metadata

Mime Type
text/plain
Expires
Fri, Nov 21, 7:10 PM (7 h, 32 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25789244
Default Alt Text
D23083.id66618.diff (3 KB)

Event Timeline