]> git.pld-linux.org Git - SPECS.git/blob - mcrouter.spec
SPECS updated Mon 29 Apr 22:05:02 CEST 2024
[SPECS.git] / mcrouter.spec
1 Summary:        Memcached protocol router for scaling memcached deployments
2 Name:           mcrouter
3 Version:        0.1.0
4 Release:        1.1
5 License:        BSD
6 Group:          Daemons
7 Source0:        https://github.com/facebook/mcrouter/archive/v%{version}/%{name}-%{version}.tar.gz
8 # Source0-md5:  5cc3e44ee2ff027e8b4077494222610c
9 Patch0:         am-subdir-objects.patch
10 Patch1:         shared-lib.patch
11 URL:            https://github.com/facebook/mcrouter
12 BuildRequires:  autoconf >= 2.59
13 BuildRequires:  automake
14 BuildRequires:  boost-devel >= 1.51.0
15 BuildRequires:  double-conversion-devel
16 BuildRequires:  folly-devel >= 0.41.0
17 BuildRequires:  gflags-devel
18 BuildRequires:  glog-devel
19 BuildRequires:  libcap-devel
20 BuildRequires:  libevent-devel
21 BuildRequires:  libstdc++-devel
22 BuildRequires:  libtool
23 BuildRequires:  openssl-devel
24 BuildRequires:  ragel
25 BuildRequires:  rpmbuild(macros) >= 1.583
26 BuildRequires:  zlib-devel
27 Requires:       %{name}-libs = %{version}-%{release}
28 # needs folly, which builds on x86-64 only
29 ExclusiveArch:  %{x8664}
30 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31
32 # it links to -lfolly, but still symbols seem missing. meh
33 %define         skip_post_check_so      libmcroutercore.so.0.0.0 libmcrouter.so.0.0.0
34
35 %description
36 Mcrouter is a memcached protocol router for scaling memcached
37 <http://memcached.org/> deployments. It's a core component of cache
38 infrastructure at Facebook and Instagram where mcrouter handles almost
39 5 billion requests per second at peak.
40
41 %package libs
42 Summary:        mcrouter shared libraries
43 Group:          Libraries
44
45 %description libs
46 mcrouter shared libraries.
47
48 %package devel
49 Summary:        Header files for %{name} library
50 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki %{name}
51 Group:          Development/Libraries
52 Requires:       %{name}-libs = %{version}-%{release}
53
54 %description devel
55 Header files for %{name} library.
56
57 %description devel -l pl.UTF-8
58 Pliki nagłówkowe biblioteki %{name}.
59
60 %package static
61 Summary:        Static %{name} library
62 Summary(pl.UTF-8):      Statyczna biblioteka %{name}
63 Group:          Development/Libraries
64 Requires:       %{name}-devel = %{version}-%{release}
65
66 %description static
67 Static %{name} library.
68
69 %description static -l pl.UTF-8
70 Statyczna biblioteka %{name}.
71
72 %prep
73 %setup -q
74 %patch0 -p1
75 %patch1 -p1
76
77 %build
78 cd mcrouter
79 %{__aclocal} -I m4
80 %{__libtoolize}
81 %{__autoconf}
82 %{__autoheader}
83 %{__automake}
84 %configure
85 %{__make}
86
87 %install
88 rm -rf $RPM_BUILD_ROOT
89 %{__make} install -C mcrouter \
90         DESTDIR=$RPM_BUILD_ROOT
91
92 %clean
93 rm -rf $RPM_BUILD_ROOT
94
95 %post   -p /sbin/ldconfig
96 %postun -p /sbin/ldconfig
97
98 %files
99 %defattr(644,root,root,755)
100 %doc README.md LICENSE PATENTS
101 %attr(755,root,root) %{_bindir}/mcrouter
102
103 %files libs
104 %defattr(644,root,root,755)
105 %attr(755,root,root) %{_libdir}/libmcrouter.so.*.*.*
106 %ghost %{_libdir}/libmcrouter.so.0
107 %attr(755,root,root) %{_libdir}/libmcroutercore.so.*.*.*
108 %ghost %{_libdir}/libmcroutercore.so.0
109
110 %files devel
111 %defattr(644,root,root,755)
112 %{_libdir}/libmcrouter.la
113 %{_libdir}/libmcrouter.so
114 %{_libdir}/libmcroutercore.la
115 %{_libdir}/libmcroutercore.so
116
117 %files static
118 %defattr(644,root,root,755)
119 %{_libdir}/libmcrouter.a
120 %{_libdir}/libmcroutercore.a
This page took 0.358956 seconds and 3 git commands to generate.