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