pgsentinel: Initial packaging for the PostgreSQL RPM repository
authorDevrim Gunduz <devrim@gunduz.org>
Wed, 30 Jul 2025 15:23:19 +0000 (10:23 -0500)
committerDevrim Gunduz <devrim@gunduz.org>
Wed, 30 Jul 2025 15:23:19 +0000 (10:23 -0500)
44 files changed:
rpm/redhat/13/pgsentinel/EL-10 [new symlink]
rpm/redhat/13/pgsentinel/EL-8 [new symlink]
rpm/redhat/13/pgsentinel/EL-9 [new symlink]
rpm/redhat/13/pgsentinel/F-41 [new symlink]
rpm/redhat/13/pgsentinel/F-42 [new symlink]
rpm/redhat/13/pgsentinel/SLES-15 [new symlink]
rpm/redhat/14/pgsentinel/EL-10 [new symlink]
rpm/redhat/14/pgsentinel/EL-8 [new symlink]
rpm/redhat/14/pgsentinel/EL-9 [new symlink]
rpm/redhat/14/pgsentinel/F-41 [new symlink]
rpm/redhat/14/pgsentinel/F-42 [new symlink]
rpm/redhat/14/pgsentinel/SLES-15 [new symlink]
rpm/redhat/15/pgsentinel/EL-10 [new symlink]
rpm/redhat/15/pgsentinel/EL-8 [new symlink]
rpm/redhat/15/pgsentinel/EL-9 [new symlink]
rpm/redhat/15/pgsentinel/F-41 [new symlink]
rpm/redhat/15/pgsentinel/F-42 [new symlink]
rpm/redhat/15/pgsentinel/SLES-15 [new symlink]
rpm/redhat/16/pgsentinel/EL-10 [new symlink]
rpm/redhat/16/pgsentinel/EL-8 [new symlink]
rpm/redhat/16/pgsentinel/EL-9 [new symlink]
rpm/redhat/16/pgsentinel/F-41 [new symlink]
rpm/redhat/16/pgsentinel/F-42 [new symlink]
rpm/redhat/16/pgsentinel/SLES-15 [new symlink]
rpm/redhat/17/pgsentinel/EL-10 [new symlink]
rpm/redhat/17/pgsentinel/EL-8 [new symlink]
rpm/redhat/17/pgsentinel/EL-9 [new symlink]
rpm/redhat/17/pgsentinel/F-41 [new symlink]
rpm/redhat/17/pgsentinel/F-42 [new symlink]
rpm/redhat/17/pgsentinel/SLES-15 [new symlink]
rpm/redhat/main/non-common/pgsentinel/EL-10/Makefile [new file with mode: 0644]
rpm/redhat/main/non-common/pgsentinel/EL-10/pgsentinel.spec [new symlink]
rpm/redhat/main/non-common/pgsentinel/EL-8/Makefile [new file with mode: 0644]
rpm/redhat/main/non-common/pgsentinel/EL-8/pgsentinel.spec [new symlink]
rpm/redhat/main/non-common/pgsentinel/EL-9/Makefile [new file with mode: 0644]
rpm/redhat/main/non-common/pgsentinel/EL-9/pgsentinel.spec [new symlink]
rpm/redhat/main/non-common/pgsentinel/F-41/Makefile [new file with mode: 0644]
rpm/redhat/main/non-common/pgsentinel/F-41/pgsentinel.spec [new symlink]
rpm/redhat/main/non-common/pgsentinel/F-42/Makefile [new file with mode: 0644]
rpm/redhat/main/non-common/pgsentinel/F-42/pgsentinel.spec [new symlink]
rpm/redhat/main/non-common/pgsentinel/SLES-15/Makefile [new file with mode: 0644]
rpm/redhat/main/non-common/pgsentinel/SLES-15/pgsentinel.spec [new symlink]
rpm/redhat/main/non-common/pgsentinel/main/Makefile [new file with mode: 0644]
rpm/redhat/main/non-common/pgsentinel/main/pgsentinel.spec [new file with mode: 0644]

