The test binary should be 64bit to be able to create 4GB, or larger, ELF files.
https://sourceware.org/bugzilla/show_bug.cgi?id=28975 Signed-off-by: Mark Wielaard <m...@klomp.org> --- tests/ChangeLog | 4 ++++ tests/run-large-elf-file.sh | 11 +++++++++++ 2 files changed, 15 insertions(+) diff --git a/tests/ChangeLog b/tests/ChangeLog index c97ed52e..c195f9f7 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,7 @@ +2022-03-20 Mark Wielaard <m...@klomp.org> + + * run-large-elf-file.sh: Check elf class of addsections binary. + 2021-12-17 Mark Wielaard <m...@klomp.org> * run-debuginfod-query-retry.sh: Use /bin/sh instead of /bin/ls. diff --git a/tests/run-large-elf-file.sh b/tests/run-large-elf-file.sh index 667d24d8..7116de53 100755 --- a/tests/run-large-elf-file.sh +++ b/tests/run-large-elf-file.sh @@ -1,5 +1,6 @@ #! /usr/bin/env bash # Copyright (C) 2019 Red Hat, Inc. +# Copyright (C) 2022 Mark J. Wielaard <m...@klomp.org> # This file is part of elfutils. # # This file is free software; you can redistribute it and/or modify @@ -26,6 +27,16 @@ if test $long_bit -ne 64; then exit 77 fi +# The test binary also needs to be 64bits itself +elfclass=64 +testrun ${abs_top_builddir}/src/readelf -h ${abs_builddir}/addsections | grep ELF32 \ + && elfclass=32 +echo elfclass: $elfclass +if test $elfclass -ne 64; then + echo "Only 64bit binaries can create > 4GB ELF files" + exit 77 +fi + # These tests need lots of disk space since they test files > 4GB. # Skip if there just isn't enough (2.5 * 4 = 10GB). space_available=$[$(stat -f --format="%a*%S" .)/(1024 * 1024 * 1024)] -- 2.30.2