Name: gc Version: 8.2.12 Release: 1%{?dist} Summary: Garbage collector for C and C++ Summary(ru): Сборщик мусора для C и C++ License: MIT URL: https://www.hboehm.info/gc/ Source0: https://github.com/ivmai/bdwgc/releases/download/v%{version}/gc-%{version}.tar.gz Packager: NICE SOFT GROUP LLC (ООО "НАЙС СОФТ ГРУПП") 5024245440 Vendor: NiceSOFT Distribution: NiceOS.Core BugURL: https://bugs.niceos.ru/ VCS: https://specs.niceos.ru/rmps/%{name} BuildRequires: automake BuildRequires: gcc-c++ BuildRequires: libtool BuildRequires: make BuildRequires: pkgconfig BuildRequires: libstdc++-devel Obsoletes: libgc < %{version}-%{release} Provides: libgc = %{version}-%{release} %description The Boehm-Demers-Weiser conservative garbage collector (BDWGC) is a C/C++ library that can replace malloc/free or C++ new/delete with automatic memory reclamation. It can also be used as a leak detector for C/C++ programs. %description -l ru Boehm-Demers-Weiser (BDWGC) — это библиотека сборщика мусора для C/C++, которая может использоваться как замена malloc/free или C++ new/delete с автоматическим освобождением памяти. Также может применяться как детектор утечек для программ на C/C++. %package devel Summary: Development files for the BDWGC memory management library Summary(ru): Файлы разработки для библиотеки управления памятью BDWGC Requires: %{name}%{?_isa} = %{version}-%{release} Obsoletes: libgc-devel < %{version}-%{release} Provides: libgc-devel = %{version}-%{release} %description devel Header files, pkg-config metadata, and symlinks required to build applications against the BDWGC (libgc) libraries. %description -l ru devel Заголовочные файлы, метаданные pkg-config и симлинки, необходимые для сборки приложений, использующих библиотеки BDWGC (libgc). %prep %autosetup -n gc-%{version} -p1 %build # RU: Обновление autotools для предотвращения rpath. # EN: Regenerate autotools to avoid rpath usage. rm -f libtool libtool.m4 autoreconf -i -f CPPFLAGS="-DUSE_GET_STACKBASE_FOR_MAIN -DDONT_UNDEF_EXCEPTIONS $CPPFLAGS" export CPPFLAGS %configure \ --disable-docs \ --enable-cplusplus \ --enable-large-config \ --enable-threads=posix %make_build %install %make_install # RU: Установка man-страницы вручную (оставляем как в исходном spec). # EN: Install the man page manually (kept as in the original spec). install -D -p -m 0644 doc/gc.man %{buildroot}%{_mandir}/man3/gc.3 # RU: Очистка ненужных файлов. # EN: Remove unneeded files. rm -rf %{buildroot}%{_datadir}/gc/ rm -f %{buildroot}%{_libdir}/lib*.la %check %ifnarch %{arm} aarch64 %{ix86} ppc64le make check %endif %ldconfig_scriptlets %files %defattr(-,root,root) # %license COPYING %attr(0755,root,root) %{_libdir}/libcord.so.1* %attr(0755,root,root) %{_libdir}/libgc.so.1* %attr(0755,root,root) %{_libdir}/libgccpp.so.1* %attr(0755,root,root) %{_libdir}/libgctba.so.1* %files devel %defattr(-,root,root) %doc doc/README.environment doc/README.linux %doc doc/*.md %{_includedir}/gc.h %{_includedir}/gc_cpp.h %{_includedir}/gc/ %{_libdir}/libcord.so %{_libdir}/libgc.so %{_libdir}/libgccpp.so %{_libdir}/libgctba.so %{_libdir}/pkgconfig/bdw-gc.pc %{_mandir}/man3/gc.3* %changelog * Sat May 09 2026 NiceOS Team - 8.2.12-1 - EN: Update gc to 8.2.12. Upstream release notes describe a patch release with bug fixes and portability/runtime improvements, including fixes for thread lifecycle handling, fork() from unregistered threads, malloc redirection edge cases, sanitizer-related fake stack behavior, and several platform-specific build/runtime issues. - RU: Обновление gc до 8.2.12. По заметкам upstream это патч-релиз с исправлениями ошибок и улучшениями совместимости/runtime, включая исправления для обработки потоков, fork() из не зарегистрированного потока, edge-case’ов перенаправления malloc, поведения fake stacks для sanitizer-сборок и ряда платформенных проблем сборки/выполнения. * Wed Jan 07 2026 NiceOS Team - 8.2.8-1 - Initial build for NiceOS (Первая сборка для НАЙС.ОС)