summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makerules2
-rw-r--r--ldso/ldso/dl-startup.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/Makerules b/Makerules
index 87e3c19ee..1596988d2 100644
--- a/Makerules
+++ b/Makerules
@@ -330,7 +330,7 @@ define create-lds
-Wl,-z,relro -Wl,--hash-style=gnu -Wl,-z,defs \
-Wl,--verbose 2>&1 | LC_ALL=C \
$(SED) -e '/^=========/,/^=========/!d;/^=========/d' \
- -e 's/\. = .* + SIZEOF_HEADERS;/& $(SYMBOL_PREFIX)_begin = . - SIZEOF_HEADERS;/' > $@.lds
+ -e 's/^\([ ]*\)\. = .* + SIZEOF_HEADERS;/&\n\1$(SYMBOL_PREFIX)_begin = . - SIZEOF_HEADERS;/' > $@.lds
endef
define link.so
diff --git a/ldso/ldso/dl-startup.c b/ldso/ldso/dl-startup.c
index 4893409e9..18a39ce2c 100644
--- a/ldso/ldso/dl-startup.c
+++ b/ldso/ldso/dl-startup.c
@@ -95,8 +95,8 @@
#include "dl-startup.h"
#ifdef __LDSO_PRELINK_SUPPORT__
-/* These defined magically in the linker script. */
-extern char _begin[] attribute_hidden;
+/* This is defined by the linker script. */
+extern ElfW(Addr) _begin[] attribute_hidden;
#endif
/* Static declarations */
@@ -181,7 +181,7 @@ DL_START(unsigned long args)
*/
if (!auxvt[AT_BASE].a_un.a_val)
- auxvt[AT_BASE].a_un.a_val = (Elf32_Addr) &_begin;
+ auxvt[AT_BASE].a_un.a_val = (ElfW(Addr)) &_begin;
/* Note: if the dynamic linker itself is prelinked, the load_addr is 0 */
DL_INIT_LOADADDR_BOOT(load_addr, elf_machine_load_address());
#else