summaryrefslogtreecommitdiff
path: root/robin-map-dev.spec
blob: b320d0803f44bb7e1b1a2962f133a3a61ca23eed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# topdir: robin-map-dev-1.4.1 (normalized by tar --transform)
%global debug_package %{nil}

Name:           robin-map-dev
Version:        1.4.1
Release:        2%{?dist}
Summary:        A C++ fast hash map and hash set using robin hood hashing

License:        MIT
URL:            https://github.com/Tessil/robin-map
# GitHub tag archive; #/ anchor forces spectool save name to %%{name}-%%{version}.tar.gz
Source0:        https://github.com/Tessil/robin-map/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz

Group:          Development/Libraries
Packager:       openEuler Builder <builder@openeuler.org>

BuildArch:      noarch
BuildRequires:  cmake
BuildRequires:  gcc-c++

%description
The robin-map library is a C++ implementation of a fast hash map and hash set
using open-addressing and linear robin hood hashing with backward shift
deletion to resolve collisions.

Four classes are provided: tsl::robin_map, tsl::robin_set, tsl::robin_pg_map
and tsl::robin_pg_set. The first two are faster and use a power of two growth
policy, the last two use a prime growth policy instead.

This is a header-only library; this package ships the headers and the CMake
integration files.

%prep
%autosetup -n %{name}-%{version}

%build
mkdir -p build
cmake -B build \
    -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} \
    -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
    -DTSL_ROBIN_MAP_ENABLE_INSTALL=ON
cmake --build build %{?_smp_build_ncpus:-j%{_smp_build_ncpus}}

%install
DESTDIR=%{buildroot} cmake --install build

%files
%license LICENSE
%doc README.md
%{_includedir}/tsl/
%{_datadir}/cmake/tsl-robin-map/

%changelog
* Mon Sep 28 2026 openEuler Builder <builder@openeuler.org> - 1.4.1-2
- Replace %cmake/%cmake_build/%cmake_install macros with explicit cmake
  commands to fix macro mismatch (%cmake in-source vs %cmake_build out-of-tree)

* Wed Sep 23 2026 openEuler Builder <builder@openeuler.org> - 1.4.1-1
- Initial package