summaryrefslogtreecommitdiff
path: root/ldso
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2016-02-18 04:13:05 +0000
committerRich Felker <dalias@aerifal.cx>2016-02-18 04:13:05 +0000
commit2d0290debf28d9fddd3f1807fe12b1c64f96ab23 (patch)
treee924397082629c672e41138cd8ec871c465bbf56 /ldso
parent5030e4a0605707c3f84c04c70ac689ca6ee54ffd (diff)
downloadmusl-2d0290debf28d9fddd3f1807fe12b1c64f96ab23.tar.gz
musl-2d0290debf28d9fddd3f1807fe12b1c64f96ab23.tar.bz2
musl-2d0290debf28d9fddd3f1807fe12b1c64f96ab23.tar.xz
musl-2d0290debf28d9fddd3f1807fe12b1c64f96ab23.zip
fix regression in SH/FDPIC dynamic linker
the dynamic linker was found to hang when used as the PT_INTERP, but not when invoked as a command. the mechanism of this failure was not determined, but the cause is clear: commit 5552ce52000855906a5cb4f08f2e456573cca51f removed the SHARED macro, but arch/sh/crt_arch.h is still using it to choose the right form of the crt/ldso entry point code. moving the forced definition from rcrt1.c to dlstart.c restores the old behavior. eventually the logic should be changed to fully remove the SHARED macro or at least rename it to something more reasonable.
Diffstat (limited to 'ldso')
-rw-r--r--ldso/dlstart.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/ldso/dlstart.c b/ldso/dlstart.c
index 4482d525..4dbe1784 100644
--- a/ldso/dlstart.c
+++ b/ldso/dlstart.c
@@ -5,6 +5,8 @@
#define START "_dlstart"
#endif
+#define SHARED
+
#include "crt_arch.h"
#ifndef GETFUNCSYM