Name: rpminspect Version: 2.0 Release: 0.1.202404111821git0afd0527%{?dist} Summary: Build deviation analysis and compliance tool Group: Development/Tools # librpminspect is licensed under the LGPL-3.0-or-later, and: # * 5 source files in the library are from an Apache-2.0 licensed # project # * Some code in inspect_unicode.c was taken from a blog post about # using icu4c and Unicode, it is under the MIT license. # # The rpminspect(1) command line tool is licensed under the # GPL-3.0-or-later. # # The rpminspect-data-generic package is licensed under the # CC-BY-4.0 license. # # Not packaged, but in the source: # * include/uthash.h is BSD-1-Clause # * include/compat/queue.h is BSD-3-Clause # * libxdiff/ is LGPL-2.1-or-later # * libtoml/ is BSD-3-Clause License: GPL-3.0-or-later AND LGPL-3.0-or-later AND LGPL-2.1-or-later AND Apache-2.0 AND MIT AND AND BSD-1-Clause AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 URL: https://github.com/rpminspect/rpminspect Source0: rpminspect-2.0-202404111821git0afd0527.tar.gz Requires: librpminspect%{?_isa} = %{version}-%{release} BuildRequires: meson BuildRequires: ninja-build BuildRequires: gcc BuildRequires: glibc-devel BuildRequires: json-c-devel BuildRequires: xmlrpc-c-devel >= 1.32.5 BuildRequires: libxml2-devel BuildRequires: rpm-devel BuildRequires: libarchive-devel BuildRequires: elfutils-devel BuildRequires: kmod-devel BuildRequires: libcurl-devel BuildRequires: zlib-devel BuildRequires: libyaml-devel BuildRequires: file-devel BuildRequires: openssl-devel BuildRequires: libcap-devel BuildRequires: gettext-devel BuildRequires: clamav-devel BuildRequires: libmandoc-devel >= 1.14.5 BuildRequires: gnupg2 BuildRequires: libicu-devel BuildRequires: libcdson-devel %if 0%{?fedora} BuildRequires: libtoml-devel %endif %description Build deviation and compliance tool. This program runs a number of tests against one or two builds of source RPM files. The built artifacts are inspected and compared to report changes and validate policy compliance against the defined parameters. %package -n librpminspect Summary: Library providing RPM test API and functionality Group: Development/Tools Requires: desktop-file-utils Requires: gettext %if 0%{?rhel} >= 8 || 0%{?epel} >= 8 || 0%{?fedora} Recommends: annobin-annocheck %else Requires: annobin-annocheck %endif # The clamav data is required for the virus inspection. Either # install the clamav-data or download the data files directly. %if 0%{?rhel} >= 8 || 0%{?epel} >= 8 || 0%{?fedora} Recommends: clamav-data %else Requires: clamav-data %endif # If these are present, the xml inspection can try DTD validation. %if 0%{?rhel} >= 8 || 0%{?fedora} Recommends: xhtml1-dtds Recommends: html401-dtds %endif # Required to support things like %%autorelease in spec files %if 0%{?fedora} >= 33 Recommends: rpm_macro(autorelease) %endif # Required because we build against the system libtoml in Fedora %if 0%{?fedora} Requires: libtoml %endif # These programs are only required for the 'shellsyntax' functionality. # You can use rpminspect without these installed, just disable the # shellsyntax inspection. %if 0%{?rhel} >= 8 || 0%{?epel} >= 8 || 0%{?fedora} Recommends: dash Recommends: ksh Recommends: zsh Recommends: tcsh Recommends: rc Recommends: bash %else Requires: dash Requires: ksh Requires: zsh Requires: tcsh Requires: rc Requires: bash %endif # The abidiff and kmidiff inspections require a external executable by # the same name, as provided by libabigail. If it is not present on # the system, you can disable the relevant inspections. %if 0%{?rhel} >= 8 || 0%{?epel} >= 8 || 0%{?fedora} Recommends: libabigail >= 2.3 %else Requires: libabigail >= 2.3 %endif # The udevrules inspection requires an external executable (udevadm verify) # provided by systemd-udev. If the installed udevadm executable does not # provide 'verify' command, the udevrules inspection is skipped. %if 0%{?rhel} >= 8 || 0%{?epel} >= 8 || 0%{?fedora} Recommends: systemd-udev %else Requires: systemd-udev %endif %description -n librpminspect The library providing the backend test functionality and API for the rpminspect frontend program. This library can also be used by other programs wanting to incorporate RPM test functionality. %package -n librpminspect-devel Summary: Header files and development libraries for librpminspect Group: Development/Tools Requires: librpminspect%{?_isa} = %{version}-%{release} %description -n librpminspect-devel The header files and development library links required to build software using librpminspect. %package -n rpminspect-data-generic Summary: Template data files used to drive rpminspect tests Group: Development/Tools %description -n rpminspect-data-generic The rpminspect-data-generic package is meant as a template to build your product's own data file. The files in it contain product-specific information. The files in this package explain how to construct the control files. %prep %autosetup -n rpminspect-2.0-202404111821git0afd0527 %build %meson -D tests=false %{?fedora:-D with_system_libtoml=true} %meson_build %install %meson_install %find_lang %{name} %files -f %{name}.lang %doc AUTHORS.md CHANGES.md README.md TODO %doc libxdiff/AUTHORS libxdiff/README %doc libtoml/README.md libtoml/README.rpminspect %license COPYING libxdiff/COPYING libtoml/LICENSE %{_bindir}/rpminspect %{_mandir}/man1/rpminspect.1* %files -n librpminspect %license COPYING.LIB LICENSE-2.0.txt MIT.txt %{_libdir}/librpminspect.so.* %files -n librpminspect-devel %license COPYING.LIB %{_includedir}/librpminspect %{_libdir}/librpminspect.so %files -n rpminspect-data-generic %license CC-BY-4.0.txt %{_datadir}/rpminspect %changelog * Thu Apr 11 2024 David Cantrell - 2.0-202404111821git0afd0527 - Build rpminspect-2.0-202404111821git0afd0527 snapshot