about summary refs log tree commit diff
path: root/elf/Makefile
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2021-12-21 12:25:20 -0800
committerH.J. Lu <hjl.tools@gmail.com>2022-01-24 06:37:29 -0800
commite4c9268d154ff11c070eba4791d33bd3a5875bca (patch)
tree5d23d680397e40d5a71e0706e1ea9f12edc0a6af /elf/Makefile
parentb5237c0746fcf5252fc88291a63782c59167fcb5 (diff)
downloadglibc-e4c9268d154ff11c070eba4791d33bd3a5875bca.tar.gz
glibc-e4c9268d154ff11c070eba4791d33bd3a5875bca.tar.xz
glibc-e4c9268d154ff11c070eba4791d33bd3a5875bca.zip
elf: Add a test for PT_LOAD segments with p_align == 1 [BZ #28688]
Add tst-p_alignmod2-edit to edit the copy of tst-p_alignmod-base.so to
set p_align of the first PT_LOAD segment to 1 and verify that the shared
library can be loaded normally.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
Diffstat (limited to 'elf/Makefile')
-rw-r--r--elf/Makefile13
1 files changed, 13 insertions, 0 deletions
diff --git a/elf/Makefile b/elf/Makefile
index 1758259075..687b913a53 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -414,7 +414,9 @@ tests += \
   tst-noload \
   tst-null-argv \
   tst-p_alignmod1-edit \
+  tst-p_alignmod2-edit \
   tst-p_align1 \
+  tst-p_align2 \
   tst-relsort1 \
   tst-ro-dynamic \
   tst-rtld-run-static \
@@ -2609,3 +2611,14 @@ $(objpfx)tst-p_alignmod1.so: $(objpfx)tst-p_alignmod1-edit \
 	cp $(objpfx)tst-p_alignmod-base.so $@
 	$(test-wrapper-env) $(run-program-env) $(rtld-prefix) \
 	  $(objpfx)tst-p_alignmod1-edit $@
+
+$(objpfx)tst-p_align2: $(objpfx)tst-p_alignmod2.so
+
+# Make a copy of tst-p_alignmod-base.so and update p_align of the first
+# PT_LOAD segment.
+$(objpfx)tst-p_alignmod2.so: $(objpfx)tst-p_alignmod2-edit \
+			     $(objpfx)tst-p_alignmod-base.so
+	rm -f $@
+	cp $(objpfx)tst-p_alignmod-base.so $@
+	$(test-wrapper-env) $(run-program-env) $(rtld-prefix) \
+	  $(objpfx)tst-p_alignmod2-edit $@