1da0c48c4Sopenharmony_ci#!/bin/sh 2da0c48c4Sopenharmony_ci# Copyright (C) 2019 Red Hat, Inc. 3da0c48c4Sopenharmony_ci# This file is part of elfutils. 4da0c48c4Sopenharmony_ci# 5da0c48c4Sopenharmony_ci# This file is free software; you can redistribute it and/or modify 6da0c48c4Sopenharmony_ci# it under the terms of the GNU General Public License as published by 7da0c48c4Sopenharmony_ci# the Free Software Foundation; either version 3 of the License, or 8da0c48c4Sopenharmony_ci# (at your option) any later version. 9da0c48c4Sopenharmony_ci# 10da0c48c4Sopenharmony_ci# elfutils is distributed in the hope that it will be useful, but 11da0c48c4Sopenharmony_ci# WITHOUT ANY WARRANTY; without even the implied warranty of 12da0c48c4Sopenharmony_ci# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13da0c48c4Sopenharmony_ci# GNU General Public License for more details. 14da0c48c4Sopenharmony_ci# 15da0c48c4Sopenharmony_ci# You should have received a copy of the GNU General Public License 16da0c48c4Sopenharmony_ci# along with this program. If not, see <http://www.gnu.org/licenses/>. 17da0c48c4Sopenharmony_ci 18da0c48c4Sopenharmony_ci. $srcdir/test-subr.sh 19da0c48c4Sopenharmony_ci 20da0c48c4Sopenharmony_cicore_files=\ 21da0c48c4Sopenharmony_ci"testfile_aarch64_core \ 22da0c48c4Sopenharmony_ci testfile-backtrace-demangle.core \ 23da0c48c4Sopenharmony_ci testfiledwarfinlines.core \ 24da0c48c4Sopenharmony_ci testfile_i686_core \ 25da0c48c4Sopenharmony_ci testfile-m68k-core \ 26da0c48c4Sopenharmony_ci testfile-riscv64-core \ 27da0c48c4Sopenharmony_ci backtrace.aarch64.core \ 28da0c48c4Sopenharmony_ci backtrace.i386.core \ 29da0c48c4Sopenharmony_ci backtrace.ppc.core \ 30da0c48c4Sopenharmony_ci backtrace.s390.core" 31da0c48c4Sopenharmony_ci 32da0c48c4Sopenharmony_citestfiles $core_files 33da0c48c4Sopenharmony_ci 34da0c48c4Sopenharmony_ciecho "elfclassify --core" 35da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --core $core_files 36da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --core --print $core_files <<EOF 37da0c48c4Sopenharmony_ci$(echo $core_files | sed -e "s/ /\n/g") 38da0c48c4Sopenharmony_ciEOF 39da0c48c4Sopenharmony_ci 40da0c48c4Sopenharmony_ciecho "core files are not programs" 41da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-program $core_files 42da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-program --print $core_files <<EOF 43da0c48c4Sopenharmony_ci$(echo $core_files | sed -e "s/ /\n/g") 44da0c48c4Sopenharmony_ciEOF 45da0c48c4Sopenharmony_ci 46da0c48c4Sopenharmony_ciecho "core files are not shared" 47da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-shared $core_files 48da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-shared --print $core_files <<EOF 49da0c48c4Sopenharmony_ci$(echo $core_files | sed -e "s/ /\n/g") 50da0c48c4Sopenharmony_ciEOF 51da0c48c4Sopenharmony_ci 52da0c48c4Sopenharmony_ciecho "core files are not kernel-modules" 53da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module $core_files 54da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module --print $core_files <<EOF 55da0c48c4Sopenharmony_ci$(echo $core_files | sed -e "s/ /\n/g") 56da0c48c4Sopenharmony_ciEOF 57da0c48c4Sopenharmony_ci 58da0c48c4Sopenharmony_ciecho "core files are not debug-only" 59da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-debug-only $core_files 60da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-debug-only --print $core_files <<EOF 61da0c48c4Sopenharmony_ci$(echo $core_files | sed -e "s/ /\n/g") 62da0c48c4Sopenharmony_ciEOF 63da0c48c4Sopenharmony_ci 64da0c48c4Sopenharmony_ciobject_files=\ 65da0c48c4Sopenharmony_ci"debug-ranges-no-lowpc.o \ 66da0c48c4Sopenharmony_ci testfile-annobingroup-i386.o \ 67da0c48c4Sopenharmony_ci testfile-bpf-dis1.o \ 68da0c48c4Sopenharmony_ci testfile-debug-rel-g.o \ 69da0c48c4Sopenharmony_ci testfile-gnu-property-note.o" 70da0c48c4Sopenharmony_ci 71da0c48c4Sopenharmony_citestfiles $object_files 72da0c48c4Sopenharmony_ci 73da0c48c4Sopenharmony_ciecho "elfclassify --elf-file" 74da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --elf-file $object_files 75da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --elf-file --print $object_files <<EOF 76da0c48c4Sopenharmony_ci$(echo $object_files | sed -e "s/ /\n/g") 77da0c48c4Sopenharmony_ciEOF 78da0c48c4Sopenharmony_ci 79da0c48c4Sopenharmony_ciecho "object files are not archives" 80da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-elf-archive $object_files 81da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-elf-archive --print $object_files <<EOF 82da0c48c4Sopenharmony_ci$(echo $object_files | sed -e "s/ /\n/g") 83da0c48c4Sopenharmony_ciEOF 84da0c48c4Sopenharmony_ci 85da0c48c4Sopenharmony_ciecho "object files are not core files" 86da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-core $object_files 87da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-core --print $object_files <<EOF 88da0c48c4Sopenharmony_ci$(echo $object_files | sed -e "s/ /\n/g") 89da0c48c4Sopenharmony_ciEOF 90da0c48c4Sopenharmony_ci 91da0c48c4Sopenharmony_ciecho "object files are not program files" 92da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-program $object_files 93da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-program --print $object_files <<EOF 94da0c48c4Sopenharmony_ci$(echo $object_files | sed -e "s/ /\n/g") 95da0c48c4Sopenharmony_ciEOF 96da0c48c4Sopenharmony_ci 97da0c48c4Sopenharmony_ciecho "object files are not shared files" 98da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-shared $object_files 99da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-shared --print $object_files <<EOF 100da0c48c4Sopenharmony_ci$(echo $object_files | sed -e "s/ /\n/g") 101da0c48c4Sopenharmony_ciEOF 102da0c48c4Sopenharmony_ci 103da0c48c4Sopenharmony_ciecho "object files are not kernel modules" 104da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module $object_files 105da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module --print $object_files <<EOF 106da0c48c4Sopenharmony_ci$(echo $object_files | sed -e "s/ /\n/g") 107da0c48c4Sopenharmony_ciEOF 108da0c48c4Sopenharmony_ci 109da0c48c4Sopenharmony_ciecho "object files are not debug-only files" 110da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-debug-only $object_files 111da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-debug-only --print $object_files <<EOF 112da0c48c4Sopenharmony_ci$(echo $object_files | sed -e "s/ /\n/g") 113da0c48c4Sopenharmony_ciEOF 114da0c48c4Sopenharmony_ci 115da0c48c4Sopenharmony_ciar_files="testarchive64.a" 116da0c48c4Sopenharmony_ci 117da0c48c4Sopenharmony_citestfiles $ar_files 118da0c48c4Sopenharmony_ci 119da0c48c4Sopenharmony_ciecho "elfclassify --elf-archive" 120da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --elf-archive $ar_files 121da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --elf-archive --print $ar_files <<EOF 122da0c48c4Sopenharmony_ci$(echo $ar_files | sed -e "s/ /\n/g") 123da0c48c4Sopenharmony_ciEOF 124da0c48c4Sopenharmony_ci 125da0c48c4Sopenharmony_ciecho "archives are not elf-files" 126da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-elf-file $ar_files 127da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-elf-file --print $ar_files <<EOF 128da0c48c4Sopenharmony_ci$(echo $ar_files | sed -e "s/ /\n/g") 129da0c48c4Sopenharmony_ciEOF 130da0c48c4Sopenharmony_ci 131da0c48c4Sopenharmony_ciecho "archives are not core files" 132da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-core $ar_files 133da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-core --print $ar_files <<EOF 134da0c48c4Sopenharmony_ci$(echo $ar_files | sed -e "s/ /\n/g") 135da0c48c4Sopenharmony_ciEOF 136da0c48c4Sopenharmony_ci 137da0c48c4Sopenharmony_ciecho "archives are not program files" 138da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-program $ar_files 139da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-program --print $ar_files <<EOF 140da0c48c4Sopenharmony_ci$(echo $ar_files | sed -e "s/ /\n/g") 141da0c48c4Sopenharmony_ciEOF 142da0c48c4Sopenharmony_ci 143da0c48c4Sopenharmony_ciecho "archives are not shared files" 144da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-shared $ar_files 145da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-shared --print $ar_files <<EOF 146da0c48c4Sopenharmony_ci$(echo $ar_files | sed -e "s/ /\n/g") 147da0c48c4Sopenharmony_ciEOF 148da0c48c4Sopenharmony_ci 149da0c48c4Sopenharmony_cilib_files=\ 150da0c48c4Sopenharmony_ci"testfile52-32.noshdrs.so \ 151da0c48c4Sopenharmony_ci libtestfile_multi_shared.so \ 152da0c48c4Sopenharmony_ci testfile52-32.prelink.so \ 153da0c48c4Sopenharmony_ci testfile52-32.so 154da0c48c4Sopenharmony_ci testfile54-64.noshdrs.so \ 155da0c48c4Sopenharmony_ci testfile54-64.prelink.so \ 156da0c48c4Sopenharmony_ci testfile54-64.so \ 157da0c48c4Sopenharmony_ci testlib_dynseg.so" 158da0c48c4Sopenharmony_ci 159da0c48c4Sopenharmony_citestfiles $lib_files 160da0c48c4Sopenharmony_ci 161da0c48c4Sopenharmony_ciecho "elfclassify --shared" 162da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --shared $lib_files 163da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --shared --print $lib_files <<EOF 164da0c48c4Sopenharmony_ci$(echo $lib_files | sed -e "s/ /\n/g") 165da0c48c4Sopenharmony_ciEOF 166da0c48c4Sopenharmony_ci 167da0c48c4Sopenharmony_ciecho "shared files are loadable" 168da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --loadable $lib_files 169da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --loadable --print $lib_files <<EOF 170da0c48c4Sopenharmony_ci$(echo $lib_files | sed -e "s/ /\n/g") 171da0c48c4Sopenharmony_ciEOF 172da0c48c4Sopenharmony_ci 173da0c48c4Sopenharmony_ciecho "shared files are not executables" 174da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-executable $lib_files 175da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-executable --print $lib_files <<EOF 176da0c48c4Sopenharmony_ci$(echo $lib_files | sed -e "s/ /\n/g") 177da0c48c4Sopenharmony_ciEOF 178da0c48c4Sopenharmony_ci 179da0c48c4Sopenharmony_ciecho "shared files are not debug-only" 180da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-debug-only $lib_files 181da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-debug-only --print $lib_files <<EOF 182da0c48c4Sopenharmony_ci$(echo $lib_files | sed -e "s/ /\n/g") 183da0c48c4Sopenharmony_ciEOF 184da0c48c4Sopenharmony_ci 185da0c48c4Sopenharmony_ciecho "shared files are not kernel modules" 186da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module $lib_files 187da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module --print $lib_files <<EOF 188da0c48c4Sopenharmony_ci$(echo $lib_files | sed -e "s/ /\n/g") 189da0c48c4Sopenharmony_ciEOF 190da0c48c4Sopenharmony_ci 191da0c48c4Sopenharmony_ciexe_files=\ 192da0c48c4Sopenharmony_ci"backtrace.aarch64.exec \ 193da0c48c4Sopenharmony_ci backtrace.i386.exec \ 194da0c48c4Sopenharmony_ci backtrace.ppc.exec \ 195da0c48c4Sopenharmony_ci backtrace.s390x.exec \ 196da0c48c4Sopenharmony_ci testfile70.exec \ 197da0c48c4Sopenharmony_ci test-offset-loop \ 198da0c48c4Sopenharmony_ci testfilebaztab \ 199da0c48c4Sopenharmony_ci testfilebaztabppc64" 200da0c48c4Sopenharmony_ci 201da0c48c4Sopenharmony_citestfiles $exe_files 202da0c48c4Sopenharmony_ci 203da0c48c4Sopenharmony_ciecho "elfclassify --program" 204da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --program $exe_files 205da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --program --print $exe_files <<EOF 206da0c48c4Sopenharmony_ci$(echo $exe_files | sed -e "s/ /\n/g") 207da0c48c4Sopenharmony_ciEOF 208da0c48c4Sopenharmony_ci 209da0c48c4Sopenharmony_ciecho "programs are executables (in this case)" 210da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --executable $exe_files 211da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --executable --print $exe_files <<EOF 212da0c48c4Sopenharmony_ci$(echo $exe_files | sed -e "s/ /\n/g") 213da0c48c4Sopenharmony_ciEOF 214da0c48c4Sopenharmony_ci 215da0c48c4Sopenharmony_ciecho "programs are not shared libraries (in this case)" 216da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-shared $exe_files 217da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-shared --print $exe_files <<EOF 218da0c48c4Sopenharmony_ci$(echo $exe_files | sed -e "s/ /\n/g") 219da0c48c4Sopenharmony_ciEOF 220da0c48c4Sopenharmony_ci 221da0c48c4Sopenharmony_ciecho "programs are not kernel-modules" 222da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module $exe_files 223da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-linux-kernel-module --print $exe_files <<EOF 224da0c48c4Sopenharmony_ci$(echo $exe_files | sed -e "s/ /\n/g") 225da0c48c4Sopenharmony_ciEOF 226da0c48c4Sopenharmony_ci 227da0c48c4Sopenharmony_ciecho "programs are not debug-only" 228da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-debug-only $exe_files 229da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-debug-only --print $exe_files <<EOF 230da0c48c4Sopenharmony_ci$(echo $exe_files | sed -e "s/ /\n/g") 231da0c48c4Sopenharmony_ciEOF 232da0c48c4Sopenharmony_ci 233da0c48c4Sopenharmony_cikmod_files=\ 234da0c48c4Sopenharmony_ci"hello_aarch64.ko \ 235da0c48c4Sopenharmony_ci hello_csky.ko \ 236da0c48c4Sopenharmony_ci hello_i386.ko \ 237da0c48c4Sopenharmony_ci hello_m68k.ko \ 238da0c48c4Sopenharmony_ci hello_ppc64.ko \ 239da0c48c4Sopenharmony_ci hello_riscv64.ko \ 240da0c48c4Sopenharmony_ci hello_s390.ko \ 241da0c48c4Sopenharmony_ci hello_x86_64.ko" 242da0c48c4Sopenharmony_ci 243da0c48c4Sopenharmony_citestfiles $kmod_files 244da0c48c4Sopenharmony_ci 245da0c48c4Sopenharmony_ciecho "elfclassify --linux-kernel-module" 246da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --linux-kernel-module $kmod_files 247da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --linux-kernel-module --print $kmod_files <<EOF 248da0c48c4Sopenharmony_ci$(echo $kmod_files | sed -e "s/ /\n/g") 249da0c48c4Sopenharmony_ciEOF 250da0c48c4Sopenharmony_ci 251da0c48c4Sopenharmony_ciecho "kmods are unstripped" 252da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --unstripped $kmod_files 253da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --unstripped --print $kmod_files <<EOF 254da0c48c4Sopenharmony_ci$(echo $kmod_files | sed -e "s/ /\n/g") 255da0c48c4Sopenharmony_ciEOF 256da0c48c4Sopenharmony_ci 257da0c48c4Sopenharmony_ciecho "kmods are not debug-only" 258da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-debug-only $kmod_files 259da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-debug-only --print $kmod_files <<EOF 260da0c48c4Sopenharmony_ci$(echo $kmod_files | sed -e "s/ /\n/g") 261da0c48c4Sopenharmony_ciEOF 262da0c48c4Sopenharmony_ci 263da0c48c4Sopenharmony_ciecho "kmods are not loabable (in the normal sense)" 264da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-loadable $kmod_files 265da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-loadable --print $kmod_files <<EOF 266da0c48c4Sopenharmony_ci$(echo $kmod_files | sed -e "s/ /\n/g") 267da0c48c4Sopenharmony_ciEOF 268da0c48c4Sopenharmony_ci 269da0c48c4Sopenharmony_ciecho "gnu compressed kmods are unstripped" 270da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfcompress -t gnu --force $kmod_files 271da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --unstripped $kmod_files 272da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --unstripped --print $kmod_files <<EOF 273da0c48c4Sopenharmony_ci$(echo $kmod_files | sed -e "s/ /\n/g") 274da0c48c4Sopenharmony_ciEOF 275da0c48c4Sopenharmony_ci 276da0c48c4Sopenharmony_cidebug_files=\ 277da0c48c4Sopenharmony_ci"testfile15.debug \ 278da0c48c4Sopenharmony_ci testfile35.debug \ 279da0c48c4Sopenharmony_ci testfile40.debug \ 280da0c48c4Sopenharmony_ci testfile48.debug \ 281da0c48c4Sopenharmony_ci testfile53-32.debug \ 282da0c48c4Sopenharmony_ci testfile53-64.debug \ 283da0c48c4Sopenharmony_ci testfilebazdbg.debug \ 284da0c48c4Sopenharmony_ci testfilebazdbgppc64.debug \ 285da0c48c4Sopenharmony_ci addrx_constx-4.dwo \ 286da0c48c4Sopenharmony_ci addrx_constx-5.dwo" 287da0c48c4Sopenharmony_ci 288da0c48c4Sopenharmony_citestfiles $debug_files 289da0c48c4Sopenharmony_ci 290da0c48c4Sopenharmony_ciecho "elfclassify --debug-only" 291da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --debug-only $debug_files 292da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --debug-only --print $debug_files <<EOF 293da0c48c4Sopenharmony_ci$(echo $debug_files | sed -e "s/ /\n/g") 294da0c48c4Sopenharmony_ciEOF 295da0c48c4Sopenharmony_ci 296da0c48c4Sopenharmony_ciecho "debug-only files are unstripped" 297da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --unstripped $debug_files 298da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --unstripped --print $debug_files <<EOF 299da0c48c4Sopenharmony_ci$(echo $debug_files | sed -e "s/ /\n/g") 300da0c48c4Sopenharmony_ciEOF 301da0c48c4Sopenharmony_ci 302da0c48c4Sopenharmony_ciecho "debug-only files are not programs" 303da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-program $debug_files 304da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-program --print $debug_files <<EOF 305da0c48c4Sopenharmony_ci$(echo $debug_files | sed -e "s/ /\n/g") 306da0c48c4Sopenharmony_ciEOF 307da0c48c4Sopenharmony_ci 308da0c48c4Sopenharmony_ciecho "debug-only files are not shared" 309da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --not-shared $debug_files 310da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --not-shared --print $debug_files <<EOF 311da0c48c4Sopenharmony_ci$(echo $debug_files | sed -e "s/ /\n/g") 312da0c48c4Sopenharmony_ciEOF 313da0c48c4Sopenharmony_ci 314da0c48c4Sopenharmony_ciecho "compress the debug sections and try again" 315da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfcompress -t gnu --force $debug_files 316da0c48c4Sopenharmony_ci 317da0c48c4Sopenharmony_ciecho "again unstripped" 318da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --unstripped $debug_files 319da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --unstripped --print $debug_files <<EOF 320da0c48c4Sopenharmony_ci$(echo $debug_files | sed -e "s/ /\n/g") 321da0c48c4Sopenharmony_ciEOF 322da0c48c4Sopenharmony_ci 323da0c48c4Sopenharmony_ciecho "again debug-only" 324da0c48c4Sopenharmony_citestrun ${abs_top_builddir}/src/elfclassify --debug-only $debug_files 325da0c48c4Sopenharmony_citestrun_compare ${abs_top_builddir}/src/elfclassify --debug-only --print $debug_files <<EOF 326da0c48c4Sopenharmony_ci$(echo $debug_files | sed -e "s/ /\n/g") 327da0c48c4Sopenharmony_ciEOF 328