]>
Commit | Line | Data |
---|---|---|
6e8c327a JB |
1 | # |
2 | # Conditional build: | |
3 | %bcond_without static_libs # static library | |
4 | # | |
5 | Summary: Belledonne Communications' language recognition library | |
6 | Summary(pl.UTF-8): Biblioteka rozpoznawania języków Belledonne Communications | |
7 | Name: belr | |
56ebee78 | 8 | Version: 4.5.20 |
6e8c327a | 9 | Release: 1 |
7ec9b571 | 10 | License: GPL v3+ |
6e8c327a | 11 | Group: Libraries |
7ec9b571 JB |
12 | #Source0Download: https://gitlab.linphone.org/BC/public/belr/-/tags |
13 | Source0: https://gitlab.linphone.org/BC/public/belr/-/archive/%{version}/%{name}-%{version}.tar.bz2 | |
56ebee78 | 14 | # Source0-md5: 5779ada843c4c396250fded9a2520c12 |
7ec9b571 | 15 | Patch0: %{name}-static.patch |
6e8c327a | 16 | URL: https://linphone.org/ |
7ec9b571 JB |
17 | BuildRequires: bctoolbox-devel >= 0.0.5 |
18 | BuildRequires: cmake >= 3.1 | |
6e8c327a | 19 | BuildRequires: libstdc++-devel >= 6:4.7 |
6e8c327a | 20 | BuildRequires: pkgconfig |
7ec9b571 JB |
21 | BuildRequires: udev-devel |
22 | Requires: bctoolbox >= 0.0.5 | |
6e8c327a JB |
23 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
24 | ||
25 | %description | |
26 | Belr is Belledonne Communications' language recognition library. It | |
27 | aims at parsing any input formatted according to a language defined by | |
28 | an ABNF grammar, such as the protocols standardized at IETF. | |
29 | ||
30 | It is based on finite state machine theory and heavily relies on | |
31 | recursivity from an implementation standpoint. | |
32 | ||
33 | %description -l pl.UTF-8 | |
34 | Belr to biblioteka do rozpoznawania języków Belledonne Communications. | |
35 | Jej celem jest analiza dowolnego wejścia sformatowanego zgodnie z | |
36 | językiem zdefiniowanym przez gramatykę ABNF, np. protokołów | |
37 | standaryzowanych przez IETF. | |
38 | ||
39 | Biblioteka jest oparta na teorii automatów skończonych, implementacja | |
40 | znacząco wykorzystuje rekusywność. | |
41 | ||
42 | %package devel | |
43 | Summary: Header files for belr library | |
44 | Summary(pl.UTF-8): Pliki nagłówkowe biblioteki belr | |
45 | Group: Development/Libraries | |
46 | Requires: %{name} = %{version}-%{release} | |
7ec9b571 | 47 | Requires: bctoolbox-devel >= 0.0.5 |
6e8c327a JB |
48 | Requires: libstdc++-devel >= 6:4.7 |
49 | ||
50 | %description devel | |
51 | Header files for belr library. | |
52 | ||
53 | %description devel -l pl.UTF-8 | |
54 | Pliki nagłówkowe biblioteki belr. | |
55 | ||
56 | %package static | |
57 | Summary: Static belr library | |
58 | Summary(pl.UTF-8): Statyczna biblioteka belr | |
59 | Group: Development/Libraries | |
60 | Requires: %{name}-devel = %{version}-%{release} | |
61 | ||
62 | %description static | |
63 | Static belr library. | |
64 | ||
65 | %description static -l pl.UTF-8 | |
66 | Statyczna biblioteka belr. | |
67 | ||
68 | %prep | |
7ec9b571 | 69 | %setup -q |
6e8c327a JB |
70 | %patch0 -p1 |
71 | ||
72 | %build | |
56ebee78 JB |
73 | install -d builddir |
74 | cd builddir | |
75 | # cmake build relies on relative CMAKE_INSTALL_DATADIR | |
7ec9b571 | 76 | %cmake .. \ |
56ebee78 | 77 | -DCMAKE_INSTALL_DATADIR=share \ |
7ec9b571 JB |
78 | %{!?with_static_libs:-DENABLE_STATIC=OFF} \ |
79 | -DENABLE_TESTS=OFF | |
6e8c327a JB |
80 | |
81 | %{__make} | |
82 | ||
83 | %install | |
84 | rm -rf $RPM_BUILD_ROOT | |
85 | ||
56ebee78 | 86 | %{__make} -C builddir install \ |
6e8c327a JB |
87 | DESTDIR=$RPM_BUILD_ROOT |
88 | ||
56ebee78 JB |
89 | # dir for grammars (see CMakeLists.txt) |
90 | install -d $RPM_BUILD_ROOT%{_datadir}/belr/grammars | |
91 | ||
7ec9b571 JB |
92 | # disable completeness check incompatible with split packaging |
93 | %{__sed} -i -e '/^foreach(target .*IMPORT_CHECK_TARGETS/,/^endforeach/d; /^unset(_IMPORT_CHECK_TARGETS)/d' $RPM_BUILD_ROOT%{_libdir}/cmake/belr/belrTargets.cmake | |
94 | ||
95 | # missing from cmake | |
96 | test ! -f $RPM_BUILD_ROOT%{_pkgconfigdir}/belr.pc | |
97 | install -d $RPM_BUILD_ROOT%{_pkgconfigdir} | |
98 | %{__sed} -e 's,@CMAKE_INSTALL_PREFIX@,%{_prefix},' \ | |
99 | -e 's,@PROJECT_NAME@,belr,' \ | |
100 | -e 's,@PROJECT_VERSION@,%{version},' \ | |
101 | -e 's,@CMAKE_INSTALL_FULL_LIBDIR@,%{_libdir},' \ | |
102 | -e 's,@LIBS_PRIVATE@,-lbctoolbox,' \ | |
103 | -e 's,@CMAKE_INSTALL_FULL_INCLUDEDIR@,%{_includedir},' \ | |
104 | belr.pc.in >$RPM_BUILD_ROOT%{_pkgconfigdir}/belr.pc | |
6e8c327a JB |
105 | |
106 | %clean | |
107 | rm -rf $RPM_BUILD_ROOT | |
108 | ||
109 | %post -p /sbin/ldconfig | |
110 | %postun -p /sbin/ldconfig | |
111 | ||
112 | %files | |
113 | %defattr(644,root,root,755) | |
7ec9b571 JB |
114 | %doc CHANGELOG.md README.md |
115 | %attr(755,root,root) %{_bindir}/belr-compiler | |
6e8c327a | 116 | %attr(755,root,root) %{_bindir}/belr-parse |
7ec9b571 | 117 | %attr(755,root,root) %{_libdir}/libbelr.so.1 |
56ebee78 JB |
118 | %dir %{_datadir}/belr |
119 | %dir %{_datadir}/belr/grammars | |
6e8c327a JB |
120 | |
121 | %files devel | |
122 | %defattr(644,root,root,755) | |
123 | %attr(755,root,root) %{_libdir}/libbelr.so | |
124 | %{_includedir}/belr | |
125 | %{_pkgconfigdir}/belr.pc | |
7ec9b571 | 126 | %{_libdir}/cmake/belr |
6e8c327a JB |
127 | |
128 | %if %{with static_libs} | |
129 | %files static | |
130 | %defattr(644,root,root,755) | |
131 | %{_libdir}/libbelr.a | |
132 | %endif |