From ee1a33a1b50cf672028efccb56102ef9b934a269 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Sun, 28 Mar 2021 01:25:24 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/postgresql.git#34a02d67d816e303d84d948498c7831cefcf1ca5 --- postgresql.spec | 179 ++++++------------------------------------------ 1 file changed, 22 insertions(+), 157 deletions(-) diff --git a/postgresql.spec b/postgresql.spec index 5a571d1..74c2cd2 100644 --- a/postgresql.spec +++ b/postgresql.spec @@ -32,13 +32,10 @@ %{!?beta:%global beta 0} %{!?test:%global test 1} -%{!?llvmjit:%global llvmjit 1} +# Disable temporarily to be able to build the package +# tracked in RHBZ#1940964 +%{!?llvmjit:%global llvmjit 0} %{!?upgrade:%global upgrade 1} -%if 0%{?rhel} > 8 -%{!?plpython:%global plpython 0} -%else -%{!?plpython:%global plpython 1} -%endif %{!?plpython3:%global plpython3 1} %{!?pltcl:%global pltcl 1} %{!?plperl:%global plperl 1} @@ -65,7 +62,7 @@ Summary: PostgreSQL client programs Name: postgresql %global majorversion 13 Version: %{majorversion}.2 -Release: 2%{?dist} +Release: 4%{?dist} # The PostgreSQL license is very similar to other MIT licenses, but the OSI # recognizes it as an independent license, so we do as well. @@ -130,10 +127,6 @@ BuildRequires: docbook-style-xsl # postgresql-setup build requires BuildRequires: m4 elinks docbook-utils help2man -%if %plpython -BuildRequires: python2-devel -%endif - %if %plpython3 BuildRequires: python3-devel %endif @@ -314,19 +307,6 @@ Install this if you want to write database functions in Perl. %endif -%if %plpython -%package plpython -Summary: The Python2 procedural language for PostgreSQL -Requires: %{name}-server%{?_isa} = %precise_version -Provides: %{name}-plpython2 = %precise_version - -%description plpython -The postgresql-plpython package contains the PL/Python procedural language, -which is an extension to the PostgreSQL database server. -Install this if you want to write database functions in Python 2. -%endif - - %if %plpython3 %package plpython3 Summary: The Python3 procedural language for PostgreSQL @@ -448,11 +428,6 @@ CFLAGS="${CFLAGS:-%optflags}" CFLAGS=`echo $CFLAGS|xargs -n 1|grep -v ffast-math|xargs -n 100` export CFLAGS -# plpython requires separate configure/build runs to build against python 2 -# versus python 3. Our strategy is to do the python 3 run first, then make -# distclean and do it again for the "normal" build. Note that the installed -# Makefile.global will reflect the python 2 build, which seems appropriate -# since that's still considered the default plpython version. common_configure_options=' --disable-rpath %if %beta @@ -503,50 +478,15 @@ common_configure_options=' %if %llvmjit --with-llvm %endif -' - %if %plpython3 + --with-python +%endif +' export PYTHON=/usr/bin/python3 # These configure options must match main build -%configure $common_configure_options \ - --with-python - -# Fortunately we don't need to build much except plpython itself. -%global python_subdirs \\\ - src/pl/plpython \\\ - contrib/hstore_plpython \\\ - contrib/jsonb_plpython \\\ - contrib/ltree_plpython - -for dir in %python_subdirs; do - %make_build -C "$dir" all -done - -# save built form in a directory that "make distclean" won't touch -for dir in %python_subdirs; do - rm -rf "${dir}3" # shouldn't exist, unless --short-circuit - cp -a "$dir" "${dir}3" -done - -# must also save this version of Makefile.global for later -cp src/Makefile.global src/Makefile.global.python3 - -make distclean - -# endif plpython3 -%endif - -PYTHON=/usr/bin/python2 - -# Normal (python2) build begins here -%configure $common_configure_options \ -%if %plpython - --with-python -%endif - -unset PYTHON +%configure $common_configure_options %make_build world @@ -583,32 +523,6 @@ test_failure=0 run_testsuite "src/test/regress" make clean -C "src/test/regress" run_testsuite "src/pl" -%if %plpython3 - # must install Makefile.global that selects python3 - mv src/Makefile.global src/Makefile.global.save - cp src/Makefile.global.python3 src/Makefile.global - touch -r src/Makefile.global.save src/Makefile.global - - for dir in %python_subdirs; do - # because "make check" does "make install" on the whole tree, - # we must temporarily install *plpython3 dir as *plpython, - # since that is the subdirectory src/pl/Makefile knows about - mv "$dir" "${dir}2" - mv "${dir}3" "$dir" - done - - for dir in %python_subdirs; do - run_testsuite "$dir" - done - - for dir in %python_subdirs; do - # and clean up our mess - mv "$dir" "${dir}3" - mv "${dir}2" "${dir}" - done - - mv -f src/Makefile.global.save src/Makefile.global -%endif run_testsuite "contrib" %endif @@ -639,7 +553,6 @@ upgrade_configure () # its ideas about installation paths. # The -fno-aggressive-loop-optimizations is hack for #993532 - PYTHON="${PYTHON-/usr/bin/python2}" \ CFLAGS="$CFLAGS -fno-aggressive-loop-optimizations" ./configure \ --build=%{_build} \ --host=%{_host} \ @@ -657,31 +570,16 @@ upgrade_configure () %endif %if %pltcl --with-tcl \ +%endif +%if %plpython3 + --with-python \ %endif --with-tclconfig=%_libdir \ --with-system-tzdata=/usr/share/zoneinfo \ "$@" } -%if %plpython3 - export PYTHON=/usr/bin/python3 - upgrade_configure --with-python - for dir in %python_subdirs; do - # Previous version doesn't necessarily have this. - test -d "$dir" || continue - %make_build -C "$dir" all - - # save aside the only one file which we are interested here - cp "$dir"/*plpython3.so ./ - done - unset PYTHON - make distclean -%endif - upgrade_configure \ -%if %plpython - --with-python -%endif make %{?_smp_mflags} all make -C contrib %{?_smp_mflags} all @@ -718,16 +616,6 @@ rm $RPM_BUILD_ROOT/%_includedir/libpq/libpq-fs.h rm $RPM_BUILD_ROOT/%_includedir/postgres_ext.h rm -r $RPM_BUILD_ROOT/%_includedir/pgsql/internal/ -%if %plpython3 - mv src/Makefile.global src/Makefile.global.save - cp src/Makefile.global.python3 src/Makefile.global - touch -r src/Makefile.global.save src/Makefile.global - for dir in %python_subdirs; do - %make_install -C "${dir}3" - done - mv -f src/Makefile.global.save src/Makefile.global -%endif - # make sure these directories exist even if we suppressed all contrib modules install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/pgsql/contrib install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/pgsql/extension @@ -770,12 +658,6 @@ rm $RPM_BUILD_ROOT/%{_datadir}/man/man1/ecpg.1 pushd postgresql-%{prevversion} make DESTDIR=$RPM_BUILD_ROOT install make -C contrib DESTDIR=$RPM_BUILD_ROOT install -%if %plpython3 - for file in *plpython3.so; do - install -m 755 "$file" \ - $RPM_BUILD_ROOT/%_libdir/pgsql/postgresql-%prevmajorversion/lib - done -%endif popd # remove stuff we don't actually need for upgrade purposes @@ -849,11 +731,9 @@ rm $RPM_BUILD_ROOT%{_libdir}/libpgfeutils.a rm -f $RPM_BUILD_ROOT%{_bindir}/pgsql/hstore_plperl.so %endif -%if !%plpython -rm -f $RPM_BUILD_ROOT%{_bindir}/pgsql/hstore_plpython2.so +# no python2, yet installed, remove rm -f $RPM_BUILD_ROOT%{_datadir}/pgsql/extension/*_plpythonu* rm -f $RPM_BUILD_ROOT%{_datadir}/pgsql/extension/*_plpython2u* -%endif %if %nls find_lang_bins () @@ -876,11 +756,7 @@ find_lang_bins main.lst \ %if %plperl find_lang_bins plperl.lst plperl %endif -%if %plpython -find_lang_bins plpython.lst plpython -%endif %if %plpython3 -# plpython3 shares message files with plpython find_lang_bins plpython3.lst plpython %endif %if %pltcl @@ -987,10 +863,6 @@ make -C postgresql-setup-%{setup_version} check %if %{plperl} %{_datadir}/pgsql/extension/jsonb_plperl* %endif -%if %{plpython} -%{_datadir}/pgsql/extension/jsonb_plpythonu* -%{_datadir}/pgsql/extension/jsonb_plpython2u* -%endif %if %{plpython3} %{_datadir}/pgsql/extension/jsonb_plpython3u* %endif @@ -1036,9 +908,6 @@ make -C postgresql-setup-%{setup_version} check %if %plperl %{_libdir}/pgsql/hstore_plperl.so %endif -%if %plpython -%{_libdir}/pgsql/hstore_plpython2.so -%endif %if %plpython3 %{_libdir}/pgsql/hstore_plpython3.so %endif @@ -1047,17 +916,11 @@ make -C postgresql-setup-%{setup_version} check %if %plperl %{_libdir}/pgsql/jsonb_plperl.so %endif -%if %plpython -%{_libdir}/pgsql/jsonb_plpython2.so -%endif %if %plpython3 %{_libdir}/pgsql/jsonb_plpython3.so %endif %{_libdir}/pgsql/lo.so %{_libdir}/pgsql/ltree.so -%if %plpython -%{_libdir}/pgsql/ltree_plpython2.so -%endif %if %plpython3 %{_libdir}/pgsql/ltree_plpython3.so %endif @@ -1244,14 +1107,6 @@ make -C postgresql-setup-%{setup_version} check %endif -%if %plpython -%files plpython -f plpython.lst -%{_datadir}/pgsql/extension/plpython2* -%{_datadir}/pgsql/extension/plpythonu* -%{_libdir}/pgsql/plpython2.so -%endif - - %if %plpython3 %files plpython3 -f plpython3.lst %{_datadir}/pgsql/extension/plpython3* @@ -1266,6 +1121,16 @@ make -C postgresql-setup-%{setup_version} check %changelog +* Wed Feb 17 2021 Honza Horak - 13.2-4 +- Remove plpython2 entirely, same as upstream did + Resolves: #1913681 +- Disable llvmjit in order to build at all + Related: #1940964 + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 13.2-3 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + * Wed Feb 17 2021 Honza Horak - 13.2-2 - Do not build plpython on RHEL > 8 Related: #1913681