From af9752a8d84de88d278a1699f70f18ce0f7a22ce Mon Sep 17 00:00:00 2001 From: Marcin Krol Date: Mon, 4 Apr 2022 18:28:07 +0200 Subject: [PATCH] - build with python3, allow newer autoconf, adjust for rpm.org --- per-version-dirs.patch | 12 +++++++----- postgresql-autoconf.patch | 14 ++++++++++++++ postgresql-link.patch | 37 ++++++++++++++++++++----------------- postgresql.spec | 24 +++++++++++++----------- 4 files changed, 54 insertions(+), 33 deletions(-) create mode 100644 postgresql-autoconf.patch diff --git a/per-version-dirs.patch b/per-version-dirs.patch index 46e8c45..24ee225 100644 --- a/per-version-dirs.patch +++ b/per-version-dirs.patch @@ -1,5 +1,6 @@ ---- a/src/Makefile.global.in -+++ b/src/Makefile.global.in +diff -urNp -x '*.orig' postgresql-11.15.org/src/Makefile.global.in postgresql-11.15/src/Makefile.global.in +--- postgresql-11.15.org/src/Makefile.global.in 2022-02-07 22:20:23.000000000 +0100 ++++ postgresql-11.15/src/Makefile.global.in 2022-04-04 18:21:30.352601767 +0200 @@ -120,7 +120,7 @@ libdir := @libdir@ pkglibdir = $(libdir) ifeq "$(findstring pgsql, $(pkglibdir))" "" @@ -17,9 +18,10 @@ +includedir_server = $(pkgincludedir)/@PG_MAJORVERSION@/server includedir_internal = $(pkgincludedir)/internal pgxsdir = $(pkglibdir)/pgxs - ---- a/src/bin/pg_config/pg_config.c -+++ b/src/bin/pg_config/pg_config.c + bitcodedir = $(pkglibdir)/bitcode +diff -urNp -x '*.orig' postgresql-11.15.org/src/bin/pg_config/pg_config.c postgresql-11.15/src/bin/pg_config/pg_config.c +--- postgresql-11.15.org/src/bin/pg_config/pg_config.c 2022-02-07 22:20:23.000000000 +0100 ++++ postgresql-11.15/src/bin/pg_config/pg_config.c 2022-04-04 18:21:30.352601767 +0200 @@ -27,6 +27,8 @@ #include "port.h" #include "common/config_info.h" diff --git a/postgresql-autoconf.patch b/postgresql-autoconf.patch new file mode 100644 index 0000000..feecd8a --- /dev/null +++ b/postgresql-autoconf.patch @@ -0,0 +1,14 @@ +diff -ur postgresql-11.15.orig/configure.in postgresql-11.15/configure.in +--- postgresql-11.15.orig/configure.in 2022-02-07 22:20:23.000000000 +0100 ++++ postgresql-11.15/configure.in 2022-04-04 18:20:38.577482081 +0200 +@@ -19,10 +19,6 @@ + + AC_INIT([PostgreSQL], [11.15], [pgsql-bugs@postgresql.org]) + +-m4_if(m4_defn([m4_PACKAGE_VERSION]), [2.69], [], [m4_fatal([Autoconf version 2.69 is required. +-Untested combinations of 'autoconf' and PostgreSQL versions are not +-recommended. You can remove the check from 'configure.in' but it is then +-your responsibility whether the result works or not.])]) + AC_COPYRIGHT([Copyright (c) 1996-2018, PostgreSQL Global Development Group]) + AC_CONFIG_SRCDIR([src/backend/access/common/heaptuple.c]) + AC_CONFIG_AUX_DIR(config) diff --git a/postgresql-link.patch b/postgresql-link.patch index 032f381..07b59f1 100644 --- a/postgresql-link.patch +++ b/postgresql-link.patch @@ -1,6 +1,7 @@ ---- postgresql-9.5.0/configure.in.orig 2018-02-21 03:23:25.335399998 +0100 -+++ postgresql-9.5.0/configure.in 2018-02-21 03:28:24.392066743 +0100 -@@ -1203,6 +1203,7 @@ +diff -urNp -x '*.orig' postgresql-11.15.org/configure.in postgresql-11.15/configure.in +--- postgresql-11.15.org/configure.in 2022-04-04 18:21:51.824651401 +0200 ++++ postgresql-11.15/configure.in 2022-04-04 18:21:56.988663338 +0200 +@@ -1477,6 +1477,7 @@ fi if test "$with_bonjour" = yes ; then AC_CHECK_HEADER(dns_sd.h, [], [AC_MSG_ERROR([header file is required for Bonjour])]) @@ -8,7 +9,7 @@ dnl At some point we might add something like dnl AC_SEARCH_LIBS(DNSServiceRegister, dns_sd) dnl but right now, what that would mainly accomplish is to encourage -@@ -1210,6 +1211,7 @@ +@@ -1484,6 +1485,7 @@ dnl people to try to use the avahi imple dnl If you want to use Apple's own Bonjour code on another platform, dnl just add -ldns_sd to LIBS manually. fi @@ -16,9 +17,21 @@ # for contrib/uuid-ossp if test "$with_uuid" = bsd ; then ---- postgresql-9.5.0/src/backend/Makefile.orig 2016-01-04 22:29:34.000000000 +0100 -+++ postgresql-9.5.0/src/backend/Makefile 2016-01-14 21:10:48.093976872 +0100 -@@ -54,7 +54,7 @@ +diff -urNp -x '*.orig' postgresql-11.15.org/src/Makefile.global.in postgresql-11.15/src/Makefile.global.in +--- postgresql-11.15.org/src/Makefile.global.in 2022-04-04 18:21:51.822651396 +0200 ++++ postgresql-11.15/src/Makefile.global.in 2022-04-04 18:21:56.989663340 +0200 +@@ -173,6 +173,7 @@ includedir_internal = $(pkgincludedir)/i + pgxsdir = $(pkglibdir)/pgxs + bitcodedir = $(pkglibdir)/bitcode + ++BONJOUR_LIBS = @BONJOUR_LIBS@ + + ########################################################################## + # +diff -urNp -x '*.orig' postgresql-11.15.org/src/backend/Makefile postgresql-11.15/src/backend/Makefile +--- postgresql-11.15.org/src/backend/Makefile 2022-02-07 22:20:23.000000000 +0100 ++++ postgresql-11.15/src/backend/Makefile 2022-04-04 18:21:56.989663340 +0200 +@@ -60,7 +60,7 @@ ifneq ($(PORTNAME), win32) ifneq ($(PORTNAME), aix) postgres: $(OBJS) @@ -27,13 +40,3 @@ endif endif ---- postgresql-9.5.0/src/Makefile.global.in.orig 2016-01-04 22:29:34.000000000 +0100 -+++ postgresql-9.5.0/src/Makefile.global.in 2016-01-14 21:11:50.820640805 +0100 -@@ -216,6 +216,7 @@ - PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ - PTHREAD_LIBS = @PTHREAD_LIBS@ - -+BONJOUR_LIBS = @BONJOUR_LIBS@ - - ########################################################################## - # diff --git a/postgresql.spec b/postgresql.spec index 8ea3cde..bb6ab8b 100644 --- a/postgresql.spec +++ b/postgresql.spec @@ -29,7 +29,7 @@ Summary(uk.UTF-8): PostgreSQL - система керування базами Summary(zh_CN.UTF-8): PostgreSQL 客户端程序和库文件 Name: postgresql-%{pgsqlversion} Version: %{pgsqlversion}.15 -Release: 1 +Release: 2 License: BSD Group: Applications/Databases Source0: http://ftp.postgresql.org/pub/source/v%{version}/postgresql-%{version}.tar.bz2 @@ -46,6 +46,7 @@ Patch4: postgresql-tests.patch Patch5: postgresql-heimdal.patch Patch6: postgresql-link.patch Patch7: socket-dir-fixes.patch +Patch8: postgresql-autoconf.patch URL: http://www.postgresql.org/ BuildRequires: autoconf >= 2.69 BuildRequires: automake @@ -71,9 +72,9 @@ BuildRequires: ossp-uuid-devel BuildRequires: pam-devel %{?with_perl:BuildRequires: perl-devel} %if %{with python} -BuildRequires: python >= 1:2.3 -BuildRequires: python-devel >= 1:2.3 -BuildRequires: python-modules >= 1:2.3 +BuildRequires: python3 +BuildRequires: python3-devel +BuildRequires: python3-modules %endif BuildRequires: readline-devel >= 4.2 BuildRequires: rpmbuild(macros) >= 1.671 @@ -84,8 +85,8 @@ BuildRequires: zlib-devel Requires(post,preun): /sbin/chkconfig Requires(pre): /bin/id Requires(pre): /usr/bin/getgid -Requires(triggerpostun): /bin/id -Requires(triggerpostun): /usr/sbin/usermod +Requires(post): /bin/id +Requires(post): /usr/sbin/usermod Requires: %{name}-clients = %{version}-%{release} Requires: %{name}-dirs = %{version}-%{release} Requires: postgresql-libs >= %{version}-%{release} @@ -501,6 +502,7 @@ Różne moduły dołączone do PostgreSQL-a. %patch5 -p1 %patch6 -p1 %patch7 -p1 +%patch8 -p1 # force rebuild of bison/flex files find src -name \*.l -o -name \*.y | xargs touch @@ -591,8 +593,8 @@ install -d howto tar zxf %{SOURCE2} -C howto %if %{with python} -%py_comp $RPM_BUILD_ROOT%{py_libdir} -%py_ocomp $RPM_BUILD_ROOT%{py_libdir} +%py3_comp $RPM_BUILD_ROOT%{py3_libdir} +%py3_ocomp $RPM_BUILD_ROOT%{py3_libdir} %endif # find locales @@ -888,7 +890,7 @@ fi %if %{with python} %files module-plpython -f plpython-%{pgsqlversion}.lang %defattr(644,root,root,755) -%attr(755,root,root) %{moduledir}/plpython2.so +%attr(755,root,root) %{moduledir}/plpython3.so %{extensiondir}/plpython*--*.sql %{extensiondir}/plpython*.control %endif @@ -1055,8 +1057,8 @@ fi %{extensiondir}/hstore_plperlu.control %endif %if %{with python} -%attr(755,root,root) %{moduledir}/hstore_plpython2.so -%attr(755,root,root) %{moduledir}/ltree_plpython2.so +%attr(755,root,root) %{moduledir}/hstore_plpython3.so +%attr(755,root,root) %{moduledir}/ltree_plpython3.so %{extensiondir}/hstore_plpythonu--*.sql %{extensiondir}/hstore_plpythonu.control %{extensiondir}/hstore_plpython2u--*.sql -- 2.46.0