]>
Commit | Line | Data |
---|---|---|
2bbbeb5f | 1 | Summary: General-purpose scalable concurrent malloc implementation |
9db9c4b3 | 2 | Summary(pl.UTF-8): Ogólnego przeznaczenia, skalowalna, współbieżna implementacja funkcji malloc |
2bbbeb5f | 3 | Name: jemalloc |
425d30c6 AM |
4 | Version: 5.2.1 |
5 | Release: 1 | |
2bbbeb5f ER |
6 | License: BSD |
7 | Group: Libraries | |
2e057ca7 JB |
8 | #Source0Download: https://github.com/jemalloc/jemalloc/releases |
9 | Source0: https://github.com/jemalloc/jemalloc/releases/download/%{version}/%{name}-%{version}.tar.bz2 | |
425d30c6 | 10 | # Source0-md5: 3d41fbf006e6ebffd489bdb304d009ae |
43a0545a | 11 | Patch0: %{name}-x32.patch |
2e057ca7 | 12 | URL: http://jemalloc.net/ |
9db9c4b3 | 13 | BuildRequires: libxslt-progs |
aa2a1178 | 14 | BuildRequires: sed >= 4.0 |
81f4deb1 | 15 | # list from include/jemalloc/internal/jemalloc_internal.h.in |
e909dd82 | 16 | # https://github.com/jemalloc/jemalloc/blob/3.6.0/include/jemalloc/internal/jemalloc_internal.h.in#L239 |
2e057ca7 | 17 | ExclusiveArch: %{ix86} %{x8664} x32 alpha %{arm} aarch64 hppa ia64 le32 mips or1k ppc riscv s390 s390x sh4 sparcv9 sparc64 tile |
81f4deb1 ER |
18 | # broken for us |
19 | # alpha: Missing implementation for 64-bit atomic operations" | |
90651f68 ER |
20 | # alpha: Missing implementation for 32-bit atomic operations" |
21 | ExcludeArch: alpha | |
2bbbeb5f ER |
22 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
23 | ||
24 | %description | |
25 | General-purpose scalable concurrent malloc(3) implementation. This | |
26 | distribution is the stand-alone "portable" implementation of jemalloc. | |
27 | ||
9db9c4b3 JB |
28 | %description -l pl.UTF-8 |
29 | Ogólnego przeznaczenia, skalowalna, współbieżna implementacja funkcji | |
30 | malloc(3). Ten pakiet zawiera samodzielną "przenośną" implementację | |
31 | jemalloc. | |
32 | ||
2bbbeb5f ER |
33 | %package devel |
34 | Summary: Development files for jemalloc | |
9db9c4b3 | 35 | Summary(pl.UTF-8): Pliki programistyczne biblioteki jemalloc |
2bbbeb5f ER |
36 | Group: Development/Libraries |
37 | Requires: %{name} = %{version}-%{release} | |
38 | ||
39 | %description devel | |
9db9c4b3 JB |
40 | This package contains the header files for developing applications |
41 | that use jemalloc library. | |
42 | ||
43 | %description devel -l pl.UTF-8 | |
44 | Ten pakiet zawiera pliki nagłówkowe do tworzenia aplikacji | |
45 | wykorzystujących bibliotekę jemalloc. | |
2bbbeb5f ER |
46 | |
47 | %package static | |
48 | Summary: Static jemalloc library | |
49 | Summary(pl.UTF-8): Statyczna biblioteka jemalloc | |
50 | Group: Development/Libraries | |
51 | Requires: %{name}-devel = %{version}-%{release} | |
52 | ||
53 | %description static | |
54 | Static jemalloc library. | |
55 | ||
56 | %description static -l pl.UTF-8 | |
57 | Statyczna biblioteka jemalloc. | |
58 | ||
2bbbeb5f ER |
59 | %prep |
60 | %setup -q | |
43a0545a | 61 | %patch0 -p1 |
2bbbeb5f ER |
62 | |
63 | # This is truncated during build. Seems interesting to save. | |
64 | cp -p VERSION version | |
65 | ||
aa2a1178 JB |
66 | %{__sed} -i '1s, /usr/bin/env perl,%{__perl},' bin/jeprof.in |
67 | ||
2bbbeb5f | 68 | %build |
6acf1e02 JB |
69 | # enable GNU+C99 standard (C99 for restrict keyword, GNU for asm) |
70 | CFLAGS="%{rpmcflags} -std=gnu99" | |
48ca5e42 JR |
71 | %configure \ |
72 | --with-jemalloc-prefix=je_ | |
73 | ||
2bbbeb5f ER |
74 | %{__make} |
75 | ||
76 | %install | |
77 | rm -rf $RPM_BUILD_ROOT | |
78 | %{__make} install \ | |
79 | DESTDIR=$RPM_BUILD_ROOT | |
80 | ||
81 | # restore | |
82 | cp -pf version VERSION | |
83 | ||
84 | # soname improperly made, use fake main name (just use our current version) | |
aa2a1178 | 85 | %{__mv} $RPM_BUILD_ROOT%{_libdir}/libjemalloc.so.{2,%{version}} |
2bbbeb5f | 86 | ln -s $(basename $RPM_BUILD_ROOT%{_libdir}/libjemalloc.so.*.*.*) \ |
aa2a1178 | 87 | $RPM_BUILD_ROOT%{_libdir}/libjemalloc.so.2 |
2bbbeb5f ER |
88 | |
89 | # Install this with doc macro instead | |
90 | %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}/jemalloc.html | |
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) | |
9db9c4b3 | 100 | %doc COPYING README VERSION doc/jemalloc.html |
baca478b | 101 | %attr(755,root,root) %{_bindir}/jemalloc.sh |
2bbbeb5f | 102 | %attr(755,root,root) %{_libdir}/libjemalloc.so.*.*.* |
aa2a1178 | 103 | %attr(755,root,root) %ghost %{_libdir}/libjemalloc.so.2 |
2bbbeb5f ER |
104 | |
105 | %files devel | |
106 | %defattr(644,root,root,755) | |
aa2a1178 JB |
107 | %attr(755,root,root) %{_bindir}/jemalloc-config |
108 | %attr(755,root,root) %{_bindir}/jeprof | |
9db9c4b3 | 109 | %attr(755,root,root) %{_libdir}/libjemalloc.so |
2bbbeb5f | 110 | %{_includedir}/jemalloc |
aa2a1178 | 111 | %{_pkgconfigdir}/jemalloc.pc |
2bbbeb5f ER |
112 | %{_mandir}/man3/jemalloc.3* |
113 | ||
114 | %files static | |
115 | %defattr(644,root,root,755) | |
116 | %{_libdir}/libjemalloc.a | |
117 | %{_libdir}/libjemalloc_pic.a |