Blame SPECS/cmocka.spec

394868
Name:           cmocka
394868
Version:        1.1.5
394868
Release:        11%{?dist}
394868
394868
License:        ASL 2.0
394868
Summary:        An elegant unit testing framework for C with support for mock objects
394868
URL:            https://cmocka.org
394868
394868
Source0:        https://cmocka.org/files/1.1/%{name}-%{version}.tar.xz
394868
Source1:        https://cmocka.org/files/1.1/%{name}-%{version}.tar.xz.asc
394868
Source2:        cmocka.keyring
394868
394868
BuildRequires:  gcc
394868
BuildRequires:  cmake
394868
BuildRequires:  doxygen
394868
BuildRequires:  glibc-devel
394868
BuildRequires:  gnupg2
394868
394868
%description
394868
There are a variety of C unit testing frameworks available however many of them
394868
are fairly complex and require the latest compiler technology. Some development
394868
requires the use of old compilers which makes it difficult to use some unit
394868
testing frameworks. In addition many unit testing frameworks assume the code
394868
being tested is an application or module that is targeted to the same platform
394868
that will ultimately execute the test. Because of this assumption many
394868
frameworks require the inclusion of standard C library headers in the code
394868
module being tested which may collide with the custom or incomplete
394868
implementation of the C library utilized by the code under test.
394868
394868
Cmocka only requires a test application is linked with the standard C library
394868
which minimizes conflicts with standard C library headers. Also, CMocka tries
394868
to avoid the use of some of the newer features of C compilers.
394868
394868
This results in CMocka being a relatively small library that can be used to
394868
test a variety of exotic code. If a developer wishes to simply test an
394868
application with the latest compiler then other unit testing frameworks may be
394868
preferable.
394868
394868
This is the successor of Google's Cmockery.
394868
394868
%package -n libcmocka
394868
Summary:        Lightweight library to simplify and generalize unit tests for C
394868
394868
Conflicts: cmockery2
394868
394868
%description -n libcmocka
394868
There are a variety of C unit testing frameworks available however many of them
394868
are fairly complex and require the latest compiler technology. Some development
394868
requires the use of old compilers which makes it difficult to use some unit
394868
testing frameworks. In addition many unit testing frameworks assume the code
394868
being tested is an application or module that is targeted to the same platform
394868
that will ultimately execute the test. Because of this assumption many
394868
frameworks require the inclusion of standard C library headers in the code
394868
module being tested which may collide with the custom or incomplete
394868
implementation of the C library utilized by the code under test.
394868
394868
CMocka only requires a test application is linked with the standard C library
394868
which minimizes conflicts with standard C library headers. Also, CMocka tries
394868
to avoid the use of some of the newer features of C compilers.
394868
394868
This results in CMocka being a relatively small library that can be used to
394868
test a variety of exotic code. If a developer wishes to simply test an
394868
application with the latest compiler then other unit testing frameworks may be
394868
preferable.
394868
394868
This is the successor of Google's Cmockery.
394868
394868
%package -n libcmocka-static
394868
Summary:        Lightweight library to simplify and generalize unit tests for C
394868
394868
%description -n libcmocka-static
394868
Static version of the cmocka library.
394868
394868
%package -n libcmocka-devel
394868
Summary:        Development headers for the cmocka library
394868
Requires:       libcmocka = %{version}-%{release}
394868
394868
Conflicts: cmockery2-devel
394868
394868
%description -n libcmocka-devel
394868
Development headers for the cmocka unit testing library.
394868
394868
%package -n cmocka-doc
394868
Summary:        API documentation for the cmocka unit testing framework
394868
BuildArch:      noarch
394868
394868
%description -n cmocka-doc
394868
This package provides the API documentation for the cmocka unit testing
394868
framework.
394868
394868
%prep
394868
%autosetup -p1
394868
394868
%build
394868
# This package uses -Wl,-wrap to wrap calls at link time.  This is incompatible
394868
# with LTO.
394868
# Disable LTO
394868
%define _lto_cflags %{nil}
394868
394868
%cmake \
394868
  -DWITH_STATIC_LIB=ON \
394868
  -DWITH_CMOCKERY_SUPPORT=ON \
394868
  -DUNIT_TESTING=ON
394868
394868
%cmake_build
394868
%__cmake --build %{__cmake_builddir} --target docs
394868
394868
%install
394868
%cmake_install
394868
ln -s libcmocka.so %{buildroot}%{_libdir}/libcmockery.so
394868
394868
%ldconfig_scriptlets -n libcmocka
394868
394868
%check
394868
%ctest
394868
394868
%files -n libcmocka
394868
%doc AUTHORS README.md ChangeLog
394868
%license COPYING
394868
%{_libdir}/libcmocka.so.*
394868
394868
%files -n libcmocka-static
394868
%{_libdir}/libcmocka-static.a
394868
394868
%files -n libcmocka-devel
394868
%{_includedir}/cmocka.h
394868
%{_includedir}/cmocka_pbc.h
394868
%{_includedir}/cmockery/cmockery.h
394868
%{_includedir}/cmockery/pbc.h
394868
%{_libdir}/libcmocka.so
394868
%{_libdir}/libcmockery.so
394868
%{_libdir}/pkgconfig/cmocka.pc
394868
%{_libdir}/cmake/cmocka/cmocka-config-version.cmake
394868
%{_libdir}/cmake/cmocka/cmocka-config.cmake
394868
394868
%files -n cmocka-doc
394868
%doc %{__cmake_builddir}/doc/html
394868
394868
%changelog
394868
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 1.1.5-11
394868
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
394868
  Related: rhbz#1991688
