N
Портал сборок NiceOS
Корпоративный портал наблюдаемости для опубликованных сборок пакетов NiceOS.

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 (Первая сборка для НАЙС.ОС)