input/libatomic_ops.spec
raw · 4.2 KiB
%bcond_without tests
Name: libatomic_ops
Version: 7.8.4
Release: 1%{?dist}
Summary: Atomic memory update operations
Summary(ru): Атомарные операции обновления памяти
# RU: libatomic_ops: MIT; libatomic_ops_gpl: GPL-2.0-or-later.
# EN: libatomic_ops: MIT; libatomic_ops_gpl: GPL-2.0-or-later.
License: GPL-2.0-or-later AND MIT
URL: https://github.com/ivmai/libatomic_ops/
Source0: https://github.com/ivmai/libatomic_ops/releases/download/v%{version}/libatomic_ops-%{version}.tar.gz
Packager: NICE SOFT GROUP LLC (ООО "НАЙС СОФТ ГРУПП") 5024245440 <niceos@ncsgp.ru>
Vendor: NiceSOFT
Distribution: NiceOS.Core
BugURL: https://bugs.niceos.ru/
VCS: https://specs.niceos.ru/rmps/%{name}
BuildRequires: gcc
BuildRequires: make
# RU: Совместимость рантайма с другими дистрибутивами.
# EN: Runtime compatibility with other distributions.
Provides: libatomic1 = %{version}-%{release}
Provides: libatomic1%{?_isa} = %{version}-%{release}
# RU: По README.md: в новом коде рекомендуются стандартные атомики C11/C++14.
# EN: Per README.md: new code should prefer standard C11/C++14 atomics.
Provides: deprecated()
%description
Provides implementations for atomic memory update operations on a number of
architectures. It explicitly considers memory barrier semantics and aims to
minimize overhead across architectures.
%description -l ru
Пакет предоставляет реализации атомарных операций обновления памяти для разных
архитектур. Учитывает семантику барьеров памяти и стремится к минимальным
накладным расходам на разных платформах.
%package devel
Summary: Development files for libatomic_ops
Summary(ru): Файлы для разработки libatomic_ops
Requires: %{name}%{?_isa} = %{version}-%{release}
Provides: deprecated()
%description -n %{name}-devel
Header files and pkg-config metadata for developing with libatomic_ops.
%description -l ru -n %{name}-devel
Заголовочные файлы и метаданные pkg-config для разработки с libatomic_ops.
%prep
%autosetup -p1
%build
%configure \
--enable-shared \
--disable-static \
--disable-silent-rules \
--docdir=%{_docdir}/libatomic_ops-%{version}
%make_build
%install
%make_install
# RU: Удаляем дублирующиеся документы.
# EN: Remove duplicate documentation copies.
rm -f %{buildroot}%{_docdir}/libatomic_ops/{COPYING,LICENSE,README*,*.txt} 2>/dev/null || :
%check
%if %{with tests}
export LD_LIBRARY_PATH=%{_builddir}/%{name}-%{version}/src/.libs:${LD_LIBRARY_PATH}
%make_build check
%endif
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%license COPYING
%license LICENSE
%doc AUTHORS ChangeLog README.md
%attr(0755,root,root) %{_libdir}/libatomic_ops.so.1*
%attr(0755,root,root) %{_libdir}/libatomic_ops_gpl.so.1*
%files devel
%doc README_*.txt
%{_includedir}/atomic_ops.h
%{_includedir}/atomic_ops_malloc.h
%{_includedir}/atomic_ops_stack.h
%{_includedir}/atomic_ops/
%{_libdir}/libatomic_ops.so
%{_libdir}/libatomic_ops_gpl.so
%{_libdir}/pkgconfig/atomic_ops.pc
%{_docdir}/libatomic_ops-%{version}
%changelog
* Sat May 09 2026 NiceOS Team <support@niceos.ru> - 7.8.4-1
- EN: Update to 7.8.4. Upstream maintenance release with warning cleanups, broken URL fixes, Win32 README documentation, a SunPro CMake build fix, repository URL updates, and CMake minimum version raised to 3.10.
- RU: Обновление до 7.8.4. В upstream-релизе: исправления предупреждений компилятора, битых URL, документации Win32, сборки SunPro в CMake, обновление ссылок после переноса репозитория и повышение минимальной версии CMake до 3.10.
* Mon Jan 12 2026 NiceOS Team <niceos@ncsgp.ru> - 7.8.2-1
- Initial build for NiceOS (Первая сборка для НАЙС.ОС)