]>
Commit | Line | Data |
---|---|---|
1 | # | |
2 | # Conditional build: | |
3 | %bcond_without static_libs # static libraries | |
4 | %bcond_with libatomic_ops # use libatomic_ops instead of intrinsics | |
5 | ||
6 | %ifarch i386 i486 | |
7 | %define with_libatomic_ops 1 | |
8 | %endif | |
9 | Summary: The Boehm-Demers-Weiser conservative garbage collector | |
10 | Summary(pl.UTF-8): Konserwatywny odśmiecacz pamięci Boehma-Demersa-Weisera | |
11 | Name: gc | |
12 | Version: 8.0.2 | |
13 | Release: 1 | |
14 | License: BSD-like | |
15 | Group: Libraries | |
16 | Source0: http://www.hboehm.info/gc/gc_source/%{name}-%{version}.tar.gz | |
17 | # Source0-md5: 0c3e5a2de567a4f199dc07740bbf21d1 | |
18 | URL: http://www.hboehm.info/gc/ | |
19 | BuildRequires: autoconf >= 2.64 | |
20 | BuildRequires: automake | |
21 | %if %{with libatomic_ops} | |
22 | BuildRequires: libatomic_ops-devel >= 7.4.4 | |
23 | %endif | |
24 | BuildRequires: libstdc++-devel | |
25 | BuildRequires: libtool >= 2:2 | |
26 | %if %{with libatomic_ops} | |
27 | Requires: libatomic_ops >= 7.4.4 | |
28 | %endif | |
29 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
30 | ||
31 | %description | |
32 | Gc is a conservative garbage collector for C and C++. It is used as a | |
33 | replacement for standard malloc() and free(). GC_malloc will attempt | |
34 | to reclaim inaccessible space automatically by invoking a conservative | |
35 | garbage collector at appropriate points. | |
36 | ||
37 | %description -l pl.UTF-8 | |
38 | Gc jest konserwatywnym odśmiecaczem pamięci dla C i C++. Jest używany | |
39 | jako zamiennik dla standardowych funkcji malloc() i free(). GC_malloc | |
40 | próbuje odzyskać niedostępna pamięć automatycznie przez wywoływanie | |
41 | konserwatywnego odśmiecacza pamięci w odpowiednich miejscach. | |
42 | ||
43 | %package devel | |
44 | Summary: Headers for conservative garbage collector | |
45 | Summary(pl.UTF-8): Nagłówki dla konserwatywnego odśmiecacza pamięci | |
46 | Group: Development/Libraries | |
47 | Requires: %{name} = %{version}-%{release} | |
48 | %if %{with libatomic_ops} | |
49 | Requires: libatomic_ops-devel >= 7.4.4 | |
50 | %endif | |
51 | ||
52 | %description devel | |
53 | Headers for conservative garbage collector | |
54 | ||
55 | %description devel -l pl.UTF-8 | |
56 | Nagłówki dla konserwatywnego odśmiecacza pamięci | |
57 | ||
58 | %package static | |
59 | Summary: Static version of gc library | |
60 | Summary(pl.UTF-8): Statyczna wersja biblioteki gc | |
61 | Group: Development/Libraries | |
62 | Requires: %{name}-devel = %{version}-%{release} | |
63 | ||
64 | %description static | |
65 | Static version of gc library | |
66 | ||
67 | %description static -l pl.UTF-8 | |
68 | Statyczna wersja biblioteki gc | |
69 | ||
70 | %package c++ | |
71 | Summary: C++ interface to GC library | |
72 | Summary(pl.UTF-8): Interfejs C++ do biblioteki GC | |
73 | Group: Libraries | |
74 | Requires: %{name} = %{version}-%{release} | |
75 | ||
76 | %description c++ | |
77 | C++ interface to GC library. | |
78 | ||
79 | %description c++ -l pl.UTF-8 | |
80 | Interfejs C++ do biblioteki GC. | |
81 | ||
82 | %package c++-devel | |
83 | Summary: Header files for C++ interface for GC library | |
84 | Summary(pl.UTF-8): Pliki nagłówkowe interfejsu C++ do biblioteki GC | |
85 | Group: Development/Libraries | |
86 | Requires: %{name}-c++ = %{version}-%{release} | |
87 | Requires: %{name}-devel = %{version}-%{release} | |
88 | Requires: libstdc++-devel | |
89 | ||
90 | %description c++-devel | |
91 | Header files for C++ interface for GC library. | |
92 | ||
93 | %description c++-devel -l pl.UTF-8 | |
94 | Pliki nagłówkowe interfejsu C++ do biblioteki GC. | |
95 | ||
96 | %package c++-static | |
97 | Summary: C++ interface to GC library - static library | |
98 | Summary(pl.UTF-8): Interfejs C++ do biblioteki GC - biblioteka statyczna | |
99 | Group: Development/Libraries | |
100 | Requires: %{name}-c++-devel = %{version}-%{release} | |
101 | ||
102 | %description c++-static | |
103 | C++ interface to GC library - static library. | |
104 | ||
105 | %description c++-static -l pl.UTF-8 | |
106 | Interfejs C++ do biblioteki GC - biblioteka statyczna. | |
107 | ||
108 | %prep | |
109 | %setup -q | |
110 | ||
111 | # don't install docs to %{_datadir}/%{name} | |
112 | %{__perl} -pi -e 's/^dist_pkgdata_DATA/EXTRA_DIST/' doc/doc.am | |
113 | ||
114 | %build | |
115 | %{__libtoolize} | |
116 | %{__aclocal} | |
117 | %{__autoconf} | |
118 | %{__automake} | |
119 | %configure \ | |
120 | %ifnarch sparc64 | |
121 | CPPFLAGS="%{rpmcppflags} -DUSE_LIBC_PRIVATES" \ | |
122 | %endif | |
123 | --enable-cplusplus \ | |
124 | %{?with_static_libs:--enable-static} \ | |
125 | --enable-threads=posix \ | |
126 | --with-libatomic-ops | |
127 | %{__make} | |
128 | ||
129 | %install | |
130 | rm -rf $RPM_BUILD_ROOT | |
131 | ||
132 | %{__make} install \ | |
133 | DESTDIR=$RPM_BUILD_ROOT | |
134 | ||
135 | # packaged as %doc | |
136 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gc | |
137 | #install -D -p doc/gc.man $RPM_BUILD_ROOT%{_mandir}/man3/gc.3 | |
138 | ||
139 | %clean | |
140 | rm -rf $RPM_BUILD_ROOT | |
141 | ||
142 | %post -p /sbin/ldconfig | |
143 | %postun -p /sbin/ldconfig | |
144 | ||
145 | %post c++ -p /sbin/ldconfig | |
146 | %postun c++ -p /sbin/ldconfig | |
147 | ||
148 | %files | |
149 | %defattr(644,root,root,755) | |
150 | %doc AUTHORS ChangeLog README.QUICK README.md doc/README.{cords,environment,linux,macros} | |
151 | %attr(755,root,root) %{_libdir}/libcord.so.*.*.* | |
152 | %attr(755,root,root) %ghost %{_libdir}/libcord.so.1 | |
153 | %attr(755,root,root) %{_libdir}/libgc.so.*.*.* | |
154 | %attr(755,root,root) %ghost %{_libdir}/libgc.so.1 | |
155 | ||
156 | %files devel | |
157 | %defattr(644,root,root,755) | |
158 | %doc doc/*.md | |
159 | %attr(755,root,root) %{_libdir}/libcord.so | |
160 | %attr(755,root,root) %{_libdir}/libgc.so | |
161 | %{_libdir}/libcord.la | |
162 | %{_libdir}/libgc.la | |
163 | %dir %{_includedir}/gc | |
164 | %{_includedir}/gc/cord.h | |
165 | %{_includedir}/gc/cord_pos.h | |
166 | %{_includedir}/gc/ec.h | |
167 | %{_includedir}/gc/gc.h | |
168 | %{_includedir}/gc/gc_allocator.h | |
169 | %{_includedir}/gc/gc_backptr.h | |
170 | %{_includedir}/gc/gc_config_macros.h | |
171 | %{_includedir}/gc/gc_disclaim.h | |
172 | %{_includedir}/gc/gc_gcj.h | |
173 | %{_includedir}/gc/gc_inline.h | |
174 | %{_includedir}/gc/gc_mark.h | |
175 | %{_includedir}/gc/gc_pthread_redirects.h | |
176 | %{_includedir}/gc/gc_tiny_fl.h | |
177 | %{_includedir}/gc/gc_typed.h | |
178 | %{_includedir}/gc/gc_version.h | |
179 | %{_includedir}/gc/javaxfc.h | |
180 | %{_includedir}/gc/leak_detector.h | |
181 | %{_includedir}/gc.h | |
182 | %{_pkgconfigdir}/bdw-gc.pc | |
183 | %{_mandir}/man3/gc.3* | |
184 | ||
185 | %files static | |
186 | %defattr(644,root,root,755) | |
187 | %{_libdir}/libcord.a | |
188 | %{_libdir}/libgc.a | |
189 | ||
190 | %files c++ | |
191 | %defattr(644,root,root,755) | |
192 | %attr(755,root,root) %{_libdir}/libgccpp.so.*.*.* | |
193 | %attr(755,root,root) %ghost %{_libdir}/libgccpp.so.1 | |
194 | ||
195 | %files c++-devel | |
196 | %defattr(644,root,root,755) | |
197 | %attr(755,root,root) %{_libdir}/libgccpp.so | |
198 | %{_libdir}/libgccpp.la | |
199 | %{_includedir}/gc/gc_cpp.h | |
200 | %{_includedir}/gc_cpp.h | |
201 | ||
202 | %files c++-static | |
203 | %defattr(644,root,root,755) | |
204 | %{_libdir}/libgccpp.a |