diff --git a/rpm/redhat/13/pgsentinel/EL-10 b/rpm/redhat/13/pgsentinel/EL-10
new file mode 120000 (symlink)
index 0000000..b66c00a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-10
\ No newline at end of file
diff --git a/rpm/redhat/13/pgsentinel/EL-8 b/rpm/redhat/13/pgsentinel/EL-8
new file mode 120000 (symlink)
index 0000000..95781bf
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-8
\ No newline at end of file
diff --git a/rpm/redhat/13/pgsentinel/EL-9 b/rpm/redhat/13/pgsentinel/EL-9
new file mode 120000 (symlink)
index 0000000..1b87e51
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-9
\ No newline at end of file
diff --git a/rpm/redhat/13/pgsentinel/F-41 b/rpm/redhat/13/pgsentinel/F-41
new file mode 120000 (symlink)
index 0000000..3426c86
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-41
\ No newline at end of file
diff --git a/rpm/redhat/13/pgsentinel/F-42 b/rpm/redhat/13/pgsentinel/F-42
new file mode 120000 (symlink)
index 0000000..0c6ca8b
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-42
\ No newline at end of file
diff --git a/rpm/redhat/13/pgsentinel/SLES-15 b/rpm/redhat/13/pgsentinel/SLES-15
new file mode 120000 (symlink)
index 0000000..f889e2a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/SLES-15
\ No newline at end of file
diff --git a/rpm/redhat/14/pgsentinel/EL-10 b/rpm/redhat/14/pgsentinel/EL-10
new file mode 120000 (symlink)
index 0000000..b66c00a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-10
\ No newline at end of file
diff --git a/rpm/redhat/14/pgsentinel/EL-8 b/rpm/redhat/14/pgsentinel/EL-8
new file mode 120000 (symlink)
index 0000000..95781bf
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-8
\ No newline at end of file
diff --git a/rpm/redhat/14/pgsentinel/EL-9 b/rpm/redhat/14/pgsentinel/EL-9
new file mode 120000 (symlink)
index 0000000..1b87e51
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-9
\ No newline at end of file
diff --git a/rpm/redhat/14/pgsentinel/F-41 b/rpm/redhat/14/pgsentinel/F-41
new file mode 120000 (symlink)
index 0000000..3426c86
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-41
\ No newline at end of file
diff --git a/rpm/redhat/14/pgsentinel/F-42 b/rpm/redhat/14/pgsentinel/F-42
new file mode 120000 (symlink)
index 0000000..0c6ca8b
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-42
\ No newline at end of file
diff --git a/rpm/redhat/14/pgsentinel/SLES-15 b/rpm/redhat/14/pgsentinel/SLES-15
new file mode 120000 (symlink)
index 0000000..f889e2a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/SLES-15
\ No newline at end of file
diff --git a/rpm/redhat/15/pgsentinel/EL-10 b/rpm/redhat/15/pgsentinel/EL-10
new file mode 120000 (symlink)
index 0000000..b66c00a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-10
\ No newline at end of file
diff --git a/rpm/redhat/15/pgsentinel/EL-8 b/rpm/redhat/15/pgsentinel/EL-8
new file mode 120000 (symlink)
index 0000000..95781bf
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-8
\ No newline at end of file
diff --git a/rpm/redhat/15/pgsentinel/EL-9 b/rpm/redhat/15/pgsentinel/EL-9
new file mode 120000 (symlink)
index 0000000..1b87e51
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-9
\ No newline at end of file
diff --git a/rpm/redhat/15/pgsentinel/F-41 b/rpm/redhat/15/pgsentinel/F-41
new file mode 120000 (symlink)
index 0000000..3426c86
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-41
\ No newline at end of file
diff --git a/rpm/redhat/15/pgsentinel/F-42 b/rpm/redhat/15/pgsentinel/F-42
new file mode 120000 (symlink)
index 0000000..0c6ca8b
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-42
\ No newline at end of file
diff --git a/rpm/redhat/15/pgsentinel/SLES-15 b/rpm/redhat/15/pgsentinel/SLES-15
new file mode 120000 (symlink)
index 0000000..f889e2a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/SLES-15
\ No newline at end of file
diff --git a/rpm/redhat/16/pgsentinel/EL-10 b/rpm/redhat/16/pgsentinel/EL-10
new file mode 120000 (symlink)
index 0000000..b66c00a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-10
\ No newline at end of file
diff --git a/rpm/redhat/16/pgsentinel/EL-8 b/rpm/redhat/16/pgsentinel/EL-8
new file mode 120000 (symlink)
index 0000000..95781bf
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-8
\ No newline at end of file
diff --git a/rpm/redhat/16/pgsentinel/EL-9 b/rpm/redhat/16/pgsentinel/EL-9
new file mode 120000 (symlink)
index 0000000..1b87e51
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-9
\ No newline at end of file
diff --git a/rpm/redhat/16/pgsentinel/F-41 b/rpm/redhat/16/pgsentinel/F-41
new file mode 120000 (symlink)
index 0000000..3426c86
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-41
\ No newline at end of file
diff --git a/rpm/redhat/16/pgsentinel/F-42 b/rpm/redhat/16/pgsentinel/F-42
new file mode 120000 (symlink)
index 0000000..0c6ca8b
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-42
\ No newline at end of file
diff --git a/rpm/redhat/16/pgsentinel/SLES-15 b/rpm/redhat/16/pgsentinel/SLES-15
new file mode 120000 (symlink)
index 0000000..f889e2a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/SLES-15
\ No newline at end of file
diff --git a/rpm/redhat/17/pgsentinel/EL-10 b/rpm/redhat/17/pgsentinel/EL-10
new file mode 120000 (symlink)
index 0000000..b66c00a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-10
\ No newline at end of file
diff --git a/rpm/redhat/17/pgsentinel/EL-8 b/rpm/redhat/17/pgsentinel/EL-8
new file mode 120000 (symlink)
index 0000000..95781bf
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-8
\ No newline at end of file
diff --git a/rpm/redhat/17/pgsentinel/EL-9 b/rpm/redhat/17/pgsentinel/EL-9
new file mode 120000 (symlink)
index 0000000..1b87e51
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/EL-9
\ No newline at end of file
diff --git a/rpm/redhat/17/pgsentinel/F-41 b/rpm/redhat/17/pgsentinel/F-41
new file mode 120000 (symlink)
index 0000000..3426c86
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-41
\ No newline at end of file
diff --git a/rpm/redhat/17/pgsentinel/F-42 b/rpm/redhat/17/pgsentinel/F-42
new file mode 120000 (symlink)
index 0000000..0c6ca8b
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/F-42
\ No newline at end of file
diff --git a/rpm/redhat/17/pgsentinel/SLES-15 b/rpm/redhat/17/pgsentinel/SLES-15
new file mode 120000 (symlink)
index 0000000..f889e2a
--- /dev/null
@@ -0,0 +1 @@
+../../main/non-common/pgsentinel/SLES-15
\ No newline at end of file
diff --git a/rpm/redhat/main/non-common/pgsentinel/EL-10/Makefile b/rpm/redhat/main/non-common/pgsentinel/EL-10/Makefile
new file mode 100644 (file)
index 0000000..e2c8492
--- /dev/null
@@ -0,0 +1,17 @@
+#################################
+# RPM-specific Makefile                #
+# https://yum.postgresql.org   #
+#                              #
+# Devrim Gunduz                        #
+# devrim@gunduz.org            #
+#################################
+
+# Predefined values
+
+ARCH=`rpm --eval "%{_arch}"`
+DIR=`pwd`
+DIST=.rhel10
+SPECFILE="pgsentinel.spec"
+
+# Now, include global Makefile
+include ../../../../global/Makefile.global
diff --git a/rpm/redhat/main/non-common/pgsentinel/EL-10/pgsentinel.spec b/rpm/redhat/main/non-common/pgsentinel/EL-10/pgsentinel.spec
new file mode 120000 (symlink)
index 0000000..d3a5386
--- /dev/null
@@ -0,0 +1 @@
+../main/pgsentinel.spec
\ No newline at end of file
diff --git a/rpm/redhat/main/non-common/pgsentinel/EL-8/Makefile b/rpm/redhat/main/non-common/pgsentinel/EL-8/Makefile
new file mode 100644 (file)
index 0000000..6de4ce1
--- /dev/null
@@ -0,0 +1,17 @@
+#################################
+# RPM-specific Makefile                #
+# https://yum.postgresql.org   #
+#                              #
+# Devrim Gunduz                        #
+# devrim@gunduz.org            #
+#################################
+
+# Predefined values
+
+ARCH=`rpm --eval "%{_arch}"`
+DIR=`pwd`
+DIST=.rhel8
+SPECFILE="pgsentinel.spec"
+
+# Now, include global Makefile
+include ../../../../global/Makefile.global
diff --git a/rpm/redhat/main/non-common/pgsentinel/EL-8/pgsentinel.spec b/rpm/redhat/main/non-common/pgsentinel/EL-8/pgsentinel.spec
new file mode 120000 (symlink)
index 0000000..d3a5386
--- /dev/null
@@ -0,0 +1 @@
+../main/pgsentinel.spec
\ No newline at end of file
diff --git a/rpm/redhat/main/non-common/pgsentinel/EL-9/Makefile b/rpm/redhat/main/non-common/pgsentinel/EL-9/Makefile
new file mode 100644 (file)
index 0000000..6f23ec4
--- /dev/null
@@ -0,0 +1,17 @@
+#################################
+# RPM-specific Makefile                #
+# https://yum.postgresql.org   #
+#                              #
+# Devrim Gunduz                        #
+# devrim@gunduz.org            #
+#################################
+
+# Predefined values
+
+ARCH=`rpm --eval "%{_arch}"`
+DIR=`pwd`
+DIST=.rhel9
+SPECFILE="pgsentinel.spec"
+
+# Now, include global Makefile
+include ../../../../global/Makefile.global
diff --git a/rpm/redhat/main/non-common/pgsentinel/EL-9/pgsentinel.spec b/rpm/redhat/main/non-common/pgsentinel/EL-9/pgsentinel.spec
new file mode 120000 (symlink)
index 0000000..d3a5386
--- /dev/null
@@ -0,0 +1 @@
+../main/pgsentinel.spec
\ No newline at end of file
diff --git a/rpm/redhat/main/non-common/pgsentinel/F-41/Makefile b/rpm/redhat/main/non-common/pgsentinel/F-41/Makefile
new file mode 100644 (file)
index 0000000..29b025b
--- /dev/null
@@ -0,0 +1,17 @@
+#################################
+# RPM-specific Makefile                #
+# https://yum.postgresql.org   #
+#                              #
+# Devrim Gunduz                        #
+# devrim@gunduz.org            #
+#################################
+
+# Predefined values
+
+ARCH=`rpm --eval "%{_arch}"`
+DIR=`pwd`
+DIST=.f41
+SPECFILE="pgsentinel.spec"
+
+# Now, include global Makefile
+include ../../../../global/Makefile.global
diff --git a/rpm/redhat/main/non-common/pgsentinel/F-41/pgsentinel.spec b/rpm/redhat/main/non-common/pgsentinel/F-41/pgsentinel.spec
new file mode 120000 (symlink)
index 0000000..d3a5386
--- /dev/null
@@ -0,0 +1 @@
+../main/pgsentinel.spec
\ No newline at end of file
diff --git a/rpm/redhat/main/non-common/pgsentinel/F-42/Makefile b/rpm/redhat/main/non-common/pgsentinel/F-42/Makefile
new file mode 100644 (file)
index 0000000..19dc09a
--- /dev/null
@@ -0,0 +1,17 @@
+#################################
+# RPM-specific Makefile                #
+# https://yum.postgresql.org   #
+#                              #
+# Devrim Gunduz                        #
+# devrim@gunduz.org            #
+#################################
+
+# Predefined values
+
+ARCH=`rpm --eval "%{_arch}"`
+DIR=`pwd`
+DIST=.f42
+SPECFILE="pgsentinel.spec"
+
+# Now, include global Makefile
+include ../../../../global/Makefile.global
diff --git a/rpm/redhat/main/non-common/pgsentinel/F-42/pgsentinel.spec b/rpm/redhat/main/non-common/pgsentinel/F-42/pgsentinel.spec
new file mode 120000 (symlink)
index 0000000..d3a5386
--- /dev/null
@@ -0,0 +1 @@
+../main/pgsentinel.spec
\ No newline at end of file
diff --git a/rpm/redhat/main/non-common/pgsentinel/SLES-15/Makefile b/rpm/redhat/main/non-common/pgsentinel/SLES-15/Makefile
new file mode 100644 (file)
index 0000000..78de7f2
--- /dev/null
@@ -0,0 +1,17 @@
+#################################
+# RPM-specific Makefile                #
+# https://yum.postgresql.org   #
+#                              #
+# Devrim Gunduz                        #
+# devrim@gunduz.org            #
+#################################
+
+# Predefined values
+
+ARCH=`rpm --eval "%{_arch}"`
+DIR=`pwd`
+DIST=".sles15"
+SPECFILE="pgsentinel.spec"
+
+# Now, include global Makefile
+include ../../../../global/Makefile.global
diff --git a/rpm/redhat/main/non-common/pgsentinel/SLES-15/pgsentinel.spec b/rpm/redhat/main/non-common/pgsentinel/SLES-15/pgsentinel.spec
new file mode 120000 (symlink)
index 0000000..d3a5386
--- /dev/null
@@ -0,0 +1 @@
+../main/pgsentinel.spec
\ No newline at end of file
diff --git a/rpm/redhat/main/non-common/pgsentinel/main/Makefile b/rpm/redhat/main/non-common/pgsentinel/main/Makefile
new file mode 100644 (file)
index 0000000..1a289a9
--- /dev/null
@@ -0,0 +1,17 @@
+#################################
+# RPM-specific Makefile                #
+# https://yum.postgresql.org   #
+#                              #
+# Devrim Gunduz                        #
+# devrim@gunduz.org            #
+#################################
+
+# Predefined values
+
+ARCH=`rpm --eval "%{_arch}"`
+DIR=`pwd`
+DIST=.f99
+SPECFILE="pgsentinel.spec"
+
+# Now, include global Makefile
+include ../../../../global/Makefile.global
diff --git a/rpm/redhat/main/non-common/pgsentinel/main/pgsentinel.spec b/rpm/redhat/main/non-common/pgsentinel/main/pgsentinel.spec
new file mode 100644 (file)
index 0000000..65c485a
--- /dev/null
@@ -0,0 +1,65 @@
+%global sname pgsentinel
+
+%{!?llvm:%global llvm 1}
+
+Summary:       PostgreSQL extension for sampling active session history
+Name:          %{sname}_%{pgmajorversion}
+Version:       1.2.0
+Release:       1PGDG%{?dist}
+License:       PostgreSQL
+URL:           https://github.com/%{sname}/%{sname}
+Source0:       https://github.com/%{sname}/%{sname}/archive/refs/tags/v%{version}.tar.gz
+BuildRequires: postgresql%{pgmajorversion}-devel
+Requires:      postgresql%{pgmajorversion}-server
+
+%description
+PostgreSQL provides session activity. However, in order to gather activity
+behavior, users have to sample the pg_stat_activity view multiple times.
+pgsentinel is an extension to record active session history and link the
+activity with query statistics (pg_stat_statements).
+
+%if %llvm
+%package llvmjit
+Summary:       Just-in-time compilation support for pgsentinel
+Requires:      %{name}%{?_isa} = %{version}-%{release}
+%if 0%{?suse_version} >= 1500
+BuildRequires: llvm17-devel clang17-devel
+Requires:      llvm17
+%endif
+%if 0%{?fedora} || 0%{?rhel} >= 8
+BuildRequires: llvm-devel >= 19.0 clang-devel >= 19.0
+Requires:      llvm => 19.0
+%endif
+
+%description llvmjit
+This package provides JIT support for pgsentinel
+%endif
+
+%prep
+%setup -q -n %{sname}-%{version}
+
+%build
+USE_PGXS=1 PATH=%{pginstdir}/bin/:$PATH %{__make} %{?_smp_mflags}
+
+%install
+%{__rm} -rf %{buildroot}
+USE_PGXS=1 PATH=%{pginstdir}/bin/:$PATH %{__make} DESTDIR=%{buildroot} %{?_smp_mflags} install
+# Install documentation with a better name:
+%{__mkdir} -p %{buildroot}%{pginstdir}/doc/extension
+%{__cp} README.md %{buildroot}%{pginstdir}/doc/extension/README-%{sname}.md
+
+%files
+%defattr(644,root,root,755)
+%doc %{pginstdir}/doc/extension/README-%{sname}.md
+%{pginstdir}/lib/%{sname}*.*
+%{pginstdir}/share/extension/%{sname}*.*
+
+%if %llvm
+%files llvmjit
+    %{pginstdir}/lib/bitcode/%{sname}.index.bc
+    %{pginstdir}/lib/bitcode/%{sname}/*bc
+%endif
+
+%changelog
+* Wed Jul 30 2025 Devrim Gündüz <devrim@gunduz.org> - 1.2.0-1PGDG
+- Initial packaging for the PostgreSQL RPM Repository