112 lines
3.6 KiB
RPMSpec
112 lines
3.6 KiB
RPMSpec
#
|
|
# spec file for package dejagnu
|
|
#
|
|
# Copyright (c) 2024 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: dejagnu
|
|
Version: 1.6.3
|
|
Release: 0
|
|
Summary: Framework for Running Test Suites on Software Tools
|
|
License: GPL-3.0-or-later
|
|
Group: Development/Tools/Building
|
|
URL: https://www.gnu.org/software/dejagnu/
|
|
Source0: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz
|
|
Source1: https://ftp.gnu.org/gnu/%{name}/%{name}-%{version}.tar.gz.sig
|
|
Source2: https://savannah.gnu.org/project/release-gpgkeys.php?group=dejagnu&download=1#/%{name}.keyring
|
|
Source3: site.exp
|
|
Patch0: testsuite-legacy.patch
|
|
BuildRequires: expect
|
|
BuildRequires: fdupes
|
|
BuildRequires: gcc-c++
|
|
Requires: expect
|
|
Requires: info
|
|
Requires: tcl
|
|
Requires(post): %{install_info_prereq}
|
|
Requires(preun):%{install_info_prereq}
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
BuildArch: noarch
|
|
|
|
%description
|
|
DejaGnu is a framework for testing other programs. Its purpose is to
|
|
provide a single front-end for all tests. Beyond this, DejaGnu offers
|
|
several advantages for testing:
|
|
|
|
1. The flexibility and consistency of the DejaGnu framework make it
|
|
easy to write tests for any program.
|
|
|
|
1. DejaGnu provides a layer of abstraction that allows you to write
|
|
tests that are portable to any host or target where a program
|
|
must be tested. For instance, a test for GDB can run (from any
|
|
Unix-based host) on any target architecture that DejaGnu
|
|
supports.
|
|
|
|
1. All tests have the same output format. This makes it easy to
|
|
integrate testing into other software development processes.
|
|
DejaGnu's output is designed to be parsed by other filtering
|
|
scripts and it is also human-readable.
|
|
|
|
DejaGnu is written in expect, which in turn uses "Tcl"--Tool command
|
|
language.
|
|
|
|
Running tests requires two things: the testing framework and the test
|
|
suites themselves.
|
|
|
|
%prep
|
|
%autosetup -p1
|
|
|
|
%build
|
|
# 49078@debbugs.gnu.org: bug in Expect 5.45.4 triggers a testsuite failure
|
|
# when building in source directory
|
|
mkdir build
|
|
cd build
|
|
%define _configure ../configure
|
|
%configure
|
|
make %{?_smp_mflags}
|
|
|
|
%check
|
|
make -C build check
|
|
|
|
%install
|
|
make -C build %{?_smp_mflags} DESTDIR=%{buildroot} install
|
|
install -D -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/dejagnu/site.exp
|
|
ln -s -f %{_sysconfdir}/dejagnu/site.exp %{buildroot}%{_datadir}/dejagnu/site.exp
|
|
%fdupes -s %{buildroot}
|
|
|
|
%post
|
|
%install_info --info-dir=%{_infodir} %{_infodir}/dejagnu.info%{ext_info}
|
|
|
|
%preun
|
|
%install_info_delete --info-dir=%{_infodir} %{_infodir}/dejagnu.info%{ext_info}
|
|
|
|
%files
|
|
%defattr(-, root, root)
|
|
%license COPYING
|
|
%doc ChangeLog NEWS README AUTHORS TODO
|
|
%dir %{_datadir}/dejagnu
|
|
%dir %{_sysconfdir}/dejagnu
|
|
%{_bindir}/dejagnu
|
|
%{_bindir}/runtest
|
|
%{_mandir}/man1/dejagnu.1%{ext_man}
|
|
%{_mandir}/man1/dejagnu-help.1%{ext_man}
|
|
%{_mandir}/man1/dejagnu-report-card.1%{ext_man}
|
|
%{_mandir}/man1/runtest.1%{ext_man}
|
|
%{_infodir}/dejagnu.info%{ext_info}
|
|
%{_includedir}/*
|
|
%config(noreplace) %{_sysconfdir}/dejagnu/site.exp
|
|
%{_datadir}/dejagnu/*
|
|
|
|
%changelog
|