- Add a llvmjit-devel subpackage to pull in the right versions

of clang and llvm for building extensions.

OBS-URL: https://build.opensuse.org/package/show/server:database:postgresql/postgresql12?expand=0&rev=59
This commit is contained in:
Reinhard Max 2021-11-30 16:50:45 +00:00 committed by Git OBS Bridge
parent 34f0cffed2
commit b438339ef4
2 changed files with 41 additions and 7 deletions

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Thu Nov 25 11:02:15 UTC 2021 - Reinhard Max <max@suse.com>
- Add a llvmjit-devel subpackage to pull in the right versions
of clang and llvm for building extensions.
-------------------------------------------------------------------
Wed Nov 10 18:07:22 UTC 2021 - Reinhard Max <max@suse.com>

View File

@ -40,6 +40,8 @@
%define pgcontribdir %pgdatadir/contrib
%define pgmandir %_mandir
%define requires_file() %( readlink -f '%*' | LC_ALL=C xargs -r rpm -q --qf 'Requires: %%{name} >= %%{epoch}:%%{version}\\n' -f | sed -e 's/ (none):/ /' -e 's/ 0:/ /' | grep -v "is not")
Name: %pgname
%if "@BUILD_FLAVOR@" == "mini"
%define devel devel-mini
@ -228,6 +230,7 @@ Conflicts: %pgname-devel
%else
Requires: %libecpg >= %version
Requires: %libpq >= %version
Requires: postgresql-devel-noarch >= %version
%endif
# Installation of postgresql??-devel is exclusive
Provides: postgresql-devel-exclusive = %pgmajor
@ -249,10 +252,6 @@ Requires: %pgname-server = %version-%release
# Installation of postgresql??-devel is exclusive
Provides: postgresql-server-devel-exclusive = %pgmajor
Conflicts: postgresql-server-devel-exclusive < %pgmajor
%if %{with llvm}
Recommends: clang
Recommends: llvm
%endif
Requires: libxslt-devel
Requires: openssl-devel
Requires: pam-devel
@ -262,6 +261,9 @@ Requires: pkgconfig(krb5)
%if %{with selinux}
Requires: libselinux-devel
%endif
%if %{with llvm}
Recommends: %pgname-llvmjit-devel = %version-%release
%endif
%if %{with server_devel}
%description server-devel
@ -335,6 +337,30 @@ PostgreSQL queries. Using LLVM it compiles e.g. expressions and tuple
deforming into native code, with the goal of accelerating analytics
queries.
%package llvmjit-devel
Summary: PostgreSQL development files for extensions with LLVM support
Group: Development/Libraries/C and C++
Provides: postgresql-llvmjit-devel = %version-%release
Provides: postgresql-llvmjit-devel-implementation = %version-%release
Requires: %pgname-server-devel = %version
%if %{with llvm}
Requires(post): postgresql-llvmjit-noarch >= %pgmajor
Requires(postun):postgresql-llvmjit-noarch >= %pgmajor
%requires_file %_bindir/llc
%requires_file %_bindir/clang
%endif
%description llvmjit-devel
PostgreSQL is an advanced object-relational database management system
that supports an extended subset of the SQL standard, including
transactions, foreign keys, sub-queries, triggers, and user-defined
types and functions.
This package pulls in the right versions of llvm and clang to compile
PostgreSQL extensions that support just-in-time compilation with LLVM,
if llvm is supported. Otherwise it will just pull the
%{pgname}-server-devel package.
%package test
Summary: The test suite for PostgreSQL
Group: Productivity/Databases/Servers
@ -866,17 +892,19 @@ fi
%pglibdir/*_and_*.so
%pglibdir/euc2004_sjis2004.so
%pglibdir/libpqwalreceiver.so
%if %{with llvm}
%dir %pglibdir/bitcode
%endif
%pgextensiondir/plpgsql*
%attr(750,postgres,postgres) %dir /var/lib/pgsql
%if %{with llvm}
%dir %pglibdir/bitcode
%files llvmjit
%defattr(-,root,root)
%pglibdir/llvm*
%pglibdir/bitcode/*
%files llvmjit-devel
%doc README
%endif
%files pltcl -f pltcl.lang