- 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/postgresql14?expand=0&rev=18
This commit is contained in:
Reinhard Max 2021-11-30 15:48:50 +00:00 committed by Git OBS Bridge
parent d7acfaaff7
commit 92f6f97f1f
2 changed files with 37 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 16:56:57 UTC 2021 - Reinhard Max <max@suse.com> Wed Nov 10 16:56:57 UTC 2021 - Reinhard Max <max@suse.com>

View File

@ -40,6 +40,8 @@
%define pgcontribdir %pgdatadir/contrib %define pgcontribdir %pgdatadir/contrib
%define pgmandir %_mandir %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 Name: %pgname
%if "@BUILD_FLAVOR@" == "mini" %if "@BUILD_FLAVOR@" == "mini"
%define devel devel-mini %define devel devel-mini
@ -228,6 +230,7 @@ Conflicts: %pgname-devel
%else %else
Requires: %libecpg >= %version Requires: %libecpg >= %version
Requires: %libpq >= %version Requires: %libpq >= %version
Requires: postgresql-devel-noarch >= %version
%endif %endif
# Installation of postgresql??-devel is exclusive # Installation of postgresql??-devel is exclusive
Provides: postgresql-devel-exclusive = %pgmajor Provides: postgresql-devel-exclusive = %pgmajor
@ -249,10 +252,6 @@ Requires: %pgname-server = %version-%release
# Installation of postgresql??-devel is exclusive # Installation of postgresql??-devel is exclusive
Provides: postgresql-server-devel-exclusive = %pgmajor Provides: postgresql-server-devel-exclusive = %pgmajor
Conflicts: postgresql-server-devel-exclusive < %pgmajor Conflicts: postgresql-server-devel-exclusive < %pgmajor
%if %{with llvm}
Recommends: clang
Recommends: llvm
%endif
Requires: libxslt-devel Requires: libxslt-devel
Requires: openssl-devel Requires: openssl-devel
Requires: pam-devel Requires: pam-devel
@ -262,6 +261,9 @@ Requires: pkgconfig(krb5)
%if %{with selinux} %if %{with selinux}
Requires: libselinux-devel Requires: libselinux-devel
%endif %endif
%if %{with llvm}
Recommends: %pgname-llvmjit-devel = %version-%release
%endif
%if %{with server_devel} %if %{with server_devel}
%description server-devel %description server-devel
@ -335,6 +337,26 @@ PostgreSQL queries. Using LLVM it compiles e.g. expressions and tuple
deforming into native code, with the goal of accelerating analytics deforming into native code, with the goal of accelerating analytics
queries. 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(post): postgresql-llvmjit-noarch >= %pgmajor
Requires(postun):postgresql-llvmjit-noarch >= %pgmajor
Requires: %pgname-server-devel = %version
%requires_file %_bindir/llc
%requires_file %_bindir/clang
%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.
%package test %package test
Summary: The test suite for PostgreSQL Summary: The test suite for PostgreSQL
Group: Productivity/Databases/Servers Group: Productivity/Databases/Servers
@ -866,17 +888,19 @@ fi
%pglibdir/*_and_*.so %pglibdir/*_and_*.so
%pglibdir/euc2004_sjis2004.so %pglibdir/euc2004_sjis2004.so
%pglibdir/libpqwalreceiver.so %pglibdir/libpqwalreceiver.so
%if %{with llvm}
%dir %pglibdir/bitcode
%endif
%pgextensiondir/plpgsql* %pgextensiondir/plpgsql*
%attr(750,postgres,postgres) %dir /var/lib/pgsql %attr(750,postgres,postgres) %dir /var/lib/pgsql
%if %{with llvm} %if %{with llvm}
%dir %pglibdir/bitcode
%files llvmjit %files llvmjit
%defattr(-,root,root) %defattr(-,root,root)
%pglibdir/llvm* %pglibdir/llvm*
%pglibdir/bitcode/* %pglibdir/bitcode/*
%files llvmjit-devel
%doc README
%endif %endif
%files pltcl -f pltcl.lang %files pltcl -f pltcl.lang