aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Makerules1
-rw-r--r--elf/Makefile1
3 files changed, 5 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 8d30749675..604619f209 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2011-06-10 Roland McGrath <roland@hack.frob.com>
+ * Makerules (shlib.lds): Fail if the linker script comes out empty.
+ * elf/Makefile ($(objpfx)ld.so): Likewise.
+
* Makefile ($(common-objpfx)linkobj/libc.so): Break long lines with \.
Don't list ld.so twice in dependencies.
diff --git a/Makerules b/Makerules
index 82ffa1e2b8..6b4b0e10e4 100644
--- a/Makerules
+++ b/Makerules
@@ -510,6 +510,7 @@ $(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules
__libc_thread_subfreeres : { *(__libc_thread_subfreeres) }\
PROVIDE(__stop___libc_thread_subfreeres = .);\
/DISCARD/ : { *(.gnu.glibc-stub.*) }@'
+ test -s $@T
mv -f $@T $@
common-generated += shlib.lds
diff --git a/elf/Makefile b/elf/Makefile
index 844c9ca56f..5c057387ed 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -413,6 +413,7 @@ $(objpfx)ld.so: $(objpfx)librtld.os $(ld-map)
sed -e '/^=========/,/^=========/!d;/^=========/d' \
-e 's/\. = .* + SIZEOF_HEADERS;/& _begin = . - SIZEOF_HEADERS;/' \
> $@.lds
+ test -s $@.lds
$(LINK.o) -nostdlib -nostartfiles -shared -o $@ \
$(LDFLAGS-rtld) -Wl,-z,defs $(z-now-$(bind-now)) \
$(filter-out $(map-file),$^) $(load-map-file) \