Merge remote-tracking branch 'up/main' into main-riscv64
Signed-off-by: David Abdurachmanov <davidlt@rivosinc.com>
This commit is contained in:
commit
d367760ec9
165
annobin.spec
165
annobin.spec
|
@ -1,9 +1,9 @@
|
|||
|
||||
Name: annobin
|
||||
Summary: Annotate and examine compiled binary files
|
||||
Version: 11.08
|
||||
Version: 12.28
|
||||
Release: 1.0.riscv64%{?dist}
|
||||
License: GPLv3+
|
||||
License: GPL-3.0-or-later AND LGPL-2.0-or-later AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (LGPL-2.0-or-later WITH GCC-exception-2.0) AND GFDL-1.3-or-later
|
||||
URL: https://sourceware.org/annobin/
|
||||
# Maintainer: nickc@redhat.com
|
||||
# Web Page: https://sourceware.org/annobin/
|
||||
|
@ -75,7 +75,7 @@ Source: https://nickc.fedorapeople.org/%{annobin_sources}
|
|||
%global annobin_source_dir %{_usrsrc}/annobin
|
||||
|
||||
# Insert patches here, if needed. Eg:
|
||||
# Patch01: annobin-foo.patch
|
||||
# Patch01: annobin-plugin-default-string-notes.patch
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
|
||||
|
@ -147,17 +147,15 @@ Provides the documentation files and example shell scripts for use with annobin.
|
|||
%package tests
|
||||
Summary: Test scripts and binaries for checking the behaviour and output of the annobin plugin
|
||||
Requires: %{name}-docs = %{version}-%{release}
|
||||
BuildRequires: make sharutils
|
||||
%if %{with debuginfod}
|
||||
BuildRequires: elfutils-debuginfod-client-devel
|
||||
%endif
|
||||
|
||||
%description tests
|
||||
Provides a means to test the generation of annotated binaries and the parsing
|
||||
of the resulting files.
|
||||
|
||||
BuildRequires: make
|
||||
|
||||
%if %{with debuginfod}
|
||||
BuildRequires: elfutils-debuginfod-client-devel
|
||||
%endif
|
||||
|
||||
%endif
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
@ -166,7 +164,7 @@ BuildRequires: elfutils-debuginfod-client-devel
|
|||
%package annocheck
|
||||
Summary: A tool for checking the security hardening status of binaries
|
||||
|
||||
BuildRequires: gcc elfutils elfutils-devel elfutils-libelf-devel rpm-devel binutils-devel make
|
||||
BuildRequires: gcc elfutils elfutils-devel elfutils-libelf-devel rpm-devel make
|
||||
|
||||
%if %{with debuginfod}
|
||||
BuildRequires: elfutils-debuginfod-client-devel
|
||||
|
@ -183,14 +181,13 @@ hardening options.
|
|||
%package libannocheck
|
||||
Summary: A library for checking the security hardening status of binaries
|
||||
|
||||
BuildRequires: gcc elfutils elfutils-devel elfutils-libelf-devel rpm-devel binutils-devel make
|
||||
BuildRequires: gcc elfutils elfutils-devel elfutils-libelf-devel rpm-devel make
|
||||
|
||||
%if %{with debuginfod}
|
||||
BuildRequires: elfutils-debuginfod-client-devel
|
||||
%endif
|
||||
|
||||
Requires: %{name}-docs = %{version}-%{release}
|
||||
Requires: binutils-devel
|
||||
|
||||
%description libannocheck
|
||||
Installs the libannocheck library which uses the notes generated by the
|
||||
|
@ -413,8 +410,8 @@ make -C gcc-plugin clean
|
|||
BUILD_FLAGS="-fplugin=%{_tmppath}/tmp_annobin.so"
|
||||
|
||||
# Disable the standard annobin plugin so that we do get conflicts.
|
||||
# Note - Fedora's rpm uses a different way of evaluating macros.
|
||||
%if 0%{?fedora} == 0
|
||||
# Note - rpm-4.10 uses a different way of evaluating macros.
|
||||
%if 0%{?rhel} && 0%{?rhel} < 7
|
||||
OPTS="$(rpm --eval '%undefine _annotated_build %build_cflags %build_ldflags')"
|
||||
%else
|
||||
OPTS="$(rpm --undefine=_annotated_build --eval '%build_cflags %build_ldflags')"
|
||||
|
@ -472,12 +469,17 @@ rm -f %{buildroot}%{_infodir}/dir
|
|||
|
||||
%if %{with tests}
|
||||
%check
|
||||
# Change the following line to "make check || :" on RHEL7 or if you need to see the
|
||||
# test suite logs in order to diagnose a test failure.
|
||||
make check
|
||||
# The first "make check" is run with "|| :" so that we can capture any logs
|
||||
# from failed tests. The second "make check" is there so that the build
|
||||
# will fail if any of the tests fail.
|
||||
make check || :
|
||||
if [ -f tests/test-suite.log ]; then
|
||||
cat tests/test-suite.log
|
||||
fi
|
||||
# If necessary use uuencode to preserve test binaries here. For example:
|
||||
# uuencode tests/tmp_atexit/atexit.strip atexit.strip
|
||||
|
||||
make check
|
||||
%endif
|
||||
|
||||
#---------------------------------------------------------------------------------
|
||||
|
@ -530,9 +532,136 @@ fi
|
|||
#---------------------------------------------------------------------------------
|
||||
|
||||
%changelog
|
||||
* Wed Feb 01 2023 David Abdurachmanov <davidlt@rivosinc.com> - 11.08-1.0.riscv64
|
||||
* Thu Oct 12 2023 David Abdurachmanov <davidlt@rivosinc.com> - 12.28-1.0.riscv64
|
||||
- Disable Clang and LLVM plugins on riscv64
|
||||
|
||||
* Fri Oct 06 2023 Nick Clifron <nickc@redhat.com> - 12.28-1
|
||||
- GCC Plugin: Record settings of -Wstrict-flex-arrays and -fstrict-flex-arrays
|
||||
- Annobin: Add future test of these options.
|
||||
|
||||
* Tue Sep 26 2023 Nick Clifron <nickc@redhat.com> - 12.27-1
|
||||
- GCC Plugin: Record settings of -Wimplicit-int and -Wimplicit-function-declaration.
|
||||
- Annobin: Add test for these warnings.
|
||||
|
||||
* Wed Sep 06 2023 Nick Clifron <nickc@redhat.com> - 12.26-1
|
||||
- LLVM Plugin: Fix building with LLVM version 17.
|
||||
|
||||
* Wed Aug 30 2023 Nick Clifron <nickc@redhat.com> - 12.25-1
|
||||
- GCC Plugin: Enable string note format by default.
|
||||
|
||||
* Fri Aug 04 2023 Nick Clifron <nickc@redhat.com> - 12.24-1
|
||||
- Annocheck: Change GO FIPS test to look for CGO_ENABLED markers.
|
||||
|
||||
* Mon Jul 31 2023 Nick Clifron <nickc@redhat.com> - 12.23-1
|
||||
- Annocheck: Add test for FIPS compliant GO binaries.
|
||||
|
||||
* Wed Jul 26 2023 Nick Clifron <nickc@redhat.com> - 12.22-1
|
||||
- Annocheck: Fix double free. (#2226749)
|
||||
|
||||
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 12.21-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Tue Jul 18 2023 Nick Clifton <nickc@redhat.com> - 12.21-1
|
||||
- Spec File: migrated to SPDX license. (#2222112)
|
||||
|
||||
* Mon Jul 17 2023 Nick Clifton <nickc@redhat.com> - 12.20-2
|
||||
- Spec File: Change License field to use SPDX notation. (#2222112)
|
||||
|
||||
* Mon Jul 17 2023 Nick Clifton <nickc@redhat.com> - 12.20-1
|
||||
- Annocheck: Ignore AArch64 $x and $d symbols. (#2221192)
|
||||
|
||||
* Wed Jul 05 2023 Nick Clifton <nickc@redhat.com> - 12.19-1
|
||||
- GCC Plugin: Suppress active checks for fortran sources. Improve scanning of COLLECT_GCC_OPTIONS.
|
||||
|
||||
* Thu Jun 29 2023 Nick Clifton <nickc@redhat.com> - 12.18-1
|
||||
- Annocheck: Remove dependency upon binutils-devel.
|
||||
|
||||
* Thu Jun 29 2023 Nick Clifton <nickc@redhat.com> - 12.17-1
|
||||
- Annocheck: Add detection of known parts of libstdc++-nonshared.a that contain gaps. (#2217864)
|
||||
|
||||
* Tue Jun 27 2023 Nick Clifton <nickc@redhat.com> - 12.16-1
|
||||
- Annocheck: Ignore weak/undef function symbols when checking to see if a binary contains code. (#2217840)
|
||||
|
||||
* Mon Jun 26 2023 Nick Clifton <nickc@redhat.com> - 12.15-1
|
||||
- Annocheck: Add --suppress-version-warnings option.
|
||||
|
||||
* Thu Jun 22 2023 Nick Clifton <nickc@redhat.com> - 12.14-1
|
||||
- Annocheck: Do not ignore separate debuginfo files that do not contain any DWARF. (#2144553)
|
||||
|
||||
* Tue Jun 20 2023 Nick Clifton <nickc@redhat.com> - 12.13-1
|
||||
- Annocheck: Ignore /dev/null filename in string notes.
|
||||
- Annocheck: More tweaks to glibc detection heuristics. (#2215968)
|
||||
|
||||
* Thu Jun 01 2023 Nick Clifton <nickc@redhat.com> - 12.12-1
|
||||
- Annocheck: Check for string notes in separate debug info files. (#2211694)
|
||||
|
||||
* Fri May 26 2023 Petr Pisar <ppisar@redhat.com> - 12.11-1
|
||||
- Annocheck: Add support for el10 and rhel-10 profiles. (RHEL-526)
|
||||
|
||||
* Mon May 22 2023 Petr Pisar <ppisar@redhat.com> - 12.10-3
|
||||
- Rebuild against rpm-4.19 (https://fedoraproject.org/wiki/Changes/RPM-4.19)
|
||||
|
||||
* Fri May 05 2023 Nick Clifton <nickc@redhat.com> - 12.10-2
|
||||
- GCC Plugin: Default to generating string format notes. (Experimental)
|
||||
|
||||
* Fri Apr 28 2023 Nick Clifton <nickc@redhat.com> - 12.10-1
|
||||
- Annocheck: Suppress more tests for Rust binaries.
|
||||
|
||||
* Tue Apr 25 2023 Nick Clifton <nickc@redhat.com> - 12.09-1
|
||||
- Annocheck: Fix detection of missing plugin options. (#2189492)
|
||||
|
||||
* Tue Apr 25 2023 Nick Clifton <nickc@redhat.com> - 12.08-1
|
||||
- Fix generation of auto-generated files.
|
||||
- Fix covscan reported errors.
|
||||
|
||||
* Fri Apr 21 2023 Nick Clifton <nickc@redhat.com> - 12.07-1
|
||||
- gcc-plugin: generate warnings about misspelt -D_FORTIFY_SOURCE and/or -D_GLIBCXX_ASSERTIONS options.
|
||||
|
||||
* Thu Apr 20 2023 Nick Clifton <nickc@redhat.com> - 12.06-1
|
||||
- gcc-plugin: use a bigger buffer for constructing notes.
|
||||
|
||||
* Wed Apr 19 2023 Nick Clifton <nickc@redhat.com> - 12.05-1
|
||||
- llvm-plugin: Fix detection of optimization level. Improve test.
|
||||
- clang-plugin: Improve test.
|
||||
|
||||
* Mon Apr 17 2023 Nick Clifton <nickc@redhat.com> - 12.04-1
|
||||
- configure: More improvements.
|
||||
- annocheck: Fix seg-fault when checking for glibc components in string format notes.
|
||||
|
||||
* Thu Apr 13 2023 Nick Clifton <nickc@redhat.com> - 12.03-1
|
||||
- configure: Simplify.
|
||||
|
||||
* Tue Apr 11 2023 Nick Clifton <nickc@redhat.com> - 12.02-1
|
||||
- gcc plugin: Add filenames to string notes. Allow use of ANNOBIN environment variable.
|
||||
- llvm plugin: Add workaround for building with LLVM-16.
|
||||
- clang plugin: Fix for building with Clang-16.
|
||||
|
||||
* Thu Mar 30 2023 Nick Clifton <nickc@redhat.com> - 12.01-1
|
||||
- gcc plugin: Keep ELF notes at protocol version 3.
|
||||
|
||||
* Tue Mar 28 2023 Nick Clifton <nickc@redhat.com> - 12.00-1
|
||||
- Protocol Version 4: String format notes.
|
||||
|
||||
* Mon Mar 13 2023 Nick Clifton <nickc@redhat.com> - 11.14-1
|
||||
- Annocheck: Update message for LTO tests. (#2177140)
|
||||
|
||||
* Wed Mar 08 2023 Nick Clifton <nickc@redhat.com> - 11.13-1
|
||||
- Annocheck: Add even more code to handle another glibc function built without LTO.
|
||||
|
||||
* Fri Mar 03 2023 Nick Clifton <nickc@redhat.com> - 11.12-1
|
||||
- Annocheck: Add code to handle another glibc function built without LTO.
|
||||
|
||||
* Tue Feb 28 2023 Nick Clifton <nickc@redhat.com> - 11.11-1
|
||||
- GCC Plugin: Do not run if other plugins are active. (#2162746)
|
||||
|
||||
* Thu Feb 23 2023 Nick Clifton <nickc@redhat.com> - 11.10-1
|
||||
- Annocheck: Add code to handle glibc functions built without LTO.
|
||||
|
||||
* Thu Feb 02 2023 Nick Clifton <nickc@redhat.com> - 11.09-1
|
||||
- Libannocheck: Fix thinko in debugging code.
|
||||
- Annocheck: Fix LTO test.
|
||||
- Notes: Display notes held in separate dbeuginfo files.
|
||||
|
||||
* Tue Jan 31 2023 Nick Clifton <nickc@redhat.com> - 11.08-1
|
||||
- Annocheck: Fix atexit test. Fix recording of version numbers. (#2165528)
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
summary: CI Gating Plan
|
||||
discover:
|
||||
how: fmf
|
||||
directory: tests
|
||||
url: https://src.fedoraproject.org/tests/annobin.git
|
||||
execute:
|
||||
how: tmt
|
||||
|
|
2
sources
2
sources
|
@ -1 +1 @@
|
|||
SHA512 (annobin-11.08.tar.xz) = 233e0314648b3577bd3e8f977b7da523e3c1770664dd0ade10e97fa251aa00fe1e02fb3104973bf5f6a30b1acb21772a3d9ba05c89bf1edf2feb665f88000fee
|
||||
SHA512 (annobin-12.28.tar.xz) = 624373d1eba36bc7a0804e0b33dfcb9a8c2415047329c5b96fd6cc2d88cbc9a355bd36ecb00214c4928f6fb4968ec910d76c8ca361b1c13584d4a06f3ee97b05
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
The test's Makefiles are not used in Fedora CI infrastructure. But are kept here
|
||||
for backward compatibility with traditional beakerlib test harness in RHEL.
|
|
@ -1,18 +0,0 @@
|
|||
summary: Test for BZ#1958954 (annobin fails to skip endbr64 entry point check)
|
||||
description: |
|
||||
Bug summary: annobin fails to skip endbr64 entry point check for shared objects
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1958954
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-annocheck
|
||||
- annobin-plugin-gcc
|
||||
- gcc
|
||||
- redhat-rpm-config
|
||||
duration: 48h
|
||||
extra-summary: /tools/annobin/Regression/annobin-fails-to-skip-endbr64-entry-point-check
|
||||
extra-task: /tools/annobin/Regression/annobin-fails-to-skip-endbr64-entry-point-check
|
|
@ -1,51 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Regression/annobin-fails-to-skip-endbr64-entry-point-check
|
||||
# Description: Test for BZ#1958954 (annobin fails to skip endbr64 entry point check)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "echo 'void f1(void) {}' > f1.c"
|
||||
rlRun "echo 'void f2(void) {}' > f2.c"
|
||||
rlRun "gcc `rpm --eval %build_cflags` -fpic -c f1.c"
|
||||
rlRun "gcc `rpm --eval %build_cflags` -fpic -c f2.c"
|
||||
rlRun "gcc `rpm --eval %build_ldflags` -shared f1.o f2.o"
|
||||
rlRun "annocheck -v --skip-lto a.out"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,14 +0,0 @@
|
|||
summary: identify
|
||||
description: ''
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- annobin-plugin-gcc
|
||||
- annobin-annocheck
|
||||
duration: 48h
|
||||
extra-summary: /tools/annobin/Regression/identify
|
||||
extra-task: /tools/annobin/Regression/identify
|
|
@ -1,43 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Regression/identify
|
||||
# Description: identify
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="annobin"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "rpm -qa | fgrep -e redhat-rpm-config -e gcc -e annobin -e binutils | sort"
|
||||
rlRun "tool_v=$(annocheck --version | awk '/^annocheck: Version/ {print $3}')"
|
||||
rlRun "__RPM=$(rpm --queryformat='%{name}\n' -qf $(man -w annobin))"
|
||||
rlRun "rpm_v=$(rpm -q --queryformat='%{version}\n' $__RPM)"
|
||||
# Following fails for annobin-8.89-2.el8
|
||||
rlRun "[[ "x${tool_v}" == "x${rpm_v}." ]]"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,17 +0,0 @@
|
|||
summary: lto-preprocessor-options
|
||||
description: ''
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-plugin-gcc
|
||||
- annobin-annocheck
|
||||
- redhat-rpm-config
|
||||
- gcc
|
||||
- redhat-rpm-config
|
||||
duration: 48h
|
||||
extra-summary: /tools/annobin/Regression/lto-preprocessor-options
|
||||
extra-task: /tools/annobin/Regression/lto-preprocessor-options
|
|
@ -1,44 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Regression/lto-preprocessor-options
|
||||
# Description: lto-preprocessor-options
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2020 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="annobin"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
b=`mktemp`
|
||||
rlRun "rpm -qa | fgrep -e redhat-rpm-config -e gcc -e annobin -e binutils | sort"
|
||||
rlRun "cflags=\"$(rpm --eval '%build_cflags')\""
|
||||
rlRun "ldflags=\"$(rpm --eval '%build_ldflags')\""
|
||||
rlRun "echo 'int main (void) { return 0; }' | gcc -xc -o $b $cflags $ldflags -flto - "
|
||||
rlRun "annocheck -v $b"
|
||||
rm $b
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
Binary file not shown.
|
@ -1,16 +0,0 @@
|
|||
summary: missing-check-for-x86-property-note-content
|
||||
description: |
|
||||
Bug summary: annobin: Missing check for contents of x86 property note
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1991931
|
||||
contact: Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-annocheck
|
||||
duration: 48h
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1991931
|
||||
extra-summary: /tools/annobin/Regression/missing-check-for-x86-property-note-content
|
||||
extra-task: /tools/annobin/Regression/missing-check-for-x86-property-note-content
|
|
@ -1,40 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Regression/missing-check-for-x86-property-note-content
|
||||
# Description: missing-check-for-x86-property-note-content
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="annobin"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "annocheck main" 1
|
||||
rlRun "annocheck --fixed-format-messages main | \
|
||||
grep '^Hardened: FAIL: test: cf-protection file: main.$'"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,16 +0,0 @@
|
|||
summary: processing-params-in-reverse-order
|
||||
description: |
|
||||
Bug summary: annocheck processes (reports) parameters in reverse order
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1988714
|
||||
contact: Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-annocheck
|
||||
duration: 48h
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1988714
|
||||
extra-summary: /tools/annobin/Regression/processing-params-in-reverse-order
|
||||
extra-task: /tools/annobin/Regression/processing-params-in-reverse-order
|
|
@ -1,42 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Regression/processing-params-in-reverse-order
|
||||
# Description: processing-params-in-reverse-order
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="annobin"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "TMP=$(mktemp)"
|
||||
rlRun "annocheck --verbose --skip-all --test-stack-prot /bin/bash /bin/cat |& tee $TMP"
|
||||
rlRun "fgrep -i /bin/ $TMP | head -1 | fgrep /bash"
|
||||
rlRun "fgrep -i /bin/ $TMP | tail -1 | fgrep /cat"
|
||||
rlRun "rm -f $TMP"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,18 +0,0 @@
|
|||
summary: segv-when-processing-multiple-params-incl-symlink
|
||||
description: |
|
||||
Bug summary: annocheck segfaults sometimes when processing multiple parameters and symlink is involved
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1988715
|
||||
contact: Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-plugin-gcc
|
||||
- annobin-annocheck
|
||||
- libstdc++
|
||||
duration: 48h
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1988715
|
||||
extra-summary: /tools/annobin/Regression/segv-when-processing-multiple-params-incl-symlink
|
||||
extra-task: /tools/annobin/Regression/segv-when-processing-multiple-params-incl-symlink
|
|
@ -1,44 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Regression/segv-when-processing-multiple-params-incl-symlink
|
||||
# Description: segv-when-processing-multiple-params-incl-symlink
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="annobin"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
# This tries to test https://bugzilla.redhat.com/show_bug.cgi?id=1988715#c0
|
||||
# keeping in mind that annocheck will evolve in the future, along its
|
||||
# rules / policies, and the surrounding OS will evolve too. This test
|
||||
# shouldn't report false positives though.
|
||||
rlRun "rpm -qf /usr/lib64/libstdc++.so*"
|
||||
rlRun "annocheck --follow-links --skip-all /usr/lib64/libstdc++.so*"
|
||||
rlRun "annocheck --ignore-links --skip-all /usr/lib64/libstdc++.so*"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,24 +0,0 @@
|
|||
summary: testsuite
|
||||
description: ''
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-plugin-gcc
|
||||
- annobin-annocheck
|
||||
- binutils-devel
|
||||
- bzip2-devel
|
||||
- dnf
|
||||
- elfutils
|
||||
- elfutils-devel
|
||||
- gcc-c++
|
||||
- gcc-plugin-devel
|
||||
- make
|
||||
- rpm-build
|
||||
- rpm-devel
|
||||
duration: 48h
|
||||
extra-summary: /tools/annobin/Regression/testsuite
|
||||
extra-task: /tools/annobin/Regression/testsuite
|
|
@ -1,85 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Regression/testsuite
|
||||
# Description: testsuite
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="${PACKAGE:-$(rpm -qf --queryformat=%{name} $(man -w annobin))}"
|
||||
export PACKAGE
|
||||
|
||||
GCC="${GCC:-$(which gcc)}"
|
||||
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlLogInfo "PACKAGES=$PACKAGES"
|
||||
rlLogInfo "REQUIRES=$REQUIRES"
|
||||
rlLogInfo "COLLECTIONS=$COLLECTIONS"
|
||||
rlLogInfo "X_SCLS=$X_SCLS"
|
||||
rlLogInfo "GCC=$GCC"
|
||||
|
||||
rlRun "rpm -qa | fgrep -e redhat-rpm-config -e gcc -e annobin -e binutils | sort"
|
||||
|
||||
# In case more than one devtoolset- or gcc-toolset -build package is
|
||||
# installed (they can co-exist from the packaging persp, but their
|
||||
# coexistence causes unexpected results with rpm macros), then we have
|
||||
# a mess of defined rpm macros coming e.g. from
|
||||
# /etc/rpm/macros.gcc-toolset-10-config
|
||||
# /etc/rpm/macros.gcc-toolset-9-config etc. To have just the needed
|
||||
# macros (respective to given SCL under test) defined without
|
||||
# uninstalling unneeded RPMs, we'll need an override mechanism. The
|
||||
# following assumes just one SCL *enabled* (more than one installed),
|
||||
# and doesn't care of a (useless) revert:
|
||||
echo ${X_SCLS} | fgrep toolset && \
|
||||
rlRun "cat /etc/rpm/*${X_SCLS%\ }* > ~/.rpmmacros"
|
||||
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TMP=\$(mktemp -d)"
|
||||
rlRun "pushd $TMP"
|
||||
|
||||
rlFetchSrcForInstalled $PACKAGE
|
||||
rlRun "dnf builddep -y *src.rpm"
|
||||
rlRun "rpm --define='_topdir $TMP' -Uvh *src.rpm"
|
||||
rlRun "rpmbuild --define='_topdir $TMP' -bc SPECS/annobin.spec"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "pushd BUILD/annobin-*"
|
||||
set -o pipefail
|
||||
rlRun "make check |& tee $TMP/check.log"
|
||||
rlRun -l "grep '^PASS:' $TMP/check.log" 0
|
||||
rlRun -l "grep '^FAIL:' $TMP/check.log" 1
|
||||
PASSCOUNT=$(grep '^PASS:' $TMP/check.log | wc -l)
|
||||
rlRun "[[ $PASSCOUNT -ge 7 ]]"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TMP"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,17 +0,0 @@
|
|||
summary: Test for BZ#1973981 (annocheck silently ignores any file parameter)
|
||||
description: |
|
||||
Bug summary: annocheck silently ignores any file parameter beyond 256
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1973981
|
||||
contact: Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-plugin-gcc
|
||||
- annobin-annocheck
|
||||
duration: 48h
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1973981
|
||||
extra-summary: /tools/annobin/Sanity/annocheck-silently-ignores-any-file-parameter
|
||||
extra-task: /tools/annobin/Sanity/annocheck-silently-ignores-any-file-parameter
|
|
@ -1,55 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Sanity/annocheck-silently-ignores-any-file-parameter
|
||||
# Description: Test for BZ#1973981 (annocheck silently ignores any file parameter)
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlRun "TMP=$(mktemp -d)"
|
||||
rlRun "pushd $TMP"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
for i in `seq 0 299`; do touch ${i}.sample; done
|
||||
samplecnt=$(ls *.sample | wc -l)
|
||||
testcnt=$(ls *.sample | \
|
||||
xargs annocheck |& \
|
||||
grep -F \
|
||||
-e '.sample: unable to read magic number' \
|
||||
-e '.sample: is not an ELF format file' \
|
||||
| wc -l)
|
||||
rlRun "test $samplecnt -eq 300"
|
||||
rlRun "test $testcnt -eq 300"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TMP"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,5 +0,0 @@
|
|||
#include <stdio.h>
|
||||
|
||||
void hello() {
|
||||
printf("Hello World\n");
|
||||
}
|
|
@ -1,5 +0,0 @@
|
|||
#include <iostream>
|
||||
|
||||
void hello() {
|
||||
std::cout << "Hello World\n";
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
void hello();
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
hello();
|
||||
return 0;
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
void hello();
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
hello();
|
||||
return 0;
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
summary: gcc-fedora-flags
|
||||
description: ''
|
||||
contact:
|
||||
- Tom Stellard <tstellar@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
- gcc-c++
|
||||
- annobin
|
||||
- annobin-annocheck
|
||||
- redhat-rpm-config
|
||||
duration: 1h
|
||||
extra-summary: /tools/annobin/Sanity/gcc-fedora-flags
|
||||
extra-task: /tools/annobin/Sanity/gcc-fedora-flags
|
|
@ -1,40 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
set -x
|
||||
|
||||
default_cflags=`rpm -E %{build_cflags}`
|
||||
default_cxxflags=`rpm -E %{build_cxxflags}`
|
||||
default_ldflags=`rpm -E %{build_ldflags}`
|
||||
|
||||
cflags=`rpm -D '%toolchain gcc' -E %{build_cflags}`
|
||||
cxxflags=`rpm -D '%toolchain gcc' -E %{build_cxxflags}`
|
||||
ldflags=`rpm -D '%toolchain gcc' -E %{build_ldflags}`
|
||||
|
||||
set +x
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartTest
|
||||
rlRun "rpm -qa | fgrep -e redhat-rpm-config -e gcc -e annobin -e binutils | sort"
|
||||
|
||||
rlRun "test \"$default_cflags\" = \"$cflags\""
|
||||
rlRun "test \"$default_cxxflags\" = \"$cxxflags\""
|
||||
rlRun "test \"$default_ldflags\" = \"$ldflags\""
|
||||
|
||||
rlRun "gcc $cflags -o hello.o -c hello.c"
|
||||
rlRun "annocheck hello.o"
|
||||
rlRun "gcc $cflags -o main.o -c main.c"
|
||||
rlRun "gcc $ldflags -o hello main.o hello.o"
|
||||
rlRun "annocheck hello"
|
||||
rlRun "./hello | grep \"Hello World\""
|
||||
|
||||
rlRun "g++ $cxxflags -o hello-cpp.o -c hello.cpp"
|
||||
rlRun "annocheck hello-cpp.o"
|
||||
rlRun "g++ $cxxflags -o main-cpp.o -c main.cpp"
|
||||
rlRun "g++ $ldflags -o hello-cpp main-cpp.o hello-cpp.o"
|
||||
rlRun "annocheck hello-cpp"
|
||||
rlRun "./hello-cpp | grep \"Hello World\""
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
|
@ -1,16 +0,0 @@
|
|||
summary: smoke test for annobin plugin
|
||||
description: ''
|
||||
contact:
|
||||
- Martin Cermak <mcermak@redhat.com>
|
||||
component:
|
||||
- annobin
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- annobin-plugin-gcc
|
||||
- annobin-annocheck
|
||||
- man-db
|
||||
- gcc
|
||||
duration: 48h
|
||||
extra-summary: /tools/annobin/Sanity/smoke
|
||||
extra-task: /tools/annobin/Sanity/smoke
|
|
@ -1,45 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/annobin/Sanity/smoke
|
||||
# Description: smoke test for annobin plugin
|
||||
# Author: Martin Cermak <mcermak@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2019 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="annobin"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlRun "which gcc"
|
||||
rlRun "man -w annobin"
|
||||
rlRun "echo $X_SCLS"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "rpm -qa | fgrep -e redhat-rpm-config -e gcc -e annobin -e binutils | sort"
|
||||
rlRun "echo 'int main() {return 0;}' | gcc -xc -fplugin=annobin -o /dev/null -"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
Loading…
Reference in New Issue