%global project_name foonathan_memory %global gittag v0.7-3 Name: foonathan-memory Version: 0.7.3 Release: 1%{?dist} Summary: STL compatible C++ memory allocator library using a new RawAllocator concept License: zlib URL: https://memory.foonathan.net/ Source0: https://github.com/foonathan/memory/archive/%{gittag}/%{name}-%{version}.tar.gz BuildRequires: cmake BuildRequires: doctest-devel BuildRequires: gcc-c++ %description The C++ STL allocator model has various flaws. For example, they are fixed to a certain type, because they are almost necessarily required to be templates. So you can't easily share a single allocator for multiple types. In addition, you can only get a copy from the containers and not the original allocator object. At least with C++11 they are allowed to be stateful and so can be made object not instance based. But still, the model has many flaws. Over the course of the years many solutions have been proposed, for example EASTL. This library is another. But instead of trying to change the STL, it works with the current implementation. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel %summary %prep %autosetup -n memory-0.7-3 %build %cmake \ -DCMAKE_BUILD_TYPE:STRING=Release \ -DFOONATHAN_MEMORY_BUILD_EXAMPLES:BOOL=OFF \ -DFOONATHAN_MEMORY_BUILD_TESTS:BOOL=OFF \ -DFOONATHAN_MEMORY_BUILD_TOOLS:BOOL=OFF %cmake_build %install %cmake_install rm -fr %{buildroot}%{_datadir}/%{project_name} %files %license LICENSE %doc README.md %{_libdir}/lib%{project_name}-%{version}.so %files devel %{_includedir}/%{project_name} %{_libdir}/%{project_name} %changelog * Wed Nov 22 2023 Rich Mattes - 0.7.3-1 - Initial package