-
Notifications
You must be signed in to change notification settings - Fork 0
/
pg_roaringbitmap.spec
87 lines (73 loc) · 2.33 KB
/
pg_roaringbitmap.spec
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
%global pname roaringbitmap
%global sname pg_roaringbitmap
%global pginstdir /usr/pgsql-%{pgmajorversion}
%ifarch ppc64 ppc64le s390 s390x armv7hl
%if 0%{?rhel} && 0%{?rhel} == 7
%{!?llvm:%global llvm 0}
%else
%{!?llvm:%global llvm 1}
%endif
%else
%{!?llvm:%global llvm 1}
%endif
Name: %{sname}_%{pgmajorversion}
Version: 0.5.4
Release: 1PIGSTY%{?dist}
Summary: RoaringBitmap extension for PostgreSQL.
License: Apache-2.0
URL: https://github.com/ChenHuajun/pg_roaringbitmap
Source0: pg_roaringbitmap-%{version}.tar.gz
# https://github.com/ChenHuajun/pg_roaringbitmap/archive/refs/tags/v0.5.4.tar.gz
BuildRequires: postgresql%{pgmajorversion}-devel pgdg-srpm-macros >= 1.0.27
Requires: postgresql%{pgmajorversion}-server
%description
RoaringBitmap extension for PostgreSQL.
Roaring bitmaps are compressed bitmaps which tend to outperform conventional compressed bitmaps such as WAH, EWAH or Concise.
In some instances, roaring bitmaps can be hundreds of times faster and they often offer significantly better compression.
They can even be faster than uncompressed bitmaps. More information https://github.com/RoaringBitmap/CRoaring .
%if %llvm
%package llvmjit
Summary: Just-in-time compilation support for %{sname}
Requires: %{name}%{?_isa} = %{version}-%{release}
%if 0%{?rhel} && 0%{?rhel} == 7
%ifarch aarch64
Requires: llvm-toolset-7.0-llvm >= 7.0.1
%else
Requires: llvm5.0 >= 5.0
%endif
%endif
%if 0%{?suse_version} >= 1315 && 0%{?suse_version} <= 1499
BuildRequires: llvm6-devel clang6-devel
Requires: llvm6
%endif
%if 0%{?suse_version} >= 1500
BuildRequires: llvm15-devel clang15-devel
Requires: llvm15
%endif
%if 0%{?fedora} || 0%{?rhel} >= 8
Requires: llvm => 13.0
%endif
%description llvmjit
This packages provides JIT support for %{sname}
%endif
%prep
%setup -q -n %{sname}-%{version}
%build
PATH=%{pginstdir}/bin:$PATH %{__make} %{?_smp_mflags}
%install
%{__rm} -rf %{buildroot}
PATH=%{pginstdir}/bin:$PATH %{__make} %{?_smp_mflags} install DESTDIR=%{buildroot}
%files
%doc README.md
%{pginstdir}/lib/%{pname}.so
%{pginstdir}/share/extension/%{pname}.control
%{pginstdir}/share/extension/%{pname}*sql
%exclude /usr/lib/.build-id/*
%if %llvm
%files llvmjit
%{pginstdir}/lib/bitcode/*
%endif
%exclude %{pginstdir}/lib/bitcode/*
%changelog
* Wed Sep 13 2023 Vonng <[email protected]> - 0.5.4
- Initial RPM release, used by Pigsty <https://pigsty.io>