394868
394868
* Thu Jun 24 2021 Andreas Schneider <asn@redhat.com> - 1.1.5-10
394868
- resolves: rhbz#1915369 - Split out a cmocka-doc package
394868
394868
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 1.1.5-9
394868
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
394868
394868
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.5-8
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
394868
394868
* Wed Aug 05 2020 Andreas Schneider <asn@redhat.com> - 1.1.5-7
394868
- Correctly build with new cmake macros
394868
394868
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.5-6
394868
- Second attempt - Rebuilt for
394868
  https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
394868
394868
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.5-5
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
394868
394868
* Wed Jul  1 2020 Jeff Law <law@redhat.com> - 1.1.5-4
394868
- Disable LTO
394868
394868
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.5-3
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
394868
394868
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.5-2
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
394868
394868
* Thu Mar 28 2019 Andreas Schneider <asn@redhat.com> - 1.1.5-1
394868
- Update to version 1.1.5
394868
394868
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-2
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
394868
394868
* Thu Sep 27 2018 Andreas Schneider <asn@redhat.com> - 1.1.3-1
394868
- Update to version 1.1.3
394868
394868
* Wed Aug 29 2018 Andreas Schneider <asn@redhat.com> - 1.1.2-1
394868
- Update to version 1.1.2
394868
394868
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-9
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
394868
394868
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-8
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
394868
394868
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-7
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
394868
394868
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.1-6
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
394868
394868
* Tue Mar 28 2017 Than Ngo <than@redhat.com> - 1.1.0-5
394868
- added workaround for gcc7 bug on ppc64le temporary 
394868
394868
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.0-4
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
394868
394868
* Wed Sep 21 2016 Jakub Hrozek <jhrozek@redhat.com> - 1.1.0-1
394868
- Update to version 1.1.0
394868
    * Added support to catch multiple exceptions
394868
    * Added support to verify call ordering
394868
    * Added support to pass initial data to test cases
394868
    * Added will_return_maybe() for ignoring mock returns
394868
    * Added subtests for groups using TAP output
394868
    * Added support to write multiple XML files for groups
394868
    * Improved documentation
394868
    * Fixed XML output generataion
394868
    * Fixed Windows builds with VS2015
394868
394868
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.1-3
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
394868
394868
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-2
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
394868
394868
* Thu Mar 12 2015 Andreas Schneider <asn@redhat.com> - 1.0.1-1
394868
- Update to version 1.0.1:
394868
  * Added a macro for assert_ptr_equal().
394868
  * Fixed test_realloc() if 0 size is passed.
394868
  * Fixed objects packaging bug.
394868
  * Fixed building with newer gcc versions.
394868
394868
* Mon Feb 16 2015 Andreas Schneider <asn@redhat.com> - 1.0.0-1
394868
- Update to version 1.0.0:
394868
  * Added new test runner with group fixtures. The old runner is deprecated
394868
  * Added an extensible message output formatter
394868
  * Added jUnit XML message output
394868
  * Added subunit message output
394868
  * Added Test Anything Protocol message output
394868
  * Added skip() command
394868
  * Added test_realloc()
394868
  * Added a cmockery compat header
394868
  * Fixed a lot of bugs on Windows
394868
394868
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.1-3
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
394868
394868
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.1-2
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
394868
394868
* Mon May 26 2014 - Andreas Schneider <asn@redhat.com> - 0.4.1-1
394868
- Update to version 0.4.1.
394868
394868
* Fri Apr 11 2014 - Andreas Schneider <asn@redhat.com> - 0.4.0-1
394868
- Update to version 0.4.0.
394868
394868
* Wed Nov 06 2013 - Andreas Schneider <asn@redhat.com> - 0.3.2-1
394868
- Update to version 0.3.2.
394868
- Include API documentation.
394868
394868
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3.1-2
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
394868
394868
* Wed Jul 10 2013 - Andreas Schneider <asn@redhat.com> - 0.3.0-2
394868
- Update to version 0.3.1.
394868
- Fixed cmocka issues on big endian.
394868
- resolves: #975044
394868
394868
* Wed Jun 05 2013 - Andreas Schneider <asn@redhat.com> - 0.3.0-1
394868
- Update to version 0.3.0.
394868
394868
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.0-4
394868
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
394868
394868
* Fri Jan 18 2013 - Andreas Schneider <asn@redhat.com> - 0.2.0-3
394868
- Fixed typo in Source URL.
394868
394868
* Thu Jan 17 2013 - Andreas Schneider <asn@redhat.com> - 0.2.0-2
394868
- Fixed Source URL.
394868
- Fixed package groups.
394868
394868
* Tue Jan 15 2013 - Andreas Schneider <asn@redhat.com> - 0.2.0-1
394868
- Initial version 0.2.0