diff --git a/postgresql-external-libpq.patch b/postgresql-external-libpq.patch index 71dc609..ba7ef73 100644 --- a/postgresql-external-libpq.patch +++ b/postgresql-external-libpq.patch @@ -18,19 +18,19 @@ index bcdbd95..4bea236 100644 backend/replication/pgoutput \ fe_utils \ diff --git a/src/Makefile.global.in b/src/Makefile.global.in -index 9a4a8a3..2bdfb77 100644 +index b9d86ac..29df69f 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in -@@ -513,7 +513,7 @@ endif - - # This macro is for use by libraries linking to libpq. (Because libpgport - # isn't created with the same link flags as libpq, it can't be used.) +@@ -549,7 +549,7 @@ endif + # How to link to libpq. (This macro may be used as-is by backend extensions. + # Client-side code should go through libpq_pgport or libpq_pgport_shlib, + # instead.) -libpq = -L$(libpq_builddir) -lpq +libpq = -lpq - # This macro is for use by client executables (not libraries) that use libpq. + # libpq_pgport is for use by client executables (not libraries) that use libpq. # We force clients to pull symbols from the non-shared libraries libpgport -@@ -539,7 +539,6 @@ endif +@@ -579,7 +579,6 @@ endif # Commonly used submake targets submake-libpq: | submake-generated-headers @@ -38,3 +38,6 @@ index 9a4a8a3..2bdfb77 100644 submake-libpgport: | submake-generated-headers $(MAKE) -C $(top_builddir)/src/port all +-- +2.21.0 + diff --git a/postgresql-server-pg_config.patch b/postgresql-server-pg_config.patch index 6cde037..65e379b 100644 --- a/postgresql-server-pg_config.patch +++ b/postgresql-server-pg_config.patch @@ -55,5 +55,5 @@ index 1d41f90..0f34f37 100644 # src/bin/pg_config/nls.mk -CATALOG_NAME = pg_config +CATALOG_NAME = pg_server_config - AVAIL_LANGUAGES = cs de es fr he it ja ko nb pl pt_BR ro ru sv ta tr vi zh_CN zh_TW + AVAIL_LANGUAGES = cs de es fr he it ja ko pl pt_BR ro ru sv tr uk vi zh_CN zh_TW GETTEXT_FILES = pg_config.c ../../common/config_info.c ../../common/exec.c diff --git a/postgresql.spec b/postgresql.spec index a6c132f..070b7ca 100644 --- a/postgresql.spec +++ b/postgresql.spec @@ -32,6 +32,7 @@ %{!?beta:%global beta 0} %{!?test:%global test 1} +%{!?llvmjit:%global llvmjit 1} %{!?upgrade:%global upgrade 1} %{!?plpython:%global plpython 1} %{!?plpython3:%global plpython3 1} @@ -58,9 +59,9 @@ Summary: PostgreSQL client programs Name: postgresql -%global majorversion 11 -Version: 11.4 -Release: 1.0.riscv64%{?dist} +%global majorversion 12 +Version: %{majorversion}.2 +Release: 2.0.riscv64%{?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. @@ -71,14 +72,15 @@ Url: http://www.postgresql.org/ # in-place upgrade of an old database. In most cases it will not be critical # that this be kept up with the latest minor release of the previous series; # but update when bugs affecting pg_dump output are fixed. -%global prevversion 10.9 -%global prevmajorversion 10 +%global prevversion 11.7 +%global prevmajorversion 11 %global prev_prefix %{_libdir}/pgsql/postgresql-%{prevmajorversion} %global precise_version %{?epoch:%epoch:}%version-%release %global setup_version 8.4 %global service_name postgresql.service + Source0: https://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2 # The PDF file is generated by generate-pdf.sh, which see for comments Source1: postgresql-%{version}-US.pdf @@ -111,6 +113,7 @@ Patch9: postgresql-server-pg_config.patch BuildRequires: gcc BuildRequires: perl(ExtUtils::MakeMaker) glibc-devel bison flex gawk BuildRequires: perl(ExtUtils::Embed), perl-devel +BuildRequires: perl(Opcode) %if 0%{?fedora} || 0%{?rhel} > 7 BuildRequires: perl-generators %endif @@ -236,6 +239,12 @@ Summary: PostgreSQL development header files and libraries %if %icu Requires: libicu-devel %endif +%if %kerberos +Requires: krb5-devel +%endif +%if %llvmjit +Requires: clang-devel llvm-devel +%endif %description server-devel The postgresql-server-devel package contains the header files and configuration @@ -348,6 +357,30 @@ PostgreSQL database management system, including regression tests and benchmarks. %endif +%if %llvmjit +%package llvmjit +Summary: Just-in-time compilation support for PostgreSQL +Requires: %{name}-server%{?_isa} = %{version}-%{release} +%if 0%{?rhel} && 0%{?rhel} == 7 +Requires: llvm5.0 >= 5.0 +%else +Requires: llvm => 5.0 +%endif +Provides: postgresql-llvmjit >= %{version}-%{release} + +%ifarch ppc64 ppc64le +AutoReq: 0 +Requires: advance-toolchain-%{atstring}-runtime +%endif + +BuildRequires: llvm-devel >= 5.0 clang-devel >= 5.0 + +%description llvmjit +The postgresql-llvmjit package contains support for +just-in-time compiling parts of PostgreSQL queries. Using LLVM it +compiles e.g. expressions and tuple deforming into native code, with the +goal of accelerating analytics queries. +%endif %prep ( @@ -357,7 +390,7 @@ benchmarks. sha256sum -c %{SOURCE17} %endif ) -%setup -q -a 12 +%setup -q -a 12 -n postgresql-%{version} %patch1 -p1 %patch2 -p1 %patch5 -p1 @@ -470,6 +503,9 @@ common_configure_options=' %if %icu --with-icu %endif +%if %llvmjit + --with-llvm +%endif ' %if %plpython3 @@ -834,7 +870,7 @@ find_lang_bins () find_lang_bins devel.lst pg_server_config find_lang_bins server.lst \ initdb pg_basebackup pg_controldata pg_ctl pg_resetwal pg_rewind plpgsql \ - postgres pg_verify_checksums + postgres pg_checksums find_lang_bins contrib.lst \ pg_archivecleanup pg_test_fsync pg_test_timing pg_waldump find_lang_bins main.lst \ @@ -879,7 +915,7 @@ make -C postgresql-setup-%{setup_version} check # FILES sections. %files -f main.lst %doc doc/KNOWN_BUGS doc/MISSING_FEATURES doc/TODO -%doc COPYRIGHT README HISTORY doc/bug.template +%doc COPYRIGHT README HISTORY %doc README.rpm-dist %{_bindir}/clusterdb %{_bindir}/createdb @@ -908,6 +944,11 @@ make -C postgresql-setup-%{setup_version} check %{_mandir}/man1/reindexdb.* %{_mandir}/man1/vacuumdb.* %{_mandir}/man7/* +%if %llvmjit +# Install bitcode directory along with the main package, +# so that extensions can use this dir. +%dir %{_libdir}/pgsql/bitcode +%endif %files docs @@ -973,7 +1014,6 @@ make -C postgresql-setup-%{setup_version} check %{_datadir}/pgsql/extension/seg* %{_datadir}/pgsql/extension/tablefunc* %{_datadir}/pgsql/extension/tcn* -%{_datadir}/pgsql/extension/timetravel* %{_datadir}/pgsql/extension/tsm_system_rows* %{_datadir}/pgsql/extension/tsm_system_time* %{_datadir}/pgsql/extension/unaccent* @@ -1040,7 +1080,6 @@ make -C postgresql-setup-%{setup_version} check %{_libdir}/pgsql/tablefunc.so %{_libdir}/pgsql/tcn.so %{_libdir}/pgsql/test_decoding.so -%{_libdir}/pgsql/timetravel.so %{_libdir}/pgsql/tsm_system_rows.so %{_libdir}/pgsql/tsm_system_time.so %{_libdir}/pgsql/unaccent.so @@ -1080,14 +1119,13 @@ make -C postgresql-setup-%{setup_version} check %{_bindir}/pg_recvlogical %{_bindir}/pg_resetwal %{_bindir}/pg_rewind -%{_bindir}/pg_verify_checksums +%{_bindir}/pg_checksums %{_bindir}/postgres %{_bindir}/postgresql-setup %{_bindir}/postmaster %dir %{_datadir}/pgsql %{_datadir}/pgsql/*.sample %dir %{_datadir}/pgsql/contrib -%{_datadir}/pgsql/conversion_create.sql %dir %{_datadir}/pgsql/extension %{_datadir}/pgsql/extension/plpgsql* %{_datadir}/pgsql/information_schema.sql @@ -1101,6 +1139,7 @@ make -C postgresql-setup-%{setup_version} check %{_datadir}/pgsql/tsearch_data/ %dir %{_datadir}/postgresql-setup %{_datadir}/postgresql-setup/library.sh +%dir %{_libdir}/pgsql %{_libdir}/pgsql/*_and_*.so %{_libdir}/pgsql/dict_snowball.so %{_libdir}/pgsql/euc2004_sjis2004.so @@ -1121,7 +1160,7 @@ make -C postgresql-setup-%{setup_version} check %{_mandir}/man1/pg_receivewal.* %{_mandir}/man1/pg_resetwal.* %{_mandir}/man1/pg_rewind.* -%{_mandir}/man1/pg_verify_checksums.* +%{_mandir}/man1/pg_checksums.* %{_mandir}/man1/postgres.* %{_mandir}/man1/postgresql-new-systemd-unit.* %{_mandir}/man1/postgresql-setup.* @@ -1159,6 +1198,8 @@ make -C postgresql-setup-%{setup_version} check %files static %{_libdir}/libpgcommon.a %{_libdir}/libpgport.a +%{_libdir}/libpgcommon_shlib.a +%{_libdir}/libpgport_shlib.a %if %upgrade @@ -1179,6 +1220,13 @@ make -C postgresql-setup-%{setup_version} check %{macrosdir}/macros.%name-upgrade %endif +%if %llvmjit +%files llvmjit +%defattr(-,root,root) +%{_libdir}/pgsql/bitcode/* +%{_libdir}/pgsql/llvmjit.so +%{_libdir}/pgsql/llvmjit_types.bc +%endif %if %plperl %files plperl -f plperl.lst @@ -1216,9 +1264,47 @@ make -C postgresql-setup-%{setup_version} check %changelog -* Fri Jul 19 2019 David Abdurachmanov - 11.4-1.0.riscv64 +* Sun Apr 05 2020 David Abdurachmanov - 12.2-2.0.riscv64 - Disable spinlocks on RISC-V 64-bit (riscv64) +* Thu Mar 12 2020 Patrik Novotný - 12.2-2 +- Fix requirements for JIT in postgresql-server-devel +- Fix build issues regarding new perl update + +* Fri Feb 14 2020 Patrik Novotný - 12.2-1 +- Rebase to upstream release 12.2 + +* Tue Feb 11 2020 Patrik Novotný - 12.1-1 +- Rebase to upstream release 12.1 + +* Thu Jan 30 2020 Fedora Release Engineering - 11.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Nov 25 2019 Patrik Novotný - 11.6-1 +- Rebase to upstream version 11.6 + +* Fri Nov 01 2019 Pete Walter - 11.5-6 +- Rebuild for ICU 65 + +* Thu Sep 05 2019 Patrik Novotný - 11.5-5 +- postgresql-server-devel requires krb5-devel + +* Tue Sep 03 2019 Patrik Novotný - 11.5-4 +- Add explicit obsoletes to plpython2 package + +* Mon Sep 02 2019 Patrik Novotný - 11.5-3 +- Rename plpython to plpython2 and provide plpython virtually. + +* Mon Aug 19 2019 Miro Hrončok - 11.5-2 +- Rebuilt for Python 3.8 + +* Wed Aug 07 2019 Petr Kubat - 11.5-1 +- New upstream version 11.5 + https://www.postgresql.org/docs/11/release-11-5.html + +* Fri Jul 26 2019 Fedora Release Engineering - 11.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Tue Jul 09 2019 Petr Kubat - 11.4-1 - New upstream version 11.4 https://www.postgresql.org/docs/11/release-11-4.html diff --git a/sources b/sources index 932fa8b..98aa112 100644 --- a/sources +++ b/sources @@ -1,6 +1,6 @@ -SHA512 (postgresql-10.9.tar.bz2) = 4e2f30a0fd262f2e3ce5fc836425be635326600cd6cd4e117c57f59ea7ab2e9ea463a8d357fe7adb8c0dd0094e43d08efc2a137f8f9975715a5908e35920f98e -SHA512 (postgresql-10.9.tar.bz2.sha256) = 95b1a8bdc442ea79d82d0362cef048af851999b3e79764b0dfbc19742814e2be5fb6132b1b4bdac24b6ee0965e8825872c37c9a45038e9da5ccb85fc6498af57 -SHA512 (postgresql-11.4.tar.bz2) = 159fb84134e05ddc58e40a879ca52ed4d58ced7bcd1e7310d59bda84f9055339a31a92cfaab2c063a88685f7417b9a828534394bf9a2477fc33d1fb6cd26186b -SHA512 (postgresql-11.4.tar.bz2.sha256) = 9cceb9ae6403ad97ba3ae7f3eac67576b6fa216a65feb509217d4b69d2d53d3cc50160508a24770f4b9e450c97832494228b2644f0f8522d4c5a49540bf40ad7 +SHA512 (postgresql-12.2.tar.bz2) = 0e0ce8e21856e8f43e58b840c10c4e3ffae6d5207e0d778e9176e36f8e20e34633cbb06f0030a7c963c3491bb7e941456d91b55444c561cfc6f283fba76f33ee +SHA512 (postgresql-12.2.tar.bz2.sha256) = 8f94163228bb7d854d6fe4924a8a2ded00f90af662dd4a7c39b415be0826d9395e55f9b8e3b472baf7c19550e7c35198a650604a28756ad85d096bcfbaa5d1fd +SHA512 (postgresql-12.2-US.pdf) = f086fead2c094e0f1148bcadaf13e240a84b53be289aa0a323295f65879699e81041b4bbc6cc3ce2744aac3fcb15083fa1cab583cd86fdc8ef626499e3cb3e71 +SHA512 (postgresql-11.7.tar.bz2) = 32c7ace228f9895241ce0d925fbfc60c0cd39f4cd35368fb10dc7db046151ffd59a9895b4c30a529627f0103051e84b4992ed60312cccd292489f3037076ca1e +SHA512 (postgresql-11.7.tar.bz2.sha256) = 1c8bc319da6bc49000f14e4636f4410b3eb52ab41b0698e7f3ee945efe8e93b6f1758e3f60d8658b0ea6836ea0f271a61031554a10e64c61d2c670e97c63812c SHA512 (postgresql-setup-8.4.tar.gz) = eb73767d5c676481598aeb545e15027a29a438aa29480ad414f6af31c9df61138a51f5425999b4b35e776a3dbbb28c887790ea9771abc3328158dd1d34b1dce1 -SHA512 (postgresql-11.4-US.pdf) = 43098eb35d1a3c50e1e3dc06cd0658bf2d61ee1550d2199bc2bbb659cd73b5885609254c32687add1264eba70bb672f1e1dc9b70c798a04ae26b8eab1625b7e5