]> git.pld-linux.org Git - packages/criterion.git/blob - criterion.spec
aef6d0e2fc1757380dc23df8fc1dca0296d73f69
[packages/criterion.git] / criterion.spec
1 # TODO:
2 # - system boxfort (when released): https://github.com/diacritic/BoxFort
3 # - system nanopb (0.4.7 bundled)
4 # - system libcsptr (when some post-2017 release made): https://github.com/Snaipe/libcsptr
5 #
6 # Conditional build:
7 %bcond_without  tests           # testing
8 %bcond_without  system_nanopb   # system nanopb
9 #
10 Summary:        A cross-platform C and C++ unit testing framework for the 21th century
11 Summary(pl.UTF-8):      Wieloplatformowy szkielet do testów jednostkowych dla C i C++ w XXI wieku
12 Name:           criterion
13 Version:        2.4.2
14 Release:        1
15 License:        LGPL v2.1+
16 Group:          Libraries
17 #Source0Download: https://github.com/Snaipe/Criterion/releases
18 Source0:        https://github.com/Snaipe/Criterion/releases/download/v%{version}/%{name}-%{version}.tar.xz
19 # Source0-md5:  20affc64bb0d00953826eba4c93bf8ab
20 Patch0:         x32.patch
21 Patch1:         %{name}-shared-nanopb.patch
22 URL:            https://github.com/Snaipe/Criterion
23 %{?with_system_nanopb:BuildRequires:    cmake}
24 BuildRequires:  dyncall >= 1.0
25 BuildRequires:  libffi-devel
26 BuildRequires:  libgit2-devel
27 BuildRequires:  meson >= 0.55.0
28 BuildRequires:  nanomsg-devel >= 1.0.0
29 %{?with_system_nanopb:BuildRequires:    nanopb-devel >= 0.4.7}
30 BuildRequires:  ninja
31 BuildRequires:  pkgconfig
32 BuildRequires:  rpmbuild(macros) >= 1.736
33 BuildRequires:  sed >= 4.0
34 BuildRequires:  tar >= 1:1.22
35 BuildRequires:  xz
36 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
37
38 %description
39 A dead-simple, yet extensible, C and C++ unit testing framework.
40
41 %description -l pl.UTF-8
42 Bardzo prosty, ale rozszerzalny szkielet testów jednostkowych dla C i
43 C++.
44
45 %package devel
46 Summary:        Header files for criterion library
47 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki criterion
48 Group:          Development/Libraries
49 Requires:       %{name} = %{version}-%{release}
50 Requires:       libstdc++-devel
51
52 %description devel
53 Header files for criterion library.
54
55 %description devel -l pl.UTF-8
56 Pliki nagłówkowe biblioteki criterion.
57
58 %package static
59 Summary:        Static criterion libraries
60 Summary(pl.UTF-8):      Statyczne biblioteki criterion
61 Group:          Development/Libraries
62 Requires:       %{name} = %{version}-%{release}
63
64 %description static
65 Static criterion libraries.
66
67 %description static -l pl.UTF-8
68 Statyczne biblioteki criterion.
69
70 %prep
71 %setup -q
72 %patch0 -p1
73 %patch1 -p1
74
75 %if %{without system_nanopb}
76 %{__sed} -i -e '/dependency.*nanopb/ s/nanopb::protobuf-nanopb/notfound::protobuf-nanopb/' meson.build
77 %endif
78
79 %build
80 %meson build \
81         -Dtests=%{__true_false tests}
82
83 %ninja_build -C build
84
85 %{?with_tests:%ninja_test -C build}
86
87 %install
88 rm -rf $RPM_BUILD_ROOT
89
90 %ninja_install -C build
91
92 %find_lang criterion
93
94 %clean
95 rm -rf $RPM_BUILD_ROOT
96
97 %post   -p /sbin/ldconfig
98 %postun -p /sbin/ldconfig
99
100 %files -f criterion.lang
101 %defattr(644,root,root,755)
102 %doc ChangeLog doc/*.txt
103 %attr(755,root,root) %{_libdir}/libcriterion.so.*.*.*
104 %attr(755,root,root) %ghost %{_libdir}/libcriterion.so.3
105
106 %files devel
107 %defattr(644,root,root,755)
108 %attr(755,root,root) %{_libdir}/libcriterion.so
109 %{_includedir}/criterion
110 %{_pkgconfigdir}/criterion.pc
111
112 %files static
113 %defattr(644,root,root,755)
114 %{_libdir}/libcriterion.a
115 %if %{without system_nanopb}
116 %{_libdir}/libprotobuf_nanopb_static.a
117 %endif
This page took 0.102207 seconds and 3 git commands to generate.